Привет Сообщество! Хочу впервые поделиться тут своим опытом разработки сайта и рассказать про сам процесс разработки. Надеюсь, вам будет очень интересно почитать и поделиться своим мнением.
CodeIgniter *
MVC-фреймворк с открытым исходным кодом
Новости
Популяризация JSON-RPC (часть 2)
Продолжим строить подобие JSON-RPC сервера, начатого в части 1 и анализировать его плюсы и минусы. В прошлой статье был описан механизм отделения бизнес логики бэкенда от транспортного протокола (HTTP) через шаблон проектирования "Front Controller", роль которого исполняет в нашем случае JsonRpcController.
Бэкенд API до передачи запроса в код, отвечающий за бизнес логику, обычно предоставляет частичный функционал API шлюза (API gateway) - он может делать аутентификацию, авторизацию, роутинг, валидацию данных, логгирование, кэширование, обеспечивать меры безопасности и другое.
Популяризация JSON-RPC (часть 1)
Для передачи данных по сети есть хорошо зарекомендовавшие себя стандарты - например, SOAP, gRPC, AMQP, REST, GraphQL.
При создании вебсайтов малой, средней и большой сложности с потоками данных к бэкенду и обратно в JSON формате обычно используются последние два с их вариантами. Верней, только варианты, потому что REST и GraphQL - ресурсо-ориентированные стандарты. Это как бы просто перенос элементарной работы с базой данных на клиента (хотя под "ресурсом" может пониматься и абстракция). Обычно таких запросов не больше трети от всего бэкенд API.
Попытка сделать весь API максимально RESTful страшно раздувает код и грузит сеть. Потому что остальные две трети запросов - в форме команд на бэкенд проделать какие-то действия, слабо отображающиеся на CRUD над некими ресурсами. И вариантов послать такие запросы достаточно много. Даже, чересчур.
CodeIgniter 4: Подготовка к PHPUnit. Устанавливаем Xdebug в XAMPP (Windows 32-разрядная (x86))
Благодарю за отклики
Получив разноплановые отклики в виде комментариев и «кармы» на свою первую статью на Хабре «Фреймворк на PHP: CodeIgniter 4. «Лёгкий пример» использования Database Migrations (миграций) и Seeding (посев)», особенно хочется отметить тех членов сообщества, которые разделили точку зрения автора и в своих комментариях нашли нужные слова, чтобы поддержать автора в его намерении поделиться впечатлениями, что CodeIgniter 4 — это актуально.
Истории
Фреймворк на PHP: CodeIgniter 4. «Лёгкий пример» использования Database Migrations (миграций) и Seeding (посев)
Познакомиться с PHP фреймворком CodeIgniter 4 достаточно просто.
Нужно потратить вечер, выполняя инструкции из раздела «Build Your First Application» («Создайте свое первое приложение»). Поскольку документация написана хорошим, технически понятным языком, то в процессе ознакомления с этим и другими разделами возможно получить даже некоторое эстетическое удовольствие.
Регистрация и авторизация пользователя на сайте — одним кликом — через кастомную кнопку Facebook. 2017
Ну и конечно стал вопрос Удобной авторизации пользователей с наименьшим «трением». Подумав немного, я выбрал авторизацию через Facebook, но думаю, на этом я не остановлюсь и вы прочтете ещё несколько статей, с авторизацией через Google Acc, VK и Tweet.
Итак к делу! В интернете я нашел несколько тем, которые описывают вопрос авторизации, некоторая информация мне помогла, но я не нашел ни одной, которая бы решила поставленную мной задачу, поэтому, завершив задачу я и решил написать эту статью.
Слой базы данных CodeIgniter 4
Работа над классом абстракции баз данных еще длится, хотя уже сейчас можно рассмотреть некоторые примеры и дать себе представление о том, как все будет работать дальше.
Модули/HMVC в CodeIgniter 4
Одним из самых больших и горячих обсуждений о будущем CodeIgniter 4, было обсуждение о поддержке и возможности использования модулей/HMVC.
Маршрутизация в CodeIgniter 4
Простой и когда-то элегантный роутинг фреймворка CodeIgniter полностью обновится в четвертой версии. Лонни Эцелл в очередной раз делится очень интересной информацией о новых возможностях. В этот раз речь пойдет о маршрутизации.
Внедрение зависимостей в CodeIgniter 4
В CodeIgniter 4 будет применяться внедрение зависимостей. Разработчик Лонни Эцелл поделился информацией о том, зачем же нужно внедрять зависимости и как это будет выглядеть в четвертой версии фреймворка CodeIgniter.
Requests и Responses в CodeIgniter 4
Лонни Эцелл (Lonnie Ezell), основной разработчик CodeIgniter 4, поделился в своем блоге информацией о новом функционале четвертой версии фреймворка.
CI Community Apps – приложения сообщества CodeIgniter
Фреймворки во многом облегчают разработку программного проекта за счет готового набора компонентов и библиотек. Очень важным для фреймворка является не навязывание архитектуры. Диктовать архитектуру приложения должен разработчик, а не фреймворк. Если же фреймворк принуждает разработчика к определенной архитектуре, то при разработке нестандартного веб-приложения можно упереться в накладываемые ограничения. Однако выход за рамки фреймворка поощряет неопытных или начинающих разработчиков к плохо написанному программному коду.
CodeIgniter 4
Как всем уже давно известно, компания EllisLab — создатели популярного фреймворка CodeIgniter, передали свое детище Технологическому институту Британской Колумбии (British Columbia Institute of Technology — ВСІТ).
Многие полюбили CodeIgniter именно за маленький размер, быструю работу, отличную документацию. Возможно, именно поэтому его ошибочно называют микро-фреймворком. На это его создатели отвечают:
Ближайшие события
Пара полезностей для CodeIgniter
На данный момент я использую CodeIgniter v2.2.0.
Как я Google API с CodeIgniter A3M подружить пытался и что из этого вышло
Недавно возникла задача прикрутить к библиотеке A3M (это довольно популярная библиотека аутентификации для CodeIgniter) поддержку аутентификации OAuth2 через Google. Все началось с того, что пару месяцев назад ко мне обратился товарищ. У него есть сайт, написанный кем-то в незапамятные времена на CodeIgniter. Естественно, этот кто-то уже исчез в неизвестном направлении.
Сайт вполне рабочий и проблем особо не делает, поэтому товарищ особо не парился и даже не думал про апдейты или (упаси боже) миграцию куда либо.
В один прекрасный день он обнаружил что при логине через Google прилетает такое вот сообщение:
OpenID 2.0 for Google Accounts is Going Away. OpenID 2.0 is no longer supported. If your app uses OpenID 2.0, you must migrate your app by the shutdown date April 20, 2015, as shown in the migration timetable.
Хотя мой товарищ ни разу не программист, почуял неладное и обратился ко мне в надежде, что я смогу это дело поправить.
У него довольно большая база юзеров на сайте, которые логинились через Google, и если до 20-го апреля это дело не пофиксить, многие юзеры внезапно не смогут попасть на сайт.
«Не проблема, пофиксим», — сказал я и полез в гугловский мануал по миграции.
Релиз CodeIgniter 3.0.0
Пару дней как, а именно 30 марта вышел релиз CodeIgniter 3.0.0. Скачать можно на странице проекта.
Основные изменения в сравнении с версией CodeIgniter 2:
- Фреймворк выпущен под лицензией MIT
- Обширный рефакторинг драйвера баз данных
- Полная поддержка PDO
- Новая библиотека для работы с сессиями
- Новая библиотека шифрования
- Доработано модульное тестирование, улучшилось покрытие кода
- Рекомендуется PHP 5.4 или новее, но CI-прежнему будет работать на PHP 5.2.4
Полный список изменений.
Интеграция phpBB в сайт (Codeigniter). Сквозная авторизация
Наш любимый CodeIgniter обрёл новый дом
Когда мы объявили, что ищем новый дом для CodeIgniter, нас практически смыло волной электронных писем от потенциальных кандидатов (кстати, письма до сих пор продолжают поступать). Перед нами возник на первый взгляд простой вопрос: кому мы можем доверить поддержку фреймворка? Но найти верный ответ оказалось сложнее — нам нельзя было ошибиться.
Мы быстро отбросили тех, у кого не было опыта, отклонили заявки тех, у кого не было достаточных средств или времени на поддержку столь крупного проекта. Мы также отказали тем, с кем не сошлись в видении будущего фреймворка. И всё равно осталось много хороших кандидатов с достаточными силами, возможностями и с хорошими идеями. Но один кандидат всё же выделялся на фоне остальных.
Делаем авторизацию на Codeigniter 2.0 при помощи ajax и HMVC
Добрый день, уважаемые Хабрачитатели.
Не так давно передо мной встала задача реализовать виджет авторизации на сайте. Идея не новая, я бы даже сказал банальная, но то ли я плохо гуглил, то ли решение на столько очевидное, что нет смысла об этом писать. В любом случае, хотя бы у новичков это может вызвать проблемы, именно поэтому я решил написать данную статью.
Итак, для начала, чтобы понять, каким образом это все реализовано, нужно познакомится (для тех, кто не знаком) с расширением HMVC для Codeigniter. Сделать это можно тут.
Я попытаюсь сделать все очень наглядно, поэтому начну с файловой структуры проекта:
CodeIgniter 3.0 — будет!
В последние годы популярность данного, некогда лидирующего PHP фреймворка, сошла на нет, что видно и по трендам использования различных PHP фреймворков, и по отзывам разработчиков. Многие из них поставили крест на CI после выхода новости годичной давности о поиске новых владельцев и мейнтейнеров для CodeIgniter, т.к. EllisLab перестало поддерживать его и перекинуло все силы на свою платную CMS ExpressionEngine. Остальные продолжали сетовать на то, что версия 2 вышла аж 28 января 2011 года (больше 3 лет назад!) и с тех пор кардинально не обновлялась.