более 3 миллиардов устройств в мире работают на Java. Так почему же Java так популярна? Можно выделить основные причины:
1. "Написано единожды, работает везде" (кросс-платформенность)
Язык Java хорош тем, что один и тот же написанный код будет работать, например:
В то время как на других языках программирования Вы должны написать не 1, а сразу 3 разных кода - под Windows, под Linux и под MacOs. Такая особенность Java, что "написано единожды, работает везде" называется кросс-платформенностью. Наверняка, Вам интересно, как же обеспечили кросс-платформенность в Java? Давайте посмотрим на картинку ниже.
Разработчики языка Java не стали изобретать велосипед с нуля. А, грубо говоря:
И выиграли от такого подхода. Поскольку между Java, С и С++ есть много схожего , программистам было гораздо легче переходить на новый язык. Ведь не надо было абсолютно всё учить с нуля, многие конструкции были им уже понятны. И это тоже способствовало быстрому росту популярности Java среди программистов.
3. Объектно-ориентированный язык
Попробуем буквально на пальцах объяснить в чём суть объектно-ориентированного программирования. Позже, в разделе Java ООП, мы посвятим целую статью этому - "Что такое ООП?" А пока Вам будет достаточно такого объяснения.
ООП - это программирование с помощью классов и объектов. Для начала разберёмся что такое объект, а потом плавно перейдём к понятию что такое класс.
Всё вокруг нас является объектом. Например,
У каждого объекта есть свойства. Например, свойства машины: модель, цвет, размер и т.д.
У каждого объекта есть методы (то есть действия, которые может делать объект). Например, методы машины: затормозить, нажать на газ и т.д. Ниже приводим Вам слайд в помощь.
Как было сказано, ООП - это программирование с помощью классов и объектов. Так что же такое класс?
Класс - это как бы уже готовый шаблон. Приведём несколько образных примеров что такое класс.
Пример №1
Все кошки разные:
Но вместе с тем, у всех кошек есть много общего. Так вот если бы мы выделили общее в отдельный класс Кошка, тогда можно было бы брать класс Кошка за основу каждый раз, когда бы нам нужно было бы создать кошку. Он бы работал как шаблон при создании кошки. А далее уже под каждую конкретную кошку мы бы прописывали дополнительные черты - особенности именно этой кошки.
Пример №2
Все машины разные:
Вместе с тем у всех машин есть много общих черт. Так вот если бы мы выделили эти общие черты в отдельный класс Машина, тогда можно было бы при создании машины брать каждый раз класс Машина за основу. Он бы работал как шаблон при создании машины. А далее уже бы под каждую машину мы бы прописывали дополнительные черты - особенности именно этой машины.
Напомним: ООП (объектно-ориентированное программирование) - это программирование с помощью классов и объектов. Впрочем об ООП мы поговорим детально, когда дойдём до уровня Java ООП. А пока этой информации Вам будет более, чем достаточно.
1. "Написано единожды, работает везде" (кросс-платформенность)
Язык Java хорош тем, что один и тот же написанный код будет работать, например:
- и на Windows
- и на Linux
- и на MacOs
В то время как на других языках программирования Вы должны написать не 1, а сразу 3 разных кода - под Windows, под Linux и под MacOs. Такая особенность Java, что "написано единожды, работает везде" называется кросс-платформенностью. Наверняка, Вам интересно, как же обеспечили кросс-платформенность в Java? Давайте посмотрим на картинку ниже.
- Когда Вы будете писать программы на языке Java, они всегда будут сохраняться отдельными файлами. Причём эти файлы всегда будут иметь расширение .java. Например, Program.java. Если, например, Ваши коллеги захотят ознакомиться с таким файлом, они легко смогут прочитать написанный в нём код или что-то переписать, дописать в файле, если это будет необходимо. Потому что этот код как бы человекочитаемый.
- Далее, когда Вы запускаете компилятор (если быть совсем точными, то это называется компилятор javac), Ваш код из человекочитаемого превращается в так называемый байт-код (то есть в виде разных комбинаций 0 и 1) и код становится исключительно машиночитаемым. После этого появится еще один файл, который всегда будет иметь расширение .class. В нашем примере -Program.class
- Затем JVM (Java Virtual Machine) исполняет байт-код.
Разработчики языка Java не стали изобретать велосипед с нуля. А, грубо говоря:
- взяли всё самое лучшее от лучшей марки "велосипеда" - языка программирования С и его прямого наследника языка программирования С++
- выбросили всё, что посчитали лишним и не особо удачным в С и С++
- внесли новшества в новый язык программирования Java
И выиграли от такого подхода. Поскольку между Java, С и С++ есть много схожего , программистам было гораздо легче переходить на новый язык. Ведь не надо было абсолютно всё учить с нуля, многие конструкции были им уже понятны. И это тоже способствовало быстрому росту популярности Java среди программистов.
3. Объектно-ориентированный язык
Попробуем буквально на пальцах объяснить в чём суть объектно-ориентированного программирования. Позже, в разделе Java ООП, мы посвятим целую статью этому - "Что такое ООП?" А пока Вам будет достаточно такого объяснения.
ООП - это программирование с помощью классов и объектов. Для начала разберёмся что такое объект, а потом плавно перейдём к понятию что такое класс.
Всё вокруг нас является объектом. Например,
- машина - это объект
- человек - это объект
- кошка - это объект
- собака - это объект
- стол - это объект
- и т.д.
У каждого объекта есть свойства. Например, свойства машины: модель, цвет, размер и т.д.
У каждого объекта есть методы (то есть действия, которые может делать объект). Например, методы машины: затормозить, нажать на газ и т.д. Ниже приводим Вам слайд в помощь.
Как было сказано, ООП - это программирование с помощью классов и объектов. Так что же такое класс?
Класс - это как бы уже готовый шаблон. Приведём несколько образных примеров что такое класс.
Пример №1
Все кошки разные:
- с короткой шерстью
- с длинной шерстью
- без шерсти и т.д.
Но вместе с тем, у всех кошек есть много общего. Так вот если бы мы выделили общее в отдельный класс Кошка, тогда можно было бы брать класс Кошка за основу каждый раз, когда бы нам нужно было бы создать кошку. Он бы работал как шаблон при создании кошки. А далее уже под каждую конкретную кошку мы бы прописывали дополнительные черты - особенности именно этой кошки.
Пример №2
Все машины разные:
- легковые
- грузовики
- внедорожники
- бюджетного класса
- бизнес класса
- и т.д.
Вместе с тем у всех машин есть много общих черт. Так вот если бы мы выделили эти общие черты в отдельный класс Машина, тогда можно было бы при создании машины брать каждый раз класс Машина за основу. Он бы работал как шаблон при создании машины. А далее уже бы под каждую машину мы бы прописывали дополнительные черты - особенности именно этой машины.
Напомним: ООП (объектно-ориентированное программирование) - это программирование с помощью классов и объектов. Впрочем об ООП мы поговорим детально, когда дойдём до уровня Java ООП. А пока этой информации Вам будет более, чем достаточно.