Comment apprendre le C++

MrPeanutbutter
2021-02-22 18:32:32

Le 22 février 2021 à 18:31:27 MrRiemann a écrit :

Le 22 février 2021 à 18:30:01 aAardvark a écrit :
Le C++ est un langage très riche

Je sais pas si faire abstraction de la POO au début est une bonne idée (par exemple en commençant plutôt par le C), mais c'est sans doute un moyen pour déjà bien acquérir les bases

Après tout dépend, tu avais déjà de bonne bases en programmation avec un langage avant ? Car ça change tout, et si c'est le cas apprendre le C++ n'a rien d'insurmontable.

Sinon effectivement ça peut en rebuter certain de commencer par un langage avec trop de concept à apprendre et à ne travailler qu'en surface

À l'été du c++ moderne apprendre le c avant le c++ est une extrêmement mauvaise idée

qu'est-ce qu'il apporte le C++ moderne ?

doggotothemoon
2021-02-22 18:32:55

Le 22 février 2021 à 18:31:52 Aigrevin a écrit :

Le 22 février 2021 à 18:29:41 TheRamech a écrit :

Le 22 février 2021 à 18:28:26 MrRiemann a écrit :

Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :

Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.

C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

On oublie un free après un malloc et on se sent PROGRAMMEUR :)

Les pointeurs intelligents :coeur:

This. Aujourd'hui, on n'utilise plus delete ou new en C++. On a juste des références et des pointeurs intelligents. Le langage évolue les kheyous :)

c'est faux ce que tu dis justement j'en suis aux fameux new et delete sur le cours d'openclassroomhttps://image.noelshack.com/fichiers/2016/50/1481994659-mathematicienrisitas.png

Knuckles00001
2021-02-22 18:33:06

Qui est un ghostfag et comprend ce qu'ils disent ?

GTA_NFS
2021-02-22 18:33:27

Le 22 février 2021 à 18:30:51 Aigrevin a écrit :

Le 22 février 2021 à 18:28:49 GTA_NFS a écrit :
Si tu veux apprendre la POO commences par le C# ou le JAVA

Avec le C++ tu vas galerer si tu n'as pas des solides connaissances sur la programmation, surtout pour la gestion de la mémoire et des références

Tain mais c'est pas compliqué une référence ou un pointeur, je ne comprendrai jamais ce el famoso palier de difficulté :rire:

Pour un programme de 100 lignes oui c'est facile à implementer, mais dans un projet de plusieurs dizaines de packages et de fichiers les pointeurs et l'allocation dynamique ne sont pas faciles à gérer, c'est pas pour rien qu'on a inventé le garbage collector :)

doggotothemoon
2021-02-22 18:34:37

à vous lire les kheyax vous êtes vraiment des pro dans le game du c++

bordel si j'étais vous j'aurais déjà repris un serveur privé WoW et je l'aurais rescripter correctement juste pour avoir ma petite communautéhttps://image.noelshack.com/fichiers/2019/20/7/1558265229-orcrisitas.png

aigrevin
2021-02-22 18:34:52

Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :

Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.

C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

Clairement non. Le C c'est très "bare-metal", le C++ rajoute un degré d'abstraction incroyable dans ces dernières versions. C'est vraiment devenu un langage moins verbeux qu'avant, plus épuré et encore plus puissant. On ne se sentira jamais aussi libre en C++ que dans un autre langage :ok:

DarkPoloGang
2021-02-22 18:35:42

Le POO ahihttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.pngTu vas t'amuser

Temporaire51
2021-02-22 18:39:25

L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...

Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.

TheRamech
2021-02-22 18:49:35

Le 22 février 2021 à 18:39:25 Temporaire51 a écrit :
L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...

Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.

Ne pas utiliser la bibliothèque standard :rire:

Bien ton gloubi boulga C/C++

evillz
2021-02-22 19:00:29

Le 22 février 2021 à 18:34:52 Aigrevin a écrit :

Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :

Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.

C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

Clairement non. Le C c'est très "bare-metal", le C++ rajoute un degré d'abstraction incroyable dans ces dernières versions. C'est vraiment devenu un langage moins verbeux qu'avant, plus épuré et encore plus puissant. On ne se sentira jamais aussi libre en C++ que dans un autre langage :ok:

Moins verbeux et épuré , sérieux ? J'ai du loupé des fonctionnalités parce que de tout les langages que j'ai utilisé c'est probablement le pire à ce niveau la. Rien que les headers c'est tellement un truc du passé. :rire:

MrRiemann
2021-02-22 19:03:54

Le 22 février 2021 à 18:32:32 MrPeanutbutter a écrit :

Le 22 février 2021 à 18:31:27 MrRiemann a écrit :

Le 22 février 2021 à 18:30:01 aAardvark a écrit :
Le C++ est un langage très riche

Je sais pas si faire abstraction de la POO au début est une bonne idée (par exemple en commençant plutôt par le C), mais c'est sans doute un moyen pour déjà bien acquérir les bases

Après tout dépend, tu avais déjà de bonne bases en programmation avec un langage avant ? Car ça change tout, et si c'est le cas apprendre le C++ n'a rien d'insurmontable.

Sinon effectivement ça peut en rebuter certain de commencer par un langage avec trop de concept à apprendre et à ne travailler qu'en surface

À l'été du c++ moderne apprendre le c avant le c++ est une extrêmement mauvaise idée

qu'est-ce qu'il apporte le C++ moderne ?

Des milliards de trucs en + , mais en gros si tu codes bien tu auras 0 fuites de mémoire , et ce grâce au RAII
Tu n'aura plus besoin de jouer avec les pointeurs ou les malloc
La memoire sera allouée et supprimé automatiquement

Si tu veux une analogie apprendre le C++98 c'est comme si tu apprenais le latin au lieu du francais pour parler couramment dans la rue

MrRiemann
2021-02-22 19:05:01

On apprend le c++ en tant que premier langage et on se sent efficace

Temporaire51
2021-02-22 19:32:11

Le 22 février 2021 à 18:49:35 TheRamech a écrit :

Le 22 février 2021 à 18:39:25 Temporaire51 a écrit :
L'auteur, je te conseille de pas chercher à utiliser toutes les features du language.
Pour faire ton programme, toutes les features du C++ sont optionnelles. c-à-d qu'elles apportent de la qualité de vie pour l'écriture de ton code mais tu peux faire sans.
Bref, je te conseille de te limiter en terme de features du language.
Par exemple, tu te dit que tu n'utilises que les templates et pour le reste tu gères comme en C.
Puis tu rajoute les destructeurs, la programmation objet, ect...

Moi par exemple, j'utilise uniquement les templates pour limiter la duplication de code. Et je code comme du C sans utiliser la libraire "std" ni la programmation objet.
Bref, c'est à toi de placer le curseur en fonction de ton aisance je dirais.

Ne pas utiliser la bibliothèque standard :rire:

Bien ton gloubi boulga C/C++

Il n'y a aucune obligation de l'utiliser :ok:
Et les conteneurs std sont implémentés en C++ hein. Les templates, l'allocation de mémoire, toussa :ok:

Jency12
2021-02-26 17:25:55

Le 22 février 2021 à 18:32:55 doggotothemoon a écrit :

Le 22 février 2021 à 18:31:52 Aigrevin a écrit :

Le 22 février 2021 à 18:29:41 TheRamech a écrit :

Le 22 février 2021 à 18:28:26 MrRiemann a écrit :

Le 22 février 2021 à 18:27:50 Aun_Khey a écrit :

Le 22 février 2021 à 18:27:00 Aigrevin a écrit :
Le C++ supporte plus que le paradigme OO déjà, ce n'est pas ce qui définit le langage. C'est un langage complexe et infiniment subtil, surtout dans les dernières versions. Je te conseille la série CPP Weekly de Jason Turner sur YouTube, ainsi que ces conférences. J'ai beaucoup plus appris par le biais des conférences (CppCon notamment) que de mes cours. Aujourd'hui on t'apprend le C++ comme du C, et c'est très grandement dommage.

C > C++, nonobstanthttps://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

On oublie un free après un malloc et on se sent PROGRAMMEUR :)

Les pointeurs intelligents :coeur:

This. Aujourd'hui, on n'utilise plus delete ou new en C++. On a juste des références et des pointeurs intelligents. Le langage évolue les kheyous :)

c'est faux ce que tu dis justement j'en suis aux fameux new et delete sur le cours d'openclassroomhttps://image.noelshack.com/fichiers/2016/50/1481994659-mathematicienrisitas.png

Justement, ça ne s'utilise plus en entreprise maintenant qu'il y a les pointeurs intelligents std::shared_ptr et std::unique_ptr qui font newet deleteproprement.

Le C++ ne s'apprend pas en 1 mois.
En plus d'apprendre à écrire du C++ (classes, templates, STL, lambda, design patterns ...), il faut apprendre à l'écrire proprement et résoudre les problèmes obscurs que tu vas rencontrer à la compilation et à l'exécution.

J'ai vu le code d'un collègue débutant en C++, je vais lui faire quasiment tout réécrire proprement avant de valider son travail.

Ce genre de truc :


void fonction(Classe** t)
{
(*t)->nom = "Nom";
}

C'est inacceptable quand c'est ton métier.

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.