设计中的道理_1

听朋友常抱怨,难道嵌入式就是在互联网上找代码,然后抄代码吗?

 

很多朋友不屑于这样抄代码。在美国,近年来成功的IT公司令人侧目。有几个公司是做C/C++,甚至做汇编慢慢起来的?Android,C/C++的批量应用,大量的应用都是用C堆出来的吗?我并未做深入细致的调查。有朋友对我说,C/C++, Java程序员今年来少一个优秀的程序员那真的是少一个优秀的程序员。这里主要的原因还是更高级的开发工具的效率对传统的工具的冲击。

 

创新进入了一个更高阶层。要用文件系统,没必要自己弄个文件系统。要用 DHCP 服务器, 网上的代码本来就满天飞,没必要自己去从头一点点写。这让我深深的感觉到,做好系统整合也是非常有意义的工作。又如现在的Android的系统,大大降低了手机的开发难度和应用门槛。 

 

系统整合是什么?教课书中没有写。比如说,文件系统,市面上常用的文件系统不下数十种。到底哪种适合你?除非是自己写,没有一个系统是100%适合自己的。摆在我们面前的问题是,挽起袖口自己来吗?站在高层去观察。不要试图总从微观上保证不出问题。有时候,架构,业务流程都可以用来更改,从根上断了念想。我们写代码做系统总是为了解决什么问题。解决问题的层次非常多。目光总不要聚焦在代码上,应在业务流程上,架构上彻底回避一些问题。 我准备在新系统中使用文件系统,另外一个工程师反驳我,说文件系统的话,修改一个字节,会很慢的。我笑了笑,这是个从流程上很好规避的问题。如果还规避不掉的话,可以做个内存文件映射,读一次,在适当的时机再写入就好。

 

未来,创新越来越像个立体化的战争。海陆空天四位一体。光靠对某一种武器的熟悉并不能扭转战局的。 自己做武器上战场,那更是天方夜谭。但这并不意味着可以放弃对武器制造过程的理解。一个优秀的设计者,应有完整的履历和对每个过程的深入理解。

 

 

 

posted @ 2013-08-01 19:36  坚固66  阅读(140)  评论(0编辑  收藏  举报