Javaでなぜつくるのか


Javaでなぜつくるのか 知っておきたいJavaプログラミングの基礎知識


日経BP社


著者:米持幸寿


第1章 Javaとはそもそも何か
全世界で初めて成功した仮想コンピュータの仕様
ソフトウエアで仮想コンピュータを実現する
コーヒーカップは仕様の証
世界初ではないが、成功例としては世界初
ソフトウエアがいろいろなコンピュータで実行可能
Java自身がOSとしての機能を定義している
純粋なオブジェクト指向である
拡張可能な仕様の集合体である
企業に必要な機能が搭載されている
多くの企業が支えるオープンな仕様である

COLUMN Javaよもやま話
早足でみるJavaの歴史

第2章すべてのハードウエアを同じに扱う
ソフトウエアの移植は長い間の悩みのタネ
越えなくてはいけない二つの壁
コンピュータは“そろばん”で考えるとわかりやすい
ソフトウエアを人間の言葉で考えてみる
マシン語はコンピュータの種類によって違う
アセンブラ言語による開発はまったく互換性なし
高水準言語によりソースコード互換が可能に
旧来はコンピュータごとにコンパイルが必要
ソースコードでのソフトウエアの流通
インタープリタ言語の限界
Java仮想マシンというソフトウエア
JVMの特徴
Javaクラスはバイナリーで配布可能
JITコンパイラ/HotSpot技術

COLUMN Javaよもやま話
アーキテクチャのいろいろ

第3章 すべてのOSを同じに扱う
もうひとつの壁
ソフトウエアはOSごとに存在する
OSはハードウエアを仲介する
OSごとにソースコードは違う:APIの違い
「標準OS」「標準API」という試み
共通ライブラリの試み
ソースコード互換だけではまだ問題は解決しない
クラス・ライブラリが非互換
ヘッダー・ファイルごとにソースコードが必要
JVMはOSも含んでいる
Javaはすべてがクラス・ファイル
クラス・ファイルだけあれば、それを再利用可能
共通に持てない機能は大胆に切り捨て

COLUMN Javaよもやま話
仮想コンピュータの試み

第4章 言語仕様、実行環境ともにオブジェクト指向を追及
■Javaはオブジェクト指向言語として最大の成功例
■オブジェクト指向の主要4機能
■C++の問題①:クラスに属さないメソッド
■C++の問題②:クラスの再利用がしにくかった
■C++の問題③:名前の衝突の問題
■Javaのアプローチ
■クラスは必ず作るべし
■すべてのクラスがmainメソッドを持てる
■パッケージによる名前の管理
■例外処理によるエラー処理
■クラスとファイルの関係が明確
■実行ファイルを作らない
■実行フレームワーク
■JVMはオブジェクト指向コンピュータ

COLUMN Javaよもやま話
コンポーネントとは

第5章 メモリー管理を自動化する
ソフトウエアでメモリーを管理するということ
ポインタを使うソフトウエア
配列を使う
構造体の配列のしくみ
C言語ポインタは難しい
配列のオーバーラン問題
Cプログラムでのメモリー内の動き
メモリーリークという問題
領域破壊
Javaのメモリー管理の基本:参照
インスタンスの生成はどう行われるか
Javaではすべてのオブジェクトをヒープに置く
Javaは型検査をかならず行う
ガベージ・コレクション
Javaではオブジェクトを並べた配列は作れない
Javaでは配列のオーバーランはない

COLUMN Javaよもやま話
仮想メモリー:机の広さには制限がある

第6章 企業システムに必要な機能を搭載
そもそもなぜJavaなのか?
ホストからクライアント/サーバーへ
自動配布を実現する
Webアプリケーション技術「サーブレット」
オブジェクト指向による差分開発
セッション管理機能を提供
画面デザインは「JSP」で作成
「JSF」はMVC型のフレームワーク仕様
分散トランザクションを実現する「EJB」
Webサービスはシステム連携の業界標準技術
「J2EE」はサーバー技術の集大成
JSW(Java Web Start)で自動ダウンロード

第7章 オープンテクノロジーである意味
ソフトウエアを共同で生産する
オープンソースを補完するオープン仕様
組み込み系Java
企業の業務を支えるJ2EE
データベース・アプリケーションを効率良く開発
コンポーネントを使ったトランザクション管理
最適なマシン環境を選んで高スループットを実現
Javaは独立した小さな仕様の集まり
安心のリファレンス・インプリメンテーション
最低の技術、でも最高の技術

COLUMN Javaよもやま話
Javaオンライン・ソフトはなぜ増えないか

第8章 Javaが本当に目指すもの
Javaに前向きに取り組むには
開発環境の方向性
デスクトップ環境は復権するか?
Javaが本当に目指すもの

おわりに
索引
著者プロフィール

書籍目次

Posted by shi-n