Хотя это больше известно как система управления контентом с открытым исходным кодом, FarCry на самом деле является мощной средой для создания приложений ColdFusion. Джефф Бауэрс, генеральный директор сиднейского Daemon и самозваный «доброжелательный диктатор», рассказывает нам о том, что заставляет FarCry тикать.
SitePoint: Джефф, можешь ли ты дать нам свой лифт? Кратко изложите суть FarCry в одном или двух предложениях.
FarCry Core — это фреймворк для веб-приложений, основанный на языке ColdFusion. FarCry CMS — это популярное решение для управления контентом, созданное с помощью FarCry Core. Как сообщество, мы предоставляем поддержку для фреймворка, CMS и множества плагинов сообщества, включая библиотеки для Google Maps, манипуляции с изображениями, бесплатный поиск текста и многое другое. Сообщество FarCry было сформировано в апреле 2003 года, когда Daemon open source поставил базовую платформу FarCry Core и соответствующее решение FarCry CMS. С тех пор FarCry выросла в одну из крупнейших баз кода ColdFusion с активным сообществом разработчиков по всему миру.
Сообщество состоит из множества людей, фирм, занимающихся веб-разработкой, и крупных корпоративных, государственных и образовательных учреждений. Несмотря на то, что вклады кода поступают от широкого спектра сообщества, разработка первичных функций осуществляется и управляется сплоченной командой в Daemon и небольшой группой дополнительных основных коммиттеров.
SP: Давайте копать немного глубже: расскажите нам больше об основных функциях.
Я расскажу о FarCry Core — фреймворке. Кроме того, FarCry CMS обладает всеми этими и другими функциями, заключенными в пример решения, которое устанавливается из коробки.
FarCry Core — это набор инструментов для создания веб-приложений, который содержит, помимо прочего, модель безопасности на основе ролей, объектно-реляционный картограф (ORM), брокер кэширования в памяти для объектов и представлений, полностью настраиваемую веб-панель администрирования, механизм formtools для быстрого создания пользовательских интерфейсов, полностью гибкая среда шаблонов и расширяемая архитектура подключаемых модулей для совместного использования кода. Это сложно объяснить одним-двумя предложениями, но каждая из этих функций представляет собой годы работы, которую разработчики могут использовать.
Одно из моих любимых — это «formtools», движок, который динамически создает ваш пользовательский интерфейс на основе атрибутов, которые вы прикрепляете к свойствам вашего базового компонента. Мы не говорим об основных формах HTML — это действительно богатая библиотека пользовательского интерфейса, которую можно беспощадно настроить так, как вы хотите. Formtools облегчает мне жизнь, но в то же время дает мне низкоуровневый доступ для написания собственного интерфейса для тех уникальных или уникальных элементов пользовательского интерфейса, с которыми я сталкиваюсь.
Для тех, кто просто не может получить достаточно, мы собрали более полный список возможностей с точки зрения бизнеса (в отличие от технической).
SitePoint: Как появился FarCry и какова была причина его создания? Как вы вовлечены?
Еще в 2002 году Daemon должен был принять решение о том, что делать с нашей базой кода: продавать другим поставщикам, наращивать маркетинг и конкурировать в качестве коммерческого поставщика, или строить бизнес, ориентированный на услуги, на базе открытого исходного кода? Мы не хотели рисковать финансовыми вложениями, необходимыми для наращивания маркетинга, особенно в середине «бомбы доткомов». Мы действительно предпочли нашу кодовую базу перед множеством поставщиков, которые обратились к нам за выкупом, и мы не могли даже подумать о том, чтобы увидеть наше решение в куче мусора ради меньшего предложения. В апреле 2003 года мы выпустили FarCry CMS под общей публичной лицензией, и у нас была возможность создать сообщество с открытым исходным кодом.
FarCry Core стал отличной базой кода платформы для выпуска v4.0, когда мы отделили решение для управления контентом от базовой структуры и добавили сложную архитектуру плагинов. Сама CMS сейчас очень популярный, но необязательный плагин.
Интересно, что название FarCry происходит от старого английского термина, когда преступники или посланники были отправлены в дальние края королевства, чтобы доставить королевское воззвание. Это подходящее название для платформы доставки веб-приложений!
Что касается моего участия, то я могу назвать вас «Доброжелательным диктатором». Я больше не ведущий разработчик проекта, но я все еще последний арбитр для того, что в конечном итоге делает его, а что нет в отношении изменений и улучшений функциональности, если когда-либо в сообществе есть иное несогласие. Я регулярно балуюсь базой кода, но большую часть времени провожу за сообществом, за написанием документации и за управлением базой ошибок. Недавно я собрал кучу отличных плагинов с открытым исходным кодом для ведения блогов и интеграции с Picnik.
SitePoint: Когда разработчик должен искать FarCry? Что это значит для этого?
Большинство разработчиков ищут FarCry CMS как средство для достижения цели: им нужно комплексное решение для управления контентом. Только после того, как они немного поиграли и создали свои собственные расширения, они начинают понимать, насколько мощной является базовая структура.
Разработчики должны рассмотреть FarCry Core, фреймворк для любого веб-приложения — это не просто CMS. Фактически, FarCry используется для создания сложных веб-приложений повсюду, включая CRM-системы, решения для электронной коммерции, онлайновые телегиды, интранет, службы каталогов и многое другое. А с растущим списком доступных плагинов становится еще проще начать работу с любым количеством сложных решений, практически «из коробки».
SitePoint: Каковы предварительные условия для использования FarCry? Есть ли какие-либо предварительные знания, которые помогут новым пользователям? Использует ли он какие-либо другие структуры, которые могут упростить или усложнить вещи?
Для FarCry нет никаких предварительных условий, хотя знание того, как программировать в ColdFusion, очевидно, помогает. Как и в случае с любым другим фреймворком, вам нужно делать все по-другому. FarCry Core описывает подход к организации вашего кода, используя базовые сервисы, доступные в библиотеке кода, и решая различные проблемы. Если вы боретесь с «FarCry Way», вы расстроитесь. Фреймворк очень важен для вас, и если вы можете заставить себя «отпустить», вы можете внезапно оказаться сверхпродуктивным. FarCry может быть абсолютной радостью работать с.
В отличие от других платформ в сообществе ColdFusion, которые работают друг с другом, чтобы сформировать более полное предложение, FarCry делает все это. Есть ORM, всеобъемлющий механизм кэширования, модель безопасности на основе ролей, модель вложенного дерева, шаблонизатор, механизм категоризации, архитектура плагинов и многое другое. Хотя мы думаем, что наша собственная кодовая база довольно крута, в некоторых более специфичных средах, таких как Transfer ORM и ColdSpring, предлагается отличная функциональность. Чтобы лучше использовать эти библиотеки, мы планируем серию плагинов для подключения сторонних фреймворков и обеспечения их большей доступности в среде FarCry.
SitePoint: Что отличает FarCry от других фреймворков?
Современная тенденция в средах ColdFusion заключается в том, чтобы заставить разработчика очень ориентироваться на объект. Под капотом FarCry в значительной степени опирается на концепции ОО, но прилагает все усилия, чтобы предоставить разработчикам менее пугающий интерфейс — более «холодный» стиль работы.
Возьмите, например, webskins; они аналогичны View в вашем классическом паттерне MVC. Если вам удобно работать с HTML, вы можете создать веб-оболочку FarCry. Просто поместите ваш шаблон в каталог webskins, и он будет автоматически зарегистрирован. Он поставляется со всеми данными для конкретного объекта, который вы отображаете, имеет доступ ко всем функциям родительского типа контента, библиотекой пользовательских тегов, помогающих создать ваш пользовательский интерфейс, и автоматически кэшируется в памяти. И еще есть «formtools» — движок, который динамически создает многофункциональные пользовательские интерфейсы для добавления и обновления контента без единой строчки кода. Конечно, во всех случаях, если вы хотите испачкать руки и написать код в более объектно-ориентированном стиле, вы можете это сделать.
SitePoint: Есть ли замечательные примеры FarCry «в дикой природе»?
Очень много! Вот три недавних проекта, в которых участвовал Daemon, и я думаю, что они особенные:
- Клиника Мейо. Этот огромный медицинский сайт представляет собой общедоступный вид на знаменитую Клинику Мейо, в среднем около 2 миллионов страниц в день. Он построен из конца в конец в FarCry и представляет собой великолепный пример ColdFusion. Фил Трюсдейл из команды Mayo будет в Сиднее, чтобы выступить на конференции разработчиков webdu в июне.
- Bluescope Steel — Bluescope Steel, одна из 20 ведущих австралийских компаний, использует FarCry во всех своих веб-ресурсах. Сайт Australian Products является, вероятно, одним из лучших промышленных / промышленных сайтов, которые я когда-либо видел. Он обладает огромной глубиной содержания, обширными перекрестными ссылками, красивыми изображениями, интерактивными инструментами, видео, интеграцией с Google Maps и подключен непосредственно к их колл-центру. Это также центр нескольких фирменных дочерних сайтов, которые используют точно такой же контент, но представлены совершенно по-разному. Bluescope серьезно настроен на свое присутствие в Интернете.
- SelecTV — SelecTV — очень конкурентоспособная альтернатива платному телевизионному провайдеру FoxTel здесь, в Австралии. Сайт компании построен на FarCry и тесно интегрирован с внутренним механизмом клиентской подписки Websphere. Недавно мы собрали полномасштабный онлайн-справочник по телевидению с персонализированными руководствами, опциями печати и доставки в формате PDF, а также оповещениями о напоминаниях по SMS / электронной почте. Платформа FarCry используется от импорта каналов канала XML до сервисов членства и предоставления самого руководства.
SitePoint: А как насчет лицензирования, сообщества, поддержки и документации?
FarCry лицензируется в рамках Common Public License 1.0 . Вы можете создавать производные работы и делиться или не делиться, как вам нравится. В отличие от других лицензий с открытым исходным кодом, это то, что является коммерчески дружественным.
Мы всегда делаем все возможное, чтобы привлечь людей к сообществу FarCry, и с этой целью мы вложили значительные средства в обеспечение доступности FarCry на всех видах систем:
- FarCry работает на Adobe ColdFusion, New Atlanta Bluedragon и Railo, включая различные серверы приложений ColdFusion, от коммерческих вариантов до бесплатных для использования сообществом.
- FarCry поддерживает Linux, Solaris, Windows и OSX (практически все, на чем вы можете запустить сервер ColdFusion).
- FarCry работает с серверами баз данных MySQL, Postgres, Oracle и MS SQL.
Само сообщество — яркое и дружелюбное место. Мы предоставляем столько услуг, сколько можем, чтобы помочь людям учиться, участвовать и видеть, что происходит в базе кода изо дня в день:
- форумы
- отслеживание ошибок
- рыбий глаз для отслеживания кода
- тигель для рецензирования кода (работает под «рыбий глаз»)
- документация вики
Недавно мы выпустили весь курс DaCmon для разработчиков FarCry (более 130 страниц) под Creative Commons. Мы надеемся, что это поможет разработчикам быстро ознакомиться с платформой.
И, конечно же, Daemon предоставляет широкий спектр услуг по коммерческой поддержке, разработке и обучению для компаний, инвестирующих в FarCry в качестве платформы для своего онлайн-бизнеса.
SitePoint: Что будет в будущем с FarCry?
Важная новость: релиз FortCry v5.0 «Fortress» выйдет в марте 2008 года — мы только находимся на финальной стадии бета-тестирования. Крепость качается! В Fortress появилось так много новых функций, одна из самых больших — тема безопасности, ее тезка. И мы продолжим выпуск этого огромного релиза с помощью серии плагинов, которые используют и демонстрируют многие новые базовые сервисы сборки Fortress.
SitePoint: Где люди могут найти больше информации о FarCry?
Лучше всего начинать с сайта сообщества и форумов разработчиков . Но если вы хотите отыграться и прослушать обзор FarCry, есть несколько предстоящих презентаций, которые могут представлять интерес:
FarCry Core Framework
cf.frameworks онлайн мастерская
27 марта 2008 г., 6-7 вечера (время Сиднея)
Онлайн семинар
Использование FarCry с ColdFusion
Adobe Pacific eSeminar
4 апреля 2008 г., 2-3 вечера (время Сиднея)
Онлайн семинар
Мастерская: FarCry 5.0 Jump Start
Конференция разработчиков webDU
11 июня 2008 г., Сидней, Австралия
Полный день Семинар