Также следует иметь ввиду, что учиться придется постоянно. Не получится выучить язык программирования и просто писать код. Язык весьма обширен и досконально выучить его нереально, к тому же он постоянно развивается, выходят новые версии. Кроме языка нужно будет изучать еще много инструментов (приложений). Так что работа в ИТ это постоянное обучение, особенно для программиста.
Глава 2. Выбор языка программирования
Языков программирования очень много и у каждого языка есть своя область применения. Какой-то общей классификации не существует, тем не менее один из разграничивающих параметров это уровень языка.
Уровень языка это степень, в которой семантика языка учитывает особенности мышления человека, нежели машины то есть уровень языка тем «ниже», чем он «ближе к машине», и тем «выше», чем он «ближе к человеку».
Когда я только думал о том, чтобы стать программистом я не имел никакого представления о языках программирования. Слышал только, что одни языки учить легче, другие труднее. Вот соответственно чем ниже уровень языка, тем учить его труднее, но тем быстрее в среднем будет работать написанная на нем программа и меньше расходовать системные ресурсы.
Еще тут нужно учитывать, что не всегда этот параметр достаточно объективен: например, если говорить об одном из самых низкоуровневых языков программирования Ассемблере, то он действительно очень сложен, судите сами.
Это листинг программы, которая выводит на монитор сообщение «Hello, world!».
-Hello, world! Assembler:
SECTION. data
msg db «Hello, world!», 0xa
len equ $ msg
SECTION. text
global _start
_start:
mov eax, 4
mov ebx, 1
mov ecx, msg
mov edx, len
int 0x80
mov eax, 1
mov ebx, 0
int 0x80
А вот аналогичная программа на Java:
-Hello, world! Java:
public static void main (String [] args) {
System.out.println («Hello world!»);
}
C# приводить не буду синтаксис похож на Java и области применения сходны: это и веб разработка и десктоп приложения. Тем не менее на рынке труда Java более востребована. Вот результат запроса на одном из самых известных поисковиков вакансий:
10865 вакансий «java»
6153 вакансии «C#»
Теперь таже самая программа на Python:
-Hello, world! Python:
print («Hello world!»)
Всего 1 строка.
Однако Питон более высокоуровневый чем Java, что обеспечивает более низкий порог вхождения, но более узкую область применения:
относительно недавно стал применяться в веб-разработке.
Используется в data science: машинное обучение, анализ данных и визуализация.
Ну и конечно программа написанная на Python в большинстве случаев будет выполняться дольше, чем написанная на Java.
А вот, к чему я все это вел, такая же программа на языке GO, который позиционируется как высокоуровневый (как Python), но значительно быстрее:
-Hello, world! Go:
import «fmt»
func main () {
fmt.Println («Hello world!»)
}
Я рассматривал GO как кандидата но, когда открыл что-то посложнее понял, что Java читается легче.
Вы, конечно, можете составить свое мнение и посмотреть примеры программ в интернете. На такой маленькой программе сложно показать особенности языков, но на более длинном листинге лично для меня GO совсем не прост.
Кто-то может спросить почему я не упомянул JavaScript. Могу ответить одно мне не понравился его синтаксис. И насколько я понимаю у него более узкая сфера применения чем у Java. Все это конечно вкусовщина каждому свое. Посмотрите примеры на этом языке, попробуйте, возможно это Ваш язык. И конечно сначала посмотрите насколько язык, который Вы выбираете, востребован на рынке труда.
2.1. Плюсы Java
Несмотря на растущую популярность Go и Python, Java остается одним из самых востребованных языков уже более десяти лет.
У Java возможно самая широкая сфера применения. Java используется для:
веб-разработки на нем написаны сайты такие как Амазон, РЖД, Одноклассники и т.д;