《程序员修炼之道:从小工到专家》10
代码生成器和按合约设计
第一次看到代码生成器这个名词时我还以为是向Java中将某些功能提取出来反复调用一样,是一种编程思想,结果揽过文章之后发现它是一种技术
代码生成器有主动与被动之分,根据我在文章描述中的理解,主动代码生成器可以根据需求定向输出,而被动代码生成器的输出需要人工二次修正
如果将编程比作下厨房,各种不同款式的刀本质上是对不同需求的提炼,如果只使用一把菜刀那面对不同需求是可能就需要使用不同的手法,而使用对应菜刀则会使问题变得简单许多。代码生成器就属于“不同款式的刀”
代码生成器可以减少重复减轻工作量,可用于多种编程语言之间的消息通信。不过代码生成器不一定是复杂的、也不仅仅可以生成代码,它还可以生成HTML、XML等格式文件。
按我对理解按合约设计中提到合约是对代码的规范,在某种意义上也需求方对程序需求的具体化
按照合约设计不仅仅局限在需求方的合约,还有在编程中我们需要遵守的规则——但并不是所有规则需要遵守
从需求出发按照合约进行设计在很多时候可以简化程序的复杂性,降低程序出错的概率
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通