Représentation d'un objet en programmation. - page 2

 
Реter Konow:
Il n'y a aucun moyen d'y échapper sans un concept philosophique. Combiner simplement des fonctions et des variables sans suivre un "plan" bien pensé de l'objet ? On nous donne certains outils : classes, structures, modificateurs d'accès... mais il pourrait y avoir d'autres outils... par exemple, état, échantillonnage, cartographie... pourquoi pas ? Ce que je veux dire, c'est que le format OOP et la boîte à outils peuvent avoir des versions...

Il existe une chose telle que la "suffisance optimale".

Pourquoi une personne a-t-elle deux jambes et deux bras ? Pourquoi un chien n'a-t-il pas cinq pattes ? C'est pourquoi des questions se posent à vous : pourquoi inventez-vous des Frankensteins ? Sur une base régulière. Est-ce que ça gratte ? Si vous n'étiez pas en train de les inventer pour laisser votre marque, vous l'auriez fait depuis longtemps. Je veux dire, vous mettez vos efforts dans la mauvaise direction.

 
transcendreamer:
D'une manière générale, lorsqu'on définit l'Objet, on doit également définir le Sujet, sinon il s'agit d'une description incomplète du monde. En outre, dans les concepts philosophiques plus modernes, il existe le Trajet, qui a un statut relationnel indépendant en tant que lien intermédiaire/liaison entre l'Objet et le Sujet.
Oui, l'ontologie s'intéresse à la définition de l'Objet en tant que tel. De toute évidence, les créateurs de l'OLP se sont appuyés sur le modèle philosophique ontologique largement accepté. Mais ce modèle est subjectif. Et oui, à partir d'un objet, la programmation va vers un sous-objet (AI).
 
Реter Konow:
C'est ici qu'un concept philosophique ne peut être évité. Simplement pour combiner des fonctions et des variables sans suivre un "plan" bien pensé de l'objet ? On nous donne certains outils : classes, structures, modificateurs d'accès... mais il pourrait y avoir d'autres outils... par exemple, état, échantillonnage, cartographie... pourquoi pas ? Ce que je veux dire, c'est que le format OOP et la boîte à outils peuvent avoir des versions...
Et dans certains cas, une version différente du format de description d'objet peut être plus efficace.

Les différents langages ont des caractéristiques de POE différentes.

 
Artyom Trishkin:

Il existe une chose telle que la "suffisance optimale".

Pourquoi un homme a-t-il deux jambes et deux bras ? Pourquoi un chien n'a-t-il pas cinq pattes ? C'est pourquoi les questions se posent à vous - pourquoi inventez-vous des Frankensteins ? Sur une base régulière. Est-ce que ça gratte ? Si vous n'étiez pas en train de les inventer pour laisser votre marque, vous l'auriez fait depuis longtemps. Je veux dire, vous mettez vos efforts dans la mauvaise direction.

Parlez-vous pour vous-même ou pour l'administration ?
 

J'ai aimé la définition suivante de Wikipedia :

Laprogrammation orientée générique (POG) est uneméthodologie de programmation basée sur la représentation d'un programme comme un ensembled'objets, dont chacun est une instance d'une certaineclasse, et les classes forment une hiérarchie d'héritage[1].

C'est de la pure philosophie. Ainsi, ceux qui pensent qu'il n'y a pas de philosophie dans la programmation ont tort. La programmation objet est construite sur une base philosophique et, par conséquent, les programmeurs doivent être capables de penser de manière abstraite et philosophique. Moi, par exemple, je suis capable de le faire et j'ai des questions philosophiques sur ce concept. C'est logique et légitime. Pas de "Frankenstein". Je suis guidé par la question "et si la Terre n'était pas plate ?".


Voici l'article complet :

https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование

C'est de la philosophie.

 

Du wiki :

Histoire[modifier lecode]


La POO est née du développement de l'idéologie de laprogrammation procédurale, où les données et les sous-programmes (procédures, fonctions) de leur traitement ne sont pas formellement liés. Pour le développement de la programmation orientée objet, les notions d'événement (laprogrammation diteorientée événement) et de composant(programmation par composant, COP) sont souvent d'une grande importance.

L'interaction entre les objets se fait par le biais demessages. Le résultat du développement de la POO semble être laprogrammation basée sur les agents, lesagents sont des parties indépendantes du code au niveau de l'exécution. Les agents interagissent en modifiant l'environnement dans lequel ils résident.

Les constructions linguistiques qui ne sont pas directement liées structurellement aux objets mais qui les accompagnent pour leur fonctionnement sûr(situations exceptionnelles, vérifications) et efficace sont encapsulées à partir d'eux dans des aspects(dans laprogrammation orientée aspect). Laprogrammation orientée objet étend la notion d'objet en fournissant une interaction plus unifiée et indépendante des objets. Il peut s'agir d'une étape de transition entre la POO et la programmation basée sur les agents dans le cadre de leur interaction indépendante.

Le premier langage de programmation à proposer les concepts de base qui ont ensuite formé le paradigme étaitSimula, mais le terme "orienté objet" n'était pas utilisé dans le contexte de l'utilisation de ce langage. Lors de son introduction en1967, il proposait des idées révolutionnaires : objets, classes, méthodesvirtuelles, etc., mais tout cela n'était pas perçu comme quelque chose de grandiose par ses contemporains. En fait, Simula était un "Algol avec des classes", simplifiant l'expression enprogrammation procédurale de nombreux concepts complexes. La notion de classe dans Simula peut être entièrement définie par la composition de constructions Algol (c'est-à-dire qu'une classe dans Simula est quelque chose de complexe décrit au moyen de primitives).

La vision "nouvel angle" (autre que procédural) de la programmation a été suggérée parAlan Kay etDan Ingalls dansSmalltalk. Ici, la notion de classe est devenue l'idée sous-jacente de toutes les autres constructions du langage (c'est-à-dire que la classe dans Smalltalk est une primitive à travers laquelle des constructions plus complexes sont décrites). Il s'agit du premierlangage de programmation orienté objet largement répandu.

Aujourd'hui, le nombre de langages de programmation appliqués(liste des langages) qui mettent en œuvre le paradigme orienté objet est le plus important par rapport aux autres paradigmes. Les langages les plus utilisés dans l'industrie (C++, Delphi, C#, Java, etc.) intègrent le modèle objet de Simula. Des exemples de langages reposant sur le modèle Smalltalk sont Objective-C, Python, Ruby.

 

L'extrait ci-dessus de l'article de Wikipedia décrit comment les idées de la POO ont évolué. Au début, je pensais que le concept était juste quelque chose que quelqu'un avait inventé. J'avais tort. C'était un processus d'évolution.

Peut-être le concept continuera-t-il à évoluer. Pourquoi pas ?

 

Un autre extrait du Wiki, qui confirme la subjectivité du concept :

LaPOO a une histoire de plus de quarante ans, mais malgré cela, il n'y a toujours pas de définition claire et acceptée de la technologie[14]. Les principes de base des premiers langages et systèmes objet ont été considérablement modifiés (ou déformés) et complétés dans de nombreuses implémentations depuis lors. En outre, depuis lemilieu des années 1980, le terme "orienté objet" est devenuà la mode, et il s'est produit la même chose qu'avec le terme "structuré" (qui est devenu à la mode après la diffusion de la technologie deprogrammation structurée) un peu plus tôt- il est devenu artificiellement "attaché" à tout nouveau développement pour assurer son attractivité.Björn Straustrup a écrit en 1988 que la justification de l'"orientation objet" de quoi que ce soit, dans la plupart des cas, se rés ume àun syllogisme défectueux: "X est bon. L'orienté objet est bon,donc X est orienté objet".

Ainsi, un programme est un ensemble d'objets ayant un état et un comportement. Les objets interagissent par le biais de messages. Une hiérarchie d'objets se construit naturellement : le programme dans son ensemble est un objet, pour réaliser ses fonctions il se réfère à ses objets constitutifs qui, à leur tour, réalisent la fonction demandée en se référant à d'autres objets du programme. Naturellement, pour éviter unerécursion sans fin dans les appels, à un moment donné, l'objet transforme le message qui lui est adressé en messages destinés aux objets système standard fournis par le langage et l'environnement de programmation.

La stabilité et la contrôlabilité du système sont assurées par la division claire de la responsabilité des objets (un certain objet est responsable de chaque action), la définition sans ambiguïté des interfaces d'interaction inter-objets et l'isolation complète de la structure interne de l'objet de l'environnement externe (encapsulation).

La POO peut être définie de bien d'autres manières.

//-----------------------------------------------------------------------

Fin de la citation.

 
Реter Konow:

J'ai aimé la définition suivante de Wikipedia :

Laprogrammation orientée générique (POG) est uneméthodologie de programmation basée sur la représentation d'un programme comme un ensembled'objets, dont chacun est une instance d'une certaineclasse, et les classes forment une hiérarchie d'héritage [1].

C'est de la pure philosophie. Ainsi, ceux qui pensent qu'il n'y a pas de philosophie dans la programmation ont tort. La programmation objet est construite sur une base philosophique et, par conséquent, les programmeurs doivent être capables de penser de manière abstraite et philosophique. Moi, par exemple, je suis capable de le faire et j'ai des questions philosophiques sur ce concept. C'est logique et légitime. Pas de "Frankenstein". Je suis guidé par la question "et si la Terre n'était pas plate ?".


Voici l'article complet :

https://ru.wikipedia.org/wiki/Объектно-ориентированное_программирование

C'est de la philosophie.

Ce n'est pas du tout de la philosophie, ce sont des principes de contrôle d'un véhicule (automobile), un ensemble d'engrenages, d'axes, de pignons forment des structures plus compliquées et ainsi de suite jusqu'à la chose principale dans cette hiérarchie - le joint entre une roue et un siège

Ainsi, ceux qui pensent que la conduite d'une voiture est différente de la programmation sont écartés.


Pour continuer à jongler avec les termes, je suggère de se familiariser avec les termes taxonomie et/ouclassification à partir du même Wiki et plus loin par les liens proposés dans les articles du Wiki.

 

Je peux me tromper dans mes prédictions, mais si le concept continue à évoluer, il y aura un nouveau modèle d'objet, dont la construction demandera beaucoup moins d'efforts, et donc les systèmes se développeront plus rapidement. Cela conduira à l'abolition du processus de programmation et à la disparition de nombreux langages devenus rudimentaires. Cet avenir est probable, car il est logique.

Voici quelques thèses qui conduisent à de telles conclusions :

1. de l'Objet, la programmation va au Sujet (AI).

2. Pour écrire une IA, il est nécessaire d'accélérer considérablement le processus de programmation et de réduire la main d'œuvre.

3) Grâce aux nouvelles technologies et à une nouvelle représentation de l'Objet, la programmation peut dépasser le clavier et devenir beaucoup plus interactive.


Si l'évolution se poursuit, nous devrons inévitablement connaître une redistribution globale, qui inclut la disparition de professions et de spécialisations entières. Et l'émergence de nouveaux.

Raison: