Source Code Library и EMS PostgreSQL Manager

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


Source Code Library

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

К чему это все я сейчас тут рассказываю? А к тому, что первая программа обзора как раз и упрощает повторное использование кода. Называется она, как вы уже могли заметить, Source Code Library, а найти ее в необозримых просторах Всемирной паутины можно по адресу www.highdots.com/source-code-library.

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

 

Логика работы с Source Code Library предельно проста. База данных с кусками программного кода структурирована по основным категориям (языкам программирования) и подкатегориям, которыми являются тематические группы задач, решаемых кодом (работа со строками, системные функции и т.д. и т.п.). В принципе, структуру можно поменять, но сделать это будет сложно из-за того, что программа уже поставляется со значительной базой (более 10000 строк, около 700 примеров) кусков кода для таких языков, как Visual Basic, VB.NET, C#, Delphi, ASP.NET, JavaScript, PHP (что интересно, C++ отсутствует). Больше всего авторы программы любят, судя по всему, VB.NET, судя по количеству всевозможных тематических категорий для этого языка программирования.

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

Очень полезная особенность Source Code Library состоит в том, что программа умеет сворачиваться в трей, и при нажатии на кнопку "~" выдавать меню, с помощью которого можно вставить в любой текстовый редактор какой-либо из часто используемых фрагментов кода. При помощи этого же меню можно вызвать одну из часто используемых программ (Outlook Express, Firefox) или перейти на какой-либо из используемых в работе сайтов (Google, SourceForge.net и прочие). В самом окне программы тоже можно осуществлять быстрый поиск как по самой базе данных, так и по Интернету, причем последний как с помощью обычных поисковиков (того же Google или Yahoo), так и со специализированными, предназначенными для поиска программного кода.

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

В общем, такая вот программка. Довольно полезная, но если развить идею, сделать её клиент-серверной (то есть на сервере бы собирались куски кода от всех членов команды, и пользоваться ими могли бы они все), то всё было бы просто шикарно. Но и в таком исполнении она весьма полезна, особенно для начинающих программистов, для которых может послужить источником знаний и примером хорошего стиля кодирования. Однако про Source Code Library всё, поехали дальше.


EMS PostgreSQL Manager

Два номера назад я рассказывал о двух полезных и универсальных инструментах для работы с базами данных, которые имеют широкий спектр применения в процессе разработки соответствующих приложений. Однако зачастую, если нет необходимости мигрировать с одной СУБД на другую, универсальность может сыграть злую шутку, не позволив воспользоваться всеми возможностями, всеми плюсами и положительными сторонами отдельно взятой, то есть выбранной разработчиками СУБД. Для таких случаев лучше использовать специализированную программу, "заточенную" под конкретный сервер баз данных.

PostgeSQL уже давно мигрировала из-под Linux в мир Windows и стала часто использоваться при разработке самых разных видов приложений. Эта СУБД часто применяется и в Web, и в настольных системах, и, особенно часто, в различных кросс-платформенных клиент-серверных и многозвенных приложениях. Она завоевала любовь пользователей своей мощностью, гибкостью, надёжностью и бесплатностью. Ведь это одна из очень немногих СУБД такого уровня, которую можно использовать бесплатно даже в коммерческих приложениях. Но о ней мы ещё, наверное, как-нибудь поговорим в отдельно посвящённой данной СУБД статье, а сейчас я хочу представить вашему вниманию программу, с помощью которой задача разработки и администрирования баз данных для СУБД PostgreSQL становится если не элементарной, то, по крайней мере, не требующей излишнего внимания к вопросу "а как сделать то-то".

Называется программа EMS PostgreSQL Manger, и в Интернете располагается по адресу sqlmanager.net/ru/products/postgresql/manager. Размер скачки 17 Мб. Много, но почему так много, мне, говоря откровенно, так понять и не удалось (аналогичные продукты для других СУБД, но, правда, и от других производителей, "весят", в среднем, в два раза меньше).

Первое, что хочется отметить - то, что производители этого программного продукта идут в ногу со временем и обеспечивают поддержку новейших версий СУБД достаточно своевременно. За счёт этого для версии PostgreSQL 8.2 в программе присутствуют поддержка параметра FILLFACTOR для таблиц и индексов, создание индексов без блокировки таблицы, создание доменов на основе других доменов, поддержка разрешений CONNECT для баз данных и разрешений USAGE для последовательностей, возможность изменения типа столбцов, поддержка имен аргументов в функциях, поддержка доллар-ограниченных строк, поддержка данных UTF8.

Работа в программе организована довольно-таки удобно и приятно для конечного пользователя, то есть для разработчика базы данных. Внешний вид программы выполнен в стиле Office XP, хотя теперь, конечно, уже более моден стиль Windows Vista. Присутствует гибкая и эффективная система мастеров (чем-то работа в программе напоминает пресловутые мастера, которыми изобилует Visual Studio). Проводник по базе данных, традиционный для такого класса инструментов, помогает ориентироваться в объектах базы (таблицах, ролях, триггерах, процедурах, операторах, типах и т.д. и т.п.). Панель с вкладками выполнена как в браузере (хотя сами авторы EMS PostgreSQL Manager сравнивают её с панелью задач Windows). В любом случае, переключение между различными окошками благодаря ей становится куда более удобным, чем при стандартном MDI-интерфейсе. Настраиваемые панели инструментов для всех окон приложения дадут возможность выбрать самые часто используемые функции, а тот факт, что программа запоминает все настройки, лишает пользователя необходимости настраивать всё каждый раз по-новому. Теоретически интерфейс локализуем, но в стандартную поставку программы переводов на другие языки, кроме английского, не входит.

EMS PostgreSQL Manager поддерживает соединение с несколькими серверами/базами данных одновременно, причём имеется поддержка соединений SSL. Доступ к серверу PostgreSQL может осуществляться посредством протокола HTTP, а также при помощи переадресации локальных портов через SSH туннель. Программа поддерживает создание пользовательских закладок быстрого доступа для любого узла дерева базы данных, что ускоряет работы, а также предоставляет возможность группировки зарегистрированных баз данных по принадлежности к серверу, что тоже временами может оказаться довольно-таки удобно.

Естественно, все основные функции работают на высшем уровне, и пользоваться ими очень удобно. Создание/удаление баз данных и схем, управление таблицами, представлениями, функциями и последовательностями, управление типами, агрегатами, операторами и языками - всё это реализовано очень удобно, и разработчик не почувствует дискомфорта при переходе на EMS PostgreSQL Manager с любого другого аналогичного инструмента. Также поддерживаются установка и настройка правил для таблиц и представлений, копирование любых объектов баз данных, переименование любых объектов баз данных. Учитывая специфику языка структурированных запросов для СУБД PostgreSQL, очень полезным может оказаться отладчик функций PL/pgSQL. Думаю, многие из программистов, использующих другие СУБД и менее качественные инструменты, спят и видят такой отладчик.

Разработчики не поленились встроить в свой инструмент редактор BLOB-полей, мощный и удобный, как и все остальные инструменты. Очень неплохо в EMS PostgreSQL Manager обстоят дела и с работой с правами пользователей. В программе присутствует менеджер для управления пользователями, их группами и их привилегиями, а также менеджер настроек прав пользователей, отображающий все права для объектов базы данных в форме таблицы. По словам разработчиков, особенно удобна возможность управления правами на объект непосредственно в редакторе объекта. Работа с запросами поставлена тоже просто замечательно: для тех, кто ленив, есть визуальный конструктор для построения сложных SQL-запросов даже без знаний синтаксиса. Для тех, кто любит кодировать каждую запятую собственноручно, есть многооконный редактор SQL с функцией автозавершения кода, подсветкой синтаксиса и фолдингом. Особенно интересна такая возможность, как представление плана запроса в виде диаграммы. Для больших и сложных запросов (которых, учитывая специфику СУБД, наверняка будет немало на практике) это особенно актуально.

Где базы данных, там и отчёты. Мастер создания отчетов (а про удобство мастеров в программе я уже говорил, но всё же позволю себе повториться) позволяет создавать отчеты всего за пару шагов. Кроме того, управление отчетами аналогично управлению объектами базы данных, то есть доступ к отчетам осуществляется напрямую из дерева в левой части окна. Также поддерживается экспорт данных в форматы Excel, Word, Access, HTML, PDF, TXT, CSV, DBF, XML, ODF и импорт из Excel, Access, DBF, XML, ODF, TXT и CSV. Есть мастера для копирования данных в файл/из файла на сервере (возможно частичное или полное копирование метаданных - структуры базы - и, собственно, данных из одной базы в другую).

Программа умеет работать и с диаграммами, незаменимыми на этапе разработки. На этапе сопровождения и администрирования базы пригодятся такие возможности, как сжатие таблиц, кластеризация и переиндексация таблиц, просмотр журнала событий сервера. Разработчики и администраторы могут пользоваться статистикой базы данных, могут извлекать метаданные в текстовые файлы или в редактор сценариев SQL, могут их печатать. Есть также мастер скачивания файлов для загрузки файлов на сервер PostgreSQL и скачивания их оттуда, и SQL Monitor. Ну и, само собой, обязательный To-Do List.

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

Вадим СТАНКЕВИЧ

Версия для печатиВерсия для печати

Номер: 

27 за 2007 год

Рубрика: 

Software
Заметили ошибку? Выделите ее мышкой и нажмите Ctrl+Enter!