编码阶段的任务(1) ·使用选定的程序设计语言,把模块的过程性描 述翻译为源程序(源代码)。 模块的过程性描述 编码 源程序 (不可执行的) (可执行的) 6
6 编码阶段的任务(1) • 使用选定的程序设计语言,把模块的过程性描 述翻译为源程序(源代码)。 模块的过程性描述 (不可执行的) 源程序 (可执行的) 编码
编码阶段的任务(2) 源程序要求: 正确可靠:最基本的要求。 简明清晰:容易进行测试和维护。 源程序的清晰与效率之间常存在矛盾, 在难以兼顾时,选择哪一个? 7
7 编码阶段的任务(2) 源程序要求: 正确可靠:最基本的要求。 简明清晰:容易进行测试和维护。 源程序的清晰与效率之间常存在矛盾, 在难以兼顾时,选择哪一个?
清晰与效率 public int compute(int val){ int result val<<1; ./more codes return result; public int compute(int val){ int result val 2; ./more codes 清晰优于效率 return result; 因为:使人更容易理解, 减少错误
清晰与效率 public int compute(int val){ int result = val<<1; .// more codes return result; } public int compute(int val){ int result = val * 2; .// more codes return result; } 清晰优于效率 因为:使人更容易理解, 减少错误
程序语言百花齐放 JavaScript Perl PHP S GNET Markup c 69 XML 起8Vis面aBasic 8 Pythoncogolp rototy Sebase a Fortran aunlolo 0 Lisp eflective C-sharp HTML Smalltalk
9 程序语言百花齐放
程序语言的效率 “咚咚咚”,主人刚想问是谁,门外一声“汇编”。 “咚咚咚”,两个声音同时响起:“谁?”,“C” ● “咚咚咚”,“谁?”,“C++” “咚咚咚”,“谁?”,过了片刻,“Java” “咚咚咚”,“谁?”,过了很久.,主人把门一打 开,原来是C#!
程序语言的效率 • “咚咚咚”,主人刚想问是谁,门外一声“汇编” 。 • “咚咚咚”,两个声音同时响起:“谁?”,“C” • “咚咚咚” , “谁?” ,“C++” • “咚咚咚” , “谁?”,过了片刻,“Java” • “咚咚咚” , “谁?” ,过了很久.,主人把门一打 开,原来是C#!