- PVSM.RU - https://www.pvsm.ru -

Современный веб-разработчик, или 6 вещей, которые вы должны знать, чтобы выжить

image
Это статья об изменениях, которые произошли в мире веб-разработки. Я наблюдаю огромное количество веб-разработчиков, которые буквально застряли в устаревших технологиях, особенно в мире .NET. Если вы еще не начали совершенствовать свои навыки, и адаптироваться к изменяющимся трендам, вы должны начинать уже сегодня.

Поставьте цель разрабатывать ваши веб-приложения правильно. В вашем распоряжении много статей и книг, как никогда раньше. Появилось как никогда много интернет ресурсов, которые могут упростить и ускорить процесс разработки. Итак, вот те 6 вещей, которые вы должны знать и уметь чтобы оставаться востребованным веб-разработчиком, и быть лучшим в своей сфере.

1 – Улучшайте качество кода (JavaScript и CSS)

Если вы не пишете грамотный HTML и CSS, вам не выжить.

  • Изучите все основные возможности JavaScript
  • Затем приступайте к продвинутым возможностям языка
  • Как только вы будете чувствовать себя уверенно в чистом JS ознакомьтесь с языками более высокого уровня абстракции, например CoffeeScript [1] или TypeScript [2]. Совершенствуйте использование необходимых JavaScript библиотек, вот список минимально необходимых:
  • JQuery [3]– Вы ведь уже давно его выучили, да?
  • Require.js [4] — JavaScript загрузчик файлов и модулей.
  • Underscore.js [5] – отличная библиотека утилит
  • modernizr [6] – детектор поддержки возможностей HTML/CSS браузерами.
  • history.js [7] – эмуляция HTML history API, работа с историей браузера.

И вот еще немного:

2 – Создавайте адаптивный дизайн

Сегодня все больше и больше трафика потрбебляется с помощью мобильных устройств, поэтому большинство веб-сайтов по умолчанию должны выглядеть хорошо на устройствах любого форм-фактора. Если вам как и мне некогда создавать все эти веб-страницы используя media queries, облегчите свою жизнь. Освойте фреймворки адаптивного дизайна.

Адаптивный дизайн (Responsive Web Design, RWD) это подход к веб-дизайну когда сайт разрабатывается чтобы обеспечить оптимальный вид — легкось чтения и навигации без использования увеличения, поворота устройства, и прокрутки — для широкого круга устройств (от монитора до мобильных устройств)

Лично я пользуюсь Twitter Bootstrap [15] и Zurb’s Foundation [16]. Я очень долго работаю с Bootstrap, и приятно удивлен фишками Foundation.

Обязательно к прочтению:

3 – Изучите наиболее полезные JavaScript MVC фреймворки

Станьте первоклассным JavaScript разработчиком. Имеется множество Javascript MVC [19] фреймворков для клиентской части, но выучите хотя бы 5 (Да, по меньшей мере 5). Я собрал для вас стартовую подборку.

Чтобы сравнить и сопоставить их возможности, посмотрите на TodoMVC [26] – очень крутая и полезная штука. Это проект, который создан чтобы помочь вам сделать выбор из зоопарка MVC фреймворков, в зависимости от ваших целей.

4 – Разберитесь в работе REST и HTTP

Вы должны понимать как работают веб-службы Restful и профессионально владеть созданием и управлением серверной частью сайта. К примеру, пользуйтесь Node.js [27]. Если вы используете .NET, начните с Web APIs [28]. Более того, разберитесь как работает REST. Потратьте время на изучение Hypermedia. Не останавливайтесь на теории, выполните несколько примеров. А затем, обьедините ваши знания REST веб-сервисов с одним из упомянутых выше MVC фреймворков, и сделайте какой-нибудь проект с использованием этих технологий. Используйте правильные HTTP запросы.

Обязательно к прочтению:

Эти статьи сойдут для начала. Также, обратите внимание на готовые реализации например Meteor, SignalR.

5 – Будущее за HTML5

Стандарт HTML5 еще не завершен, и продолжает развиваться, но многое уже утверждено. Наряду с разработкой сайтов, HTML5 предоставляет множество контейнеров (например PhoneGap и т.д.) которые позволяют упаковывать ваши приложения в браузер — контейнеры для мобильный устройств (так называемые гибридные приложения), для распространения их как нативных приложений через привычные каналы дистрибуции.

HTML5 это язык разметки для структурирования и представления контента в сети и явлется основной технологией Интернета. Это пятая ревизия стандарта HTML (создан в 1990 и стандартизирован как HTML4 в 1997) и, по состоянию на ноябрь 2012, находится в разработке.Основной целью является улучшить язык, добавив поддержку современного медиа-контента с сохранением читабельности кода людьми и стабильно распознаваемым компьютерами и др. устройствами (веб-браузеры, парсеры, и т.д.).

Есть много классных статей по HTML5:

Ознакомьтесь с самыми полезными и впечатляющими HTML5 Javascript API и преимуществами языка. Обратите внимание на Web Sockets, Application Cache, Canvas API, Vide/Audio и т.д. Начните для начала с какого-нибудь популярного шаблона, можете использовать для создания шаблонов, например Initializr. [36]
Ищите в этих технологиях то, что вам реально пригодится в работе.

  • Несколько примеров [37] использования возможностей HTML5
  • Пользуйтесь чем-то вроде html5please [38] или CanIUse [39], они помогут вам быть в курсе последних изменений в стандарте, которые вы можете использовать, для улучшения вашего дизайна.
  • Также, посмотрите, как большие игроки рынка используют HTML5 как платформу для построения кросс-платформенных гибридных приложений — не только для web, а и для десктопов и мобильных устройств.
  • Google Chrome Packaged Applications [40]
  • Firefox OS [41]

6 – Оптимизируйте

Оптимизируйте все, что вы делаете, во время разработки, и по окончании ее.

  • Структурируйте и улучшайте [42] ваш CSS и Javascript код.
  • Пользуйтесь инструментами инспекции кода вашей страницы, и проверяйте производительность JavaScript
  • Google Chrome’s speed tracer [43]
  • YSlow [44]
  • Когда необходимо, мониторьте сетевой трафик, это может понадобиться в любое время – для этого попробуйте инструменты вроде Fiddler [45]
  • Пользуйтесь полезными сервисами, например Screenfly [46] для проверки отображения веб-страницы на устройствах разного форм-фактора
  • Используйте симуляторы, например Ripple [47] чтобы проверить поведение вашего веб-сайта на мобильных устройствах.

Ну вот и все, я закончил с советами. Можете садиться за чтение, и начинать совершенствоваться, желаю вам успехов.

Автор: Wolf6969

Источник [48]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/javascript/22431

Ссылки в тексте:

[1] CoffeeScript: http://coffeescript.org/

[2] TypeScript: http://www.amazedsaint.com/2012/10/microsoft-typescript-and-quick.html

[3] JQuery : http://jquery.com/

[4] Require.js: http://requirejs.org/

[5] Underscore.js: http://documentcloud.github.com/underscore/

[6] modernizr: http://modernizr.com/

[7] history.js: https://github.com/balupton/History.js/

[8] библиотеки и плагины: http://coding.smashingmagazine.com/2012/09/23/useful-javascript-libraries-jquery-plugins-web-developers/

[9] Javascript Resources: http://www.crockford.com/

[10] SASS: http://sass-lang.com/

[11] Less: http://lesscss.org/

[12] техникам CSS3: http://www.webdesignerdepot.com/2011/01/50-awesome-css3-techniques-for-better-designs/

[13] поддержкой возможностей CSS3: http://fmbip.com/litmus

[14] media queries: http://www.w3.org/TR/css3-mediaqueries/

[15] Twitter Bootstrap: http://twitter.github.com/bootstrap/

[16] Zurb’s Foundation: http://foundation.zurb.com/

[17] Responsive Web Design: http://www.alistapart.com/articles/responsive-web-design/

[18] Responsive CSS Frameworks: http://responsive.vermilion.com/compare.php

[19] Javascript MVC: http://coding.smashingmagazine.com/2012/07/27/journey-through-the-javascript-mvc-jungle/

[20] Backbone.js: http://documentcloud.github.com/backbone

[21] AngularJS: http://angularjs.org/

[22] Spine.js: http://spinejs.com/

[23] KnockoutJS: http://knockoutjs.com/

[24] Ember.js: http://emberjs.com/

[25] YUI: http://yuilibrary.com/

[26] TodoMVC: http://todomvc.com/

[27] Node.js: http://www.amazedsaint.com/2011/09/creating-10-minute-todo-listing-app-on.html

[28] Web APIs: http://www.amazedsaint.com/2012/05/self-hosting-aspnet-web-api-and.html

[29] WOA is here to stay: http://www.amazedsaint.com/2011/08/woa-is-here-to-stay-and-why-new-wcf.html

[30] Richardson Maturity Model: http://martinfowler.com/articles/richardsonMaturityModel.html

[31] REST in Practice: http://www.amazon.com/REST-Practice-Hypermedia-Systems-Architecture/dp/0596805829

[32] Hypermedia and Forms: http://blogs.msdn.com/b/gblock/archive/2011/05/09/hypermedia-and-forms.aspx

[33] Пошаговое руководство от Nettuts: http://net.tutsplus.com/tutorials/html-css-techniques/html-5-and-css-3-the-techniques-youll-soon-be-using/

[34] Статья в журнале Smashing: http://coding.smashingmagazine.com/2009/08/04/designing-a-html-5-layout-from-scratch/

[35] Топ-25 возможностей HTML5: http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/

[36] Initializr.: http://www.initializr.com/

[37] примеров: http://html5demos.com/

[38] html5please: http://html5please.com/

[39] CanIUse: http://caniuse.com/

[40] Google Chrome Packaged Applications: http://developer.chrome.com/apps/about_apps.html

[41] Firefox OS: http://www.mozilla.org/en-US/firefoxos/

[42] Структурируйте и улучшайте: http://www.asp.net/mvc/tutorials/mvc-4/bundling-and-minification

[43] Google Chrome’s speed tracer: https://developers.google.com/web-toolkit/speedtracer/get-started

[44] YSlow: http://developer.yahoo.com/yslow/

[45] Fiddler: http://www.fiddler2.com/fiddler2/

[46] Screenfly: http://quirktools.com/screenfly/

[47] Ripple: https://chrome.google.com/webstore/detail/ripple-emulator-beta/geelfhphabnejjhdalkjhgipohgpdnoc

[48] Источник: http://habrahabr.ru/post/162317/