Combien de temps pour apprendre le C# ?

OP
GM

Gentil_Monstre2

il y a 7 mois

Juste pour comprendre ce qu'on fait et arriver à s'amuser un peu dans Unity.
Là j'ai suivi un tuto, j'ai recopié le script de la vidéo mais j'ai quasi rien compris

OP
GM

Gentil_Monstre2

il y a 7 mois

Allez répondez

NA

Naloooooh

il y a 7 mois

1 semaine c'est un langage de tapette

OP
GM

Gentil_Monstre2

il y a 7 mois


1 semaine c'est un langage de tapette

Ah ouais ? même quand on a aucune notion ?

CE

Celestinoux

il y a 7 mois

1mois max si tu as un QI > 80 https://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

OP
GM

Gentil_Monstre2

il y a 7 mois


1mois max si tu as un QI > 80 https://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

Ah trop bien
J'ai pas un QI > 80 mais je fais ça en mode détente

OP
GM

Gentil_Monstre2

il y a 7 mois

J'ai trouvé cette playlist
https://www.youtube.com/watch?v=uHUkndqnHAg&list=PLrSOXFDHBtfGBHAMEg9Om9nF_7R7h5mO7

Vous connaissez/recommandez ?

TW

ThomasWCP

il y a 7 mois

Ça dépend de ton niveau

Tu as les bases d'algorithme ? De programmation orienté objet ? etc.

Avant d'apprendre un langage il faut les bases universelles à tout langage

Après ça tu apprends vite un langage, mais ça prend plus de temps d'apprendre les astuces propres à chaque langage

OP
GM

Gentil_Monstre2

il y a 7 mois


Ça dépend de ton niveau

Tu as les bases d'algorithme ? De programmation orienté objet ? etc.

Avant d'apprendre un langage il faut les bases universelles à tout langage

Après ça tu apprends vite un langage, mais ça prend plus de temps d'apprendre les astuces propres à chaque langage

Absolument 0 notion

TW

ThomasWCP

il y a 7 mois

Absolument 0 notion

Oula

C'est comme si tu apprenais un instrument de musique sans n'avoir jamais fait de musique et sans faire de solfège

Il faut apprendre les bases, donc de la théorie, avant de coder en C#.

Aussi, il te faut commencer par un langage de bas niveau, c'est mieux
Je te conseille d'apprendre le C au début

OP
GM

Gentil_Monstre2

il y a 7 mois

Oula

C'est comme si tu apprenais un instrument de musique sans n'avoir jamais fait de musique et sans faire de solfège

Il faut apprendre les bases, donc de la théorie, avant de coder en C#.

Aussi, il te faut commencer par un langage de bas niveau, c'est mieux
Je te conseille d'apprendre le C au début

Ah mais j'ai plein de notions en musique j'ai un bon niveau ! Donc je ne pars pas de 0
Le but c'est simplement de comprendre les trucs de base pour me débrouiller sur Unity, c'est pas plus rapide de commencer par C# directos plutôt que C ?

CE

Celestinoux

il y a 7 mois

Gentil_Monstre2

il y a 7 mois

Ah mais j'ai plein de notions en musique j'ai un bon niveau ! Donc je ne pars pas de 0
Le but c'est simplement de comprendre les trucs de base pour me débrouiller sur Unity, c'est pas plus rapide de commencer par C# directos plutôt que C ?

Go Unreal Engine et tu taf avec les blocs et pas le C#

OP
GM

Gentil_Monstre2

il y a 7 mois

Go Unreal Engine et tu taf avec les blocs et pas le C#

Les blocs c'est comme sur GameMaker, des trucs pour les descos de la programmation ?

B5

bloblomv51

il y a 7 mois


1 semaine c'est un langage de tapette

Qu'est-ce que t'entends par "apprendre" ?

Aucun langage ne s'apprend réellement en 1 semaine.

Tu vas connaître les bases de la syntaxe et c'est tout. Le standard C99 n'a que 32 mots de syntaxe, pourtant personne n'apprend le C en une semaine ou même un mois.

Pas sûr qu'à la fin tu saches ce qu'est un yield return/yield break, les fonctions déléguées, utiliser le LINQ correctement sans éclater tes perf, ce qu'est un span, faire de la prog asynchrone, faire des fonctions lambda, des méthodes d'extension, des classes partielles et j'en passe.

Si tu veux aller plus loin en faisant de la gestion de pointeur manuelle, utiliser des références et du multithreading c'est tout un autre sujet.

TW

ThomasWCP

il y a 7 mois

Oui c'est du no code

Au moins avec les blocs c'est rapide

Sinon je n'ai jamais vu quelqu'un ayant commencé la programmation avec C#

Généralement c'est le C (ou l'Assembleur pour les plus courageux ), le Pascal.
Ou pour ceux qui ne font que du dev web, généralement ils ne se font pas chier et apprennent directement JavaScript et PHP

Mais c'est mal
Il faut commencer par un langage de bas niveau

B5

bloblomv51

il y a 7 mois

Ah mais j'ai plein de notions en musique j'ai un bon niveau ! Donc je ne pars pas de 0
Le but c'est simplement de comprendre les trucs de base pour me débrouiller sur Unity, c'est pas plus rapide de commencer par C# directos plutôt que C ?

T'as d'autres moteurs de jeu plus interactifs sinon. D'ailleurs apprendre unity depuis le dernier scandale c'est pas le meilleur plan

TW

ThomasWCP

il y a 7 mois

Qu'est-ce que t'entends par "apprendre" ?

Aucun langage ne s'apprend réellement en 1 semaine.

Tu vas connaître les bases de la syntaxe et c'est tout. Le standard C99 n'a que 32 mots de syntaxe, pourtant personne n'apprend le C en une semaine ou même un mois.

Pas sûr qu'à la fin tu saches ce qu'est un yield return/yield break, les fonctions déléguées, utiliser le LINQ correctement sans éclater tes perf, ce qu'est un span, faire de la prog asynchrone, faire des fonctions lambda, des méthodes d'extension, des classes partielles et j'en passe.

Si tu veux aller plus loin en faisant de la gestion de pointeur manuelle, utiliser des références et du multithreading c'est tout un autre sujet.

SEGFAULT

OP
GM

Gentil_Monstre2

il y a 7 mois


Oui c'est du no code

Au moins avec les blocs c'est rapide

Sinon je n'ai jamais vu quelqu'un ayant commencé la programmation avec C#

Généralement c'est le C (ou l'Assembleur pour les plus courageux ), le Pascal.
Ou pour ceux qui ne font que du dev web, généralement ils ne se font pas chier et apprennent directement JavaScript et PHP

Mais c'est mal
Il faut commencer par un langage de bas niveau

Un langage de bas niveau c'est un truc où on peut tout faire mais c'est long, et un truc comme le C# c'est un truc où on est un peu moins libre mais c'est plus rapide car plein de trucs sont déjà pris en charge ? https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

Je vais me renseigner sur les blocs d'Unreal Negine, merci https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png
Je veux créer un jeu avant tout pour y mettre mes dessins, ma musique et une histoire que j'invente https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

JF

JeanFrusciante

il y a 7 mois

C'est un apprentissage permanent, y'a pas vraiment de début et de fin
Si tu pars de zéro zéro... Tu vas sûrement finir dans le "tutorial hell" (= regarder plein de tutos en boucle sans jamais être autonome)

Donc en vrai ça dépend de plein de trucs et de si ta tête est bien faite ou pas. Franchement si tu pars de 0 je pense que le moteur Godot est plus adapté que Unity

CE

Celestinoux

il y a 7 mois

Gentil_Monstre2

il y a 7 mois

Les blocs c'est comme sur GameMaker, des trucs pour les descos de la programmation ?

Oui mais c'est arrive bien foutu no joke https://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

TW

ThomasWCP

il y a 7 mois

Un langage de bas niveau c'est un truc où on peut tout faire mais c'est long, et un truc comme le C# c'est un truc où on est un peu moins libre mais c'est plus rapide car plein de trucs sont déjà pris en charge ? https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

Je vais me renseigner sur les blocs d'Unreal Negine, merci https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png
Je veux créer un jeu avant tout pour y mettre mes dessins, ma musique et une histoire que j'invente https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

Bas niveau tu gères la mémoire à la main
Haut niveau ça le fait tout seul
Généralement haut niveau ça rajoute des fonctions utiles comme trier des tableaux, etc.
Et les langages de haut niveau utilisent la POO (programmation orientée objet, celle qu'on utilise pour programmer des jeux )

OP
GM

Gentil_Monstre2

il y a 7 mois

Bas niveau tu gères la mémoire à la main
Haut niveau ça le fait tout seul
Généralement haut niveau ça rajoute des fonctions utiles comme trier des tableaux, etc.
Et les langages de haut niveau utilisent la POO (programmation orientée objet, celle qu'on utilise pour programmer des jeux )

Ok j'ai rien compris désolé https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

OP
GM

Gentil_Monstre2

il y a 7 mois

Oui mais c'est arrive bien foutu no joke https://image.noelshack.com/fichiers/2017/13/1490886827-risibo.png

Top, je vais me renseigner merci https://image.noelshack.com/fichiers/2022/37/1/1663014384-ahi-pince-mais.png

L0

lepasboomer02

il y a 7 mois


1 semaine c'est un langage de tapette

NOT READY c'est un langage Objet comme Java

C'est pas simple à maitriser mais bon comme un singe tu codes en procédural alors c'est facile hein

BR

BelgeRiche

il y a 7 mois

Bas niveau tu gères la mémoire à la main
Haut niveau ça le fait tout seul
Généralement haut niveau ça rajoute des fonctions utiles comme trier des tableaux, etc.
Et les langages de haut niveau utilisent la POO (programmation orientée objet, celle qu'on utilise pour programmer des jeux )

Petit malloc();
Suivit d'un free();

Et là on existe

TW

ThomasWCP

il y a 7 mois

Petit malloc();
Suivit d'un free();

Et là on existe

On existe plus quand on manipule des pointeurs nuls

AE

AlhaitamEnjoyer

il y a 7 mois

Ah ouais ? même quand on a aucune notion ?

L'écoute pas, c'est juste un low...
Si t'as absolument 0 notion en langage info mais que t'es déterminé à apprendre (10h/j) et que t'es pas surdoué, ca te prendra à peu près un mois pour comprendre le gros du gros du paradigme des langages de programmation moderne (après que ce soit du js / java / python / C..., ca reste la même chose à deux trois features près)

LM

lucky-morris1

il y a 7 mois

Tout ce que je peux te conseiller c'est de crée quelque chose dans ce langage de code, comme dit plus haut c'est facile de tomber dans une boucle de tutoriel, avec cette technique tu sauras au moins où investir ton temps pour apprendre et en plus avoir de la pratique avec ce langage.

Perso', j'ai appris python pour automatisé certaine tâches dans mon métier (sysadmin), je n'en ressort pas avec un niveau de dingue mais au moins je sais faire des programmes utile qui marche correctement et ce n'est pas forcément le cas de gens qui passent 200 heures à lire/regarder des tutos sans savoir quoi en faire.

AE

AlhaitamEnjoyer

il y a 7 mois

Bas niveau tu gères la mémoire à la main
Haut niveau ça le fait tout seul
Généralement haut niveau ça rajoute des fonctions utiles comme trier des tableaux, etc.
Et les langages de haut niveau utilisent la POO (programmation orientée objet, celle qu'on utilise pour programmer des jeux )

J'imagine que t'as jamais codé en dehors d'un cadre scolaire ?
Les smarts pointers c'est quoi tu crois ?
Tu penses vraiment que les gens gèrent la mémoire à la main ? Oui peut être y'a 30 ans, mais c'est plus le cas mdr

[2

[25032022]

il y a 7 mois

Tu connais quoi comme langage + ton niveau avec ces langage ?

OP
GM

Gentil_Monstre2

il y a 7 mois

Ok merci je vais faire ça alors
Continuer à apprendre Unity et le C# en même temps

OP
GM

Gentil_Monstre2

il y a 7 mois


Tu connais quoi comme langage + ton niveau avec ces langage ?

français anglais japonais et solfège
français, anglais et solfège courant, japonais JLPT3

[2

[25032022]

il y a 7 mois

français anglais japonais et solfège
français, anglais et solfège courant, japonais JLPT3

Tu trolls ou tu veux que je t'insulte ?

AE

AlhaitamEnjoyer

il y a 7 mois

français anglais japonais et solfège
français, anglais et solfège courant, japonais JLPT3

PF

Pr_Farnsworth5

il y a 7 mois

Ah mais j'ai plein de notions en musique j'ai un bon niveau ! Donc je ne pars pas de 0
Le but c'est simplement de comprendre les trucs de base pour me débrouiller sur Unity, c'est pas plus rapide de commencer par C# directos plutôt que C ?

c'est pas très compliqué le c# tu apprends les variables (entier, chaine de caractère...), les classes, dont tu t'en sers pour faire un objet.
exemple : un objet de la classe bonhomme avec ses caractéristiques (PV, nom, prénom, force, niveau,...), et puis hop, t'as les bases du c#

puis si t'as la flemme, tu demandes à chatgpt de te sortir du code

CA

cacadebite

il y a 7 mois


Tout ce que je peux te conseiller c'est de crée quelque chose dans ce langage de code, comme dit plus haut c'est facile de tomber dans une boucle de tutoriel, avec cette technique tu sauras au moins où investir ton temps pour apprendre et en plus avoir de la pratique avec ce langage.

Perso', j'ai appris python pour automatisé certaine tâches dans mon métier (sysadmin), je n'en ressort pas avec un niveau de dingue mais au moins je sais faire des programmes utile qui marche correctement et ce n'est pas forcément le cas de gens qui passent 200 heures à lire/regarder des tutos sans savoir quoi en faire.

Le Python/JS ça peut être bien pour apprendre parce que ça permet d'avoir des résultats rapidement, soit des petits scripts Python qui permettent de faire des trucs utiles facilement (du web scraping avec BeautifulSoup par exemple) ou JS pour avoir un rendu visuel

B5

bloblomv51

il y a 7 mois

Petit malloc();
Suivit d'un free();

Et là on existe

C'est fini ça hein.

Les standards C++ moderne déconseillent très fortement l'usage de pointeurs "à l'ancienne". T'es censé passer par des smart pointers systématiquement, ainsi que des itérateurs.

D'ailleurs C++ intègre désormais un système de réflexivité primitif à l'instar de C# et Java avec le RTTI.

C'est pourquoi le first est un demi-habile, sûrement un L1 qui se branle sur le C/C++

OP
GM

Gentil_Monstre2

il y a 7 mois

Tu trolls ou tu veux que je t'insulte ?

Un peu les deux
En langage informatique absolument 0 notion

OP
GM

Gentil_Monstre2

il y a 7 mois

c'est pas très compliqué le c# tu apprends les variables (entier, chaine de caractère...), les classes, dont tu t'en sers pour faire un objet.
exemple : un objet de la classe bonhomme avec ses caractéristiques (PV, nom, prénom, force, niveau,...), et puis hop, t'as les bases du c#

puis si t'as la flemme, tu demandes à chatgpt de te sortir du code

Ouais c'est mon objectif à terme, de tout demander à chatGPT et de survoler pour voir si c'est bien

AE

AlhaitamEnjoyer

il y a 7 mois

C'est fini ça hein.

Les standards C++ moderne déconseillent très fortement l'usage de pointeurs "à l'ancienne". T'es censé passer par des smart pointers systématiquement, ainsi que des itérateurs.

D'ailleurs C++ intègre désormais un système de réflexivité primitif à l'instar de C# et Java avec le RTTI.

C'est pourquoi le first est un demi-habile, sûrement un L1 qui se branle sur le C/C++

This, enfin un vrai pisseur de code sur ce forum de ratés

PF

Pr_Farnsworth5

il y a 7 mois

Le Python/JS ça peut être bien pour apprendre parce que ça permet d'avoir des résultats rapidement, soit des petits scripts Python qui permettent de faire des trucs utiles facilement (du web scraping avec BeautifulSoup par exemple) ou JS pour avoir un rendu visuel

j'ai demandé à chatgpt de me coder un jeu de plateforme à 2 joueurs à écran splitté, jouable à la manette, il m'a fait en python. Il n'y a que les bases, mais c'est incroyable quand même

PY

Pycnique

il y a 7 mois

Ce qu'il faut comprendre en prog, c'est que c'est différent de la plupart des choses qu'on peut apprendre. C'est pas incrémental juste par la pratique ou en suivant des tutos pratiques.
Oui, tu peux apprendre les bases et faire des choses sur l'écran en suivant des tutos mais tu n'auras jamais qu'un niveau basique en faisant ça. Pour être capable de faire des choses un tant soit peu d'envergure il faut forcément des connaissances profondes et une vue d'ensemble. Typiquement comme tu parles de Unity, tu feras jamais un jeu vidéo avec quelques mécaniques sans savoir comment organiser ton architecture de code. Pour comprendre l'architecture, il faut comprendre les designs patterns qui nécessitent le OOP etc..

Alors oui en 1 mois, tu peux bricoler 2/3 trucs mais si tu veux vraiment devenir apte à construire des soft un peu travaillés, il faudra forcément que t'y passes plusieurs mois voir années.

TW

ThomasWCP

il y a 7 mois

J'imagine que t'as jamais codé en dehors d'un cadre scolaire ?
Les smarts pointers c'est quoi tu crois ?
Tu penses vraiment que les gens gèrent la mémoire à la main ? Oui peut être y'a 30 ans, mais c'est plus le cas mdr

Smart pointer -> C++ -> Langage de haut niveau

Allez, circule

OP
GM

Gentil_Monstre2

il y a 7 mois


Ce qu'il faut comprendre en prog, c'est que c'est différent de la plupart des choses qu'on peut apprendre. C'est pas incrémental juste par la pratique ou en suivant des tutos pratiques.
Oui, tu peux apprendre les bases et faire des choses sur l'écran en suivant des tutos mais tu n'auras jamais qu'un niveau basique en faisant ça. Pour être capable de faire des choses un tant soit peu d'envergure il faut forcément des connaissances profondes et une vue d'ensemble. Typiquement comme tu parles de Unity, tu feras jamais un jeu vidéo avec quelques mécaniques sans savoir comment organiser ton architecture de code. Pour comprendre l'architecture, il faut comprendre les designs patterns qui nécessitent le OOP etc..

Alors oui en 1 mois, tu peux bricoler 2/3 trucs mais si tu veux vraiment devenir apte à construire des soft un peu travaillés, il faudra forcément que t'y passes plusieurs mois voir années.

Pour l'instant mon objectif est d'arriver à créer une map style RPG pokémon où on peut parler à des persos, débloquer un nouveau lieu quand on trouve la clé, etc. Pas de combat ou autres mécaniques. Ce serait difficile niveau programmation ?

AE

AlhaitamEnjoyer

il y a 7 mois

Smart pointer -> C++ -> Langage de haut niveau

Allez, circule

Avec cette logique, le C est également un langage de haut niveau, tout ce qui n'est pas ASM est de haut niveau à vrai dire, l'assembleur est le seul langage que j'ai vraiment pas envie de retoucher

TW

ThomasWCP

il y a 7 mois

Avec cette logique, le C est également un langage de haut niveau, tout ce qui n'est pas ASM est de haut niveau à vrai dire, l'assembleur est le seul langage que j'ai vraiment pas envie de retoucher

Et le Brainfuck ?

[2

[25032022]

il y a 7 mois

Avec cette logique, le C est également un langage de haut niveau, tout ce qui n'est pas ASM est de haut niveau à vrai dire, l'assembleur est le seul langage que j'ai vraiment pas envie de retoucher

Le C est considéré comme un langage haut niveau en comparaison avec les assembleurs

PY

Pycnique

il y a 7 mois

Pour l'instant mon objectif est d'arriver à créer une map style RPG pokémon où on peut parler à des persos, débloquer un nouveau lieu quand on trouve la clé, etc. Pas de combat ou autres mécaniques. Ce serait difficile niveau programmation ?

Difficile ça dépend, c'est un art au bout d'un moment. Tu peux certainement y arriver en 1 mois ou 2 si tu ne suis que des tutos et en te focusant sur cette objectif, notamment avec ChatGPT. Maintenant il est sur que le code résultant sera pas maintenable car ce sera de la paté que tu auras créé en même temps que tu apprends mais je pense que c'est l'objectif vu la simplicité de ce que tu veux.

Lance toi, il faut essayer de toute façon. Aussi, à chaque fois que tu écris une ligne de code où le moindre mot t'échappe, demande à ChatGPT, tu vas apprendre beaucoup plus vite.

FI

fiondegerminal

il y a 7 mois

c# pue la merde, le language pour les jeux performants et bons est le c++

PF

Pr_Farnsworth5

il y a 7 mois


c# pue la merde, le language pour les jeux performants et bons est le c++

après il va ptet pas faire un AAA