Платформы Java и .NET
На данный момент наиболее активно развиваются две конкурирующие линии технологий создания ПО на основе компонентов — технологии Java и .NET. В этой и следующих лекциях мы рассмотрим несколько элементов этих технологий, являющихся ключевыми в создании широко востребованного в настоящее время и достаточно сложного вида приложений. Это Webприложения, т.е. распределенное программное обеспечение, использующее базовую инфраструктуру Интернет для связи между различными своими компонентами, а стандартные инструменты для навигации по Web — браузеры — как основу для своего пользовательского интерфейса.
Технологии Java представляют собой набор стандартов, инструментов и библиотек, предназначенных для разработки приложений разных типов и связанных друг с другом использованием языка программирования Java. Торговая марка Java принадлежит компании Sun Microsystems, и эта компания во многом определяет развитие технологий Java, но в нем активно участвуют и другие игроки — IBM, Intel, Oracle, Hewlett-Packard, SAP, Bea и пр.
В этот набор входят следующие основные элементы.
•Платформа Java Platform Standard Edition (J2SE) [1].
Предназначена для разработки обычных, в основном, однопользовательских приложений.
•Платформа Java Platform Enterprise Edition (J2EE) [2].
Предназначена для разработки распределенных Web-приложений уровня предприятия.
•Платформа Java Platform Micro Edition (J2ME) [3].
Предназначена для разработки встроенных приложений, работающих на ограниченных ресурсах, в основном, в мобильных телефонах и компьютеризированных бытовых устройствах.
•Платформа Java Card [4].
Предназначена для разработки ПО, управляющего функционированием цифровых карт. Ресурсы, имеющиеся в распоряжении такого ПО, ограничены в наибольшей степени.
C некоторыми оговорками можно считать, что J2ME является подмножеством J2SE, а та, в свою очередь, подмножеством J2EE. Java Card представляет собой, по существу, особый набор средств разработки, связанный с остальными платформами только поддержкой (в сильно урезанном виде) языка Java.
Язык Java — это объектно-ориентированный язык программирования, который транслируется не непосредственно в машинно-зависимый код, а в так называемый байт-код, исполняемый специальным интерпретатором, виртуальной Java машиной (Java Virtual Machine, JVM). Такая организация работы Java-программ позволяет им быть переносимыми без изменений и одинаково работать на разных платформах, если на этих платформах есть реализация JVM, соответствующая опубликованным спецификациям виртуальной машины.
Yandex.RTB R-A-252273-3- Предисловие
- Лекция 1. Проблемы разработки сложных программных систем
- Программы «большие» и «маленькие»
- Принципы работы со сложными системами
- Литература к Лекции 1
- Лекция 2. Жизненный цикл и процессы разработки ПО
- Понятие жизненного цикла ПО
- Модели жизненного цикла
- «Тяжелые» и «легкие» процессы разработки
- Унифицированный процесс Rational
- Экстремальное программирование
- Лекция 4. Анализ предметной области и требования к ПО
- Анализ предметной области
- Выделение и анализ требований
- Литература к Лекции 4
- Лекция 5. Качество ПО и методы его контроля
- Качество программного обеспечения
- Методы контроля качества
- Ошибки в программах
- Лекция 6. Архитектура программного обеспечения
- Анализ области решений
- Архитектура программного обеспечения
- Разработка и оценка архитектуры на основе сценариев
- Литература к Лекции 6
- Лекция 7. Образцы проектирования
- Образцы человеческой деятельности
- Многоуровневая система
- Литература к Лекции 7
- Лекция 8. Образцы проектирования (продолжение)
- Данные–представление–обработка
- Идиомы
- Шаблонный метод
- Образцы организации и образцы процессов
- Литература к Лекции 8
- Понятность
- Методы разработки удобного программного обеспечения
- Лекция 10. Основные конструкции языков Java и C#
- Платформы Java и .NET
- Целочисленные типы
- Инструкции и выражения
- Выражения
- Наследование
- Шаблонные типы и операции
- Описание метаданных
- Средства создания многопоточных программ
- Основные понятия компонентных технологий
- Общие принципы построения распределенных систем
- Лекция 13. Компонентные технологии разработки Web-приложений
- Web-приложения
- Платформа Java 2 Enterprise Edition
- Именование
- Работа с XML
- Отказоустойчивость
- Защита
- Работа с XML
- Литература к Лекции 13
- Уровень бизнес-логики и модели данных в J2EE
- Компоненты, управляемые сообщениями
- Уровень модели данных в .NET
- Уровень пользовательского интерфейса в J2EE
- Уровень пользовательского интерфейса в .NET
- Лекция 15. Развитие компонентных технологий
- Развитие технологий J2EE
- Java Data Objects
- Enterprise Java Beans 3.0
- Среда Spring
- Защита
- Литература к Лекции 15
- Лекция 16. Управление разработкой ПО
- Задачи управления проектами
- Окружение проекта
- Структура организации-исполнителя проекта
- Управление рисками