606
社区成员




A2:我认为在学习阶段,重复造轮子是必要的,毕竟在自己能够创造新的东西之前得先学会旧的东西,以此为基础才能继续下去。学习初期一起重复性的功夫应该要多做,有助于自己的理解。但到了后面熟练的阶段,重复造轮子就没必要了,这时在能够减轻劳动量的前提下,减少一些重复代码的编写,将更多的精力去进行重要代码的开发,可以利用代码自动生成去处理重复性的代码,这样有助于提高软件开发效率。技术也是提高效率的关键,一些涉及算法的比较复杂的代码,还是得依靠自己的硬技术才能解决。
原文地址:https://bbs.csdn.net/topics/613014605
事实上编译就是一种代码自动生成技术,也有不少编译器是把语言编译成js的,并且有一定的实用性。
软件工具,软件工程的一个重要方面,就是要做各种工具 (IDE,编译器),帮助大家更好地做其他工具 (生产力工具),最终帮助用户。
最理想的情况当然是使用的语言表意能力足够强,而我们不需要自动生成代码就可以直接避免重复劳动。但是现实很骨感,有些领域还没有很好用的工具来避免这些重复劳动,这个时候使用代码自动生成就没用问题。事实上编译就是一种代码自动生成技术,也有不少编译器是把语言编译成js的,并且有一定的实用性。可以说,代码自动生成技术是计算机行业的根基之一,但是我们要合理使用它,不要把机器的代码和人类的代码混在一起,才能有好的可读性和好的可维护性。