Страница 1 из 2

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

Добавлено: 2019.03.08, 21:15
Eujenio Gonzalez
Здравствуйте, коллеги.

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

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

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

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

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

Хотелось бы начать обучение уже на собственных проектах, начиная с малого и постепенно усложняя их. Возможно, на основе примеров у вас сложится некий план с чего начать и как постепенно углубляться в Yii. Может быть, подскажете другой путь обучения. Буду рад любым откликам.

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

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

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

Добавлено: 2019.03.09, 14:03
futbolim
Изучите немного. Если будет желание (и Вам нужно будет это доказать), можно будет попробовать взять Вас на стажировку в большой open-source проект (по типу Кинопоиска). Ради опыта. Бюджета у проекта нет.

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

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

2. Сайт строительной компании,
А для чего вам эти сайты? Просто для хобби?

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

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

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

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

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

Добавлено: 2019.03.13, 06:09
Eujenio Gonzalez
futbolim писал(а): 2019.03.09, 14:03 Бюджета у проекта нет.
Это очень печально. Без бюджета, боюсь, на ваш проект не останется совсем времени моего.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Добавлено: 2019.03.14, 10:23
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. Дети их общие или есть дети от первого брака?
-----------
И мало ли что еще потребуется заказчику...)

Сколько времени уйдет на доработки первым и вторым способами?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Но потом я спрошу, что Света еще молода, ей 20 лет и она желает выйти замуж за человека, которому не более 40 лет... Невзначай добавлю возраст ).