| Mobile Programing Series 2 |
| Palm OSプログラミング |
|---|
![]() |
| 著者 | 丸山弘詩,藤井稔也 |
|---|---|
| 判型 | B5変型判,560頁,CD-ROM添付 |
| 本体価格 5,000円 | |
| ISBN | 978-4-87783-044-1 C3004 |
PDAのOSとして、最も安定した人気を誇るのがPalm OSです。Palm、Visor、CLIEなど、売れ筋のPDAには、みなPalm OSが搭載されています。この本は、既存のPalm OSのプログラミング書には書かれていない、プログラマがほんとに欲しい情報を漏らさず記載。ほんのちょっとのわずかな情報でも、必要な情報ならばコラムなどでフォローしています。
付録CD-ROMには、Palmのプログラミングでは標準的な開発環境である「CodeWarrior for Palm OS Platform」のデモバージョン(Windows用・英語版)と、使用したサンプルプログラムを収録。本を購入したその日から、学習を始めることができます。
また、Palmプログラマ必携の書となります。
1996年5月、当時はUS Robotics社の一部門であったPalm Computingから、Pilot 1000/5000が発売されてから、すでに6年という年月が経過しています。その間もPalm Powered HandheldはPalm OS 1.0〜4.1と継続的に進化を遂げてきました。そして、さらなるステップアップを求める米Palm社は、2002年第二四半期には、CISC系68000からRISC系ARMプラットホームへの移行を伴う、メジャーバージョンアップと呼ぶにふさわしいPalm OS 5.0のリリースを予定しています。
さて、本書がターゲットとしているPalm Powered Handheldは、ペンデバイスというその特殊性に加えて、プログラミング的にもイベントループを筆頭に、一種独特なプログラミングモデルを把握する必要があります。
Palm Powered Handheldは世界的に普及しているにもかかわらず、プログラミング解説は少なく、日本語では詳細な技術解説を参照できませんでした。特にPalm OSプログラミングを体系的に解説した資料は見当たらなく、たとえC言語に精通していようとも、本格的な開発にはあまりにも敷居は高く感じられます。
本書を執筆する意義として、Palm OS 5.0のリリースが間近に迫るこの時期、開発への敷居を低くし、体系立てたものとして形に残したいという強い思いが、執筆陣にあります。また、CISC系68000プラットホームとしては、最終的な完成形と言えるPalm OS4.xですが、Palm OS 5.0とともにRISC系ARMプラットホームへ移行しても、PACE 環境で68000系バイナリの動作を保証する方向性が確約されている以上、今後への集大成として残す意義もあると思います。
本書が、これからPalm OSアプリケーションを開発する方々へ、一つの体系的な参考資料として、1人でも多くの開発者の方の手助けになればと思います。
2002年6月
| はじめに | |
| Section 1 | Palm OSとは? |
|---|---|
| 1-1 | Palm OSの生い立ち |
| 1-2 | Palm OS概説 |
| 1-3 | Palm OSの構造 |
| Section 2 | 開発環境の構築 |
| 2-1 | CodeWarriorの環境構築 |
| 2-2 | IDEの基本的な使用法 |
| 2-3 | プロジェクトの作成法 |
| 2-4 | Constructor for Palm OSの使用法 |
| 2-5 | デバック環境の構築 |
| 2-6 | POSEの使用およびデバッグ方法 |
| 2-7 | その他のデバッグ方法 |
| 2-8 | FreeBSD環境の構築 |
| 2-9 | FreeBSDでのデバッグ環境の構築 |
| 2-10 | UNIXのテキストエディタ |
| Section 3 | ユーザーインターフェース |
| 3-1 | Palm OSのユーザーインターフェース |
| 3-2 | ユーザーインターフェースガイドライン |
| 3-3 | システム機能拡張アプリケーションなどのユーザーインターフェース |
| 3-4 | リソースの作成/記述方法 |
| 3-5 | スクリーン座標系 |
| 3-6 | GUIリソース |
| 3-7 | アイコン |
| 3-8 | UIコントロール |
| 3-9 | ダイナミックUIとは |
| 3-10 | サンプルアプリについて |
| Section 4 | イベントハンドリング |
| 4-1 | イベントの種別とそのふるまい |
| 4-2 | Palm OSでのイベントループの基本構造 |
| 4-3 | フォーム関係のイベント |
| 4-4 | コントロール関係のイベント |
| 4-5 | ガジェット関係のイベント |
| 4-6 | スクロールバー関係のイベント |
| 4-7 | フィールド関係のイベント |
| 4-8 | リスト関係のイベント |
| 4-9 | テーブル関係のイベント |
| 4-10 | メニュー関係のイベント |
| 4-11 | セレクタ関係のイベント |
| 4-12 | ペン関係のイベント |
| 4-13 | キー関係のイベント |
| 4-14 | その他のイベント |
| 4-15 | サンプルアプリについて |
| Section 5 | グラフィックス |
| 5-1 | Palm OSのスクリーン |
| 5-2 | サポートされるスクリーンモードの取得 |
| 5-3 | インデックスカラーとダイレクトカラー |
| 5-4 | 描画パターン |
| 5-5 | 図形や文字の描画 |
| 5-6 | サンプルアプリについて |
| Section 6 | ゲームプログラミング |
| 6-1 | Palm OSにおけるゲームとは |
| 6-2 | ゲームプログラミングの基礎 |
| 6-3 | Palm OSのゲームに要求されるもの |
| 6-4 | ハードウェアボタンの利用 |
| 6-5 | アニメーション |
| 6-6 | サウンド |
| 6-7 | 環境設定のゲーム音レベル |
| 6-8 | PCM音声の発生 |
| 6-9 | サンプルアプリについて |
| Section 7 | 環境設定とパネルアプリケーション |
| 7-1 | パネルアプリケーションとは |
| 7-2 | パネルにすべき種類のアプリケーションとは |
| 7-3 | 通常アプリケーションとのコーディングの違い |
| 7-4 | サンプルアプリについて |
| Section 8 | データベースとメモリ |
| 8-1 | Palm OSのメモリ |
| 8-2 | データベースとは |
| 8-3 | メモリの取り扱い |
| 8-4 | レコードの操作 |
| 8-5 | リソースの操作 |
| 8-6 | プリファレンスとは |
| 8-7 | カテゴリとは |
| 8-8 | データベースの保護/セキュリティ |
| 8-9 | 置き換えアプリケーションを作るには |
| 8-10 | サンプルアプリについて |
| Section 9 | デバイス情報の応用とプロテクト |
| 9-1 | デバイス情報 |
| 9-2 | アプリケーションのプロテクト |
| 9-3 | サンプルアプリについて |
| Section 10 | 起動コードとアプリケーション連携 |
| 10-1 | 起動コード |
| 10-2 | グローバル検索 |
| 10-3 | ビーム(赤外線) |
| 10-4 | レコードの追加 |
| 10-5 | ウェブビューアの起動 |
| 10-6 | スレッドプログラミング |
| 10-7 | アラームとアテンション |
| 10-8 | ノーティフィケーション |
| 10-9 | サンプルアプリについて |
| Section 11 | トラップアプリケーション |
| 11-1 | Palm OSの機能強化 |
| 11-2 | トラップとは |
| 11-3 | サンプルアプリについて |
| Section 12 | 外部メディアのサポート |
| 12-1 | メモリカードとその種類 |
| 12-2 | VFSマネージャについて |
| 12-3 | ファイル操作 |
| 12-4 | ディレクトリ操作 |
| 12-5 | カード−本体間のデータベースのコピー |
| 12-6 | POSEでのVFSのデバッグ法 |
| 12-7 | サンプルアプリについて |
| Section 13 | インターネットについて |
| 13-1 | TCP/IPとは |
| 13-2 | BSDソケットプログラミング |
| 13-3 | NTPの実装 |
| 13-4 | WCA(ウェブクリッピングアプリケーション) |
| 13-5 | サンプルアプリについて |
| Section 14 | シリアル通信プログラミング |
| 14-1 | シリアル通信とは |
| 14-2 | シリアルマネージャ |
| 14-3 | シリアル通信のその他の応用 |
| 14-4 | サンプルアプリについて |
| Section 15 | デバイスドライバのプログラミング |
| 15-1 | デバイスドライバとは |
| 15-2 | ドライバのエントリーポイント |
| 15-3 | ドライバのオープン/クローズ |
| 15-4 | ドライバのコントロール処理 |
| 15-5 | ドライバの状態取得処理 |
| 15-6 | ドライバの読み込み/書き込み |
| 15-7 | サンプルアプリについて |
| Section 16 | 日本語対応 |
| 16-1 | 日本語対応とは |
| 16-2 | ロケールとは |
| 16-3 | コードの日本語化 |
| 16-4 | リソースの日本語化 |
| 16-5 | オーバーレイマネージャ |
| 16-6 | サンプルオーバーレイについて |
| Section 17 | Desk Accessory |
| 17-1 | DA 概論 |
| 17-2 | 非イベントハンドリング型DA |
| 17-3 | サンプルDA の作成(1) |
| 17-4 | PilRC |
| 17-5 | サンプルDA の作成(2) |
| 17-6 | サンプルDA の作成(3) |
| Section 18 | 次期Palm OS の機能とその対応 |
| 18-1 | 待望の次期OS:Palm OS 5 |
| 18-2 | Palm OS 5 と次期プロセッサ |
| 18-3 | Palm OS 5 の構造 |
| 18-4 | 次に来るもの:Palm OS 6 アーキテクチャ |
| Appendix | 参考資料 |
| デバイス情報一覧 | |
| エラーコード一覧 | |
| サンプルアプリソースリスト | |
| Section 17 ソースリスト | |
| 付録CD-ROM 収録サンプルアプリ一覧 | |
| CodeWarrior for Palm OS Platform Version 8 Demo Edition |