О сайте

Комментарии: 139  Просмотры: 281 567

Здравствуйте. Если вы попали на этот сайт, значит вы интересуетесь фреймворком Kohana (Кохана) и хотите научится создавать на нем сайты. Я постараюсь вам в этом помочь. На сайте представлены как пошаговые руководства разработки, так и документация (переведенный мануал) последней стабильной версии фреймворка — Kohana v3.2.0.

Что такое фреймворк ?

Фреймворк — это каркас сайта, который позволяет ускорить процесс разработки, т.е. не писать какие-то повторяющиеся участки из проекта в проект, а сделать основной упор именно на логике. Если вы достаточно давно занимаетесь веб-разработкой, то у вас определенно есть какие-то готовые классы или функции, которые вы используете в своих проектах. Такой вот набор готовых к использованию библиотек — это по сути и есть фреймворк. Но любой разработчик, с ростом опыта, приходит к выводу, что его старый код (фреймворк) никуда не годится и его надо переделывать. Так почему не использовать сразу уже готовый фреймворк, такой как Kohana, который к тому же написан очень грамотно.

Что же такое Kohana ?

Kohana — это веб-фреймворк с открытым кодом, основанный на PHP5 и использующий концепцию HMVC (Hierarchical Model View Controller — Иерахические Модель-Вид-Контроллер). Его основные цели — быть безопасным, легким и простым в использовании, и это действительно так.

Немного истории (материал из Википедии)

Kohana был создан как ветвь PHP фреймворка CodeIgniter. Первоначально он был известен под названием Blue Flame. Основной причиной форка («расщепления» на два отдельных проекта) был переход к более открытой для общественности модели разработки, из-за того, что многие пользователи были недовольны скоростью разработки и исправления ошибок в CodeIgniter. Rick Ellis — создатель и владелец CodeIgniter — был счастлив видеть форк своего проекта, но помогать отказался. Он подтолкнул новый проект к созданию собственной документации и посоветовал переименовать проект. В июле 2007года Blue Flame был переименован в Kohana для того, чтобы избежать проблем с авторскими правами в будущем.

Название Kohana было выбрано, когда разработчики начали просматривать словари коренных американцев, чтобы выбрать слово не нарушающее авторские права. Kohana на языке Сиу значит «быстрый». Также на японском языке имеет значение «маленький цветок», а на украинском «любимая» и имя известной косатки (Kohana) — все это не имеет никакого отношения к названию.

Особенности

  • Высокая скорость работы
  • Безопасность
  • Использование возможностей PHP5
  • Большое количество встроенных инструментов
  • Простота понимания
  • Использование концепции HMVC
  • Полная совместимость с UTF-8

Для того, чтобы уметь работать с фреймворком, нужно понимать его структуру ну и конечно знать его классы и методы. Собственно этому и посвящен данный сайт. Совершенно необходимо, чтобы вы знали PHP на уровне ООП (хотя бы начальном), а также понимали что такое MVC. Если у вас с этим проблемы, вы можете сначала изучить все это, например, Здесь. Если начальные знания у вас имеются, то приступайте к чтению. В разделе Документация находится переведенный официальный мануал Коханы. В разделе Модули будут выкладываться дополнительные библиотеки для фреймворка, а также рассказываться, как их подключать в своем проекте. Лучше всего начинать с раздела Для начинающих и далее по списку. Ну и конечно же добавьте этот сайт себе в закладки, так как информация на нем будет постоянно обновляться и пополняться.
Предоставленные здесь материалы — это своего рода сборка из переводов англоязычной литературы по фреймворку, видеокурсов и собственных размышлений.

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

Фреймворк Kohana v3.2. Документация. Обучение

Желаю легкого обучения.


К записи оставлено 139 коммент.

Здравствуйте!
а будет ли уроки по авторизации/регистрации стандартными функциями коханы? если будут, то когда?

Смотря что вы имеете в виду говоря «стандартными средствами Коханы».
Auth и Validation мы обязательно будем рассматривать. А это основа любых форм.

Не работает FEED на стати! А на комменты вовсе не активная ссылка! Просьба подправить!

На комментарии вот ссылка
http://kohanaframework.su/comments/feed
В хроме неактивна, я поправлю. На статьи надо смотреть. Статьи — статика. Как их заставить в вп работать, пока неясно.

Опишите пожалуйста, как работать с ЛОГИРОВАНИЕМ! Как заносить свои логи! Как разделить логирования по файлам!

  Kohana::$log->attach(new Log_File(APPPATH . 'logs/system'), array(
      Log::EMERGENCY,
      Log::ALERT,
      Log::CRITICAL,
      Log::ERROR,
      Log::WARNING,
      Log::NOTICE,
      Log::DEBUG));

  Kohana::$log->attach(new Log_File(APPPATH . 'logs/debug'), array(Log::DEBUG));
  Kohana::$log->attach(new Log_File(APPPATH . 'logs/user'), array(Log::INFO));

И самое главное как логи после читать! Очень нужная тема будет!

Хорошо. По логам сделаю урок.

Наверное уже есть пронумерованный TODO, какие уроки сделать? :)

Если да, не поделитесь списком?

Нету. Особенно в свете последних событий, когда одни просят поскорее одно, другие — другое :)

Спасибо за вашу работу.
Было бы интересно посмотреть на AJAX в kohana, а так же, было бы здорово, если бы у вас на сайте были бы исходники несколько проектов на kohana — для обучения.

Про ajax на форуме говорено переговорено. Пример работы ajax, например, есть в модуле рейтинга.
Исходники можно. Например, блога. Но я планирую по его созданию уроки сделать, там и исходники будут.

Как реалезовать вывод ошибки 404! Своей страницей!

Есть запрос:

 $comment = ORM::factory('comment')
                  ->where('status', '=', 1)
                  ->find_all();

есть поле user_id

Как сделать чтобы выбрало только по одному коментарию каждого user_id?

делал вот так:

 $comment = ORM::factory('comment')
                  ->distinct('user_id')
                  ->where('status', '=', 1)
                  ->find_all();

Выводит все что есть в базе!

Спасибо) все работает))))

Большое Спасибо) все работает))))

Денис, спасибо вам за то что есть этот сайт. Очень доволен как материалом, так и стилем подачи :)

А вы случаем не планируете делать видеоуроки (скринкасты)? Знаю что многие ругаются на них, но все-же… А то по кохане их толком и нету :(

Пока не планируется.

Денис смените копирайт внизу сайта))) сейчас все таки 2012 год. сайт отличный читая ваши уроки начал переписывать свою cms насаживая её на этот фреймворк

Спасибо. Дописал :)



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

Пожалуйста, зарегистрируйтесь для комментирования.