IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Ada Discussion :

[Ada] Quel usage?


Sujet :

Ada

  1. #21
    HRS
    HRS est déconnecté
    Membre confirmé
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    677
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 677
    Points : 638
    Points
    638
    Par défaut
    Ce qui faudrait savoir est par rapport au DOD (Pentagone).

    Il voulait à l'époque remplacer les 400 langages
    qu'il utilisait par un langage unique ADA.

    Qu'en est-il aujourd'hui ? ADA reste-il l'unique
    langage qu'il utilise pour ses applis temps-réel ?
    sinon qu'utilise-t-il d'autres et pourquoi ?

  2. #22
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Ce n'est plus le cas.
    Je ne me souviens plus exactement de la note de service que j'avais vu passer à l'époque (fin 90 si ma mémoire est bonne, ou début 2000, enfin bref), mais ADA n'était plus LE language du DoD.

  3. #23
    Membre actif

    Inscrit en
    Juin 2003
    Messages
    229
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Juin 2003
    Messages : 229
    Points : 223
    Points
    223
    Par défaut
    Citation Envoyé par hedes
    Bon, honnêtement, après toutes ces années je dis que ce langage n'est pas adapté à un environnement industriel.

    Citation Envoyé par hedes
    Il faut beaucoup de temps pour maîtriser ce langage et du temps, on en a de moins en moins quand on réalise un projet.
    Quand il s'agit d'envoyer des satellites dans l'espace, ou plus simplement des gens dans les airs, c'est mieux de prévoir un peu le temps de la reflexion. De plus, lorsque l'on maîtrise l'algorithmie, les paradigmes les plus courant et les notions de programmation en générale, le langage n'a pas tant d'importance. Un pointeur est une adresse mémoire, peu importe le langage. Ensuite, il faut compredre la syntaxe. Mais normalement ça ne pose pas de problème pour un informaticien qui maîtrise les principes de base.
    Citation Envoyé par hedes
    Ce langage est si riche qu'il existe autant de chapelles de programmation qu'il existe de programmeurs : on ne trouvera que très rarement 2 fois les mêmes façons de concevoir ou de mettre en oeuvre un principe de conception. J'ai connu un jour un codeur qui avait mis 20 fonctions getId dans un paquetage, la différence se faisait par la surcharge : allez relire un tel code ( même fort bien documenté ) !!!
    Dans la mesure où en Ada, on ne mélange pas les choux et les carottes, ça ne pose aucun problème. De plus, si jamais le compilateur ne sait pas choisir quel getId prendre, il te le dira à la compilation, ce qui simplifie grandement le debuggage.
    Citation Envoyé par hedes
    A ce niveau, je préfère 100 fois le C : il existe des règles universelles en C et on n'est pas trop dépaysé quand on arrive sur un projet en C. Bon, j'ai aussi vu des grosses $$$*# en C qui rendaient le code illisible mais j'en ai vu beaucoup plus en ADA.
    Que répondre à ça ? Le français est une langue de m***e, il suffit de lire les skyblogs pour s'en rendre compte... Lit Zola ou Cocteau alors ...
    Citation Envoyé par hedes
    On pourrait passer beaucoup de chose en revue : essayez de faire un simple cast...
    En Ada, on ne mélange pas les choux et les carottes (comme en mathématique, soit dit en passant) Si tu es obligé de mélanger deux types différents, c'est qu'il y a déjà un problème de conception. Ou alors il faut un opérateur sur mesure, que le développeur aura pris soin de programmer avec le plus de sécurité possible. Ainsi, on est sur que le mélange est volontaire, et qu'il n'est pas le résidu d'une erreur
    Citation Envoyé par hedes

    Pour ma part, c'est un langage qui a été conçu à une époque où le maître mot était "ne vous concentrez pas sur le bas niveau, le compilateur s'en occupe"
    C'est toujours le maître mot aujourd'hui. Java est le plus bel exemple d'abstraction, puisque l'on tente d'abstraire la plateforme physique...
    Citation Envoyé par hedes
    ... J'ai vu un nombre incalculable de projets exploser le budget à cause des problèmes de performance : ben oui, on a codé, on a "abstrait" sans se poser trop de questions sur ce que faisait le compilo et au final
    Si tu ne t'occupes pas de ce qui se passe au compilateur, forcément, tu vas au devant de grande déconvenue...
    Citation Envoyé par hedes
    Il est vrai que vous pouvez facilement définir des structures de données "pesant" plusieurs méga octets sans vous en rendre compte. ( ex. : Il suffit de définir un type privé dans un paquetage générique dont la taille est fonction d'un paramètre de généricité, style tableau non contraint : ça peut passer, et puis à un moment ça va péter...) Comme le passage des arguments dans une procédure se fait par valeur, vous voyez d'ici le problème.
    J'ai passé aussi beaucoup de temps à comprendre pourquoi une exception pouvait être levé dans un code aussi simple que "c := a + b ;" alors que tout était correct.
    Il existe les types contrôlés pour palier à ce genre de problème.

    Citation Envoyé par hedes
    A tel point d'ailleurs, que dans certaines applis critiques, à une époque, certains personnes avaient interdit l'utilisation de 90 % des fonctionnalités d'ADA!!
    Source ?

    Citation Envoyé par hedes
    En conclusion, je ne soutiens pas du tout ce langage et j'aimerais bien qu'il finisse par disparaître comme les dinosaures l'ont fait en leur temps !
    Si ça ne te plait pas, fait du PHP, et laisse ceux qui aiment en profiter...

    Chacun peut trouver en Ada un paradigme qui lui convient. Personnellement, je n'aime pas trop l'approche objet du langage, mais c'est une affaire de goût...
    Cependant, j'utilise souvent Ada pour implémenter des types abstraits de données : avec les mécanismes des types contrôlés, de la généricité et de l'héritage, on parvient à créer des structures de données abstraites au niveau des données, ET des traitements, ce qui facilite grandement la relecture, la documentation et l'optimisation des modèles physiques.

    Je reproche également au monde Ada en général de ne pas disposer d'un grand nombre de bibliothèques, comme par exemple en Python ou en PHP.

    PS : quelqu'un sait-il si il existe une bibliothèque por générer des PDF en Ada ?

  4. #24
    Membre habitué
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 102
    Points : 156
    Points
    156
    Par défaut
    Je tiens à préciser quelque chose : c'est mon expérience. Chacun a la sienne, mais force est de constater qu'ADA est de moins en moins utilisé : j'apporte une explication point.
    Autre point : en sortie d'études, je n'avais étudié que de l'ADA et j'étais un chaud partisan d'ADA. Je me suis précipité dans les sociétés qui utilisaient ADA comme langage. Je me suis fait donc mon expérience après avoir vu tout et n'importe quoi : quelques bonnes choses mais beaucoup ( trop ) de mauvaises. C'est peut être pour cela que je suis aussi dur : je réagis peut-être comme un amoureux déçu...

    Après avoir souvent fait le pompier, ou avoir été associé à des personnes qui le faisaient après que des codeurs se sont fait plaisir ( et allaient se faire plaisir sur d'autres projets, laissant à d'autres le soin de débugger leur code ) , je maintiens que c'est un langage inadapté au monde industriel où plusieurs facteurs entrent en ligne de compte ( coût du développement, ressources humaines compétentes, maintenance, motivation des équipes etc.. ). Une personne a dit "je préfère 20 getId à getIdOfDataX" : cette personne n'a pas essayé de relire le code où une fonction getId était utilisée. Quand juste le type de retour change ( aucun paramètre dans la fonction ), honnêtement vous passez un temps fou à entrer dans le code...

    Je ne tiens pas compte des librairies qui existent car dans ces domaines, en général, on ne peut en utiliser par interdiction.

    Les chapelles : j'ai fait beaucoup de sociétés différentes où ADA était utilisé et force a été de constater que chacun travaillait de manière différente. J'ai travaillé dans un endroit où l'implémentation de l'héritage était réalisée via des separate car "c'était le meilleur moyen de le faire" dixit le chef de projet. Pour implémenter la notion d'héritage définie lors de la conception, il y a d'autres moyens, non ? Bon, je le concède avec ADA95 les choses sont différentes mais il y a un existant...


    Quaud je récupère un code C ou java sur le net, je retrouve globalement des choses identiques : indentation, nommage etc. et je rentre plus facilement dans le code... mais c'est toujours mon expérience...
    Bien sûr, il ne faut pas récupérer du code C écrit par un programmeur java car ce dernier a commencé par écrire un include contenant les définitions siuvantes :
    #define BEGIN {
    #define END }
    etc.
    Car le C lui fait trop peur

    Enfin, le monde industriel ne se limite pas aux satellites et autre monde aéronautique. Au fait, vous pouvez me dire pourquoi le premier vol d'Ariane 5 a explosé il y a quelques années ?

    Pour finir, de mon point de vue, le langage parfait n'existe pas et reste à inventer.

    Maintenant, c'est vous qui voyez...

  5. #25
    Membre habitué
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Mars 2004
    Messages
    102
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2004
    Messages : 102
    Points : 156
    Points
    156
    Par défaut
    Citation Envoyé par HRS
    un excellent outil n'est jamais une solution dans les mains d'un
    incapable, cela devient un problème de plus
    J'adore cette citation : à méditer et à mémoriser.

  6. #26
    Futur Membre du Club
    Inscrit en
    Juin 2006
    Messages
    7
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par hedes
    Enfin, le monde industriel ne se limite pas aux satellites et autre monde aéronautique. Au fait, vous pouvez me dire pourquoi le premier vol d'Ariane 5 a explosé il y a quelques années ?
    Si je me souviens bien de ce que j'avais lu :
    Erreur du programmeux qui a laissé un pragma qui inhibait le traitement d'exception sur un calcul ... Boum, constraint_error ....
    Si le traitement d'exception avait été autorisé, la valeur aurait été maxé et pas de souci.

  7. #27
    HRS
    HRS est déconnecté
    Membre confirmé
    Avatar de HRS
    Inscrit en
    Mars 2002
    Messages
    677
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 677
    Points : 638
    Points
    638
    Par défaut
    supposez que votre véhicule soit garée dos à un précipice
    et que vous redémarrer non pas en marche avant mais en
    marche arrière, personne n'ira dire après votre chute,
    "cette conne de voiture aurait pu l'avertir".

    Même si la voiture avait été équipée d'un radar anti-collision
    à l'arrière, cela n'aurait rien changé.

    de même ADA permet un maximum de vérif mais ne les fait
    pas TOUTES. d'autant qu'il s'agit souvent de plusieurs
    millions de lignes de code.

    le zéro défaut n'existe pas; même apres avoir testé, retesté
    et reretesté.

  8. #28
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut
    éternelle guerre ADA/C
    depuis que j'étudie ADA95 a la fac mon prof d'ADA me dit que C est plein de défauts (et nous en fait une liste!!), et mon prof de C me dit que ADA est un langage mal adapté au contexte actuel (et se justifie pendant 30 minutes !!)...

    De mon côté, je trouve ADA très bien structuré au niveau de la conception des projets, pas extrêmement compliqué à prendre en main, même si certaines subtilités sont tordues.
    Avec C on finira toujours par remettre le code en question, tant au niveau de l'efficacité qu'au niveau des bugs.

    De plus, le langage ADA oblige a avoir de la rigueur dans la programmation. C'est pourquoi c'est un langage étudié dans les facs. Un bon programmeur ADA sera capable de programmer efficacement dans a peu près tous les langages.
    Moi, j'aime pas facebook.

    Musiciens de France

  9. #29
    Membre confirmé Avatar de Commodore
    Homme Profil pro
    Business manager
    Inscrit en
    Février 2004
    Messages
    599
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Business manager

    Informations forums :
    Inscription : Février 2004
    Messages : 599
    Points : 632
    Points
    632
    Par défaut
    on m'a dit que les fusées Ariane étaient programmées en ADA95... est-ce vrai ? (et que la seule qui s'est explosée était programmée en C)
    Moi, j'aime pas facebook.

    Musiciens de France

  10. #30
    Inactif Avatar de Hibou57
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    852
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 852
    Points : 493
    Points
    493
    Par défaut
    Citation Envoyé par Commodore_Psykopate
    on m'a dit que les fusées Ariane étaient programmées en ADA95... est-ce vrai ? (et que la seule qui s'est explosée était programmée en C)
    Ah ? Les fusées sont programmées ? Je blague, c'est tiré par les cheveux...

    Pour ce que j'en ai entendu dire, c'était un peu ça, mais avec une nuance importante : c'est du code (C, je crois, oui, mais pas sure) ancien qui a été récupéré d'un projet précédent, et intégré dans un autre, sans passer par les tests requis dans de tels cas. Si je me souviens bien, l'ancien projet était lui même un projet Ariane, mais une certaine refontr avait été effectuée, et donc l'importantion du code fautif n'allait pas vraiment de soit.

    C'est un simple débordement numérique qui a provoqué la catastrophe : un entier de 32 bits qui était chargé dans un entier de 16 bits, sans contrôle de débordement (et sans s'être assuré surtout qu'un tel débordement ne pouvait pas de se produire).

    C'est une erreur de gestion de projet qui est en cause.

    Citation Envoyé par Commodore_Psykopate
    [...], et mon prof de C me dit que ADA est un langage mal adapté au contexte actuel (et se justifie pendant 30 minutes !!) [...]
    Ton prof me semble confondre contexte technologique et contexte commercial

    .......
    ------------------------------------------------------------
    Sur le web, c'est la liberté qui est gratuite, mais bien évidement pas la consomation ... et encore moins la consomation à outrance
    ------------------------------------------------------------
    Language shapes the way we think, and determines what we can think about [ B. Lee Whorf ] ... mais ce n'est pas tout à fait vrai à 100%...
    ------------------------------------------------------------
    Pascal (FreePascal?) - Ada (Gnat-3.15p)
    XSLT (XSLTProc) - CGI binaires (Ada/C) [ Clavier Arabe ]
    ------------------------------------------------------------

  11. #31
    Membre du Club Avatar de tiotel
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 75
    Points : 62
    Points
    62
    Par défaut
    Bonjour,

    j'ai pratiqué de l'ada cette année en cours (DUT info en une année).

    Le langage est tres simple à comprendre.

    Mais el seule probleme ce sont les contraintes. soit la prof en demandais trop, soit ces le langage.

    Sinon c''est vrai qu'une fois que l'on a compris ce dernier on peut tres bien comprendre un code qui n'est pas commenter.

    Bref, je reste perplexe.

    J'ai modifier un petit dessins cette année qui parle de l'ada, le voici


  12. #32
    Membre éprouvé
    Avatar de Celelibi
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 087
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 087
    Points : 1 122
    Points
    1 122
    Par défaut
    http://fr.wikipedia.org/wiki/Ariane5#Essais
    Moi ce que je lis c'est que le code d'Ariane5 est celui d'Ariane4 mais mal adapté à la nouvelle machine.

    tiotel, la police choisi, n'est pas très lisible, et je crois qu'il y a une erreur dans la construction de la boucle for.
    Les vaches ne peuvent PAS voler, quoi qu'elles aient pu vous raconter.

  13. #33
    Membre du Club Avatar de tiotel
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 75
    Points : 62
    Points
    62
    Par défaut
    Citation Envoyé par Celelibi
    http://fr.wikipedia.org/wiki/Ariane5#Essais
    Moi ce que je lis c'est que le code d'Ariane5 est celui d'Ariane4 mais mal adapté à la nouvelle machine.

    tiotel, la police choisi, n'est pas très lisible, et je crois qu'il y a une erreur dans la construction de la boucle for.

    je vais le refaire

    sinon,il y a bien une boucle dans le boucle for ou j'ai oublier de declarer le type de la variable.

    voici le nouveau dessin


  14. #34
    Membre éprouvé
    Avatar de Celelibi
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1 087
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1 087
    Points : 1 122
    Points
    1 122
    Par défaut
    En fait moi les boucles for je les fais comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for i in 1..10 loop
      null;
    end loop;
    Peut-être que ta syntaxe marche, mais je l'ai jamais vu.
    Les vaches ne peuvent PAS voler, quoi qu'elles aient pu vous raconter.

  15. #35
    Rédacteur
    Avatar de pcaboche
    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    2 785
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Singapour

    Informations forums :
    Inscription : Octobre 2005
    Messages : 2 785
    Points : 9 716
    Points
    9 716
    Par défaut
    Citation Envoyé par Celelibi
    tiotel, la police choisi, n'est pas très lisible
    La nouvelle police est encore pire...

    Quelqu'un pour faire le même dessin en Caml? en Prolog? dans d'autres langages? on en fait une collection?
    "On en a vu poser les armes avant de se tirer une balle dans le pied..."
    -- pydévelop

    Derniers articles:

    (SQL Server) Introduction à la gestion des droits
    (UML) Souplesse et modularité grâce aux Design Patterns
    (UML) Le Pattern Etat
    Autres articles...

  16. #36
    Membre du Club Avatar de tiotel
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    75
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juin 2006
    Messages : 75
    Points : 62
    Points
    62
    Par défaut
    rhoo

    donnez moi une police qui irait bien.

    sinon, si vous le desirer je peux le faire dans d'autre l'angage ( c, c++, c#, java , Pearl)

    bon aller moi je file au boulot

Discussions similaires

  1. [Matériel] Quel Mac possédez-vous, et pour quel usage ?
    Par kOrt3x dans le forum Apple
    Réponses: 140
    Dernier message: 10/04/2021, 21h56
  2. Perl scripting ;) Quel usage de perl ?
    Par djibril dans le forum Langage
    Réponses: 58
    Dernier message: 26/05/2009, 14h15
  3. Quel usage faites vous de Python (2004 - 2008) ?
    Par Guigui_ dans le forum Général Python
    Réponses: 130
    Dernier message: 03/12/2008, 23h59
  4. Quel usage faite vous de zope?
    Par Extra-Nitro dans le forum Zope
    Réponses: 3
    Dernier message: 13/09/2006, 10h23
  5. Quels usages faites vous de Linux ?
    Par Hibou57 dans le forum Applications et environnements graphiques
    Réponses: 22
    Dernier message: 05/04/2006, 03h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo