•  
  •  
  •  
  •  
1 1 1 1 1 1 1 1 1 1 Рейтинг 5.00 (1 Голос)
Каким образом разрабатываются расширения для Joomla! 3.0 – подготовка (Статья 1) - 5.0 out of 5 based on 1 vote

Представляем вам первую статью, которая относится к циклу материалов на тему разработки расширений для Joomla! 3.0, которые помогут сделать интернет магазин на joomla 3.

Все статьи цикла:

  1. Текущая статья
  2. Каким образом разрабатываются расширения для Joomla! 3.0 – начинаем разработку (Статья 2)
  3. Каким образом разрабатываются расширения для Joomla! 3.0 – создаем ядро (Статья 3)
  4. Каким образом разрабатываются расширения для Joomla! 3.0 – больше функционала (Статья 4)
  5. Каким образом разрабатываются расширения для Joomla! 3.0 – интерфейс администратора и доработка кода (Статья 5)

Первый этап: Используем желтый блокнот и ручку

Для большинства наших проектов, на старте, использовался желтый блокнот. Вами может использоваться бумага другого цвета, которая больше соответствует вашим предпочтениям. Главное, чтобы она помогла сделать магазин на joomla 3. Мы рекомендуем использовать бумагу, отличную от привычного белого цвета. Лучше будет, если вы воспользуетесь ручкой, а не карандашом. Карандаш, чаще всего, размазывает написанное, при этом происходит потеря идеи. Нам не предстоит написание идеального план, мы должны заняться мозговым штурмом. Важно записать все возникающие идеи на бумаге. Этот этап не должен отличаться красотой строк. Ручка обеспечивает поощрение размышлений, а с карандашом можно стирать, переписывать и заниматься другими, идущими в разрез с мозговым штурмом, вещами.

Второй этап: Определение собственных потребностей, целевой аудитории и проблем, требующих решения

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

Для начала, не следует  пытаться создать компонент типа «Властелин колец» (для управления всеми другими). Определитесь с основной проблемой, которая должна быть решена, после чего потребуется полное  сосредоточение. Это позволит упростить жизнь, а также обеспечит плавность маркетинга. Вторым моментом является уверенность в том, что вы будете обеспечена целевой аудиторией. Не следует считать, что если вы нуждаетесь в данном компоненте, то он будет и востребован среди  других. Следует быть реалистом по отношению к собственным ожиданиям, и вы обретёте уверенность по мере прогресса проекта.

Третий этап: Описание общего потока своего приложения/расширения

По окончании работы над своими идеями, целевой аудиторией и проблемами, которые должны быть решены, следующий шаг заключается описании общего потока для своего компонента. Возможно, вы выполните этот пункт на предыдущем этапе, во время перечисления своих идей. Если нет, то займитесь описанием необходимых  контроллеров, моделей и представлений. Наверное, это является подходящим временем для того, чтобы отложить тему и перейти к обсуждению первой важной части создания компонентов для Joomla! 3.0 – архитектуры Model-View-Controller (MVC) и Joomla!.

Joomla! реализуется почти стандартная MVC структура. Но прослеживается стремление разнообразить MVC фреймворк, которым пользуются другие платформы. В Joomla! рассматривается каждая задача в образе контроллера. Таким образом, существует высокая вероятность, что вы будете обладать несколькими контроллерами, имена которых "save", "add", "edit", "delete" и т.д. Каждым контроллером выполняется одна и лишь одна задача, в чем лежит отличие от Joomla! Platform 11.4, где одним контроллером могут выполняться различные задачи. Сначала, кажется, что вам придется столкнуться с большим количеством файлов, но итогом этого этапа станет создание интуитивно понятного потока для вашего компонента, что способствует выстраиванию цепочки, в которую входят несколько команд. К рассмотрению этого вопроса подробнее мы вернемся в следующих статьях, когда мы приступим к написанию файлов контроллера.

Модели в Joomla! Используют фактическую манипуляцию данными. Обычно модели создаются, чтобы представить ключевые единицы или объекты в вашем компоненте (к примеру, категории, элементы и прочее). В моделях заключены определенные функции, относящиеся к данному конкретному объекту (пример - list, get, save и другие).

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

Это обеспечивает вас кратким (несомненно, в упрощенной форме) обзором структуры Joomla! MVC. Мы надеемся, что он является достаточным для того, чтобы предоставить вам идею по описанию потока для собственного компонента.

Четвертый этап: Организация структуры данных и схемы таблиц

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

Этот этап начинается с разбития нашей модели (или ключевых областей), определенных до этого. Мы переходим к записыванию каждого поля, которым мы планируем воспользоваться в этой модели или таблице. Все компоненты будут нуждаться в таблице для связи с моделью, чтобы сохранить соответствующие данные. Различаются несколько полей, которые представляют собой стандартные поля таблицы и используются при написании компонентов Joomla!. Мы рассмотрим их позднее, когда будем писать код. Создавая структуру таблиц, мы стараемся пользоваться некоторыми стандартными соглашениями. К примеру, если мы будем связывать элемент с конкретной категорией, то необходимо включить category_id в нашу таблицу элементов. Таким же образом поступаем с  user_id, если нами планируется связь элементов с пользователем. Это поможет нам в дальнейшем, когда мы воспользуемся нашими рукописными таблицами для размещения их в нашем SQL builder.

Пятый этап: Настройка метода для контроля версий (GitHub)

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

Шестой этап: Настройка вашего локального окружения

Последний этап, рассмотренный в этой статье, заключается в настройке локального окружения. Здесь вы можете пользоваться различными вариантами. Но чтобы не заниматься разъяснением различных методов, которые могут использоваться при написании кода, мы лишь скажем, что это точка в процессе разработки. Нами создается локальная установка Joomla! 3, клонируется наш GitHub  репозиторий, после чего переходим к созданию необходимых символических ссылок. Мы пользуемся Sublime Text 2 при написании кода, и встроенная поддержка Git нас абсолютно устраивает. Существует множество программ, которые вы можете использовать, но вместо того, чтобы искать минусы, мы предлагаем вам самим найти ту, что больше подходит вашему рабочему процессу и стилю написания кода.

Портфолио
Память о Вас и Ваших близких на многие поколения
Подробнее
Прокат металла
Подробнее
Интернет-магазин кожи и меха
Подробнее
100% оригинальная парфюмерия в Москве
Подробнее
Вьетнамский ресторан премиум класса
Подробнее
Внедрение информационных систем
Подробнее
Организация международных конференций
Подробнее
Производство молочной продукции
Подробнее
Спортивный сайт
Подробнее
Интернет-магазин мебели и аксессуаров
Подробнее
Интернет-магазин электротранспорта
Подробнее
Сайт института актуальной экономики
Подробнее
Наши клиенты
Парк развлечений Boom Zoom
Алгор
Норбит
Molga Consulting
Metrotile
Нетология
Monqi
Премиум Пак
Aasha Herbals
Аджва
Салон красоты Сударушка
Пава
ТЦ "Панфиловский"
Фитнес Лаборатория
Система Главбух
Vanguard
GoAsia
ТЦ «Солнечный ветер»
Teledoc
Tchernov Cable
Отзывы
Благодарю компанию web-now.pro за помощь в разработке и запуске проекта POLITSECRETS.RU. Перед нами стояла задача – внедрить проект в сжатые сроки и по оптимальной цене. Порадовало то, что мне подроб...
Вера БлашенковаСекреты успешных выборов, Москва... апр.2016
Мне очень понравился подход с которым нас встретили "Ваша задача заниматься бизнесом, наша - сделать Вам представительство в сети". После этого ребята разработали полное тз на проект, мы внесли пожела...
МаксимIT-TASK, Москва... янв.2016
Работа проделана хорошо! Дизайнер и менеджер на отлично. Надеюсь на сотрудничество в дальнейшем. Есть шероховатости в деталях по задачам, но приятно сказывается оперативность и желание исправить, внес...
БруноСоциальная сеть След Жизни, Москва... янв.2016
Работой остались очень довольны. К работе подходят ответственно, аккуратно, открыто. Проект был сдан чуть раньше срока, по ходу работы возникали изменения, все они принимались безоговорочно, работа вы...
ЕвгенийМагазин текстиля, Москва... дек.2015
Сотрудничаем с 2007 года и сделали не один проект. Самое главное - команда умеет отстаивать своё мнение и постоянно развивается.
МарияМеждународные конференции, Москва... дек.2015
Спасибо всему коллективу компании! Разработали красивый и что самое главной рабочий интернет магазин! Реклама настроена и запущена, продажи идут, бизнес развивается! Нам постоянно подсказывают о новых...
ВадимИнтернет магазин Aromatic.pro, Москва... сен.2015
Большое спасибо команде за оперативность, качественные работы, отличный креатив и привлекательные цены!
Виктория, ОАО "Фармстандарт... июль.2015
Здравствуйте уважаемые партнеры! С наступающим Новым Годом! Желаю Вам дальнейшего процветания и успехов в Вашей благородной работе! С вами приятно сотрудничать! Очень благодарен Вам за своевременное о...
Сергей ЮрченкоКинотруд, Москва... дек.2014
Благодарим команду Brand Now и лично Дениса Логинова за оригинальное видение,разнообразие идей, четкость взаимодействия и безукоризненное соблюдение сроков выполнения проекта! Планируем продолжить сот...
ТатьянаBizness Linkerz... июль.2014
Компания КУН выражает благодарность за сотрудничество: непростая задача была выполнена в требуемые сроки и полностью удовлетворила заявленному ТЗ. Приятно удивила готовность Генерального директора нач...
Мария, Компания КУНhttp://www.kuhn.com/... апр.2014
Все отзывы
Добавить отзыв