Android API как апофеоз процедурного программирования, или Добрый вечер, Бангалор!
vp — 09.12.2013
Имеется класс Calendar, а у него метод:public int get (int field)
в который передается "магическая константа", а метод выплевывает вам наружу разные компоненты даты-времени.
Подбор этих констант похож на творчество душевнобольного:
DAY_OF_MONTH
UNDECIMBER*
WEDNESDAY
WEEK_OF_MONTH
YEAR
DECEMBER
ERA
HOUR
MILLISECOND
PM
ZONE_OFFSET
То есть народ пропустил все 90-е годы, все нулевые, ничего не слышал об ООП, но сделал класс "с одним супер методом", воплотил самый кошмарный процедурный подход. Это говно прошло все уровни согласования, и вылилось в API...
Мне кажется, что на этом примере можно очень много разобрать. У человека так или иначе была задача: реализовать поведение объекта. Определенные свойства выделяются в проперти, определенные действия выделяются в методы. Сходные действия группируются в методы с параметрами....
Дык вот, "декабрь", "год" и "день недели" - это сходные свойства. Знаете, что у них сходного? Правильно! Это числа!
После этого берешь открываешь реализацию аналогичного класса где-нибудь в c# и смотришь, пока не пройдут мысли о тщете всего сущего.
----
* UNDECIMBER - название 13-го месяца в 12-месячном году согласно индусской мифологии.
|
|
</> |
Заказать продвижение сайта: как выбрать оптимальную стратегию
шухер
Особенности жизни в стране, где работают социальные лифты и мало автомобильных
Еще одно доказательство подмены Петра I
С Новым годом из СССР - обобщение
Самовосхваления западной культуры, столь поразительно расходящиеся с реальностью
Принцу Винсенту и Принцессе Йозефине - 15!
Где-то по комнатам ветер прошел
Споры о дизайне банкнот

