Комментарии 24
На всякий случай спрашиваю.
Нужно потратить вечер, выполняя инструкции из раздела «Build Your First Application» («Создайте свое первое приложение»). Поскольку документация написана хорошим, технически понятным языком, то в процессе ознакомления с этим и другими разделами возможно получить даже некоторое эстетическое удовольствие.
Ощущение воздушности и состоятельности проекта CodeIgniter 4 будет присутствовать с вами теперь повсеместно. И Когда вы будете изучать (или уже изучили) другие платформы на PHP: Laravel , Symfony и т.п.
Это сарказм?
Вы что, никто не испытывали чувство состоятельности проекта, ещё на этапе выбора фреймворка? А выпавшие волосы, кстати, будут лёгкие и шелковистые.
Благодарю за комментарий.
Благодарю за комментарий.
Благодарю за комментарий.
ainu.
Благодарю за комментарий.
Это не сарказм и не ирония.
Это впечатление от CodeIgniter4 , документация к которому (на момент написания этого комментария) доступна только на английском, поэтому может сложиться мнение, что проект не развивается.
Но проект мощно развился со времён CodeIgniter3.
Обратить внимание профессионалов к новой возможности решения задач web-разработки и было движущей силой в написании данного поста.
Поскольку документация написана хорошим, технически понятным языком, то в процессе ознакомления с этим и другими разделами возможно получить даже некоторое эстетическое удовольствие.
А у кого плохим? Как по мне любой популярный фреймворк (Yii, Symfony, Laravel, Zend) имеет хорошую и понятную документацию. Для Yii она еще и на русском по большей части. Чем CodeIgniter принципиально отличается своей документацией?
В CodeIgniter 4 есть практически всё, что требуется при разработке современного web-проекта практически любой сложности
А у кого нет? Миграции, Роутинг, DAO, ORM, MVC реализацию есть у всех фрейморков. У Yii например есть готовые докер файлы которые просто запускаются и работают. Есть serve сервер. Что есть у CI?
Но есть один момент, который возможно будет решён в CodeIgniter 5, нет возможности сразу получить целиком «рабочий пример» из «Installation» или «Command Line»
А вы точно пытались? Там вроде все просто (на примере CLI):
composer create-project codeigniter4/appstarter [name]
Далее создаете контроллер и запускаете его через:
php index.php [controller] [action]
В чем не "рабочесть" данного примера?
«Лёгкий пример» использования Database Migrations (миграций) и Seeding (посев)
Тема не раскрыта о слова совсем. Могли бы хотя бы заявленный функционал засунуть в статью, а то вникать в структуру CI если никогда с ней не работал - нет смысла, а для информации было бы интересно (наверное). Если конечно там что-то новое и отличающееся от документации: https://codeigniter.com/user_guide/dbmgmt/migration.html и https://codeigniter.com/user_guide/dbmgmt/seeds.html
Благодарю за комментарий.
Вы правы :composer create-project codeigniter4/appstarter [name]
Этот метод установки подойдет разработчику, который хочет начать новый проект на основе CodeIgniter4. (This installation technique would suit a developer who wishes to start a new CodeIgniter4 based project.) Раздел: «App Starter».
После этого и начинается новый проект «Build Your First Application» («Создайте свое первое приложение»).
Для быстроты получения конечного варианта, собственно, и был предложен вариант готового решения «First Application» в репозитории на GitHub.
Все необходимые пояснения даны в документации CodeIgniter4 и на GitHub'е. На каждое такое пояснение в статье присутствует соответствующая ссылка.
CodeIgniter хорошо, когда надо написать простой CRUD и забыть о нём. Если что-то сложнее -- все равно ставить Laravel.
Restful API со сложной бизнес логикой и трехэтажными запросами к БД отлично идёт на CI4
С учетом того, что SPA нынче вполне себе стандарт в web приложениях, CI4 прекрасно подходит для полноценного бэкэнда
Ну а его простота даёт ему скорость по сравнению с другими PHP фреймворками
Ну а его простота даёт ему скорость по сравнению с другими PHP фреймворками
Из-за простоты, или есть бенчмарки? Если простота = скорость (что в целом логично), то возьмите Slim для REST, он отлично справится, да к тому же еще проще и еще легче. Зачем в этой ситуации CI тогда?
Бенчмарки есть. Разные. Большинство, конечно, аффилированных, так что лучше самому повыбирать, если интересно
Slim, по сути, просто роутинг, а может понадобиться еще MVC, приблуды для Rest , а model CI4 данных вообще очень приятная и красивая штука для работы с БД.
По закону 20/80 CI4 дает 80% нужного функционала за 20% "сложности" проекта
model CI4 данных вообще очень приятная и красивая штука для работы с БД.
Посмотрите Yii db , вообще с ума сойдете :D
Вроде бы говорили о простых PHP фреймворках
Не понимаю, как перескочили на Yii
А когда Yii стал сложным? Ничего вам не мешает поднять на Yii REST API где будут контроллеры, AR и собственно все.
У меня есть такое ощущение, что CI не дотягивает до "больших" дядек (Yii, Symfony, Laravel), но уже не такой "маленький" (Slim, Lumen, Silex), и поэтому вообще не понятно зачем он нужен.
Благодарю за комментарии
и за нужные слова в «освещении» CodeIgniter4.
Слова, которые подразумевались, но высказаны были вами.
Если что-то сложнее -- все равно ставить Laravel
Вы опечатались. Если что-то сложнее CRUD, то лучше не ставить Laravel
Не для спора, а для интереса: почему?
Слишком много магии и неявного поведения. В крупных системах это усложняет отладку и поддержку.
Очень много статики и фасадов. Да, это ускоряет разработку, но имеет неприятную цену. Лучше без них.
Ну, и, да - Eloquent отвратителен :D
Если же от лары оставить только роуты, хелперы и прикрутить орм вида доктрины, то какие у него остаются преимущества перед микрофреймворками?
В общем, несмотря на большой прогресс в самой ларе, она сильна экосистемой. И там все не очень хорошо.
Благодарю за комментарий.
Именно многое полезное из Laravel , Symfony, etc. взял «на вооружение» CodeIgniter4,
сохранив присущие ему простоту, логичность и возможность расширяться благодаря механизмам composer.
сохранив присущие ему простоту, логичность и возможность расширяться благодаря механизмам
Дак любой проект, на любом фреймворке расширяем благодаря composer. Это вообще не заслуга CI.
Именно многое полезное из Laravel , Symfony, etc. взял «на вооружение» CodeIgniter4,
А можно уточнить что именно? После диагонального чтения доки, я только увидел класс Factory, который напоминает Laravel где за фасадом прячется (да я в курсе что это фабрика)
rpsv:
>А можно уточнить что именно?
Как пример.
CodeIgniter3 был всем хорош, но не использовал Composer и Command Line по разным объективным причинам (только, пжлста, не надо и тут что-то уточнять). Все задачи эффективно решались другими логичными для своего времени способами.
Если вам действительно интересно можете прочитать, хотя бы «диагонально», CodeIgniter(3) User Guide. Возможно после прочтения вы тоже разделите симпатию профессионалов к CodeIgniter3 .
В CodeIgniter4 есть и Composer Installation со всеми его возможностями расширения вашего проекта до любых «модульных высот» (привет Laravel'у , Symfony'и, etc.),
а также Command Line Usage с, в том числе CLI Generators,
т.е. одни из основных моментов, которые в своё время были выгодно представлены
в Symfony, Laravel и, кстати, в Yii.
Есть, конечно же, и другие «моменты». Но объём информации не предполагает формат комментария.
Фреймворк на PHP: CodeIgniter 4. «Лёгкий пример» использования Database Migrations (миграций) и Seeding (посев)