Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как правильно назвать методы ?


Страницы:   1 2 3 4

Игорь Шевченко ©   (2005-12-15 13:01:00) 

Имеется объект с набором свойств и форма с набором контролов. Свойства объекта отображаются в контролах формы и заполняются содержимым контролов. Отображаются после вызова одного метода, заполняются после вызова другого.
Вопрос в том, как наиболее оптимально назвать эти методы, чтобы из названия однозначно было понятно, не глядя в реализацию, что эти методы делают. Методы планируется использовать в любой форме или иерархии форм, где требуется подобная функциональность, объекты и набор их свойств могут быть разными, формы и наборы контролов, сооотвественно, тоже.

Сейчас используются названия методов вида DisplayObject/FillObject,
но...неэстетично :) (с) известный анекдот


Zeqfreed   (2005-12-15 13:42:00) [61]

Игорь Шевченко ©   (15.12.05 13:01)
AllocateControlsProps / AbsorbControlsProps ?


umbra   (2005-12-15 13:39:00) [62]

2 Игорь Шевченко ©   (15.12.05 13:37) [13]

т.е. в названии не должно быть указания на объект, над которым оперируют эти методы?


Игорь Шевченко   (2005-12-15 13:37:00) [63]

Набережных С. ©   (15.12.05 13:34) [11]
umbra ©   (15.12.05 13:35) [12]

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


umbra   (2005-12-15 13:35:00) [64]


> А мишень тут причем ?

абстрактное название для объекта, тип и назаначение котрого неизвестны


Набережных С.   (2005-12-15 13:34:00) [65]


> Снимка нету

Хм, состояние свойств  набора контролов на момент вызова метода вполне можно назвать "снимком" состояния формы, ИМХО.

С цитатой-то согласен, потому и терзаю себе. Но что в результате получается - сам видишь:)) Жаль, уже убегать надо, ну да вечером посмотрю, кто чего выдаст:))


Игорь Шевченко   (2005-12-15 13:29:00) [66]

Набережных С. ©   (15.12.05 13:27) [8]

Снимка нету :) Есть объект, есть форма. Есть действие, которое и надо обозвать.


> Для меня имена придумывать тоже мука:)


"Важной частью пропагандируемого мною стиля программирования является
разложение сложных процедур на небольшие методы. Если делать это неправильно, то придется изрядно помучиться, выясняя, что же делают эти маленькие методы. Избежать таких мучений помогает назначение методам хороших имен. Методам следует давать имена, раскрывающие их назначение. Хороший способ для этого - представить себе, каким должен быть комментарий к методу, и преобразовать этот комментарий в имя метода.
Жизнь такова, что удачное имя может не сразу придти в голову. В подобной
ситуации может возникнуть соблазн бросить это занятие - в конце концов,
не в имени счастье. Это вас соблазняет бес, не слушайте его. Если вы видите, что у метода плохое имя, обязательно измените его. Помните, что ваш код в первую очередь предназначен человеку, а только потом - компьютеру.
Человеку нужны хорошие имена. Вспомните, сколько времени вы потратили,
пытаясь что-то сделать, и насколько проще было бы, окажись у пары методов более удачные имена. Создание хороших имен - это мастерство, требующее практики; совершенствование этого мастерства - ключ к превращению в действительно искусного программиста."

(с) Мартин Фаулер


Игорь Шевченко   (2005-12-15 13:27:00) [67]

umbra ©   (15.12.05 13:19) [6]


> Как обычно, Get - получает значения, Set - устанавливает.


Тут такой момент - и у формы и у объекта есть значения. У формы значениями является контролы, у объекта - свойства. Я запутаюсь.


> CaptureTarget/PopulateTarget


А мишень тут причем ? :) Хотелось бы, чтобы названия методов были очевидны не только мне :)

k2 ©   (15.12.05 13:16) [5]


> ObjectPropertiesFromControls/FillControlsFromObject :)


Хотелось бы, чтобы имя метода начиналось с глагола, это верно, так как метод подразумевает действие, но не хотелось бы, чтобы имя повторяло код. Код должен разъяснять, как именно производится то действие, которое заложено в названии метода :)


Набережных С.   (2005-12-15 13:27:00) [68]

CreateControlsSnapshot / RestoreFromSnapshot ?

Для меня имена придумывать тоже мука:)


umbra   (2005-12-15 13:22:00) [69]

CaptureTarget/PopulateTarget


umbra   (2005-12-15 13:19:00) [70]

Как обычно, Get - получает значения, Set - устанавливает.


k2   (2005-12-15 13:16:00) [71]

ObjectPropertiesFromControls/FillControlsFromObject :)


Игорь Шевченко   (2005-12-15 13:14:00) [72]

Джо ©   (15.12.05 13:12) [2]

Формы. Объекты не знают, что их можно отображать.


Игорь Шевченко   (2005-12-15 13:13:00) [73]


> GetProps/SetProps ?


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


Джо   (2005-12-15 13:12:00) [74]

А это методы формы? или чего?


umbra   (2005-12-15 13:08:00) [75]

GetProps/SetProps ?


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо