在《高级程序设计》课上,季老师为我们介绍了程序设计的级别。
所谓程序设计,首先要把问题符号化,然后再根据符号化的设计方案写程序。根据从符号到程序的转换的难度,可分为五个级别:
第一级:简单数据类型:
用编程语言的预定义类型即可解决问题。(C、PASCAL...)
第二级:自定义数据类型:
需要自定义数据类型才能表达某些问题。(VB,C++,JAVA...)
第三级:类型的类型:
当自定义类型很多时,类型间的操作不容易实现,需要把类型分类,这样就出现了类型的类型,或称抽象数据类型。(C#...)
第四级:类型规划(设计模式):
实行任务拆分,使需要趋于稳定,使程序的解决方案之间相互独立,并进行质量控制,为将来的维护奠定基础,主要依靠经验技术,或者说是一种艺术。(C#...)
Test->Analyze->Design->Implement->Test->...(螺旋式循环,迭代)
第五级:动态类型:(LISP)
How to do ->What to do
Rule set -->Rule Engine -->DB
(全世界达到这一级的企业只有三十多家)
教育问题非常复杂,优秀的教育软件设计应该达到第五级才行。