CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Du mal à comprendre comment la programmation fonctionne

JohnnyGolden
JohnnyGolden
Niveau 48
31 octobre 2021 à 12:35:36

Je veux dire, comment avec des "if" et des print() et des calculs à la con, on peut programmer des robots, programmer des sites, hacker des pc, je veux dire ça me frustre parce que je connais les base, mais à part jouer avec les logs je sais rien faire :(

J'ai vraiment du mal à comprendre comment coder sur mon pycharm peut s'étendre un autre logiciel et ça me démotive de ouf :(

cybevil
cybevil
Niveau 27
31 octobre 2021 à 13:23:01

La meilleure façon de le comprendre c’est d’essayer.

Pour le hacking c’est plus complexe que juste savoir programmer donc je m’étendrai pas là dessus, puis ça dépend de ce que tu veux hacker c’est très large selon le cas avec des compétences nécessaires complètement différentes.

Pour la robotique j’en ai jamais fait mais j’imagine que pour les plus simple tu as juste une library à ta disposition pour interagir avec le robot.

Pour les sites tu dois toucher à des langages web, python tu peux l’utiliser comme langage serveur mais ça te dispense pas du traditionnel html,css,js pour le front.

Message édité le 31 octobre 2021 à 13:25:03 par cybevil
godrik
godrik
Niveau 30
31 octobre 2021 à 16:00:38

Regarde par exemple comment creer un site web avec flask:
https://flask.palletsprojects.com/en/2.0.x/quickstart/

C'est relativement trivial de faire des choses simples.

Et ca peut te donner une idee de comment le reste peut fonctionner.

Pseudo supprimé
Pseudo supprimé 31 octobre 2021 à 16:34:29

Il te manque probablement tout l'aspect système et réseau dans ta compréhension de la programmation.

En pratique quand tu veux faire un programme qui est pas juste un algorithme mais qui utilise effectivement les périphériques de ton PC (stockage, réseau, écran, clavier, ...) tu vas avoir besoin d'un certain nombre d'API fournies (à bas niveau) soit par le kernel soit par une application / serveur (par exemple xorg). Souvent tu vas utiliser des bibliothèques qui wrap ces API de sorte à supporter plusieurs configurations (différents OS, différents serveurs graphiques, etc.), par exemple pour des applications graphiques SDL, SFML, QT, GTK, ...

Le_Tryall
Le_Tryall
Niveau 8
31 octobre 2021 à 18:43:48

Les robots, les moteurs de jeux, les systèmes informatiques en général te donnent accès à des kits de développements (SDK) ou des interfaces de programmations (API)

Les bases de programmations sont utiles pour que tu puisses créer la partie de la logique de ton programme (if, else, for, foreach...) et ensuite tu peux utiliser les SDK ou les API pour recevoir des informations et donner des instructions.

Par exemple Windows te donne accès à des kits de développements pour que tu puisses créer des programmes qui fonctionnent avec Windows.

Quand tu fais un jeu vidéo, tu vas utiliser d'autres kits de développements pour parler aux moteurs de jeux (unity, unreal) qui eux même utilisent des kits pour parler aux cartes graphiques, aux processeurs et au système de fichier de ton PC.

Quand tu veux faire un robot, tu utilises généralement des microprocesseurs (Arduino) pour envoyer des signaux électriques à tes moteurs pour le faire bouger. Mais aussi pour recevoir des données, comme pour des caméras ou des sonars.

Te ton côté, lorsque tu fais "Print()". tu communique à l'API de ton langage de programmation pour communiquer avec la console.

infireman
infireman
Niveau 9
31 octobre 2021 à 21:17:52

Il n'y a aucune différence entre faire un programme qui écrit bonjour dans la console et faire un site web, faire bouger un bras robotique, afficher un cercle qui rebondit sur les bords de l'écran, etc. La seule différence est qu'on a accès à des outils plus évolués. Par exemple, au lieu de faire print("o"), on fait drawCircle(), la logique dans le code reste la même, mais les résultats sont plus impressionnants car on a accès à l'écran, à un bras robotique, ou autre, mais fondamentalement ça reste la même chose la programmation, c'est manipuler de la mémoire.
Après si ce que tu veux faire c'est calculer la position des liaisons robotiques à chaque instant de manière à ce que le robot marche comme un humain, c'est très compliqué et il va falloir faire des maths, mais le côté programmation reste simple, il s'agit juste d'envoyer aux moteurs l'information de se déplacer, comme quand on tourne un volant pour aller à droite ou à gauche

Message édité le 31 octobre 2021 à 21:21:11 par infireman
Azerban
Azerban
Niveau 16
31 octobre 2021 à 21:21:41

Le 31 octobre 2021 à 21:17:52 :
Il n'y a aucune différence entre faire un programme qui écrit bonjour dans la console et faire un site web, faire bouger un bras robotique, afficher un cercle qui rebondit sur les bords de l'écran, etc. La seule différence est qu'on a accès à des outils plus évolués. Par exemple, au lieu de faire print("o"), on fait drawCircle(), la logique dans le code reste la même, mais les résultats sont plus impressionnants car on a accès à l'écran, à un bras robotique, ou autre, mais fondamentalement ça reste la même chose la programmation, c'est manipuler de la mémoire

Absolument d'accord, aucune différence.

C'est comme marcher pour aller au bus et courir un marathon. Dans les deux cas tu déplaces ta jambe droite, puis ta jambe gauche, puis ta jambe droite... Fondamentalement ça reste la même chose, bouger ses jambes.

Pseudo supprimé
Pseudo supprimé 31 octobre 2021 à 22:59:02

Le 31 octobre 2021 à 21:21:41 :

Le 31 octobre 2021 à 21:17:52 :
Il n'y a aucune différence entre faire un programme qui écrit bonjour dans la console et faire un site web, faire bouger un bras robotique, afficher un cercle qui rebondit sur les bords de l'écran, etc. La seule différence est qu'on a accès à des outils plus évolués. Par exemple, au lieu de faire print("o"), on fait drawCircle(), la logique dans le code reste la même, mais les résultats sont plus impressionnants car on a accès à l'écran, à un bras robotique, ou autre, mais fondamentalement ça reste la même chose la programmation, c'est manipuler de la mémoire

Absolument d'accord, aucune différence.

C'est comme marcher pour aller au bus et courir un marathon. Dans les deux cas tu déplaces ta jambe droite, puis ta jambe gauche, puis ta jambe droite... Fondamentalement ça reste la même chose, bouger ses jambes.

:sarcastic:

DengJu
DengJu
Niveau 6
01 novembre 2021 à 04:11:08

Le 31 octobre 2021 à 12:35:36 JohnnyGolden a écrit :
à part jouer avec les logs je sais rien faire :(

Tu découvres que la programmation logicielle n'est rien sans des connaissances métier : maths, physique, finance, JV ...

Par exemple si tu savais modéliser une fusée, tu pourrais simuler sa trajectoire selon différents paramètres

aAardvark
aAardvark
Niveau 75
02 novembre 2021 à 03:16:55

Sinon, fait un bête jeu en 2D (Snake, démineur, sokoban...)

Tu verras comment à partir de bases assez simples (quelques tableaux et variables qui vont suivre des procédures précise en fonction des interactions du joueur) tu peux rajouter une abstraction supplémentaire (le visuel) pour que le joueur n'ait devant lui que le simple rendu visuel du jeu

Et l'informatique c'est comme ça que ça marche : l'interface graphique n'est là que pour enregistrer les interactions de l'utilisateur et lui permettrent de visualiser l'ensemble des données, sinon tu un ensemble de programmes très bien structurés qui à partir d'opérations élémentaires vont faire des fonctions basiques, puis des applications, etc

On construit bloc par bloc des fonctions, on ordonnance tout ça (programmation parallèle, ordonnanceur du système d'exploitation / architecture système) et ça donne un système ergonomique capable de proposer des opérations complexes

Sous forums
  • Aide à l'achat Mac
  • Steam Deck
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Macintosh
  • Hardware
La vidéo du moment