Вопрос знатокам ООП. - страница 26

 
Реter Konow:

Вы ничего не слышите, предложения читать приличных авторов отвергаете, мол опыт, всё и так знаю.

Я уже писал - связывать все объекты родственными связями через наследование - это большая ошибка, которую не сразу понимаешь. Но вам хочется своих шишек, ну что же, удачи.

 
Vict:

Вы ничего не слышите, предложения читать приличных авторов отвергаете, мол опыт, всё и так знаю.

Я уже писал - связывать все объекты родственными связями через наследование - это большая ошибка, которую не сразу понимаешь. Но вам хочется своих шишек, ну что же, удачи.

Извиняйте, я только в начале пути.))
 
Реter Konow:
Извиняйте, я только в начале пути.))
Затянулось похоже начало-то. По времени, так как раз Вашу тему на ООП переложить, понять, что хрень получилась и начать вдумчиво прикидывать архитектуру решения. Меньше лирики  - больше практики.
 
Реter Konow:
Поясню. Суть в том, что ООП копирует бессознательное распределение информации в нашей памяти. Информация "раскладывается" каскадно и "древовидно". Это обуславливается архетипом бессознательного (скрытым механизмом). Люди "нащупали" этот механизм и стали успешно его применять в программировании. ООП реализует передачу общих свойств и функций по цепочкам наследования, по той же схеме, что и наше бессознательное. 


Лучше понимая принцип работы нашего сознания и бессознательного, мы сможем воспроизвести механизм их работы в компьютере. Я просто отстранился от технических деталей и рассмотрел корень концепции.

ты когда курить бросишь?

 
Реter Konow:

Немало размышлял над концепцией ООП и вот что:

... ведь мы просто копируем собственные бессознательные паттерны в работе с информацией. 

Да, Пётр, всё - есть эманации Орла.
Хватит прокрастинировать. 
Просто сделай это! Начни кодить объектами.


 
Nikolai Semko:

Да, Пётр, всё есть - эманации Орла.
Хватит прокрастинировать. 
Просто сделай это! Начни кодить объектами.


Ага, во имя конструктора, деструктора и святого наследования.)))
 
Vladimir Simakov:
Затянулось похоже начало-то. По времени, так как раз Вашу тему на ООП переложить, понять, что хрень получилась и начать вдумчиво прикидывать архитектуру решения. Меньше лирики  - больше практики.

Мой подход - это тоже ООП. Только в ином представлении и меньшей "объектности" на текущий момент. Но суть та же. 

1. Инкапсуляция в ядре имеется.

2. Частичный полиморфизм. То есть, движок работает с окнами и элементами как таковыми, но в каждом блоке есть вставки условий определяющих работу с конкретными типами элементов.

3. На текущий момент отсутствует наследование свойств объектов, потому как графическое ядро не предусматривает иерархию. Но, это исправимо.

Я хочу создать "облегченный" ООП на основе ядра и движка, с минимальным синтаксисом, в котором будет цифровое представление объектов в ядре, полноценная иерархия, классификация, наследование свойств и функций. То есть, тот же ООП, но мой. 

 
Nikolai Semko:

Да, Пётр, всё - есть эманации Орла.
Хватит прокрастинировать. 
Просто сделай это! Начни кодить объектами.


Николай, я тут на ИИ замахнулся и стандартный ООП потребует вечности, чтобы построить минимальную базу знаний. Мой подход тоже работает с объектами, но они намного более сжато представлены. Их функционал тоже. Мой подход это тоже ООП, просто еще не в полную силу развит. Это поправимо. Ты же представляешь, какое преимущество дает цифровое представление объектов? Их же можно плодить и плодить без остановки. Не ссылки на классы, не экземпляры классов, а полноценные объекты, описанные всеми возможными свойствами. Со стандартным ООП так легко не получиться.
 
Реter Konow:

Немало размышлял над концепцией ООП и вот что:

Абстрагируемся от синтаксиса и технических терминов, оставив понятия  "Класс", "Объект", "Свойство", "Инкапсуляция", "Полиморфизм", "Наследование". Опишу философский "корень" концепции.

Действительность воспринимается сознанием через призмы "Пространства", "Времени" и "Материи" (так работают органы чувств), а  "Объект" - это дискретный результат их непрерывного взаимодействия.

Многообразие форм взаимодействия порождает многообразие объектов, которые "насаждаются" бессознательным субъекта на некий "каркас". Этот каркас имеет ветвистую, каскадную структуру и "встроен" в бессознательное, являясь одним из его "архетипов". Каркас принимает на себя новые и новые объекты (информацию о них), которые распределяются по его структуре. Отсюда и берет начало концепция ООП. Это осознанное распределение и связывание объектов имитирующее "алгоритм" бессознательного. Освоивший методы собственного мышления субъект, способен моделировать его работу в механизме, являющимся "калькой" мозга - компьютере. Пусть компьютер лишь жалкая пародия на мозг, но ведь и сам человек воспринимает лишь тени объективного мира. Каскадный, ветвистый архетип, это "паттерн" распределения объектов, свойств, процессов и всей информации в целом, внутри нашей памяти. Это биологический инструмент упрощения восприятия действительности, структурирующий модель окружающего мира. Это нам дано от Природы. Осознание собственного "природного" (т.е. бессознательного) механизма обработки информации - уровень самосознания, необходимый для  использования ООП.

Рассмотрим этот неявный, биологической, "древовидный" архетип, упрощающий запоминание, обучение и восприятие, в контексте его "искуственного" применения. В ООП, мы "продуцируем" объекты инкапсулируя их описания в классах, где устанавливаем их свойства и значения. Взаимосвязи объектов отражаются в их классификации, и реализуются через наследование свойств и методов от глобальных к частным. Практически, это выглядит так: каждый частный объект - просто объект и следовательно, имеет все свойства просто объекта + свои частные свойства. Производные от него объекты будут обладать его частными свойствами как своими общими, но будут иметь свои частные свойства. Далее, цепочка может идти и ветвиться бесконечно. То же самое, с методами объектов. Метод отражает действие, взаимодействие, процесс, смену состояний. Методы объектов распределяются от общих к частным как и свойства. Если есть некий общий процесс, то каждая его дискретная форма будет обладать его свойствами и своими собственными. А это полиморфизм. То есть, в отличии от перегрузки, полиморфизм предоставляет иную частную реализацию базовой функции при сохранении ее базового механизма. Это - "функциональное" наследование.

Как мы видим, "древовидность" в ООП повсюду. Какие бы схемы не придумывали, а все равно получиться "дерево".)) Но, это и правильно, ведь мы просто копируем собственные бессознательные паттерны в работе с информацией.

хм, листал сегодня Хабр, почему то  стиль изложения на Ваш очень похож, вернее логика целесообразности ООП:

Запись 3

...

За шарпом я провёл 4-5 вечеров. Прочитал две главы из учебника. Что я могу сказать? Меня совершенно не вдохновляет академический подход, основанный на написании бессмысленных программ, делающих абстрактрые вычисления. Не уверен, что смогу гордиться приложением, которое считает площадь треугольника.

....

Запись 4

Первое препятствие. Дошел до понятия классов и объектов. Понятие совершенно непонятно. Как бы сама идея ясна, но как и для чего её применить? Создать классы для игрока, казино и рулетки? Потом придумывать объекты в них? И что они будут делать? Слишком притянуто. Кажется чем-то неестественным и только запутывает программу.

Дошло до меня через несколько дней. Я гулял с сыном на детской площадке и смотрел на мир вокруг объектно-ориентированными глазами.

class Парк {string ПаркName;}, 

class Ребёнок {string РебёнокName; int РебёнокAge;} 

Ребёнок Дима = new Ребёнок ();

Ребёнок Саша = new Ребёнок ();


https://habr.com/ru/post/466641/
 
Igor Makanu:

хм, листал сегодня Хабр, почему то  стиль изложения на Ваш очень похож, вернее логика целесообразности ООП:

Запись 3

...

За шарпом я провёл 4-5 вечеров. Прочитал две главы из учебника. Что я могу сказать? Меня совершенно не вдохновляет академический подход, основанный на написании бессмысленных программ, делающих абстрактрые вычисления. Не уверен, что смогу гордиться приложением, которое считает площадь треугольника.

....

Запись 4

Первое препятствие. Дошел до понятия классов и объектов. Понятие совершенно непонятно. Как бы сама идея ясна, но как и для чего её применить? Создать классы для игрока, казино и рулетки? Потом придумывать объекты в них? И что они будут делать? Слишком притянуто. Кажется чем-то неестественным и только запутывает программу.

Дошло до меня через несколько дней. Я гулял с сыном на детской площадке и смотрел на мир вокруг объектно-ориентированными глазами.


https://habr.com/ru/post/466641/

Это пятерочка!)))

Причина обращения: