[Langage OO] Conceptuellement parlant

Statut
N'est pas ouverte pour d'autres réponses.
Voici une série de questions ou plutôt voici quelques mots de vocabulaire qu'il faudrait définir pour entamer une étude sérieuse de la programmation dans un langage Orienté Objet :
(quoi que tous les mots définis ne soient pas tjs spécifiques à de l'OO pur)

Note : UML ça aide aussi ...


Qu'est que :

Un paradigme ?
Une structure ?
Un Objet ?
Une classe ?
L'encapsulation ?
Le masquage de l'information ?
L'héritage ? (simple, multiple, public, privé)
Le polymorphisme ?
Une énumération ?
Une association ?
Une agrégation ?
Une spécialisation ? (cfr héritage desc)
Une généralisation ? (cfr héritage asc)
Une méthode de classe ?
Une référence ?
Un pointeur ?
Une conversion de type ?
Une constante ?
Un cast ?
Un membre public, privé, protégé ?
Un membre static ?
Une fonction amie ?
Une classe amie ?
Un type primitif ?
Un type définit par l'utilisateur ? (cfr Classe, Struct, Enum...)
La surdéfinition ? (de fonction, de méthode de classe,...)
La surdéfinition d'opérateurs ?
Un flux, un flot ? (de caractères, de fichier etc...)
Un constructeur ?
Un constructeur par recopie ?
Un destructeur ?
Une fonction "inline" ?
Quand est-ce utile ?
Comment fonctionne une file d'attente de type LIFO ?
Comment fonctionne une pile de type FIFO ?
Comment fonctionne un vecteur ?
Comment fonctionne une liste ? (simple ou bidirectionnelle)
Un patron de fonction ?
Une classe Template ou classe modèle ?
Une classe abstraite ?
Un conteneur ?
Un itérateur ?
Un espace de nom ?
Une exception ?
Un gestionnaire d'exceptions ?
Quelle est la différence entre un objet automatique, statique et dynamique ?
Quelle est la différence entre procédure, méthode et fonction ?
Un membre "mutable" ?
Les fonctions virtuelles et le typage dynamique ? (où, quand, pourquoi ? - principe de ligature)
Une bibliothèque ?
Un arbre ? (comment ça fonctionne - arbre binaire/ n-aire)
Un algorithme itératif ?
Un algorithme récursif ?


Liste non exhaustive mais avec ces notions, on sait déjà faire pas mal de chose (jeu y compris) => temps et patience.
 
1er
OP
TITM4v3rick
Ben pour ceux qui ne savent pas ou que ça intéresse, un langage OO c'est un langage comme le JAVA (pas javascript, même si c'est un mini langage oo)

ou encore le C++ (à nuancer, vu que le C++ est un langage OO si on décide de coder comme tel, il n'est "polymorphique" que si on " l'appelle ")
 

♥♥♥

ex membre
OO?! Oooooooooo! :D
 

dagibbon

Elite
mdr :D

ASM RUUUULEZ !!!
 
R

Riff_Raff

ex membre
TITM4v3rick a dit:
Ben pour ceux qui ne savent pas ou que ça intéresse, un langage OO c'est un langage comme le JAVA (pas javascript, même si c'est un mini langage oo)

ou encore le C++ (à nuancer, vu que le C++ est un langage OO si on décide de coder comme tel, il n'est "polymorphique" que si on " l'appelle ")
Si tu comptes définir tous les termes cités de la même manière que tu définis un langage OO, laisse tomber directement et mets des liens ;)

-"Papa c'est quoi un ordinateur?"
-"C'est comme un mac ou un compaq (pas xbox mm si ça contient des éléments d'ordinateur)"
 
1er
OP
TITM4v3rick
Riff_Raff a dit:
TITM4v3rick a dit:
Ben pour ceux qui ne savent pas ou que ça intéresse, un langage OO c'est un langage comme le JAVA (pas javascript, même si c'est un mini langage oo)

ou encore le C++ (à nuancer, vu que le C++ est un langage OO si on décide de coder comme tel, il n'est "polymorphique" que si on " l'appelle ")
Si tu comptes définir tous les termes cités de la même manière que tu définis un langage OO, laisse tomber directement et mets des liens ;)

-"Papa c'est quoi un ordinateur?"
-"C'est comme un mac ou un compaq (pas xbox mm si ça contient des éléments d'ordinateur)"

Qu'est-ce que la Programmation OO ?
C'est utiliser un langage OO pour coder une application

Qu'est-ce qu'un langage OO ?
Un langage de programmation qui gère des objets instances de leurs classes. Un langage OO est bâtit sur 3 grands concepts, à savoir l'objet, l'encapsulation (et donc le masquage de l'information) et l'héritage.

Le polymorphisme c'est quoi, ben c'est de pouvoir utiliser une méthode propre à un objet bien que cette méthode soit déjà définie pour d'autres objets de la même famille.

Ouille...

Il est clair que pour aborder l'OO, il ne vaut mieux pas commencer comme cela.

?

1/ C'est quoi un langage procédural
2/ C'est quoi une variable -> "objet"
3/ C'est quoi une structure -> "objet"
4/ C'est quoi une classe -> objet
5/ C'est quoi un objet
6/ A quoi sert le masquage de l'information
7/ Pourquoi l'encapsulation des données et des méthodes
8/ Qu'entend-on par héritage (voir spécialisation d'une classe)

Le reste, ben on vient d'office mais je dirai que c'est par là qu'on commence...
 
1er
OP
TITM4v3rick
PS : oui ya de la récursivité dans les définitions...

L'ordre c'est quoi ? = faire un rangement
Qu'est-ce qu'un rangement ? = action de ranger
ranger ? = mettre en ordre

... :D :D :D
 

FoX2000

Revenant
Vu que ca répond pas sur msn..

C'est un tantinet compliqué quand même.. tu veux faire quoi? Donner les bases?
 

Azinou

Ancienne LV
FoX2000 a dit:
Vu que ca répond pas sur msn..

C'est un tantinet compliqué quand même.. tu veux faire quoi? Donner les bases?
ben je suppose qu'il veux que celui qui affronte pour la première fois un lang de prog Or on (LPGOO)
ne soit pas demuni face a l'avalanche de terme technique :)


(perso, me demander pas ce que ca veut dire, j'y connais rien !!!)
 

dagibbon

Elite
orienté Obje?
ouééééé :D

Pour être plus complet, je vous invite à une intense et profonde réflexion sur le concept de DBoo, c'est beaucoup plus marrant que la Poo...

Sinon quid de l'événementiel Poo? C++ me semble un peu dépassé la. Enfin...commencez par l'ASM, il n'y a que ca de vrai (que je dis :D).
 
1er
OP
TITM4v3rick
dagibbon a dit:
orienté Obje?
ouééééé :D

Pour être plus complet, je vous invite à une intense et profonde réflexion sur le concept de DBoo, c'est beaucoup plus marrant que la Poo...

Sinon quid de l'événementiel Poo? C++ me semble un peu dépassé la. Enfin...commencez par l'ASM, il n'y a que ca de vrai (que je dis :D).

La pgm évènementielle en c++ => tout dépend de quel genre d'Events tu parles... Faire de la gestion de BD, np
Faire des interfaces graphiques, np
Faire des jeux vidéos, np
Donner le journal de 20h, pas encore essayé... :D
 

dagibbon

Elite
TITM4v3rick a dit:
dagibbon a dit:
orienté Obje?
ouééééé :D

Pour être plus complet, je vous invite à une intense et profonde réflexion sur le concept de DBoo, c'est beaucoup plus marrant que la Poo...

Sinon quid de l'événementiel Poo? C++ me semble un peu dépassé la. Enfin...commencez par l'ASM, il n'y a que ca de vrai (que je dis :D).

La pgm évènementielle en c++ => tout dépend de quel genre d'Events tu parles... Faire de la gestion de BD, np
Faire des interfaces graphiques, np
Faire des jeux vidéos, np
Donner le journal de 20h, pas encore essayé... :D
ben je c ke db oo, graphik oo ect oo c'est possible :p

La pgm évènementielle en c++ => tout dépend de quel genre d'Events tu parles...
mdr...no comment.
 
1er
OP
TITM4v3rick
Bon, alors arrêtes tout de suite, avant de jeter SQL2, faudra le temps !


Là, tu vas nous la jouer comme Codd. :D :D :D
Tout le monde veut arriver à la dboo parce que les langages de pgm sont des oo à l'heure actuelle (oui bon ça va les gestions, ya encore du cobol, oui oui ça va STOP).


ah oui, pk le "no comment ?"
pgm évènementielle...
 

Hacko

Elite
Un pointeur : variable qui contient une adresse en mémoire.
Comment fonctionne une file d'attente de type LIFO : le dernier élément inséré dans la pile est le premier à en sortir.
Comment fonctionne une pile de type FIFO : Le premier élément inséré dans la pile est le premier à en sortir.
Un constructeur : methode qui crée un objet d'une certaine classe.
Une exception : erreur en java.
Un type définit par l'utilisateur : un type de données (variable) que le programmeur à défini lui même.
Une constante : une valeur appelable par un nom de variable.
Une méthode de classe : Une fonction OO propre à une certaine classe.
Un destructeur : méthode qui libère l'espace mémoire pour des vaiable qui ne sont plus utilisées.

Pour le reste, plus tard, car la, dodo
 
M

Machiavel666

ex membre
Et pour ceux qui n'aiment pas les abréviations :
FIFO : first in first out
LIFO : last in first out

Par contre, est-ce qu'on ne devrait pas dire qu'un constructeur est une méthode (ou fonction membre) qui est appelé à chaque création d'une instance d'une classe ( = un objet ).

Car ce n'est pas vraiment le constructeur qui créé un objet, et le destructeur ne libère pas nécessairement de la mémoire (même si c'est souvent dans ce but qu'il est utilisé ).

Le constructeur est appelé juste après la création d'un objet tandis que le destructeur est appelé juste avant la destruction de l'objet.

Et un exception n'est pas un terme propre seulement au Java puisqu'il est aussi utilisé en C++
 
1er
OP
TITM4v3rick
Le paradigme orientée Objet : système à base d’éléments conceptuels distincts.
En d'autres termes :
en OO tout est Objet, même l'application est un objet... Les Concepts du paradigme objet sont (Abstraction, Encapsulation, Modularité, Hiérarchie, Typage fort, Concurrence, Persistance)


Autant commencer par le premier mot...
 
N

niafron

ex membre
TITM4v3rick a dit:
Voici une série de questions ou plutôt voici quelques mots de vocabulaire qu'il faudrait définir pour entamer une étude sérieuse de la programmation dans un langage Orienté Objet :
(quoi que tous les mots définis ne soient pas tjs spécifiques à de l'OO pur)
tu veux faire fuir tous les futur informaticiens ? ;)

tournons la phrase autrement: en etudiant l OO, vous apprendrez toutes ces notions
 
Le mieux, c'est encore de combiner la programmation orienté objet avec le concept d'XP. Pas XP de Windows, mais l'Extreme Programming http://www.extremeprogramming.org/!

Un super concept qui se base sur un processus itératif à cycle court basé sur des besoins des utilisateurs. Il se base sur des principes du style: "dès qu'on a qque chose qui correspond à ce que le client veut, on lui donne, puis on continue" ou "2 programmeurs ensemble sur la même machine, ils réfléchissent à 2, 1 programme, l'autre donne son avis" ou "écrire les procédures de tests unitaires avant de coder son objet"

Rhaaa c'est beau ... mais pour faire avaler ça à des patrons en belgique ... pas évident !
 
Statut
N'est pas ouverte pour d'autres réponses.
Haut