第1章 引言:字典問題
1.1 向前并向上
1.2 其他程序生成器
1.3 為什么使用程序生成器
1.3.1 規(guī)范層次與編碼層次
1.3.2 關系的分解
1.3.3 多重產品
1.3.4 多種變體
1.3.5 信息一致性
1.3.6 生成產品的正確性
1.3.7 改進定制軟件的性能
1.4 本書的結構
第2章 域分析概念
2.1 域
2.2 決策——域工程的構成因子
2.3 變量—— 域工程的核心
2.4 角色—— 誰作出決策
2.5 約束時間——決策制定的時間
2.6 域工程周期
2.7 共性
2.8 可變性
2.9 平衡行為
2.10 域分析方法
2.11 FAST 域模型
2.12 小結
2.13 深入閱讀
第3章 域分析示例
3.1 第一天
3.2 第二天
3.3 第三天
3.4 第四天
3.5 第五天
3.6 域分析報告
3.6.1 游戲域階段1
3.6.2 游戲域共性
3.6.3 游戲域階段2
3.6.4 游戲域階段3
3.7 小結
第4章 關系分解
4.1 抽象化
4.2 分解關系技術
4.2.1 物理分解
4.2.2 配置文件和資源文件
4.2.3 奇異常量
4.2.4 典型過程的抽象化
4.2.5 面向對象的抽象化
4.2.6 繼承
4.2.7 應用框架
4.2.8 規(guī)范驅動技術
4.2.9 規(guī)范的表示
4.3 小結
4.4 深入閱讀
第5章 XML:規(guī)范的一種標準表示法
5.1 是否使用XML
5.2 XML元素
5.3 XML屬性
5.4 XML預定義實體
5.5 創(chuàng)建一個特定域的XML結構
5.6 使用元素還是屬性
5.7 使用XML的游戲域
5.8 DTD
5.9 XML工具
5.9.1 XML閱讀器
5.9.2 XML編輯器
5.9.3 XML轉換工具
5.10 游戲域階段2
5.11 小結
5.12 深入閱讀
第6章 運行時可變性
6.1 Java 特性文件
6.1.1 列表
6.1.2 分層數據
6.1.3 存留
6.1.4 動態(tài)性能
6.2 作為配置文件的 XML
6.3 具有運行時可變性的游戲域
6.4 小結
第7章 編譯時可變性
7.1 編譯時常量
7.2 游戲域與繼承
7.3 運行時、編譯時與生成時可變性的比較
7.4 預處理時可變性
7.5 小結
7.6 深入閱讀
第8章 生成程序的風格
8.1 手寫程序和生成程序的比較
8.2 3種風格的生成程序比較
8.2.1 面向對象驅動風格
8.2.2 代碼驅動風格
8.2.3 表驅動風格
8.2.4 3種風格的公共程序說明
8.3 面向對象驅動風格
8.4 代碼驅動風格
8.5 表驅動風格
8.6 小結
第9章 利用DOM生成程序
9.1 使用XML語法分析器讀入和存儲規(guī)范
9.1.1 純DOM方法
9.1.2 自定義DOM方法
9.1.3 自定義SAX方法
9.1.4 選擇最好的方法
9.2 DOM的分析和轉換
9.2.1 DOM API
9.2.2 一個簡單的分析示例
9.3 來自DOM的程序生成
9.4 使用DOM的游戲程序生成器
9.5 小結
9.6 深入閱讀
第10章 利用Java Server Pages生成程序
10.1 applets和servlets
10.2 Java Server Pages
10.2.1 令人煩惱的實體參照符
10.2.2 JSP XML語法
10.3 Chart Applet程序生成器
10.3.1 Web表單輸入
10.3.2 XML 輸入
10.4 JSP翻譯器,一個簡單的程序生成器
10.5 游戲域程序生成器
10.6 小結
第11章 利用Xpath和XSLT生成程序
11.1 Xpath
11.1.1 Xpath樹
11.1.2 Xpath表達式
11.1.3 Xpath節(jié)點集合表達式
11.1.4 Xpath數字表達式
11.1.5 Xpath字符串表達式
11.1.6 Xpath布爾表達式
11.1.7 Xpath謂詞
11.1.8 Xpath變量
11.2 XSLT
11.2.1 XSL的template
11.2.2 XSL的value-of
11.2.3 XSL的for-each
11.2.4 XSL的if
11.2.5 XSL的choose
11.2.6 XSL的variable
11.2.7 XSL的apply-templates
11.2.8 XSL文本和空白內容
11.3 在游戲域中使用Xpath和XSLT
11.4 小結
第12章 創(chuàng)建自己的模板語言
12.1 評價JSP和XSLT
12.2 TL——一種新的模板語言
12.2.1 使用Xpath
12.2.2 通用結構設計的語法
12.2.3 轉義到Java語言
12.2.4 Java集成
12.2.5 利用DOM入口
12.2.6 空白數據處理
12.2.7 字符轉義
12.2.8 命令行處理和子模板
12.2.9 多重輸入和輸出
12.2.10 簡單形式和XML形式
12.2.11 編譯和解釋
12.2.12 其他特征
12.3 不規(guī)則的TL規(guī)范
12.4 把TL轉換成Java語言
12.5 小結
12.6 深入閱讀
第13章 組件的構成
13.1 組件與JavaBeans
13.2 組件和依賴性
13.2.1 全局變量和資源
13.2.2 類型
13.2.3 通信機制
13.3 接口與IDL
13.3.1 使用RMI的ShoppingCart
13.3.2 導出和導入
13.4 模塊互連語言
13.4.1 連接器
13.4.2 接口適配器
13.4.3 異步連接
13.4.4 推拉連接
13.4.5 通信機制
13.4.6 復合組件
13.4.7 靜態(tài)連接與動態(tài)連接
13.5 Bean標記語言
13.6 設計自己的MIL
13.7 小結
13.8 深入閱讀