「凍った部分」はソフトウェアシステム全体のアーキテクチャ(基本コンポーネント群とそれらの相互関係)を定義する。それらはそのフレームワークを使って何を実装した場合でも常に変化しない。「熱い部分」はプログラマがプロジェクト固有の機能に対応したコードを追加できる部分である。ソフトウェアフレームワークには、ソフトウェアアーキテクチャ内でアプリケーションプログラマが特定の機能に対応したコードを置ける場所(すなわち「熱い部分」)が定義してある。オブジェクト指向言語で、かつそれがクラスベースで具象クラスと抽象クラスがある場合には、前述の「凍った部分」を具象クラスで実装し、「熱い部分」のAPIを抽象クラスで宣言する、というスタイルでフレームワークを作る、という定型的手法がある。利用者(開発者)は、「熱い部分」の抽象クラスを継承した[10]具象クラスを作り、メソッドなどに必要な機能を作り込む[11]。冒頭部で言及した制御の反転について、「ハリウッドの原則」と言われることがある(詳細は制御の反転#ハリウッドの原則を参照)。「制御の反転」を前提として設計されているフレームワークを使う場合、開発者が書くコードが必要な時にフレームワークのコードを呼ぶスタイルではなく、フレームワークのコードから、ユーザーのクリックなどのイベントなどに応じて開発者が書くコードが呼ばれるというスタイルになる、ということを、(買い手市場の)ハリウッドでは、仕事が得られる見込みがあるのならば電話が掛かってくるし、自分から電話を掛けても見込みは薄い、と例えたジョークである。上で動作しているJavaコードとVM外で動作するネイティブアプリケーション(そのハードウェアやOS上で直接動作するプログラム)や他の言語(C言語、C++、アセンブリ言語など)で書かれたライブラリの相互呼び出しを可能にする。Javaプラットフォーム向けのオープンソースのWebアプリケーションフレームワーク。コンポーネントベースのイベント駆動型アプローチによる素早い開発。2008年12月15日閲覧。(日時は個人設定で未設定ならばUTC)。表示-継承ライセンスの下で利用可能です。追加の条件が適用される場合があります。詳細は利用規約を参照してください。Cookieに関する声明モバイルビュ。