Рубрики
Без рубрики

Навыки разработчиков JavaScript должны учиться в 2016 году

JavaScript – Любите это или ненавижу это, но все еще считается «будущим» просто потому, что это существенный язык для разработки веб-разработки. В конце концов, браузеры, вероятно, являются наиболее используемыми программными приложениями на компьютерах и мобильных устройствах.

Автор оригинала: Codementor Team.

JavaScript – Любите это или ненавижу это, но все еще считается «будущим» просто потому, что это существенный язык для разработки веб-разработки. В конце концов, браузеры, вероятно, являются наиболее используемыми программными приложениями на компьютерах и мобильных устройствах.

Разработчики все знают, что JavaScript World может показаться довольно сумасшедшим со своими постоянно меняющимися тенденциями и последующим хаосом (например, левый инцидент ), но, вероятно, безопасно предполагать, что вещи улучшаются по большей части. Trending Technology станет популярной, поскольку они должны исправить проблемы старых (обычно связанные с вопросами масштабирования и сложности).

С тенденциями приходит спрос, особенно с технологическими запусками. Вы не есть Чтобы узнать эти навыки, поскольку самый большой фактор, который учитывается, – это ваша готовность и способность учиться, а также улучшить (особенно если вы младший разработчик). Тем не менее, имея опыт работы с трендовой технологией JavaScript, определенно до вашей игры.

Так каковы тенденции разработки JavaScript в 2016 году (и продвижение вперед 2017)?

Node.js популярен, но мы уже знаем это! Следовательно, эта статья не будет рассматриваться Node.js.

Реагировать и redux.

2015 год был год, когда отреагировали завоеванные тяги, особенно как Подробнее и Подробнее люди начал жаловаться О проблемах с масштабно популярными Angularjs Framework в конце 2014 года. Новости о том, что угловые 2 будут несовместимы с угловой 1, не помогали потушить угловое сообщество.

Хотя угловые 1 остается снятым проектом на GitHub, интерес к Angularjs замедлился, с реакцией быстро закрывая разрыв в 2016 году:

Приближения на основе скриншотов из архива Интернета

Возможно, более подробное показатель будет загрузка NPM для реагировать , угловой и Angular2 Пакеты:

из Trends NPM

angularjs vs реагирует

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

Тем не менее, в течение прошедшего года Итак, Реакция была явно получает больше любви от сообщества JavaScript, чем Angularjs.

Глядя на графики, вы можете задаться вопросом: что в мире произошло после августа? Количество загрузки NPM для реагирования, казалось, внезапно увеличилось экспоненциально, и это также было, когда GitHub Stars для реагирования начал догонять звезды Angularjs.

Ну, Redux произошло Отказ Объявлен его создателем, Дэном Абрамовым, во время Reacteurope2015 В июле просто простая реализация потока Redux, казалось, убедила, что многие разработчики пришло время принять реагирование.

До Redux React прошел свои собственные взлеты и падения, в то время как люди пытались выяснить, как наилучшим образом реализовать архитектуру «Flux». Различные реализации выскочили, и хотя они не были плохими, отсутствие четкого, хорошего решения сохранило множество разработчиков JavaScript в Bay. Таким образом, несмотря на все похвалы для реагирования на его виртуальный домос и универсальный рендеринг, люди были осторожны о принятии его для своих проектов.

Тем не менее, как все больше и больше людей начали использовать redux и реализуют, как он облегчает тестирование и отладки приложений JavaScript, Redux роза с Arena Flux в качестве победителя:

Таким образом, с точки зрения JavaScript Front-End «Framework» тенденций в 2016 году React & Redux принимает торт как самый горячий стек. Установленные компании, такие как Netflix, Dropbox, и Yahoo! Также приняли реагирование в своем технологическом стеке, что, безусловно, дает реактировать голосование доверия.

Тем не менее, реле Facebook, скорее всего, будет сильным претендентом для Redux в 2017 году.

Другие рамки интересов

Как насчет других рамки? Несмотря на то, что не по-настоящему сопоставимо, вот общий обзор для других JavaScript Frameworks, которые раскручиваются.

Угловой 2.

Google и Microsoft партнером Для разработки угловых 2 Framework или более конкретно угловых 2 будет построен с помощью TymerctScript, который был разработан Microsoft, чтобы сделать JavaScript более управляемым языком. Что это значит? Большие (в основном нетехнологичные) предприятия могут быть заинтересованы в поисках угловых 2, особенно в том, что используют Microsoft .NET Framework. Microsoft также усердно нажимает .NET.

С перепишителем в Angular2 команда надеется исправить все вопросы масштабирования с угловыми 1 приложениями, а Производительность до сих пор впечатляет Отказ Более того, кроме того, что также способен к северному рендерингу, угловые 2 будут поддерживать веб-компоненты, которые Google считает, что Google считает будущее веб-разработки.

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

Эти вещи бросили тень сомнения в надвешем ли угловые 2, так как углосуют, как угловые 1. Конечно, учитывая двойственность сообщества JavaScript, есть еще шанс, что угловые 2 поднимется от пепла в качестве «будущего» JavaScript и Web Развитие, но 2016 год вряд ли превратится в год Angular2, тем более что он все еще находится в бета. Тем не менее, для тех, кому не нравится, насколько запутано приложение React App может получить с точки зрения конфигурации, Angular2 может быть предпочтительной альтернативой.

Метеор

Метеор продолжает постоянно расти в загрузках и звездах GitHub, и он хорошо интегрируется с реагированием и угловым углом. В качестве относительно легкого, полный стек JavaScript Framework с большим количеством нефтевых функций, многие разработчики JavaScript находят Framework Fun для работы с. Метеор, как правило, считается отличной основой для прототипирования, а также очень удобно для начинающих.

Однако использование Meteor в производстве кажется еще одной истории. Люди узнали из Angular1 (или даже рельсов до точки), что слишком много магии вовремя вовлекает много скрытых сложностей со временем, и это помешало метеру стать основным. Более того, несмотря на поднятие много денег, Meteor не поддерживается ведущим технологическим предприятием с большим пулом инженеров, такими как React и Angularjs, поэтому есть также, что следует учитывать. Удаленные, Angularjs также имеет множество проблем, даже если он поддерживается Google, но используя METEOR, имеет еще больший инвестиционный риск, поскольку это рамки как для спереди, так и для разработки Backend. Хостинг также должен быть женат на метеоре, чтобы получить максимальную отдачу от облегчения развертывания.

Не говоря уже о том, что многие разработчики не совсем вентилятор MongoDB (который имеет репутацию «Snapchat баз данных»), а Mongo – это база данных по умолчанию Meteor. Хотя Meteor работает над поддержкой SQL, он еще не поддерживается.

Излишне говорить, что Meteor, вероятно, останется нишей в будущем в 2016 году или даже в 2017 году. Большинство профессиональных разработчиков будут ждать каких-либо доказательств того, что его можно использовать для разработки крупных сложных приложений.

ES6 наконец-то

Это год 2016 года, и если вы разработчик JavaScript, который еще не делает ваши приложения ES2015-Active, что, как ты делаешь?

Но подождите – в чем дело с бабел VS Tymdercript для написания AS6-совместимых приложений? Babel в основном транкирует код ES6 в ES5, в то время как Skyscript представляет собой SuperSt of JavaScript, который добавляет дополнительные статические набрав в JavaScript и компилирует на простых JavaScript.

В то время как двое были созданы с разными целями и, таким образом, не совсем сопоставимы, Babel поддерживает поток вне коробки, что также добавляет статический тип проверки на JavaScript и разработан Facebook. Следовательно, это, вероятно, имеет немного смысла использовать оба одновременно.

Бабел был первым, который был настроенным, чтобы помочь преодолеть зазор между приложениями ES5 и ES6, а поддержка Typearcript для ES6 сыграла догнать Babel с точки зрения «прогрессивности». Из звезд GitHub кажется, что Бабел является предпочтительным транспортом, не говоря уже о том, что большинство разработчиков реагирования, кажется, используют Cabel + WebPack Combo.

Однако в конце дня TypeScript выглядит все больше и больше жизнеспособных, даже предпочтительным, выбора, если вы ищете решение, чтобы сделать кодовую базу JavaScript более управляемой. JavaScript имеет плохую репутацию, чтобы быть трудно прочитать, и даже сложнее отладить, а не только потому, что это динамичный язык, но и потому, что он имеет очень слабую систему проверки типов. Поддержка мудрых, Tymdercript была дольше, чем поток и имеет более широкое сообщество.

Кроме того, просто посмотрите на график Google Trends о росте интереса для Tearmcript:

Возможно, Tymdercript частично обязан своей растущей популярностью в Angular2, но в качестве приложений JavaScript становятся больше, это, вероятно, не только причина, по которой он привлечет внимание. Таким образом, пока Redux облегчает тестирование приложений JavaScript TypeScript помогает сделать кодовую базу более поддерживаемой (она также совместима с jsx raction). Кроме того, Microsoft, Google и Facebook работают вместе При добавлении статического ввода в JavaScript и в конечном итоге вводя его в Ecmascript. Google упал в ATScript для Angularjs в пользу Tymerscript Microsoft, и поток Facebook не имеет такого же размера сообщества, как в качестве Teadercript.

Таким образом, безопасно сказать, не только статически набран JavaScript позитивной тенденцией, что HavaScript-ненавистники, вероятно, одобряют, Tybrycript – самое будущее решение.

Функциональное программирование становится мейнстримом

Или, скорее, много функциональных концепций программирования были червь их путь В программное программирование, но в последнее время сама «Paradigm функциональной программирования» приобрела тонны возобновления внимания с подъемом сложных веб-приложений.

Языки, такие как Scala, медленно убедили разрабатыватели Backenc, чтобы принять функциональное программирование, но Reacts Facebook побудил разработчиков Facebook, чтобы принять функциональный подход к разработке UI. С всей и более похвальными для функционального программирования появляется, похоже, что он, наконец, имеет шанс стать Основной поток.

В настоящее время интерфейсная веб-разработка, кажется, все о реактивном программировании и функциональном программировании. Как правило, Rect + Redux является наиболее удобным для новичков для тех, кто удобно для удобных для объектно-ориентированного программирования, поскольку это многопараметрическая. Другими словами, React требуют, чтобы разработчики принимали функциональный подход к UI, а redux поощряет функциональный подход к обработке данных. Все остальное все еще сделано в стиле OOP.

Однако для тех, кто хочет вскочить в полноте функциональные реактивные программирование (A.k.a «True» FRP), но все же хочу придерживаться JavaScript, то RXJS – это умение учиться. RXJS – это реакционноспособное расширение JavaScript, которое можно использовать для в целом замените архитектуру потока, и хотя он может быть излишним для небольших и простых приложений, это мощное фундамент для веб-приложений, которые необходимо сделать много сложной обработки потока. Netflix использует RXJS и Angular2 полагаться на RXJS для зависимостей и способствует использованию RXJS. Поскольку RXJS также разработан Microsoft, он хорошо работает с помощью Teadercript, и можно ожидать, что Microsoft продолжит улучшение RXJS.

Тем не менее, RXJS, как говорят, имеет довольно крутущую кривую обучения, поэтому некоторые разработчики просто просто отказываются от FRP в JavaScript в целом и собирают функциональные языки программирования, которые могут компилировать для JavaScript.

Наиболее заметными претендентами являются Clojurecript и Elm, но в целом рост функциональных реакционноспособных программирования Pales по сравнению с React + Redux. (Тем не менее, redux был вдохновлен ELM, поэтому, возможно, больше разработчиков захотят проверить ELM):

Учитывая, насколько крупным экосистемой JavaScript – это трудно прогнозировать вероятность массовой миграции в Элму (Scala завершилась не заменой Java, так как люди продолжали говорить, что, независимо от того, насколько превосходные люди думали, что язык сравнивается с Java). RXJS, с другой стороны, в настоящее время все еще есть Довольно высокий входной барьер На данный момент становится мейнстримом.

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

Desktop Framework Showdown: NW.JS VS Electron

В настоящее время много программного обеспечения необходимо синхронизировать данные по разным платформам (а именно, мобильный и рабочий стол). Многие сервисы начинаются как веб-приложения, прежде чем они портировали для поддержки приложений для рабочего стола для лучшего пользовательского опыта, тем более что разработка веб-приложения быстрее и проще для обновления. Не говоря уже, пользователи могут мгновенно пробовать веб-приложения без необходимости ничего не устанавливать, так что исключает шаг в воронке.

В прошлом люди застряли с CEF, если они хотели использовать веб-технологии для разработки интерфейсных интерфейсов настольных приложений для рабочего стола. Это было не так просто, и приложения также не были по-настоящему кроссплатформенной совместимой. Node.js Desktop Frameworks сделали построение кроссплатформенных приложений легко, а сдвиг на использование веб-технологий для разработки настольных компьютеров было на подъеме с 2014 года. Нет новостей.

Тем не менее, есть два основных игрока в поле: NW.JS (ранее узел-вебКит) и электрон. Хотя оба являются большим вариантом и имеют свои преимущества, эта статья о тенденциях.

Таким образом, давайте посмотрим на историю звезды GitHub для обоих проектов:

из История звезды

NWJS VS Electron

Хотя NW.Js вышел ранее и считается более зрелым, кажется, что электрон растет при экспоненте, в то время как NW.JS растет с довольно линейной скоростью.

Но ждать! Смотрит на Звезды GitHub Fair, учитывая GitHub – это тот, который разработал электрон в первую очередь? Ну, если вы посмотрите на интерес к тенденциям Google, это более или менее отражает то же самое:

nw.js vs Electron

Электрон довольно новый, но он используется установленными компаниями, такими как Slack, Microsoft (Visiual Studio), WordPress и Sencha. (На боковой заметке кодамент также использует электрон для питания настольного приложения для наших наложений). Благодаря простоту использования электронов, экосистема и сообщество росли очень быстро. Эта популярность, вероятно, будет продолжать на 2017 год, создавая электрон в рамках выбора для разработки приложения для рабочего стола.

Мобильный приложение Framework Showdown: React Native VS Ionic

С тех пор, как выяснилось реагирование на родие, люди были прогнозированы 2016 год, будет годом реагировать родным, и что это будущее мобильного развития с веб-технологиями, учитывая, как его можно использовать для создания кроссплатформенных приложений. Если вы Google о реагировании нативной производительности приложения, вы бы в основном нашли похвалы, особенно когда его сравниваются с HTML5 Hybrid Apps, поскольку он работает много гладкой. Итак, это 2016 год реагирования родных? С точки зрения дыхания и процентов, это наверняка, наверное, соответствует ожиданиям:

реагировать родным против ионным

Но как насчет фактического усыновления? Начиная с этой статьи, React Nature еще не выпустила версию 1 (все еще в версии 0.26), поэтому прыжки прямо сейчас потребуют смелости и терпения, чтобы справиться с изменениями, которые требуют рефакторинга всей кодовой базы, которые требуют рефакторинга всей кодовой базы История неожиданных вопросов (CODEDEDOR также использует React Reaction для создания нашего мобильного приложения). Таким образом, давайте посмотрим на приближенные загрузки NPM RACT NATED VS IONIC:

из Trends NPM

реагировать родным против ионным

Что ж, глядя на график, кажется, что реагированные находятся на своем пути, чтобы обогнать ионные в качестве рамки выбора для кроссплатформенной мобильной разработки с использованием веб-технологий.

С точки зрения рынка труда React Nature также становится все более востребованным, чем Ionic:

из indeed.com

реагировать родным против ионным

Делать быстрый поиск по сообщениям Angellist Passions, результаты более или менее отражают то же самое, где насчитывается 75 вакансий для разработчиков, квалифицированных с IONIC, в то время как было 65 вакансий для реагирования собственных разработчиков по состоянию на 30 мая.

Таким образом, знакомство с реактивным встроенным обязательно будет хорошим бонусом к вашему резюме, идущим вперед в 2016 году.

Будущее веб-API: graphql vs Отдых

После того, как Facebook объявила, что они были на открытом воздухе Sourceing GraphQL, он стал ожесточенным поездом, многие разработчики JavaScript вскочили на 2016 год, особенно поскольку Facebook почти станет яблоком JavaScript с точки зрения проектов с открытым исходным кодом:

график

Graphqcl стремился к тому, чтобы заменить API для отдыха, но с учетом того, насколько вездесущие apis отдыхают, это вряд ли сценарий:

Отдых vs graphql.

В лучшем случае GraphQL будет Дополнение отдохнуть API Делая вещи, которые оно лучше, чем отдохнуть API, но не будет заменяться отдохнуть, так как некоторые думали, что она была установлена. Кроме того, GraphQL по-прежнему очень новичок и связан с реле Facebook, поэтому нет никаких лучших практик или достаточно учебных ресурсов для людей, чтобы выбрать навыку MASSE. Следовательно, 2016, вероятно, слишком рано для GraphQL, чтобы стать вещь, несмотря на сильную интерес и шумиху. 2017 может быть другим, но в 2016 году не будет неотложным навыком, чтобы приобрести только 6 вакансий для него в списке ангела по состоянию на 30 мая.

JavaScript тенденции вывод

Сообщество JavaScript обычно перемещается с быстрыми темпами, и сохранение основного потока обычно означает больше ресурсов и поддержки и актуальности. Основываясь на тенденциях, осмотренных в статье, сегодняшний разработчик JavaScript должен учиться React & Redux, быть знакомым с функциональным программированием и начать работу с помощью Tymdercript. Кроме того, будут окна возможностей для тех, кто воспользовался реактивным родным, в то время как некоторое опыт с электроном может быть приятно. (Конечно, он не говорит о том, что TDD – это навык, чтобы учиться, независимо от того, какой год).

Yi-jirr Chen |. Контент Marketing @ Commentor Ваш типичный массивный гик, который играют и любит науку/технику. Также публикует фантастику под названием пера, который является имя пера по причине