Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Прочее";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Вниз

ООП vs Copy/Paste   Найти похожие ветки 

 
StriderMan ©   (2006-07-27 14:37) [0]

частенько при разработке встает задачка сделать класс (форму, дата-модуль и т.п.) аналогичный уже существующему.

Что вы сделаете: скопируете и "подправите" аналог, или заведете базовый класс?

какими критериями вы руководствуетесь при выборе решения такой задачи?


 
Думкин ©   (2006-07-27 14:41) [1]

Прежде чем писать - подумаю и по мере возможностей спроектирую. Чтобы эта задача встала не случайно и влруг. А тогда и с базовым классом проблем нет.


 
For kaif   (2006-07-27 14:43) [2]

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


 
tesseract ©   (2006-07-27 14:44) [3]

как правило дописываю существующие классы / модули.
Если совсем часто используется -  в репозиторий.


 
Игорь Шевченко ©   (2006-07-27 14:44) [4]


> Что вы сделаете: скопируете и "подправите" аналог, или заведете
> базовый класс?


Заведу базовый. У меня времени совсем нету.


 
StriderMan ©   (2006-07-27 14:55) [5]


> Думкин ©   (27.07.06 14:41) [1]

проблема часто встает при дописывании софта, особенно если изначально не предполагалось(или не до конца проработали) добавление аналогичных классов, а также часто при работе над чужим проектом.

Кстати параллельно встает вопрос:

есть десяток аналогичных классов, сделанных копи-пастом. периодически добавляются новые.

что делать?:
продолжать копи-паст
потратить время на написание базового класса и переписать старые,
писать только новые с базовым классом, а старые не трогать


 
For kaif   (2006-07-27 14:56) [6]

писать только новые с базовым классом, а старые не трогать


 
Игорь Шевченко ©   (2006-07-27 14:57) [7]


> Кстати параллельно встает вопрос:
>
> есть десяток аналогичных классов, сделанных копи-пастом.
>  периодически добавляются новые.
>
> что делать?:
> продолжать копи-паст
> потратить время на написание базового класса и переписать
> старые,
> писать только новые с базовым классом, а старые не трогать


Купить книжку Мартина Фаулера "Рефакторинг или улучшение существующего кода". Прочитать. Действовать по прочитанному.


 
StriderMan ©   (2006-07-27 15:01) [8]


> Купить книжку Мартина Фаулера "Рефакторинг или улучшение
> существующего кода". Прочитать. Действовать по прочитанному.

это дольше чем копи-паст или создание базовых классов :)))

а в электронном виде не имеется?


 
Игорь Шевченко ©   (2006-07-27 15:45) [9]


> это дольше чем копи-паст или создание базовых классов


Ты спросил - я ответил. Просьб тебя уговаривать ко мне не поступало.


> а в электронном виде не имеется?


Яндекс на что человеку даден ?


 
StriderMan ©   (2006-07-27 15:49) [10]


> Яндекс на что человеку даден ?

яндекс даден если не даден добрыми людьми нужный инф

уже ищу


> Просьб тебя уговаривать ко мне не поступало.

Мастер, ну уговорите меня, прошу Вас...!!!
это ж я так... в шутку ...  :)


 
troits ©   (2006-07-27 18:41) [11]

> StriderMan ©
Я тоже ищу эту книгу в эл. виде. Пока нашел нераспознанный pdf 20мб. Читать вполне можно. Если есть ссылка на распознанный, поделитесь, плз.
http://www.badongo.com/file/991103


 
Джо ©   (2006-07-28 05:02) [12]

Есть chm-файл, 1.56 MB, оригинальная английская версия. Если нужно кому, пишите на почту.


 
Думкин ©   (2006-07-28 05:21) [13]

> StriderMan ©   (27.07.06 14:55) [5]

Я понимаю, что часто там. Но при хорошем подходе изначально писавшего - такое редкость. А если подход не очень - то тут всякое. И ценность советов вряд ли превысит Фаулера.



Страницы: 1 вся ветка

Форум: "Прочее";
Текущий архив: 2006.08.27;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.037 c
4-1146637983
razor
2006-05-03 10:33
2006.08.27
Как получить данные с мат. платы (данные с термодатчиков и т.д.)


15-1154069603
Elen
2006-07-28 10:53
2006.08.27
Ошибка в SoftICE


15-1153778077
lakb/proxy/
2006-07-25 01:54
2006.08.27
Component и русский аналог


11-1131525779
algambra
2005-11-09 11:42
2006.08.27
В любом месте области формы по клику мышки срабатывает процедура


2-1154950938
webpauk
2006-08-07 15:42
2006.08.27
TstringList.AddObject





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский