9
votes

Quel sera l'avenir de C # dans 10 ans?

Je pensais apprendre C ++ à l'université, mais il semble qu'ils ont maintenant dub c # comme une langue standard de l'industrie.

Je n'ai jamais pensé que je m'engagerais avec ça, mais c'est en fait une très belle langue.

Le seul problème que j'ai en ce moment est que je suis limité à la plate-forme Windows.

Alors peut-être, lorsque j'écris des programmes Windows à partir de maintenant, je devrais pratiquer C # au lieu de mon précédente expérience Winapi et C ++?

J'ai également entendu de bonnes nouvelles sur le projet mono, ainsi que le fait que c # est l'une des langues de script du moteur de jeu 3D UNITY.

Toutes les idées?

discussion ouverte à n'importe qui!


2 commentaires

C'est un wiki communautaire je pense


C'est> 10 ans plus tard et C # est toujours là. Selon PLPCHER , il est passé de 7,9% en 2009 à 7,3% en 2020.


6 Réponses :


12
votes

avec mono, vous pouvez exécuter sur Linux et Mac. Mono fait également un version mono touch pour l'iPhone. Cela a beaucoup de possibilités à l'avenir. C # existe déjà depuis 9 ans et fait partie de .NET. Avec .net aussi ayant aussi C ++, F #, VB.NET comme langues aussi disponibles, je pense que c # sera autour depuis longtemps. C # est devenu une norme ISO en 2003, il s'agit donc d'une langue standard. Il semble que ce sera toujours une langue de deuxième classe sur Mac ou Linux Tho. Une fenêtre, je pense que ce sera là et les gens l'utiliseront, mais sur les autres, il y aura une résistance.

Le moteur de jeu Unity pour l'iPhone utilise le nouveau Mono Touch et C #, il se peut que cela puisse être la façon dont il ait plus de personnes qui cherchent à faire des applications iPhone et à utiliser C # sur une plate-forme non-Windows.


3 commentaires

+1. Je n'avais pas entendu parler de Mono Touch ...


Mono-Project.com/monoTouch


Oui, c # est une "standard", mais MS n'a pas mis en œuvre cette norme et n'est apparemment pas intéressée par la fabrication de versions plus modernes de C # dans une norme.



4
votes

Je pense que c # a un grand avenir et continuera de croître en usage. D'autre part, je ne serais pas trop rapide pour laisser tomber C ++: c'est une langue importante dans l'industrie et continuera d'être très longue.

Voir ma réponse à Cette question pour voir mes pensées plus générales sur la manière de choisir les langues à passer du temps à apprendre du temps. Suivre les tendances linguistiques est une compétence importante à long terme pour un développeur.


0 commentaires

1
votes

TL; DR Version: Apprenez les deux. Puis apprenez le schéma. Apprenez quoi que ce soit. Il n'y a pas de "une langue que tout le monde enseigne et que chaque employeur voudra que vous utilisiez"

avant C #, beaucoup d'universités enseignaient Java. Lisp et Python sont également couramment enseignés.

Au niveau des langues de niveau supérieur, C # / Java permet aux élèves de comprendre les concepts de niveau supérieur avant de ne maîtriser pleinement les niveaux inférieur (par exemple, ils n'ont pas à se lever de ne pas causer de fuites de mémoire Dans leur première implémentation de la liste liée à l'introduction aux structures de données.

En fin de compte, une éducation CS bien arrondie couvrira également des concepts de niveau inférieur. Je pense que la plupart des élèves prennent au moins un cours d'introduction sur les systèmes informatiques, où C / C ++ et la lecture du code désassemblé sont nécessaires.

Pour le compte rendu, ma première classe CS était SICP dans le schéma, suivie d'une série de classes où nous avons été autorisés à choisir C ++ ou Java (et parfois schéma / perl / autre).


0 commentaires

1
votes

L'historique suggère que c # sera en gros utilisation, mais probablement avec la baisse de la part de marché. Considérez ce qui est arrivé à toutes les autres langues principales que vous connaissez: À un moment donné, ils figuraient entre les favoris de l'industrie (Cobol, PL / 1, ADA, Basic, C, C ++, même Java) et maintenant, d'autres langues les éclipseront. C # va probablement rester assez bien; Il est bien conçu et Microsoft a toutes les raisons de continuer à la pousser. OTOH, puis les besoins de la prochaine génération informatique (parallélisme, informatique distribuée, sécurité) peuvent causer même Microsoft de le remplacer (témoin Ironpython, F #, ...).

Son vaut probablement votre peine à l'apprendre, au motif que vous n'allez pas deviner le remplacement facilement à ce moment-là et il sera toujours utile en décennie, si rien d'autre à cause de la base de code énorme qu'elle aura.


2 commentaires

C # L'utilisation va probablement plus loin avant de commencer à diminuer. Il a une énorme portée pour devenir "la" langue gérée sous Linux, avec une mise en œuvre open source très complète.


La question était: «Où sera C # dans 10 ans». Bien sûr, il y aura gonfler au cours des 3-5 prochaines années. Mon point est après cela, cela déclinera.



6
votes

Apprenez à la fois C # et C ++. Cela ressemble à "cueillir la bonne langue" et évite donc que les "faux" vous feront gagner du temps, mais c'est une fausse économie. Vous devriez lire et jouer avec toutes ces langues:

  • c (travail via Ce livre )
  • C ++ ( Voici ce que j'ai utilisé (et toujours utiliser) Certaines personnes trouvent que ça va dur)
  • Java (ne sais pas quel livre à recommander, je viens d'acheter Java efficace mais il n'est pas encore arrivé)
  • c # ( Ce livre )
  • schéma (travail via Ce livre )
  • haskell ( Ce livre )
  • JavaScript ( Lecture essentielle mais pas un tutoriel de scratch)

    Cela ressemble à beaucoup de travail acharné pour rien, non? Tort. Tout d'abord, c'est amusant. Deuxièmement, plus vous apprenez sur d'autres langues, mieux vous obtenez à l'aide de votre langue préférée. Il est fort probable que vous finirez davantage d'experts dans une langue, mais vous pourrez utiliser les connaissances de tous les autres en IT - C # a fait un excellent travail sur sa durée de vie d'intégration en douceur des idées d'autres langues.


1 commentaires

Bonnes suggestions de livres, je possède aussi la plupart d'entre eux et peuvent vraiment les recommander +1!