SlideShare uma empresa Scribd logo
1 de 32
Baixar para ler offline
OSGI, Equinox, Eclipse plug-in development,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
План,[object Object],Спецификация OSGi,[object Object],Реализация OSGi – Equinox, Eclipse plug-in development,[object Object],История одного плагина + demo,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
OSGi,[object Object],Open Services Gateway Initiative,[object Object],Спецификация архитектуры для создания модульных java-приложений,[object Object],Разрабатываетсянекоммерческой организацией OSGI Alliance (osgi.org),[object Object],Применение,[object Object],Сначала: автомобильная и промышленная электроника,[object Object],Сейчас: многофункциональные desktop-приложения и enterprise системы,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Основная идея OSGI,[object Object],Вся система состоит из плагинов (бандлов),[object Object],Бандлы,[object Object],Содержат java классы и другие ресурсы,[object Object],Могут взаимодействовать друг с другом,[object Object],Могут добавляться, удаляться, запускаться, останавливаться, обновляться в runtime,[object Object],Работают в рамках одной JVM, но могут быть distributed,[object Object],Имеют версию,[object Object],Бандлом может быть, например, web-сервер, или любое другое приложение,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Жизненный цикл бандла,[object Object],Экономия ресурсов,[object Object],Нет необходимости держать в памяти неиспользуемые в данный момент бандлы,[object Object],Не нужно при старте приложения загружать все бандлы– они подгрузятся по мере необходимости,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Взаимодействие между бандлами,[object Object],Бандлы,[object Object],создают сервисы,[object Object],используют сервисы других,[object Object],Взаимодействуют через Service Registry API,[object Object],Ничего не знают друг о друге, просто ищут нужные им сервисы,[object Object],Взаимодействие похоже на SOA-приложениев одной JVM,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Бандл = jar-файл с метаданными,[object Object],Метаданные описываются в файле манифеста,[object Object],META-INF/MAINFEST.MF,[object Object],Manifest-Version: 1.0 ,[object Object],Bundle-ManifestVersion: 2 ,[object Object],Bundle-Name: My favorite Plug-in ,[object Object],Bundle-SymbolicName: org.my_plugin; singleton:=true Bundle-Version: 1.0.0 ,[object Object],Bundle-ClassPath: my_plugin.jar ,[object Object],Bundle-Activator: org.my_plugin.demo.MyActivator,[object Object],Bundle-Vendor: Me ,[object Object],Require-Bundle: org.eclipse.ui, org.eclipse.core.runtime,[object Object],Eclipse-LazyStart: true ,[object Object],Export-Package: org.my_plugin.demo.subpackage; uses:="org.eclipse.swt.graphics, org.eclipse.jface.viewers, org.eclipse.ui.part, org.eclipse.swt.widgets",[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Архитектура OSGi,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Плюсы,[object Object],Модульность приложения,[object Object],Возможность сбора приложения на лету,[object Object],Позднее и слабое связывание ,[object Object],Все бандлы взаимодействуют через Service Registry API,[object Object],Не знают друг о друге,[object Object],В системе могут одновременно быть множество различных версий одного бандла,[object Object],Возрастает надёжность системы,[object Object],Пример: в системе 700 бандлов, если один из них валится, не валится вся система,[object Object],Неработающий бандл можно перезагрузить, работа системы не остановится,[object Object],Экономия ресурсов,[object Object],Возможность поддержки системы 24 часа в сутки, 365 дней в году,[object Object],Система не отключается даже при замене оборудования,[object Object],Дополнительные возможности спецификации OSGi:,[object Object],Security, Logging, Configuration, etc.,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Тенденции модульности в Java 7,[object Object],Модульность будет реализована в JDK 7 на уровне языка,[object Object],Сейчас JDK в основном монолитная,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Реализации OSGi,[object Object],4 открытых фреймворка,[object Object],Apache Felix,[object Object],Knopflerfish,[object Object],Equinox (ядро Eclipse сверсии 3.0),[object Object],ConsiergeOSGi,[object Object],Множество коммерческих,[object Object],Samsung Service Provider 3.1,[object Object],RIO framework (Siemens),[object Object],…,[object Object],Теоретически одни и те же бандлы можно устанавливать в различные реализации контейнеров,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Eclipse,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Eclipse,[object Object],Больше, чем IDE,[object Object],Платформа для разработки интегрированных приложений,[object Object],Построен в виде набора расширяемых подсистем, а не как монолитное приложение,[object Object],После версии 3.0 был переведён на открытый стандарт OSGi (Equinox),[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Архитектура Eclipse,[object Object],Platform – ядро Eclipse,[object Object],Не содержит полезной для пользователя функциональности,[object Object],Основа для работы остальных компонентов Eclipse,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Практически чистый Eclipse,[object Object],Все расширения Eclipse - плагины,[object Object],761 плагин (я доустановил 2-3),[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Обзор Eclipse,[object Object],Perspectives,[object Object],Views,[object Object],Editors,[object Object],Main Menu,[object Object],Preferences,[object Object],Toolbar,[object Object],и т.д.,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Perspectives,[object Object],Набор функциональности для определённой деятельности,[object Object],Java разработка,[object Object],Работа с БД,[object Object],Отладка, и т.д.,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Views,[object Object],Окошки для дополни-тельной навигации и отображения различной информации, измене-ния настроек и т.д.,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Editors,[object Object],Редакторы для различных нужд,[object Object],Работа с текстом,[object Object],Подсветка синтаксиса,[object Object],Работа с XML,[object Object],Остаются при смене перспективы,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Eclipse plug-in development,[object Object],Проект Eclipse PDE ,[object Object],http://www.eclipse.org/pde/,[object Object],4июнявебинар для Belarus Open Source Lab, докладчик Eclipse PDE Team Lead (Индия, Бангалор),[object Object],Инструментарий для разработки плагинов,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Принципы плагиннойсистемы Eclipse,[object Object],Плагины предоставляютточки расширения (Extension Points),[object Object],Плагины создают расширения (Extensions),[object Object],Используют точки расширения других плагинов,[object Object],Пример – расширяем обычный текстовый редактор в редактор для работы с XML,[object Object],Точки расширения описываются в plugin.xml,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
plugin.xml,[object Object],При запуске Equinox загружает plugin.xml каждого плагина,[object Object],Строится граф зависимостей,[object Object],Описывает:,[object Object],Extension Points, которые мы предоставляем другим плагинам,[object Object],Extensions, которые мы реализуем в нашем плагине,[object Object],Список плагинов, необходимых для работы нашего и т.д.,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Пример plugin.xml,[object Object],<?xml version="1.0" encoding="UTF-8"?>,[object Object],<?eclipse version="3.4"?>,[object Object],<plugin>,[object Object],   <extension,[object Object],         point="org.eclipse.ui.commands">,[object Object],      <category,[object Object],            name="Sample Category",[object Object],            id="HelloWorldPlugin.commands.category">,[object Object],      </category>,[object Object],      <command,[object Object],            name="Sample Command",[object Object],categoryId="HelloWorldPlugin.commands.category",[object Object],            id="HelloWorldPlugin.commands.sampleCommand">,[object Object],      </command>,[object Object],   </extension>,[object Object],....,[object Object],</plugin>,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
История одного плагина,[object Object],Проект Snipple:,[object Object],Используй готовый код, а не пиши его каждый раз,[object Object],Сохраняй различные фрагменты кода,[object Object],Обменивайся ими с другими разработчиками,[object Object],Фрагменты кода называются сниппетами,[object Object],Рейтинговая система – сниппеты от более авторитетного разработчика будут имеют больший вес,[object Object],Категории, теги, генерация pdfиз подборки сниппетов по определённой технологии,[object Object],И ещё много других весёлых штук,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
История одного плагина,[object Object],Имеется:,[object Object],J2EE web-приложение,[object Object],web-интерфейс для поиска, добавления, удаления сниппетов,[object Object],Приложение использует БД,[object Object],Приложение предоставляет web-сервисы,[object Object],Задача: ,[object Object],Разработать плагин для Eclipse для работы с системой прямо из IDE,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Use Case,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Внешний вид,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Функционал плагина,[object Object],Два вида (views):,[object Object],Для локальных сниппетов, поддержка категорий,[object Object],Для поиска сниппетов в web-приложении Snipple,[object Object],Страница настроек плагина,[object Object],Перенос сниппетов из видов в редактор перетягиванием,[object Object],Редактирование свойств сниппетов в стандартном Properties view,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Часть архитектуры плагина,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
DEMO,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
С чего начать изучать разработку плагинов?,[object Object],vogella.de/eclipse.html,[object Object],eclipsepluginsite.com,[object Object],EclipsePlug-ins: Third Edition,Eric Clayberg, Dan Rubel,[object Object],Мастер создания плагинов в самом Eclipse,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]
Спасибо за внимание!,[object Object],Презентация будет доступна на сайте oslab.by,[object Object],Author: Konstantin Slisenko, JazzTeam, 2011,[object Object]

Mais conteúdo relacionado

Mais procurados

Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоDotNetConf
 
React Native в продакшне
React Native в продакшнеReact Native в продакшне
React Native в продакшнеEugeni Feudorov
 
Самодиагностика сервисов на базе платформы .NET
Самодиагностика сервисов на базе платформы .NETСамодиагностика сервисов на базе платформы .NET
Самодиагностика сервисов на базе платформы .NETAndrew Gubskiy
 
Тестируем мобильное приложение в суровых реалиях Интернета
Тестируем мобильное приложение в суровых реалиях ИнтернетаТестируем мобильное приложение в суровых реалиях Интернета
Тестируем мобильное приложение в суровых реалиях ИнтернетаSQALab
 
Gradle. Новый уровень автоматизации для Android
Gradle. Новый уровень автоматизации для AndroidGradle. Новый уровень автоматизации для Android
Gradle. Новый уровень автоматизации для AndroidSQALab
 
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)Ontico
 
Continuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxContinuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxDotNetConf
 
Типовая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesТиповая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesPositive Hack Days
 
Развитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityРазвитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityPositive Hack Days
 
Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Fwdays
 
Виртуальные среды тестирования (ADD2010)
Виртуальные среды тестирования (ADD2010)Виртуальные среды тестирования (ADD2010)
Виртуальные среды тестирования (ADD2010)Dmitry Lobasev
 
Maven как средство сборки проекта
Maven как средство сборки проектаMaven как средство сборки проекта
Maven как средство сборки проектаYova Stoika
 
Микросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокМикросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокDotNetConf
 
Heroku for Java developer
Heroku for Java developerHeroku for Java developer
Heroku for Java developerVRPInc
 
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesPositive Hack Days
 
Как devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеКак devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеKirill Vechera
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovJavaDayUA
 
Подводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
Подводная часть айсберга: что делать, чтобы автотесты не превратились в ТитаникПодводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
Подводная часть айсберга: что делать, чтобы автотесты не превратились в ТитаникSQALab
 

Mais procurados (20)

Разработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешевоРазработка надежных параллельных, распределенных приложений: быстро и дешево
Разработка надежных параллельных, распределенных приложений: быстро и дешево
 
React Native в продакшне
React Native в продакшнеReact Native в продакшне
React Native в продакшне
 
Самодиагностика сервисов на базе платформы .NET
Самодиагностика сервисов на базе платформы .NETСамодиагностика сервисов на базе платформы .NET
Самодиагностика сервисов на базе платформы .NET
 
Тестируем мобильное приложение в суровых реалиях Интернета
Тестируем мобильное приложение в суровых реалиях ИнтернетаТестируем мобильное приложение в суровых реалиях Интернета
Тестируем мобильное приложение в суровых реалиях Интернета
 
Непрерывная интеграция (Марина Пестова)
Непрерывная интеграция (Марина Пестова)Непрерывная интеграция (Марина Пестова)
Непрерывная интеграция (Марина Пестова)
 
Gradle. Новый уровень автоматизации для Android
Gradle. Новый уровень автоматизации для AndroidGradle. Новый уровень автоматизации для Android
Gradle. Новый уровень автоматизации для Android
 
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)
DevOps-трансформация Альфа-Банка / Антон Исанин (Альфа-Банк)
 
Continuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под LinuxContinuous Delivery для ASP.NET MVC проекта под Linux
Continuous Delivery для ASP.NET MVC проекта под Linux
 
Типовая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive TechnologiesТиповая сборка и деплой продуктов в Positive Technologies
Типовая сборка и деплой продуктов в Positive Technologies
 
Развитие сообщества Open DevOps Community
Развитие сообщества Open DevOps CommunityРазвитие сообщества Open DevOps Community
Развитие сообщества Open DevOps Community
 
Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"Сергей Комлач "Итоги Google I/O: что нас ждет"
Сергей Комлач "Итоги Google I/O: что нас ждет"
 
Виртуальные среды тестирования (ADD2010)
Виртуальные среды тестирования (ADD2010)Виртуальные среды тестирования (ADD2010)
Виртуальные среды тестирования (ADD2010)
 
Maven как средство сборки проекта
Maven как средство сборки проектаMaven как средство сборки проекта
Maven как средство сборки проекта
 
Микросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бокМикросервисы: взгляд сверху и в бок
Микросервисы: взгляд сверху и в бок
 
Heroku for Java developer
Heroku for Java developerHeroku for Java developer
Heroku for Java developer
 
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release NotesИнструмент ChangelogBuilder для автоматической подготовки Release Notes
Инструмент ChangelogBuilder для автоматической подготовки Release Notes
 
Как devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальшеКак devops исчерпывает себя и что будет дальше
Как devops исчерпывает себя и что будет дальше
 
Spring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny BorisovSpring the Ripper by Evgeny Borisov
Spring the Ripper by Evgeny Borisov
 
C#5 What's new?
C#5 What's new?C#5 What's new?
C#5 What's new?
 
Подводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
Подводная часть айсберга: что делать, чтобы автотесты не превратились в ТитаникПодводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
Подводная часть айсберга: что делать, чтобы автотесты не превратились в Титаник
 

Semelhante a Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0

Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.
Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.
Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.UNETA
 
Использование Symfony
Использование SymfonyИспользование Symfony
Использование SymfonyMedia Gorod
 
Frontend: Путешествие в мир модульных загрузчиков
Frontend: Путешествие в мир модульных загрузчиковFrontend: Путешествие в мир модульных загрузчиков
Frontend: Путешествие в мир модульных загрузчиковCodeFest
 
сравнение Mac-os-x-linux-ubuntu
сравнение Mac-os-x-linux-ubuntuсравнение Mac-os-x-linux-ubuntu
сравнение Mac-os-x-linux-ubuntuAnyuta Roschina
 
Ввведение в java
Ввведение в javaВвведение в java
Ввведение в javaUnguryan Vitaliy
 
Введение в язык программирования «Java»
Введение в язык программирования «Java»Введение в язык программирования «Java»
Введение в язык программирования «Java»Unguryan Vitaliy
 
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиБэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиITCrowd Almaty
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Pavel Chertorogov
 
Среда разработки Eclipse by Cheburek
Среда разработки Eclipse by CheburekСреда разработки Eclipse by Cheburek
Среда разработки Eclipse by CheburekYa_Cheburek
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...jazzteam
 
Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic GamesAlexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic GamesWhite Nights Conference
 
5 колчинская
5 колчинская 5 колчинская
5 колчинская qasib
 
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыMoscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыOleg Nenashev
 

Semelhante a Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0 (20)

Java: вчера, сегодня, завтра
Java: вчера, сегодня, завтраJava: вчера, сегодня, завтра
Java: вчера, сегодня, завтра
 
Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.
Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.
Uneta 17.04.15 Dekhtiar - Entity framework 7 and co.
 
Использование Symfony
Использование SymfonyИспользование Symfony
Использование Symfony
 
0. hello java world
0. hello java world0. hello java world
0. hello java world
 
Frontend: Путешествие в мир модульных загрузчиков
Frontend: Путешествие в мир модульных загрузчиковFrontend: Путешествие в мир модульных загрузчиков
Frontend: Путешествие в мир модульных загрузчиков
 
сравнение Mac-os-x-linux-ubuntu
сравнение Mac-os-x-linux-ubuntuсравнение Mac-os-x-linux-ubuntu
сравнение Mac-os-x-linux-ubuntu
 
Ввведение в java
Ввведение в javaВвведение в java
Ввведение в java
 
Введение в язык программирования «Java»
Введение в язык программирования «Java»Введение в язык программирования «Java»
Введение в язык программирования «Java»
 
Node.js (RichClient)
 Node.js (RichClient) Node.js (RichClient)
Node.js (RichClient)
 
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработкиБэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
Бэкенд, Фронтенд — всё смешалось. Обзорная экскурсия в будущее веб-разработки
 
Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)Бэкенд, фронтенд — всё смешалось (nodkz)
Бэкенд, фронтенд — всё смешалось (nodkz)
 
Java 9 - кратко о новом
Java 9 -  кратко о новомJava 9 -  кратко о новом
Java 9 - кратко о новом
 
Среда разработки Eclipse by Cheburek
Среда разработки Eclipse by CheburekСреда разработки Eclipse by Cheburek
Среда разработки Eclipse by Cheburek
 
Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...Расширяемая платформа для создания и управления автоматизированными тестами н...
Расширяемая платформа для создания и управления автоматизированными тестами н...
 
Appery.io Ukraine_2016
Appery.io Ukraine_2016Appery.io Ukraine_2016
Appery.io Ukraine_2016
 
Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic GamesAlexey Savchenko, Evangelist, Unreal Engine/ Epic Games
Alexey Savchenko, Evangelist, Unreal Engine/ Epic Games
 
TypeScript
TypeScriptTypeScript
TypeScript
 
5 колчинская
5 колчинская 5 колчинская
5 колчинская
 
Deep storm presentation
Deep storm presentationDeep storm presentation
Deep storm presentation
 
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыMoscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
 

Mais de beloslab

Mr. Keil Werner - Stem demo camp
Mr. Keil Werner - Stem demo campMr. Keil Werner - Stem demo camp
Mr. Keil Werner - Stem demo campbeloslab
 
Mr. Keil Werner - UOMO 2011
Mr. Keil Werner - UOMO 2011Mr. Keil Werner - UOMO 2011
Mr. Keil Werner - UOMO 2011beloslab
 
Mr. Ankur Sharma - PDE good practices
Mr. Ankur Sharma - PDE good practicesMr. Ankur Sharma - PDE good practices
Mr. Ankur Sharma - PDE good practicesbeloslab
 
Konstantin Slisenko - Belarus Open Source Lab
Konstantin Slisenko - Belarus Open Source LabKonstantin Slisenko - Belarus Open Source Lab
Konstantin Slisenko - Belarus Open Source Labbeloslab
 
Yuri Trukhin - IE9 Launch
Yuri Trukhin - IE9 LaunchYuri Trukhin - IE9 Launch
Yuri Trukhin - IE9 Launchbeloslab
 
Yuri Trukhin - Software developement best practices
Yuri Trukhin - Software developement best practicesYuri Trukhin - Software developement best practices
Yuri Trukhin - Software developement best practicesbeloslab
 
Yuri Trukhin - Microsoft4students
Yuri Trukhin - Microsoft4studentsYuri Trukhin - Microsoft4students
Yuri Trukhin - Microsoft4studentsbeloslab
 
Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7beloslab
 
Pavel Rumantsev - Java Script
Pavel Rumantsev - Java ScriptPavel Rumantsev - Java Script
Pavel Rumantsev - Java Scriptbeloslab
 
Sergey Gavruk - Mix11
Sergey Gavruk - Mix11Sergey Gavruk - Mix11
Sergey Gavruk - Mix11beloslab
 
Pavel Rumantsev - Html5
Pavel Rumantsev - Html5Pavel Rumantsev - Html5
Pavel Rumantsev - Html5beloslab
 
Konstantin slisenko - Spring Framework
Konstantin slisenko - Spring FrameworkKonstantin slisenko - Spring Framework
Konstantin slisenko - Spring Frameworkbeloslab
 
Aleksei Gomza - ASP.NET MVC3 data processing
Aleksei Gomza - ASP.NET MVC3 data processingAleksei Gomza - ASP.NET MVC3 data processing
Aleksei Gomza - ASP.NET MVC3 data processingbeloslab
 
Aleksei Gomza - Web-applications and ASP
Aleksei Gomza - Web-applications and ASPAleksei Gomza - Web-applications and ASP
Aleksei Gomza - Web-applications and ASPbeloslab
 
Sergey Gavruk - WebMatrix
Sergey Gavruk - WebMatrixSergey Gavruk - WebMatrix
Sergey Gavruk - WebMatrixbeloslab
 
Konstantin slisenko - Design patterns
Konstantin slisenko - Design patternsKonstantin slisenko - Design patterns
Konstantin slisenko - Design patternsbeloslab
 

Mais de beloslab (16)

Mr. Keil Werner - Stem demo camp
Mr. Keil Werner - Stem demo campMr. Keil Werner - Stem demo camp
Mr. Keil Werner - Stem demo camp
 
Mr. Keil Werner - UOMO 2011
Mr. Keil Werner - UOMO 2011Mr. Keil Werner - UOMO 2011
Mr. Keil Werner - UOMO 2011
 
Mr. Ankur Sharma - PDE good practices
Mr. Ankur Sharma - PDE good practicesMr. Ankur Sharma - PDE good practices
Mr. Ankur Sharma - PDE good practices
 
Konstantin Slisenko - Belarus Open Source Lab
Konstantin Slisenko - Belarus Open Source LabKonstantin Slisenko - Belarus Open Source Lab
Konstantin Slisenko - Belarus Open Source Lab
 
Yuri Trukhin - IE9 Launch
Yuri Trukhin - IE9 LaunchYuri Trukhin - IE9 Launch
Yuri Trukhin - IE9 Launch
 
Yuri Trukhin - Software developement best practices
Yuri Trukhin - Software developement best practicesYuri Trukhin - Software developement best practices
Yuri Trukhin - Software developement best practices
 
Yuri Trukhin - Microsoft4students
Yuri Trukhin - Microsoft4studentsYuri Trukhin - Microsoft4students
Yuri Trukhin - Microsoft4students
 
Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7Yuri Trukhin - Windows Phone 7
Yuri Trukhin - Windows Phone 7
 
Pavel Rumantsev - Java Script
Pavel Rumantsev - Java ScriptPavel Rumantsev - Java Script
Pavel Rumantsev - Java Script
 
Sergey Gavruk - Mix11
Sergey Gavruk - Mix11Sergey Gavruk - Mix11
Sergey Gavruk - Mix11
 
Pavel Rumantsev - Html5
Pavel Rumantsev - Html5Pavel Rumantsev - Html5
Pavel Rumantsev - Html5
 
Konstantin slisenko - Spring Framework
Konstantin slisenko - Spring FrameworkKonstantin slisenko - Spring Framework
Konstantin slisenko - Spring Framework
 
Aleksei Gomza - ASP.NET MVC3 data processing
Aleksei Gomza - ASP.NET MVC3 data processingAleksei Gomza - ASP.NET MVC3 data processing
Aleksei Gomza - ASP.NET MVC3 data processing
 
Aleksei Gomza - Web-applications and ASP
Aleksei Gomza - Web-applications and ASPAleksei Gomza - Web-applications and ASP
Aleksei Gomza - Web-applications and ASP
 
Sergey Gavruk - WebMatrix
Sergey Gavruk - WebMatrixSergey Gavruk - WebMatrix
Sergey Gavruk - WebMatrix
 
Konstantin slisenko - Design patterns
Konstantin slisenko - Design patternsKonstantin slisenko - Design patterns
Konstantin slisenko - Design patterns
 

Konstantin Slisenko - OSGi, Equinox, Eclipse plug-in development, v 2.0

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.