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

Affichage des résultats du sondage: L'avenir du C ?

Votants
116. Vous ne pouvez pas participer à ce sondage.
  • Le C à de l'avenir en général

    60 51,72%
  • Le C n'a d'avenir que pour l'embarqué

    20 17,24%
  • Le C va rester stationnaire

    25 21,55%
  • Le C c'est dépassé, aucun avenir

    5 4,31%
  • Le C existe encore ? je pensais que ça avait disparu

    1 0,86%
  • Je n'aime pas les sondages

    1 0,86%
  • Sans avis

    4 3,45%
Actualités Discussion :

Le C est-il encore un langage d'avenir ?

  1. #41
    Membre éprouvé
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Février 2008
    Messages
    174
    Détails du profil
    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information

    Informations forums :
    Inscription : Février 2008
    Messages : 174
    Par défaut
    Bonjour,

    En ce qui me concerne, le C reste un de mes langages favoris (même si je suis un étudiant jeune et fou).

    J'ai de base une préférence pour le bas niveau et mon explication à cela est que l'on peut gérer la mémoire à notre guise et on est sur (ou presque) de savoir tout ce que l'on fait.

    Le C n'est, à mon avis, pas prêt de disparaitre étant donné ses performances en embarqué (et étant donné le peu de gens sachant coder en assembleur).
    C'est un des langages de base de l'informatique entière, on en trouve partout.

    Cordialement,
    Elverion

  2. #42
    r0d
    r0d est actuellement connecté
    Membre expérimenté

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    4 337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2004
    Messages : 4 337
    Billets dans le blog
    2
    Par défaut
    Bonjour,

    comme il a été dit ici, les divers langages "à la mode" (C, C++, java) sont complémentaire (je ne parlerai pas de C# ici, qui n'est pas vraiment un nouveau langage, dans le sens ou c'est juste un mélange de C++ et de java, qui n'apporte finalement rien de plus qu'un framework bien fourni et bien fait, et qui ne doit son succès qu'à la puissance de Microsoft).

    A long terme, java est plus en danger que C/C++, à cause de C#. Mais je dis bien à long terme, car pour l'instant il est "au top".

    Je ne pense pas que ni le C ni le C++ risquent de disparaitre pour trois raisons principales:
    . ils continuent d'évoluer, ce qui est indispensable pour un langage et en même temps prouve la bonne santé de sa communauté.
    . ces langages permettent des choses, notamment en termes de rapidité d'exécution, que ne permettent pas d'autres langages.
    . selon le type de programme, le C peut être plus simple que les autres. Par exemple faire un petit démon de 10 lignes de code sous linux sera plus simple à faire en C qu'avec n'importe quel autre langage.

    C'est mon point de vue, mais bon, personne ne peut prédire l'avenir. Certains langages pas encore à la mode ont le vent en poupe, et pourraient rapidement changer la donne. Je pense notamment à Python, Caml et OCaml, et Ruby. A ce sujet, la page de l'indice TIOBE est fort intéressante.

  3. #43
    Membre averti
    Homme Profil pro
    Responsable technique
    Inscrit en
    Novembre 2006
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Responsable technique
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2006
    Messages : 20
    Par défaut
    Citation Envoyé par Isukthar Voir le message
    Est-ce que le Java est beaucoup utilisé dans l'embarqué? Car je vais peut être me spécialiser dans l'embarqué dans mes études, et une grosse partie de cours d'embarqué porte sur Java (et ils expliquent qu'il a plein de qualités par rapport au C pour l'embarqué).
    Isukthar et tous les autres, je travaille dans le monde de l'électronique et je peux te confirmer que le C c'est primordial pour du code embarqué dans des microprocesseurs.
    Même si j'ai l'exemple d'un client qui développe avec un langage de haut niveau, tous les autres font du C voire même de l'assembleur lorsqu'il faut optimiser le code.
    Et là j'ai un collègue spécialiste en assembleur sur ATMEL et ST, je peux te dire qu'il est chouchouté par son boss.
    Pourquoi est il chouchouté et pourquoi le C.
    Car :
    Lorsque vous êtes chez de projet sur un produit qui va être fabriquer à quelques million d'exemplaire et que votre équipe soft vient vous voir pour vous dire : nous avons développé avec un langage de haut niveau donc notre code est trop gros et donc on doit mètre un microprocesseur avec plus de mémoire, ça le fait pas !
    La différence de prix engendré, multiplié par le million d'exemplaire fait pousser une gueulante et l'équipe retourne aussitôt dans son coin avec du C.

    Et je confirme, trouver des étudiants, BAC, BTS, BAC + x qui maîtrise un peu le C c'est vraiment de plus en plus dur.

    Et je trouve cela dommage car pour moi il est plus facile de passer tout seul d'un langage de bas niveau à un de haut niveau. Alors que l'inverse !!!


    Pour info, mon client qui développe en haut niveau, gagne tellement de pognon que pour le moment il ne se pose pas la question, dommage pour lui.

    A+
    Pat

  4. #44
    Rédacteur

    Avatar de loka
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2004
    Messages
    2 672
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 672
    Par défaut
    Le C reste pour moi incontournable ! C'est le deuxième langage (après BASIC sur amstrad CPC) que j'ai appris et ça reste toujours un de mes préférés.

    En ce qui concerne son apprentissage durant les études, autant j'ai eu de super cours à la FAC sur le sujet (avec comme professeur Achille Braquelaire celui qui a écris "Méthodologie de la programmation en C") avec de bons TP ainsi que de bons cours en école d'ingé (malgrès des TP déplorables rempli de fautes...).

    Je pense qu'on peut trouver de tout en ce qui concerne les études et il est vrai que les enseignements se portent de plus en plus vers le Java et les nouvelles technos pour délaisser les techno anciennes mais encore très largement utilisées.

  5. #45
    Membre actif

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Octobre 2008
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 30
    Par défaut Linux & Java
    Le premier rover qui a roulé sur Mars était programmé en Java sur un OS Linux.

  6. #46
    Membre Expert

    Homme Profil pro
    .
    Inscrit en
    Janvier 2006
    Messages
    703
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : .

    Informations forums :
    Inscription : Janvier 2006
    Messages : 703
    Par défaut
    Le robot européen de la mission Exomars est programmé en C sur système linux. Par contre, je te dis pas les contraintes de dev

  7. #47
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Bien évidemment, j'ai voté "a de l'avenir"..

    Plusieurs commentaires :


    Citation Envoyé par Gordon Fowler Voir le message
    Il montre également que, de manière continue, le C prend des "parts de marché" au C++.
    Un résultat qui défie les prédictions et contredit les idées reçues, car si le C++ a connu une vague d'adoption jusqu'en 2001, il semble, depuis, stagner.
    La raison en est à mon avis très simple, et j'ai déjà eu l'occasion de le dire ailleurs :

    l'engouement pour le C++ a été poussé par "le langage objet" et la mode (croyance ? matraquage ?) que l'objet était La Solution aux problèmes..

    Comme le savaient tous ceux ayant déjà travaillé depuis longtemps dans le domaine, La Solution n'existe pas...

    Vu l'immense base de logiciels existante, et le fait que c'était le langage préférentiel des ordinateurs à base d'Unix (et aussi de VMS), et la relative explosion de Linux, le résultat n'est pas étonnant...



    Le C est-il le meilleur langage pour les logiciels embarqués ?

    je ne sais pas, je ne travaille pas dans l'embarqué, mais à priori vu son efficacité ailleurs, cela ne m''étonnerait guère..


    L'avez-vous appris sur le tas ?

    Oui. D'abord Fortran, puis C ..


    Partagez-vous le diagnostic et les inquiétudes de Michael Marr ?

    Oui

    Citation Envoyé par Gordon Fowler Voir le message
    Le vieillissement et le non renouvellement des programmeurs en C d'une part, et l'augmentation de l'importance des logiciels embarqués d'autre part n'annoncent rien de bon pour l'avenir.

    La faute en incomberait à l'école : "le développement de process et l'architectures des firmware pour les logiciels embarqués s'apprennent aujourd'hui sur le tas", constate le rédacteur en chef de "Embedded Systems Design".
    C'est ce que je me tue à dire depuis de nombreuses années sur ce site comme ailleurs..

    L'enseignement et la recherche ont été découplés de la réalité industrielle, et se sont lancés d'une part à fond dans le Web, et d'autre part à fond dans l'objet, méprisant les anciens paradigmes, et croyant (est-ce associé à la génération de profs n'ayant pas eu l'enseignement "à l'ancienne" ??) qu'on avait la panacée avec les méthodes et langages objets..

    Non seulement le C est-il devenu ringard, mais toute la pensée, modélisation, conceptualisation, méthodologies pré-existantes le sont devenu aussi..

    On commence juste à arriver dans la zone de turbulence...


    Les gens de ma génération partiront bientôt en retraite (pas moi), les jeunes n'ont pas appris le langage et ne sont pas formés pour penser autrement qu'objet, et les applis et besoins continueront...



    [EDIT]

    Note : j'ajouterais que la sur-consommation et la sur-production de langages et de "modes" ou "tendances" depuis 2000 tend a contrario à favoriser quelque chose de stable et de fiable..

    J'avais lancé un débat il y a maintenant au moins 2 ans sur le Développement pérenne, et je pense que cela fait partie de la réflexion..

    On finit par tomber dans l'excès : chaque langage devient obsolète au bout de 6 ou 7 ans (voire plus tôt), sans compter les versions incompatibles.. Alors la mode c'est bien joli, mais ça coûte cher, et on ne trouve plus personne chez les jeunes pour maintenir un code fat il y a 6 ans.. (voir le thread sur "faut-il interdire IE6 ?", qui démontre et les incompatibilités et une certaine attitude, qui est suicidaire sur le moyen ou long terme)

    C'est d'ailleurs une des raisons qui fait que le C99 n'est pas aussi utilisé que le C, et que les "features" nouvelles de C99 n'ont que (relativement) peu d'intérêt...


    [/EDIT]

  8. #48
    Membre éclairé
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2007
    Messages
    731
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : amateur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 731
    Par défaut
    J'ai fait un DUT Réseaux et Telecom dans lequel j'ai fais du C et du JAVA. Je suis en école d'ingé d'informatique dans lequel je vais refaire du C/C++ et du java entre autre.

    Personnellement, je n'aime pas du tout le java, je trouve que ce langage cache trop de chose comparé au C. On a l'impression de faire des choses sans trop savoir ce qu'on fait, ce qui ce passe.

    Pour ma part, si je dois choisir entre C/C++ et java je choisirai sans hésiter le C/C++ et j'espère donc qu'il a encore de l'avenir ce langage.

    J'ai peut être été conditionné par l'enseignement que j'ai reçu et que je reçois ? Je me pose cette question quand je lis certains des commentaires précédent.

    Quand je discute avec mes camarades, certains disent : "je trouve que le JAVA c'est mieux que le C parce que c'est plus simple à utiliser et à comprendre". Je trouve dommage de justifier qu'un langage est mieux qu'un autre parce qu'il est plus accessible dans sa compréhension et son utilisation que sur ça puissance.

  9. #49
    Membre très actif Avatar de ZeRevo
    Inscrit en
    Avril 2007
    Messages
    302
    Détails du profil
    Informations personnelles :
    Âge : 41

    Informations forums :
    Inscription : Avril 2007
    Messages : 302
    Par défaut
    Quand je discute avec mes camarades, certains disent : "je trouve que le JAVA c'est mieux que le C parce que c'est plus simple à utiliser et à comprendre". Je trouve dommage de justifier qu'un langage est mieux qu'un autre parce qu'il est plus accessible dans sa compréhension et son utilisation que sur ça puissance.
    Il faut pas être sectaire ! Si pendant des années des entreprises ont investi de l'argent dans JAVA et dans le C, ce n'est pas pour rien.
    Comme on est dans un milieu dirigé par l'économie, une entreprise privilégiera le langage le plus productif par rapport à leurs besoins.

    Si le but c'est de faire de la performance, le C est le meilleur choix, si le but c'est de coder une appli. sans besoin de perf, Java est un bon choix.

    Personnellement, je n'aime pas du tout le java, je trouve que ce langage cache trop de chose comparé au C. On a l'impression de faire des choses sans trop savoir ce qu'on fait, ce qui ce passe.
    Tu peux donner des exemples ?

  10. #50
    Membre éclairé
    Homme Profil pro
    amateur
    Inscrit en
    Octobre 2007
    Messages
    731
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : amateur

    Informations forums :
    Inscription : Octobre 2007
    Messages : 731
    Par défaut
    Ben codes un logiciel de chat en C et en JAVA, regardes la différence de lignes de codes à produire. Il en faut moins en JAVA qu'en C pour faire la même chose. Conclusion : on te cache des choses, c'est plus rapide mais c'est peut être le but.

    Et pour informations, je ne fais que citer mes camarades et ensuite je donne mon avis. En quoi suis-je sectaire ? à moins que je n'ai pas compris ce que tu voulais réellement dire ?

  11. #51
    Membre Expert

    Homme Profil pro
    Inscrit en
    Juillet 2003
    Messages
    2 075
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Juillet 2003
    Messages : 2 075
    Par défaut
    Citation Envoyé par Gordon Fowler Voir le message
    Les jeunes développeurs n'utiliseraient plus le C.
    "C'est trop difficile, un truc pour les vieux" semblent-ils dire.

    C'est en tout cas l'enseignement que Michael Barr, rédacteur en chef du magazine "Embedded Systems Design", tire de son expérience.
    En cela il rejoint Joel Spolsky dans cet article qui permet aussi de bien mesurer les racines de la désaffection (relative) d'un langage comme le C.

    L'étude qu'il a menée pendant plus de dix ans montre pourtant que ce langage est, de loin, le plus utilisé dans les projets de logiciels embarqués.
    C'est normal: le C est un des langages qui permet de rester le plus proche du matos: cela ressemble à de "l'assembleur avec des fleurs" comme dirait l'autre.

    Le vieillissement et le non renouvellement des programmeurs en C d'une part, et l'augmentation de l'importance des logiciels embarqués d'autre part n'annoncent rien de bon pour l'avenir.
    Ca dépend pour qui. Les personnes qui ont pris la peine d'apprendre le C, de le pratiquer et de l'utiliser pour programmer devraient avoir un bel avenir.

    Malheureusement, cette forme d'enseignement n'est pas des plus efficaces. Le jeune programmeur "n'a souvent que peu de retour - quand il en a - [et] le découragement est souvent au rendez-vous".

    "Bien qu'ils soient intelligents et talentueux, mes jeunes amis ne connaissent [donc] pas vraiment le C. Et ils s'en moquent", regrette-t-il. "Pourtant, il faudra bien continuer à écrire les logiciels embarqués pour répondre à une demande toujours plus forte. De nouveaux langages peuvent aider, mais ils ne permettront jamais une rétro-compatibilité avec toutes les architectures des CPU que nous avons connues jusqu'ici et que nous allons encore utiliser pendant plusieurs décennies"
    Ben apprendre le C "sur le tas", je ne sais pas si c'est possible. L'apprendre seul si l'on a une bonne méthode et des bases en programmation (et du temps!!), pourquoi pas, mais "sur le tas"...Je ne pense d'ailleurs pas qu'il soit possible d'apprendre à programmer en quelque langage que ce soit "sur le tas".

  12. #52
    Membre Expert
    Avatar de SpiceGuid
    Homme Profil pro
    Inscrit en
    Juin 2007
    Messages
    1 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 704
    Par défaut le C a de l'avenir
    Faute de pouvoir voter "a de l'avenir" j'ai voté "à de l'avenir".

    Ce que j'aime dans le C:
    • le côté assembleur portable


    Ce que j'aime moins:
    • le C a des insuffisances dans le haut niveau, le C est vieux dans sa conception il n'offre pas des facilités aussi élémentaires que la programmation modulaire, la généricité, les exceptions et la possibilité de renvoyer deux valeurs plutôt qu'une seule
    • le C a des insuffisances dans le bas niveau, il est par exemple impossible d'additionner avec une retenue, quand on multiplie deux int on ne reçoit que le int de poid faible (comment récupérer le int de poid fort ?), on ne peut pas allouer une taille dynamique sur la pile alors que tout ça est parfaitement possible en assembleur quelque soit le processeur (ou du moins je ne connais pas de cpu avec lequel ça ne soit pas possible)


    Depuis le C il y a eu de nombreuses tentatives de créer un assembleur portable, d'abord du côté de la famille Pascal, puis plus récemment le D et Cy-clone. Ces nouveaux langages sont intéressants (notamment du côté de la modularité et du typage). Malheureusement ils ne comblent les lacunes du C que dans le haut niveau, pas dans le bas niveau, et les benchmarks montrent que le C a toujours une longueur d'avance côté performance, malgré toutes les affirmations selon lesquelles un typage plus fort permettrait plus d'optimisations.

    Ce qui rend le C incontournable sur son segment:
    • le C est partout là où on cherche la performance brute
    • les include sont toujours en C, c'est un gros handicap pour les concurrents comme le D (il faut convertir les include de façon manuelle ou semi-manuelle)
    • avec le boom des web-technos le bas niveau est en perte de vitesse, ça ne peut que renforcer la techno déjà dominante et rendre plus difficile l'émergence d'une alternative
    • plusieurs concurrents dont le D ont déjà promis des performances comparables au C et finalement ont déçu, moins performants et moins portables, les alternatives au C ont perdu en crédibilité

  13. #53
    Membre éprouvé Avatar de vg-matrix
    Inscrit en
    Février 2007
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Février 2007
    Messages : 1 220
    Par défaut
    tout le monde, pour ma part, je pense que le C est souvent abandonné et peu pratiqué parce qu'il est mal enseigné dans nos écoles.

    Perso, je l'ai appris en BTS (1ère et 2ème année) et je l'ai aimé dans un premier temps parce que je le trouvais beaucoup plus simple et compréhensible que le Pascal (chose bizarre d'ailleurs) puisque mes programmes fonctionnaient en général au 1er coup. Mais lorsque j'ai commencé à lire la documentation respectant les normes de codage en C (sur ce site), j'ai compris que j'avais bidouillé 2ans durant . Ce qui m'a beaucoup déçu parce qu'avec les profs, ça fonctionne donc c'est bon

    C'est vraiment dommage qu'on l'apprenne ainsi

  14. #54
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Citation Envoyé par SpiceGuid Voir le message
    • le C a des insuffisances dans le haut niveau, le C est vieux dans sa conception il n'offre pas des facilités aussi élémentaires que la programmation modulaire, la généricité, les exceptions et la possibilité de renvoyer deux valeurs plutôt qu'une seule
    je ne repondrais que sur ce point :

    1. où as-tu vu qu'il n'offre pas de programmation modulaire ??

      c'est au contraire la pratique normale en C.. Alors peut-être qu'on ne vous l'apprend pas en cours, mais c'est au contraire la base de tout gros projet C.. (il suffit de voir les sources des packages usuels sur Gnu, SourceForge, etc)


    2. Où as-tu vu qu'l n'y a pas de généricité ??

      void* c'est pas assez générique, pour toi ??


    3. où as-tu vu qu'il ne pouvait renvoyer qu'une seule valeur ??

      A quoi ça sert de retourner des adresses de tableaux dynamiques ??


    4. où as-tu vu qu'il ne gère pas les exceptions ??

      signal, sockets asynchrones, etc etc..




    Citation Envoyé par SpiceGuid Voir le message
    • plusieurs concurrents dont le D ont déjà promis des performances comparables au C et finalement ont déçu, moins performants et moins portables, les alternatives au C ont perdu en crédibilité
    Absolument, mais c'est ce que je souligne plus haut et dans de nombreux autres posts : l'émergence de modes universitaires, supportées par Internet et les forums, donne une "visibilité" et une "mode passagère" dans (certaines) industries (ou tout au moins chez certains recuteurs) qui fait apparaître un truc d'universitaire et de recherche comme "le nec plus ultra", et qui se révèle (la plupart du temps pour ne pas dire quasi tout le temps) un échec : soit trop compliqué, soit trop lent, soit trop ésotérique, soit trop tourné vers un certain type d'applis, soit nécessitant des sur-couches, etc etc..

    Le fondamental de l'échec de la plupart est la difficulté à les interfacer avec d'autres, en particulier le C.. et leur "incomplétude", nécessitant des bibliothèques à adjoindre, nécessitant des couches (donc des dépendances) et un apprentissqge supplémentaires, etc etc..

  15. #55
    Membre très actif
    Inscrit en
    Septembre 2009
    Messages
    246
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 246
    Par défaut
    Bonjour

    Je suis jeune diplômé (2008) ça fait un an que je travaille, et ça fait un an que je fais du dev en C pour le domaine de l'embarqué.

    Il m'arrive (souvent) je traduire du code asm (développé dans les années 80) en C.

    Je travaille sur un très ancien µP le MC68020.

    Je pense que dans les prochaines années, il serai emmené à travailler encore sur ce langage.

    ++

  16. #56
    Membre expérimenté
    Profil pro
    Étudiant
    Inscrit en
    Juillet 2004
    Messages
    230
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2004
    Messages : 230
    Par défaut
    Citation Envoyé par SpiceGuid Voir le message
    le C a des insuffisances dans le haut niveau, le C est vieux dans sa conception il n'offre pas des facilités aussi élémentaires que la programmation modulaire, la généricité, les exceptions et la possibilité de renvoyer deux valeurs plutôt qu'une seule
    Normal en meme temps ... Le C est une sorte de surcouche a l'assembleur afin de permettre une alternative potable (et agreable) a l'assembleur.
    Cependant il est quand meme penible de se farcir des lignes de codes a foisons pour des trucs aussi bateau que la manip des chaines de caracteres

    Citation Envoyé par SpiceGuid Voir le message
    le C a des insuffisances dans le bas niveau, il est par exemple impossible d'additionner avec une retenue, quand on multiplie deux int on ne reçoit que le int de poid faible (comment récupérer le int de poid fort ?),
    Pas compris ...

    Citation Envoyé par SpiceGuid Voir le message
    on ne peut pas allouer une taille dynamique sur la pile alors que tout ça est parfaitement possible en assembleur quelque soit le processeur (ou du moins je ne connais pas de cpu avec lequel ça ne soit pas possible)
    Heu en C99 les allocations dynamiques sur la pile sont valable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    
    void lol(int i)
    {
      char tab[i];
    
      printf("%i\n", sizeof(tab[i])); /* affiche i */
    }
    ps: je viens de tester sous VS2008 ca passe pas, sous gcc pas de soucis

  17. #57
    Expert confirmé Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Par défaut
    L'étude qu'il a menée pendant plus de dix ans montre pourtant que ce langage est, de loin, le plus utilisé dans les projets de logiciels embarqués.
    Pour des appli embarquées ou médicales qui peuvent avoir des conséquences portant atteinte à la vie ou à la santé, il existe des normes de dévellopement extrémement contraignantes. Et, ces normes s'appliquent non seulement à l'application proprement dite, mais également à l'ensemble des outils y participant : système d'exploitation, compilateurs, bibliothèques du compilateur, autres bibli. De plus, l'allocation mémoire doit être assez strictement contrôlée.

    Ceci explique que l'on soit conduit à ne pas employer les OS ou les Frameworks usuels comme JAVA ou .NET. Ce qui restreint considérablement le choix des langages disponibles.

  18. #58
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 116
    Par défaut
    Citation Envoyé par Franck.H Voir le message
    Depuis 5 ans maintenant que je programme en C et j'en reste toujours aussi fan, même accro j'dois dire



    Je pense oui, surtout du point de vue des performances. Même si aujourd'hui dans certains types de développement le C n'est plus trop d'actualité (téléphone portable moderne où Java arrive en tête par exemple) il n'en reste pas moins incontournable pour d'autre (modem par exemple).


    Moi oui, en autodidacte (pas sur le tas, ca existe pas ca pour ce langage) par le biais de livres, du forum et des tutoriaux !


    J'estime que même lorsqu'il est encore étudié en IUT ou autre FAC, les cours ne sont pas suffisant. Je vois souvent dans les forums des étudiants qui sont lâchés dans la nature si je puis dire alors que c'est un langage qui doit s'apprendre avec une très grande rigueur et un grand sérieux.

    Le C n'est pas un langage qu'on apprend à coup de baguette magique comme par exemple Python qu'on peut apprendre en 1 ou 2 week-end
    Très bien dit.
    Je suis gestionnaire de formation. Je devais apprendre un langage de programmation pour coder des trucs dans le domaine de la recherche opérationnelle. Un professeur m'a conseillé le C. J'avoue que c'est un langage très puissant quoique dur surtout si on n' a pas des bases en algorithmique.

  19. #59
    Membre actif Avatar de aba.com
    Inscrit en
    Juillet 2008
    Messages
    65
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2008
    Messages : 65
    Par défaut ah oui le c
    le c est fait parti des langages les plus enseigné aux débutants en informatique. et ceci reste ce qui lui assure son avenir car si quelqu'un débute avec un quelconque langage la plupart du temps il va etre bon dans ce langage s'il aime ce qu'il fait biensur . Et en attendant d'en apprendre d'autres il va etre obliger de le pratiquer et de développer avec ce langage voila ce qu'il en est avec le C on commence avec et on continu de le pratiquer malgré qu'on en apprend d'autre.

  20. #60
    Membre éprouvé Avatar de vg-matrix
    Inscrit en
    Février 2007
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Âge : 36

    Informations forums :
    Inscription : Février 2007
    Messages : 1 220
    Par défaut
    A mon humble avis, j'ai voté "Le C à de l'avenir en général" mais si on regarde le fait que la plupart des langages performants se sont basés sur le C pour simplifier beaucoup de points, je crains que tôt ou tard on soit obligé de l'oublier ou encore de réduire son utilisation comme l'assembleur.

Discussions similaires

  1. Réponses: 18
    Dernier message: 27/08/2010, 10h34
  2. couche DAO. Est ce encore necessaire ?
    Par ouedmouss dans le forum Hibernate
    Réponses: 14
    Dernier message: 22/07/2008, 15h36
  3. JSp est il encore populaire?
    Par berceker united dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 02/10/2006, 14h28

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