微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 请假第二天(明天断更)

请假第二天(明天断更)

时间:10-02 整理:3721RD 点击:
    前两天一直在说我写代码的思路,核心就在于一个好的结构,主要在于清晰易懂,而实际上在言语之间却是过多的贬低了其他的代码设计思路。今天我就来一次对自己的拨乱反正,当然了,今天肯定还是没有代码的,我争取下次可以提出一份代码来进行比较。
    上次我说到了天才的思路天马行空,写的代码犹如羚羊挂角,精妙绝伦而又无迹可寻所以不适合作为一种普遍的原则来学习和理解。虽然事理上是这样,但是还是有些言过其实了!主要还是在公司里面,写代码没有别人的快,工作不出别人出彩,有些抑郁。导致的言语上有些过激了。但是我依然是保留我的观点的,现在我要说的是如何学习这些天才的代码,毕竟只有去学习这些精妙的代码,我们才有可能去理解,从而进步。
   要学习这些代码,单纯的模仿是不行的,因为它们往往是在一些特殊的环境中产生的,大部分都只适用于一些特殊的环境,环境变了,很可能就毫无用处;那么,去请教那些天才有没有用呢?,大部分也是没有用的,因为天才们的思路往往只可意会不可言传的(很可能他们自己在写完之前,根本不知道自己写的代码有多么好,甚至写完之后都不知道写的代码到底好在哪里!)。那么到底怎么样去学习呢?还是要从最基本的一些原则来入手的!我评价一份代码的好与不好,一般都是从以下几个方面来做的:
    1、代码的清晰度,也就是易于理解的程度(原谅我把它放在第一位)
    2、代码的执行效率
    3、代码的可复用率
    这里面的第一点和第二点,在很多情况下是相对立的。天才们的代码,往往就是极其高效,但是一般人很难看懂。但是,它依旧是遵循一些原则的(虽然天才们不一定知道自己用上了!)。比如说功能上的复用,同样是一行代码,天才们可以让它完成两个或是多个功能,比如说,同样是一份代码,要完成数据接收,校验,数据识别,和存储的功能,一般的人都会依据这个流程用不同的模块完成,但是对于天才,他就会在数据接收的同时进行识别和预校验,然后正式校验,再存储。这样可以很大程度上提高代码的效率。这种功能上的复用,其实是完成了代码的压缩,减少了内存的使用。呃,其实今天想到的也就是这个,之后想到了再去补充好了!总之,天才的代码很难学会,最有效的方法就是直接背下来!记住应用场景。然后直接通就好了,把它当做一个模块来用!
    每次写的时候都是写到一半就卡住了!还是阅历不够的原因!我要加油!
PS:本人现在大三,在嵌入式领域只能算是一个刚刚看见门槛的小学生,上面的写的东西大部分是我看的资料,也有一些是我的想法。如果您不小心点开了,又不幸看完了,那么我还真是感激不尽!当然,如果您愿意留下只言片语,或是交流,或是指正,鄙人更是感激万分!
     末学后进在这里,希望与大家一起进步,成长!

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top