SlideShare a Scribd company logo
Язык программирования
Java
13 Delovaya St., Niznhy Novgorod, 603163, Russia
Tel.: +7 (8312) 778822, Fax: +7 (8312) 777790
Email: info@mera-group.com

URL: www.meranetworks.ru
История создания и
эволюция языка Java
Sun Microsystems (www.sun.com) – ныне часть
компании Oracle (www.oracle.com)

Patrick Naughton

James Gosling

Scott McNealy

Январь, 1991 г. Начало разработки нового языка программирования.
Главная причина недовольства С++:
Необходимо перекомпилировать, а зачастую и переписывать код под
каждую новую архитектуру микропроцеесора, операционную систему
и т.п.
2
История создания и
эволюция языка Java

Сентябрь, 1992 г.
Oak (дуб)

23 марта 1995 г.
Официальное объявление языка Java

1999 г. - Java 2 SE – Java 2 Standard Edition
3
Ключевые особенности
языка Java
•
•
•
•
•
•
•

архитектурная независимость и
переносимость кода
полная объектная ориентированность
устойчивость (надежность) кода
встроенный механизм поддержки
многопоточности
безопасность Java-программ
встроенная структура коллекций
удобство разработки GUI

4
Архитектурная независимость и
переносимость кода

C++
"Write Once, Run Anywhere"

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

Java
JVM (Java Virtual Machine, виртуальная Java-машина) –
исполняющая система, интерпретирующая байт-код
6
Архитектурная независимость и
переносимость кода

7
Полная объектная
ориентированность
Основная структурная единица программы – класс,
весь код Java-программы должен находиться внутри
одного или нескольких классов.

8
Устойчивость (надежность) кода
•
•
•
•
•
•

отсутствие адресной арифметики
технология «сборки мусора» (garbage
collection)
строгая типизация
отсутствие множественного наследования
классов
запрет перегрузки операторов
встроенная обработка исключений

«Java is C++ without the Guns and Knives» (С) J.Gosling

9
Поддержка многопоточности
Многопоточность Java предоставляет средства
создания приложений с множеством одновременно
активных потоков. Для эффективной работы с
потоками в Java реализован механизм семафоров и
средств синхронизации потоков: библиотека языка
предоставляет класс Thread, а система выполнения
предоставляет средства диспетчеризации и средства,
реализующие семафоры.

10
Безопасность

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

11
Встроенная структура коллекций
Структура коллекций (collections framework)
Java стандартизирует способ, с помощью
которого программы хранят и
обрабатывают структуры данных.
Структура коллекций

Интерфейсы

Реализации

Алгоритмы

12
Встроенная структура коллекций
Преимущества использования структуры коллекций:
1. Избавление от рутинных операций по
кодированию стандартных структур данных и
алгоритмов
2. Высокая эффективность реализации
3. Универсальность и простота изучения
(различные типы коллекций работают
похожим друг на друга образом и с высокой
степенью способности к взаимодействию)
4. Расширяемость
5. Параметризация

13
Удобство разработки GUI

В состав Java входят 2 библиотеки,
предназначенных для разработки GUI:
- AWT (Abstract Window Toolkit) –
платформно-зависимая библиотека,
вывод осуществляется через вызовы
OS API
- Swing - платформно-незаивисимая
библиотека, реализованная
полностью на Java, через OS API
выводится только окно, все
остальное рисуется средствами Java

14
Инструментальные средства
Большая часть инструментария для разработки
Java-программ распространяется бесплатно!
1. Java Software Development Kit - Oracle
Текущая версия Java(TM) SE Development Kit 7
http://www.oracle.com/technetwork/java/javase/downlo
ads/index.html
2. RAD – средства разработки:
–
–
–
–
–
–
–

Eclipse Project (open source project)
NetBeans (open source project)
IntelliJ IDEA (JetBrains)
JCreator Pro (Xinox Software)
Symantec Cafe (Symantec)
Visual J++ (Microsoft)
Together (TogetherSoft Corporation)

15
Первая программа на Java
class FirstProg
{public static void main(String args[ ])
{
System.out.println (“Hello, world”);
}
}

1.

-> FirstProg.class

2.

16
Литература и источники
информации в сети Интернет
1.
2.
3.
4.
5.

Ноутон П., Шилдт Г. Java 2 в подлиннике. – СПб, «BHV», 2001.
Г.Шилдт. Полный справочник по Java. – М.: Вильямс, 2007.
Б. Эккель. Thinking in Java. – Спб.:Питер, 2009.
Joshua Bloch. Effective Java: Second Edition. – Prentice Hall, 2008.
М.Гранд. Шаблоны проектирования в JAVA. Каталог популярных
шаблонов проектирования, проиллюстрированных при помощи
UML. – М.: Новое знание, 2004.

•
•

http://docs.oracle.com/javase/tutorial/
http://www.intuit.ru/department/pl/javapl/

17

More Related Content

ODP
Основи використання MVC
PPT
PDF
Microservices thoughts (ru)
PPTX
курс Java 2016. занятие 03. интерфейсы, generic, исключения
PDF
Микросервисы: взгляд сверху и в бок
PPT
лекция №13
PDF
Как приручить реактивное программирование
PDF
Михаил Галушко - Разработка WinRT приложений для Windows 8: реальный опыт
Основи використання MVC
Microservices thoughts (ru)
курс Java 2016. занятие 03. интерфейсы, generic, исключения
Микросервисы: взгляд сверху и в бок
лекция №13
Как приручить реактивное программирование
Михаил Галушко - Разработка WinRT приложений для Windows 8: реальный опыт

Similar to 1. java lecture intro (20)

ODP
Java: вчера, сегодня, завтра
PPT
0. hello java world
PDF
01 - Java. Введение в Java
PPTX
Lesson 01
PDF
15 HappyDev-lite-2015 autumn. Анна Тарасенко. Java в современном мире, вторая...
PPTX
Programming Java - Lection 01 - Basics - Lavrentyev Fedor
PPTX
1 лекция
PPTX
Java Core. Lecture# 1. Intro
PPTX
Введение в java
PDF
WordPress Shortcode
PPTX
PDF
лекция 01 прогр на java (тсн) - введение в java
PDF
Глава1: Обзор технологии Java
PDF
Java осень 2013 лекция 1-1
PDF
Java весна 2014 лекция 1
PDF
1. Введение в Java
PPT
Ввведение в java
PPT
Введение в язык программирования «Java»
PPTX
Что такое Java? Кто такой Java разработчик?
PDF
Java осень 2014 занятие 1
Java: вчера, сегодня, завтра
0. hello java world
01 - Java. Введение в Java
Lesson 01
15 HappyDev-lite-2015 autumn. Анна Тарасенко. Java в современном мире, вторая...
Programming Java - Lection 01 - Basics - Lavrentyev Fedor
1 лекция
Java Core. Lecture# 1. Intro
Введение в java
WordPress Shortcode
лекция 01 прогр на java (тсн) - введение в java
Глава1: Обзор технологии Java
Java осень 2013 лекция 1-1
Java весна 2014 лекция 1
1. Введение в Java
Ввведение в java
Введение в язык программирования «Java»
Что такое Java? Кто такой Java разработчик?
Java осень 2014 занятие 1
Ad

More from MERA_school (9)

PPT
2. java lecture syntax
PPT
10. java lecture generics&collections
PPT
9. java lecture library
PPT
8. java lecture threads
PPT
7. java lecture events
PPT
6. java lecture swing
PPT
5. java lecture io
PPT
4. java lecture exceptions
PPT
3. java lecture classes
2. java lecture syntax
10. java lecture generics&collections
9. java lecture library
8. java lecture threads
7. java lecture events
6. java lecture swing
5. java lecture io
4. java lecture exceptions
3. java lecture classes
Ad

1. java lecture intro

  • 1. Язык программирования Java 13 Delovaya St., Niznhy Novgorod, 603163, Russia Tel.: +7 (8312) 778822, Fax: +7 (8312) 777790 Email: info@mera-group.com URL: www.meranetworks.ru
  • 2. История создания и эволюция языка Java Sun Microsystems (www.sun.com) – ныне часть компании Oracle (www.oracle.com) Patrick Naughton James Gosling Scott McNealy Январь, 1991 г. Начало разработки нового языка программирования. Главная причина недовольства С++: Необходимо перекомпилировать, а зачастую и переписывать код под каждую новую архитектуру микропроцеесора, операционную систему и т.п. 2
  • 3. История создания и эволюция языка Java Сентябрь, 1992 г. Oak (дуб) 23 марта 1995 г. Официальное объявление языка Java 1999 г. - Java 2 SE – Java 2 Standard Edition 3
  • 4. Ключевые особенности языка Java • • • • • • • архитектурная независимость и переносимость кода полная объектная ориентированность устойчивость (надежность) кода встроенный механизм поддержки многопоточности безопасность Java-программ встроенная структура коллекций удобство разработки GUI 4
  • 6. Архитектурная независимость и переносимость кода Байт-код – архитектурно нейтральный, высокооптимизированный набор команд, предназначенных для выполнения специальной исполняющей системой. Java JVM (Java Virtual Machine, виртуальная Java-машина) – исполняющая система, интерпретирующая байт-код 6
  • 8. Полная объектная ориентированность Основная структурная единица программы – класс, весь код Java-программы должен находиться внутри одного или нескольких классов. 8
  • 9. Устойчивость (надежность) кода • • • • • • отсутствие адресной арифметики технология «сборки мусора» (garbage collection) строгая типизация отсутствие множественного наследования классов запрет перегрузки операторов встроенная обработка исключений «Java is C++ without the Guns and Knives» (С) J.Gosling 9
  • 10. Поддержка многопоточности Многопоточность Java предоставляет средства создания приложений с множеством одновременно активных потоков. Для эффективной работы с потоками в Java реализован механизм семафоров и средств синхронизации потоков: библиотека языка предоставляет класс Thread, а система выполнения предоставляет средства диспетчеризации и средства, реализующие семафоры. 10
  • 11. Безопасность JVM - аналог виртуального компьютера, расположенного в оперативной памяти и интерпретирующего байткод. Все действия Javaпрограммы замкнуты внутри этого виртуального компьютера. JVM может не допускать деструктивных действий Java-программ. 11
  • 12. Встроенная структура коллекций Структура коллекций (collections framework) Java стандартизирует способ, с помощью которого программы хранят и обрабатывают структуры данных. Структура коллекций Интерфейсы Реализации Алгоритмы 12
  • 13. Встроенная структура коллекций Преимущества использования структуры коллекций: 1. Избавление от рутинных операций по кодированию стандартных структур данных и алгоритмов 2. Высокая эффективность реализации 3. Универсальность и простота изучения (различные типы коллекций работают похожим друг на друга образом и с высокой степенью способности к взаимодействию) 4. Расширяемость 5. Параметризация 13
  • 14. Удобство разработки GUI В состав Java входят 2 библиотеки, предназначенных для разработки GUI: - AWT (Abstract Window Toolkit) – платформно-зависимая библиотека, вывод осуществляется через вызовы OS API - Swing - платформно-незаивисимая библиотека, реализованная полностью на Java, через OS API выводится только окно, все остальное рисуется средствами Java 14
  • 15. Инструментальные средства Большая часть инструментария для разработки Java-программ распространяется бесплатно! 1. Java Software Development Kit - Oracle Текущая версия Java(TM) SE Development Kit 7 http://www.oracle.com/technetwork/java/javase/downlo ads/index.html 2. RAD – средства разработки: – – – – – – – Eclipse Project (open source project) NetBeans (open source project) IntelliJ IDEA (JetBrains) JCreator Pro (Xinox Software) Symantec Cafe (Symantec) Visual J++ (Microsoft) Together (TogetherSoft Corporation) 15
  • 16. Первая программа на Java class FirstProg {public static void main(String args[ ]) { System.out.println (“Hello, world”); } } 1. -> FirstProg.class 2. 16
  • 17. Литература и источники информации в сети Интернет 1. 2. 3. 4. 5. Ноутон П., Шилдт Г. Java 2 в подлиннике. – СПб, «BHV», 2001. Г.Шилдт. Полный справочник по Java. – М.: Вильямс, 2007. Б. Эккель. Thinking in Java. – Спб.:Питер, 2009. Joshua Bloch. Effective Java: Second Edition. – Prentice Hall, 2008. М.Гранд. Шаблоны проектирования в JAVA. Каталог популярных шаблонов проектирования, проиллюстрированных при помощи UML. – М.: Новое знание, 2004. • • http://docs.oracle.com/javase/tutorial/ http://www.intuit.ru/department/pl/javapl/ 17