Aller au contenu


Photo
- - - - -

Python ou c++


  • Veuillez vous connecter pour répondre
5 réponses à ce sujet

#1 Elharion

Elharion

    Membre

  • Membres
  • 66 messages

Posté 30 septembre 2017 - 11:36

Bonjour,

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 Path

Path

    Made By Humans

  • Modérateur
  • PipPipPipPipPip
  • 2 504 messages
  • Gender:Male
  • Location:Paris

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 maximusk

maximusk

    Membre passionné

  • Membres
  • PipPipPip
  • 304 messages
  • Gender:Male
  • Location:Le Mans

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 Elharion

Elharion

    Membre

  • Membres
  • 66 messages

Posté 30 septembre 2017 - 01:50

Merci pour les réponses c'est super clair et ce sera donc c++
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 maximusk

maximusk

    Membre passionné

  • Membres
  • PipPipPip
  • 304 messages
  • Gender:Male
  • Location:Le Mans

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 Elharion

Elharion

    Membre

  • Membres
  • 66 messages

Posté 30 septembre 2017 - 03:15

Les notions sont lointaines donc je vais surement repartir de zero ^^
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