|
|
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
LumixDima Tмы говорим про справочники или обо всем на свете? Мы обсуждаем общетеоретическую концепцию копипаст vs абстракция, но на примере справочников. Общетеоретически в умных книжках все написано, но на практике далеко не всегда применимо. LumixDima TЧто можно дописывать например в коде кнопки "Добавить" ? Там вызов формы правки новой записи. Это никак ни от чего не зависит, и никогда не поменяется. Какой вы наивный! Даже в таком малюсеньком элементе может дохера что поменяться. Не говоря уже о расположении и показа этой кнопки в зависимости от тех или иных условий. Кнопка может стать иконкой, а может на Ctrl повешают дополнительный функционал, ещё к ней можно прикрутить контекстное меню с опциями создания. Там можно такой зоопарк устроить, то мама не горюй 2: первая кровь. "Бардак автоматизировать нельзя" как говорил один мой начальник у кого я начинал. если интерфейс представляет из себя слегка упорядоченный хаос, то лучше копипастить. LumixDima TЗачем этот код копипастить ? Если что, то кнопка добавления реализована в виде отдельной функции, принимающей параметры. Что мешает представить кнопку в виде класса? Это просто удобнее хотя бы потому что возникает еще один слой видимости переменных, т.е. свойств класса. а функция так и остается, только в виде метода класса. LumixDima TНапример у меня есть свой класс грида, все остальные производные от него, изначально я заложил туда весь полезный (как я считал на тот момент) функционал сверх стандартного, но через пять лет понял что классная фича скопировать все содержимое грида в буфер обмена чтоб потом вставить в эксель например, час работы, перекомпиляция и все мои гриды по правой кнопке копируют свое содержимое в буфер обмена. А с копипастом я бы перелопачивал все написанное за пять лет. Пример тухлый, потому что у нас бы за 5 лет накопилось 186 видов разных гридов, а если бы мы спихали бы их один грид и это все управлялось бы параметрами, то потом в этом гриде вообще ни один человек не смог бы разобраться, не уронив все остальные. Я не говорил что один класс на 186 случаев. Наоборот 186 классов на каждый случай, но образованных от одного базового. По сути грид это класс кем-то написанный, в моем случае (Visual FoxPro) написал MS, я просто его допилил слегка под свои нужды (сортировка колонки по клику на заголовке, быстрый поиск по первым буквам и т.п.). Не вижу смысла в продолжении дискуссии, я свое мнение сказал, ООП удобнее, но если нет желания его осваивать то можно и дальше на процедурном жить. Может нет смысла переписывать слишком много уже понаписанного. Взять тот же виндовс, в его основе (WinAPI) нет ООП, только функции и структуры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2014, 20:32 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Сойдемся уже на том, что все вышеприведённые рассуждения - это извечное "архитекторы против кодеров" "Архитектор" заложил своё вИдение в проект настолько, наколько вИдел в момент проектирования - "Первый кодер" же (возможно, тот же самый разработчик) реализовал это видЕние. А далее - ньюансы... - некоторые кодеры тоже способны прочувствовать глубины идей разработчика (aka архитектор), и пытаются их развить без ущерба - некоторые кодеры способны прочувствовать идеи разработчика, и пытаются их развить без ущерба (в их понимании) - некоторые кодеры способны прочувствовать идеи, но неспособны развить имеющийся код - некоторые кодеры неспособны прочувствовать идеи, но они пытаются развить имеющийся код - некоторым кодерам вообще по... на идею, но код их интересует, и они его развивают - некоторым кодерам вообще по..., но они способны развить код - некоторые вообще не кодеры - etc... И тут снова приходит Архитектор А люмикс тут спрашивает про возможность процесса творения в Раю, когда там остались одни яблони... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.01.2014, 21:31 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Dima T . Взять тот же виндовс, в его основе (WinAPI) нет ООП, только функции и структуры. причем ими представлены объекты - названия типа window class и wait for single object ни о чем не говорят? по теме если в стандартном справочнике слишком много логики переключателей, то можно например разобрать его на более мелкие функции и собирать из них потом нестандартные справочники. Или абстрагироваться от реализации классами, интерфейсами и пр. мне кажется стоит привести конкретный код, чтобы говорить предметно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2014, 16:29 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
f#Dima T. Взять тот же виндовс, в его основе (WinAPI) нет ООП, только функции и структуры. причем ими представлены объекты - названия типа window class и wait for single object ни о чем не говорят? Не говорят. Может это маркетинг. С точки зрения разработки ОС предпочтительнее структуры и функции, т.к. использование ООП сильнее нагружает процессор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2014, 19:19 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Dima TС точки зрения разработки ОС предпочтительнее структуры и функции, т.к. использование ООП сильнее нагружает процессор."Гы-гы". Сильнее нагружается совсем не процессор, а всяческие неявности вроде this и прочих невидимых аргументов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2014, 20:02 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovDima TС точки зрения разработки ОС предпочтительнее структуры и функции, т.к. использование ООП сильнее нагружает процессор."Гы-гы". Сильнее нагружается совсем не процессор, а всяческие неявности вроде this и прочих невидимых аргументов. а всяческие неявности вроде this чем исполняются? USB-контроллером? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2014, 20:06 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Dima TНе говорят. Может это маркетинг. С точки зрения разработки ОС предпочтительнее структуры и функции, т.к. использование ООП сильнее нагружает процессор. Маркетинг в именах функций - это сильно. GUI, как и OOP начал свое шествие с PARC оттуда все и передрали. http://obj-o.blogspot.ru/2008/07/blog-post.html Изначально принцип состоял в том, что система собирается из объектов обменивающиеся сообщениями. Очень похоже на окна винды, не правда ли? Классы окон оттуда же. WaitForSingleObject так называется потому, что - полисорфен - работает с несколькими типами объектов ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.01.2014, 23:43 |
|
||
|
Критерий обратного сплитования
|
|||
|---|---|---|---|
|
#18+
Dima Tа всяческие неявности вроде this чем исполняются?Проблема не в том, что они исполняются, а в том, что они неявности. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.02.2014, 00:41 |
|
||
|
|

start [/forum/topic.php?fid=16&msg=38545745&tid=1341483]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
29ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
| others: | 239ms |
| total: | 354ms |

| 0 / 0 |
