Показаны сообщения с ярлыком литература. Показать все сообщения
Показаны сообщения с ярлыком литература. Показать все сообщения

среда, 14 марта 2012 г.

Профессиональное руководство по SQL Server: хранимые процедуры, XML, HTML

The guru's guide to SQL Server stored procedures, XML, and HTML
Автор: Хендерсон (Henderson)




“Вместо того чтобы просто показывать различные трюки и тонкости синтаксиса, эта книга обучает философии программирования в Transact-SQL. Она объясняет, как применять эту философию для создания собственных способов кодирования и решения повседневных проблем.”

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

Общее впечатление
     Хорошая книга, но с небольшими недостатками. Читать легко и интересно несмотря на небольшую беспорядочность или хаотичность структуры материала, причем интересно читать даже “левые” главы :) (кроме 24, 25 и 26).

Целевая аудитория
     Книга ориентирована на опытных разработчиков. В первую очередь - для тех, кто хорошо знаком с MS SQL и Transact-SQL. Думаю, для новичков она будет сложна и, как следствие, скучна.

Особенности
     Упор в книге автор делает все таки на хранимые процедуры.
     Во введении автор приводит полезные книги разных тематик, которые он сам использовал и рекомендует для обучения: ООП, паттерны проектирования, тестирование, рефакторинг. Я сам пару взял для себя.
   Материал книги ориентирован на версии SQL Server 2000 и 2005, вследствие чего информация местами устарела.
     Немного огорчили главы 24, 25 и 26. Это уже перебор и, имхо, не допустимо в технической литературе. Либо автор был морально истощен под конец написания книги, либо - решил показать всю многогранность своего таланта… L
     Еще один недостаток – автор затрагивает  достаточное количество “левых” тем в узкоспециализированной (как должно быть по логике вещей судя по названию) книге. Местами возникает ощущение, что читаешь какой-то обычный учебник по информатике для студентов 1-го курса, где поверхностно описываются разные технологии.

По главам
   1 глава посвящена хранимым процедурам. Среди прочих описываются системные процедуры: sp_helptext (просмотр исходного кода процедуры), sp_spaceused (построение отчета об утилизации дискового пространства БД). Рассказывается об особенностях использования настроек и параметров окружения SQL Server. Временные, системные и внутренние хранимые процедуры.
   2 глава - оформление исходного кода. Мне показалось, что подобная информация должна идти в виде приложения, а  не вклиниваться посреди книги. Конечно, там написаны вполне разумные вещи, но большинство данных в главе рекомендаций любой здравомыслящий разработчик итак, думаю, соблюдает.
   3 глава - конкретные советы с примерами. Вся “соль” то ценное, что может быть в любой книге. Рассматриваются паттерны проектирования путем проведения аналогии с  эквивалентными идиомами T-SQL.
     5 глава содержит много теоретических сведений по проектированию. Детально на примере рассматривается 3 стадии разработки проектов: анализ (построение модели бизнесс-процессов), проектирование (нормализированная E-R-модель), разработка. Есть словарь терминов E-R-моделирования. Описаны 5-нормальных форм. На примере рассмотрена работа с пакетом CASE-средств моделирования Grandite  Silverrun BPM, ERX, RDM.
     Глава 11 содержит довольно интересную информацию о трансформации данных БД в HTML, я не сталкивался с подобными приемами использования T-SQL.
     12 глава - введение в XML. Довольно обширная глава с описанием стандарта XML. Автор рассказывает об XML, его особенностях, об валидации DTD и XML Schema, об использовании XSLT для преобразования XML в степени достаточной для того, чтоб разобраться что к чему. Затрагиваются вопросы эффективности использования XML в сравнении с HTML. Есть ссылки на литературу по XML и описание программных инструментальных средств для работы с XML/DTD/XSLT.
     В главе посвященной автоматизации и COM  автор не упомянул о настройке конфигурации SQL Server-а для выполнения OA-процедур, и если вы будете пытаться выполнить код из листингов  примеров – то, скорее всего, получите сообщение об ошибке.
     Глава 21 – хранимые процедуры для администрирования. Интересные примеры хранимых процедур в связке с использованием xp_cmdshell и применением специальных приемов и особенностей программирования T-SQL. Дается очень неплохое описание некоторых не документированных процедур, но, к сожалению, большинство из них актуальны для SQL Server версий 2000-2005.
    22 глава. Полезным дополнением к материалу книги является описание не документированных команд DBCC (порядка 35 штук), не документированных Transact-SQL функций и флагов трассировки SQL Server.
     Очень хороша глава 23. Она посвящена разработке dll-библиотек расширенных хранимых процедур, что можно трактовать, как работу с хранимыми процедурами на практически самом низком уровне (ниже только ASM J). Присутствуют: листинги кода *.dll–ок процедур на С/C++; описание способа подключения откомпилированных процедур к SQL Server; примеры использования.


суббота, 21 января 2012 г.

Объектно-ориентированный анализ и проектирование с примерами приложений Третье издание


Object-oriented analysis and design with application Third edition
Авторы: Буч(Booch), Максимчук(Maksimchuk)



Общее впечатление

Довольно неоднозначная книга. Палитра ощущений при прочтении, у меня лично, менялась от сильной заинтересованности до безразличной сонливости. Видимо, мое такое неоднозначное восприятие обусловлено тем, что книга по своей сути – для обучения проектировщиков и менеджеров, а не девелоперов. Как следствие - некоторые главы были для меня не интересны, а некоторые - наоборот.
Раньше я сталкивался, в основном, с книгами по программированию, поэтому данное издание выглядело довольно контрастно, в сравнении с остальной прочитанной литературой.
Целевая аудитория

Мое мнение - книга для новичков-проектировщиков. Присутствует хорошее поясняющее изложение, детальное описание, UML – схемы. Рассматриваются разнообразные международные стандарты в областях проектирования и разработки и  соприкасаемых с ними областях. Приводятся ссылки и цитаты на труды специалистов в областях проектирования и ООА\ ООP\OOD. Есть словарь терминов.
Особенности

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


Основной недочет русской редакции – местами, довольно объемные информационные блоки-врезки, вставлены не продуманно. Они перебивают основные текстовые блоки, в результате – теряется смысл, приходится пролистывать несколько страниц назад/вперд, чтоб вспомнить о чем шла речь в тексте. Особенно четко чувствуется дискомфорт, когда читаешь главы с примерами.
По главам


Первые 4 главы (1-ая часть) - ввод в ООП. Написаны, конечно, очень четко, на 10 баллов. Я бы рекомендовал для тех, кто собирается изучать данную тему.
 5-ая глава посвящена рассмотрению инструмента проектирования UML. В основном, приводятся всевозможные виды UML-диаграмм. Так как я не изучал UML – то мне сложно однозначно охарактеризовать степень качества изложенного.
В 6-ой главе рассматриваются основные принципи объектно-ориентированного анализа и проектирования. Также отлично все расписано, как и в первой части книги.
7-ая глава показалась мне немного мутной. Я так понял, что эта глава ориентирована на менеджеров а не разработчиков, видимо поэтому мне было откровенно скучно ее читать. Написано много о разных аспектах связанных с околоразработочной суетой.
Главы 8-12 – примеры. 5 абстрактных примеров для наглядной демонстрации использования связки ООА\ООП\ООП. Весь процесс разработки подается постепенно от проектирования, в первом примере, – до реализации, в последнем.
Библиография очень большая и занимает около 80 страниц, но все специализированные научные труды датируются, в основном, 60-90-ми годами (здесь, конечно, следует учитывать тот факт, что это 3-е переиздание).