На главную страницу ЗАО Софткей
 Главная   Новости   Статьи   Пресс-релизы   Рассылки 
 
MS O365 test

FileMaker: СУБД с человеческим лицом. Часть 1

22.08.2011 / Программы / Игорь Савчук

В последнее время на рынке СУБД традиционно доминируют гиганты рынка, это прежде всего Oracle Database, Microsoft SQL Server и т. д. Если рассмотреть рынок подобных открытых решений с многообразием его решений, то здесь опять же представлены СУБД прежде всего для профессиональных разработчиков - MySQL, PostgreSQL и т. д.

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

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

Если только на секунду задуматься и помечтать… ах, если бы подобные БД можно было создавать полностью собственными силами, если бы для этого не нужно было быть специалистом сразу в нескольких смежных технических областях, если бы программы было так же просто не только создавать с нуля, но и исправлять, расширять и дорабатывать… И если для крупного и отчасти среднего бизнеса дорогостоящие специализированные решения на базе серьёзных и дорогих СУБД ещё как-то оправданны и экономически целесообразны, то для малого бизнеса (представителей коих большинство) или для домашних нужд и вовсе использование Oracle или даже бесплатного MySQL пожалуй, избыточно и даже более того - абсурдно.

Столь длинное введение в тему задумано лишь для одной цели: рынок СУБД для малых предприятий и домашнего использования чрезвычайно востребован и он практически никак не представлен на отечественном рынке. Если вам нужно быстро разработать специализированную систему складского учета под конкретную специфику или просто личную систему планирования дел или финансов, построенную на какой-то очередной, приглянувшейся вам новомодной концепции тайм-менеджмента, где искать помощи в таком случае? Какие инструменты для этого оптимально использовать - уж не популярную ли MySQL в связке с каким-то визуальным фронтендом, написанным на не менее популярной Visual Studio? Какие быстрые и простые варианты разработки для такой ситуации могли бы предложить вы, подходящие любому нетехническому специалисту так же, как и бухгалтеру или студенту-первокурснику одновременно?

И сегодня у нас есть хорошие новости: наш обзор будет посвящен подробному рассмотрению СУБД именно подобного класса, чрезвычайно известную и популярную на Западе, но пока ещё не очень распространенную в России - FileMaker. Поскольку стало уже типичным сравнивать FileMaker с его нишевыми аналогами - Microsoft Access и FoxPro, - мы для приличия, также повторим эту заезженную аналогию, но для полноты картины и справедливости ради сразу же приведем и их главные отличия, из-за которых это сравнение, по нашему мнению, весьма натянуто.

Ещё один MS Access?

Очень выраженная специфика СУБД FileMaker заключается в том, что она ориентирована не столько на программиста, сколько на конечного пользователя, на непрофессионала в области баз данных. Даже в описаниях своего продукта разработчики упорно избегают использовать громоздкий термин DBMS (database management system), хотя он и приводится в спецификации продукта, всюду заменяя его на database application.

Коренным же отличием является способ визуального проектирования, который выбран в этих двух похожих, но не аналогичных системах. В FileMaker этот подход иной и, по моему мнению, гораздо более удачный и масштабный. Правильно выбранные стратегии проектирования (например, наличие очень толково подобранного набора уже готовых шаблонов для всех типичных задач, которые всегда можно взять за основу) дополнительно упрощают быстрый старт своего нового проекта на базе этой системы разработки. Например, здесь вы можете программировать на встроенном визуальном языке FileMaker Script, даже не имея представлений об основах программирования, или начать сразу проектировать свою БД, просто перетащив мышкой Excel-файл на пустую форму проекта. Добавьте сюда автоматическую переносимость приложений и их многоплатформенность - здорово, не правда ли?

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

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

Что же касается FoxPro - это всё-таки система для программистов, как ни крути. Конечно, при знакомстве с FileMaker вам не помешает наличие опыта программирования на "серьёзных" языках - это позволит "врубиться" в систему и её возможности буквально на ходу, максимум за сутки, сразу начав работать. Но, ставя задачу наоборот, быстро и сходу разобраться в FoxPro гуманитарию будет очень сложно, согласитесь, да и не нужно это делать вовсе! Как сегодня убедительно мы докажем, есть куда более простая, и прошу заметить при этом, гораздо более мощная система разработки в сравнении с MS Access и FoxPro - это СУБД FileMaker.

Определение и целевая ниша

FileMaker Pro - это кросс-платформенный десктопный конструктор табличных и иных информационных приложений, построенных на базе собственной реляционной базы данных. Вместе с собственно движком этой БД, как уже сказано выше, единым пакетом поставляется мощнейший визуальный конструктор с развитым и интуитивно-понятным GUI-интерфейсом, позволяющий в визуальном режиме создавать любые приложения: с собственной логикой, внешним видом, формами и таблицами. Кроме хранения, оперирования и обработки пользовательских данных эта среда предоставляет множество дополнительных функций и возможностей (о которых пойдет речь более подробно далее), которые во многом зависят от редакции этого продукта (смотрите вторую часть этой статьи). Короче говоря, если и существуют среды разработки RAD (Rapid application development), то это своего рода SuperRAD, которая позволяет создавать полностью аналогичные приложения, но раз в 10 быстрее и проще!
Среда разработки FileMaker 11 (Windows)

Итак, дав очень сухое и отчасти казенное определение, подытожим для обывателя выгодой сулимой: освоив FileMaker, вы сможете легко и быстро создавать свои собственные проекты, основанные на базах данных, применение которых практически не ограничено. Вы сможете очень быстро, буквально "на коленке", создать, например, большой каталог своей домашней библиотеки или фильмов, каталогизировать свою огромную музыкальную коллекцию, разработать собственную систему учета товаров на предприятии или учета расходных материалов и офисной техники, систему прохождения заказов в вашей фирме или системы персонализированной печати. Потратив буквально минуту, выставить свою БД в Интернет в виде автоматически сгенерированного php-сайта. И многое, многое другое…

Основные возможности FileMaker:

  • это мультиплатформенный продукт - поддерживаются следующие платформы: Windows (XP, Vista, 7); MacOS X, iOS;
  • плагинная архитектура - для подключения есть множество сторонних плагинов, которые ещё больше расширяют функциональность основной системы;
  • многоязычная поддержка - система переведена на более чем 12 языков, в том числе и на русский;
  • возможность автоматически генерировать продвинутые и привлекательные графики, отчеты и гистограммы;
  • поддержка своего собственного языка разметки FDML для генерирования веб-страничек с возможностью динамических вставок из базы данных FileMaker;
  • и уж если мы заговорили о сайтах, в серверной версии FileMaker есть возможность быстро сгенерировать РНР-сайт автоматически - из структуры и наполнения уже имеющейся базы данных;
  • возможность шифровки всех используемых таблиц и структур данных;
  • огромное количество форматов для импорта данных в БД: Excel, Lotus 1-2-3, txt, cvs, dbf и др. и обилие форматов для обратной операции - экспорта;
  • близкий к визуальному редактор скриптов, который позволяет очень просто разобраться в программировании (если оно вам вообще здесь понадобится). Существует встроенный отладчик скриптов, который позволяет решать все сложные ситуации. Вообще, нужно сразу высказать свое субъективное мнение, что скриптовый язык у FileMaker свой собственный и, вероятно, будет неудобен именно опытным программистам и скорее более подходит как раз начинающим и продвинутым пользователям (что можно рассматривать одновременно как плюс, так и минус этой системы);
  • FileMaker поддерживает многопользовательскую работу с базой данных, в разумных пределах, конечно (не нужно рассчитывать на одновременный доступ к БД толпы из 400 человек). Но в защиту внутреннего хранилища данных хочется сказать, что в последних версиях оно было значительно расширено и дополнено и теперь может вполне свободно оперировать с достаточно большими объемами данных (опять же в разумных пределах - в рамках малого и среднего бизнеса - оно никогда не станет прямым конкурентом в этом плане для Oracle или для PostgreSQL).

Это - лишь часть богатых возможностей FileMaker, перечислить которые здесь одним списком было бы очень сложно. Далее в статье будут описаны и другие возможности FileMaker.

Внешнее взаимодействие

Часто при использовании подобных продукто, первый вопрос, который встает ребром: "А как я смогу связать их с какими-то своими внешними решениями?" Что ж, этот вопрос закономерный. И если внутренние возможности по быстрому проектированию и чрезвычайно удобному созданию приложений на FileMaker я не ставлю даже под сомнение (потому что это так и есть - просто попробуйте), то вопрос исследования FileMaker на предмет его возможностей по взаимодействию с другими внешними продуктами требует дополнительного освещения, в силу особой важности этого параметра при создании современных и гибких гетерогенных систем.
Встроенная система статистики и графических отчетов

Во-первых, следует отметить, что FileMaker очень широко поддерживает и активно использует универсальный стандарт XML для обмена самой различной информацией с внешними приложениями. В частности, поддерживается:

Кроме поддержки XML для обмена данными с внешними источниками также доступна полная поддержка ODBC/JDBC, которая ещё больше расширяет возможности FileMaker (почитать подробней о ней можно на этой страничке).
Отладчик для встроенного скриптового языка

Ну и наконец, самое интересное с точки зрения традиционного программиста - поддержка языка SQL. Как я уже освещал выше, FileMaker использует свои собственные квазивизуальные средства для создания выборок, но кроме того, присутствует почти в полной мере поддержка возможностей и SQL, поэтому давайте максимально кратко перечислим основные моменты в этом вопросе.

  • External SQL Data Source - штатный инструмент для создания "живого" двухстороннего коннекта между FileMaker и ведущими мировыми СУБД (Oracle, MS SQL Server, MySQL);
  • ODBC/JDBC - альтернативный способ подключения, если вам не требуется постоянное "живое" подключение к внешним источникам данных. У этого подхода есть как плюс, так и минус: плюс - это гораздо большая универсальность и широта доступных источников данных, фактически вам нужно просто найти и установить стандартный ODBC-драйвер для вашей БД в систему с FileMaker; минус - немного меньшая скорость взаимодействия;
  • Execute SQL - доступность динамических SQL-запросов на уровне скриптового языка FileMaker через данную команду, что создает своего рода дополнительное измерение для успешного и, я бы даже сказал, изощренного применения SQL в рамках экосистемы FileMaker;
  • MySQL partnership - особенно хочется выделить в поддержку в качестве внешнего источника данных популярный бесплатный сервер баз данных MySQL. Нужно отметить, что уровень интеграции с этим источником в режиме External SQL Data Source чрезвычайно качественен. Сам производитель FileMaker описывает множество удачных примеров крупных внедрений, где использование такого симбиоза этих двух СУБД был поставлен во главу угла всей информационной инфраструктуры. Официальное партнерство компаний FileMaker, Inc и MySQL AB ещё более упрочняет эти связи не только на техническом, но уже и на юридическом уровне поддержки. Наглядную демонстрацию по "запряганию в одну упряжку" FileMaker с MySQL можно увидеть на деморолике вебинара, полностью посвященного именно этой теме.

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

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


Ссылки по теме:

Автор статьи: Игорь Савчук


Рубрики статей
Все статьи
Аналитика
Программы
Игры
Интернет
Авторские права
Интервью
События в мире ПО
Рассылки
Новости мира ПО
Статьи: Мир ПО
Статьи: Программы
Статьи: Игры
Архив статей
  «   Август 2018   »  
Пн Вт Ср Чт Пт Сб Вс
  12345
6789101112
13141516171819
20212223242526
2728293031  
Поиск в архиве

Логин / пароль:
запомнить




Наши партнеры:

 САПР и графика



Написать редактору  | RSSЭкспорт новостей и обзоров


Rambler's
Top100 Rambler's Top100

Разработка компании «Битрикс»
Разработано
«Битрикс»


Copyright © 2001-2018 ЗАО «Софткей»