Самые популярные направления в разработке ПО: что выбрать

Самые популярные направления в разработке ПО: что выбрать

Как я стал программистом

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

Web

Подробно о веб-разработке я уже писал: статья. Могу добавить, что веб — это самая объёмная сфера. В ней и фронтенд со своим HTML, CSS и Javascript; и бекенд почти со всеми известными языками программирования.

Любой стартап будет использовать веб, даже если основной продукт — это мобильное приложение. Возьмём, например, Uber. Мы пользуемся мобильным приложением, потому что сайта у них даже нет. Да он и не нужен. Но для работоспособности мобильного приложения необходим сервер, на котором хранятся данные водителей, пользователей (нас с вами), данные о погодных условиях и спроса на авто в конкретный момент и в конкретном месте. Откуда, вы думаете, приходит цена за поездку? Почему иногда она минимальная, а иногда 1.5х, 2.0х и даже 3.0х? Это всё высчитывает сервер. Более того, он знает, что в одном районе повышенный спрос и цену делает больше. В другом районе авто сейчас простаивают, цена уменьшается. А теперь вишенка на торте — сервер должен анализировать все районы в городе, все города в стране и все страны, где вообще работает Убер. И это просто гигансткие нагрузки, очень сложная и тяжёлая работа разработчиков. Естественно, всё это нельзя отнести чисто к web: тут и big data, и много другого. Но я привёл пример одного из самых сложных сервисов.

Здесь также и разнообразие языков:

  • PHP
  • ASP.NET/C#
  • Python
  • Java
  • Ruby
  • Остальные (С++, Go, Javascript, Perl, и т.д.)
Интересная статистика по использованию языков программирования самых крупных сайтов — вики.

Несомненно, большой плюс в web — это низкий порог входа. Практически все курсы (которые были в этой статье) учат программированию сайтов. И да, «hello world» на html написать проще всего.

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

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

Mobile

Разработка под смартфоны сейчас популярна как никогда. Если не брать в расчет такие системы, как Symbian и Windows Mobile, то началась она в 2008-2009 годах. С появлением iOS и Android. Сейчас они и заполнили практически весь рынок.

— Android приложения пишутся на языке Java, и с недавних пор на Kotlin.

— iOS на Swift и Objective-C.

Разница между ними есть, но в целом на этих платформах подход к мобильным приложениям одинаковый.

Выбрать очень просто — чем вам больше нравится пользоваться — под то и начинайте писать приложения. Нравится Androind — пишите на Kotlin (сейчас это язык, который скорее всего станет стандартом Android на смену Java). Нравится iOS — пишите на Swift (Objective-C уже старичок, его на новых приложениях не используют).

Кроме нативной разработки на перечисленных языках существуют кроссплатформенные фреймворки. С их помощью можно одновременно писать под iOS, Android, в некоторых случаях еще и Windows и Mac. Наиболее распространенные из них:

  • React Native (Javascript)
  • Ionic (Javascript)
  • Xamarin (C#/F#)
  • Flatter (Dart)
  • PhoneGap (Javascript)

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

Вывод

Увы, я не могу вам написать, чем конкретно начать заниматься. Это ведь дело вкуса. Единственный совет, который я могу дать — пробуйте, что больше зайдёт именно вам. Но я считаю, что сейчас мобильная разработка более привлекательна и перспективна.

Мне приходилось сталкиваться с написанием и десктопных приложений, и web, и mobile. Но меня всегда привлекали смартфоны, поэтому уже на начальном этапе я отдал своё предпочтение мобайл-разработке. О чём ни капли не жалею:)

Report Page