понедельник, 28 ноября 2011 г.

Совершенный код

"...Если в жаpком бою испытал, что почем,- 
Значит, нужные книги ты в детстве читал!"
(В.Высоцкий)

Наконец-то я дочитал замечательную книгу Стива Макконела "Совершенный код".

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

Несмотря на свой угрожающий объем (более 700 страниц) читается она легко. Мне ни разу не довелось заскучать читая ее. Так же она всеобъемлющая. Кажется, что она про "все программирование вообще", но в конце каждой главы есть список литературы по теме. В этих списках почти все - золотая классика программирования. Так, что любой сможет удовлетворить свое любопытство в полной мере по любому описываемому вопросу. Информация в книге вообще организована очень толково. Контрольные списки, основные тезисы по каждой главе, продуманная структура оглавления. Все сделано для того, что материал усвоился максимально полно.

Мне кажется, что самую большую пользу она может принести начинающему. Однако боюсь, что без некоторого опыта в разработке кое-какие моменты книги могут выглядеть спорно. Но, не сомневайтесь, Макконел знает о чем говорит. К тому же он сам достаточно убедителен в таких вещах.

Очень приятно то, в книге нет догматов. Автор в каждой главе советует "включать свою голову" и делать свой выбор в пользу того или иного способа сообразно ситуации. Например, нет категорического запрета использования "goto", а только внимательный анализ и выводы о том, что его использование приведет к проблемам и рекомендации избегать использования этого оператора. Но, как пишет сам Макконел, "если вы твердо уверены, что это единственный правильный способ"...

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

После того, как я прочел эту книгу, я больше не могу писать код как раньше. Мой код стал лучше и опрятнее.
И теперь моя жизнь разделилась на две части. "До" прочтения и "после".

Побольше читайте, ведь "хуже чем не прочесть ни одной книги за последние 90 дней - это не прочесть ни одной книги за последние 90 дней и считать, что все в порядке".

А я желаю вам хорошего дня и хорошего кода.

четверг, 17 ноября 2011 г.

Вам, овертаймеры!

xxx: Здравствуй, милый!
yyy: дря
xxx: Уже первый час, а ты все на работе... Что-то случилось, зайка?
yyy: да б$%. Мозг уже свернул. Все что написал за выходные - не компилится и падает. Эксемели не валидируются, скрипты все с синтакс еррорами. Лайаут в жопе. А главное - ВСЕ ПРАВИЛЬНО.
yyy: Я же на выходных все отладил...
xxx: Любимый... Только не обижайся, ладно?
xxx: Возможно дело в том, что после того как ты отрубился под утро в понедельник... я взяла твой лаптоп и кое-где поменяла английские буквы "С" и "c" на русские "С" и "с"...
xxx: ПОТОМУ ЧТО НЕХУЙ РАБОТАТЬ ВЫХОДНЫМИ, ТРУДОГОЛИК ХЕРОВ
xxx: Так что приезжай домой, у нас сегодня котлетки...
yyy: Сссука бессердечная.
yyy: Выезжаю.

среда, 16 ноября 2011 г.

XDTO-пакеты. Неименованные типы

В продолжение к посту XDTO-пакеты, xml, xml schema несколько слов о неименованных типах.

Давайте посмотрим, что будет, если в конструкторе XDTO-пакета к свойству добавить определение типа и, в свою очередь, добавить туда еще свойств:

Как видите, свойства "Адрес" и "Телефон" сложного типа ("ОбъектXDTO"). А телефон еще и списковый тип (я задал "Максимальное количество" равное трем).

пятница, 11 ноября 2011 г.

XDTO-пакеты, xml, xml schema

«Гло́кая ку́здра ште́ко будлану́ла бо́кра и курдя́чит бокрёнка»
(первая ассоциация, пришедшая в голову
после прочтения "мана" о XDTO-пакетах)

Приветствую, многоуважаемый all!

После долгого молчания, вызванного тем, что я сейчас больше читаю, чем пишу (чукча читатель, а не писатель), я решил поделиться с вами небольшим обзором, в котором хочу рассказать о том, что я узнал о XDTO-пакетах и обо всем, что с ними связано. Сразу скажу, что в интернете есть документация на эту тему и вообще гугл никто не отменял, но, на мой взгляд, ее как-то маловато. Пусть будет еще. Итак.

С чего начинается?..

С чего начинаются XDTO-пакеты для неискушенного разработчика? Для меня они начались с вопроса: "А что это еще за хренотень в дереве метаданных?" И еще я знал, что это что-то про xml. Но мы начнем не с этого. А с объекта ФабрикаXDTO. Как можно догадаться из названия, это фабрика объектов (XDTO расшифровывается как XML Data Transfer Objects).

четверг, 10 ноября 2011 г.

DD/MM/YY vs MM/DD/YY

Stupid Americans! Now is 11/11/11, not 11/11/11

from lleo

среда, 9 ноября 2011 г.

вторник, 8 ноября 2011 г.

Человеку свойственно ошибаться, но чтобы провалить дело капитально, необходим компьютер.
Алан Купер says