Langage C ou Python [Fermé]

Signaler
Messages postés
23
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
26 août 2010
-
varfendell
Messages postés
3388
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
15 avril 2019
-
Bonjour,

j travaille avec Python et langage C et je souhaiterais faire un choix lequel vous me conseillerez est ce de garder le langage C ou le Python.
merci

4 réponses

Messages postés
3388
Date d'inscription
jeudi 27 décembre 2007
Statut
Membre
Dernière intervention
15 avril 2019
444
Bonjour,

En programmation il n'y a pas de 'je garde tel ou tel langage'.
Chaque langage a ses particularités, ses avantages et ses défauts. Tu choisiras le langage en fonction de l'application que tu souhaite coder et de ton niveau dans ce langage.

Pour info Python:
Python est un langage de programmation interprété multi-paradigme. Il favorise la programmation impérative structurée, et orientée objet. Il est doté d'un typage dynamique fort, d'une gestion automatique de la mémoire par ramasse-miettes et d'un système de gestion d'exceptions ; il est ainsi similaire à Perl, Ruby, Scheme, Smalltalk et Tcl.

Le langage Python est placé sous une licence libre proche de la licence BSD et fonctionne sur la plupart des plates-formes informatiques, des supercalculateurs aux ordinateurs centraux, de Windows à Unix en passant par Linux et MacOS, avec Java ou encore .NET. Il est conçu pour optimiser la productivité des programmeurs en offrant des outils de haut niveau et une syntaxe simple à utiliser. Il est également apprécié par les pédagogues qui y trouvent un langage où la syntaxe, clairement séparée des mécanismes de bas niveau, permet une initiation plus aisée aux concepts de base de la programmation.

CF wikipedia

et langage C
C est qualifié de langage de bas niveau dans le sens où il est conçu pour permettre la manipulation directe des mots machine. Il propose un éventail de types entiers et flottants qui correspondent directement aux types supportés par le processeur. Il fait en outre un usage intensif des adresses mémoires avec la notion de pointeur. Il a une notion de type composé, mais ne propose aucune opération qui traite directement des objets de plus haut niveau (fichier informatique, chaîne de caractères, liste...). Ces types plus évolués doivent être traités en manipulant des pointeurs et des types composés. De même, le langage ne propose pas en standard la gestion de la programmation orientée objet, ni de système de gestion d'exceptions, ni la programmation parallèle. Il existe des fonctions standards pour gérer les entrées-sorties et les chaînes de caractères, mais contrairement à d'autres langages, aucun opérateur spécifique pour améliorer l'ergonomie. Ceci rend aisé le remplacement des fonctions standards par des fonctions spécifiquement conçues pour un programme donné.

Le langage C a été utilisé pour rendre le système d'exploitation UNIX plus portable. Il a conservé de cela une très grande efficacité pour tout ce qui concerne le développement système. Ainsi la majorité des grands systèmes d'exploitation entre les années 1975 et 1993 ont été développés en C.

Ces caractéristiques en font un langage privilégié quand on cherche à maîtriser les ressources utilisées, le langage machine généré par les compilateurs étant relativement prévisible et parfois même optimal sur les machines d'architecture RISC à grand nombre de registres. Ce langage est donc extrêmement utilisé dans des domaines comme la programmation embarquée sur microcontrôleurs, les calculs intensifs, l'écriture de systèmes d'exploitation et tous les modules où la rapidité de traitement est importante. Il constitue une bonne alternative au langage d'assemblage dans ces domaines, avec les avantages d'une syntaxe plus expressive et de la portabilité du code source.

En contrepartie, la mise au point de programmes en C, surtout s'ils utilisent des structures de données complexes, est plus difficile qu'avec des langages de plus haut niveau. En effet, dans un souci de performance, le langage C impose à l'utilisateur de programmer certains traitements (libération de la mémoire, vérification de la validité des index sur les tableaux...) qui sont pris en charge automatiquement dans les langages de haut niveau.

C étant un langage simple, son compilateur l'est également. Cela se ressent au niveau du temps de développement d'un compilateur C pour une nouvelle architecture de processeur : Kernighan et Ritchie estimaient qu'il pouvait être développé en deux mois car « on s'apercevra que les 80 % du code d'un nouveau compilateur sont identiques à ceux des codes des autres compilateurs existant déjà. ».

Beaucoup de limitations du langage C ont été levées dans d'autres langages de programmation qui ont adopté une syntaxe inspirée de celle de C ; outre C++ qui est à l'origine une extension de C enrichi de la notion d'objet, on peut citer Java, JavaScript, PHP et C#.

CF wikipedia

Après en général apprendre la programmation ne consiste pas a apprendre les différent type de langage, mais surtout à apprendre l'algorithme: ce qui fait ton programme, c'est l'algorithme. Ton programme en lui même est un algorithme. Quelque soit le langage que tu utilisera, cela reviendra au même.
Il y a une infinité de manière de faire un même algorithme, donc a toi de trouver la plus approprié et la plus efficace et de la retranscrire dans le langage de ton choix.

La bretagne...le plus bel endroit au monde.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 73468 internautes nous ont dit merci ce mois-ci

Messages postés
445
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
Dernière intervention
29 janvier 2011
34
Ne fais pas de choix, conserve les deux ! C'est toujours utile.
Cependant si tu tiens vraiment au choix il faudrait déjà savoir ce que tu va en faire de ces languages...
Le C s'applique à plus de chose et est rapide, cependant le Python est plus facile...

Enfin, dis nous d'abord ce que tu va en faire. Ensuite on va te répondre. ;)
Messages postés
23
Date d'inscription
jeudi 22 avril 2010
Statut
Membre
Dernière intervention
26 août 2010

merci pour ta réponse rapide au fait c'est des programmes simples qui intègrent des requêtes SQL.
marksman53
Messages postés
445
Date d'inscription
mercredi 31 mars 2010
Statut
Membre
Dernière intervention
29 janvier 2011
34
Alors garde le C. ;)
Messages postés
5
Date d'inscription
jeudi 26 août 2010
Statut
Membre
Dernière intervention
27 août 2010

Une telle question n'a pas de réponse. Il n'y a pas un langage meilleur que l'autre, tout dépend de ce que l'on veux faire, du contexte.
Le C est compilé, Python est interprété cela impose des contraintes différentes et ce n'est qu'un des différence.

en résumé il n'y a pas de réponse à ta question telle qu'elle est posée.