Дневник web-разработки 01. Выбираем стэк технологий



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

На клиентской стороне никаких сюрпризов. Фронт-энд пишется на языке JavaScript (если точнее. то на EcmaScript 6), а за отрисовку отвечает фреймворк Vue в связке с webpack. Тут наверное надо пояснить почему именно Vue, а не мегапопулярный React. За всю свою карьеру мне удалось пощупать достаточное количество JavaScript-фреймворков. Приходилось иметь дело с Angular.js, Ext.js, Dojo, с новым Angular’ом и с Ember.
Таким образом нераспробованными из популярных фреймворков остались только React и Vue. Причины же почему я предпочел Vue Реакту довольно простые:

  1. Мне не нравятся JSX-шаблоны в React.
  2. Vue поновее и более “моднявый”.
  3. Vue положительно сравнивают с Angular.
  4. Мне не нравится название “React”.

Таким образом, тщательно взвесив преимущества и недостатки двух фреймворков [сарказм], мой выбор пал на Vue, который я до этого проекта вообще не практиковал.

А вот на серверную сторону мною был выбран молодой, но очень перспективный язык Kotlin от компании JetBrains. Kotlin это JVM язык, который исполняется на виртуальной машине Java и может использовать всю существующую экосистему Java. По сути, этот язык - это такая Java 2.0, в нем исправлены многие недостатки Java как языка. К сожалению, Котлину, как по мне, недостает популярности. Ну а в роли веб-фремворка на сервере у нас используется Spring Boot.

А теперь немного коснемся архитектуры. Так как я всегда легко поддавался влиянию различных трендова в IT-индустрии, при планировании высокоуровневой архитектуры приложения я решил сделать всё в виде микросервисов (всегда используйте микросервисы, даже там где они не нужны, иначе другие разработчики подумают что вы лох и будут показывать на вас пальцем). Именно по этой причине и бэкэнд и фронтэнд имеют собственный сервер, для бэкэнда это Apache Tomcat, а для фронтэнда - Node.js. Ах да, еще каждый из них завернут в Docker-контейнер, но об этом в следующий раз.

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

На этом на сегодня все, следите за обновлениями!


Comments 7


стоп

20.10.2017 11:04
0
20.10.2017 13:35
0

Привет, @brainburns-dev! Я бот @upper, и я поддержал пост:

Дневник web-разработки 01. Выбираем стэк технологий

А вы знаете про проект ПИН

20.10.2017 13:35
0

Очень интересная задумка))) буду следить!!

24.10.2017 07:15
0