CI Community Apps

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

На официальном форуме CodeIgniter участник сообщества под ником sv3tli0, предложил идею о создании CI Community Apps – официальных аддонов для создания приложений на основе фреймворка CodeIgniter.
Очень часто бывает, когда начинается новый проект, постоянно приходится использовать некоторые общие и основные компоненты: авторизация, регистрация, управление пользователями и т.д.
Идеология CodeIgniter не позволяет включить все эти компоненты прямо в фреймворк. В то время как почти во всех остальных фреймворках подобные вещи имеются из коробки, в CodeIgniter этого нет. Именно поэтому приходится применять различного рода сторонние библиотеки. Но, думаю, что большинство разработчиков, которые писали или до сих пор пишут приложения на CodeIgniter, имеют собственный набор библиотек для разработки. CI Apps позволит в корне решить данную проблему.

Возможные варианты CI Community Apps:



Примеры аддонов приложений:



  • CI Users приложение — основа для системы авторизации, регистрации, настройка личного профиля, управление пользователями. Требует CI Admin для управления.
  • CI Admin приложение — базовая панель управления. Может требовать CI Users для аутентификации пользователя.
  • CI Posts – управление материалами (постами). Требует CI Admin для управления.
  • CI Products – управления товарами. Требует CI Admin для управления.
  • CI Installer – установщик пакета готовых инструментов для настройки приложения CI.


Пример готовых приложений:


  • CI Blog (небольшое приложение) — индивидуальные Frontend + CI Admin + CI Users + CI Posts + CI Installer (почти готовый WordPress).
  • CI Products Listing (среднее приложение) — индивидуальные Frontend + CI Admin + CI Products + CI Installer (могут быть добавлены + CI Users).
  • CI Shop (большое приложение) — индивидуальные Frontend + CI Admin + CI Products + CI Users + CI Installer и т.д.


Если в сообществе CodeIgniter найдутся единомышленники по разработке и внедрению CI Apps: то это будет очень неплохо.
Суть идеи предложенной пользователем sv3tli0, заключается в том, чтобы CI Apps были утверждены составом CodeIgniter в качестве официальных приложений сообщества. Развитием приложений занимались бы участники сообщества, не отвлекая при этом разработчиков ядра фреймворка. Думаю, что это правильный шаг. Если подобного рода вещи не хотят быть внесены в сам CodeIgniter, то можно сделать их отдельно.
Таким образом, участники сообщества могли бы внести свой вклад в CodeIgniter приложения, а веб-разработчики, которые начинают работу над новым проектом, будут иметь много вариантов начать проект не только с нуля.


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


CodeIgniter Wikipedia: ru.wikipedia.org/wiki/CodeIgniter
Официальный сайт CodeIgniter: www.codeigniter.com
Официальный форум CodeIgniter: forum.codeigniter.com
Тема на форуме CodeIgniter: CI Community Startup and Addon Apps
CodeIgniter 4 Habrahabr: CodeIgniter 4
Нужны ли CI Community Apps?

Проголосовало 45 человек. Воздержался 21 человек.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Комментарии (6)


  1. ange007
    02.02.2016 13:00

    Подобные штуки здорово облегчают жизнь, но вот только доведут ли данную идею до ума?
    З.Ы. Не помешала бы ссылочка на форум.


    1. condor-bird
      02.02.2016 13:41

      Не нужно думать, что данными приложениями будут заниматься разработчики CodeIgniter. Если будут единомышленники среди комьюнити, тогда можно рассчитывать на жизнь приложений. Что касается ссылки на форум, то добавил в статью. Кроме этого, перейти на форум можно с официального сайта фреймворка.


      1. ange007
        02.02.2016 13:43

        Я и не говорил что я так думаю.
        Но в любом случае это кто-то должен начать делать (именно делать, а не просто говорить), а потом уже если будет интерес то и другие присоединятся.

        А по форуму — через сайт то можно перейти (я так и сделал собственно), только вот тему не сразу удаётся найти если на нём впервые.


        1. condor-bird
          02.02.2016 13:48

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


  1. torrison
    02.02.2016 14:39

    Good Idea)

    CI Users = Ion Auth
    CI Admin (Everybody make himself) We have open-source solution: inside.ikiev.biz
    CI Post (Everybody make himself) We have simple empty web-site: vizitka.ikiev.biz
    CI Shop (Everybody make himself) We have simple empty web-site: shop.ikiev.biz

    If anybody want to make it official and stable it will be good)

    But main trouble is code quality. This Apps must be simple and easy to modify!


    1. condor-bird
      02.02.2016 15:23

      That's right, the code should be as simple and straightforward. It is important to be good documentation applications.