Une méprise courante au sujet Object-Oriented Programming




 

J'ai vu cela maintes et maintes fois. Un programmeur informatique proclame fièrement: «Ouais, mon code est orienté objet. Voir? Mon membres de données sont toutes privées, et ils ne peuvent être atteints grâce aux fonctions de membre du public. C'est cela être orienté-objet est tout." J'ai même entendu ce genre de sornettes sortent de la bouche de diplômés en informatique des gens qui ont probablement étudié l'orientation objet dans la classe, ou qui aurait eu amplement l'occasion de se renseigner.

Scholars mai ergoter sur des points précis de l'orientation objet, mais une chose est certaine: simple fait d'avoir des données privées et les fonctions publiques ne constitue pas un objet propre conception orientée. Plutôt, l'orientation objet propre implique beaucoup plus.

Un des éléments les plus fondamentaux est la dissimulation d'information. Cela signifie que les objets ne doivent présenter l'information qui doit être vu, c'est, il devrait présenter une stratégie cohérente et bien sélectionnées interface des fonctions, celui qui ne trahit pas le contenu des données et du fonctionnement interne de la classe. En d'autres termes, la manière dont les fonctions sont mises en œuvre reste caché à l'utilisateur, permettant ainsi au développeur de modifier la mise en œuvre selon les besoins. (Certains se réfèrent également à ce que l ' "encapsulation", tandis que l'Etat autres que l'encapsulation est seulement un moyen de cacher l'information. Je me penche vers le dernier point de vue, toutefois, aux fins du présent article, cette distinction est sans importance. Il suffit de dire que l'information clandestinité est un élément clé de la conception orientée objet.)

Quand un programmeur déclare que son code est orienté objet, en vertu de disposer de données privées et des fonctions publiques, il met la charrue avant les boeufs proverbiale. En utilisant les données privées et la fonction publique n'est qu'un moyen de parvenir à la dissimulation d'information, ce n'est pas un objectif en soi. Par exemple, considérons un modèle dans lequel chaque membre de données unique a correspondante "GET" et "set" accesseurs (par exemple un membre de données "x" aurait matching "getX ()" et "setx ()" functions). Dans cet exemple, l'information est mal caché, puisque le choix des fonctions (en effet, leurs noms!) Trahit la manière dont les données ont été mises en œuvre.

L'héritage est un autre élément clé, c'est-classes spécifiques doivent être tirées de celles plus générales. L'héritage est un moyen de mise en œuvre de l'abstraction, c'est qu'elle permet à l'utilisateur d'identifier les objets ayant des caractéristiques communes, et qui devraient donc utiliser un code commun (ou à tout le moins, des interfaces communes). Cela fait partie intégrante de la réflexion en termes d'objets, par opposition à la pensée avant tout en termes de fonctions et de procédures.

Encore une autre caractéristique clé est le polymorphisme, qui permet à un objet descendant de passer outre les fonctions membres de son parent. Au polymorphisme, un objet descendant n'a pas à répondre à un message exactement comme son ancêtre le fait; au contraire, elle peut avoir sa propre implémentation. Notez que les objets descendants n'ont pas à passer outre ces fonctions, mais plutôt, ils devraient tout simplement être autorisés à le faire, comme needed.There est beaucoup plus ce qu'on peut dire sur la nature de l'orientation objet: en effet, les savants prétendent souvent sur ses précise définition et de ses idées principales. Quel que soit le cas, cependant, le fait demeure: comment suivre simplement les données privées et un ensemble de fonctions publiques ne constitue pas une conception orientée objet, non pas dans un sens véritable du terme.

 
Intranet Portal SoftwarePièces nécessaires à l'édification d'un PC GamingEmployee Time Tracking SoftwareWhat Is The Laptop Right?Cisco CCNA / CCNP Certification Exam: Dépannage Direct connexions sérieEglise Accounting SoftwareCollection Predictive DialerHigh Performance Single Board ComputersInventory Control SoftwareFinding The Best Small Appareil Photo NumériqueHow To Find Cheap SoftwareOptimiser votre ordinateur pour Peak PerformanceRadio Ga-Ga: Comment écouter la radio InternetAffiliate Computer Management Software 101Feuille de route de mise en œuvre d'un système de DSE dans un cabinetCode à barres Imprimantes d'étiquettesSanDisk 6GB MP3 PlayerFree Web Hosting?Économisez de l'argent et le Temps avec batteries de l'onduleurOffre de compromis Software

© 2007-2012 Geocitoyen.com