Как освоить Java-программирование и начать зарабатывать
Если вы раздумываете, чем заниматься и как зарабатывать деньги — присмотритесь к профессии программиста. Она не так сложна, как кажется со стороны, и осваивать её можно удалённо, без ущерба для основной работы или учёбы в вузе. Но с чего же начать? Языков программирования больше десятка, как понять, какой лучше подойдёт для старта? Пожалуй, обратимся к опыту западных стран: в США школьники и студенты младших курсов сначала проходят обучение на Java. И это правильно — мы расскажем, почему.
Кофе и дуб
Java — один из самых популярных языков программирования, и один из самых старых среди «ныне живущих»: его начали писать в 1990 году — возможно, ещё до вашего рождения. Тогда язык хотели назвать Oak — то есть «Дуб». Но в итоге Джеймс Гослинг, создатель языка, остановился на популярном названии кофе, который, похоже, очень любил. Отсюда взялся и логотип с дымящейся чашкой — наверняка вы его видели, запуская какую-нибудь игру на старом телефоне. По другой версии, чашка с кофе появилась, так как изначально Java планировали использовать для программирования бытовых приборов. А кофемашина для многих главный бытовой прибор — у миллионов людей новый день начинается именно с неё.
Java стал поистине «народным» языком, и работают под его управлением не только видеоплееры, холодильники и прочая встраиваемая техника, но и банковские системы. Программы, написанные на Java, можно увидеть на любом Android-устройстве. Построена на нём и серверная часть огромного количества сайтов — Amazon, eBay, PayPal, «Газпрома», РЖД, МВД, «Одноклассников». В этом «Джава» особенно хорош. Даже карточка, на которую падает ваша зарплата, работает с банкоматом не в последнюю очередь благодаря одной из версий Java. Ну, а если вы грезите об игровой индустрии, вам достаточно знать, что Маркус Перссон написал на Java «Майнкрафт».
Почему же Java — настолько универсальный язык? Всё дело в его «виртуальной машине» — этот компонент адаптирует код для любого оборудования и любой операционной системы.Кроме того, в результате компиляции получается не обычный набор инструкций, а «байт-код» — промежуточный код, предназначенный для выполнения не процессором, а виртуальной машиной. Поэтому он запускается на самых разных аппаратных платформах.
Кроссплатформенность — один из главных плюсов Java. Разумеется, нельзя просто взять и перенести код с одной платформы на другую, и если вы написали что-то для браузерного приложения, это не значит, что оно тут же заработает на Android-смартфоне. Но если есть необходимые библиотеки, при портировании вы отделаетесь малой кровью.
Предположим, у вас есть автомобиль, и вы хотели бы не только ездить на нём, но и плавать. Если прямо сейчас направить его в озеро, он утонет. Но в вашем распоряжении есть инструменты, чтобы превратить дорожный транспорт ещё и в водный. Или в воздушный. Подземный. Какой угодно. Java — именно такой универсальный инструмент, который используют повсюду, несмотря на его солидный возраст.
Недостатки у языка тоже есть. Его ругают за чрезмерную нагрузку на оперативную память — отмечается, что продукты этого языка нередко обрабатывают процессы в полтора-два раза медленнее, чем конкуренты, написанные на C. Критикуют его и за синтаксис прошлого тысячелетия: блоки необходимо выделять фигурными скобками.
И всё же Java остаётся одним из самых популярных и востребованных языков. На GitHub, крупнейшем сервисе для программистов, он занимает второе место в рейтинге популярности, пропуская вперёд лишь ещё более возрастной Python.
Как и где освоить
Научиться писать на Java за пару часов, параллельно с просмотром новых серий «Игры престолов», вряд ли получится. Программирование — трудоёмкий процесс, сопряжённый с постоянным отслеживанием ошибок, багов и потерянных фигурных скобок. Но двух часов хватит, чтобы создать нечто простенькое: например, аналог «Тетриса» или «Змейки». Особенно если вы будете это делать не самостоятельно, а под руководством преподавателя. Интернет-площадка GeekBrains регулярно проводит web-семинары, посвящённые работе на Java. Посмотрите пару уроков сами и убедитесь: в программировании нет ничего архисложного.
Одними играми возможности Java-разработчика не ограничиваются, и Java-программист может найти себя, например, в разработке ПО для встраиваемой техники, Android-приложений или бэкендов — серверной части сайтов и сервисов. Специалист, знающий этот язык, никогда не останется без работы. Вправе он рассчитывать и на неплохую зарплату: средняя стоимость услуг Java-программиста в Москве оценивается в 110 тысяч рублей. Конечно, никто не станет платить такие деньги пусть и талантливому, но неопытному соискателю — нужна подготовка и стажировка.
К сожалению, при самых радужных перспективах далеко не каждый сможет «всё бросить и пойти учиться на кодера». Но Java — язык с низким порогом вхождения, и, чтобы его освоить, вовсе не обязательно пять лет просидеть в стенах учебного заведения — можно пройти специальные курсы. Выбирая их, нужно смотреть не только на цену, но и на структуру преподавания, и даже на дальнейшую карьеру выпускников, чтобы не потратить своё время и деньги впустую — в сфере образования довольно легко получить услуги низкого качества.
Пример добросовестного подхода к обучению — курсы GeekBrains. Обучение поэтапное — от вводно-ознакомительной части до полного погружения в тему, а подход вузовский — студенты посещают онлайн-занятия, выполняют домашние задания и делают проекты. По окончании курсов каждый проходит полноценную стажировку, работая в команде над реальным проектом в известной компании. Выпускники приобретают опыт, а многие находят работу по новой специальности.
Курсы идут семь месяцев (практика занимает два). Обучение организовано так, чтобы его можно было совмещать с работой или очной учёбой. Все уроки записываются, чтобы вы могли пересматривать их в любое удобное время. А в специальном чате можно обсуждать интересующие вопросы с преподавателями и другими студентами.
Для ознакомления есть бесплатные web-семинары и краткие курсы. Затраты на учёбу компенсируются за пару месяцев — после нескольких программистских зарплат. Так что, если хотите научиться кодить на Java и зарабатывать этим неплохие деньги, оставляйте заявку на сайте GeekBrains. Скоро набор, а места в группе ещё есть.
Ресурсы ?
Программы для создания UI:
Концепции UI:
Страницы с ассетами:
Для вдохновения: