предисловие
С появлением Интернета, с одной стороны, он изменил нашу жизнь и значительно улучшил удобство, появилось много профессий, и фронтенд не исключение. Подъем фронтенд-инженеров в 2005 году и переход от ПК к мобильным устройствам в 2010 году означают, что наступила эра большого фронтенда. Именно благодаря теории разделения труда Адама Смита каждое из предыдущих агрегированных положений также разделено более конкретно.
инженер-программист
Мы часто слышим слова «программисты» и «фермеры кода». Другое более профессиональное слово для них — «инженеры-программисты». Они действительно изменили мир. Инженеры-программисты делятся на взаимодействие, систему, алгоритм, анализ данных, тестирование, эксплуатацию и обслуживание в зависимости от типа работы. Взаимодействие — это запись отображения страницы и взаимодействия, система — это написание логики интерфейса, алгоритм — это интеллектуальная рекомендация, анализ данных — это угадывание того, что вам нравится, анализ больших данных, тестирование — это обнаружение ошибок, а эксплуатация и обслуживание — это управление сервером. Возьмите Taobao APP в качестве примера, прежде всего, вы увидите разные вкладки (такие как «Главная», «Сообщения», «Мои»), нажмите на каждую вкладку, чтобы войти в другой интерфейс - пользователи могут видеть его и нажимать на него, что такое взаимодействие. Затем, после того, как вы нажмете на вкладку, приложение должно передать запрос на сервер.После того, как сервер получит запрос, он сделает соответствующий расчет и вернет результат обратно на ваш мобильный телефон.Весь процесс поддерживается системой . Кроме того, поток информации, который вы видите на главной странице, например, определенный контент, рекомендованный системой, поддерживается алгоритмами. Приложение также собирает такие данные, как тип и частота продуктов, на которые вы нажимаете, анализирует их и угадывает, что вам нравится.Это анализ данных. Перед каждым выпуском приложения (новой версии) необходимо проводить модульное тестирование, тестирование производительности, тестирование безопасности и т. д. Это часть тестирования. Если в приложении произошел сбой сервера или сети, необходимо выполнить соответствующее техническое обслуживание.Это часть эксплуатации и обслуживания.
Фронтенд-инженер
Сравнение дома и за границей
В Соединенных Штатах фронтенд-инженеры представляют собой не то же самое, что мы думаем. У них есть инженеры пользовательского интерфейса, фронтенд-инженеры, инженеры среднего уровня и инженеры бэкенда. Да, инженеры пользовательского интерфейса не являются дизайнерами пользовательского интерфейса. . Инженеры пользовательского интерфейса в основном отвечают за HTML, за написание CSS разработчики внешнего интерфейса в основном отвечают за написание JavaScript, а средний уровень отвечает за связь внешнего и внутреннего интерфейса. В Китае фронтенд-инженеры должны писать HTML, CSS и Javascript, а затем заниматься отладкой серверной части. Это также означает, что знания, которыми должны обладать фронтенд-инженеры, относительно обширны, а требования к способностям относительно высоки.
Передовые знания
Обновление и итерация интерфейса происходит очень быстро, и много знаний уже появилось, прежде чем вы сможете их изучить, что застанет вас врасплох. От прошлой эпохи Jquery и Bootstrap до нынешней эпохи React, Vue, Angular, ПК, мобильных устройств, апплета, npm, веб-пакета, git, браузера, http и т. д. С таким количеством понятий требуется много времени, чтобы понять, как классифицировать и систематизировать их в соответствии с вашей собственной ситуацией. Контент фронтэнда делится на две части: базовую и практическую.Базовая часть включает в себя HTML (язык, элементы), CSS (язык, функция), JavaScript (рантайм, грамматика, семантика), браузер и API (принцип реализации, API ), Практическая часть охватывает производительность, набор инструментов, непрерывную интеграцию, системы построения, архитектуру и базовые библиотеки. Затем мы введем различные точки знания в соответствии с этими классификациями и организуем и изучим их в сочетании с нашей реальной ситуацией.
инженер
Помимо внешнего интерфейса, мы также относимся к инженерам, что также означает, что мы должны иметь некоторые способности инженеров. Фронтенд-инженер должен обладать тремя основными способностями: умением программировать — решать сложные проблемы, архитектурными способностями — решать большие проблемы и инженерными способностями — решать человеческие проблемы. Сложные вопросы, вероятно, связаны со сложностью логики. Затем мы можем усилить их с помощью логического разделения и преднамеренной практики, так что теперь вы знаете, почему интервьюер строит самолет и рабочий винт. Интервьюер хочет изучить ваш потенциал и навыки программирования. Большая проблема состоит в том, чтобы решить сложный системный анализ и множественное совместное управление.Вы можете преуспеть в каждой части контента в большой системе, но вы не можете организовать их вместе, и в этом может отразиться архитектурная способность. Проблемы людей больше связаны со спецификацией кода, с тем, как сократить расходы на общение, писать чистый код и, конечно, с другими частями, которые на данном этапе недостаточно понятны.
продлевать
Активны ли вы в сообществе, внедрили ли вы новый контент в свою систему, и тогда лучший способ обучения — это вывод, часто ли вы делитесь тем, что узнали, или обучаете ли других тому, что знаете в команде, все Это отражение ваших собственных способностей.
сотрудничество
Что касается моей текущей ситуации, фронт-энд должен сотрудничать с четырьмя почтовыми линиями, дизайном, продуктом, бэк-эндом и тестированием, и между ними обязательно общение и общение.Как минимизировать эти затраты, также для вас. , проверка способностей. Какова ваша эстетическая ситуация, как ваше взаимодействие, насколько вы понимаете логику продукта, насколько вы учитываете внутреннюю логику, меньше ли дефектов и каково ваше восприятие пользовательского опыта? отраженные в них.Эти возможности отделены от конкретных профессиональных и технических возможностей, но они также будут играть более важную роль.
направление
Фронтенд-инженеры в основном делятся на три направления: компонентизация, инструментальная цепочка и непрерывная интеграция. Компонентизация, библиотеки: некоторый повторно используемый код, компоненты: элементы, которые многократно появляются в пользовательском интерфейсе, модули: блоки, которые повторяют действия, такие как вход в систему. Цепочка инструментов, инициализация, запуск, сборка, тестирование и выпуск проекта должны быть настроены в соответствии с требованиями компании. Непрерывная интеграция, среда предварительного просмотра (совместим ли итеративный выпуск каждой версии с каждой средой, будут ли возникать проблемы и потребуется какое-то управление), проверка правил, сканирование структуры страниц, сбор данных во время выполнения, сканирование кода и т. д.
развитие
Развитие человека также требует определенной мотивации.Достижения, продвижение по службе и рост дополняют друг друга. Обычно существует три типа достижений: деловые достижения, инженерные достижения и технические проблемы.
деловое достижение
инженерное достижение
техническая задача
напиши в конце
Я надеюсь, что каждый сможет написать поэтичный код и стать отличным фронтенд-инженером.Впереди долгий путь, и я буду искать вдоль и поперек.