В основном я фронтенд-разработчик в Kintohub. Мы создаем платформу для микросервисов, которая позволяет разработчикам легко развертывать и повторять свои приложения.
Одна из моих обязанностей в Kintohub - определить взаимосвязь между компонентами и определить, когда создавать глобальную / настраиваемую компонентную систему.
Если вы начали заниматься программированием или занимались только серверной разработкой, у вас могла возникнуть такая мысль
Frontend - это HTML и анимация… решение проблем… правда?
Я здесь, чтобы попытаться изменить это, я встречал много людей, которые думают, что разработка интерфейса - это ... круто, но им нравится решать проблемы, так что это просто не вариант.
Я обращаюсь к вам так: Если вам нравится решать проблемы, интерфейс может быть даже более богатой платформой, чем серверная часть в этой области
Немного о себе
Я всегда считал себя разработчиком полного стека, который больше фокусируется на интерфейсе. Несколько лет назад я был в основном backend-разработчиком (C #, Java, Ruby).
В то время я начал играть с jQuery и другими библиотеками Javascript (в 2012 году я даже написал серию статей о том, как jQuery validate работает внутри компании)
Почему мне раньше нравился интерфейс:
- В основном бэкэнд был утомительным, и большинство проблем, которые я решал, заключались в простом добавлении CRUD к ресурсу с небольшими затратами. без логики
- Проблемы внешнего интерфейса казались новыми проблемами: как написать что-то масштабируемое / легко расширяемое и интегрируемое с остальной частью приложения
- Самое главное - все казалось свежим, каждое приложение / пользовательский интерфейс уникален, у вас есть разные проблемы, которые вы пытаетесь решить, другая структура пользовательского интерфейса, и вам нужно подумать об инфраструктуре или иерархии внешнего интерфейса, которые будут работать для этого конкретного приложения.
Переход к сегодняшнему дню. Javascript стал более зрелым, чем когда-либо (не верьте мне, проверьте GitHub Octoverse, чтобы узнать о самом популярном языке), и вокруг него должно быть активное сообщество.
Первое беспокойство: серверные языки ›Javascript
(Да, я говорю о языковой войне статического типа)
Две причины утверждать, что это не совсем так
Синтаксис Javascript никогда не обновлялся
Я бы согласился на это до новых изменений, которые произошли с ECMAScript. По сути, ECMAScript до ES2015 не менялся 15 лет. Но комитет, ответственный за представление ES2015 (который является важным выпуском), решил прекратить поддержку устаревших версий для старых браузеров и вместо этого перейти к годовой модели для определения новых стандартов. Это означает, что мы будем чаще добавлять функции в Javascript.
За Javascript стоит сильнейшее сообщество разработчиков.
Сообщество, стоящее за Javascript, делает его бесконечно мощнее. Вы можете подумать, что это неправда. Сообщества не оказывают такого влияния на язык
Если вы так думаете, я могу сказать вам следующее: Вы ошибаетесь!
Javascript родился как язык браузера, но теперь он превратился в совершенно другого зверя. Он начался с NodeJs. Теперь вы можете видеть Javascript повсюду на мобильных устройствах, настольных компьютерах, в системах глубокого обучения и серверных приложений, и этот список можно продолжать до бесконечности.
Вторая проблема: мне не нравится интерфейс, поэтому я не особо беспокоюсь о Javascript.
Я ни в коем случае не считаю себя человеком, занимающимся пользовательским интерфейсом, на самом деле, я ниже среднего, когда дело доходит до дизайна пользовательского интерфейса.
Я рассматриваю Frontend как платформу для решения проблем с пользовательским интерфейсом. Это не означает, что сами проблемы связаны с пикселями (не все проблемы связаны с перемещением кнопок).
В каждом приложении во внешнем интерфейсе вам необходимо следующее :
(ни в коем случае не связанные с пикселями)
- обработка потока данных
- кэширование данных
- вложенная структура страницы
- связь между компонентами и страницами
- глобальные компоненты
- проверка формы и отправка
Различные библиотеки / платформы
Чтобы решить некоторые или большинство из этих проблем, описанных выше, вы найдете множество библиотек и фреймворков, которые предлагают идеальное решение проблемы.
(правда? Многие из них - это хорошо?)
Я могу сказать, что сообщество, которое поддерживает разные идеи и всегда открыто для разных способов написания кода, будет расти вместе как разработчики. В конце концов, фреймворк или библиотека - это решение, которое включает в себя шаблоны кода и принципы, которые разработчикам лучше всего использовать.
Знакомство с совершенно разными способами написания кода в конечном итоге сделает вас сильнее как разработчика.
Заключение
Фронтенд - это не просто перемещение пикселей, это независимая платформа, у которой есть разные проблемы, которые нужно решать из бэкэнда. Это многофункциональная платформа для поиска и решения сложных проблем.