Читатели Хабра знают, что я (Денис Симонов) уже некоторое время работаю над серией статей и примеров, которые подробно раскрывают особенности разработки приложений для СУБД Firebird для популярных языков и фреймворков: уже написаны 3 статьи по ADO.NET desktop, ASP.NET MVC и Delphi, в работе для PHP, Java, Android. Также, c 2014 года я являюсь редактором русской документации языку Firebird и членом международной группы документации Firebird.
В процессе работы над примерами я пришел к выводу, что нужно объединять эти статьи и логически дополнять до полноценной книги, посвященной разработке именно под Firebird. Хотя по разработке есть много материалов, и есть русская документация по языку SQL, книга, с последовательным изложением процесса создания приложений и описанием основных ошибок новичков, будет полезна.
Вы спросите – собственно, причем здесь Хабр?
А притом, что я планирую публиковать материалы для основных глав книги на Хабре. Это довольно необычно – сейчас публикуются только переводные главы из зарубежных книг, но я надеюсь, что администрация Хабра не будет против русской книги.
Сейчас Firebird незаслуженно рассматривается как СУБД для маленьких БД, хотя есть примеры промышленной эксплуатации БД до 4 терабайт (в Металинвестбанке, например) и с несколькими тысячами пользователей, поэтому в книгу обязательно будет раздел о преимуществах Firebird перед другими СУБД и поддержке больших данных.
В целом, я планирую довольно традиционный план для книги: основное внимание будет уделено процессу разработки приложений с использование различных технологий, сред разработки и языков программирования. Помимо этого, рассмотрим как устанавливать Firebird на Windows, Linux, MacOS, Android и конфигурировать его.
Небольшая глава будет посвящена основам языка SQL, небольшая – потому что полное руководство по языку SQL вы можете найти здесь. Также будет рассказано об основах администрирования Firebird, средствах трассировки и мониторинга, обеспечении безопасности ваших баз данных. В заключительной части будет рассказано о расширении возможностей самой СУБД Firebird, написании внешних функций (UDF) и новых внешних модулей UDR (внешние процедуры, функции и триггеры), а также других видов плагинов.
В написании книги мне обещали помогать консультациями Дмитрий Еманов (ведущий архитектор Firebird), Роман Симаков (ведущий разработчик РедБазы), а также Алексей Ковязин и Дмитрий Кузьменко из компании iBase.ru (которая также выступает материально-денежным спонсором написания книги).
За основу будут взяты различные статьи, размещённые на сайте ibase, Руководство по языку SQL СУБД Firebird, ReleaseNotes для различных версий Firebird и другая доступная документация. Часть статей также размещены на Хабре (Создание приложений для СУБД Firebird с использованием различных компонент и драйверов: FireDac, Создание приложений для СУБД Firebird с использованием различных компонент и драйверов: ADO.NET Entity Framework 6).
Планируемая структура книги будет выглядеть следующим образом:
- Введение
- Преимущества Firebird
- Установка Firebird на различные ОС (Windows, Linux)
- Конфигурирование и подбор аппаратного обеспечения
- Введение в архитектуру
- Типы данных и домены
- Объекты базы данных (метаданные)
- Таблицы, ограничения, индексы
- Язык SQL
- Диалекты, виды языка SQL (DDL, DML, PSQL)
- DML запросы (SELECT, INSERT, UPDATE, DELETE, MERGE)
- Работа с транзакциями
- Разработка PSQL модулей (процедуры, функции, пакеты, триггеры)
- Безопасность
- Инструменты администрирования
- Различные способы создания резервных копий и восстановление БД
- Знакомство со популярными инструментами администрирования
- Трассировка и аудит
- Расширенные средства трассировки и администрирования из комплекта HQBird
- Программирование с использованием Firebird
- Создание базы данных для примеров
- Создание приложения с использованием Delphi (FireDac, IBX, FibPlus)
- Создание Windows приложения с использованием ADO.NET и Entity Framework
- Создание Web приложения с использованием ASP.NET MVC
- Создание Web приложения на языке Java
- Создание Web приложения на языке PHP
- Создание мобильного приложения под Android
- Расширение возможностей Firebird
- Написание UDF
- Написание UDR (внешних ХП, функций, триггеров) на Delphi/C++
- Написание UDR на Java
- Написание других видов плагинов
Если у кого-то есть предложения по содержанию книги, буду рад их учесть.
Автор: sim_84