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

C Discussion :

Après une initiation au C? [Débat]


Sujet :

C

  1. #41
    Membre chevronné Avatar de Jack_serious
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    350
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 350
    Par défaut
    Citation Envoyé par Gfx
    On n'est plus il y a 15 ans, on peut aujourd'hui faire des concessions sur les perfs d'un logiciel pour faciliter le developpement.
    Etant donne la vitesse des machines actuelles, il est vrai qu'on a plus autant besoin d'attacher d'importance a la vitesse qu'avant. Une appli de taille moyenne ecrite a la mode gros cochon en Java sera supportee avec un temps d'execution raisonnable par tous les systemes recents. (Je ne parle ici que des PC ou des systemes non-lights bien sur).

    Je te rejoins sur le fait que les differentes langages repondent a differents besoins.

    Mais, l'apprentissage du C, meme legerement, reste vital (Je pense). Le reste passe bien mieux apres (Je trouve).

    Concernant l'evocation de Python a la page precedente, ca m'interesse. J'entends beaucoup parler de Python et j'aimerai beaucoup savoir de quoi il retourne, decouvrir et pourquoi pas m'y mettre. Pourriez vous me rediriger vers le(s) site(s) de reference ou les bouquins kivonbien ?

    Merci d'avance !

  2. #42
    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 gege2061
    Le projet GNU conseille fortement d'utiliser le C pour la création de logiciel : Which Languages to Use
    ça doit être pour ça que emacs est écrit en lisp
    Moi ce qui m'intéresse dans ce document plutot que la volonté de garder le C dans un souci de cohésion du projet, ce sont les recommendations qu'ils font: comment écrire du code C pour GNU, http://www.gnu.org/prep/standards/st...html#Writing-C

  3. #43
    Gfx
    Gfx est déconnecté
    Expert confirmé
    Avatar de Gfx
    Inscrit en
    Mai 2005
    Messages
    1 770
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Mai 2005
    Messages : 1 770
    Par défaut
    Ah mais je suis entierement d'accord, il faut apprendre un langage bas niveau comme le C.

    Pour Python je te conseille vivement le livre Dive Into Python, egalement disponible gratuitement sur le site http://python.developpez.com/cours/DiveIntoPython/. C'est un langage assez simple et son API est calquee sur les API C des systemes Unix/Linux, tu ne devrais donc avoir aucun souci pour apprendre Python en quelques jours.

  4. #44
    Inactif  

    Homme Profil pro
    Ingénieur test de performance
    Inscrit en
    Décembre 2003
    Messages
    1 986
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur test de performance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 986
    Par défaut
    Citation Envoyé par Gnux
    ça doit être pour ça que emacs est écrit en lisp
    Les programmeurs qui utilisaient le Lisp, ils se prenaient tellement la tête avec le parenthésage, qu'un jour ils se sont dit:

    "attends, je vais te créer un éditeur de la mort de la balle qui tue" (emacs), et terminé les oublis de parenthèse...

  5. #45
    Membre averti
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 24
    Par défaut
    slt,
    Pour info, j'ai commencé par des langages disons exotique (Ocaml,scheme,prolog) et je suis arrivé pendant mes etudes d'info sur le C et Java. J'avoue de tous les langages que j'ai fréquenté, ce sont les deux que je préfére, l'un pour sa relation étroite avec unix/linux l'autre parce qu'il est simple d'utilisation. Je continue de programmer dans ces deux langages, et je ne pense pas pour l'instant me réorienter vers d'autres. Les appli? La programmation systemes et autres et pour Java, essentiellement la sécurité. Voila, voila si cela t'aide , tant mieux

    Et surtout n'oublies pas Java bien et C tant mieux



  6. #46
    Futur Membre du Club
    Inscrit en
    Décembre 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 3
    Par défaut
    Dire que le C est dépassé est énorme voire frustrant. Car ca va faire 2 ans que je me suis mis au C (apres le Pascal) et jusqu'auourd'hui ya des facettes que je ne connais pas encore, j'y suis encore. Quand on voit (ou imagine) ce qu'on peut faire evec ce langage je me demande souvent :"a quoi bon apprendre JAVA ou les autres?". C'est vrai que les langages de haut niveau sont plus faciles à utiliser mais pour un developpeur digne de ce nom la facilité ne devrait pas l'attirer

  7. #47
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Citation Envoyé par noums
    a quoi bon apprendre JAVA ou les autres?".
    Ne serait-ce que pour voir un peu autre chose, il ne faut pas se scléroser l'esprit.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  8. #48
    Membre émérite Avatar de HanLee
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2004
    Messages : 738
    Par défaut
    Citation Envoyé par noums
    Dire que le C est dépassé est énorme voire frustrant. Car ca va faire 2 ans que je me suis mis au C (apres le Pascal) et jusqu'auourd'hui ya des facettes que je ne connais pas encore, j'y suis encore. Quand on voit (ou imagine) ce qu'on peut faire evec ce langage je me demande souvent :"a quoi bon apprendre JAVA ou les autres?". C'est vrai que les langages de haut niveau sont plus faciles à utiliser mais pour un developpeur digne de ce nom la facilité ne devrait pas l'attirer
    Le développeur digne de ce nom devrait alors faire de l'ASM parce que c'est plus dur que du C alors.

    Quand tu fais des maths, que tu connais un théorème qui te résoud d'un coup facilement et efficacement une question posée, tu vas redémontrer tout le théorème avant de l'utiliser pour résoudre la question ?

  9. #49
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Citation Envoyé par HanLee
    Quand tu fais des maths, que tu connais un théorème qui te résoud d'un coup facilement et efficacement une question posée, tu vas redémontrer tout le théorème avant de l'utiliser pour résoudre la question ?
    Non mais on comprend mieux ce qui se passe. Utiliser un outil sans en comprendre son fonctionnement peut amener à des catastrophes ou tout au moins à des situations périlleuses.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  10. #50
    Membre émérite Avatar de HanLee
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2004
    Messages : 738
    Par défaut
    Citation Envoyé par Trap D
    Citation Envoyé par HanLee
    Quand tu fais des maths, que tu connais un théorème qui te résoud d'un coup facilement et efficacement une question posée, tu vas redémontrer tout le théorème avant de l'utiliser pour résoudre la question ?
    Non mais on comprend mieux ce qui se passe. Utiliser un outil sans en comprendre son fonctionnement peut amener à des catastrophes ou tout au moins à des situations périlleuses.
    Oui, mais on suppose qu'on connait la démonstration du théorème quand même . (vu que quasi-tous les théorèmes sont démontrés dans le cours, après le niveau Bac).

  11. #51
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Oui, mais on suppose qu'on connait la démonstration du théorème quand même
    Il est là le problème, quand on n'a jamais vu d'architecture ou un langage bas niveau, on ne sait pas exactement ce qui se passe, lorsque l'on programme.

    Le problème n'est pas d'aller au plus bas niveau de la machine (ça ne sert à rien de coder en langage machine). Mais d'aller assez bas pour comprendre ce qui se passe. Le C convient assez bien dans ce cas.

  12. #52
    Membre éprouvé
    Avatar de granquet
    Profil pro
    Étudiant
    Inscrit en
    Octobre 2005
    Messages
    1 201
    Détails du profil
    Informations personnelles :
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 201
    Par défaut
    rassurez moi: vous n'etes pas en train d'insinuer que le C est un langage d'ecole?

  13. #53
    Membre émérite Avatar de HanLee
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2004
    Messages : 738
    Par défaut
    Citation Envoyé par PRomu@ld
    Oui, mais on suppose qu'on connait la démonstration du théorème quand même
    Il est là le problème, quand on n'a jamais vu d'architecture ou un langage bas niveau, on ne sait pas exactement ce qui se passe, lorsque l'on programme.

    Le problème n'est pas d'aller au plus bas niveau de la machine (ça ne sert à rien de coder en langage machine). Mais d'aller assez bas pour comprendre ce qui se passe. Le C convient assez bien dans ce cas.
    Oui bon bref, on ne parle pas du même contexte, vous êtes en train de me faire dire ce que je ne veux pas insinuer.

    Il disait que s'il pouvait faire tout ce qu'il voulait en C, pourquoi passer en Java ou autre, qui apportent des bibliothèques bien fournies, et donc de la facilité pour faire certaines tâches.
    Moi j'voulais en fait dire, par analogie avec les maths, dans ce cas là, avant d'utiliser un théorème, qui convient bien, on va le redémontrer, parce qu'intellectuellement c'est plus logique, bien que ces théorèmes font partie du patrimoine culturel mondial.
    Ce qui revient à réinventer la roue à chaque fois...

    Maintenant après réflexion, je me dis que peut-être il a voulu dire que les fonctionnalités du C lui convenaient très bien, et à quoi peuvent bien servir les autres langages, s'ils proposaient plus de facilité grâce à de fonctionnalités, tout en sachant que la facilité ne devrait pas attirer, ce serait peu vertueux.
    Que fait un programmeur très souvent ? Il définit des fonctions pour des tâches répétitives, qu'il utilise ensuite. Et sans arrêt.
    Oh mais parfois, on aimerait bien modéliser des objets de la vie réelle en des entités précises dans le code, ce serait bien plus simple et plus élégant. Un langage orienté objet est plutôt bienvenu ici , ah mais ce serait sombrer dans la facilité, alors qu'on peut faire pareil juste avec des procédures, et des structures, et une difficulté pour organiser le tout !

    En maths, ya des problèmes en analyse qui peuvent se résoudre de manière analytique exclusivement, mais de manière beaucoup lourde, verbeuse, alors qu'une alternative parfois existe grâce à l'algèbre linéaire et les espaces vectoriels, qui te résoud le problème, mais de manière bluffante ! En 2-3 lignes une propriété est démontrée, et ça c'est beau !

    > Dark_Ebola : Je vois pas le rapport avec l'école.

  14. #54
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    En 2-3 lignes une propriété est démontrée, et ça c'est beau !
    Oui si tu veux, mais dans ce cas, tu utilises des propriétés sur les espaces vectoriels qui ne sont pas des plus simples. Etant donné que tu les connais, tu sais ce qu'il y a dessous. Quelqu'un qui n'a pas un niveau de math post-bac ne sais pas ce qu'est un espace vectoriel, par conséquent, si tu lui montres ta démonstration (certe élégante) il n'y comprendra rien. C'est cette même analogie que nous voulons mettre en avant. Dans des langages haut niveau tu as des bibliothèques très évolués mais tu ne sais pas exactement ce qui se passe parce que tu n'as pas forcément les bases.

    Il disait que s'il pouvait faire tout ce qu'il voulait en C, pourquoi passer en Java ou autre, qui apportent des bibliothèques bien fournies, et donc de la facilité pour faire certaines tâches.
    Tu veux insinuer que le langage C n'a pas de bonnes bibliothèques ?

    Oh mais parfois, on aimerait bien modéliser des objets de la vie réelle en des entités précises dans le code, ce serait bien plus simple et plus élégant. Un langage orienté objet est plutôt bienvenu ici Wink, ah mais ce serait sombrer dans la facilité, alors qu'on peut faire pareil juste avec des procédures, et des structures, et une difficulté pour organiser le tout !

    Par d'accord, c'est une question de réflexion et de façon de penser. Certains sont plus à l'aise avec un langage procédural car c'est leur façon de penser, d'autres s'en sortent mieux avec des langages objets.

    rassurez moi: vous n'etes pas en train d'insinuer que le C est un langage d'ecole?
    En quoi ceci serait dérangeant ? C'est je pense une très bonne idée. En effet, le C impose de la rigueur et c'est très bien. Ceci ne veut pas dire que le C est LE langage de référence pour les écoles. ADA par exemple est un très bon langage pour apprendre (et pas que pour apprendre), il est d'ailleurs très utilisé dans le domaine academique.

  15. #55
    Membre émérite Avatar de HanLee
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    738
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2004
    Messages : 738
    Par défaut
    Je suis d'accord avec ce que tu dis mais je pense que ce n'est pas le problème encore une fois.
    Regarde :

    Citation Envoyé par PRomu@ld
    En 2-3 lignes une propriété est démontrée, et ça c'est beau !
    Oui si tu veux, mais dans ce cas, tu utilises des propriétés sur les espaces vectoriels qui ne sont pas des plus simples. Etant donné que tu les connais, tu sais ce qu'il y a dessous. Quelqu'un qui n'a pas un niveau de math post-bac ne sais pas ce qu'est un espace vectoriel, par conséquent, si tu lui montres ta démonstration (certe élégante) il n'y comprendra rien. C'est cette même analogie que nous voulons mettre en avant. Dans des langages haut niveau tu as des bibliothèques très évolués mais tu ne sais pas exactement ce qui se passe parce que tu n'as pas forcément les bases.
    Là le problème c'est que dans ce qu'il a dit j'ai pas vu une seule allusion au problème de la compréhension des bibliothèques évoluées.

    Il disait que s'il pouvait faire tout ce qu'il voulait en C, pourquoi passer en Java ou autre, qui apportent des bibliothèques bien fournies, et donc de la facilité pour faire certaines tâches.
    Tu veux insinuer que le langage C n'a pas de bonnes bibliothèques ?
    Non, mais en standard elle ne dispose de presque rien, disons qu'il faut aller les chercher. Mais c'est parfois discutable de descendre un langage de manière catégorique pour ses bibliothèques .

    Oh mais parfois, on aimerait bien modéliser des objets de la vie réelle en des entités précises dans le code, ce serait bien plus simple et plus élégant. Un langage orienté objet est plutôt bienvenu ici Wink, ah mais ce serait sombrer dans la facilité, alors qu'on peut faire pareil juste avec des procédures, et des structures, et une difficulté pour organiser le tout !
    Par d'accord, c'est une question de réflexion et de façon de penser. Certains sont plus à l'aise avec un langage procédural car c'est leur façon de penser, d'autres s'en sortent mieux avec des langages objets.
    Oui mais selon le contexte ça dépend, c'était une image quand même ma phrase!
    Mais souvent l'habitude conditionne l'aisance.
    Quand j'ai commencé par le C/C++ pour programmer et qu'ensuite dans l'enseignement on t'apprend le CAML, comment j'étais mal à l'aise (comme beaucoup d'autres). J'voulais mettre des boucles, des effets de bord partout, quand il y avait des alternatives beaucoup plus simples et aussi rapides avec la récursivité... Puis après il nous parle de fonction à prendre comme argument, et retourner une fonction comme valeur de retour.
    Hum mais de quoi il parle le prof ?

    -------

    On dévie parce que je critiquais juste qu'il disait que ça ne servait à rien d'aller voir ailleurs vu que l'herbe est déjà verte ici, sachant que ce serait un vice d'être tenté par la simplicité.

    Voilà, ce débat n'aurait pas du avoir lieu ! C'est à cause de Trap D lol !

  16. #56
    Expert confirmé
    Avatar de PRomu@ld
    Homme Profil pro
    Ingénieur de Recherche
    Inscrit en
    Avril 2005
    Messages
    4 155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur de Recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 4 155
    Par défaut
    Mais souvent l'habitude conditionne l'aisance.
    Quand j'ai commencé par le C/C++ pour programmer et qu'ensuite dans l'enseignement on t'apprend le CAML, comment j'étais mal à l'aise (comme beaucoup d'autres). J'voulais mettre des boucles, des effets de bord partout, quand il y avait des alternatives beaucoup plus simples et aussi rapides avec la récursivité... Puis après il nous parle de fonction à prendre comme argument, et retourner une fonction comme valeur de retour.
    Hum mais de quoi il parle le prof ?
    Oui c'est vrai au début CAML (ou plutôt OCAML dans mon cas), j'avais du mal : toujours vouloir faire en impératif, quand bien même le prof nous disait que c'était plus simple en fonctionnel. Et puis petit à petit, on s'y fait et petit à petit on ne fait que penser comme ça : des fonctions partout, ... . Si bien que quand il a fallut retourner au C, ce fut dur, j'avais toujours des restes d'OCAML ... . Mais l'avantage d'OCAML c'est pour la récursivité, une fois qu'on a fait un peu de fonctionnel, la récursivité ne pose plus de problème.

    D'ailleur, sincèrement OCAML parait très bien comme langage : rapidité (oui oui), bibliothèque disponible (vraiment très large, ça resemble à java), typage fort, possibilité de faire de l'impératif (il y a les boucles de dispo). Je trouve domage qu'il ne soit pas plus enseigné. Le seul soucis, c'est que de temps en temps, il y a des choses qu'on ne comprend pas trop comment elles fonctionnent (quand on ne les a pas vu en algo ou en architecture), et du coup on ne les utilise pas à 100 %.

    Mais en fait, il faut voir plusieurs types de langages. Procédural (impératif), Objet, Fonctionnel, Prolog (je ne sais pas trop comment l'appeller, je dirais langage à prédicat, mais je ne suis pas sur), ...

    Dernièrement j'ai entendu parlé de langage orienté agents et langages orientés aspects. Je n'ai pas eu le temps de regarder en quoi celà consistait. Si quelqu'un a eu le temps de le faire, qu'il nous dise les avantages de tels langages.[/quote]

Discussions similaires

  1. [Nombre]formater le nombre de décimal après une virgule.
    Par PascalCmoa dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 09/03/2007, 10h40
  2. Mauvais résultat aprés une formule de calcul complexe
    Par poufouille dans le forum Bases de données
    Réponses: 3
    Dernier message: 10/12/2004, 00h12
  3. est ce que d'apres une base de données en access,
    Par loveflower dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 26/10/2004, 16h12
  4. Réponses: 6
    Dernier message: 30/08/2004, 15h48
  5. [interbase]Se logger après une première installation
    Par Ultra-FX dans le forum InterBase
    Réponses: 3
    Dernier message: 13/09/2002, 11h44

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