
|
|
Auteur
|
Message
|
1
|
En galère... :D
|
|
|
|
Bah voilà, a votre avis, je peux apprendre un language de prog orienté objet ou pas, c'est chaud ou pas ?
|
|
ex-deus
|
|
|
|
ben si tu compte évolué un jour faudra bien y passer.
|
|
Comodo déporté
|
|
|
Bien sur que tu peux apprendre un langage OO.
As tu des notions de programmation procédurale ? Si oui, alors il faut savoir que l'OO, c'est une philosophie totalement différente (on parlera de paradigme). Un peu déroutant au 1er abord, mais bien vite on finit par se demander comment on a pu coder si longtemps en procédural.
N'importe qui peut apprendre, mais il est bien évident que ceux qui ont déjà fait de la programmation seront plus à l'aise.
D'un autre coté, se lancer dans l'OO directement sans passer par le procédural permet justement d'acquérir des habitudes propres en s'affranchissant de certaines bidouilles du procédural.
Maintenant, le choix du langage : si tu n'as aucune notion de programmation, oublie le C++, c'est clair ! Dirige toi plutot vers des langages comme Python, très simples d'emploi et OO.
Tu peux aussi t'essayer au C# ou Java. Ces 2 langages sont similaires sur pas mal de points, avec une préférence pour le C# qui gère les propriétés, les pointeurs de fonction sécurisés (delegate), etc...
Par la suite, si tu es de nature masochiste, tu pourras t'essayer au C++, mais là c'est une autre paire de manches. Le C++ a pour lui la généricité (par le biais des templates), et est compilé (alors que les précédents langages sont interprétés), améliorant la rapidité d'exécution. Mais alors, quelle complexité... Pour peu que tu t'aventures dans les templates, tu vas vite regretter ton choix. Mais d'un autre coté, la maitrise de ce langage te permet d'appréhender d'autres langages bien plus rapidement et aisément.
-------
L'assembleur c'est bon, mangez en
|
|
En galère... :D
|
|
|
|
Une petite question : Il vaut mieux commencer par le C ou C++ ?
|
|
ex-deus
|
|
|
|
bah si tu compte faire de la poo, le c te sera pas fort utile.
|
|
Comodo déporté
|
|
|
Toshiba a écrit :
Une petite question : Il vaut mieux commencer par le C ou C++ ?
cf ma réponse précédente :
- le C n'est pas un langage orienté objet, donc à oublier dans ton cas précis,
- le C++ est un cauchemar pour les débutants, à proscrire
-------
L'assembleur c'est bon, mangez en
|
|
ex-deus
|
|
|
Harkonnen a écrit :
- le C++ est un cauchemar pour les débutants, à proscrire
Pk? j'ai commencer par ca, et je dors toujours très bien.
|
|
Comodo déporté
|
|
|
Nico5779 a écrit :
Pk? j'ai commencer par ca, et je dors toujours très bien.
Les fonctionnalités de base n'ont rien de sorcier. Par contre, dés qu'il va vouloir se lancer dans l'héritage multiple, le typage dynamique, et autres joyeusetés, je lui souhaite bien du plaisir.
Et s'il lui prend l'idée de jouer avec les templates... bon courage ! Avec la spécialisation partielle, totale, et j'en passe, c'est un coup à se dégouter à vie de la prog.
-------
L'assembleur c'est bon, mangez en
|
|
ex-deus
|
|
|
Harkonnen a écrit :
Les fonctionnalités de base n'ont rien de sorcier. Par contre, dés qu'il va vouloir se lancer dans l'héritage multiple, le typage dynamique, et autres joyeusetés, je lui souhaite bien du plaisir.
Et s'il lui prend l'idée de jouer avec les templates... bon courage ! Avec la spécialisation partielle, totale, et j'en passe, c'est un coup à se dégouter à vie de la prog.
Bah t'as exactement les meme notions en java (juste les templates qui deviennent inutile avec la classe Object), et pourtant c'est soi disant le language clé pour apprendre la poo.
|
|
Comodo déporté
|
|
|
Nico5779 a écrit :
Bah t'as exactement les meme notions en java (juste les templates qui deviennent inutile avec la classe Object), et pourtant c'est soi disant le language clé pour apprendre la poo.
Certes, mais en Java, t'as pas à te soucier de la gestion de la mémoire (une galère en C++).
De plus, le C++ possède une sémantique de valeur par défaut, ce qui oblige à travailler avec des pointeurs ou des références, une difficulté supplémentaire qui n'existe pas en Java où la sémantique par défaut est une sémantique de référence.
Je te passe également les constructeurs de recopie, la fameuse loi de Coplien, et plein d'autres joyeusetés comme seules le C++ est capable d'en produire...
Pour ce qui est de la généricité en Java, pourquoi est elle présente dans le JDK 1.5 si elle est inutile ?
-------
L'assembleur c'est bon, mangez en
|
|
ex-deus
|
|
|
ben typiquement, les pointeurs et la gestion de la mémoire ce sont des notions que je trouve importante a maitriser des le debut, c'est pour ca que je deconseille des langages comme java ou php pour debuter, c'est d'ailleurs d'une certaine facon meme pour ca (tu va rire) que j'ai conseiller a zplay de commencer par l'assembleur, histoire de commencer par ce qui a de plus rudimentaire, pour avoir plus facile par la suite, en maitrisant bien tout les mecanismes des instructions des languages de plus haut niveau, mais hélas les résultats de l'expérience me laisse qd meme douté de l'efficacité de ma théorie
|
|
Manque d'energie ?!
|
|
|
Nico5779 a écrit :
ben typiquement, les pointeurs et la gestion de la mémoire ce sont des notions que je trouve importante a maitriser des le debut, c'est pour ca que je deconseille des langages comme java ou php pour debuter, c'est d'ailleurs d'une certaine facon meme pour ca (tu va rire) que j'ai conseiller a zplay de commencer par l'assembleur, histoire de commencer par ce qui a de plus rudimentaire, pour avoir plus facile par la suite, en maitrisant bien tout les mecanismes des instructions des languages de plus haut niveau, mais hélas les résultats de l'expérience me laisse qd meme douté de l'efficacité de ma théorie  :D
Il est vrai que la notion de pointeur et de gestion de mémoire est importante. Mais y'a plus facile d'apprendre ces notions qu'en C++ quand meme. Parce que le probleme du C++ est qu'il y a d'autres trucs tres importants aussi à connaitre, et de tout apprendre en meme temps c'est chaud. C'est d'ailleurs pour cela que je trouve plus simple de commencer par un langage type Pascal ou C.
|
|
Comodo déporté
|
|
|
Personnellement, avec la tendance actuelle qui voit apparaitre de plus en plus de langages managés par garbage collector, je trouve que la gestion de la mémoire ne devrait plus être une préoccupation majeure des développeurs "modernes".
Par pitié, laissez là aux dinosaures du C, mais en 2004, utilisez un GC
-------
L'assembleur c'est bon, mangez en
|
|
Manque d'energie ?!
|
|
|
Harkonnen a écrit :
Personnellement, avec la tendance actuelle qui voit apparaitre de plus en plus de langages managés par garbage collector, je trouve que la gestion de la mémoire ne devrait plus être une préoccupation majeure des développeurs "modernes".
Par pitié, laissez là aux dinosaures du C, mais en 2004, utilisez un GC
Mais c'est comme ca qu'on arrive à un windows xp qui utilise 256Mo de mémoire vive. Je pense que si la gestion de la mémoire était mieux faite, on arriverait à avoir des programmes n'utilisant que peu de mémoires.
|
|
Comodo déporté
|
|
|
Je le pense aussi, si je m'écoutais je coderais tous mes softs en assembleur.
Mais la tendance du marché est ainsi et on n'y peut rien. La tendance est à la réduction des couts de développement, et ça passe par tout un tas de mesures comme la délocalisation du personnel en Inde, ou l'adoption de langages à temps de développement réduit comme C# ou Java, voire VB.
Et pour l'utilisation de garbage collector, y'a 2 écoles : ceux qui pensent que la gestion de la mémoire est tellement importante qu'elle ne devrait pas être faite par le programmeur, et ceux qui pensent qu'elle est tellement importante qu'elle ne devrait être gérée que par le programmeur.
Personnellement, pour avoir vu trop de programmes troués, je suis à fond pour la 1ere solution.
-------
L'assembleur c'est bon, mangez en
|
|
|
|
|
Salut,
Je pense, contrairement à Harkonnen, que la gestion de la mémoire est tellement importante qu'elle ne devrait être gérée que par le programmeur...
Encore faut-il que le programmeur utilise de bonnes méthodes algoritmique logiques...
C'est la raison pour laquelle, personnellement, j'aurais tendance à conseiller d'apprendre C++ en premier, JUSTEMENT parce qu'il présente des difficultés absentes sur d'autres langages, et qu'il permet, malgré tout, de faire des applications
1- jusqu'à quatre fois plus rapides que les langages interprétés (ou semi compliés, tels que nous les fournit visual.net)
2- moins gourmandes en mémoire...
Je suis tout à fait d'accord sur le fait que, si on ne pense pas à libérer correctement la mémoire, la saturation apporchera à grand pas...Mais, en y pensant bien, la saturation arrivera tout aussi vite si l'on ne pense pas à utiliser le garbage collector en .net
Ceci dit, je me pose souvent la question de savoir si la "mauvais qualité" (entendons-nous sur ce terme, quand meme) n'est pas principalement du à une mauvaise méthodologie.
Honnêtement, combien de gens, ici et ailleurs, prennent-ils la peine de créer un algoritme réel, avant de passer à la programmation?
Je ne parle pas d'UML, qui est avant tout destiné à offrir une vue d'ensemble de l'application, mais bel et bien d'un algoritme de logique qui détaille instruction par instruction...
Et, surtout, combien de ceux qui le créent utilisent-t-il cet algoritme pour déterminer la prochaine instruction à insérer dans le code?
Je doiis avouer honnetement que, si je devais me limiter au flowchart, je ne me baserais sans doute pas non plus sur lui pour créer mes codes sources, principalement parce que chacun sera d'accord avec moi: il ne permet pas vraiment une représentation "logique" des opportunités des langages évolués...
|
|
est bon : Mangez en !
|
|
|
C'est Harkonnen de HFR
-->Message édité par Martius le 30/05/2005 17:03:13<--
|
|
1
|
|

|


|