Разбираемся с Meteor.js
Как я стал разработчиком веб приложений — в стиле Meteor
Что должен знать веб-разработчик, собирающийся создавать приложения на Meteor? Ниже приведен список языков, фреймворков, библиотек, пакетов и многое другое ;)
Списки в статье специально даны в определённом порядке, если не указано иное. Эта статья не объясняет, почему вы должны изучать ту или иную технологию (вы сами должны в этом разобраться). Её цель — дать быстрый обзор технологий, с которыми ежедневно имеет дело Meteor-разработчик.
Чтобы не блуждать в море новой информации, хорошо бы иметь под рукой карту, на которую можно взглянуть, чтобы узнать в какой точке пути вы находитесь.
Языки, библиотеки и фреймворки, трындец!
В конечном итоге вам нужно уметь понимать Meteor API. Изучение технологий, приведенных ниже, даст вам всё необходимое. Нет нужды становиться экспертом в каждой области, но нужно понимать структуру и терминологию каждой из них.
Вы не знаете, что такое API? Посмотрите видео этого парня.
Обязательно
- Javascript — вначале JS?! Да, солдат, не задавай мне снова вопросов, а то я подыму тебя с вертухи!
- Shell (Terminal)
- HTML & CSS
- JSON
- MongoDB
- Handlebars
- Git и GitHub
- jQuery
- LESS и/или SASS
- Underscore и/или Lo-Dash
- Bootstrap
Опционально (изучайте при необходимости)
- NodeJS
- Cordova
- ElasticSearch
- Ionic — пакет Meteor Meteoric
MeteorJS
Теперь, когда изучены все перечисленные технологии, вы достойны познать силу и великолепие Meteor!
Почему вам нужно изучить ВСЁ это перед тем, как прикасаться к Meteor? Потому что Meteor — это full-Stack платформа. Через Meteor вы управляете фронт-эндом, бек-эндом и всеми остальными эндами.
… Ладно, больше никаких вопросов, давайте узнаем ещё БОЛЬШЕ!
Пришло время становиться Meteor-задротом, читайте доки:
Если подпроекты выглядят пугающе, не волнуйтесь. Ниже приведен необходимый минимум, который вам нужно знать:
Хорошие уроки и курсы по Meteor
Упорядочены по сложности и глубине. Уроки, курсы, книги и видео проведут вас по различным проектам Meteor. Это будет кульминацией всей статьи:
- Meteor’s official tutorial (бесплатно)
- Your First Meteor Application от David Turnbull (бесплатно)
- Meteor Walkthrough Videos от George McKnight (бесплатно)
- Meteor Cookbook от Abigail Watson
- Discover Meteor от Sacha Greif & Tom Coleman (от $ до $$) (прим. переводчика: есть бесплатная версия на русском языке)
- Meteor in Action от Manuel Schoebel & Stephan Hochhaus ($)
- 8 Days of Meteor от Josh Owens ($)
- Meteor Testing от Sam Hatoum ($)
- Meteor Club Master Bootcamp от Josh Owens ($$$)
- Meteor Club Testing Bootcamp от Josh Owens & Sam Hatoum ($$$)
- Bulletproof Meteor от Arunoda Susiripala (бесплатно или $$)
- Продвинутые курсы Evented Mind от Chris Mather ($$)
Пакеты Meteor (в произвольном порядке)
Да, для изучения осталось ещё много всего. У Метеора есть менеджер пакетов, который называется Atmosphere. Он позволяет сообществу создавать пакеты, которые глубоко интегрированы в платформу Meteor, они расширяют API, доступные для вас как для разработчика. Ниже приведен список из стандартных пакетов, которые вы найдёте почти в каждом серьёзном Meteor-приложении, поэтому их нужно знать:
Название пакета | GitHub | Atmosphere | Сайт |
---|---|---|---|
accounts-password | github | atmosphere | сайт |
useraccounts:core | github | atmosphere | сайт |
reactive-var | atmosphere | сайт | |
reactive-dict | atmosphere | ||
iron:router | github | atmosphere | руководство сайт |
zimme:iron-router-active | github | atmosphere | |
zimme:iron-router-auth | github | atmosphere | |
manuelschoebel:ms-seo | github | atmosphere | статья |
dburles:collection-helpers | github | atmosphere | |
matb33:collection-hooks | github | atmosphere | |
reywood:publish-composite | github | atmosphere | сайт |
ongoworks:security | github | atmosphere | |
alanning:roles | github | atmosphere | сайт |
aldeed:autoform | github | atmosphere | |
aldeed:collection2 | github | atmosphere | |
aldeed:simple-schema | github | atmosphere | |
momentjs:moment | github | atmosphere | сайт |
matteodem:easy-search | github | atmosphere | сайт |
matteodem:server-session | github | atmosphere | |
meteorhacks:kadira | github | atmosphere | сайт |
meteorhacks:aggregate | github | atmosphere | |
meteorhacks:fast-render | github | atmosphere | сайт |
meteorhacks:subs-manager | github | atmosphere | |
meteorhacks:unblock | github | atmosphere | |
raix:handlebar-helpers | github | atmosphere | |
yogiben:helpers | github | atmosphere | |
zimme:collection-softremovable | github | atmosphere | |
zimme:collection-timestampable | github | atmosphere | |
u2622:persistent-session | github | atmosphere | |
tmeasday:publish-counts | github | atmosphere | |
percolatestudio:synced-cron | github | atmosphere | |
dburles:factory | github | atmosphere | |
anti:fake | github | atmosphere |
##Кроличья нора становится всё глубже…
Ух ты, вы должно быть упорные, раз дошли до этого места. Ладно, хотите взглянуть на мои суперсекретные списки?
Сервис-провайдеры
Когда вам нужно разместить ваше приложение онлайн, есть огромное количество сервис-провайдеров, доступных для разработчика. Ниже несколько из них, которые служат целям Meteor-сообщества (и делают отличную работу), поэтому я решил озвучить их названия:
- Kadira — отслеживание производительности
- Modulus — хостинг (используйте промо-код «Metpodcast», чтобы получить кредит в $25)
- Compose — хостинг MongoDB с Oplog
Блоги, видео, новости и всё остальное (в произвольном порядке)
Пойдём выпьем со мной чего-нибудь, что остудит нас после Meteor… Увидишь, мы будем не одни:
- Crater.io — агрегатор новостей
- Meteor Weekly — агрегатор новостей
- Meteor’s Official Blog — блог
- Josh Owens — блог
- Discover Meteor — блог
- The Meteor Chef — блог
- Differential — блог
- Gentlenode — блог
- MeteorHacks — блог
- Meteor Tips — блог
- PEM — блог
- Manuel Schoebel — блог
- Practical Meteor — блог
- Lukasz Kups — блог
- David Burles — блог
- The Meteor Podcast — подкаст
- Meteor Devshops — YouTube
- Josh Owens — YouTube
- George McKnight — YouTube
- Arunoda Susiripala — YouTube
- David Turnball — YouTube
- Sasi Kanth — YouTube
- Vianney Lecroart — Medium
- Space Camp — Medium
- Dominus — Medium
- Arunoda Susiripala — Medium
- Sacha Greif — Medium
- Paul van Zyl — Medium
Если я кого-то забыл, дайте мне знать на (@_benstr) или @joshowens.
Другие статьи вроде этой
- Best Learning Resources for Meteor.js от Cтефан Хочхаус (Stephan Hochhaus)
- Learn Meteor.js Properly, которую написал Ричард (Richard)