Se connecter

Informatique

Programmation

Sujet : [HELP] Envie d'apprendre la prog avec C++ ou C#
1
SchizoRigolo
Niveau 7
01 décembre 2020 à 23:40:39

Bonjour, je souhaite apprendre la programmation avec C++ ou C# (je sais bien que les deux ont rien à voir, j'ai juste envie de me lancer dans la programmation d'applications directement executables sur l'ordinateur. donc pas de java, python... )

Le C# m'a l'air plus adapté pour un débutant, mais le C++ à l'air plus "libre" comme si on avait plus de possibilité avec.

Je cherche donc un cours de C# pas trop ancien (on m'a dis que les cours de OpenClassrooms étaient désastreux)

Merci :ange:

Marav
Niveau 28
02 décembre 2020 à 05:04:59

Pourquoi t'as laissé tomber le JS ?

Oui ma question n'a rien à voir mais je suis une quiche en ces deux langages, je ne te serai pas beaucoup d'aide, cela dit je t'ai vu vouloir apprendre le JS sur le forum, qu'est ce qui te pousses à aller dans le C# / C++ alors que tu voulais apprendre le développement web ( visiblement, avec la trinité html/css/js ).

Suzuka_Nakamoto
Niveau 10
02 décembre 2020 à 06:18:35

Le C++ a la réputation d'être très complexe à maitriser. Le C# quand à lui est bien plus simple, il est un peu à mi chemin entre le C++ et le Java.

Mais dit moi, pourquoi ne pas faire java ? Tu peux très bien faire des applications PC en java, avec JavaFX notement.

lokilok
Niveau 10
02 décembre 2020 à 08:21:25

Si j'ai bien compris il voudrait pouvoir créer des .exe directement, il veut pas fe .jar / .py qu'il faut exécuter via une VM / un interpréteur qu'il faut installer auparavant.

Sauf que, que ce soit Java ou python, il est possible de générer des .exe qui incluent la VM / l'interpréteur, donc sans que l'utilisateur ai à installer quoi que ce soit de supplémentaire.

Marav
Niveau 28
02 décembre 2020 à 08:24:05

Ma question pour JS avait un sens pourtant il peut très bien faire les applications qu'il veut avec du JavaScript.

Surtout si il a appris ce langage ou mis ses pattes dedans a minima, je dis pas que les autres solutions sont a jeter bien au contraire mais bon C++ c'est pas a la portée de tout le monde par exemple surtout pour un débutant.

Aun_Khey
Niveau 8
02 décembre 2020 à 14:09:36

Que les cours d'OpenClassroom soient désastreux ou non, tu veux te lancer depuis rien, donc ça ne change à peu près rien.

Si c'est pour découvrir, fais aux moins les première sections des cours pour débutants. Si jamais tu trouves que les sections qui suivent ne sont pas bonnes, trouve des projets simples à implémenter (et j'insiste sur "simple") en C++ ou C#, et lance-toi.
Comme tu auras les bases, tu pourras te lancer et écrire le premier jet de ton code. Puis c'est en corrigeant tes erreurs que tu comprendras les subtilités du langage.

Et je comprends l'arrêt du JS, c'est franchement un langage de merde. Faut vraiment être un californien ou un timbré avec une mentalité de startuper pour aimer le JS.

boucif
Niveau 24
02 décembre 2020 à 14:21:15

Hello je suis dev c# depuis 10 ans.
Non c# c’est pas à mis chemin entre Java et c++, c’est simplement un java bis à l’origine, maintenant il diffère pas mal de java dans ses possibilités mais t’as toujours un socle de base très proche.
Ce que je trouve génial avec c# c’est que tu peux tout faire, dev web/bureau/mobile/jeu vidéo, en plus maintenant le net core tourne sur windows/mac/linux, bon tu ne peux pas encore faire d’application bureau qui tourne sur les 3 plateformes à part si tu utilises des solution style avalonia/gtk#, mais c’est prévu par Microsoft pour fin 2021 avec Net Maui une plateforme commune d’apps entre bureau et mobile ...
Tu peux faire du dev front web avec blazor maintenant.

Et oui c# est plus simple que c++ vu que tu te soucis pas de la gestion mémoire et que tu as un paquet d’outils de base qui te simplifie le dev.

Marav
Niveau 28
02 décembre 2020 à 15:07:34

Ca a été dit plein de fois que les cours d'OC sont d'une qualité variable, il y en a des très bons à mon sens, comme d'autres qui sont datés ou incomplets. Tout dépend de l'instructeur. C'est la même chose sur udemy ou autre plateforme de e-learning.
Y a à boire et à manger.
La seule différence c'est que OC essaye de proposer une expérience lissée ( j'ai bien dit essaye ) puisqu'ils proposent des parcours diplômants, donc avec des cours en cohérence avec leurs parcours.
Pour un débutant je vois pas le mal de faire du OC, ça serait bien de debunker cette affaire de " j'ai entendu " - " j'ai vu " alors que les personnes n'ont même pas pu avoir la chance d'en faire leur propre avis.

Et je comprends l'arrêt du JS, c'est franchement un langage de merde. Faut vraiment être un californien ou un timbré avec une mentalité de startuper pour aimer le JS.

Mais encore ? Mis à part faire de l'élitisme, qu'est ce que tu reproches concrètement à JS ? Si il a appris les rudiments de JS, rien ne l'empêche de faire des applications Desktop.

Marav
Niveau 28
02 décembre 2020 à 15:18:00

Je rajouterai que c'est bien plus simple à mon sens de commencer la programmation avec les technos web, donc notamment JS surtout en autodidacte qui est parfait pour débuter, puis monter en "grade" pour passer sur des langages strongly typed pour ne citer que ça ( sans Typescript donc ) ou "plus bas niveau" ( je ne parle pas du niveau ici en terme de skill, mais bien du langage de programmation par rapport à C par exemple ).

Il y a mon sens beaucoup moins de notions nébuleuses à prendre en compte pour un débutant en programmation, et c'est bien plus facile ensuite de faire la transition sur des langages plus typés.
Pour son use-case, c'est à dire faire des applications Desktop, je ne vois aucun soucis de faire du JS :(

boucif
Niveau 24
02 décembre 2020 à 16:30:16

Franchement j'ai toujours trouvé que le JS c'était de la bonne grosse merde aussi (c'est un avis perso).
On l'a contorsionné pour qu'il ressemble à des langages poo modernes en intégrant les notions de classe et autres.
Si tu veux faire du JS à l'ancienne proprement il faut faire de la programmation orienté prototype, chose qui n'est plus vraiment utilisé ailleurs, si tu veux utiliser les dernières versions tu peux faire de la programmation orienté objet mais dans ce cas là pourquoi ne pas faire du java/c#/c++ plutôt.
Pour faire du JS sur desktop ça reste un langage web exécuté sur un moteur chrome V8, je trouve ça bancal ...
Persos je trouve que c'est devenu n'importe quoi ce que JS est devenu.
Après l'intérêt qu'il soit non typé c'est de gagner du temps sur certain code mais ça peut conduire à des erreurs, et ça pose des problèmes d'autocomplétions, dès que je peux j'utilise Typescript au pire t'as toujours le mot clé any.

dechet_s0cial
Niveau 10
02 décembre 2020 à 17:02:47

C# est plus facile a manier que C++
tout dépend de tes objectifs, si c'est juste pour commencer à coder ce que tu veu,x avec C# ça sera plus rapide.
Mais si tu veux une compréhension approfondie de la programmation, je recommande fortement de commencer par le C

SchizoRigolo
Niveau 7
02 décembre 2020 à 17:12:03

Le 02 décembre 2020 à 05:04:59 Marav a écrit :
Pourquoi t'as laissé tomber le JS ?

Oui ma question n'a rien à voir mais je suis une quiche en ces deux langages, je ne te serai pas beaucoup d'aide, cela dit je t'ai vu vouloir apprendre le JS sur le forum, qu'est ce qui te pousses à aller dans le C# / C++ alors que tu voulais apprendre le développement web ( visiblement, avec la trinité html/css/js ).

et bien c'est simplement que le web n'est pas aussi passionnant que je l'imaginais, pas aussi créatif aussi (enfin y'en a qui sortent du lot, mais la majorité n'en font pas partie). Et surtout que je n'en avais pas besoin, je voulais surtout l'apprendre pour faire "comme les grands" qui disent qu'il faut l'apprendre, que c'est indispensable pour commencer la prog... Mais en fait je n'ai pas du tout besoin de JS pour l'instant, donc autant partir sur quelque chose de plus utile.

En fait si j'avais appris HTML/CSS c'était plus pour avoir un site pour mettre en ligne mes projets sans pour autant avoir besoin des services d'un autre dev plus que pour vraiment faire développeur web :oui:

SchizoRigolo
Niveau 7
02 décembre 2020 à 17:14:19

Le 02 décembre 2020 à 06:18:35 Suzuka_Nakamoto a écrit :
Mais dit moi, pourquoi ne pas faire java ? Tu peux très bien faire des applications PC en java, avec JavaFX notement.

Pourquoi pas, mais le fait de devoir faire télécharger JRE au préalable me rebute un peu, et je n'ai pas l'impression que Java ait de réels avantages par rapport au C#.

SchizoRigolo
Niveau 7
02 décembre 2020 à 17:15:57

Le 02 décembre 2020 à 08:21:25 lokilok a écrit :
Si j'ai bien compris il voudrait pouvoir créer des .exe directement, il veut pas fe .jar / .py qu'il faut exécuter via une VM / un interpréteur qu'il faut installer auparavant.

Sauf que, que ce soit Java ou python, il est possible de générer des .exe qui incluent la VM / l'interpréteur, donc sans que l'utilisateur ai à installer quoi que ce soit de supplémentaire.

mais le logiciel reste dans la "boite" de la VM non ?

SchizoRigolo
Niveau 7
02 décembre 2020 à 17:19:09

Le 02 décembre 2020 à 14:21:15 boucif a écrit :
Hello je suis dev c# depuis 10 ans.
Ce que je trouve génial avec c# c’est que tu peux tout faire, dev web/bureau/mobile/jeu vidéo, en plus maintenant le net core tourne sur windows/mac/linux, bon tu ne peux pas encore faire d’application bureau qui tourne sur les 3 plateformes à part si tu utilises des solution style avalonia/gtk#, mais c’est prévu par Microsoft pour fin 2021 avec Net Maui une plateforme commune d’apps entre bureau et mobile ...
Tu peux faire du dev front web avec blazor maintenant.

C'est justement ce qui m'intéresse avec le C#, j'ai vraiment la sensation que c'est très polyvalent.

Marav
Niveau 28
02 décembre 2020 à 17:37:08

Le 02 décembre 2020 à 16:30:16 boucif a écrit :
Franchement j'ai toujours trouvé que le JS c'était de la bonne grosse merde aussi (c'est un avis perso).
On l'a contorsionné pour qu'il ressemble à des langages poo modernes en intégrant les notions de classe et autres.
Si tu veux faire du JS à l'ancienne proprement il faut faire de la programmation orienté prototype, chose qui n'est plus vraiment utilisé ailleurs, si tu veux utiliser les dernières versions tu peux faire de la programmation orienté objet mais dans ce cas là pourquoi ne pas faire du java/c#/c++ plutôt.
Pour faire du JS sur desktop ça reste un langage web exécuté sur un moteur chrome V8, je trouve ça bancal ...
Persos je trouve que c'est devenu n'importe quoi ce que JS est devenu.
Après l'intérêt qu'il soit non typé c'est de gagner du temps sur certain code mais ça peut conduire à des erreurs, et ça pose des problèmes d'autocomplétions, dès que je peux j'utilise Typescript au pire t'as toujours le mot clé any.

Tu parles en tant que dev averti, chose que n'est pas l'auteur, j'essaye de me mettre à sa place.
Pour Electron, on pourra dire ce qu'on veut mais un bon nombre d'applis les plus populaires en Desktop aujourd'hui l'utilisent, je sais pas trop ce qu'il vous faut de plus, après je reconnais que l’intérêt derrière tout ça pour les startups c'était surtout le développement d'une plateforme sans changer de langage, de codebase et d'équipes pour un seul et même produit, un peu comme le cross-plateform mobile par exemple.

C'est peut être du rafistolage pour beaucoup de gens venant d'un autre domaine mais " it works " comme on dit, et pour l'auteur ça peut être une voie à considérer :oui:

et bien c'est simplement que le web n'est pas aussi passionnant que je l'imaginais, pas aussi créatif aussi (enfin y'en a qui sortent du lot, mais la majorité n'en font pas partie).

Créatif dans quel sens ? :noel: Si y a bien un monde qui fait part à la créativité et qui bouge comme un TGV c'est bien le monde du web.
Bon je vais m'arrêter là, tu as l'air convaincu, je voulais quand même être certain que tu avais pu voir les possibilités que JS pouvait t'offrir.

boucif
Niveau 24
02 décembre 2020 à 17:56:41

Le web s'est imposé dans le monde du dev parce que c'est plus simple à déployer et ça marche de "partout", les apps desktop c'est cool mais c'est merdique à déployer et faire marcher de partout, c'est pour ça que l'apps web à supplanter l'apps desktop dans le monde pro.
Mais il y a des domaines ou tu peux pas faire du web, besoin de performance, d'accès particulier à la machine au matériel ...

lokilok
Niveau 10
02 décembre 2020 à 18:47:27

[17:15:57] <SchizoRigolo>

Le 02 décembre 2020 à 08:21:25 lokilok a écrit :
Si j'ai bien compris il voudrait pouvoir créer des .exe directement, il veut pas fe .jar / .py qu'il faut exécuter via une VM / un interpréteur qu'il faut installer auparavant.

Sauf que, que ce soit Java ou python, il est possible de générer des .exe qui incluent la VM / l'interpréteur, donc sans que l'utilisateur ai à installer quoi que ce soit de supplémentaire.

mais le logiciel reste dans la "boite" de la VM non ?

Oui, ça change rien sur la manière dont ton code est exécuté, mais l'utilisateur lui verra pas la différence avec un .exe de C++ par exemple.

Marav
Niveau 28
02 décembre 2020 à 19:06:27

Le 02 décembre 2020 à 17:56:41 boucif a écrit :
Le web s'est imposé dans le monde du dev parce que c'est plus simple à déployer et ça marche de "partout", les apps desktop c'est cool mais c'est merdique à déployer et faire marcher de partout, c'est pour ça que l'apps web à supplanter l'apps desktop dans le monde pro.
Mais il y a des domaines ou tu peux pas faire du web, besoin de performance, d'accès particulier à la machine au matériel ...

Je suis bien d'accord :ok:
Mais même là encore, la définition de app desktop est assez vague, par exemple VS Code, WhatsApp, Discord ou Slack utilisent des technologies web si on veut chipoter, pour autant ce sont des apps desktop qui par le biais d'Electron & Node permettent un accès plus large aux fonctionnalités de la machine du client.

Je ne saurais te dire où est ce que cette frontière s'arrête avec le "vrai natif" cela dit.

lokilok
Niveau 10
02 décembre 2020 à 19:08:15

[15:07:34] <Marav>
Pour un débutant je vois pas le mal de faire du OC, ça serait bien de debunker cette affaire de " j'ai entendu " - " j'ai vu " alors que les personnes n'ont même pas pu avoir la chance d'en faire leur propre avis.

https://m.jeuxvideo.com/forums/1-47-52261-1-0-1-0-le-sdz-ou-l-enfant-terrible.htm

C'est un topic un peu vieux, peut-être plus vraiment à jour par rapport à l'état actuel de OpenClassroom, je voulais juste donner le lien si jamais ça intéresse des gens de le lire.

[15:18:00] <Marav>
Je rajouterai que c'est bien plus simple à mon sens de commencer la programmation avec les technos web, donc notamment JS surtout en autodidacte qui est parfait pour débuter, puis monter en "grade" pour passer sur des langages strongly typed pour ne citer que ça ( sans Typescript donc ) ou "plus bas niveau" ( je ne parle pas du niveau ici en terme de skill, mais bien du langage de programmation par rapport à C par exemple ).

Pourtant en fac / dut / école d'ingénieur on commence jamais par du web nan ? Du moins j'en ai pas entendu parler. Les seules formations que j'ai en tête qui commencent par du web sont celles dont la finalité est d'être développeur web, toutes les formations plus généralistes par contre commencent avec d'autres technos.

1
Sujet : [HELP] Envie d'apprendre la prog avec C++ ou C#
   Retour haut de page
Consulter la version web de cette page