Reg.ru: домены и хостинг

Крупнейший регистратор и хостинг-провайдер в России.

Более 2 миллионов доменных имен на обслуживании.

Продвижение, почта для домена, решения для бизнеса.

Более 700 тыс. клиентов по всему миру уже сделали свой выбор.

Перейти на сайт->

Бесплатный Курс "Практика HTML5 и CSS3"

Освойте бесплатно пошаговый видеокурс

по основам адаптивной верстки

на HTML5 и CSS3 с полного нуля.

Начать->

Фреймворк Bootstrap: быстрая адаптивная вёрстка

Пошаговый видеокурс по основам адаптивной верстки в фреймворке Bootstrap.

Научитесь верстать просто, быстро и качественно, используя мощный и практичный инструмент.

Верстайте на заказ и получайте деньги.

Получить в подарок->

Бесплатный курс "Сайт на WordPress"

Хотите освоить CMS WordPress?

Получите уроки по дизайну и верстке сайта на WordPress.

Научитесь работать с темами и нарезать макет.

Бесплатный видеокурс по рисованию дизайна сайта, его верстке и установке на CMS WordPress!

Получить в подарок->

*Наведите курсор мыши для приостановки прокрутки.


CodeIgniter: жив или мертв?

Сразу мини-вводная. Этот пост предназначен для тех людей, кто находится в раздумьях и сомнениях по поводу того, жив CodeIgniter или мертв, и стоит ли использовать его в своих новых проектах.

Если вы не знаете, что такое CodeIgniter, то, вероятно, большого смысла читать дальше вам просто нет.

Зато всех остальных приглашаю в небольшой экскурс по этому вопросу, ибо и я сам - лицо заинтересованное:)

Многие знают меня как человека, который долгое время использовал в работе фреймворк CodeIgniter и даже обучал других, как с ним работать. Первый курс по работе с ним я выпустил еще в 2010 году, а второй - в 2012.

Сам проект Codeharmony.ru также выполнен на CodeIgniter еще в 2009 году (разумеется, апдейты были:))

Так вот, после 2012 года динамика развития CodeIgniter начала сильно хромать - причем на обе ноги сразу. На протяжение долгих месяцев всё, что мы могли видеть - это мелкие несущественные правки, которые можно отнести к разряду "косметических" - мол, "Мы, конечно, что-то делаем, но нас это уже не особенно интересует".

На мой взгляд, это выглядело именно так. А почему? Предполагаю, что Компания EllisLab, которая в то время занималась развитием фреймворка банально начала терять к нему интерес, потому что основное внимание уделяла развитию платной CMS-системы ExpressionEngine, написанной, само собой, на CodeIgniter.

Неудивительно поэтому, что если можно было использовать бесплатный CodeIgniter, кто бы тогда покупал CMS-систему долларов за 200-300?

Думаю, что в этом и была основная причина, по которой EllisLab начали потихоньку сворачивать свой бесплатный проект и вкладываться только в ExpressionEngine.

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

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

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

Для подстраховки я не стал даже создавать на нём свой новый проект по психологии отношений, а написал его с нуля.

В то же время, в душе теплилась надежда, что этот замечательный (по моему глубокому убеждению) PHP-фреймворк будет жить и развиваться, а кризис, в котором он оказался в районе 2013-14 гг. благополучно минует.

Так и оказалось. Через солидное время поиска EllisLab объявили, что нашли нового владельца для CodeIgniter, и им оказался The British Columbia Institute of Technology (Технологический институт Британской Колумбии).

Ни к Британии, ни к Колумбии он не имеет совершенно никакого отношения:) Это крупнейший политехнический институт Канады.

Узнав об этом, я вздохнул с облегчением, подумав: "Ну, слава Богу, теперь должно начаться возрождение CodeIgniter".

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

Ну а после периода врабатывания начались первые апдейты после года простоя. Это было продолжение ветки Codeignter 2. Обновлений было немного и они были тоже не ахти какими важными.

Однако, спустя месяцы упорной (вряд ли могло быть иначе) работы, Технологический институт Британской Колумбии представил на суд общественности и давних фанатов CI новую ветку его эволюции - CodeIgniter 3.

И тут я увидел инструкцию по обновлению с версий 2.2.x до 3.0.x.

Это реально огромная "портянка", ибо поменялось во фреймворке очень немало:

- изменился подход к именованию классов

- поменялась работа класса сессий

- переделаны шаблоны отображения ошибок

- внесены изменения в работу роутинга

- были переработаны десятки функций во многих классах

- изменился подход к работе с XSS-фильтрацией

- изменились имена и функционал ряда методов

- скорректирована работа класса, отвечающего за валидацию форм

- ряд библиотек был упразднен или заменен на другие

- переписано множество хэлперов

- был упрощен подход к работе с текстовым данными (удалены избыточные функции-надстройки)

- и многое другое...

Поэтому, не скрою, обновление с 2.2.3. до 3.0.2. продолжалось у меня почти целый день. Жесть, конечно, однако, учитывая количество и качество перемен, оно того стоит. Все-таки делалось это один-единственный раз за два с половиной года.

После обновления все отлично бегает и работает уже не первый месяц, а новые версии линейки 3.0.x. продолжают появляться. Самая свежая версия на момент написания поста - 3.1.0

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

Поэтому тем, кто боялся, что CodeIgniter - всё, я ответственно заявляю: "Совсем даже не всё!"

Более того, всё то время простоя, которое было у фреймворка, практически не сказалось на его рейтинге и частоте реального использования - он как был 6-7 лет назад в тройке-четверке лидеров, так там и остается.

При том, что 1 и 2 места меняются довольно часто и, порой, вообще, выпадают из 10-ки лучших, CodeIgniter стабильно показывает высокие результаты уже на протяжение не менее 7-8 лет.

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

Ну а если вы читаете это статью и только раздумываете, чтобы его попробовать - что ж, в добрый путь!

В вашем распоряжении окажется PHP-фреймворк:

- Легковесный

- Отличающейся гибкостью и быстродействием

- Не загоняющий вас в рамки жестких стандартов

- Построенный по классической схеме Model-View-Controller (но не принуждающий к ней)

- Понятно и удобно структурированный

- С высоким уровнем безопасности

- С возможностью работы без использования командной строки

- Легкий для освоения, если ваш уровень владения PHP приближается к среднему

- Легко расширяемый

- Не требующий шаблонизаторов, замедляющих быстродействие веб-приложения

- Генерирующий красивые URL-адреса, дружественные для человека и оптимизированные для Seo-продвижения

- И многое другое...

Кучу приятных "плюшек" вы обязательно откроете для себя уже в процессе работы.

И, чуть не забыл!

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

Так что кодим, радуемся и ждём:)

На этом пока всё. Может быть, ещё вернемся к этой теме.

Понравился материал и хотите отблагодарить?
Просто поделитесь с друзьями и коллегами!


Смотрите также:

PHP: Получение информации об объекте или классе, методах, свойствах и наследовании

PHP: Получение информации об объекте или классе, методах, свойствах и наследовании

Функции обратного вызова, анонимные функции и механизм замыканий

Функции обратного вызова, анонимные функции и механизм замыканий

Применение функции к каждому элементу массива

Применение функции к каждому элементу массива

Слияние массивов. Преобразование массива в строку

Слияние массивов. Преобразование массива в строку

Деструктор и копирование объектов с помощью метода __clone()

Деструктор и копирование объектов с помощью метода __clone()

Эволюция веб-разработчика или Почему фреймворк - это хорошо?

Эволюция веб-разработчика или Почему фреймворк - это хорошо?

Магические методы в PHP или методы-перехватчики (сеттеры, геттеры и др.)

Магические методы в PHP или методы-перехватчики (сеттеры, геттеры и др.)

PHP: Удаление элементов массива

PHP: Удаление элементов массива

Ключевое слово final (завершенные классы и методы в PHP)

Ключевое слово final (завершенные классы и методы в PHP)

50 классных сервисов, программ и сайтов для веб-разработчиков

50 классных сервисов, программ и сайтов для веб-разработчиков

Наверх