Python ou c++
#1
Posté 30 septembre 2017 - 11:36
J'ai un projet basé sur une rapsberry pi. Je n'exclue pas d'utiliser aussi des arduino dans le futur.
Avant de démarrer la programmation, je souhaiterai savoir si il vaut mieux programmer c++ ou en python. Je me dis que quitte à en apprendre un, autant qu'il soit utilisable sur plusieurs plate forme ^^
#2
Posté 30 septembre 2017 - 12:40
Salut Elharion, difficile de répondre pour toi. Je vais supposer que t'es en phase d'apprentissage.
Il vaut mieux que tu utilise le plus simple pour chaque utilisation. Python c'est très bien simple et puissant mais il n'y a pas que python. Pour le pi, prends le langage qui est aussi utilisé en exemple des composants que tu intègre. A ce propos, il faudrait que nous en dise plus pour d'aider. Ne fais jamais de copier-coller sans comprendre chaque ligne que tu utilise. C'est un moyen simple pour apprendre. Pour arduino, le langage par défaut est des plus simple. Certes basé sur du c++ mais très simplifié.
#3
Posté 30 septembre 2017 - 01:28
Pour arduino, le langage par défaut est des plus simple. Certes basé sur du c++ mais très simplifié.
Sur arduino, le langage n'est pas un langage spécial basé sur du C++, c'est vraiment du C++. Dans l'IDE arduino, il y a un vrai compilateur GCC (AVR-GCC) pour compiler du C ou du C++. On peut utiliser toutes les fonctionnalités de C++ avec arduino.
Sinon pour répondre à la question, j'aurais tendance à conseiller C++ (et C). Python est un langage interprété, alors que C++ est un langage compilé. Cela veut dire que le code C++ est transformé en binaire compris directement par le processeur (quel que soit son type, raspberry, PC, microcontrôleur genre arduino ou nucleo, ...), alors que le code python est lu par un autre programme en direct.
C++ offre donc de meilleures performances, bien que plus compliqué à maîtriser.
De plus, Python à besoin de son interpréteur, qui n'est pas disponible sur toutes les plateformes. Python est destiné aux plateformes avec un système d'exploitation, comme un PC, ou une carte raspberry. Pour d'autres plateformes (arduino, microcontrôleurs, DSP, ...), tu ne pourras pas utiliser python (enfin si, certains le font, mais c'est un peu idiot car l'interpréteur à lui seul remplit la moitié de la mémoire de l'arduino).
Enfin, si tu comptes un jour passer à des choses un peu plus compliquées, comme écrire des pilotes de périphériques, modifier un système d'exploitation, ou d'autres choses bien compliquées mais sympa, tu ne pourras pas le faire en Python.
Après, je ne dénigre pas python, je ne comprends juste pas l'intérêt porté à ce langage dans l'informatique embarquée. Il a plus sa place dans le web (pour remplacer cette bouse qu'est PHP), ou sur des programmes simples pour PC AMHA. Rien ne t'empêche non plus d'apprendre les deux.
#4
Posté 30 septembre 2017 - 01:50
Le but c'est de pas avoir à gérer plusieurs langage sur des projets plus complexe et de partir tout de suite avec la solution la plus adapté ^^
#5
Posté 30 septembre 2017 - 02:33
En plus, j'avais pas lu ton autre sujet (je ne lis pas tout, des fois ça passe un peu trop vite), je viens de le faire et de découvrir que tu avais déjà des notions en C et C++.
#6
Posté 30 septembre 2017 - 03:15
Mais au moins je sais déjà dans quoi je m'engage ! Arrg non pas les pointeurs xD
0 utilisateur(s) li(sen)t ce sujet
0 members, 0 guests, 0 anonymous users