Answer the question
In order to leave comments, you need to log in
How to work with frameworks?
Greetings.
I’m trying to learn Yii2, but it’s still difficult, I don’t understand how to work with it and what frameworks are in general.
As I understand it, the framework is a specific framework + ready-made methods, classes, ready-made solutions for the most common tasks, such as registration, authorization, validation, working with the database, routing, etc.
And I just need to study how they are implemented in the framework and from these ready-made parts and build my project?
Answer the question
In order to leave comments, you need to log in
If the question is "How to work with frameworks, provided you know the language?", then I'll tell you from my own experience. I joined the team with a self-written framework and very poor documentation. Googling, etc., could not help me in any way.
1 - we study the input script, debug it. (xdebug, xhprof). There is often something like enabling debug mode.
2 - see what patterns are often used in the project. Read any available documentation, but only when you can't code or don't understand something.
3 - I was unlucky and for the first time I had to work with DataMapper right away, but start writing code right away. Standard CRUD comments. Fields id, title, description. Do it as quickly as possible without going into details. If something is not clear - goto point 2.
4 - if there are autogenerators - be sure to watch what they do, practice writing what they generate on their own.
5 - start many times from zero! (Important point) Solve small problems from the very beginning from the generation of the scaffold. Each time you will learn more new things and understand everything old. It is very important to be able to quickly deploy a project + registration, authorization, a couple of forms, etc. Note: this is called prototyping, frameworks like Laravel and Rails are very good in this regard. They make it possible to very quickly generate a prototype and start working with it, finishing the necessary parts.
6 - Promote your framework. Use it whenever possible. I was writing admin panels for Yii1 sites when the whole other team was writing the front-end part in pure PHP. The difference in speed made everyone start learning Yii.
7 - To understand how the framework works, create your own minimal one. There is a good video guide from a specialist. www.specialist.ru that's specifically this. I watched a very long time, I downloaded vidos from torrents.
Yii's documentation is hell for newbies. Everything about Laravel is just lovely.
И мне нужно просто изучить как они реализованы в фреймворке и из этих готовых частей и собирать свой проект?НЕТ!
Открываем первую страницу в документации yii2.
Сюда же добавляем знания MVC паттерна.
Можно сказать и так. Но если вы еще не прочли доку по php, то начинайте с нее. Далее советую сделать свой проект с нуля на MVC без использования фреймворка. И тогда уже браться за документацию yii2.
Выбираете книжку с примерами и разбираетесь:
Не собирать из частей, а использовать эти части в своем проекте. Всё-таки фреймворк это не какой-то конструктор.
Мне кажется, что все советуют совсем не то, что нужно автору. Пытаться тупо читать документацию или сходу что-то делать,на мой взгляд - неправильно. Для начала нужно ответить на вопрос: какие они, PHP фреймворки? Ответ простой: практически все современные фреймворки реализуют парадигму MVC. Вот с этих трех букв и нужно начинать:
M - модели, работа с БД
V - шаблонизатор
C - контроллеры и маршрутизация
В современных фреймворках я бы в этот список еще добавил Dependency injection.
То есть если мы говорим о Symfony, то не стоит вязнуть в тысячетонной документации. Прочитайте про маршрутизацию, контроллеры, Twig и совсем немного по Доктрине. И вуаля - вы уже знаете, как работает костяк фреймворка.
А дальше уже - практика и там понемногу и остальные знания подтянутся.
И мне нужно просто изучить как они реализованы в фреймворке и из этих готовых частей и собирать свой проект?
Попробуйте CakePHP или Laravel. Уровень вхождения гораздо проще...
Ну вообще надо читать документацию, вот только как сказали выше, у Yii документация ужасная. Это меня от него в свое время и оттолкнуло (как я сейчас понимаю - к счастью) в сторону Symfony и Silex.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question