90 votes

Bons défis / tâches / exercices pour apprendre ou améliorer les compétences en programmation orientée objet (POO)

Ce qui est un bon défi à relever pour améliorer vos compétences en programmation orientée objet?

L'idée derrière ce sondage est pour donner une idée de quels exercices sont utiles pour l'apprentissage de la programmation orientée objet.

Le défi doit être comme la langue agnostique que possible, nécessitant peu ou pas d'utilisation de bibliothèques spécifiques, ou seulement le plus commun des bibliothèques. Essayez d'inclure un seul défi par réponse, de sorte qu'un vote aura correspondent le bien-fondé de ce défi seul. Serait bien aussi si un niveau de compétence requis est indiqué, et aussi la logique derrière pourquoi il est un exercice utile.

Des Solutions pour les défis peuvent ensuite être affichés en tant que réponses à "Comment faire pour..." question et lié à partir d'ici.

Par exemple:

  • Défi - mettre en œuvre un last-in-first-out de la pile
  • Niveau de compétence: débutant
  • Justification - que donne l'expérience de la façon de faire référence à des objets

49voto

Craig Angus Points 6413

Le renforcement des Compétences en Conception Orientée Objet est un livre gratuit qui pourrait être utile. La description est comme suit

"Le but de ce livre est d'aider le début de concepteur en leur donnant une séquence intéressante et assez complexe exercices OO design. Ce livre peut également aider les gestionnaires à élaborer un niveau de confort avec le processus de OO de développement de logiciels. Les applications que nous allons construire sont un cran au-dessus trivial, et nécessitera une certaine conception soignée. En outre, parce que les applications sont en grande partie des loisirs dans la nature, ils sont intéressants et attachants. Ce livre permet au lecteur d'explorer les processus et les artefacts de OO conception avant projet les délais de rendre le bon design semble impossible."

18voto

Paweł Hajdan Points 8004

Écrivez un programme stimulant à partir de zéro . Essayez de faire en sorte que certaines personnes (environ cinq, cela devrait être faisable) l'utilisent. Répondre à leurs demandes de changement.

Adaptez la conception de votre programme. Commencez petit, puis regardez-le grandir. Gérer cette croissance. C'est dur. Vous devrez également corriger les bugs et maintenir la tâche dans le temps, ce qui pour moi était une leçon très précieuse.

9voto

busse Points 320

Défi: Écrire un wrapper pour votre site web/API du service de choix dans la langue de votre choix, qui n'existe pas déjà (ex. une API ZenDesk wrapper écrit en C#). Relâchez le wrapper de l'open source à utiliser pour les autres.

Niveau de compétence: Débutant à Intermédiaire

Justification: pour apprendre À extrapoler une 3ème partie de l'API de service web en un véritable jeu d'objets/classes, faisant de la réutilisation d'un API plus facile dans la langue de votre choix.

5voto

killdash10 Points 528

Après avoir appris les bases, étudiez le livre de modèles de conception "Gang of four".

http://www.amazon.com/Design-Patterns-Object-Oriented-Addison-Wesley-Professional/dp/0201633612/ref=pd_bbs_sr_1?ie=UTF8&s=books&qid=1221488916&sr=8-1

Ceci est un classique, et est une lecture incontournable pour tout codeur qui veut comprendre comment utiliser OO pour concevoir des solutions élégantes aux problèmes de codage courants.

3voto

petr k. Points 4890

Prenez un morceau de code écrit de style procédural et essayez de le transformer en solution basée sur la POO. Pendant le processus, consultez un livre sur la refactorisation et les modèles de conception. Un de mes amis a pu faire un énorme pas en avant dans la compréhension des concepts orientés objet exactement de cette façon. Comme pour tout, cela pourrait ne pas fonctionner pour tout le monde.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X