Задать вопрос

Каким должен быть контрольный список знаний для Junior PHP(2016)?

Доброе время суток! Повстречал вот такой интересный список требований к знаниям джуна https://geekbrains.ru/topics/197. Что бы вы добавили в него? Что бы убрали? Действительно ли список для джуна?)))
- отчетливо понимать этапы выполнения программы "Парсер - Компилятор - Рантайм", понимать, что PHP - компилируемый язык
- уметь объяснить слова "динамическая нестрогая типизация"
- знать, что такое переменная, константа (глобальная и в классе)
- иметь представление об областях видимости, глобальности и локальности имён
- знать, какие типы есть в языке, помнить о неочевидностях при приведении и сравнении разных типов (типа "1" == "01")
- иметь представление о приоритете операций
- понимать, что в PHP всё является выражением
- булев тип и операции над ним, разница между &&, & и and например
- знать несколько самых нужных строковых функций
- уверенно работать с массивами, знать самые востребованные функции, не пугаться большой вложенности
- уметь получить данные из $_POST, загрузить файл (или несколько сразу) через $_FILES
- уверенно владеть файловыми операциями, понимать концепцию "всё есть файл" и иметь представление о правах на файлы
- знать все циклы и управляющие конструкции языка кроме goto
- понимать, зачем нужны пространства имён
- уметь написать автозагрузку для своего проекта, знать о существовании стандартов на автозагрузку

Объектная модель PHP:
- наследование и модификаторы доступа
- разница между статикой и динамикой, смысл в статических свойствах и методах, хотя бы на примере ORM
- позднее и раннее статическое связывание
- интерфейсы и трейты, как обход отсутствия множественного наследования
- абстрактные классы с реализацией методов
- класс, как тип, instanceof, класс-хинтинг, опять же тут интерфейсы
- магические методы на примере конструктора, __get, __set, __call
- исключения - понимание темы и хорошие примеры использования

Паттерны проектирования:
- MVC
- ORM
- ActiveRecord
- Depedency InjectionПрочее:
- PHPStorm уже фактически обязательно
- знакомство хотя бы с одним современным фреймворком
- умение пользоваться composer
- аккаунт на гитхабе, что подразумевает хотя бы начальное владение git в обязательном порядке
- в плюс будет linkedin или еще какая-то профессиональная сеть
  • Вопрос задан
  • 3363 просмотра
Подписаться 20 Оценить 6 комментариев
Решения вопроса 1
AleksDesker
@AleksDesker
Похоже на российские тендеры - как будто написано под конкретного человека, чтоб взять на работу только его и никого больше, сложно найти второго такого у которого будет совпадать IDE в котором он редактирует код, социальные сеточки, настолько категоричный отказ воспринимать PHP как интерпретатор, которым его задумывал создатель и т.п. Пара хороших пунктов есть, но больше мимо и многое не упомянуто ... я бы джуниора в первую очередь про SQL-injection спросил или хотя бы про базовый синтаксис INSERT-a, тут на тему БД вообще ничего нет, при том, что есть требование ORM и фреймворка.
Ответ написан
Пригласить эксперта
Ответы на вопрос 7
Uwe_Boll
@Uwe_Boll
Я Злой и Страшный Уве Болл в Разработке знаю Толк
где компилятор?
7112_20.jpg
Ответ написан
Комментировать
  1. Слово "прочее" я бы заменил на "будет плюсом"
  2. Слова "паттерны проектирования" заменил бы на "желательно знать" или "иметь представление". Хотя "паттерн проектирования" --- отвратительный англицизм (для текста вакансии).
  3. "..., не пугаться большой вложенности" --- большой вложенности как-раз таки стоит пугаться.
  4. "понимать, что в PHP всё является выражением" --- не понял что имеет ввиду автор.
  5. "понимать, что PHP - компилируемый язык" --- чушь!
  6. "знать все циклы и управляющие конструкции языка кроме goto" --- почему обделили goto? Почему бы не знать об этой конструкции?
  7. "знакомство хотя бы с одним современным фреймворком" --- это скорее для мидла


Всё остальное, да, это для джуна.
А вообще, есть стойкое ощущение, что автор троллит.
Ответ написан
65536
@65536
пхп это машинный код!
Ответ написан
Комментировать
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
- отчетливо понимать этапы выполнения программы "Парсер - Компилятор - Рантайм", понимать, что PHP - компилируемый язык


ДА ну? неужели? Точно?
Ответ написан
@entermix
- отчетливо понимать этапы выполнения программы "Парсер - Компилятор - Рантайм", понимать, что PHP - компилируемый язык

Ясно.
Ответ написан
Комментировать
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Умение самообучаться и этого ДОСТАТОЧНО!
Ответ написан
Комментировать
trevoga_su
@trevoga_su
Котеров назвал PHP интерпретирующим транслятором
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы