Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
OSGi概要
Search
Akira Ikeda
October 10, 2012
Technology
1
1.2k
OSGi概要
勉強会のために作った概要資料。
Akira Ikeda
October 10, 2012
Tweet
Share
More Decks by Akira Ikeda
See All by Akira Ikeda
JaSST'24 Kyushu 基調講演 「一周まわって考えるソフトウェアテストへのマインドマップの利用」
ikedon
0
870
それって技術の仕事!? 仕様の輻輳問題(SS2023in仙台 FPセッション)
ikedon
0
31
長崎ビジネスDX "SAIZENSEN" 長崎の未来 ~私達の活動の先にあるもの~ ポジショントーク資料
ikedon
0
14
米国修士課程ベストセラーに学ぶ体系的ソフトウェアエンジニアリングの必要性
ikedon
0
26
テスト設計技法、その前に ~フェイスアップ、次にビルドアップ、その先にマインドアップ~
ikedon
0
15
単なる仕様チェックを卒業してテスト技術力を高めていくために ~押さえておきたいキホンのキ~
ikedon
0
40
IV&Vの概要 ~JAXA様発行「IV&Vガイド【虎の巻】」第1~2部の要約~
ikedon
1
440
親子で使おうマインドマップ
ikedon
0
24
3万円で始めるソフトウェアテスト
ikedon
1
120
Other Decks in Technology
See All in Technology
スクラムガイドに載っていないスクラムのはじめかた - チームでスクラムをはじめるときに知っておきたい勘所を集めてみました! - / How to start Scrum that is not written in the Scrum Guide 2nd
takaking22
1
120
未経験者・初心者に贈る!40分でわかるAndroidアプリ開発の今と大事なポイント
operando
5
730
20250912_RPALT_データを集める→とっ散らかる問題_Obsidian紹介
ratsbane666
0
100
なぜスクラムはこうなったのか?歴史が教えてくれたこと/Shall we explore the roots of Scrum
sanogemaru
5
1.7k
AIエージェント開発用SDKとローカルLLMをLINE Botと組み合わせてみた / LINEを使ったLT大会 #14
you
PRO
0
130
Codeful Serverless / 一人運用でもやり抜く力
_kensh
7
450
LLM時代のパフォーマンスチューニング:MongoDB運用で試したコンテキスト活用の工夫
ishikawa_pro
0
170
Autonomous Database - Dedicated 技術詳細 / adb-d_technical_detail_jp
oracle4engineer
PRO
4
10k
JTCにおける内製×スクラム開発への挑戦〜内製化率95%達成の舞台裏/JTC's challenge of in-house development with Scrum
aeonpeople
0
250
研究開発と製品開発、両利きのロボティクス
youtalk
1
530
Automating Web Accessibility Testing with AI Agents
maminami373
0
1.3k
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
580
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
The Cult of Friendly URLs
andyhume
79
6.6k
The Language of Interfaces
destraynor
161
25k
Done Done
chrislema
185
16k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Speed Design
sergeychernyshev
32
1.1k
jQuery: Nuts, Bolts and Bling
dougneiner
64
7.9k
Transcript
池田 暁 2012.10.10
OSGi Alliance により標準化 ◦ http://www.osgi.org/ Javaに基づいたオープンのソフトウェア部品化技術 完全な動的モジュールを実現するための技術
(動作を停止させずにモジュールの入れ替えが可能) ネットワークを通じて部品を追加/更新/変更/削除 当初はホームゲートウェイを対象としていたが,現在 はモバイル機器や車載機器などにも範囲拡大 ◦ 最近ではアプリケーションサーバでの採用が目立つ ◦ その他,EclipseもOSGiを採用している
OSGiは5つのWGにてそれぞれ仕様策定 ◦ Core Platform Expert Group (CPEG) OSGiコアの仕様を策定
◦ Enterprise Expert Group (EEG) エンタープライズ分野の仕様を策定 ◦ Mobile Expert Group (MEG) モバイル機器分野の仕様を策定 ◦ Residential Expert Group (REG) ホームネットワーク分野の仕様を策定 ◦ Vehicle Expert Group (VEG) 車載機器分野の仕様を策定
OSGiアプリケーションはJavaの知識があればそれほ ど難しくない ◦ 言語(レベル)はJavaが書ければ大丈夫 ◦ 開発環境はEclipse 使えばいいだろう ◦ OSGiはオープン技術であり,その仕様は無料で入手可能
ベンダの商用実装もあるが,最初は以下を使ってもいいだろう Equinox : http://www.eclipse.org/equinox/ Eclipse使うならこれがらくちん Apache Ferix : http://felix.apache.org/
OSGiではモジュールの単位を「バンドル」と呼ぶ ◦ イメージがつきにくい人は,プラグインと思ってもらっても良い 「バンドル」はマニフェストファイル・クラスファイル・リソース ファイルを1つにまとめたもの ◦ OSGi特有の実装としては以下が必要 マニフェストファイルにOSGi特有の属性を設定する
BundleActivatorインターフェイスをクラスに実装する 「バンドル」には個別の設定が可能 ◦ バージョン制限や依存関係が設定 ◦ セキュリティ(アクセス制限)の設定 OSGiアプリはOSGiフレームワーク上で動作 ◦ OSGiはJava VM 上の フレームワークとして動作
サービス(VM)を止めずに機能の追加削除更新が可 能 ◦ ネットワークで簡単に実行できるため,保守も楽 部品化が高度に促進されることで,異なる製品や バージョンでの再利用がすすむ ◦ 生産性などが向上
業界標準であるため,他社製製品への搭載などビジ ネスの幅が広がる ◦ バンドル自体を製品として売ることもできるだろう
Javaであることの難点を引き継いでしまう ◦ 実行速度の問題等 国内ではまだまだ普及しているとまではいえない(と思 う) 参考となる日本語情報がまだまだ少ない
基本実装はOSSでもあるが,バンドル管理や配信シス テムなど高度な管理などは商用のものが必要だろう ◦ バンドルの数が少ないうちは手作業でもいいのだが…
開発環境は「Eclipse + Equinox」を使います 今回はhello world 程度を実装します 以下の動きを見ます
◦ インストール ◦ スタート ◦ ストップ ◦ アップデート ◦ アンインストール
None