Пошаговый план изучения Yii

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

Здравствуйте, коллеги.

В программировании я с 2007 года, но, так сложилось, что с фреймворками никогда не работал. Вел несколько своих проектов на CMS, что-то допиливал, знаний хватало. Сейчас возникло желание расти как программисту и я пришел к выводу, что нужно изучать фреймворки. Начать решил с Yii. Цели устроиться на работу пока нет и, надеюсь, не будет, хочу свои проекты воплощать в жизнь и развивать, для этого и начал смотреть в сторону фреймворков. Поэтому пока не понимаю, что и в какой последовательности изучать.

Прошу знатоков Yii набросать план заданий, начиная от самого легкого и до самого трешового, исполнив которое я могу считать себя крутым разработчиком Yii. То есть, если бы вам пришлось учить кого-то работе с Yii, с чего бы вы начали и чем закончили?

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

1. Универсальная обучающая платформа, которую можно использовать для создания абсолютно любых курсов, будь то иностранные языки, программирование или школьные предметы. Платформа с тестами, чатами с преподавателями, с разным уровнем прав для разных пользователей - ученик, преподаватель, автор курса, владелец, бухгалтер и т.д.

2. Сайт строительной компании, масштабируемый на множество городов посредством папок, а не поддоменов, с отдельными представительствами в каждом городе, со своими контактами, адресами, биллингом для каждого города (услуги посреднические), возможно, раздельной статистикой по городам.

Хотелось бы начать обучение уже на собственных проектах, начиная с малого и постепенно усложняя их. Возможно, на основе примеров у вас сложится некий план с чего начать и как постепенно углубляться в Yii. Может быть, подскажете другой путь обучения. Буду рад любым откликам.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Пошаговый план изучения Yii

Сообщение samdark »

1. Изучить ООП и в PHP в том числе.
2. Прочитать официальную документацию к фреймворку.
3. Выбрать небольшую задачу (мелкую часть одного из ваших проектов) и сделать её при помощи фреймворка попутно пытаясь максимально использовать возможности фреймворка.
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Пошаговый план изучения Yii

Сообщение futbolim »

Изучите немного. Если будет желание (и Вам нужно будет это доказать), можно будет попробовать взять Вас на стажировку в большой open-source проект (по типу Кинопоиска). Ради опыта. Бюджета у проекта нет.
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Пошаговый план изучения Yii

Сообщение maleks »

Eujenio Gonzalez писал(а): 2019.03.08, 21:15 Для примера приведу пару своих проектов, которые планирую запустить в ближайшее время.
1. Универсальная обучающая платформа,

2. Сайт строительной компании,
А для чего вам эти сайты? Просто для хобби?
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

maleks писал(а): 2019.03.12, 07:20 А для чего вам эти сайты? Просто для хобби?
Нет, я хотел бы развивать их и иметь хороший заработок.
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

samdark писал(а): 2019.03.09, 12:44 1. Изучить ООП и в PHP в том числе.
2. Прочитать официальную документацию к фреймворку.
3. Выбрать небольшую задачу (мелкую часть одного из ваших проектов) и сделать её при помощи фреймворка попутно пытаясь максимально использовать возможности фреймворка.
Я пытался изучить ООП, но кроме теории, где квадратиками нарисовано как это взаимодействует, ничего толкового не нашел. Я, безусловно, понимаю, что без ООП фреймворк писать будет трудно. Хотелось бы учебника, где на простых примерах и коде показано как работает ООП.
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

futbolim писал(а): 2019.03.09, 14:03 Бюджета у проекта нет.
Это очень печально. Без бюджета, боюсь, на ваш проект не останется совсем времени моего.
someweb
Сообщения: 552
Зарегистрирован: 2017.03.09, 10:12

Re: Пошаговый план изучения Yii

Сообщение someweb »

Eujenio Gonzalez писал(а): 2019.03.13, 06:06 Я пытался изучить ООП, но кроме теории, где квадратиками нарисовано как это взаимодействует, ничего толкового не нашел. Я, безусловно, понимаю, что без ООП фреймворк писать будет трудно. Хотелось бы учебника, где на простых примерах и коде показано как работает ООП.
Почитайте Зандстру - Объекты, шаблоны и методики программирования.
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Пошаговый план изучения Yii

Сообщение maleks »

Eujenio Gonzalez писал(а): 2019.03.13, 06:06 Я пытался изучить ООП, но кроме теории, где квадратиками нарисовано как это взаимодействует, ничего толкового не нашел. Я, безусловно, понимаю, что без ООП фреймворк писать будет трудно. Хотелось бы учебника, где на простых примерах и коде показано как работает ООП.
Таких книг нет.
Понаписано много всего, каждое о своем аспекте, про то как каждый понимает, на чем акцентирует, плюс это все в движении находится.
Eujenio Gonzalez писал(а): 2019.03.13, 06:03 Нет, я хотел бы развивать их и иметь хороший заработок.
Что, есть какой то шанс чтобы без серьезных денежных вложений(на seo) сделать сайт популярным среди конкурентов?
Те же курсы английского, кто вам на новенький неизвестный сайт создаст просто так такой контент?
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

maleks писал(а): 2019.03.13, 08:50
Eujenio Gonzalez писал(а): 2019.03.13, 06:06 Я пытался изучить ООП, но кроме теории, где квадратиками нарисовано как это взаимодействует, ничего толкового не нашел. Я, безусловно, понимаю, что без ООП фреймворк писать будет трудно. Хотелось бы учебника, где на простых примерах и коде показано как работает ООП.
Таких книг нет.
Понаписано много всего, каждое о своем аспекте, про то как каждый понимает, на чем акцентирует, плюс это все в движении находится.
Eujenio Gonzalez писал(а): 2019.03.13, 06:03 Нет, я хотел бы развивать их и иметь хороший заработок.
Что, есть какой то шанс чтобы без серьезных денежных вложений(на seo) сделать сайт популярным среди конкурентов?
Те же курсы английского, кто вам на новенький неизвестный сайт создаст просто так такой контент?
Вы пришли сюда, чтобы убить мою мечту? Давайте говорить открыто, хватит смелости? И еще постарайтесь сразу же, хотя бы для себя, определиться, а зачем это вам лично, убивать мою мечту. Что вам от этого будет?

Ваши ответы не содержат ничего конкретного, кроме раскачки - "а вы уверены?", "а это хобби или работа?", "что вы, таких книг нет и не найдете". Вот честно, зачем вы мне все это пишете?))
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

someweb писал(а): 2019.03.13, 08:49 Почитайте Зандстру - Объекты, шаблоны и методики программирования.
Где-то уже мелькала здесь на форуме эта книга, скачаю.

Иначе я это ООП не осилю. Сегодня ночью видео смотрел у кого-то из блогеров, думал, ну, на пальцах покажут. Вроде, показывает на пальцах, ну не вижу я никаких преимуществ в его примерах! Что ООП, что процедурный - результат один, по-разному написано и так же много букав.
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Пошаговый план изучения Yii

Сообщение maleks »

Eujenio Gonzalez писал(а): 2019.03.13, 21:51 Ваши ответы не содержат ничего конкретного, кроме раскачки - "а вы уверены?", "а это хобби или работа?", "что вы, таких книг нет и не найдете". Вот честно, зачем вы мне все это пишете?))

Вам нужно учиться понимать что вам пишут.

Список книг по ООП - это ничего конкретного? ;)
Про книги я написал что из всего многого что читал не встречал такого чтоб от А до Я, чтобы вы понимали что читаете одну, потом берете другую, большинство вообще не про php...
Eujenio Gonzalez писал(а): 2019.03.13, 21:51 Вы пришли сюда, чтобы убить мою мечту? Давайте говорить открыто, хватит смелости? И еще постарайтесь сразу же, хотя бы для себя, определиться, а зачем это вам лично, убивать мою мечту. Что вам от этого будет?
Мне просто было интересно, раз вы уже 12 лет "коллега" , как вы себя назвали, может вы что то о таких вещах знаете и можете дать обратную связь, но раз и тут вы ничего не знаете, а просто "мечтаете", то вопрос закрыт.
Loveorigami
Сообщения: 977
Зарегистрирован: 2014.08.27, 21:54

Re: Пошаговый план изучения Yii

Сообщение Loveorigami »

Eujenio Gonzalez писал(а): 2019.03.13, 22:02
someweb писал(а): 2019.03.13, 08:49 Почитайте Зандстру - Объекты, шаблоны и методики программирования.
Где-то уже мелькала здесь на форуме эта книга, скачаю.

Иначе я это ООП не осилю. Сегодня ночью видео смотрел у кого-то из блогеров, думал, ну, на пальцах покажут. Вроде, показывает на пальцах, ну не вижу я никаких преимуществ в его примерах! Что ООП, что процедурный - результат один, по-разному написано и так же много букав.

Код: Выделить всё


// процедурный подход
function name($name){
    return trim($name);
}

function surName($surName){
    return trim($surName);
}

$name1 = 'Ivan';
$surName1= 'Ivanov';

$name2 = 'Sveta';
$surName2= 'Petrova';

echo 'Hello '. name($name1).' '.surName($surName1); // Hello Ivan Ivanov
echo 'Hello '. name($name2).' '.surName($surName2); // Hello Sveta Petrova
Нигде больше в проекте нельзя использовать название функции name(), чтоб не нарваться на конфликт, если понадобится вызвать обе.

Код: Выделить всё

// ооп подход

class User(){

protected $name;
protected $surName;

public function __construct($name, $surName){
    $this->name = $name;
    $this->surName = $surName;
}

public function getSurName($surName){
   return $this->$surName;
}

public function setSurName($surName){
   $this->$surName = $surName;
}

public function fullName(){
    return $this->name. ' ' .$this->surName;
}

}

#-------------------------------------
$user1 = new User('Ivan', 'Ivanov');
$user2 = new User('Sveta', 'Petrova');

echo  'Hello '.$user1->fullName();  // Hello Ivan Ivanov
echo  'Hello '.$user2->fullName(); // Hello Sveta Petrova

# И тут Света решила выйти замуж за Ивана
$user2->setSurName($user1->getSurName());

echo  'Hello '.$user2->fullName(); // Hello Sveta Ivanov

Вопрос: как поженить Свету и Ивана процедурным подходом?

Доп вопрос, кто из них старше?.

Подумай
1. Как это сделать процедурным подходом?
2. Как это сделать через ООП?
3. В голове держи, что возможно, Света захочет переехать жить к Ивану и нужно будет узнать ее адрес прописки.
4. Кто по знаку зодиака Света и совместим ли этот знак с Иваном?
5. Есть ли дети и сколько у Светы и у Ивана?
6. Дети их общие или есть дети от первого брака?
-----------
И мало ли что еще потребуется заказчику...)

Сколько времени уйдет на доработки первым и вторым способами?
ge74d8
Сообщения: 40
Зарегистрирован: 2019.03.11, 16:41

Re: Пошаговый план изучения Yii

Сообщение ge74d8 »

1. Книга "Разработка веб-приложений в Yii 2. Марк Сафронов"
2. Видео https://www.youtube.com/playlist?list=P ... ocR_j3C90A (по сути это уроки как раз по этой книге составлены, краткое ее содержание, но лучше прочитать всю книгу целиком, там есть моменты которые здесь не освещены)
3. Документация https://www.yiiframework.com/doc/guide/2.0/ru
ge74d8
Сообщения: 40
Зарегистрирован: 2019.03.11, 16:41

Re: Пошаговый план изучения Yii

Сообщение ge74d8 »

1. Книга "Разработка веб-приложений в Yii 2. Марк Сафронов"
2. Видео https://www.youtube.com/playlist?list=P ... ocR_j3C90A (по сути это уроки как раз по этой книге составлены, краткое ее содержание, но лучше прочитать всю книгу целиком, там есть моменты которые здесь не освещены)
3. Документация https://www.yiiframework.com/doc/guide/2.0/ru
Аватара пользователя
futbolim
Сообщения: 2051
Зарегистрирован: 2012.07.08, 19:28

Re: Пошаговый план изучения Yii

Сообщение futbolim »

Eujenio Gonzalez писал(а): 2019.03.13, 06:09
futbolim писал(а): 2019.03.09, 14:03 Бюджета у проекта нет.
Это очень печально. Без бюджета, боюсь, на ваш проект не останется совсем времени моего.
Да Вы не беспокойтесь. Вас ещё никто не взял ;)
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

futbolim писал(а): 2019.03.14, 20:53
Eujenio Gonzalez писал(а): 2019.03.13, 06:09
futbolim писал(а): 2019.03.09, 14:03 Бюджета у проекта нет.
Это очень печально. Без бюджета, боюсь, на ваш проект не останется совсем времени моего.
Да Вы не беспокойтесь. Вас ещё никто не взял ;)
Вы без бюджета еще и носом ковыряете? Успешный проект, наверное, раз бюджета нет. Удачи, хедхантер :lol:
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

maleks писал(а): 2019.03.14, 07:42 Мне просто было интересно, раз вы уже 12 лет "коллега" , как вы себя назвали, может вы что то о таких вещах знаете и можете дать обратную связь, но раз и тут вы ничего не знаете, а просто "мечтаете", то вопрос закрыт.
А вы прям так, на халяву, чужим опытом захотели разжиться? Ну и как успехи, много нового узнали? :lol: Зачем вы сюда зашли я очень хорошо уловил, хоть вы и не захотели раскрыть правду - побоялись. Но это нормальное поведение. Проблема в том, что в вашем страхе.. пожалуй, я и так много сказал, дальше сами, по книгам.
Eujenio Gonzalez
Сообщения: 10
Зарегистрирован: 2019.03.08, 20:46

Re: Пошаговый план изучения Yii

Сообщение Eujenio Gonzalez »

Loveorigami писал(а): 2019.03.14, 10:23 Вопрос: как поженить Свету и Ивана процедурным подходом?
Ну как поженить, пишем функцию

Код: Выделить всё

function changeSurName($surName){
    //меняем фамилию Светы на фамилию Ивана
}
В ООП же тоже три функции написаны, синтаксис только другой. Я вам верю, что преимущества у ООП есть, но я пока не могу их понять, выгоды очевидной не вижу. С остальными параметрами - дети, возраст, адрес, аналогично же. Вы можете дать несложную задачу, выполнив разными подходами которую, я увижу разницу? Ну, такое мини-ТЗ, которое, может быть, вам когда-то пришлось выполнить и вы сами поняли разницу.
Loveorigami
Сообщения: 977
Зарегистрирован: 2014.08.27, 21:54

Re: Пошаговый план изучения Yii

Сообщение Loveorigami »

А дальше, выведите мне, какая теперь Фамилия у Светы? ). По строчкам кода сколько вышло?

Задачку... Ну если тут еще неочевидно, что для каждой персоны тут заводится куча переменных, несвязанных воедино одной сущностью...
С остальными параметрами - дети, возраст, адрес, аналогично же.
Аналогично, если ты не писал код сам )...

Нет. У меня - 2 параметра (свойства). У тебя - 4 (переменных).
У меня - 20 человек и всего 2 свойства. У тебя - 40 переменных.
Если я переженю всех их попарно, и мне нужно знать девичью и настоящую фамилию женщин? У тебя все переменные перепутаются...
Нужно знать, что $surName2 была 'Petrova', а стала - 'Ivanov' и т.д...
-----------------------------

Немного усложню эту же задачу.

У нас есть 4 человека (1 женщина и 3 мужчины). Кто есть кто - неизвестно.

Света вышла замуж три раза. Требуется узнать - она вышла замуж трижды за одного человека или по одному разу за разных. А может за кого-то дважды?

Вывести имя и получившуюся фамилию, типа - Sveta Ivanov-Petrov-Sidorov (если за разных)...

Сделайте процедурным способом.

Но потом я спрошу, что Света еще молода, ей 20 лет и она желает выйти замуж за человека, которому не более 40 лет... Невзначай добавлю возраст ).
Последний раз редактировалось Loveorigami 2019.03.14, 22:23, всего редактировалось 3 раза.
Ответить