2009年6月29日星期一

书~(五月段),开发管理及相关

本帖侧重于扩展话题,就是有关而不限于的意思。
当然也仅仅就是这个意思(?)。
最近似乎让这里变成平行世界,不含"外来"的体验或看法了。
那就多数几句,这次不是欧美那种"不厌其烦"的文风啊。


Joel谈优秀软件开发方法
The Best Software Writing I
(美)Joel Spolsky 斯珀儿斯奇 编著
王慧 翻译
出版:清华大学出版社

文集性质,范围较宽泛,是不限于具体技术的思考。


软件开发的边界——管理成功的项目
The Software Development Edge: Essays on Managing Successful Projects
(美)Joe Marasco 马拉斯科 著
雷程炜 译
出版社 电子工业出版社

作者于管理方面的经验总结与探讨。
因为物理学专业基础和长年在Rational的工作经历,书中对模型的建立和运用相当纯熟。
内容涉及迭代开发的开发流程与要素的分析。
阅读的重点是在于对书所呈现类比示例方法的体会。

丑陋的日本人
[日]高桥敷 著
许金龙 吴彤雕 任大海 译
出版社 作家出版社

作者以旅居海外的一段经历(1960s)的思考成书。
感觉其实本书侧重于谈文化差异对人认识的冲击,当然也有涵盖社会群体的道德休养。
文字间包含了因文化无法融入而产生的移民境况的伤感和敬佩。
至于文化的取向方面,书中仅表达了一些愿望,未做过多批判。
(恩…这本是先看的)


相关内容

http://www.toopoo.com/book/tushu/121-03649-1.html
http://book.csdn.net/bookfiles/277/10027712146.shtml
软件开发的边界——管理成功的项目
内容提要
《软件开发的边界——管理成功的项目》是Rational Software的资深项目经理——Joe
Marasco 结合其数十年的一线开发经验所撰写的软件项目管理书籍。《软件开发的边界——管理成功的项目》由最基本的管理思想开篇,以高级主题结束,每一章节都是一个单独的主题。作者应用了其丰富的实践经验、严谨的工程思想以及幽默风趣的讲解方式,为读者带来了项目管理中众多问题的全新视角与观点。《软件开发的边界 ——管理成功的项目》可供软件开发和软件项目管理人员阅读。对于项目管理人员以及普通开发者,《软件开发的边界——管理成功的项目》的许多章节都值得细细品味。
目录
作者简介 xix
前言 xxi
序 xxiii
第1部分 综合管理 1
第1章 开篇寄语 3
1.1 优良软件的重要性 4
1.2 沼泽中的坚硬石头 5
1.3 读者 6
1.4 迭代式的问题解决周期 6
1.5 回顾 10
第2章 计算之源 11
2.1 催化剂 11
2.2 答案 12
2.3 这一计划是如何实施的 13
2.4 为什么这一代工程师与众不同 15
2.5 计算 16
2.6 从它们的名称中得出数字大小 17
2.7 当年的计算机是怎样的呢 18
2.8 我们的计算传统 20
2.9 回顾 20
第3章 登山 23
3.1 勇攀高峰 24
3.2 失败的共同根源 30
3.3 成功的要素 31
3.4 人的因素 32
3.5 回顾 32
第4章 管理 33
4.1 管理团队 34
4.2 回顾 40
第2部分 软件差别 41
第5章 重中之重 43
5.1 迭代式开发 43
5.2 Roscoe Leroy. 44
5.3 跨越瀑布式开发 45
5.4 另一个极端 47
5.5 Roscoe的第一幅图 47
5.6 Roscoe的第二幅图 48
5.7 等一等 49
5.8 保持向量短小 49
5.9 软件开发上的应用 50
5.10 面向应用的学习与短向量方向 51
5.11 风险定位 51
5.12 你之前听过这样的事情么 52
5.13 关于实践式学习的更多内容 53
5.14 商业含义 54
5.15 人员配置效应 55
5.16 仅仅只是常识问题 57
5.17 回顾 58
第6章 建模 59
6.1 如何解释UML. 60
6.2 什么是UML,为什么它很重要 61
6.3 第二个稍微复杂一些的例子 61
6.4 第三个例子 63
6.5 如今与软件的相关性 65
6.6 提升抽象的级别 66
6.7 回顾 66
第7章 编码 69
7.1 经理们如何来学习一门新的程序设计语言 70
7.2 定义良好的问题 71
7.3 这个标准应当包括什么呢 71
7.4 动物游戏 72
7.5 动物游戏满足这一标准么 73
7.6 它是否通过了"那又怎么样"测试 74
7.7 这是你的游戏 76
7.8 回顾 76
第8章 构建与发布 77
8.1 如果你构建它,那么它们就会出现 78
8.2 在一开始设置一个沙箱 79
8.3 产品构建到底为什么会困难 79
8.4 如何对迭代式开发进行构建 84
8.5 回顾 85
第3部分 项目管理观点 87
第9章 权衡 89
9.1 项目管理金字塔 90
9.2 五,而非四 92
9.3 进入金字塔 93
9.4 高度变量 94
9.5 金字塔体积恒定不变 94
9.6 一个统计上的小插曲 95
9.7 正确的想法,错误的分布 97
9.8 对于真实项目的暗示 99
9.9 怎样才能让成功率接近掷硬币游戏 99
9.10 更多信心 100
9.11 至关重要的警告 101
9.12 一切为了风险 105
9.13 回顾 106
第10章 估计 107
10.1 如果我们使用常识的话会怎样 108
10.2 香草巧克力 108
10.3 Roscoe的解释 109
10.4 Roscoe继续深入 109
10.5 Roscoe的日历 110
10.6 Roscoe的计算 111
10.7 Roscoe进入软件领域 111
10.8 Roscoe报道 111
10.9 猜一下我们做对了什么事情 112
10.10 Roscoe的概括 113
10.11 Roscoe捡起一块骨头 113
10.12 第2部分:猜测我们做对了某些东西 114
10.13 Roscoe被软件项目经理联合会所承认 115
10.14 回顾 115
第11章 日程安排 117
11.1 Roscoe摆出问题:你将会延迟多久 118
11.2 Joe扳回了些许劣势 119
11.3 Roscoe反击 120
11.4 Roscoe的"犯罪分子相册" 120
11.5 Roscoe的图 121
11.6 最后一个异议 122
11.7 Roscoe的临别赠言 123
11.8 回顾 123
第12章 节奏 125
12.1 物理学家看项目过程 126
12.2 现实闯入 134
12.3 迭代开发如何呢 135
12.4 最终的图表 140
12.5 回顾 142
第4部分 人的因素 143
第13章 政治 145
13.1 背景 146
13.2 定义 147
13.3 三种情景 147
13.4 政治是不可避免的,但是…… 148
13.5 当问题演变为政治 149
13.6 工程计划 152
13.7 高度信任的环境 153
13.8 无益政治的其他变种 154
13.9 回顾 155
第14章 沟通 157
14.1 沟通无处不在 158
14.2 Roscoe解释其理论 158
14.3 已经完成了吗 164
14.4 回顾 165
第15章 承诺 167
15.1 Roscoe碰了一鼻子灰 168
15.2 即刻进入案例 168
15.3 维苏威火山般的喷发 168
15.4 德克萨斯的作风 169
15.5 应用到软件业 170
15.6 狗吞了我的任务 170
15.7 规范大战 171
15.8 三个最普遍的借口 172
15.9 其他 174
15.10 穿刺、躲避与还击 174
15.11 大型项目中的胆小者 175
15.12 软件开发项目会如你所愿地完成吗 175
15.13 细化 VS 构建 176
15.14 吃一堑,长一智 177
15.15 回顾 177
第16章 薪酬 179
16.1 渐入"佳境" 180
16.2 流动槽与软件开发绩效 181
16.3 利用流动模型来管理薪酬 182
16.4 金钱不是万能的 191
16.5 回顾 192
第5部分 横向思考 195
第17章 历史教训 197
17.1 不要让国王成为你的架构师 198
17.2 事物并非总是如你所见 198
17.3 仔细检查设计 198
17.4 知道什么是你所不知道的 198
17.5 始终如一的领导层 199
17.6 照例追赶工期 199
17.7 集中精力于错误的特性 199
17.8 当没有进行良好的设计时 199
17.9 适当的测试 200
17.10 原型 VS 产品 200
17.11 审讯 200
17.12 回顾 200
第18章 不当类比 201
18.1 休斯顿,我们遇上麻烦了 201
18.2 误解牛顿 203
18.3 一切事物都是相对的 205
18.4 量子力学的误解 207
18.5 热寂 211
18.6 其他例子 213
18.7 有益的科学 213
18.8 回顾 214
第19章 软件更新 215
19.1 嵌入式软件的更新 216
19.2 现状 217
19.3 软件更新游戏 218
19.4 一点陋见 218
19.5 回到更新问题 219
19.6 免费的午餐 220
19.7 为何可行 221
19.8 改进 222
19.9 怎样应对软件盗版问题 223
19.10 只要太阳能没有普及开来 223
19.11 回顾 224
第20章 妙解随机数 225
20.1 Roscoe设定了故事背景 226
20.2 模拟击球手 226
20.3 步骤一 228
20.4 步骤二 230
20.5 产生更多的概率 230
20.6 显然,我们已经离开棒球的世界了 232
20.7 现实是丑陋的 233
20.8 星期一的解决方案 234
20.9 受益匪浅 239
20.10 回顾 240
第6部分 进阶主题 241
第21章 危机 243
21.1 鱼的五天 244
21.2 鱼市 244
21.3 第一天:尚未察觉 244
21.4 第二天:避免麻烦 244
21.5 第三天:"问题处理者"到来 245
21.6 第四天:转折点 245
21.7 第五天:两条关键路径 246
21.8 故事的寓意 246
21.9 回顾 247
第22章 增长 249
22.1 增长中的问题 249
22.2 Naïve模型 251
22.3 模型的推论 253
22.4 一个说明性的例子 259
22.5 非线性关系 260
22.6 付诸实践 261
22.7 结论 263
22.8 列线图 264
22.9 电子表格 265
22.10 回顾 267
第23章 文化 269
23.1 什么是企业文化 270
23.2 强势和弱势文化 271
23.3 定义企业价值 271
23.4 软件领域的适用性 274
23.5 建立强势文化 275
23.6 如果你正在寻找一份工作 279
23.7 底线 280
23.8 回顾 280
第24章 总结 281
24.1 奉行者 282
24.2 创造者 284
24.3 贤明者 286
24.4 关于贤明者的更多话题 287
24.5 人数分布 288
24.6 关于模型最后的思考 289
24.7 回顾 290
致谢 293
索引 297
作者介绍
Joe Marasco是IBM公司旗下五大品牌之一Rational
Software软件公司的一句退休事业部经理和高级副总裁。他负责过许多产品的开发、营销工作,主要负责Rational
Apex产品以脑炎微软Visual Studio设计的Visual
Modeler。 1998年,他成为Rational的高级运营副总裁,2003年从Rational退休。他曾获得美国伯联合学院化学工程学学士学位、加州大学尔湾分析科学管理硕士学位,以及瑞士日内瓦大学物理学博士学位。在不从事写作的时候,他喜欢野餐烤肉和打高尔夫球;他的烤肉技术高于其球技。



http://bookd.bi3jia.com/bookcmp_383931.html
Joel谈优秀软件开发方法
图书摘要
本书意在用这些最优秀的软件开发类文章来激励程序员们编写出更优秀的软件。目的很简单,就是好好编写软件。编程工作充满魅力,因为它的趣味性、条理性、重要性无一不吸引您沉醉其中。希望通过本书,软件开发人员可以明白如何才能写出令读者感兴趣的软件,因为沟通是软件开发过程中最易被忽略的技能。
本书中的文章介绍了大量涉及软件的出色想法,它们也是我们在近期所见过的最棒的观点。文章的作者们用各种有趣、清晰、吸引人的方式用心地将这些想法展示给我们。相信这些想法会不断为人们所接受,并且很快会在软件开发领域产生深远影响。
图书目录
Ken Amold编程风格是主旨
Leon Bambrick最愚蠢用户界面奖颁给:Windows搜索界面
Michael Bean程序员外包的隐患
Rory Blyth把Excel当数据库用
Adam Bosworth ICSOC04讲座
danah boyd自闭的社会软件
Raymond Chen为何不禁用依赖于未公开机制的应用程序
Kevin Cheng and Tom Chi踢骆驼
Cory Doctorow从WlPO中拯救加拿大的Internet
ea spouse EA:关于员工的故事
Bruce Eckel强类型与强测试
Paul F0rd Processing Processing
Paul Graham伟大的黑客
John Gruber地址栏就是新的命令行
Gregor Hohpe星巴克不使用两阶段提交
Ron Jeffries激情
Eric Johnson C++——被遗忘的特洛伊木马
Eric Lippert更换一个灯泡需要多少名微软员工?
Michael"Rands"Lopp事情搞砸了怎么办?
Larry Osterman Larry的软件工程规则之二:用测试指标来衡量测试人员是行不通的
Mary Poppendieck团队补偿
Rick Schaut Mac Word 6.0
Clay Shirky群是其自身最大的敌人
Clay Shirky群作为用户:社会软件的结构与设计
Eric Sink填补鸿沟:第1部分
Eric Sink填补鸿沟:第2部分
Eric Sink雇用的风险
Aaron Swartz PowerPoint Remix
Why the lucky stiff与卡通狐狸来趟快速(且希望无痛)的Ruby之旅
作者简介
Joel Spolsky是世界知名的软件开发专家。他的站点Joel on
Software(www.joelonsoftware.com)已被翻译成30多种语言,备受全世界软件开发人员欢迎。作为纽约Fog
Creek Software的奠基人,他创建了著名的软件小组项目管理系统FogBugz。Joel曾就职于微软,在Excel小组工作时设计了VBA。他也曾在Juno
Online Services工作过,并于那段期间开发了Internet客户机——现在有无数用户在使用。在本书之前Joel还编著了两本书:User
Interface Design forProgrammers(Apress,2001)和Joel On
Software(Apress,2004)。Joel是耶鲁大学学士,而在此之前他是一名伞兵,曾在以色列国防军(Israeli Defense
Forces)服役。此外,Joel还是Kibbutz Hanaton的奠基人之一。


http://vip.book.sina.com.cn/book/chapter_62764_42832.html
这是另一个翻译版本的目录,不过当然对本书合理的认识是不限于本书书名的关键词上的,书中的取向(粉饰?)还是很积极的。

我编辑本帖的日期:090524

乱码一下:目前自己把理想的状态还是期望为共同取向和文化多样性吧,也即从争吵本身来看的。
恩就这做点成果或遗留了。

想到,有些书是不在达成看完的目标而能知道其中的内容,而是价值在于从中体会了多少,是需要心情品尝和更多时机的。
恩,看再有机会。

其他:
感觉好的排版可以让内容更加明晰
现在习惯了欧美有体现作者个人看法的文字风格了
看多了欧美风格的
对不体现作者看法的教程类文有不习惯了

本贴这次是重于记录表达想法,而非草稿笔记内容的。
END
好了,确认发布。

接着再附一个:

先看这三个(顺序不限),网页的内容是从lex&yacc实用角度提供的
http://dinosaur.compilertools.net/
http://www.ibm.com/developerworks/cn/linux/sdk/lex/index.html
http://www.ibm.com/developerworks/cn/linux/game/sdl/pirates-4/index.html
另一类,如xWBasic的说明文档中,有一段关于它如何编译的解释,简单细致
Ok,现在再来看这本书嘛,是从列举的众多有关原理
(以上内容是提供一个合适的阅读切入,别说不知什么是编译器)
下面是书的信息


《编译器设计》

作者:(印度) Santanu Chattopadhyay 著
内容简介
本书是作者多年来在编译器领域中钻研、教学的成果,并以在该学科领域与学生的交流以及他们的反馈和研究作为
依据。本书全面介绍了编译器设计中的原理和技术,阐述了编译领域中的难点,并详细描述了编译器设计的各个阶段。
  因为编译器的设计过程是将自动机理论、数据结构、算法、计算机体系结构和操作系统等领域知识进行综合的过
程,所以编译器设计者必须要有较好的计算机科学理论的背景。本书详细描述了各种类型的解析器,从最简单的递归
下降和LL解析器到复杂的LR、规范LR和LALR解析器,尤其强调了LR解析器。
  本书主要用于计算机科学专业的本科生和研究生一个学期的教材,该书也可供专业人员作为参考书。
前 言:
本书源于笔者多年来对编译器的学习和教学经验,并以在该学科领域与学生的交流以及他们的反馈和研究作为依据。编译器的设计过程是将自动机理论、数据结构、算法、计算机体系机构和操作系统等领域知识进行综合的过程。编译器设计者必须要有较好的计算机科学理论的背景。同时,还应能掌握各种可用的软硬件平台。因此,任何编译器的书籍都应强调这些领域的作用,并向读者介绍编译领域中的难点和技术。同时,书籍应足够精炼,以便能在一个学期内完成课程。另外,还需要介绍编译器设计中各种可用的工具。本书涵盖了编译器中所有应掌握的主题,一共分为9章。
第1章介绍了编译器及其应用,并着重介绍了大量的应用领域,以使读者能理解该领域的范围。然后介绍了编译器的各个阶段,列举了各个阶段的任务。依据机器中软/硬件的功能和用户的需求,详细介绍了编译器设计的难点。本章以一个示例结束。
第2 章展示了编译器中词法分析阶段的理论和设计。在介绍完正式的表示法如正则表达式、非确定和确定的有限自动机后,本书详细描述了使用正则表达式开始表示语言中单词规范的方式,并依据正则表达式构造识别器来标识输入流中语言的合法单词。最后,介绍了轻松生成词法分析器的自动化工具——
Lex。
第3 章介绍了语法分析。首先明确了在指定的语言中文法的作用、文法的符号约定以及相关定义。本章详细描述了各种不同类型的解析器,首先介绍了最简单的自上而下分析,如递归下降和LL。然后介绍了先进的自下而上分析,如LR、规范LR和LALR。因为大多数编译器使用LR解析器,所以主要强调了LR分析,并介绍了工具yacc,用于自动生成LALR解析器。本章最后介绍了使用解析器来执行输入流的各种语法制导翻译的方式。
第4章介绍了类型检查,并介绍了类型检查的相关问题,以及使用这些理论检查类型等价的方式。最后介绍了类型转换,用于展示编译器自动推断必要的类型转换的方式。
第5章介绍了编译器中符号表的用法。根据语言的作用域规则,介绍了各种不同的数据结构来存储标识符,因此,编译器能有效地使用这些信息。
第6章介绍了编译器在程序执行时维持运行环境的职责,然后介绍了活动记录,并展示了使用不同而有效的数据结构维护活动记录的方式。
第7章详细介绍了中间代码的生成。这是编译器中的可选阶段,有助于将代码重定向到不同的体系结构中。首先介绍中间代码不同的表现方式,然后使用语法制导模式将常用的编程语言结构翻译成中间代码的形式。
第8章列举了目标代码的生成技术。在讨论完影响代码生成的因素后,介绍了使用基本的代码块表示中间语言程序的方式,然后从基本的代码块生成目标代码。同时也讨论了寄存器分配、缓存管理的问题及相应的解决策略。
第9章是代码优化阶段。在讨论完优化阶段必要且相关的问题后,介绍了优化的分类。然后介绍了不同的优化变换,如编译时计算、公共子表达式消除等。接下来介绍了全局优化和数据流问题。最后根据建立和求解数据流等式的技术解决一些数据流问题。
本书提供了编译器设计领域中的所有要点,适合作为本科生一个学期的学习内容。如果能有效地使用本书,将会得到很大的收获。同时欢迎读者给出任何对内容有改进的建设性意见。
Santanu Chattopadhyay

目录:
第1章 引言 1
1.1 编译器的定义 1
1.2 编译器应用 2
1.3 编译器的各个阶段 3
1.4 编译器设计的难点 7
1.5 编译过程—— 示例 9
1.6 小结 11
练习 11
第2章 词法分析 13
2.1 词法分析器的任务 13
2.2 记号的规范 14
2.3 记号识别 15
2.3.1 不确定的有限自动机 17
2.3.2 确定的有限自动机 17
2.3.3 NFA到DFA的转换 20
2.4 NFA的正则表达式 22
2.5 词法分析的工具—— Lex 25
2.6 小结 33
练习 33
第3章 语法分析 35
3.1 解析器的功能 35
3.2 错误处理 36
3.3 文法 37
3.3.1 符号约定 38
3.3.2 推导 39
3.3.3 二义性 40
3.3.4 左递归 42
3.4 自上而下的分析 43
3.4.1 递归下降分析 43
3.4.2 递归的预测分析 46
3.4.3 非递归的预测分析
—— LL(k)分析 49
3.5 自下而上的分析 53
3.5.1 算符优先的分析 56
3.5.2 建立优先关系 57
3.5.3 错误恢复 60
3.6 LR分析 60
3.6.1 LR分析方法 60
3.6.2 LR分析算法 61
3.6.3 构造LR分析表 62
3.6.4 处理LR分析的二义性 74
3.6.5 LR分析中的错误恢复 77
3.7 LALR解析器的生成器
—— yacc 78
3.8 语法制导翻译 81
3.9 小结 82
练习 82
第4章 类型检查 85
4.1 静态和动态检查的比较 85
4.2 类型表达式 86
4.3 类型检查 87
4.4 类型等价 88
4.5 类型转换 91
4.6 小结 91
练习 91
第5章 符号表 93
5.1 符号表中的信息 93
5.2 符号表的功能 94
5.3 简单的符号表 95
5.3.1 线性表 95
5.3.2 有序列表 96
5.3.3 树 97
5.3.4 哈希表 97
5.4 作用域的符号表 98
5.4.1 嵌套的词法作用域 99
5.4.2 每个作用域对应一张表 100
5.4.3 所有作用域都在
一张表中 101
5.5 小结 102
练习 103
第6章 运行时环境管理 105
6.1 引言 105
6.2 活动记录 106
6.2.1 不含局部过程的环境 107
6.2.2 含有局部过程的环境 109
6.3 display 112
6.4 小结 113
练习 113
第7章 中间代码生成 115
7.1 中间语言 115
7.2 中间语言设计问题 116
7.3 中间表示技术 116
7.3.1 高级表示 116
7.3.2 低级表示 118
7.4 三地址代码中的语句 118
7.5 三地址指令的实现 120
7.6 三地址代码生成 121
7.6.1 数组的代码生成 123
7.6.2 布尔表达式的翻译 126
7.6.3 控制流(程)语句的翻译 132
7.6.4 case语句的翻译 136
7.6.5 函数调用 137
7.7 小结 139
练习 139
第8章 目标代码生成 141
8.1 影响代码生成的因素 141
8.2 基本块 142
8.3 树的代码生成 145
8.4 寄存器分配 148
8.5 缓存管理 154
8.6 使用动态规划的代码生成 154
8.7 小结 157
练习 157
第9章 代码优化 159
9.1 优化的需求 159
9.2 优化编译器设计问题 160
9.3 优化的分类 161
9.4 影响优化的因素 162
9.5 优化技术背后的主题 163
9.6 优化变换 164
9.6.1 编译时计算 164
9.6.2 公共子表达式消除 166
9.6.3 变量传播 167
9.6.4 代码迁移优化 167
9.6.5 强度折减 170
9.6.6 无效代码消除 171
9.6.7 循环优化 172
9.7 局部优化 175
9.8 全局优化 177
9.8.1 控制流分析 177
9.8.2 数据流分析 178
9.8.3 获取数据流信息 182
9.9 计算全局数据流信息 183
9.9.1 汇合路径 183
9.9.2 数据流等式 185
9.10 建立数据流等式 187
9.10.1 数据流分析 188
9.10.2 数据流等式的保守解 189
9.11 迭代数据流分析 190
9.11.1 可用表达式 191
9.11.2 有效范围识别 192
9.11.3 降低迭代数据流
分析的复杂性 192
9.12 小结 194
练习 194


====
以下是我对上述有一本书按标题顺序的回顾。
这里列出的仅是话题,因为某些具体的内容或在加上阅读者的启示才是更有意义。
Begin
编程风格作语言的组成部分
不必要且有干扰的设计
外包部分中设计和制造
滥用通用工具
新生事物的无缺陷或实用
社交软件的趋势
升级中考虑的兼容性
使复杂非目的的改动
网络模式下原有版权模式的问题
压榨员工利益
因为强测试而可减少的类型限制
实现技术中寻求优雅的方式
如何对Hacker品质的认识与合作
Web应用的趋势
流程的异步处理模式
激情在探索与合作中
兼容和实用的扩充后普及
为不需要特性实现的代价
不同程度情境下的冷静分析
以数量指标衡量下的问题
对团队的面临问题和评估机制
对特定系统的原生方式
社会软件设定和与用户的交互
社会软件下的新的方式
产品与顾客之间独立出的销售
产品与顾客关系对开发的指导
雇佣行为下的谨慎思考
幻灯的认知风格
有趣生动的教学引导
End

log.又扩充了一下原帖转的目录部分
====

字太多了 >_<!

没有评论: