Посвящается моей музе Кицунэ ЗЛА
© Павел Александрович Забелин, 2020
ISBN 978-5-0051-5483-5
Создано в интеллектуальной издательской системе Ridero
Главная цель этой книги – показать читателю, что программирование на Java, гораздо более проще, чем принято об этом думать. Имея за плечами опыт программирования больше 15 лет, я относительно недавно увлекся программированием на Java и эта книга – неоконченная «сжатая» история самообучения. Как известно «хочешь лучше понять сам – расскажи об этом другому», что я и попытался сделать на страницах этой книге в меру своих сил и времени. Я прочитал несколько книг и прошел несколько курсов в интернете: в университете Skillbox, Udemy, Stepik, что и вам советую. Но прежде чем купить какие-либо курсы и начать их проходить, я рекомендую прочесть эту книгу: зачастую курсы грешат провалами в теории и скачками сложности преподаваемого материала, да и сложно определить начальный уровень подготовки студента. Эта книга как раз вам поможет обрести базовые знания программирования и языка программирования Java, и избавит вас от проблем с пониманием основ программирования.
Эта книга для любого, кто хочет научиться программировать. Программирование только лишь окутано завесой чего-то очень сложного. На своем пути я видел людей абсолютно различных профессий (мало относящихся к компьютерам), которые успешно освоили программирование. Программирование – это очень широкая область деятельности, которая позволяет проявить разнообразные способности и умения. К тому же «побочные эффекты» профессионального программирования, такие как возможность работы без привязки к месту жительства и достойная оплата труда, которая позволит проживать практически в любом уголке планеты, еще больше мотивируют попробовать погрузиться в мир IT. Не говоря уже о том, что человеческая цивилизация чем дальше, тем больше уходит в «цифровые миры» и возможность быть не только пользователем, но и создателем программ – это очень интересно.
Все, что вам потребуется для успешного прочтения этой книги и продуктивного усваивания материала, это: в первую очередь желание и намерение не сдаваться перед трудностями. Второе: компьютер с операционной системой Windows, в 2020 году вам подойдет компьютер из любой ценовой категории – Java без проблем работает на любых процессорах семейства Intel, ну и конечно лучше если у вашего компьютера будет хотя бы 4 гигабайта оперативной памяти. Конечно же вы можете использовать компьютер на базе ОС Linux или MacOS, только вам придется самостоятельно установить среду разработки JetBrains IntelliJ IDEA (это будет единственное отличие).
От вас не требуется каких-то особых познаний в информатике или программировании, все необходимое для того, чтобы начать программировать я и так вам расскажу в этой книге.
Да и вам не нужно знать высшую математику – это ответ на вопрос из топа страшных вопросов «что должен знать программист ДО того как станет писать код». То есть достаточно знать математику в пределах простейших математических операций и умения раскрыть скобки, ну и решать уравнения с одной переменной.
Большим плюсом будет умение читать и понимать английский язык, так исторически сложилось, что все в интернете найти ответ по программированию легче всего на английском языке. Плюс, также все новые и интересные книги и статьи публикуются на английском языке. Обратите на это внимание. При устройстве на работу знание английского также будет плюсом.
Небольшой обзор текущего положения дел в языках программирования. Существует всемирный рейтинг языков программирования TIOBE (https://www.tiobe.com/tiobe-index/):
И здесь мы видим, практически неизменную пятерку лидеров: Java, C, Python, C++, C#. Но этот рейтинг имеет такое же отношение к реальности, как и прогноз погоды на неделю. Сейчас я расскажу про языки из топ-10, чтобы вы смогли попробовать оценить свои представления и желания в области программирования.
Стоит сразу сказать, что языки в рейтинге, с местами 10+ не очень подходят для начального обучения, ну кроме Ruby. Но они также востребованы, и лучше, как минимум на них посмотреть – может вам понравится. А может быть столкнетесь с ними, и жизнь заставит вас выучить какой-либо из них.
10-е место Swift. Детище Apple, замена ObjectiveC для платформы MacOS\iOS (равно как Kotlin, замена Java на Android). Если вы хотите связать свою профессиональную деятельность с корпорацией Apple, то стоит начать его учить и не отвлекаться ни на что более. Он простой для изучения и даже есть курсы для детей. К тому же, на сегодняшний день специалистов со знанием его не так много.
9-е место SQL. Этот язык знать обязательно, потому что это язык «общения» с базами данных, сейчас ни одно приложение или сайт не может существовать без баз данных. Но учить его как первый язык смысла не имеет.
8-место PHP. «Домашний проект» датского программиста Расмуса Лердорфа, переросший в самый востребованный язык программирования сайтов в интернете. 80% сайтов используют PHP. Но это может быть и минусом – на PHP вы только сможете писать серверную часть (известны попытки писать приложения на нем, но это только в качестве экспериментов). PHP достаточно прост в изучении, и что может быть для некоторых решающим фактором, специалисты очень востребованы в многочисленных веб-студиях. Т.е. для цели: быстро изучить и пойти «зарабатывать, чтобы на жизнь хватало» – это язык номер 1.
7-е место JavaScript. Очень долгая история у этого языка программирования, можно сказать, что он появился вместе с интернетом (когда интернет стал доступным для массового использования). Но только в последние несколько лет он стал суперпопулярным. Для этого есть несколько причин: он стал удобным для написания больших проектов, кроме написания простых скриптов «чтобы появлялось красивое окошко» теперь на нем можно писать практически все – клиентские приложения для iOS, MacOS, Android, Windows (фреймворк Electron), серверные приложения (фреймворк NodeJS). Он очень подходит для людей, которым нужна «движуха»: идеален для написания проектов на хакатонах, новые фреймворки (библиотеки программного кода, очень облегчающие жизнь программиста и делающие очень много черной работы) появляются каждый год – с ним не бывает скучно! Специалисты очень востребованы, можно сказать что «через 20 лет будет только JavaScript».
6-место VisualBasic.NET. Скажу честно: я не знаю почему он не только в топ-10, но и вообще почему он здесь. Единственное могу предположить, что до сих пор на нем пишут макросы для MS Office, ну и может быть в Америке есть много приложений которые до сих пор требуют поддержки и обновления.
5-е место C#. Основной язык программирования проприетарной (закрытой) платформы Microsoft. NET. Великолепный язык, постоянно развивается и будет развиваться, пока в него инвестирует деньги Microsoft. На нем можно писать все что угодно, только с одним ограничением: это все может работать там, где установлена Windows или работает виртуальная машина. NET и в отличии от Java, диапазон гораздо уже (пока что). С мобильными приложениями дела обстоят совсем печально – есть проект Xamarin, который использовать никто не советует. Но также есть игровой движок Unity, в котором используется C#, но это только для игр на большом количестве платформ. C# особенно любим на территории СНГ, т.к. любима Windows. Если вы хотите спокойно развиваться как программист, иметь поддержку крупной корпорации, никогда задаваться вопросом стабильной зарплаты – C# очень хорошо подходит для этого.
4-е место C++. Самый крутой язык программирования и также круто сложен. Писать можно все и подо все. Особенно востребован там, где требуется скорость исполнения кода: игры, мобильные игры, сервера. Если вы знаете C++, то выучить что-либо еще перестает быть проблемой. Еще раз повторю: самый сложный язык из нормальных (да-да есть еще и ненормальные, например, Brainfuck) и не сильно подходит как первый язык для изучения программирования, хотя в ВУЗах учебные программы могут начинаться именно с него.
3-е место Python. Самый простой и лучший язык для изучения программирования. Но, есть одно «НО»: на нем либо писать сайты (Flask\Django), либо заниматься научными исследованиями в области искусственного интеллекта, big data, для которых нужны очень математические мозги в первую очередь. Стоит учесть, что простота его изучения довольно опасная вещь – студент в процессе обучения не видит, ЧТО реально стоит за многочисленными библиотеками (а они уже написаны на C и там все сложно).
2-е место C. Честно скажу не знаю почему, наверное, проектов на нем больше чем на C++. Он быстрее C++, но в нем приходиться писать более сложно.
1-е место Java. Но это не точно :). Просто языки в первой тройке любят меняться местами. Но раз книга про Java… Если вы прочитали и запомнили характеристики предыдущих языков, то можете сказать: а почему Java? Она ведь и не самая быстрая, и не самая простая в изучении, и в ней нет постоянных изменений и улучшений как в других языках. Дело в том, что Java это не только язык программирования, а это целая платформа (да C# – это тоже платформа, только меньше по охвату), которая позволяет вам писать программы для практически любых устройств: начиная от кофемолок, заканчивая огромными дата центрами. Java использует большие корпорации, например Yandex и Google. Она надежна и безопасна, на ней пишут большие корпоративные системы. С одной стороны код написанный на Java выглядит многословным, но это же позволяет избежать критических и трудно заметных ошибок. Существуют тысячи библиотек с открытым кодом, которые можно использовать в своих проектах. На Java вы можете писать приложения для Android, и поверьте это легче чем писать под iOS (на Objective C). И самое главное: это лучший язык для того, чтобы научиться писать правильные объектно-ориентированный код, с использованием хороших паттернов программирования. Хотите научиться писать красивый и понятный другим людям код (а это очень важное умение) – пишите его на Java. Огромным преимуществом Java является то, что этому языку много лет и за все эти годы в интернете накопилась огромная база знаний и ответов на многие проблемы, с которыми сталкиваются программисты на Java. И поэтому зачастую проще вбить запрос в Yandex и получить готовое решение, которое будет легче адаптировать к своей программе, чем «изобретать велосипед»
Бесплатно
Установите приложение, чтобы читать эту книгу бесплатно
На этой странице вы можете прочитать онлайн книгу «JAVA 2021: лёгкий старт», автора Павла Александровича Забелина. Данная книга имеет возрастное ограничение 12+, относится к жанру «Книги о компьютерах».. Книга «JAVA 2021: лёгкий старт» была издана в 2020 году. Приятного чтения!
О проекте
О подписке