C vs. Python ?

[Résolu/Fermé]
Signaler
-
Messages postés
7716
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
-
Bonjour, j'ai actuellement quelques connaissances en langage C (rien de bien méchant, je me limite pour l'instant à la console) et on m'as dit que le Python était une sorte de C nouvelle génération, j'aimerais donc savoir si cela vaut le coup de continuer à apprendre le C ou si il serait plus tactique de me lancer directement dans la Python ?
Merci d'avance =)

5 réponses

Messages postés
7716
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 095
perso, j'ai jamais appris le C ^^

le python est plus simple que le C et je crois que tu peux faire autant de choses avec ;)

aprés c'est à toi de voir :)
Messages postés
14
Date d'inscription
mercredi 14 juillet 2010
Statut
Membre
Dernière intervention
10 mai 2011
4
Le python est beaucoup plus simple que le C à apprendre donc, pour débuter la programmation, c'est l'idéal. Inconvénient c'est qu'il n'est pas très puissant par rapport au C (comparez le basic Casio et le MLC).
Merci à tous pour ces réponses rapides et précises =) Sujet résolu!
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 786
Bonjour,

Ces deux langages n'ont pas grand chose à voir.
L'un est compilé, l'autre interprété.
L'un permet de faire des programmes très rapides, l'autre permet l'écriture très rapide de programme.

Donc, tout dépend de ce que t'attends d'un langage.
Néanmoins, dans la plupart des cas, notamment lorsqu'on ne fait pas des programmes "sophistiqué", le python est conseillé.

Cdlt,
Moi, je te conseil le C! D'abord, c'est rapide. Et puis, il y a plein de chose que tu ne peux faire que par le C/C++ (ou un langage du même calibre..) comme par exemple un truc de messagerie instantanée en réseaux ou par internet, compression, cryptage, un Jeux, lire et écrire en binaire, un pseudo-navigateur, et même un site web(hé oui! c'est possible =) avec des CGIs en C)..
Bcp de bibliothèques du python sont faites avec du C!!! d'ailleurs, tu peut créer des DLL avec du C/C++ que tu peux utiliser avec n'importe quel autre langage(comme le python et VB) ou programme.

;)
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 786
mais moi je préfère ne pas avoir de limites en codant à coder avec ce que les autres nous proposent.
Beh dans ce cas apprends à coder en assembleur, car le C ne permet pas de tout faire. Tu auras bien du mal à créer un bootstrap en C pur ;-))).

Ces bibliothèques sont programmées avec quoi? du php?!? du java?!?... sincèrement !
Dis-moi c'est quoi l'intérêt de reprogrammer des fonctions alors qu'on a la bibliothèque qui existe. Que ta bibliothèque soit faite en assembleur, en C, en python, en delphi et j'en passe, tu en as que faire. Le principal c'est de pouvoir l'utiliser. On peut d'ailleurs y voir un parallèle avec le paradigme objet.

Sincèrement, maitriser le C demande beaucoup de temps, beaucoup de lecture. Et même dans les livres du commerce, on voit des bêtises, c'est dire que le C est beaucoup plus compliqué qu'il n'y paraît. D'ailleurs, il n'y a qu'à voir les vulnérabilités dont souffrent les programmes développées en C.

Commencer à developper en python a plusieurs avantages. Déjà, on n'a besoin que de se concentrer sur l'algorithme et non sur une syntaxe rebutante. Une fois qu'on commence à maitriser le python, on peut dire qu'on a un certain niveau en programmation et là, on peut passer en C et se confronter à une syntaxe ô combien plus compliquée, sans compter la magie des pointeurs qui fait peur à beaucoup de débutant.

Bref chacun sa philosophie, mais perso, si je débutais, je préférerais commencer par un langage simple où on peut faire des choses performantes que commencer par le C ;-).

Cdlt,
non pas aller à tout reprogrammer.. ce n'est pas le but! Mais en apprenant le C, on a bcp plus d'opportunité,c'est à dire, quand on se bloque dans un autre langage et qu'on a besoin de module(pour le php par exemple) qu'on ne trouve pas ou que c'est payant, mieux vaut exploiter ses connaissances en C pour régler le problème. en tt cas c'est ce que je fait! Je ne suis pas contre les autres langages de programmations, mais je crois que le C doit être appris en premier lieu(quoique j'ai commencer avec du php.. :p)

pour la vulnérabilité des programmes en C.. tu parle des scanf/printf et des dépassements de mémoire ou d'autre choses?
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 786
Bon chacun sa pédagogie après tout.
Mais quand tu dis "quand on a besoin d'un module qui n'existe pas ou qui est payant", c'est qu'on a atteint un certain niveau et là, effectivement le C est très intéressant. Néanmoins, quand tu débutes, je doute que tu puisses être dans ce cas.

Pour la vulnérabilité des programmes C, il s'agit en effet des buffer overflows que ce soit en heap ou en stack. Il y a aussi les formats string, et j'en passe. C'est un langage hyper rigoureux où il faut tout contrôler (valeur de retour), respecter les normes (sous risque de undefined behaviour), etc.
Messages postés
7716
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
21 mai 2016
1 095
franchement, en python, le seul problème qu'il m'ai été donné d'avoir, c'est la connexion au port serie... là, oui... j'ai eu besoin d'une bibliothèque supplémentaire... mais pour ce que font la pluspart des programmeurs "simples", c'est suffisants...