Обзор фреймворка CodeIgniter



Начну свой обзор этого замечательного framework’a, с самого понятия framework:

Фреймворк (framework): Готовый каркас, на основе которого будет строится приложение. В него включены наиболее часто используемые библиотеки. Отпадает необходимость продумывать структуру приложения, организовывать работу с модулями, классами и т.д.

Зачем изобретать велосипед когда можно воспользоваться готовым универсальным решением. С понятием «framework» разобрались, перейдем непосредственно к самому CodeIgniter’у.

CodeIgniterфреймворк написанный на PHP для разработки полноценных web приложений компанией EllisLab.

Текущая версия: 1.7.1

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

Возможности они же плюсы

  1. Поддержка версий PHP4 и PHP5. Хотя мое мнение, от PHP4 можно отказаться как сделали во фреймворке Kohana.
  2. Модель MVC (Model-View-Controller).
  3. Поддержка баз данных MySQL, PostgreSQL, MSSQL, SQLite, Oracle.
  4. Легко расширяемая система через подключение собственных библиотек и плагинов.
  5. Фреймворк уже содержит в себе большинство необходимых библиотек для работы с файлами, отправки электронных писем, проверкой данных форм, поддержки сессий, работу с изображениями и многие другие.
  6. Обладает возможностью кеширования на стороне сервера SQL-запросов и генерируемых html-страниц.
  7. Хорошо документация на русском языке. Один из главных плюсов для меня.
  8. Очень быстр в работе. В этом смысле — эталон скорости и пример для подражания.
  9. Возможность использование ЧПУ. Так же возможно использовать стандартый вид адресной строки.

Codeiginter идеальный выбор для тех, кто начинает изучать фреймворки. Такой продуманной и полной документации на русском языке нет ни у одного фреймворка.

Рассмотрим возможности подробней:

Модель MVC:

Codeigniter основан на модели MVC (модель-отображение-контроллер). Это позволяет отделить логику приложения от представления.

  • Модель — Класс модели, набор функций для работы с данными, который поможет вам обновить, получить, добавить информацию.

  • Отображение — Шаблон для отображения данных, обычно простой html со вставками php.

  • Контроллер — выступает в роли посредника между Моделью, Отображением, и любыми другими ресурсами.

В CodeIgniter модели не являются обязательными, можно использовать только контроллер и отображение.

Легко расширяемая система:

  • Создание библиотек — Собственные библиотеки (классы) хранятся в папке «application/libraries» для разделения ресурсов фреймворка между локальными и глобальными.

  1. Вы можете создавать совершенно новые библиотеки.
  2. Вы можете расширять функционал родных библиотек.
  3. Вы можете полностью заменять родную библиотеку.
  • Хелперы — коллекция функций помогающая в решении определенных задач.Вы также можете создавать совершенно новые хелперы или заменить родные.
  • Плагины — практически идентичны хелперам, главное их отличние, что плагин это одна функция.

Возможность использование ЧПУ:

Codeigniter генерирует чистые и понятные для поисковых систем URL.

www.your-site.com/class/function/id/

Фреймворк уже содержит в себе большинство необходимых библиотек:

Список всех библиотек входящих в состав фреймворка можно посмотреть на сайте http://code-igniter.ru

Почему CodeIngiter?

Я не один раз задавал себе этот вопрос. В сторону выбора именно этого фремворка склоняет:

  1. Очень подробная документация на русском языке
  2. Гибкость
  3. Простота в изучении
  4. Скорость работы
  5. Огромное количество пользовательских библиотек для решения практически любых задач.

Минусы

А как же без них. Главным недостатком для меня остается то, что разработчики держутся за PHP4, а не переносят фреймворк полностью на PHP5. Так же отсутствие родного модуля для работы с пользователями, т.е. Регистрация, авторизация, разграничение прав доступа и т.д. Отсутствие ORM.

Полезные ресурсы по фреймворку

Сcodeigniter.comОффициальный сайт фрейворка.

Code-igniter.ruРусский сайт по codeigniter, содержит практически полностью переведенную документацию по фреймворку.

Пара интересных блогов по codeigniter:

http://blog.termit.name/codeigniter/

http://rmcreative.ru/blog/tag/CodeIgniter

Ну и как же без хабрахабра — http://habrahabr.ru/blogs/codeigniter/



Теги: , ,

Комментарии

  1. Спасибочки за информацию, почитал с интересом

    Reply

  2. Денис Милюков

    Занятно. Хотелось бы еще почитать чего-нибудь на эту же тему.

    Reply

  3. Интересно именно про CodeIgniter или про другие фреймворки тоже? Просто планируется статья про yii, так как это фреймворк мне стал очень интересен последнее время.

    Reply

  4. Пробовал YII, не совсем понял, в чем преимущество перед CI. Именно преимущества, а не отличия. Тоже, только в другой обертке.

    Reply

  5. Здравствуйте. Ищу рускоязычную документацию по CI 1.7. Вы знаете где найти?

    Reply

Оставить комментарий