С тех пор, как C/C++, Python и некоторые другие языка программирования становятся все более популярными, Java постепенно уходит в небытие. Стоит ли продолжать изучать Java или лучше просто переключиться на другой язык? Эту тему обсудили пользователи Quora . Для вас мы собрали самые интересные мнения.

Ашиш Датта , FizzBuzz

Я бы продолжил изучать Java. Он совершенно точно не «уходит в небытие», примите к сведению следующее:

  • Фонд Apache Foundation активно инвестируется компанией Java. Эти ребята руководят такими «горячими» проектами, как, например, Hadoop, Cassandra и Solr. Несмотря на то, что все это проекты с открытым исходным кодом, в них сочетаются «корпоративное» чутье с «корпоративными» зарплатами разработчиков.
  • Рабочий цикл виртуальной машины Java (JVM) стал популярен и для других языков и платформ. Оказывается, более 20 лет развития во главе с умнейшими корпорациями в деле разработки виртуальных машин (SmallTalk inspired и др.) привели созданию одной отличной модели. Так что сейчас существуют такие языки, как Scala, Groovy и Jruby, компилирующиеся с байт-кодом JVM. Знание Java поможет вам выучить эти языки, поскольку в них будут часто использоваться интерфейсы программирования приложений Java.
  • В дополнение к вышесказанному, Java является одним из «базовых» языков разработки Android. Так что со знанием Java вы сможете перейти к разработкам в системе Android, а это довольно неплохо оплачивается.

Возможно, Java не так уж привлекателен, но конкретно Java 8 является вполне приличным языком программирования, существует большое количество свободного софта Java. Мобильный и предпринимательский спрос на Java довольно велик. Так что продолжайте изучать Java, но непременно познакомьтесь и с языками вроде Python, C и C++ ‑ все любят полиглотов!

Майкл Браун , ветеран индустрии разработки программного обеспечения с 20-летним стажем

Ирония заключается в том, что когда 17 лет назад язык Java набирал популярность, многие люди считали это погребальным звоном для C/C++.

Если я чему-то и научился, работая в этой индустрии, так это тому, что если бросить взгляд сверху, под солнцем (англ. Sun – прим. ред .) нет почти ничего нового (пару лет назад это считалось бы неплохим каламбуром, но компания Sun уже не существует…). Отрасль все еще достаточно молода для того, чтобы мы могли учиться у первых программистов. Проблема состоит в том, что мы продолжаем «переучиваться» одним и тем же вещам, и так уверены, что то, что мы делаем, является совершенно уникальным, что в конечном итоге мы едва ли движемся вперед.

Вернемся в 2010 (когда Sun все еще была компанией). Все были помешаны на шаблоне MVVM, я даже заключил издательский контракт на написание книги на эту тему (MVVM Unleashed: Michael Brown: 9780672334382: Amazon.com: Books) . Я так и не написал эту книгу, потому что каждый раз, когда я принимался за дело, я узнавал что-то новое. Например, тот факт, что MVVM существовал еще со времен разработки первого пользовательского интерфейса, Smalltalk на Xerox PARC. Отрасли понадобилось более 30 лет, чтобы вновь вернуться к концепту, который был разработан (и основательно задокументирован, надо сказать) вместе с самой первой пользовательской платформой.

Или как насчет облачных вычислений? Арендуйте ненадолго компьютер, созданный крупной компанией. Выключите его, когда в нем нет необходимости, включите его, когда вам нужно. Коммунальные вычислительные услуги: это волна будущего!

Если есть совет, который я могу дать молодому программисту, то вот он: не гонись за водным потоком… Я имею ввиду новые тенденции: не преследуй их, сфокусируйся на изучении основ и опирайся на них. К тому моменту, как ты научишься тому, что в данный момент в топе, оно уже будет заменено чем-то новым, что скорее всего было «вчерашней новостью» тогда, когда ты гнался за трендом.

Питер Лорей , 23 года работы в сфере IT

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

История «Смерти Java»

Большая часть прогнозов исходит от людей, которые пытаются протолкнуть «лучший» язык программирования, не завоевывавший своей пользовательской аудитории.

Существует распространенное заблуждение, что технического превосходства достаточно, чтобы предпочесть X (икс) Y (игрику) (хотя не всегда очевидно, что X лучше, чем Y). Большинство людей используют Qwerty клавиатуру, хотя причиной ее изобретения была попытка избежать заклинивания молоточков в пишущей машинке. Было изобретено множество «лучших» раскладок, но едва ли кто-то их использует.

Владислав Зоров , могу убедить людей в том, что я знаю Java

  1. Не прекращайте изучать Java. Познакомьтесь также с С++ и Python – все эти три языка похожи (объектно-ориентированные императивные), так что это не должно вызвать трудностей.
  2. Изучите также JavaScript как следует (чтобы увидеть прототипный объектно-ориентированный императивный язык программирования) и Smalltalk (действующий объектно-ориентированный язык). К тому моменту вас уже должно от этого тошнить.
  3. Теперь пришло время изучить другие языки. Например, Assembler и C (низкоуровневые процессуальные), Haskell (функциональный), Prolog (логический) и Racket (мета-язык).
  4. Пока вы этим занимаетесь, изучайте параллельно языки, которые требуются для ваших целей - Swift (приложения Apple), Rust (как C++, но функциональный), Erlang (распространенный для приложений), MATLAB (математический матрицы), C# (улучшенный Java, но для среды Microsoft).
  5. Осознайте, что за всю жизнь вам предстоит выучить десятки языков программирования, так что на самом деле не имеет значения, с чего вы начнете и что популярно на данный момент. До тех пор, пока изучение языков приносит удовольствие, оно того стоит.

Стивен Панвази , технический директор в Perchbox

Java далек от вымирания. Поскольку его выбрали в качестве языка для Android, его использование сейчас важнее, чем когда бы то ни было.

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

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

Гэрри Тейлор , пишет на Java,C,Python, Objective-C, PHP, C#,Swift

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

1. Java на находится на грани исчезновения. Сегодня Java используют больше людей, чем 5 или 10 лет назад.

2. Вымирает из-за Python? Java младше, чем Python.

3. Нет языка более популярного, чем Java, за исключением разве что JavaScript, но только из-за того, что у компании монополия. В сети у вас просто нет другого выбора.

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

Умур Озкул , технический директор в Publitory

Если вы хотите найти работу, языка лучше Java вам не найти. Большая часть компаний используют Java и продолжат это делать. Для них просто не имеет смысла выбрасывать их код. Следовательно, если вы специалист в Java, в переквалификации просто нет смысла.

Если вы планируете стартап или работаете на себя, тогда Elixir+Phoenix или Ruby on Rails будут лучшими языками для вас. Большая часть стартапов не использует Java, так как на данный момент существуют более быстрые пути выполнения того же объема работы. Чтобы составить представление об этом: Comparison of Java and Ruby on Rails with Hobo .

Для работы по договору одинаково актуальны Java и Ruby.

Сырая статистика популярности того или иного языка не дает представления об использующей его аудитории. Все относительно.

Артём Моисеев , стартапер

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

Java отнюдь не на пути к исчезновению. Большое количество софта, разработанного крупными компаниями, написано на Java. Это язык корпоративного мира. Он обладает широкой пользовательской аудиторией, обширными библиотеками, что делает его уникальным инструментом. Не забудьте про Android, он тоже работает на Java.

От автора: на этом языке программирования работает примерно 3 миллиарда смартфонов, 125 миллионов телевизоров и все до единого Blu-Ray проигрыватели в мире. Этот язык регулярно занимает призовые места в рейтингах разработчиков ПО и является самым востребованным среди крупнейших IT-компаний. Он является техническим феноменом и работает абсолютно на любом устройстве, что соответствует его принципу «написал один раз - запускай везде» (WORA - «write once, run anywhere»). Кто догадался, поднимите руки! Конечно же, это язык Java. И сегодня я раскрою вам все карты и расскажу всю правду о том, как стать Java программистом с нуля! Устраивайтесь поудобнее!

Несколько фактов о Java

Дабы не утомлять вас длинными теоретическими проповедями, я сгруппировал некоторые сведения о Java в списочек, после прочтения которого вы получите озарение понимание того, что это за язык такой, и какова его роль в дикой природе программировании:

Java - это «модный» и кроссплатформенный язык программирования. Он работает на любом устройстве с любой операционкой. На нем написаны все Google и Android-приложения. Ни по одному другому языку вы не найдете столько информации и обучающих материалов;

официальная дата выпуска языка - 23 мая 1995 г. Изначально он задумывался для интерактивного кабельного телевидения, но «не срослось». Изобретателем Java является компания Sun Microsystems, которую в 2010 г. выкупила Oracle;

многие путают Java и JavaScript. Если вы хотите заниматься (веб-сайты, веб-приложения), то выбирайте второй вариант. Java - это back-end, т. е. разработка начинки приложений;

JavaScript. Быстрый старт

это объектно-ориентированный язык программирования, код которого выполняется специальной виртуальной java-машиной (JVM). В США примерно на 9 из 10 компьютеров установлена эта самая JVM;

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

Вы все еще здесь или побежали сделать себе чашку ароматного кофе? Тогда продолжим разговор о том, как стать Java программистом.

Установка программной среды

Как ни странно, у некоторых возникают проблемы уже на этапе установки программной среды Java. Для этого нужно перейти на официальный сайт компании-разработчика - Oracle. Ссылку на актуальную версию вы увидите в самом верху сайта. Вам нужны Java SE (Standard Edition) и Java Development Kit - набор инструментов для разработки. Обратите внимание, что существуют разные дистрибутивы под разные операционные системы.

Допустим, у нас Windows. Заходим в «Свойства системы» и смотрим, какая у нас система - 32-разрядная или 64-разрядная. Скачиваем файл, который подходит нам по разрядности. Если выберете неправильный дистрибутив, то при компиляции кода получите ошибку. После подтверждения Accept License Agreement нажимаем кнопку скачивания.

Каков инструментарий Java-разработчика?

Большую часть времени программист проводит в IDE (IntelliJ IDEA, Eclipse, WebStorm, NetBeans). IDE - это интегрированная среда разработки, специальный интерфейс для программирования. Он не только помогает при написании кода, но и упрощает использование других инструментов программирования. Некоторые советуют тем, кто хочет стать Java программистом с нуля, первые свои программы писать в обычном блокноте или Notepad++.

Может, элементарные программы и стоит писать в редакторе. Но в дальнейшем все-таки настоятельно рекомендую использовать IDE. У нее есть функции автодополнения кода, контроля синтаксиса, перехода к определению метода и многие другие. А интеллектуальные подсказки избавят вас от необходимости помнить все названия функций и их параметры, что просто физически невозможно.

При командной работе, когда над одной программой работает сразу несколько человек, нужно обязательно использовать, так называемую, систему контроля версий (Perforce, Git, Subversion и т. д.). Впрочем, системы контроля версий очень удобны и при работе в одиночку.

Примерный алгоритм изучения Java

Изучение основ языка Java. Первый шаг - это развитие в себе навыков логического мышления и изучение фундаментальных понятий синтаксиса языка программирования. Вооружившись книгой, статьей или обучающим видео, научитесь создавать с помощью IDE или текстового редактора простые Java-объекты, в которых заложены различные варианты поведения, в зависимости от входных данных.

Разбор расширенных возможностей языка Java. На этом этапе изучите синтаксис, библиотеки и фреймворки, которые пригодятся вам при создании более сложных приложений с практическим уклоном. Хороший программист не только умеет пользоваться различными библиотеками, но и знает, как они устроены внутри. Кроме этого, такие понятия, как операции ввода/вывода, наследование и абстракции, сериализация, родовые типы, регулярные выражения, не должны быть для вас пустым звуком.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Тонкости программирования. Ни в коем случае не брезгуйте тщательным изучением документации и жаргона Java-программирования. На этом этапе вы уже должны «мутировать» в зрелого программиста. Общайтесь с Java-гуру, которых вы найдете в тематических форумах и прочих средах, где собираются программисты. Показывайте им свой код, советуйтесь и советуйте другим - «накапливайте карму». Можете даже завести свой блог, публиковать на нем отрывки собственного кода и смотреть, что говорят о нем более опытные программисты.

Как начать программировать?

Для тех, кто собирается стать Java-программистом с полного нуля, я расскажу, как написать свою первую программу.
Итак, открываем любой текстовый редактор и записываем:

class HelloWorld { public static void main(String args) { System.out.println("Hello World!"); } }

class HelloWorld {

public static void main (String args ) {

System . out . println ("Hello World!" ) ;

Сохраняем файл под именем HelloWorld.java. Обращаю ваше внимание, что Java чувствительна к регистру, поэтому слова «helloworld» и «HelloWorld» являются разными. Если названия файла и класса в коде будут отличаться, то программа попросту не запустится. Кроме этого, важно, чтобы кодировка была ANSI.

Теперь мы должны скомпилировать программу, используя компилятор javac из JDK. Пока мы не установили среду разработки, будем компилировать с помощью командной строки cmd, вызвав ее из меню «Пуск». В появившемся окне набираем cmd и жмем Enter.

Если мы сохранили HelloWorld.java в папку Progа на диске C, то вписываем команду:

cd C : \ Prog а

и нажимаем Enter. Таким образом, мы изменили каталог на тот, где расположена наша программа. Затем вводим.

Здравствуй, дорогой читатель. Давно хотел написать подобную статью, но либо не хватало времени, либо мешала предательская лень. Но, как бы там ни было, все-таки у меня получилось собраться с мыслями, чтобы написать то, что принесет вам, я надеюсь, какую нибудь пользу. С радостью поделюсь своими знаниями и опытом, в ответ с вас причитается время и внимание. По моему мнению, данная публикация хорошо подойдет для тех, кто готов определиться в своих интересах и хочет связать свою жизнь с IT - тем или иным образом. Итак, поехали!

Выбор языка программирования

Публикация начинает выглядеть как многие подобные материалы. По закону жанра я должен буду написать название пары тройки языков программирования, назвать парочку плюсов и минусов и, в итоге, так и не ответив на вопрос, перейти к следующей части. Отчасти в этом есть доля правды, ведь каждый выбирает для себя тот язык, который ему ближе, исходя из того, разработкой какого вида продуктов он хочет заниматься в будущем. Большинство из вас изучали в школе Turbo Pascal и вряд ли для вас будет новостью, что на этом языке сейчас уже практически ничего не пишут. Так и в данном случае, выбирать язык надо грамотно, хотя много знаний никогда не бывает, но если вы хотите за короткий промежуток времени эффективно влиться в ряды программистов, к выбору языка надо подходить с умом. В самом начале запомните: хороший программист никогда не останется голодным, а в большинстве случаев сможет купить себе много икры (это определение подойдет для любой специальности, но ни одна специальность не даст вам такой свободы выбора места работы, как в плане компаний, так и стран - программист он и в Индии программист).

Логично, что чем популярнее язык и востребованность, тем больше шансов будет найти работу в будущем, при этом язык должен быть несложным в освоении. Потому что хотя на C++ и пишут большое количество игр и получают за это хорошие деньги, новичку, тем более не знакомому с ООП (объектно-ориентированное программирование) лучше отложить на некоторое время этот язык куда подальше. Далее по ссылке предоставлен список самых популярный языков программирования 2014 года , и как видно, на первом месте стоит Java, далее идут C языки, затем Phyton, JavaScript, PHP, Ruby и т.д. Если самим поискать подобные статистики, то вы увидите, что в разных источниках места заняты по разному, но в целом первые 10 мест по содержанию везде будут совпадать.

Если же обратиться к другому , в основе которого анализ выложенных в Twitter вакансий, вы увидите очень похожую ситуацию с первым примером. И да, обе статьи на английском, привыкайте к этому, если хотите стать программистом, запомните, что практически вся документации и источники полезной информации написаны на английском, так что если ваши знания в этом языке слабоваты, добавьте себе в список дел на завтра и на ближайшее будущее изучать и практиковать английский. Думаю, я даже напишу отдельную статью, посвященную изучению иностранного языка.

Исходя из этих двух источников мы уже можем себе представить, какие языки программирования сейчас «в моде». Как видно по названию, автор статьи выбрал для себя Java. Хотя я считаю его лучшим для изучения ООП, найдется много людей, которые не согласятся со мной, и это логично - сколько людей, столько и мнений. Тут мы встаем на небольшое перепутье дорог: выбирать Java, С# (очень похож на Java), Phyton, если мы хотим работать с начинками программ и приложений (back-end) или же PHP, JavaScript, HTML, если хотим заниматься веб-разработкой (front-end). В первом случае я бы свой выбор остановил на Java, а во втором - на PHP, хотя опять же, тут больше по вкусу, надо уже самому искать информацию о различных языках и вообще понимать, чем ты хочешь заниматься. Для размышлений вот подборка языков, которые используются в крупнейших интернет компаниях мира .

Есть 2 основных причины, почему бы я выбрал либо Java, либо PHP. Первая - это очень популярные языки и найти соотвествующую работу не составит труда, а вторая - в том, что ни по каким другом языкам вы не найдете столько обучающего материала как по этим двум, причем как на русском, так и на английском.

Обучение

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

Вообще, у меня есть своя теория, не раз подтвержденная мною же на практике: абсолютно всему можно научиться за 1 год. . Поверьте мне, это сущая правда, кому-то даже понадобиться меньше времени, но если человек не перестает сдаваться и в течение года с умом подходит к обучение, то практически невозможно, чтобы он не научился. Это не только в программировании, абсолютно в любой сфере: хочешь играть на гитаре - без проблем (у меня это заняло не так уж много времени и сил), научиться аргентинскому танго, кататься на серфе - на все это хватит одного года. Главное - учитесь!

В данном случае я буду рассматривать язык Java, так как он мне все таки ближе. Благо в интернете полно людей, которые безвозмездно помогают другим в обучение, поэтому найти подходящий для вас материал не составит труда. , которые можно с пером и бумагой просматривать в стенах свою уютной квартиры (пока только на русском языке). Для тех, кто привык вчитываться в проходимый материал, опять же интернет предоставляет большие возможности и это только один из всевозможных сайтов с уроками по Java . Теории хоть отбавляй, но не могу сказать про такой обучающий сайт, как Coursera.org , где вы сможете найти обучающие курсы на различных языках и по различным областям, в том числе и программированию - опять же все абсолютно бесплатно. Таких сайтов не один и не два, стоит всего лишь поискать.

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

Ну и конечно, кто-то спросит, а как же книга? Разве не надо их читать, а если надо - то что? На это я отвечу, что от чтения книг еще никто глупее не становился. Книг тоже очень много, но я перечислю только небольшую часть из них:

Помощь в практике

Как уже упоминалось, практика - это неотъемлемая часть в любом обучение, особенно в программировании. Тут вам придется кодить и кодить, вплоть до мышечной памяти пальцев. Это, конечно, немного утрировано, но на первых порах придется и вправду много бить по клавишам, чтобы запоминать значения различных конструкций, чтобы в будущем использовать практически на автомате.

У многих начинающих программистов на первых порах возникает большое количество вопросов, особенно когда нужно выполнять самостоятельное задание. Это нормально. Но в таких ситуациях надо понимать, что практически на любой возникший у вас вопрос можно найти ответ в интернете. Вряд ли вы первый, кто с ней сталкивается, поэтому не торопитесь сражу же задавать вопросы на различные форумы программистов (о которых я напишу чуть позже). Посидите минутку, правильно сформулируйте проблему у себя в голове и смело ищите её в поисковике. Наверняка большинство будут искать на русском языке, но не забывайте, что язык программистов - это английский, поэтому, если вы не нашли ответ на великом и могучем, стоит поискать на языке, который в школе вроде бы все учили, но так и не выучили. Но если даже и в этом случае оказалось, что на ваш вопрос нигде нет ответа, в бой вступают лучшие форумы интернета:

  • Cyberforum - по моему мнению, самый популярный русскоязычный форум ITшников, тут можно найти ответы на вопросы, при чем и не только в области программирования;
  • Programmers forum - крупный русскоязычный форум;
  • Searchengines - небезызвестный форум, но специализируется больше в веб- программирование;
  • Stack overflow - а это уже, не побоюсь этих слов, самый популярный во всем мире IT-форум, ответы практически на все свои вопросы вы найдете именно здесь;
  • Dev shed - тоже крупный англоязычный форум;
  • Quora - форум прямо не специализирующийся на программировании, но зато большая вероятность, что вы получите ответ от настоящего профессионала.

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

Компилируем код

Довольно много я уже написал, конечно, сложно охватить такую большую тему в рамках одной статьи, но, думаю, первые шаги уже сделаны и вызвать у вас соответсвующие мысли они должны. Думаю, это только первая статья из серии «Как стать программистом» и, соответственно «зачем?», если вы стоите на перепутье дорог и пока не знаете, какой выбрать путь. В следующий раз я затрону более интересные в материальном плане вещи, ведь не секрет, что программисты люди не бедные, а уж где и сколько они получают, посмотрим в следующий раз.

Наконец, для тех, кто хочет действительно стать программистом, желаю взять быка за рога, собрать всю волю в кулак и делать то, что вам нравится. До меня уже тысячи раз говорили, но я повторюсь, главное - желание и труд. Тогда все у вас получится. Запомните самое главное: воспринимайте изучение языков программирования и различных технологий не как цель, а как СРЕДСТВО. Только представьте, какие возможности перед вами открываются. Может быть, именно вы станете одним из тех, кто меняет мир в режиме реального времени. Так что удачи и спасибо за внимание!

Видео-бонус

Теги: Добавить метки

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

Вот 5 языков программирования, которые после Java произведут наименьший негативный эффект:

C#

C# - язык, с которым так или иначе сталкивался любой выпускник кафедры программирования (тем более опытный разработчик). Именно поэтому многие согласятся, что, не считая языков, транслируемых в JVM, это наиболее схожий представитель. Кроме того, C# востребован, а это важное условие, если вы собираетесь монетизировать свои знания.

Что общего: очень сложно удержаться от цитирования статьи на Википедии , поэтому вот вам факты.

Оба языка так или иначе являются развитием C++. Более того, создатели C# называют свой язык развитием Java. Кроме того, оба языка строго следуют принципам ООП.

А еще у них похожий синтаксис:

/* HelloWorld.java */

Public class HelloWorld
{
public static void main(String args) {
System.out.println("Hello World!");
}
}

// HelloWorld.cs
public class HelloWorld
{
public static void Main()
{
System.Console.WriteLine("Hello World!");
}
}

И у Java, и у C# типизация строгая, что в известной степени способствует повышению безопасности в области использования памяти. Еще у языков похожие алгоритмы сборки мусора. Ещё один важный схожий момент, прекрасно характеризующий оба языка. Наконец, оба они кроссплатформенны. Изучение этого языка рекомендуем начать с нашего .

От чего захочется ругаться: Microsoft и естественная завязанность на их экосистему.

Swift

Если вы изучили Java для разработки мобильных приложений, то Swift станет логичным карьерным развитием. Более того, не так давно слухи упорно связывали будущее платформы Android со Swift, однако в итоге Google отстояло свое право на использование Java. Впрочем, кто поставит свой компьютер на то, что в дальнейшем Google не свернет с этого курса? В любом случае, умение писать “правильные” приложения для iOS лишним точно не будет.

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

От чего хочется ругаться: подобно C#, экосистема Apple может вызывать отторжение.

Kotlin

Сахар для синтаксиса - распространенное мнение относительно Kotlin у разработчиков Java, ознакомившихся с ним лишь поверхностно. Куда более совершенный язык и наиболее очевидный преемник Java из существующих - утверждают люди, посвятившие изучению Kotlin чуть больше времени. В любом случае, как бы не сложилось ваше знакомство, равнодушным останитесь вряд ли.

Что общего: создатели не скрывают, что Kotlin является доработкой Java с перспективой полного замещения. То есть фактически Kotlin сочетает всё то, за что вы полюбили Java, но при этом ещё удобнее, безопаснее и функциональнее. Работает с виртуальной машиной JVM.

От чего хочется ругаться: и кому нужна Java, если есть Kotlin?

Python

Изучить Python после Java стоит хотя бы потому, что это просто. Во всех рейтингах, опросах и , посвящённых выбору первого языка программирования, Python неизменно находится в топе.

Что общего: практически ничего, кроме некоторых общих принципов ООП и кроссплатформености.

От чего хочется ругаться: слишком далеко от привычного понимания о программировании.

Go

Возвращаясь к теме возможного отказа Google от Java в своем мобильном будущем, стоит всерьез рассмотреть вариант развития событий, при котором наследником станет Go. Пока что язык здорово проявляет себя в привычной среде Big Data, то есть сегодня, как минимум, Go может послужить полезным расширением для функциональности вашего приложения. Но если Go продолжит развиваться заданными темпами, а Google решится на внутреннюю революцию, то знание этого языка станет не бонусом, а практически необходимостью. Кстати, пару лет назад один из создателей Go, выложил в сеть интересную презентацию с названием “Go для Java-программистов” . Рекомендуется к просмотру.

Что общего: формально общего здесь примерно столько же, сколько и в случае с C#: происхождение от языка C, строгая типизация, алгоритмы очистки памяти, схожие методы, интерфейсы и многое другое. Но, как язык, созданный почти через 15 лет после Java и через 10 после C#, Go он куда совершеннее, функциональнее и перспективнее.

От чего хочется ругаться: несмотря на то, что язык Go не вчера был придуман, при углубленном изучении вы неизбежно столкнетесь с

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

Итак, ты твердо решил стать Java-программистом. И сразу у тебя возникает куча вопросов: “С чего начать обучение Java? Как правильно выбрать программу обучения? Как выучить Java и получить опыт работы?”.

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

Мы выделили самые популярные способы выучить программирование самостоятельно.

Итак, несколько способов выучить Java:

1. Самостоятельное обучение.

Преимуществом такого способа обучения является то, что ты сам можешь планировать абсолютно все аспекты своего тренинга — что, где, как и когда тебе учить.

Недостатком же является то, что не у каждого хватит силы воли самостоятельно освоить огромное количество материала, прочитать кучу книг, получить достаточно практического опыта и не бросить все в начале пути. Кроме того, у каждого будут сомнения: “А верной ли дорогой я иду, все ли делаю как надо?”.

2. Бесплатный онлайн-курс.

Преимуществом данного способа обучения является, конечно, стоимость — её просто нет, все материалы бесплатны и это огромный плюс.

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

3. Офлайн-тренинг.

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

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


4. Персональный коучинг/менторство.

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

Единственным недостатком будет то, что время опытного наставника стоит немало, да и найти человека, который согласится уделить тебе столько внимания, не всегда просто.

5. Ну и наконец тренинг в компании.

Есть вариант устроиться на какие-либо учебные курсы в IT-компанию, где, скорее всего, ты будешь работать на проекте, достаточно приближенном к реальным условиям, плюс есть большая вероятность после успешного окончания курса устроиться на работу в эту компанию. Однако, конкурс на такие тренинги зачастую очень высок и нужно уже обладать уверенными знаниями, чтобы тебя взяли.

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

Удачи тебе во всех твоих начинаниях! Если ты знаешь еще некоторые способы и на своей практике убедился, что они работают, напиши нам. Мы всегда готовы пообщаться с людьми, которые открыты к диалогу.