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

Первые шаги на моем пути к программированию

Я начну с собственной истории. Помню, когда я впервые по-настоящему заинтересовался программированием. Это было более 10 лет назад, мне всегда очень нравилось играть в видеоигры, и я решал, какие предметы выбрать для моей A-Level. Компьютеры были вариантом, и мысль о возможности создавать крутые игры, заставляя игрока двигаться и выполнять разные действия… (в то время я думал конкретно о Gears of War) казалась потрясающей!

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

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

Как я уже упоминал, может быть сложно не только понять, с какой области начать или какая область разработки программного обеспечения вас интересует в первую очередь, но даже когда вы учитесь, вы можете изменить свое мнение или, как и я, понять, что, возможно, работая в индустрия игр станет немного более нестабильной и не совсем такой, как вы думали раньше. Я пишу эту историю, чтобы помочь вам, читатель, принять ваши решения, как я уже сказал, независимо от того, думаете ли вы о начале своего пути в программировании или вы уже являетесь разработчиком и задаетесь вопросом о других областях, надеюсь, я может помочь (и я понимаю, что давно не использовал ".": D) ...

Вот оно, основное содержание этой истории…

Решите, какая (техническая) область программирования вас интересует.

Примечание. Ничего страшного, если вы не знаете прямо сейчас, и вам разрешено передумать на полпути

Полный стек

  • Описание: Front-end и Back-end разработка [применяется к веб-приложениям и мобильным приложениям, помимо игр]
  • Используемые языки / технологии программирования: сочетание языков / технологий внешнего и внутреннего программирования.

Внешняя разработка

  • Описание: UI / UX-разработка [применяется к веб-приложениям и мобильным приложениям, в дополнение к играм]
  • Используемые языки / технологии программирования: HTML (не язык программирования), CSS, JavaScript, TypeScript, React, Angular, Vue.js, Bootstrap и т. д.

Внутренняя разработка

  • Описание: Разработка бизнес-логики и баз данных [применяется к веб-приложениям и мобильным приложениям, в дополнение к играм]
  • Используемые языки / технологии программирования: Java, C #, Ruby, Python, Node.js, TypeScript и т. д.

Dev-Ops

  • Описание: создание и развертывание веб-приложений, безопасность, обеспечение работоспособности серверов и обновление серверного программного обеспечения, а также создание сценариев [относится к веб-приложениям и мобильным приложениям, а также к играм]
  • Используемые языки / технологии программирования: Python, Go, Scala, Ruby, C / C ++, Bash, Jenkins, CircleCI и т. д.

Тестировщик

  • Описание: автоматическое или ручное тестирование различных кнопок и раскрывающихся списков, позволяющее пользователю перемещаться по приложению для совершения покупки или написания кода для тестирования другого кода [применяется к веб-приложения и мобильные приложения, а также игры]
  • Используемые языки / технологии программирования: Написание кода для тестирования = то же, что и языки / технологии внешнего и внутреннего программирования. Для автоматического тестирования = Selenium, Katalon Studio, Appium, Cucumber и т. д.

Встроенные системы

  • Описание: Написание низкоуровневого кода для систем в автомобилях, самолетах, холодильниках и т. д ... частично совпадает с разработкой IoT при разработке программного обеспечения с использованием микроконтроллеров.
  • Используемые языки / технологии программирования: Ассемблер и C / C ++. Для программирования IoT = Java, Swift, JavaScript, Python и т. д.

Разработка игр (мой любимый)

  • Описание. Разработка игр, которые могут включать веб-игры, с использованием игрового движка или мобильной платформы.
  • Используемые языки / технологии программирования: веб-игры (HTML5, CSS, JavaScript), игровые движки = Unity. (C #) или Unreal (C ++) и мобильные платформы = Android (Java / Kotlin) или iOS (Swift)

Мобильная разработка

  • Описание. Создание мобильных приложений и / или игр для Android и / или iOS. Это также может быть создание мобильной версии веб-сайта, чего также можно достичь с помощью React Native или Flutter для разработки кроссплатформенных приложений.
  • Используемые языки / технологии программирования: нативная разработка = Android (Java / Kotlin) или iOS (Swift), кроссплатформенность = (HTML5, CSS, JavaScript, (фреймворки: React-Native, Flutter и т. д.))

Почему вы хотите начать программировать / что вас вдохновляет

Что побудило вас заняться программированием? Что вдохновило вас взять книгу, посмотреть видео по программированию, пройти обучение по разработке?

Как я уже упоминал ранее в этой истории, я занимался разработкой игры, в частности, когда я был заядлым игроком в Gears of War, мне казалось действительно крутым иметь возможность сказать игровому персонажу бежать, делать бросок, открывать дверь и всякие крутые штуки.

Я думаю, что действительно важно помнить, что вдохновляет / вдохновляет вас на то, чтобы научиться программировать, научиться воплощать в жизнь ту крутую или полезную идею приложения, которая у вас есть. Это особенно важно, потому что по моему собственному опыту, существует ТАКОЕ много разных областей, и временами очень заманчиво пойти по пути, потому что это может принести больше денег или потому что вы любите играть в видеоигры. Вы должны посмотреть на реальность того, понравится ли вам процесс, так что любите ли вы также создавать игры, а не только играть в них, если вы работаете в игровой компании, каков баланс между работой и личной жизнью (очень вероятно, что у вас возникнет критический момент периодов, чтобы выпустить игру в сроки проекта, но они также, вероятно, будут иметь потрясающее и вдохновляющее рабочее место с бесплатной едой и т. д.).

Я мог бы углубиться в эту тему, но ради вас, читатель, я ценю, что вы нашли время, чтобы прочитать это, и хочу убедиться, что вы отошли от чтения моей истории с полезной информацией, а не с `` перегрузкой '' (без каламбура предназначен с концепцией ООП: D) вы с информацией.

Спасибо за чтение!

Следуйте за мной в TikTok: https://www.tiktok.com/@theinspiringprogrammer?lang=en⏰

Спасибо за внимание. Если вам нравится мой контент, присоединяйтесь к моему списку рассылки: https://www.subscribepage.com/x9b5l0, комментарий в этом или другом моем блоге публикуйте сообщения или даже следите за моими блогами на Medium 👍