Question

Je suis allé à l’école pour participer à des programmes il ya des années et quand je suis sorti, j’ai trouvé un emploi dans l’administration système et c’est la direction que ma carrière a prise. J'aimerais revenir au développement d'une sorte et avoir "joué" avec C # et ASP.NET, mais j'ai entendu beaucoup de buzz pour d'autres "nouveaux" langages (par nouveau, je veux dire qu'ils sont nouveaux pour moi) comme Ruby et F #. Je suppose que je me demande si je ne perds pas mon temps à apprendre en grande partie les langues des États membres au lieu d’être plus généraliste. N'ayant pas fait partie de la communauté du développement depuis longtemps (si j'ai toujours été là), je me retrouve à patauger avec les tendances et j'aimerais ne pas être laissé pour compte.

Si vous avez intérêt à suivre les "dernières informations", langues ou rester avec ce qui est plus technologies éprouvées et vraies?

Était-ce utile?

La solution

Vous devez apprendre au moins 1 langage compilé (comme C # ou Java) et 1 langage de script (Python, Ruby, etc.). Cela suffit généralement à aider la plupart des développeurs à réussir ce qu’ils font, quel que soit leur âge.

En ce qui concerne new vs old, je resterais avec C # pour le moment car il est très populaire. Apprendre une nouvelle langue ne serait cependant pas si mal.

Autres conseils

C.

Sérieusement, apprenez C.

Si vous ne vous précipitez pas dans les collines pour vous arracher les cheveux, vous ne pouvez pas devenir développeur.

Notez que je ne dis pas que les personnes qui ne connaissent pas C ne sont pas des développeurs (Jeff, le fondateur de ce site, ne connaît pas C et il se débrouille très bien), mais C vous présentera beaucoup de choses. des aspects de développement moins glamour et sucrés .

Deuxième choix, choisissez C #.

La langue que vous choisissez n’a pas d’importance. Lorsque vous comprendrez les concepts, vous serez probablement en mesure de choisir une nouvelle langue assez rapidement.

voir http://www.tiobe.com/ index.php / content / paperinfo / tpci / index.html pour un index complet de la popularité des langues

C # est mon langage de choix, Java et C # sont assez similaires, je ne pense pas que ce soit un problème d’apprendre Java une fois que les principes fondamentaux de c # sont compris ... mais c ++ est une autre bête.

Je pense que c ++ est l’un des meilleurs outils généraux et qu’il sera plus facile de s’y attaquer une fois que c # sera bien compris (il a BEAUCOUP de documentation et de forums d’aide). L’expérience c ++ n’est cependant pas limitée à Microsoft. Les plates-formes les plus populaires exécutent c ++. Avec cette expérience, vous ne serez pas limité à Windows. C’est également utile car elle n’est pas aussi lisse que c # ou Java, ni aussi granuleuse que c pure, et elle peut s’interopérer assez facilement avec c # (une des raisons pour lesquelles une transition est plus facile)

Donc, c # est un bon choix, et à mon avis, suivi de près par c ++

Je suis d'accord avec beaucoup de ce qui précède: le langage n'est pas important. En gros, la langue ne compte que pour les éléments suivants:

  1. Caractéristiques. Si vous avez besoin d'héritage multiple, vous feriez mieux d'utiliser C ++. Si, comme plus de 90% des développeurs, vous n'avez besoin de rien qui soit spécifique à un (ou à un petit sous-ensemble de) langages, cela n'a pas d'importance.
  2. Syntaxe. Détestez-vous les espaces? Allez avec C #. Déteste les accolades? LISP est votre ami. Vous ne vous souciez pas d'une manière ou d'une autre? Cela n'a pas d'importance.
  3. Compilé ou interprété? Cela compte. Allez avec compilé (ou partiellement compilé, comme .NET) et ce sera plus rapide ... mais l'écart de vitesse se réduit.
  4. Opportunités de travail locales. Bien sûr, vous êtes peut-être un génie de C # ... mais si tous les membres de votre personnel qui recrutent cherchent des programmeurs PERL, cela ne vous fera aucun bien.
  5. Soutien de la communauté. Si votre langue n'a pas été utilisée sérieusement au cours des 20 dernières années (ou plus), n'espérez pas beaucoup d'une bouée de sauvetage sur Google. QBASIC, je te regarde. StackOverflow sera là si ...

À la fin, nous pouvons discuter des choses jusqu'à ce que nous soyons tous bleus. Choisissez une langue avec un ensemble de fonctionnalités que vous aimez, avec une syntaxe qui ne vous rendra pas dingue, une communauté décente et, espérons-le, des opportunités d'emploi dans votre région.

Pour ce qui est nouveau ou ancien ... les deux sont bons. Les nouvelles langues PEUVENT avoir tendance à être plus faciles à assimiler, mais la documentation et l’utilisation des anciennes langues sont plus répandues, bien que cela puisse être en train de disparaître progressivement.

C'est une question un peu chargée, mais vous constaterez que les gens ici sont passionnés par le choix de leurs outils, tout en croyant en la flexibilité que leur offre un choix.

Cela dit, si vous n’êtes pas dérangé par "& lock; vendeur lockin", La pile Microsoft est un excellent moyen de se lancer dans la programmation et de trouver un emploi rémunérateur pour les années à venir. Microsoft est à la fois "essayé et vrai" et "dernière." La pile Microsoft est traditionnellement conçue pour la création d'applications d'entreprise, mais vous n'y êtes pas limité (ASP.NET MVC, par exemple, a été utilisé pour créer ce site).

Je ne connais pas grand chose au monde de Ruby on Rails et autres, alors je vais laisser la parole à une personne plus avisée.

Mon vrai conseil est d'aller avec ce que vous aimez. Apprenez C et F # si c'est ce que vous aimez.

Eh bien, si vous vous tenez au courant des dernières langues, vous pourrez toujours trouver un emploi auprès des entreprises qui cherchent à accroître le nombre de leurs mots-clés marketing. Ne dis pas que c’est la seule utilisation possible des langues, mais c’est certainement une utilisation.

D’un autre côté, il existe toujours un marché pour les technologies plus anciennes, que ce soit avec des entreprises désireuses de s’appuyer sur des technologies plus anciennes, plus fiables et plus éprouvées, et de les conserver.

Je suppose que cela dépend de la façon dont vous voulez progresser. Si vous recherchez des tendances, vous constaterez que vous n’avez jamais le temps d’apprendre réellement une technologie, mais si vous optez pour des langues plus anciennes, vous constaterez peut-être que les projets les plus intéressants sont lancés avec des éléments plus récents que vous ne connaissez pas et vous. sont laissés avec la maintenance. Tout est question de compromis.

À mon avis, il faudrait réfléchir au type de travail que vous voulez faire et aux exigences qu’il serait utile de remplir pour ces emplois. Par exemple, connaissez-vous les modèles de conception? Que diriez-vous de la modélisation d'un système utilisant des classes et un héritage? Si vous souhaitez vous lancer dans les applications Internet riches, AJAX et d’autres éléments Javascript sont indispensables à apprendre, ainsi que HTML et ses diverses ramifications telles que XHTML et DHTML.

Je ne pense pas qu'il y ait quelque chose qui cloche dans la connaissance des technologies Microsoft, si elles ne rencontrent pas d'autres technologies qui pourraient s'avérer nécessaires si vous souhaitez postuler à un poste de développeur et si elles requièrent du code Javascript ou CSS. ne pas avoir.

Un autre point à prendre en compte est la prise de conscience des modifications apportées aux outils au fil du temps, car d’autres modifications seront probablement apportées à mesure que le Web évoluera, par exemple. Ce que Visual Studio 2010 aura peut-être beaucoup plus de changements que l'actuel Visual Studio 2008 en regardant certaines des annonces récentes concernant jQuery et le framework MVC.

J'ai utilisé C #, Ruby, Perl, JavaScript et PHP de manière professionnelle au cours de la dernière année et ils ont tous été utiles de différentes manières. Je suggérerais que si vous voulez un moyen facile de se familiariser avec les bases de la programmation, Ruby est un excellent langage pour le faire, car sa syntaxe est simple, facile à suivre et il est très facile de penser de manière orientée objet. Ainsi, quelque chose qui peut être plus difficile avec un langage semi-OO comme C # ou Java.

C # vaut la peine d’être appris car il est utile de connaître une langue de la famille C - les idiomes fondamentaux sont si communs qu’il vaut la peine de les utiliser - mais j’éviterais le C ou C ++ simplement parce que je ne vois pas vraiment le besoin de gérer sa propre mémoire - cela rend la vie très difficile, introduit beaucoup de bugs inutiles et confère peu d’avantages tant que vous n’êtes pas vraiment excellent. Devenez bon dans quelque chose qui gère la gestion de la mémoire en premier et vous pourrez ensuite passer aux choses plus difficiles si vous en aviez besoin.

Je voudrais éviter les langages fonctionnels comme le F #. Ils sont assez durs et assez différents même si, d’habitude, leur compréhension fait de vous un meilleur programmeur.

Je dirais d’apprendre ce qui est le plus facile et de saisir les concepts fondamentaux qui les sous-tendent. La syntaxe est un obstacle facile à surmonter, la différence entre les langues est un peu plus délicate.

Cependant, comme C # semble disposer d’une large base d’aide sur le net et ici sur les SO, je commencerais par là et découvrirais les rouages ??de la programmation orientée objet. Ensuite, idéalement, vous devriez être en mesure de basculer vers la plupart des autres langages OO dont vous avez besoin à l’époque (comme Ruby, Java, Obj-C ou même le redouté C ++) jk, personnes C ++ .

Un langage comme F #, bien que populaire, est assez différent de C #, car il est fonctionnel. Si vous avez l'habitude d'écrire du code de style fonctionnel, F # peut être un bon endroit pour regarder. Mais même dans ce cas, apprenez à écrire le code fonctionnel et apprenez les bases du langage.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top