Рецензии на книгу
"Программирование баз данных Oracle для профессионалов"


03.09.2007
Oracle Magazine RE (портал)
Виктор Абрамов, Анатолий Бачин
http://www.oracle.com/global/ru/oramag/aug2007/book_grinfeld_dialektika.html

Название этой рецензии (в силу положенной для него краткости) не отражает полностью то, как бы хотели рецензенты назвать свою работу. Полное название могло бы звучать так: "Книга для профессиональных не Oracle-программистов, переходящих к профессиональному использованию базы данных Oracle в разработках прикладных программ". Или же просто "Профессиональное программирование на Oracle", как собственно и назван американский оригинал - "Professional Oracle Programming" - этой книги. Ключевое слово в любом именовании - профессиональный. И такое название полностью определило бы и категорию специалистов, для которых предназначена эта книга, и особенности ее построения, и особенности подборки включенных в нее материалов, и стиль, которым она написана.

Действительно, для архитекторов приложений и данных, аналитиков и конечных пользователей книга Р.Гринвальда со товарищи непосредственно не подходит, поскольку в ней рассматриваются практически только языки и средства программирования именно для баз данных Oracle. Для профессиональных администаторов других баз данных в ней приведены, пожалуй, слишком краткие и даже можно сказать весьма поверхностные сведения по архитектуре, составу, комплектации и обслуживанию собственно базы данных Oracle, по функционированию ее экземпляра и тому подобным вопросам, чтобы можно было пользоваться этой книгой в качестве руководства, справочника или учебника. Так кому же нужна такая книга?! - Уже состоявшимся профессиональным программистам, которые создают прикладные системы и планируют применять в них СУБД Oracle.

В анонсе на обложке говорится, что ее читатели должны обладать базовыми знаниями по Oracle, Java и SQL. На наш взгляд, это желательно, но не обязательно. Эту книгу отличает от других книг по Oracle очень четкий, не учебный, но профессиональный подход к вопросам программирования приложений, запросов, задач, подход, отражающий уже сложившееся профессиональное мышление программиста, учет уже имеющихся профессиональных знаний и навыков, наработанных на других системах понимания и опыта. В чем это выражается?! - В отсутствии или быстрой проговорке достаточно общеизвестных начальных сведений и знаний, которыми обладает каждый программист, уже профессионально состоявшийся для любой SQL-ориентированной базы данных. Сэкономленное время и внимание читателя можно благодатно использовать на ознакомление с присущими именно базам данных Oracle возможностям. По собственному опыту рецензенты знают, что многие сведения, уже обычные для Oracle-профессионала, вызывают искренний интерес и желание разобраться у многих профессионалов других SQL- баз данных. Приведем в пример главу 3 "Обслуживание множества пользователей", которая включает среди других такие небольшие эссе: "Целостность данных", "Изоляция", "Сериализация", "Блокировки", "Уровни изоляции", "Конфликтные ситуации", "Влияние MVRC на производительность и целостность данных"... ["MVRC означает "multiversioning and read consistency" (многоверсионность и согласованность чтения) – две наиболее важные концепции СУБД Oracle" - Том Кайт. http://www.oracle.com/technology/oramag/oracle/03-may/o33asktom.html]. Не будет повторяться, но то же самое можно написать о материалах главы 12 "Другие структуры базы данных", главы 14 "Распределенные запросы, транзакции и базы данных", и о всех главах, посвященных базовым (core) технологиям Oracle.

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

Следует отметить ключевую роль главы 4 “Основы проектирования баз данных”, содердащую углубленный очерк-обзор проблем ("Проектирование баз данных - это скорее искусство, чем наука."), этапов проектирования (концептуальное, логическое, физическое, практическое проектирование), средств для проектирования базы данных (включая упоминание об объектно-ориентированном проектировании), технологий проектирования базы данных (уоделирование с помощью ER-диаграмм, унифицированный язык моделирования), а также "Учебный пример проектирования базы данных" с изложением основ нормализации (первая, вторая, третья нормальные формы, внешние ключи и т.д.), денормализации и т.д. Легко и понятно изложенный этот материал решает поставленную задачу - "познакомить разработчиков с основными принципами проектирования реляционных баз данных и дополнительными возможностями управления информацией в СУБД Oracle". Вообще говоря, эту главу для ознакомления, и/или изучения, и/или само перепроверки можно рекомендовать и Oracle-профессионалам. Сами же авторы разделяют свою книгу на шесть частей: Основы Oracle Работа с данными Языки программирования для баз данных Технологии программирования Технологии бизнес-аналитики Оптимизация К сожалению, это разделение почти не прослеживается в оглавлении самой книги, кроме м.б. последних глав, названия которых почти совпадают с назаниями частей - " Запросы для целей бизнес-аналитики" (гл. 26), "Анализ бизнес-информации" (гл. 27), "Оптимизация" (гл. 28).

Совершенно небходимо отметить несомненное достоинство рецензируемой книги в том, что под одной обложкой в ней помещены профессиональные обзорные курсы по основным языкам (SQL, PL/SQL, встроенные стандартные пакеты PL/SQL) и технологиям программирования для баз данных Oracle (Java, XML DB и HTML-DB).

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

Таким образом, мы видим перед собой книгу для программиста-разработчика, в которой изложен профессиональный подход к SQL, PL/SQL, Java, Oracle XML DB и Oracle HTML-DB, а также к бизнес-аналитике на современном уровне. Подобной книги, всецело ориентированной на интересы профессионального разработчика приложений, пожалуй, еще не было в отечественной компьютерной литературе.

Следует обратить внимание на современность этой книги. В Введении в подглаве "Что необходимо для работы с этой книгой" говорится, что: "Все примеры создавались в среде Oracle Database 10g, но, за немногими исключениями, их можно тестировать и в Oracle9i. Поскольку Oracle является межплатформенной СУБД, фактическая операционная система, на которой работает существующая версия Oracle, значения не имеет". Для Oracle-профессионалов эта сентенция воспринимается как самая обычная фраза. Мы к этому давно привыкли, а для не Oracle-профессионалов можно еще добавить, что можно осваивать и тестировать ваши разработки для Oracle на любом подходящем компьютере (вполне подойдет даже домашний), а потом переносить свой опыт и изделия на промышленные системы обработки данных.

Эта книга "Программирование баз данных Oracle для профессионалов" Р.Гринвальда, Р.Стаковьяка, Г.Доджа и их коллег несомненно вам поможет успешно войти и освоиться в современном мире баз данных Oracle.




Rambler Top100