MTK刚入门的开发者总是认为自己的工作很无聊,很没有前途,整天就是改bug,实则这种想法是狭隘的,mtk的学习只能算是嵌入式领域的冰山一角,应该感谢他初步的降低了嵌入式的门槛。
别人都说软件开发语言是相通的,同理嵌入式系统的开发其实也是同样的道理,嵌入式系统也都是相通的,搞精一门其他的系统就可以很快的掌握并进行开发,对于入门级的mtk表面的东西的确很容易掌握,但深入的内容还是需要花很大心血去研究的,这部分内容就是嵌入式系统中所共通的东西,最简单概括,那就是思想。
看csdn上有一篇报道《只有10%程序员能正确实现二分查找算法》 ,mtk代码中也有这样的一段代码,极其的优美,让人感受到程序员不仅仅是在创造代码,也是在创造一种艺术,唯有接近于艺术家的程序员才具备了软件设计师的潜质。
作者 张素丰,转载请注明出处:http://www.cnblogs.com/zhangsufeng/archive/2010/09/03/1816612.html
废话少说,让我们通过mtk的优美代码来学校二分查找。
对于mtk的开发者来说,对于设置菜单高亮的SetHiliteHandler函数可能已经熟悉的不得了了,在这个算法里,程序首先判断该menu是否已经高亮并存在于动态高亮表mmi_frm_int_hilite_hdlr_table中,如果存在则更换该menu的高亮函数,不存在则插入该menu并设置高亮。这个查找就使用了一个极其简约的二分查找,看代码: