![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#11 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]()
Честно говоря, вообще не понимаю смысла вопроса.
Тогда - когда это удобнее. С моей точки зрения к показаниям относится: 1. Можно инкапсулировать данные. Когда данные нельзя инкапсулирова, ООП мне представляется не очень логичным. Кстати, в одной из соседних тем обсуждает перемножение матриц на ООП. Честно говоря, не совсем понимаю, ка это грамотно сделать. 2. Код планируется повторно использовать. 3. Есть нечто сложное, описываемое разнородными переменными и требуюшее для обработки несколько функций. Притом, это нечто может потребоваться в нескольких самостоятельных экземплярах. Кстати, мне кажется, действительно интересный вопрос - с задачей о перемножении матриц. Как ее организовать с учетом инкапсуляции? |
![]() |
![]() |
![]() |
#12 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,430
|
![]()
Ну нафлудили, так нафлудили
![]() s-andriano, тот человек любит кросспостить - http://programmersforum.ru/showthread.php?t=202837, может быть вам решение приглянется.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись
![]() |
![]() |
![]() |
![]() |
#13 | ||||
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]() Цитата:
![]() Цитата:
Цитата:
Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() Последний раз редактировалось Utkin; 28.05.2012 в 23:20. |
||||
![]() |
![]() |
![]() |
#14 | |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
![]() Цитата:
Увы, не приглянулось, т.к. напрочь отсутствует инкапсуляция. Может, есть какие мысли, как ее достичь? Или, может, этой задаче ООП принципиально противопоказан? Инкапсуляция: Как Вы предложите поступить в такой ситуации: некоторая сущность описывается несколькими массивами (для которых нужно выделять память), причем массивы - структур, а также некоторым набором простых переменных. Для доступа и обработки данных нужно несколько процедур. Данные должны быть инкапсулированы. Последний раз редактировалось Stilet; 28.05.2012 в 23:45. |
|
![]() |
![]() |
![]() |
#15 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
и данным такого же класса как она? инкапсулировать нужно грамотно. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#16 | |
Старожил
Регистрация: 04.02.2009
Сообщений: 17,351
|
![]() Цитата:
Маньяк-самоучка
Utkin появился в результате деления на нуль. Осторожно! Альтернативная логика ![]() Последний раз редактировалось Utkin; 29.05.2012 в 08:16. |
|
![]() |
![]() |
![]() |
#17 |
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]()
На мой взгляд, использование ООП оправдано, когда критичность выполнения кода и размер программы не имеют решающего значения. По своей сути, все тормоза новых ОС из него и произрастают) И всё более и более жёсткие требования к железу... это примерно как при стрельбе из пушки - ядро не круглое, а овальное и, чтобы им выстрелить, берут пушку большего калибра, а не приводят ядро к нужному виду... (сравнение утрированное, если что...)
Но опять же, не все объекты одинаково бесполезны и неэффективны. В этом и состоит мастерство программиста - правильно разложить задачу, чтобы точно знать, где лучше использовать объекты, а где от них воздержаться...
Правильно поставленная задача - три четверти решения.
|
![]() |
![]() |
![]() |
#18 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]() Цитата:
а реальность в кривом проектировании. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#19 | ||
Старожил
Регистрация: 08.02.2012
Сообщений: 2,173
|
![]() Цитата:
![]() Цитата:
Правильно поставленная задача - три четверти решения.
|
||
![]() |
![]() |
![]() |
#20 |
Сумрачная тень
Форумчанин
Регистрация: 05.03.2009
Сообщений: 689
|
![]()
Интересный вопрос, философский даже
![]() ![]() Ладно, многие скажут, что здесь можно и без ООП. Согласен. А как вы будете организовывать взаимодействие того же логгера, несколько сотен потоков разного назначения, GUI и т.п.? Код будет похож на сишный ![]()
"ковыряю изнутри" (с)
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Не будет ли ошибкой использовать инвок для случаев, когда он не требуется? | gramp | C# (си шарп) | 4 | 18.04.2012 20:41 |
Когда нужно присваивать.. Writeln(Sum:8:4) ? | Erlotaza | Общие вопросы Delphi | 1 | 09.03.2012 11:25 |
Try, throw, catch; нужно ли знать ООП PHP для изучения исключений? | alex455 | PHP | 1 | 01.08.2011 13:46 |
masm32 подменяет JZ на JE тогда, когда это совсем не нужно | notHaker | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 4 | 12.07.2011 17:57 |
сортировка, когда невозможно использовать свойства таблицы IndexFieldName | Римма | БД в Delphi | 5 | 07.09.2007 10:56 |