搜索
bottom↓
回复: 249

正点原子的代码真规范,是我太菜鸟了还是他太厉害了啊.....

  [复制链接]

出0入0汤圆

发表于 2013-1-22 19:08:49 | 显示全部楼层 |阅读模式
本帖最后由 eebaby 于 2013-1-22 19:21 编辑

小弟不才,写代码都是堆积在main函数里面,基本不会用头文件。
买了个战舰,看了几天正点原子的代码,结构清晰,层次分明,让我感到很自卑。。。。
啥时候小弟能写出这样的代码啊。。。。。
坛友们写代码都有这么规范吗?
还是我自己太菜鸟了啊???



蜂鸣器实验.PNG

出0入0汤圆

 楼主| 发表于 2013-1-22 19:10:48 | 显示全部楼层
心里怎么这么不爽呢???、
哎,人比人气死人,比了才知道差距。

出0入0汤圆

 楼主| 发表于 2013-1-22 19:12:24 | 显示全部楼层
我是不是该从C语言学起??我咋心里空空的呢。。。

出0入0汤圆

发表于 2013-1-22 19:13:59 | 显示全部楼层
认真学习,共同加油!~不要浮躁呀!~

出0入0汤圆

发表于 2013-1-22 19:14:43 | 显示全部楼层
养成习惯,一点一点积累!
关键是多写,多读!

出0入0汤圆

 楼主| 发表于 2013-1-22 19:18:07 | 显示全部楼层
linucos 发表于 2013-1-22 19:14
养成习惯,一点一点积累!
关键是多写,多读!

巨大的差距给我一种很大的压力。。。

还是好好静下来学习吧。。。啃啃原子的战舰了。。。。

出0入0汤圆

 楼主| 发表于 2013-1-22 19:19:06 | 显示全部楼层
我们同学写代码都是这样的。。。
实现功能就行。。。没这么工整的

出0入0汤圆

发表于 2013-1-22 19:20:45 | 显示全部楼层
等你写多了!代码经常上W行,如果代码写得很丑,很乱,你根本看不下去的!

出0入42汤圆

发表于 2013-1-22 19:25:05 | 显示全部楼层
写多了就好了。
最开始弄AVR程序,就一个c文件搞定。
后来才慢慢有条理起来的。
(虽然现在还是乱七八糟……)

出0入0汤圆

发表于 2013-1-22 19:28:17 | 显示全部楼层
确实,刚开始学,程序少,乱写也没感觉什么,到后来自己都受不了了。

出0入0汤圆

 楼主| 发表于 2013-1-22 19:28:46 | 显示全部楼层
honami520 发表于 2013-1-22 19:20
等你写多了!代码经常上W行,如果代码写得很丑,很乱,你根本看不下去的! ...

这要项目锻炼吧??

我大四了。。。就读中专,找不到工作。
没这么多机会写代码。

希望学习几个月原子哥的战舰能让我找一份好工作了。

出0入0汤圆

 楼主| 发表于 2013-1-22 19:35:20 | 显示全部楼层
jimmy_xt 发表于 2013-1-22 19:25
写多了就好了。
最开始弄AVR程序,就一个c文件搞定。
后来才慢慢有条理起来的。

我就是一个C文件搞定一切代码。。。
以前写过一个C文件里面一千多行,还蛮得意。。。

出0入0汤圆

发表于 2013-1-22 19:55:57 | 显示全部楼层
嗨,你现在这个小年纪,写了1000行,不错,夸一下。
现在也不必着急别人的代码,等你写多了,你自然就悟了,这个别人说也没用。就继续保持你现在的风格吧,有一天你自己就会转变的,那才叫一个深刻。

出0入0汤圆

发表于 2013-1-22 19:59:42 | 显示全部楼层
加油吧   以后多注意点就会好的

出0入0汤圆

发表于 2013-1-22 20:08:58 | 显示全部楼层
多写点  多经历几个项目就慢慢好了!!!

出0入0汤圆

发表于 2013-1-22 20:25:33 | 显示全部楼层
多看下别人写的。学校里很多老师都不会教这些东西。只会照本宣科。另外,要搞嵌入式,还是要把C学好才行的。到卓越上买几本好书多看下。这个不要舍不得。

出0入0汤圆

发表于 2013-1-22 20:55:10 | 显示全部楼层
LZ,去看软件工程。

出0入0汤圆

 楼主| 发表于 2013-1-22 20:59:43 | 显示全部楼层
kinsno 发表于 2013-1-22 19:55
嗨,你现在这个小年纪,写了1000行,不错,夸一下。
现在也不必着急别人的代码,等你写多了,你自然就悟了 ...

工作都找不到。
大学在一款开发板上面写了一点代码。乱起八糟的堆积,堆积起来看起来有1000行,有用的代码估计100行都没有。。。。

出0入0汤圆

发表于 2013-1-22 21:02:22 | 显示全部楼层
mcu_mouse 发表于 2013-1-22 20:25
多看下别人写的。学校里很多老师都不会教这些东西。只会照本宣科。另外,要搞嵌入式,还是要把C学好才行的 ...

没有诀窍,多看多练,慢慢就熟练了。。。

出0入0汤圆

发表于 2013-1-22 21:18:51 | 显示全部楼层
首先知道差距了就是进步,慢慢养成习惯就好了,尽管我更菜!

出0入0汤圆

发表于 2013-1-22 21:20:12 | 显示全部楼层
长期积累和总结一定行的

出0入0汤圆

 楼主| 发表于 2013-1-22 21:25:49 | 显示全部楼层
alientek 发表于 2013-1-22 21:02
没有诀窍,多看多练,慢慢就熟练了。。。

您是原子哥吗?
谢谢你。
向您学习。。。

出0入0汤圆

 楼主| 发表于 2013-1-22 21:26:11 | 显示全部楼层
senzh01 发表于 2013-1-22 21:18
首先知道差距了就是进步,慢慢养成习惯就好了,尽管我更菜!

谢谢!
只能慢慢学习了。。。

出0入0汤圆

发表于 2013-1-22 22:01:19 | 显示全部楼层
代码是写出来得,不是看书出来的!

出0入0汤圆

发表于 2013-1-22 22:07:39 | 显示全部楼层
写着写着,你就会痛恨自己的代码自己有时候都看不太清晰了。然后你就会想方设法改变这一状况,渐渐的你也就会这样写了。

出0入0汤圆

发表于 2013-1-22 22:17:56 | 显示全部楼层
确实,有条理的程序才易读

出0入85汤圆

发表于 2013-1-22 22:25:33 | 显示全部楼层
写代码时要想着,以后维护你代码的人将是一个有暴力倾向的并且知道你住在哪里的人

出0入0汤圆

发表于 2013-1-22 22:29:28 | 显示全部楼层
本帖最后由 ~just_yy 于 2013-1-22 22:31 编辑

这就是强制你自己养成一个习惯就是 可能会在写程序的时候多花点时间 但是 对你以后是有好处的
我觉得 写程序时候 多下功功夫 先求形似  慢慢的就体会到真谛了
我觉得那样也不难 思考好 按模块划分好功能 变量申明注意些 自己写着写着就懂了应该

出0入0汤圆

发表于 2013-1-22 22:30:42 | 显示全部楼层
eebaby 发表于 2013-1-22 19:10
心里怎么这么不爽呢???、
哎,人比人气死人,比了才知道差距。

你这样的心态可不好啊!
我是不知道什么原子不原子的,也无法评价它的代码到底什么水平。
但是,既然你觉得它的代码很牛,那应该是有所收获,从中学习到什么才是。
如果,人家比你厉害,你就只会不爽,那恕我直言,你也许只能永远的不爽下去了。

出0入157汤圆

发表于 2013-1-22 22:38:36 | 显示全部楼层
。。LZ好象见的世面太少了。目前大的IDE都支持C语言自动缩进。

出0入0汤圆

发表于 2013-1-22 22:46:53 | 显示全部楼层
嘿嘿 我以前 也是一个C搞定  (代码拉的老长-)

然后 外设越来越多 程序越来越长 就越来越感觉 多分.c和.h 的重要了  (更易于维护,移植)   听前辈说到了相应的厂里 就有相应的编程 规范  如感兴趣  可以去下载看看

出0入0汤圆

发表于 2013-1-22 22:53:53 | 显示全部楼层
模块化编程是一方面,还有编程规范,看看华为的培训资料
别人做的再好,那是别人的,想要学到东西就甩开资料自己编,不行了再参考一下,别人的堆积是没用的

出100入0汤圆

发表于 2013-1-22 22:54:19 | 显示全部楼层
成熟的大公司一般都会有自己的代码规范,提高开发效率的同时也会非常方便后期维护。我之前的一家公司实习的第一件事就是学习公司的代码规范和文档规范,虽然最后没能留下来,但实习期间的所学使我受益良多。

出0入0汤圆

发表于 2013-1-23 00:07:36 | 显示全部楼层
晕死,原子的代码风格一点都不怎么样。前段时间想玩MP3播放,同时买了原子和野火两种开发板。单就代码风格来讲,原子的远不如野火的。模块划分不清楚,不同的功能混在同一函数里,导致这个函数不容易重用,同时更改硬件或者更改底层会影响过多的上层代码。野火的好些。

原子不要来杀我,原子的东西也是有优点的,播放芯片用的是1053,比野火实在,野火用的1003。另外原子对于1053实现的功能也比野火多。

做软件,最开始可以是语言,c什么的,然后上一个层次应该看看软件工程类的书

出0入0汤圆

发表于 2013-1-23 00:35:39 | 显示全部楼层
本帖最后由 Lavion 于 2013-1-23 00:42 编辑

楼主,原子的风格其实真的不要太崇拜,真的。他的原子战舰的代码,我看了好几个代码,真的感觉也不算太好。我截图一段他的蜂鸣器的代码
//按键处理函数
//返回按键值
//mode:0,不支持连续按;1,支持连续按;
//0,没有任何按键按下
//1,KEY0按下
//2,KEY1按下
//3,KEY2按下
//4,KEY3按下 WK_UP
//注意此函数有响应优先级,KEY0>KEY1>KEY2>KEY3!!
u8 KEY_Scan(u8 mode)
{         
        static u8 key_up=1;//按键按松开标志
        if(mode)key_up=1;  //支持连按                  
        if(key_up&&(KEY0==0||KEY1==0||KEY2==0||KEY3==1))
        {
                delay_ms(10);//去抖动
                key_up=0;
                if(KEY0==0)return 1;
                else if(KEY1==0)return 2;
                else if(KEY2==0)return 3;
                else if(KEY3==1)return 4;
        }else if(KEY0==1&&KEY1==1&&KEY2==1&&KEY3==0)key_up=1;             
        return 0;// 无按键按下
}
这个是她KEY_SCAN函数,如果让我写,起码 这个函数的返回参数,输入参数以及 KEY都是枚举体,然后关于在这个代码里面你不会看到1 2 3 4,等等让人迷糊的东西。好的代码应该让人感觉看
起来像看小说一样,读下来就懂了。
同样都是1,这个函数里面,起码有松开的意思,也有按键1的意思,程序最忌讳歧义和一词代表多义。
还有你不看MODE的函数说明,你想看出来mode==0的时候代表不支持连续按,==1代表支持连续按,得花点功夫吧。
一个变量名取都取了,既然它代表几种意思,而且这几种意思都是不重叠相互排斥的,那就应该用枚举体,在枚举体的成员变量取名的时候,就分别取一看就知道什么意思的变量名。
好的代码起码里面的变量,比如mode尽量让看的人一看,就不光知道他是模式的意思,而且一看就知道他有几个模式,每个模式代表什么意思。压根不用看函数头注释的说明。
关于枚举体,如果用来调试,该变量在观察窗你去观看,你就知道好处了,还有写代码的时候,有编译器的类型匹配等等检测,好处多多,也方便以后代码的修改和维护。

楼主你说的他代码好,只是因为他分门别类的C文件和H文件吧。这个是基本功了,等你写过1个上W行的代码,你就知道为什么一定要这么写了。

出0入0汤圆

发表于 2013-1-23 00:39:36 | 显示全部楼层
猴子爬树爬的高了,大家就都看见他的红屁股了。

出0入0汤圆

发表于 2013-1-23 01:09:03 | 显示全部楼层
等你写多了就会明白了,如果你接触其他高级语言的话,或许你明白得更加的透彻。一直写在main函数里面,基本不用头文件这些应该都是初学者的作为。如果你开发过一些较大的程序你就明白了~

出0入0汤圆

发表于 2013-1-23 01:58:39 | 显示全部楼层
Lavion 发表于 2013-1-23 00:35
楼主,原子的风格其实真的不要太崇拜,真的。他的原子战舰的代码,我看了好几个代码,真的感觉也不算太好。 ...


写触摸屏程序,用了一个结构体,
无数的客户跑来问意思。。。。。。
所以前面几个入门实验,得学着用最容易最符合初学者的方式来写代码。。。。

作为实际项目,这样的返回值用枚举是必须的,可读性强。。。 综合实验枚举,结构体,指针等等用了个遍,升华的用户可以参考。。。

出0入0汤圆

发表于 2013-1-23 01:59:35 | 显示全部楼层
eebaby 发表于 2013-1-22 21:25
您是原子哥吗?
谢谢你。
向您学习。。。

能帮助到你就好。不客气。

出0入0汤圆

发表于 2013-1-23 02:31:00 | 显示全部楼层
代码里用到的常数叫做魔幻数。在实际项目中魔幻数是要极力避免的,要用枚举或#define对其事先定义。另外也要避免如下定义:
#define NUM_1   (1)
#define NUM_2   (2)
然后在程序中使用NUM_1 和NUM_2。
名义上是去掉了魔幻数,但是NUM_1 和NUM_2一点意义都没有,仍然是魔幻的。

出0入0汤圆

发表于 2013-1-23 06:38:01 | 显示全部楼层
原子战舰可以让我们入门,以后怎么提高就要看自己了

出0入84汤圆

发表于 2013-1-23 08:56:44 | 显示全部楼层
建议找些VC的上位机程序看看。
估计会对你有帮助呵呵。

新手对结构体,联合,指针等还是慢慢来, 一个一个理解

出0入0汤圆

发表于 2013-1-23 09:16:52 | 显示全部楼层
多写,多学,就是这么简单
很多代码的风格我是从周立功那里学到的

出0入0汤圆

发表于 2013-1-23 09:46:31 | 显示全部楼层
Lavion 发表于 2013-1-23 00:35
楼主,原子的风格其实真的不要太崇拜,真的。他的原子战舰的代码,我看了好几个代码,真的感觉也不算太好。 ...

的确,原子的代码距离规范还有很远的距离,最近一段时间一直在做把原子的板子上的STM32换成F4之后让原来的例程跑起来的事情,对这个深有体会。

写过10多年的C/C++代码,也陆陆续续接触过5/6款STM开发板的代码,其他能称得上规范的就只有Discovery Free了。
这个开发板的作者是个36岁的华裔。代码也是开源的,各家开发板包括官方的,能写到这个程度再说是规范吧:
https://github.com/ekawahyu/F4-DiscoverFree

他们板子的地址(在重庆,但是板子是英文的,而且toolchain全是用Open Source的):
http://www.aisenke.com/nodinorobotics/f4discoverfree/index.shtml

这不是软文也不是硬广告,不服气的就跟那个代码比一下就好了。
我争取把原子的战舰板在STM32F4上的移植的代码也整到这个水平。

出0入4汤圆

发表于 2013-1-23 10:45:49 | 显示全部楼层
工欲善其事,必先利器,良好的代码风格,看起来美观,后期维护也方便。

出0入0汤圆

发表于 2013-1-23 10:58:05 | 显示全部楼层
还是好好看看C吧 最近我也一直再看 程序好久没写了   另外可以看看野火的例程  看看那个风格看着习惯吗

出0入0汤圆

发表于 2013-1-23 12:11:40 | 显示全部楼层
alientek 发表于 2013-1-23 01:58
写触摸屏程序,用了一个结构体,
无数的客户跑来问意思。。。。。。
所以前面几个入门实验,得学着用最容 ...

给新人学,你们又要技术服务,完全理解。我不是批评你们的东西不好,只是告诉新人不能把那个战舰里面的代码当做标准来模仿,或者以终极目标在努力

出0入0汤圆

发表于 2013-1-23 12:41:10 | 显示全部楼层
Lavion 发表于 2013-1-23 12:11
给新人学,你们又要技术服务,完全理解。我不是批评你们的东西不好,只是告诉新人不能把那个战舰里面的代 ...

是的。谢谢。
随着编程能力的提高,就会形成自己的风格,C语言熟练了,自然代码页就规范了。
项目开发中,工程中很多代码看懂了也就熟悉了,熟悉了也就会写规范代码了。。。

楼主还没毕业,不用着急,慢慢练习就会进步的。

出0入0汤圆

发表于 2013-1-23 16:01:46 | 显示全部楼层
本帖最后由 first_blood 于 2013-1-23 16:02 编辑

好多写单片机的,读不懂STM32的库代码,反而学C++,C#的,看懂很容易,STM32库就很规范的

出0入0汤圆

发表于 2013-1-23 16:24:53 | 显示全部楼层
安慰你一下,不乱怎么叫自己写呢

出0入0汤圆

发表于 2013-1-23 17:08:18 | 显示全部楼层
乱点,防抄袭!

出0入0汤圆

发表于 2013-1-23 17:33:18 | 显示全部楼层
搞硬件的人一般都没有软件工程的底子,其实所谓的面向对象的容器包装之类,在单片机就可以理解为你封装不同的规范调用,然后把不同的调用写在.h 文件里来组织结构就可以了
比如,我们在做一个数控电源,定好显示缓冲区,定义好显示缓冲区的刷新以及获取数据的调用规则,写在gd.h 中,点阵库数据写在dot.h中
然后就可以针对一个液晶控制器写一个.h完成对数据缓冲区gd的借口对应
dac一种芯片做一个
这样,你的程序就可以通过切换前面不同的include来一套程序适用于多种硬件,尤其是显示器件,否则换硬件时折腾死你

出0入0汤圆

发表于 2013-1-23 18:32:12 | 显示全部楼层
正点原子是谁?很厉害吗?是干嘛的

出0入0汤圆

发表于 2013-1-23 20:41:33 | 显示全部楼层
同样要学习啊

出0入0汤圆

发表于 2013-1-24 09:26:51 | 显示全部楼层
写代码到一定量,你自然就回去学规范,学模块化编程的。这个不能急,一步步来。

出0入0汤圆

发表于 2013-1-24 10:13:10 | 显示全部楼层
mcu_mouse 发表于 2013-1-22 20:25
多看下别人写的。学校里很多老师都不会教这些东西。只会照本宣科。另外,要搞嵌入式,还是要把C学好才行的 ...

你好,我现在想学C语言,也常到卓越逛,但是不知道买什么书啊。还望推荐几本书的书名,多谢啦 。。。

出0入0汤圆

发表于 2013-1-24 10:22:58 | 显示全部楼层
正点的代码就不错了!

出0入0汤圆

 楼主| 发表于 2013-1-24 11:26:26 | 显示全部楼层
又看了2个实验,代码比较整齐规范。。。能达到原子程度,我找工作至少不用愁了我相信。。。。

出0入0汤圆

发表于 2013-1-24 12:48:57 | 显示全部楼层
eebaby 发表于 2013-1-24 11:26
又看了2个实验,代码比较整齐规范。。。能达到原子程度,我找工作至少不用愁了我相信。。。。
...

楼主,正点原子是谁呀?

是老教授吗?

出0入0汤圆

发表于 2013-1-24 13:09:40 | 显示全部楼层
armyang 发表于 2013-1-24 10:13
你好,我现在想学C语言,也常到卓越逛,但是不知道买什么书啊。还望推荐几本书的书名,多谢啦 。。。 ...

下面这些书你可以选择一些看,我的建议是先看《C指针编程之道》、《C语言深度解剖:解开程序员面试笔试的秘密》、《高质量程序设计指南》。把这三本看一遍再去看数据结构和操作系统的。

c指针编程之道
http://www.amazon.cn/C%E6%8C%87% ... 59003613&sr=8-1

C和指针 POINTERS ON C
http://www.amazon.cn/C%E5%92%8C% ... 59003671&sr=8-1

C和C++经典著作•C陷阱与缺陷
http://www.amazon.cn/C%E5%92%8CC ... 59003671&sr=8-2

C和C++经典著作•C专家编程Expert C Programming Deep C Secrets
http://www.amazon.cn/C%E5%92%8CC ... 59003671&sr=8-4

C语言深度解剖:解开程序员面试笔试的秘密(第2版)
http://www.amazon.cn/C%E8%AF%AD% ... 9003820&sr=8-24

高质量程序设计指南:C++/C语言(第3版)(修订版)
http://www.amazon.cn/%E9%AB%98%E ... 59003869&sr=8-1

大话数据结构
http://www.amazon.cn/%E5%A4%A7%E ... 59003919&sr=8-1

现代操作系统(原书第3版)
http://www.amazon.cn/%E7%8E%B0%E ... 59003980&sr=8-1

操作系统:精髓与设计原理(原书第6版)
http://www.amazon.cn/%E6%93%8D%E ... 59003980&sr=8-2


30天自制操作系统(附光盘)/图灵程序设计丛书
http://www.amazon.cn/30%E5%A4%A9 ... 59003980&sr=8-4

出0入0汤圆

 楼主| 发表于 2013-1-24 13:23:32 | 显示全部楼层
minchina 发表于 2013-1-24 12:48
楼主,正点原子是谁呀?

是老教授吗?

  战舰STM32开发板的设计者,写了好几本STM32手册和书籍吧。。。
我买的战舰,上面备注作者是 正点原子。

出0入0汤圆

发表于 2013-1-24 13:31:49 | 显示全部楼层
看linux的内核代码

出0入0汤圆

发表于 2013-1-24 13:45:18 | 显示全部楼层
习惯要养好,哪怕是些一个简单的程序 也要做足功夫。该有的头文件定义好,最好是弄一个自己的模板,每建一个工程就调用这个模板来写。麻雀虽小,但一定要五脏俱全

出0入0汤圆

发表于 2013-1-24 13:54:40 | 显示全部楼层
mcu_mouse 发表于 2013-1-24 13:09
下面这些书你可以选择一些看,我的建议是先看《C指针编程之道》、《C语言深度解剖:解开程序员面试笔试的 ...

看着您给的这些指教,写了那么多内容 ,多谢啊

出0入0汤圆

发表于 2013-1-24 14:05:30 | 显示全部楼层
li3p 发表于 2013-1-23 09:46
的确,原子的代码距离规范还有很远的距离,最近一段时间一直在做把原子的板子上的STM32换成F4之后让原来 ...

代码看了...结构清晰.
但是那句话怎么说的:一个人永远敌不过所有人...我想说ST的官方demo代码要更优秀些...
但是作为个人,我依旧觉得aisenke的代码有ST的一些风格,应为他也用F4的官方库,这也是值得学习的.

出0入0汤圆

发表于 2013-1-24 15:10:49 | 显示全部楼层
本帖最后由 li3p 于 2013-1-24 15:16 编辑
jamiliang 发表于 2013-1-24 14:05
代码看了...结构清晰.
但是那句话怎么说的:一个人永远敌不过所有人...我想说ST的官方demo代码要更优秀些. ...


  

我的一点体会是结构清晰对个人而言已经是个不容易达到的目标了。
很多跑单帮的个人,只是把“可工作”作为一个基础目标。

但是其实编程的语言要有交流的功能,让别人看起来也能清晰易懂,甚至觉得优美。
其实也不仅仅是别人,也包括你自己,过了3个月后你再回来看自己的代码还能看得懂吗?

结构清晰的另外一个好处,就是软件是有架构(或者说结构吧)的,而架构中的可重用性
随着做的项目或者产品越多,会发现越重要。这一点上ST的官方DEMO就是我们所能接触到
的最好的例子了。

软件开发需要有这样的积累意识去聪明的干活儿。

出0入0汤圆

 楼主| 发表于 2013-1-24 15:58:59 | 显示全部楼层
li3p 发表于 2013-1-24 15:10
我的一点体会是结构清晰对个人而言已经是个不容易达到的目标了。
很多跑单帮的个人,只 ...

看来还是要慢慢养成习惯,习惯问题。。。

出0入0汤圆

发表于 2013-1-24 18:30:38 | 显示全部楼层
这样的实例很平常啊,很多例程里都是这样的格式,看多了自己也会形成这样的习惯的,虽然我也还是一个没有脱离菜鸟级别的人

出0入0汤圆

 楼主| 发表于 2013-1-24 21:33:59 | 显示全部楼层
minchina 发表于 2013-1-23 18:32
正点原子是谁?很厉害吗?是干嘛的

在我看来挺厉害的。呵呵。

出0入0汤圆

发表于 2013-1-28 14:44:09 | 显示全部楼层
li3p 发表于 2013-1-24 15:10
我的一点体会是结构清晰对个人而言已经是个不容易达到的目标了。
很多跑单帮的个人,只 ...

我只能说有这种以大局为重,可维护,不惧复杂的观点....大部分情况下是受到资本主义国家软件大牛的著作所害....
共产主义注重成果...不太注重过程...所以不具备可复制性...
相反资本主义注重所有环节..因为所有环节是都是需要资本付出的,因而所有环节都是资本的体现...都是具有价值的.
总结起来其实还是我为人人,人人为我的互相关爱精神.

出0入0汤圆

发表于 2013-1-29 01:09:53 | 显示全部楼层
好好学吧

出0入0汤圆

 楼主| 发表于 2013-1-29 20:31:41 | 显示全部楼层
星为离歌笑 发表于 2013-1-29 01:09
好好学吧


谢谢您。

出0入0汤圆

发表于 2013-1-29 20:49:41 | 显示全部楼层
知耻而后勇吧

出0入0汤圆

 楼主| 发表于 2013-1-29 21:25:56 | 显示全部楼层
wind2100 发表于 2013-1-29 20:49
知耻而后勇吧

出0入0汤圆

发表于 2013-7-26 11:43:04 | 显示全部楼层
谢谢。我们代码水平也有待提高。。
代码很多地方都局限初学者水平,不能太多结构体之类的

出0入0汤圆

发表于 2013-7-26 14:17:45 | 显示全部楼层
良好的程序风格...
第一步是要"软硬分离"....
第二步是"数据接口分离"....
这是两个最基本的...
这两步分离不开...怎么弄程序都是乱的...也就没有代码风格可谈...
至于是int this_is_a_val; int ThisIsaVal;哪个好这个是个人风格的问题...没必要统一...

出0入0汤圆

发表于 2013-7-26 14:27:27 | 显示全部楼层
哈哈,挖了一手好坟
对模块分离有兴趣的建议看两本老书:傻孩子的《深入浅出AVR》和谢楷、 赵建的《MSP430系列单片机系统工程设计与实践》
然后在实践中慢慢体会思考结构应该如何分层

出0入0汤圆

发表于 2013-7-26 15:29:47 | 显示全部楼层
看多了你就知道层次感了

出0入0汤圆

发表于 2013-7-26 18:41:07 | 显示全部楼层
这个一开始就要养成好的习惯,代码多了你看自己代码都会吐的。

出0入0汤圆

发表于 2013-7-26 18:51:29 | 显示全部楼层
一个好的程序习惯是必须的。

出0入0汤圆

发表于 2013-7-26 19:24:35 | 显示全部楼层
可以看出他们真正用心

出0入0汤圆

发表于 2013-7-26 21:24:20 | 显示全部楼层
是的。从开始就养成良好的习惯,别怕麻烦。
很多写程序就是怕麻烦,什么都放到一个函数一个文件里面,最后程序大了就痛苦了。
思路要清晰,要有条理。自然会写出漂亮的代码。

出0入0汤圆

发表于 2013-7-28 14:15:11 | 显示全部楼层
我到公司报道的前几天没干别的,就是学习公司内部的代码编写规范,超级规范的,几乎每一行都要有注释,不然你写的模块别人怎么看懂。

出0入0汤圆

发表于 2013-7-28 14:16:02 | 显示全部楼层
代码乱也是一种加密,我说的能理解么?
特别在公司有竞争的环境下。

出0入0汤圆

发表于 2013-7-28 17:50:31 | 显示全部楼层
先写一堆,调试完成了以后再把各个模块细分到不同的文件内。。。。。刚开始分文档写程序的时候就是这么搞的。。。。

出0入0汤圆

发表于 2013-7-28 20:52:52 | 显示全部楼层
公司招了一个真正零基础的人来做软件(C语言基本规则都不清楚的,不过年轻),刚开始函数,变量全用 A B C,文件夹也这样命名。
强烈要求他用英语写变量/函数名,1个多月了,他还用拼音来写变量名,  像这样的  DOG_XITONGSHEZHI。--------这样的代码,老外和普通话不好的人肯定看不懂的。
给过他林锐写的编程规范参考,要他用 google translate 来查边用,说还做不到,要赶工作进度不被耽误。
还好不是我带他,希望以后也不要我接手他的代码

出0入0汤圆

发表于 2013-7-28 21:01:21 | 显示全部楼层
看看OS方面的代码。

出0入0汤圆

发表于 2014-1-20 22:48:57 | 显示全部楼层
东海傲虾 发表于 2013-7-28 14:15
我到公司报道的前几天没干别的,就是学习公司内部的代码编写规范,超级规范的,几乎每一行都要有注释,不然 ...

代码规范,可以少走很多弯路。确实

出0入0汤圆

发表于 2014-1-21 08:46:15 | 显示全部楼层
MARK        

出0入0汤圆

发表于 2014-1-21 09:13:57 | 显示全部楼层
慢慢来,你自己有意识的学习层次性编码就行了,先从简单的程序开始

出0入0汤圆

发表于 2014-1-21 14:57:36 | 显示全部楼层
熟能生巧,原子哥做单片机起家的,貌似现在开公司了。。。

出0入0汤圆

发表于 2014-1-21 16:47:12 | 显示全部楼层
mcu_mouse 发表于 2013-1-24 13:09
下面这些书你可以选择一些看,我的建议是先看《C指针编程之道》、《C语言深度解剖:解开程序员面试笔试的 ...

尼玛,这些书看完,楼主也进棺材了。

出0入0汤圆

发表于 2014-1-22 08:29:54 | 显示全部楼层
alientek 发表于 2014-1-20 22:48
代码规范,可以少走很多弯路。确实

嗯,代码规范也给日后的维护升级打下了基础。

出0入10汤圆

发表于 2014-1-22 08:47:44 | 显示全部楼层
慢慢来,多写经验自然会积累的,形成自己独特的风格

出0入0汤圆

发表于 2014-1-22 08:53:29 | 显示全部楼层
其实谁都想一个文件搞定,但是内容实在太多,个把月后自己都不知道怎么改了

出0入0汤圆

发表于 2014-1-22 08:57:01 | 显示全部楼层
可以说C语言基础知识太差么,记得以前看C语言入门书里面,到处都是积极培养这种习惯的

出0入0汤圆

发表于 2014-1-22 09:39:52 | 显示全部楼层
形成自己独特的风格

出0入0汤圆

发表于 2014-1-22 11:28:42 | 显示全部楼层
apachectl 发表于 2013-1-23 17:33
搞硬件的人一般都没有软件工程的底子,其实所谓的面向对象的容器包装之类,在单片机就可以理解为你封装不同 ...

确实!正解!

出0入0汤圆

发表于 2014-1-23 14:51:58 | 显示全部楼层
本帖最后由 tinyabao 于 2014-1-23 15:09 编辑
alientek 发表于 2014-1-20 22:48
代码规范,可以少走很多弯路。确实


原子兄,您的开发板卖得很火,教程挺详细的,代码规范上还是有些欠佳(在移植您的代码时深有体会),希望您也能在代码规范上下下功夫,毕竟这可是影响非常多人的事呀,为中国教育事业做贡献这样说也不为过。

出0入0汤圆

发表于 2014-1-23 15:06:35 | 显示全部楼层
学习了。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子论坛 -- 东莞阿莫电子网站 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2022-10-6 21:49

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表