![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
| Результаты опроса: Как именовать абстрактные классы? | |||
| AbstractInteger |
|
0 | 0% |
| CustomInteger |
|
0 | 0% |
| Abstract:Integer |
|
1 | 100.00% |
| Custom:Integer |
|
0 | 0% |
| По-другому, отпишусь в теме |
|
0 | 0% |
| Голосовавшие: 1. Вы еще не голосовали в этом опросе | |||
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
|
Хоть мой проект номинально закрыт, время от времени продолжаю думать. На днях задумался об правилах именования абстрактных классов. Ближайший аналог в Delphi -- классы типа TCustomControl, TCustomEdit и пр. В качестве маркера в них используется слово "Custom".
В Канторе классы могут быть вложены друг в друга, образуя пространства имен. Вложенные классы разделяются двоеточием. Взяв в качестве слов-маркеров "Abstract" и "Custom", получаем четыре варианта, отраженные в голосовании. Если кто хочет предложить другую систему, взятую из Java, C# или другого языка, милости просим. Не писал плотно на других языках с развитой системой классов. |
|
#2
|
|||
|
|||
|
я часто использую Base
|
|
#3
|
||||
|
||||
|
PersistentInt
NativeInt |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
||||
|
||||
|
Цитата:
Последний раз редактировалось M.A.D.M.A.N., 12.11.2014 в 15:29. |
|
#6
|
||||
|
||||
|
Как не назови, все равно не взлетит
|
|
#7
|
|||
|
|||
|
Ну если выбирать между Abstract и Custom, то Custom - это полноценный класс, у которого только некоторые свойства упрятаны в секцию protected, и в наследнике нужно только вытащить их в public / published. А в Abstract имеются абстрактные методы, которые обязательно нужно переопределить.
|
| Этот пользователь сказал Спасибо icWasya за это полезное сообщение: | ||
Freeman (12.11.2014)
| ||