Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Quel est votre langage de programmation préféré ?

Le , par Djug

28PARTAGES

11  0 
Votre langage de programmation préféré
Mise à jour 2013
Ce sondage est terminé. Il a été renouvelé en 2013. Venez participer, cela se passe ici :

Quel est votre langage de programmation préféré en 2013 ?


------------------------------------------------
Chers membres du club.

Suite au précédent sondage 2009 (Votre langage de programmation préféré ), nous avons décidé de le renouveler afin d'avoir votre avis en cette fin d'année 2010. Pour rappel, les langages qui l'avaient remportés sont : Java avec 28,12% suivi de C# avec 17,78% et enfin de C++ avec 15,69% basé sur l'avis de 2059 votants.

Ce sondage ne prend pas en compte les langages spécialement destinés au web comme ASP, PHP, Coldfusion, Flash etc.
Ce sondage est limité par le système à un certain nombre d'options, et on ne peut donc pas y faire figurer tous les langages de programmation qui sont très nombreux. Ce sondage représente les plus courants, ou du moins les plus utilisés parmi les membres du club Developpez.com (voir le trafic sur les forums). Ce sondage ne prend pas en compte certains langages qui sont pourtant encore très répandus (mais peu utilisés par les membres du club developpez.com).
Comme indiqué dans ce sondage : Delphi et VB qui sont à la fois des langages mais aussi des RAD, nous avons aussi ajouté les autres principaux RAD/L4G du marché que sont MS Office, PowerBuilder et WinDev.

C'est donc plus précisément un sondage "quel est votre langage ou L4G/RAD préféré (langages web non inclus)". Notez cependant que de nombreux langages de ce sondage sont aussi des langages pour le web, comme java, C#, VB.NET, python, PERL, etc. Mais pour le web on fera un autre sondage, ça sera plus clair...

Merci de voter pour votre langage préféré, et en plus si possible d'écrire votre témoignage pour expliciter votre avis :
- Pourquoi ce choix
- Les plus/avantages
- Les moins/inconvénients
- Quels projets réalisez-vous avec et pourquoi
- Vers quels autres langages pensez-vous évoluer dans le futur
- Comment vous êtes-vous formé, ou avez-vous été formé sur ce langage
- Est-ce une utilisation amateur ou professionnelle
- Avez-vous fait votre choix pour raison professionnelle, par plaisir, par choix personnel
- Quels outils vous utilisez (Editeur, EDI, etc.)
- Autres langages utilisés, pourquoi ? Dans quel cadre ? Et comparaisons ?
- Sur quels systèmes ou plateformes vous travaillez (Windows, DotNET, Linux, etc.)
- Conclusion
- etc.

Comme il s'agit d'un sondage/ Débat , merci de suivre les consignes strictes suivantes :

- SMS interdit : essayez d'écrire en français

- Évitez de multiplier des messages courts, et essayez de faire plutôt un seul message avec tous les points ci-dessus (vous pouvez éditer vos messages pour les améliorer). Les multiples messages seront acceptés uniquement en cas de réponse de qualité à un débat technique de qualité...

- Donnez des précisions claires, par exemple si vous dites que vous utilisez VB, Visual Studio, Delphi, gcc, c++ Builder, WinDev, PowerBuilder, ou même un langage, précisez toujours sur quelle version votre témoignage porte.

Les messages type taverne ou SMS seront effacés immédiatement sans préavis ou explications.

Notre but est de créer un débat technique de qualité .

Vous pouvez tous faire un témoignage. Par contre, pour débattre et faire plusieurs messages, vous devez être de préférence expérimenté, pas un débutant, et connaître plusieurs langages.

Si vous êtes débutant et que vous ne connaissez qu'un seul langage, vous êtes le bienvenu pour voter et apporter 1 témoignage, mais pour le débat, essayez de comprendre que vous êtes mieux placé pour lire le sujet qu'y participer...

Merci de votre compréhension à tous



PS : Merci de prendre les résultats du sondage seulement à titre indicatif, et je pense que ce qui sera aussi surtout intéressant, ce seront les témoignages et le débat technique... En effet, le résultat du sondage sera uniquement représentatif de l'activité des membres du club developpez.com mais ne sera évidement pas exactement représentatif du marché en général.

Voir aussi l'autre sondage : Votre langage serveur préféré pour le web ?
Les archives sont ici : http://www.developpez.net/forums/d68...refere-2009-a/ et http://www.developpez.net/forums/d10...ation-prefere/

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de FR119492
Rédacteur https://www.developpez.com
Le 27/10/2010 à 11:25
Bonjour à tous!
Comme l'an dernier, j'ai voté Fortran. Comme ça peut étonner certains d'entre vous, quelques explications s'imposent:
Nous avons chacun notre métier, donc des tâches bien spécifiques à accomplir. Mon métier, c'est le calcul scientifique. Je ne fais ni de la comptabilité, ni du traitement d'image ou de signal, ni de la commande en temps réel, ni des animations. Je calcule (ou plutôt je fais calculer mon ordinateur), un point c'est tout; et pour ça, le Fortran reste le langage le plus performant (il y a quand même un ex-aequo, le C). Pour ceux qui ne me croiraient pas, programmez la résolution d'un système linéaire de 10'000 équations à 10'000 inconnues et chronométrez.
Je ne prétend pas que le Fortran soit le meilleur langage, mais c'est celui qui me convient le mieux.
Jean-Marc Blanc
13  0 
Avatar de TropMDR
Membre éprouvé https://www.developpez.com
Le 29/11/2010 à 22:05
J'ai choisi "langages fonctionnels", mais j'aimerai quand même préciser un peu !

Mon langage "normal" préféré est OCaml. C'est un langage multiparadigme. Il incite à la programmation fonctionnelle, mais donne au programmeur la possibilité de programmer en impératif (il y a les boucles, références et tableaux qu'il faut), mais aussi en objet (c'est le O de OCaml). Son modèle objet est d'ailleurs beaucoup plus puissant que celui de java par exemple, autorisant du vrai polymorphisme, du sous typage structurel (et non lié à l'héritage, qui n'est là que pour le partage de code), de parler de la classe courante dans les types, etc etc.
Son système de type statique extrêmement puissant (et continuant à s'améliorer régulièrement) rend les programmes très sûr (les programmeurs caml ont l'habitude de dire "ça type, donc ça marche". Ce n'est bien sûr pas complètement vrai, mais c'est loin d'être complètement faux). Mais l'inférence de type complète fait que pour une utilisation normale, il n'y a aucun type à écrire, sauf pour la documentation ou pour aider à l'abstraction. Par exemple le code
Code : Sélectionner tout
1
2
3
4
let rec map fn lst =
  match lst with
  | [] -> []
  | hd::tl -> fn hd :: map fn tl
qui applique une fonction à tous les éléments d'une liste est un code parfaitement typé (de type polymorphe ('a -> 'b) -> 'a list -> 'b list pour ceux que ça intéresse). Aucune annotation !
Pour ce qui est des performances, elles sont plus qu'honorables. On parle généralement de facteurs 2 à 4 avec le C. C'est néanmoins très variable suivant les applications. J'ai déjà écris une application plusieurs ordre de grandeurs fois plus rapide que son homologue en C, juste parce que caml libère du temps cerveau programmeur en se chargeant des problématiques bas niveau, autorisant celui ci à se concentrer sur les vrais problématiques. (Dans le cas dont je parle, la solution était de faire de la mémoization, grandement faciliter entre autre par la possibilité de rendre du code "lazy" en caml. Évidemment, le code aurait put être repris en C avec du temps, et aurait sans doute été plus performant, mais le jeu n'en valait pas la chandelle).
Un des plus gros défaut de caml est qu'un ne permet pas d'écrire des programmes tournant sur plusieurs coeurs. Vous pouvez écrire un programme avec des threads s'il y a un avantage algorithmique à le faire (et pour ne pas freezer en cas de lattence lors d'une lecture réseau par exemple), mais un lock global empêchera les différents threads de s'exécuter en parallèle. Cette limitation est du au GC (garbage collector, glaneur de cellules), qui pour être correcte nécessite une exécution linéaire.

Mon deuxième langage préféré pour 2010 (et 2011 ) est moins "normal". En effet, ce langage est Coq. Coq est un langage fonctionnel, comme OCaml. Contrairement à ce dernier pourtant, coq n'est vraiment *que* un langage fonctionnel. Il n'a aucun trait impératif (il est totalement pur), au point qu'on ne peut même pas directement lire un fichier ou afficher quelque chose sur la sortie standard ! (j'insiste sur le "pas directement", sinon ce serait vraiment inutile).
Alors quel est l'intérêt par rapport à caml ? Hé bien c'est la puissance du système de type de Coq ! Je disais plus haut que celui de caml était puissant. Si le système de type de Java est une souris, et celui de caml une baleine bleue, celui de coq ressemblerait plutôt à ça. Quel est l'intéret ? Et bien on peut y exprimer des théorèmes mathématiques. Par exemple on peut y exprimer que tout entier est soit paire soit impaire :
Code : Sélectionner tout
Lemma foo: forall n:nat, exists p, n = 2 *p \/ n = 2 * p +1
On peut ensuite prouver ce lemme. Coq est en fait ce qu'on appelle un "assistant de preuve". C'est à dire qu'il laisse l'utilisateur exprimer des théorèmes puis les prouver, et vérifie extrêmement strictement que la preuve est correcte (et prouve aussi automatiquement les morceaux faciles).

Alors pourquoi je parle de ça dans un sondage sur le langage de programmation préféré ? Hé bien la magie de Coq (qui vient de l'isomorphisme de Curry-Howard), c'est que c'est aussi un langage de programmation. Mais en combinant les deux (langage de programmation + assistant de preuve), on peut prouver formellement les programmes que l'ont écris. Et il y a deux grosses différences avec une simple preuve sur papier. La première est que Coq, en tant qu'assistant de preuve, est particulièrement précis, et empêche toute erreur. Mais surtout, ici, on prouve directement *le programme*, c'est à dire celui qui tournera effectivement. Il n'y a donc plus de risque d'introduire des erreurs en implémentant l'algorithme qu'on a prouvé sur papier.

Une fois le programme écris et prouvé, on peut ensuite "l'extraire", c'est à dire d'une certaine manière le "compiler" vers... ocaml ! C'est ensuite en caml qu'il faut écrire la "glue" pour faire tourner le code (par exemple la lecture dans les fichiers, l'écriture, etc).

La question légitime est: peut on réellement prouver de "vrais" programmes, et pas juste des exemples jouets. La réponses est clairement "oui".

La librairie standard de Coq contient un certain nombre d'exemple, dont une implémentation intégralement prouvé des maps à base d'AVL. Il y a une preuve de la validité fonctionnelle (quand on ajoute un élément, il est ensuite dans la map !) mais aussi que toutes les opérations maintiennent l'équilibre.

Mais en beaucoup plus impressionnant, il y a le compilateur C Compcert. Ici, c'est un compilateur complet, de C vers ARM, PowerPC et x86 qui est prouvé. Seul le parsing et l'ouput final de l'assembleur (c'est à dire juste l'impression dans un fichier. La génération de l'assembleur est bien sur prouvé) sont écris en caml non prouvés. Il est donc bien possible de prouver intégralement de vrais gros projets.

Voici donc mes deux langages préférés
8  0 
Avatar de jpelaho
Membre confirmé https://www.developpez.com
Le 27/10/2010 à 18:48
Je vote C#

- Pourquoi ce choix

C'est le langage que j'utilise au bureau, c'est aussi le langage "phare" de la plateforme .net

- Les plus/avantages
Bye bye les pointeurs, bonjour le "garbage collector", bref beaucoup d'avantages que j'attribuerais plus à l'EDI Visual Studio qu'au langage lui même (accesseur et mutateur très « softs », Utilisation des bloc #region, code snippet ...)

- Les moins/inconvénients
Le Framework lourd qu'on doit embarquer avec l'application pour pouvoir installer sans problème. Les versions du Framework changent aussi trop vite à mon gout.

- Quels projets réalisez-vous avec et pourquoi
Applications professionnelles et petits projets perso

- Vers quels autres langages pensez-vous évoluer dans le futur
Je travaille rarement avec java et c++

- Comment vous êtes-vous formé, ou avez-vous été formé sur ce langage
Formation au boulot, certifications

- Est-ce une utilisation amateur ou professionnelle
Professionnelle

- Avez-vous fait votre choix pour raison professionnelle, par plaisir, par choix personnel
Le choix s'imposait puisqu'on travaille sur la plate forme .net au bureau

- Quels outils vous utilisez (Editeur, EDI, etc.)
Visual Studio

- Autres langages utilisés, pourquoi ? Dans quel cadre ? Et comparaisons ?
J'utilise aussi Java et C++ pour des projets perso, je compte approfondir mon C++ depuis que j'ai découvert Qt

- Sur quels systèmes ou plateformes vous travaillez (Windows, DotNET, Linux, etc.)

Windows

- Conclusion
Juste une remarque, au moment ou je poste il n'ya aucun qui a choisi vb6, bizarre !
7  0 
Avatar de Florian Goo
Membre éclairé https://www.developpez.com
Le 01/11/2010 à 7:01
Tout comme l'année dernière, le C++.
Mais mon avis sera cette fois-ci un peu plus critique.

- Pourquoi ce choix ?
Malgré ses nombreux défauts, cela reste le meilleur langage que je connaisse.

- Les plus/avantages :
- typage fort et statique (à mes yeux le strict minimum pour un langage de programmation sérieux)
- indépendant de toute machine virtuelle
- grande puissance, liberté sans limite, contrôle total
- très rapide
- large panel d'application (du métal aux nuages, comme l'a si joliment dit ac_wingless) dû à sa nature multi-paradigme et à sa capacité d'abstraction
- pas de culte du « tout-objet » que l'on peut retrouver en Java
- bibliothèque standard écrite en C++ (à l'opposé de l'API Java, par exemple), qui n'est pas forcément un avantage en soi, mais qui témoigne de la puissance du langage
- base énormissime et qualitative de bibliothèques et d'outils

- Les moins/inconvénients :
- syntaxe peut-être un peu trop verbeuse, mais rien de bien critique

- préprocesseur trop primitif et brut de décoffrage

- typage pas assez fort (conversions implicites héritées du C) qui peut donner des comportements indésirables

- temps de compilation absurdement long
Cela est en grande partie dû au système d'inclusion textuelle (#include) qui entraîne autant d'analyses des headers inclus que d'unités de compilations incluant ces headers.
Le temps de compilation sera, espérons-le, amoindri par le système de modules prévu pour le technical report post-C++0x.

- l'absence d'un garbage collector
Il existe une hypocrisie certaine à ce sujet. Dans les rangs des amateurs du langage, on entend souvent dire que le garbage collector est seulement bon pour les programmeurs fainéants incapables de gérer leur mémoire eux-mêmes. Et dans le même temps, l'usage des pointeurs intelligents (appellation malheureuse) est, à raison, hautement préconisé par les bonnes pratiques du langage. Pourtant, leur système de comptage de références les rends plus lents et moins puissants qu'un ramasse-miette. En effet, ce dernier est en mesure de gèrer les dépendances cycliques d'une part et s'exécute lorsque le programme consomme peu de ressources processeur d'autre part.
À défaut du garbage collector initialement prévu, le prochain standard du C++ inclura un support minimal censé faciliter leur implémentation.

- composition lourde à mettre en place et à maintenir
Bonne pratique de la conception orientée objets que de préférer la composition à l'héritage. Hélas, le langage ne propose rien qui permette de mettre en place une composition aussi facilement qu'un héritage, si bien qu'on se laisse facilement tenter par le côté obscur.
Si vous ne voyez pas ce que je veux dire, essayez d'écrire un pimpl pour une classe avec de nombreuses fonctions membres.
Cela dit je ne sais pas si les autres langages savent faire mieux.

- absence d'un « strong » typedef
Parfois, on aimerait qu'un type et son alias ne soient pas interchangeables.
Parfois, on aimerait aussi être en mesure de faire des forward declarations de typedefs pour résoudre facilement les problèmes de dépendances cycliques entre types.

- nécessité de bidouiller dans de rares cas
En C++, on peut tout faire. Même émuler des fonctionnalités qui n'ont pas (encore) été incluse dans le langage.
Par exemple, les concepts ont été écartés du prochain standard. Peu importe ! Sortez les SFINAE, type traits, bidouilles à base d'enums et de sizeof…
Certes, on arrive à nos fins (quoique), mais on arrive aussi à un bon mal de crâne.

- langage extrêmement compliqué à analyser
Ce n'est pas un défaut qui touche directement le programmeur, mais cela l'affecte malgré tout indirectement. On aimerait bénéficier d'une autocomplétion aussi puissante et rapide que celle dont les programmeurs Java ont le loisir de retrouver dans Eclipse.
Si l'on éliminait ne serait-ce que les ambiguïtés syntaxiques, ce serait déjà une avancée significative. Mais à part ça, la complexité de l'analyse n'est pas gratuite : elle est liée à la richesse du langage en lui-même.

- difficulté de faire évoluer le langage
Les évolutions apportées par C++0x seront moins nombreuses que prévu : pas de concepts, pas de garbage collectors, inclusion du système de modules reporté, ainsi que l'absence d'un certain nombre de fonctionnalités qu'on aurait apprécié.
Le C++ est un vieux langage, héritant lui-même d'un langage plus vieux encore. L'avantage, c'est que la base existante de code réutilisable est énorme. L'inconvénient, c'est qu'il est bien plus difficile de le faire évoluer et de se débarrasser de certaines vieilleries (le genre de vieilleries qui seraient absentes si le C++ était à refaire aujourd'hui).
Beaucoup des lacunes que j'ai citées pourraient être comblées facilement s'il n'était pas aussi compliqué de faire évoluer le langage.

- Qt
Je regrette que ce framework soit aussi omniprésent dans l'écosystème C++. Il est à mes yeux en contradiction totale avec le langage : extensions non-standards (via moc), dépendance avec un QtCore intrusif (bref, un framework, donc) redondant avec la STL et avec Boost, culte du « tout-objet » (avec un hideux QObject, classe de base commune à tous les types du framework) et j'en passe.
Dans la même catégorie, gtkmm me semble bien plus dans l'esprit du C++ (un comble pour un binding).
Enfin, il s'agit pour le coup d'un avis plus subjectif que les autres points.

- et sûrement d'autres choses que j'oublie ou que je n'ai pas (encore) rencontrées.

- Quels projets réalisez-vous avec et pourquoi ?
De tout. Le C++ peut tout faire ou presque.

- Vers quels autres langages pensez-vous évoluer dans le futur ?
Je m'intéresse au Haskell depuis peu. Il faudrait aussi que j'en apprenne davantage sur le D.
Hélas, ce n'est pas demain la veille que l'on pourra en faire usage en entreprise. En tout cas pas en France.

- Comment vous êtes-vous formé, ou avez-vous été formé sur ce langage ?
En autodidacte, avec des livres (notamment sur les bonnes pratiques du langage… Meyers, Alexandrescu et Sutter sont vos amis) et surtout beaucoup de pratique !

- Est-ce une utilisation amateur ou professionnelle ?
Les deux.

- Avez-vous fait votre choix pour raison professionnelle, par plaisir, par choix personnel ?
Initialement par choix personnel. Le C++ répond très bien aux besoins des puristes les plus acharnés.
Ce langage étant très présent dans l'industrie, c'est un choix que je ne regrette pas d'un point de vue professionnel.

- Quels outils utilisez-vous (Editeur, EDI, etc.) ?
Vim, allié à CMake et GCC.

- Autres langages utilisés, pourquoi ? Dans quel cadre ? Et comparaisons ?
Rien d'autre à part les langages Web.

- Sur quels systèmes ou plateformes vous travaillez (Windows, DotNET, Linux, etc.)
Linux et Windows.

- Conclusion
Je rêve d'une réforme plus audacieuse du C++, quitte à ce que la rétro-compatibilité en pâtisse un peu.
8  1 
Avatar de Jbx 2.0b
Membre chevronné https://www.developpez.com
Le 27/10/2010 à 10:54
Il manque le "langage de l'année" : Objective C. Ça aurait été intéressant de voir son impact parmi la communauté de développez.com.

J'ai voté C++.

- Pourquoi ce choix:
*Seul langage évolué permettant de répondre en terme de performance à mes besoins professionnels (à savoir traitement d'images, de vidéo, réalité augmentée).

-Les plus/avantages:
*multiples possibilités (templates, héritage multiple, pointers, référence, et smarts pointers avec boost, possibilités de cast, inline...)
*donne un sentiment de maîtrise qui nous fait oublier cette impression d'être un "pisseur de lignes"
*Couplé avec des framework comme Qt, ou des librairies comme boost, sa souplesse égale presque celle d'un Java ou d'un C#.

- Les moins/inconvénients:
*IDE bien en deçà de ceux disponible pour les langages interprétés (Java, C#).

- Quels projets réalisez-vous avec et pourquoi:
Traitement d'images et vidéo dans des IHM tactiles avec réalité augmentée au boulot. Quelques petits moteurs 3D en projets personnels.

- Vers quels autres langages pensez-vous évoluer dans le futur:
*C++ 1x certainement. Je serrais peut-être amené à coder en Java et C# sur de futurs projets. J'utilise également javascript dans des projets persos.

- Comment vous êtes-vous formé, ou avez-vous été formé sur ce langage:
*Autodidacte, j'avais déjà intégré une bonne partie du langage C++ quand j'ai eu la chance d'avoir quelques cours de C à l'IUT. J'ai suivis une formation en physique ce qui me permet d'avoir une "double casquette".

- Est-ce une utilisation amateur ou professionnelle
Les deux.

- Avez-vous fait votre choix pour raison professionnelle, par plaisir, par choix personnel
*Plaisir, choix personnel. Faut dire c'est écrit en gras en haut de mon CV. Mais vu que je suis dans une SSII le langage changera forcément au grès des besoins des missions disponibles.

- Quels outils vous utilisez (Editeur, EDI, etc.)
*Visual Studio 2008 dans ma mission actuelle, avec un peu de QtCreator pour faire des tests rapides sur des widgets sans sortir l'artillerie lourde. Chez moi c'est Eclipse CDT et QtCreator.

- Autres langages utilisés, pourquoi ? Dans quel cadre ? Et comparaisons ?
*Java, javascript, python, php, C# selon les besoins. Les comparaisons sont toujours subjectives, mais je trouve que Java est un langage formidable mais que les frameworks qui tournent autour le transforment en une véritable usine à gaz. C# c'est beau mais c'est fermé, pas fait pour être multi-plateforme, puis ça a toujours ce petit gout désagréable de Microsoft. Php ça permet de faire les choses vite fait mais faut que ça reste petit. Python je le réserve pour le scripting.

- Sur quels systèmes ou plateformes vous travaillez (Windows, DotNET, Linux, etc.)
*Windows au taf, quasiment exclusivement linux at home
6  0 
Avatar de kurk49
Membre habitué https://www.developpez.com
Le 27/10/2010 à 11:17
Il est vrai que le code JAVA est supposé être 100% portable. Mais ceci n'est pas totalement vrai pour les GUIs. L'aspect obtenu et la géométrie sont très dépendantes du Window Manager et nécessitent parfois des ajustement qui mettent à mal cette portabilité.

En outre, personnellement les codes que j'écris ont des gros besoins en maintenabilité, ce qui exclu les multiples incréménts de version de JAVA. C'est pour cela aussi que laisser la survie d'un langage au bon vouloir d'une multinationale est invalidant...
6  0 
Avatar de Kerod
Inactif https://www.developpez.com
Le 27/10/2010 à 12:54
Citation Envoyé par palnap Voir le message
Et PHP, vous connaissez? C'est le langage qui a le plus de PdM sur le web... Et AS3?

C'est pas sérieux les gars... Surtout quand vous faites apparaitre BASIC ou Fortran !
Au risque de me répéter :
Ce sondage ne prend pas en compte les langages spécialement destinés au web comme ASP, PHP, Coldfusion, Flash etc.
Voir aussi l'autre sondage : Votre langage serveur préféré pour le web ?
6  0 
Avatar de FR119492
Rédacteur https://www.developpez.com
Le 27/10/2010 à 16:26
Salut!
Est-ce une utilisation pour implémenter des outils de calculs, ou pour effectivement effectuer un calcul formel comme on le ferait faire à Maple, Matematica ou Maxima?
Fortran est fait pour le calcul numérique et non pour le calcul formel. J'ajoute qu'il existe des masses de bibliothèques, parmi les meilleures au monde sur le site www.netlib.org qui est géré par l'Université du Tennessee à Knoxville.
Jean-Marc Blanc
5  0 
Avatar de Klaim
Membre expert https://www.developpez.com
Le 27/10/2010 à 11:27
edit> C++ pour moi

- Pourquoi ce choix

Parce que profondément intéressé par le développement de jeux, ce langage est par nature mon langage de prédilection - allié a d'autres langages en réalité (un seul choix est pour le moins non-réaliste...)

- Les plus/avantages

Système de type fort (et je parle même pas de la metaprog) qui fait qu'on repère pas mal de problème a la compilation, les performances brutes dés le départ (si on pense bien ses algos, comme pour tout langage), accès direct à la machine, abstraction haut niveau voir très très haut niveau, ne payer que pour ce qu'on a demandé, le nombre de bibliothèque qui doit être le plus grand que je connaisse vu que contrairement a d'autres langages on a accès a tous les nivéaux d'abstractions de la machine et ça se reflète dans la variété des bibliothèques.

Et accessoirement, les temps de réflexion permis/forcés par la compilation. Même si parfois c'est trop lent.

- Les moins/inconvénients

Le temps de compilation sur les gros projets utilisant pas mal de templates, l'absence d'un système de typage des templates (les Concepts), l'absence de spécification d'ABI qui permettrait de plus simples interactions entres modules et l'absence de notion de module.

Accessoirement le nombre d'instructions et de détails énormes qui fait qu'on a beaucoup de choses a apprendre avant d'être productif pour des projets de haute performance. Cela dit, un débutant peut déjà faire énormément en en sachant très peu.

- Quels projets réalisez-vous avec et pourquoi

Au boulot, application très flexible pour faire des variantes pour différents clients facilement.
Chez moi des jeux vidéo. Cela dit j'ai aussi fait des jeux dans d'ancien jobs, ainsi que des appli embarquées (jeux et non-jeux confondu) sur téléphones portables (pas les iphones et similaires, les vieux trucs moches d'avant).

- Vers quels autres langages pensez-vous évoluer dans le futur

Je m'intéresse à plein de langage actuellement, surtout les langages systèmes. D par exemple, Haskell aussi, Ruby pour d'éventuels développement web. Sur ce point, je pense quand même tenter du développement web via CPPCMS en C+ donc.

- Comment vous êtes-vous formé, ou avez-vous été formé sur ce langage

Autodidacte. Le net, les livres, les gens.

- Est-ce une utilisation amateur ou professionnelle

Les deux.

- Avez-vous fait votre choix pour raison professionnelle, par plaisir, par choix personnel

Les trois. Cela dit, je ne comprends pas l'intérêt de demander 1 seul langage : dans quasiment tous les projets sur lesquels j'ai travaillé, certains aspects sont mieux résolus par l'addition d'autres langages généralement opposés dans la philosophie. Par exemple, C++ et Python vont bien ensemble pour tout un tas d'applications. Une couche de scripting de Lua ou Python au runtime permet de grands élans de modifications sans compilation, etc.

- Quels outils vous utilisez (Editeur, EDI, etc.)

Visual Studio (toutes versions confondues), Notepad++ et je compte apprendre deux trois trucs.

- Autres langages utilisés, pourquoi ? Dans quel cadre ? Et comparaisons ?

Python pour systèmes de build et autre manip de fichiers, compte l'utiliser en système de script.
Lua en system de script. C# pour des outils.
Des tas d'autres en fait, mais c'est un peu long si on doit tout lister...

- Sur quels systèmes ou plateformes vous travaillez (Windows, DotNET, Linux, etc.)

Principalement Windows, mais je me mets à Linux (Ubuntu/Fedora).

- Conclusion

On devrait avoir au moins 3 choix au lieu d'un.
4  0 
Avatar de Kerod
Inactif https://www.developpez.com
Le 26/10/2010 à 21:28
Citation Envoyé par Luc Hermitte Voir le message
PS: C'est bientôt fini 2010...
C'est à la fin d'une année qu'on fait des bilans il me semble nan ?
3  0