Comments 33
Итак, какие технологии должен освоить фронтенд-разработчик
Меня вообще всегда поражают эти списки, которые кто-то должен освоить. А С# программист сначала должен освоить C++, а перед этим Си, Ассемблер, написание драйверов и модулей ядра, программирование микроконтроллеров, сетевое программирование на всех уровнях OSI, машинные коды, схемотехнику, электронику, ТОЭ, иметь ученую степень по физике и математике, знать сто фреймворков, 200 архитектур, 300 паттернов проектирования и 400 алгоритмов, а еще посадить дерево, построить сына и вырастить дом. Разработчик НИКОМУ НИЧЕГО НЕ ДОЛЖЕН, его либо берут на работу, либо не берут. А он в свою очередь либо справляется с поставленной задачей, либо нет. Простите, накипело.
в 99% случаев _хороший_ программист проходит путь от изучения спектрума (условно), от чтения тематических журналов, через написание малюсеньких программ в школе, через хотя бы поверхностное изучение основ работы компьютеров, процессоров, через «вау, как я могу!» от написания своей первой программы на c под winapi (тоже условно) до работы в самых разных компаниях, но чтобы обязательно, оглядываясь назад, кружилась немного голова от былой наивности и даже глупости (по собственной же оценке).
отличные программисты знают ещё и математику.
но это едва ли не пятая часть всех программистов. остальные — просто «компьютерщики», почему-то решившие, что они программисты. так что не расстраивайтесь — ничего вы не должны ))
Большинство начинающих айтишников отсеиваются на этапе «хочу стать программистом и получать зарплату в долларах, но не думал, что придется так много учиться». Уникальность программирования и вообще любой айтишной специальности в постоянном самообучении.
Всегда вспоминается
— Ну, а здесь, знаешь ли, приходится бежать со всех ног, чтобы только остаться на том же месте, а чтобы попасть в другое место, нужно бежать вдвое быстрее.
А по теме: что должен уметь фронтенд-разработчик сильно зависит от проекта и команды. В большой команде из узких специалистов, закрывающих все потребности проекта, да ещё с командами админов и тестеров рядом, фронтендеру возможно не придётся ничем заниматься кроме написания клиентского кода на JS или компилируемого в него языке.
Кстати, о тестерах: современный фронтендер должен не просто иметь представление о тестировании, но и обладать практическими навіками юнит-тестирования, как минимум. Мокко, Жасмин и т. п. должны быть его обычными инструментами.
Не путайте фронтенд и бекенд. Даже используя Селениум это боль и страдание, а не юнит-тестирование.
Юнит тестирование во фронтенде, вообще говоря, невозможно. Поскольку FE оперирует другими абстракциями — это не к библиотеке тесты писать.
Итак, какие технологии должен освоить фронтенд-разработчик:Как говорится, начали за здравие, а кончили…
Понимать принципы построения бекэнда и разбираться в серверных технологиях (Node.js, PHP, Ruby, .NET и т. д.)
Базы данных и языки запросов (SQL, MySql, NoSQL, MongoDB и т. д.)
В итоге сами же смешали Front-end и Full stack разработчиков.
А вот сетки и фреймворки нужны только тем, кто не умеет верстать или делает быстрые прототипы «тяп-ляп и в продакшен».
Сетки и фреймворки нужны чтобы не делать рутинную работу втрое дольше по времени. По вашему тот-же Twitter Bootstrap бесполезен, и на нем верстают только кривые верстальщики?
А набор самых популярных фреймворков и библиотек выглядит следующим образом:
А дальше фигурируют Hadoop и Spark, чисто для примера. Что снижает доверие к автору, приводящему эти данные, почти до нуля.
Знать ЯП и уметь на нём программировать — немного разные вещи.
Наверное, думают, что это как-то подчеркивает их «профессионализм». Лучше бы выучили как -тся/-ться пишется и когда ставится мягкий знак после ч|ш.
"Смешались в кучу кони, люди." Если frontend разработчик буде знать все что здесь указано, да еще и развиваться… То всех остальных разработчиков можно увольнять. Зачем их держать, если он и нарисует и сверстает и backend сделает.
а фронтенд разработчик это именно верстальщик и никак иначе
У нас это две разные позиции, фронтендер пишет JS во взаимодействии с версталщиком и бэкендером.
должен знать SQL и серверную сторону
Ну не то, что должен, но базовые знания — это плюс. Может открыть код сервера и посмотреть, например, что отдаёт ему или ждёт от него вызов API, с которым его нужно реализовать взаимодействие. Ну и локально может поправить где-то, типа моков/стабов себе сделать для отладки
И получился фуллстек. Причём, вам и node.js/express подавай и всякие CMS на php.
Особенно это доставило:
>>Базы данных и языки запросов (SQL, MySql, NoSQL, MongoDB и т. д.)
Просто шикарно. Прямо так и вижу, человек сверстал шаблон и в базу данных полез запросы делать.
Явно напрашивается — ещё должен уметь дизайн рисовать! А почему нет? С таким то списком обязанностей. Дизайн будет совсем не лишним! Золотой работник! И на зарплате можно сэкономить. Платить одну зарплату за пятерых. Мечта галер.
После такого курса уже можно записаться на более серьёзную платную программу, если вёрстка понравится.
А как же клиентская оптимизация? :\
Что должен уметь фронтенд-разработчик