Différence Langages de Script / Programmation
La question est dans le titre, un petit à qui je donne des cours de math s'est récemment intéressé à l'informatique (c'est un foutu génie) et m'a donc demandé la différence entre nos amis Perl, JS et autres PHP en tous genres, et ces vieilles branches que sont C++ et java.
Une idée de comment formuler ça bien sans trop l'embrouiller? Il a 13 ans.
Bon alors déjà t'as les langages balisés, comme l'html ou le xml, qui servent juste à ordonner des données, c'est pas de la programmation.
Ensuite, parmi les langages de programmation, ils font tous au final la même chose, mais pas de la même façon, un peu comme les smartphones ou les voitures. Ils ont la même finalité, les mêmes bases, mais sont pas faits pareils et s'utilisent pas pareil.
Pour commencer, le javascript est spécialisé dans la dynamisation des pages web. Le python est simple et rapide à coder, ce qui le rend flexible et aisé à maintenir, il est donc très bien pour faire des scripts rapidement, ou bien pour le web : c'est un peu une citadine. Le java est un peu plus complexe, mais a l'avantage d'être un peu plus rentable niveau performances : c'est un peu une berline. Le C/C++ c'est des voitures de sport : complexes à maîtriser, mais quand tu sais y faire tu auras difficilement mieux niveau performances. Et on termine avec l'assembleur, c'est l'avion de chasse : bonne chance pour le piloter sans te crasher.
Du coup j'ai une question, tu peux faire quoi avec l'assembleur ? C'est le langage pour les executions de trucs dans une entreprise non ? Genre robot de production ??
Excellent. Je te remercie beaucoup pour le temps que tu as pris. Je vais plus ou moins lui expliquer tel quel.
c'est un langage utilisable que quand tu es certain du processeur que tu vas utiliser, puisqu'il est dépendant de ta plate-forme. Donc oui, robot par exemple, mais aussi dans les drones par exemple, ou tout ce qui est dans un environnement maîtrisé et où t'as besoin d'optimisation maximale.
Super merci c'est tres interessant. Et du coup j'ai une autre question, QNX c'est de l'embarqué ? Si j'ai bien compris c'est l'OS de la nasa pour curiosity et est en temps reel, ce qui signifie quoi en faite ?
jamais entendu parler :3
"temps réel" c'est quand tu as besoin que les algos qui font tourner ton équipement soient précis à la milliseconde près, au bas mot. En d'autres termes, si on exige que, lors d'une prise de photo, Curiosity mette 1 seconde pour la prendre, 0,5sec pour la sauvegarder et 1sec pour lui apporter un post-traitement, on a la garantie que ça prenne bel et bien 2,5 sec au total, ce qui n'est pas le cas sous Windows par exemple. Alors c'est pas là un défaut de Windows, bien au contraire, il est plus flexible. Mais dans certains domaines, on préfère l'efficacité au prix de grandes contraintes contre la flexibilité risquée.
Les langages compilés (CPP, C#, JAVA, etc.), permettent entres autre de vérifier certaines choses (la syntaxe avant l’exécution du programme par ex).
Les scripts sont interprété, à l'inverse, y'a pas de vérification, t'as une erreur dans ton script ça va "péter" lors de l'execution
Edit : y'a d'autre choses à prendre en compte mais c'est déjà suffisant pour une première approche
Pas d'soucis, j't'ai fait la version courte et facile à piger pour pas embrouiller le p'tit, biensûr on peux toujours rajouter des choses.
Je peux te filer un "cours" très sommaire, expliquant les différents types de langages si tu veux, je t'envoie un screen en mp ?
Je ne suis pas expert mais je te conseille de jeter un oeil aux langages fonctionnels !
ce sont des langages de haut niveau (proche de l'homme à l'inverse de l'assembleur et est côté machine) qui te permette de "décrire" un besoin au lieu de "donner des ordres" aux machines comme les langages traditionnels
scala, haskell, ...
Tu ne dois accéder à ce site que si tu as au moins 18 ans ou si tu as l'âge légal pour visionner ce type de matériel dans ta juridiction locale, l’âge le plus élevé étant retenu. En outre, tu déclares et garantis que tu ne permettras aucun mineur à d'accéder à ce site ou à ces services.
En accédant à ce site, tu acceptes nos conditions d'utilisation.