Re: [请益] 我是否该转行了...?

楼主: su27 (su27)   2014-02-22 18:04:48
你就算变量全写成global也不会怎么样 顶多ram占空间
可是现在的电脑 MCU其实都够使用了
你要担心的是怎么把编译完的code变短才是重要的
c=a>b?a:b;
if(a>b) c=a;
else c=b;
有人竟然回我上面的code比较短
我问为什么 他回我 写得比较少行 编译起来一定比较短
function内传指标跟传阵列 也有人跟我讲传指标比较短 传阵列比较多XXX
我是不知道正确答案 可是如果我用组合语言去写 我想不出来会不一样
变量那种完全不重要的写成ABC又如何 随用即丢何必命名
别人去接还以为这是重要的东西
到时去记一堆根本不没用的变量名称干麻
我都把重要的写成global
其它的abc ijk temp 就行了
我写的code没注解 我北京的同事全看的懂 还知道怎么改
第一 我变量少 第二程式架构压到1xxx行写完 一堆还是设定
真正重要不到几百行
我也被北京的同事向其他的同事称赞我程式的逻辑很好
我大学 我教授当天讲完他的想法 我也马上隔天把东西写完
我教授也对其他的人讲 SU27程式逻辑能力很强
我们公司以前的产品是服务器得电源供硬器 MCU PIC24 DSPIC33
脚位全用光 code也挤到满 这样的产品应该不算低阶的 产品一个月都几k几十k再出
基本上我想法跟我前主管一样 也是认为那code不要出问题 就没事
我为什么说我指标只学几天就会了
那是因为我之前就有学过 只是没全部都学 只用简单的
在加上我有学组合语言
并且用组合语言写服务器的电源供应器
所以我看指标根本就很容易
在来我当初用组语写公司之前的产品 我把code丢给北京的同事看
我讲 妳哪里写太差了 我怎么怎么写的
她最后也回我 你的code也经过测试吗
我本来用c写服务器的电源供硬器产品
我把所有的程式用"我认为最好的架构"+"全部都是指标"
去写 因为我当了四年的韧体测试 所以我敢保证之前没办法解的问题
在我的架构下不会发生
程式也超级短 以c来看 最少省了1/2行 而且rom的空间还没之前人写的1/2
可是组语恐怕不是
你懂组语的xx索引 就应该懂 我讲的
在是在中期
可是到了快完成时
我把black box存五个错误讯息在flash的功能 用struct设计 全丢进指标阵列
我真正用到那功能只写了三行
编译完后我傻眼了 竟然比主管写的code还大
我bootloader还没写 竟然一个black box会爆表
我之后只好"光明正大"看他的code去学人家的方法
人家把code传给我要我以后接他的code 我可不是像有些人 没问直接偷copy
再来就是vb 我用了指标的观念跑去写vb的物件导向 写得很开心
结果跑去写C#却没办法编译 
贴在MSDN上求解答
最后那的MVP们回我 VB超级强大 不需要资料型态 他自己能帮你转换
这样对物件导向会学不好
我看到这一段 突然想到我当初在用c写韧体
常出现编译过不去就是因为资料型态
在c#也是差不多
这社会本来就是成败论英雄 
你做不出来解不出来 把C所有的方法功能全用上又如何 
看到问题不知道问题在哪有用吗
我一个同事
接别人的code到处讲那他写的
我另一个同事还很不服气的讲 那我写的 我交给他
跑去接北京的code 看不懂 结果讲写的code有多烂
他自己的写得多好 别人看得懂
结果北京团队 我跟他们做了四年多 案子越接越多 我们还获得客户的好评第一名
我们的客户是HP & DELL
结果东西一交给他 我直接预言 案子一定死
因为不只我这样想 我其他主管也是 他们也直接跟我讲 他接的案子没一个活的
我是之前在帮他测 我跟他讲正确的方法 怎么去解 竟然回我北京是北京
台北是台北
果然我离开当天案子挂一个 还是量最大的
我想讲的是 你要自我感觉良好 你也要拿得出表现
不是没一个案子活的 还可以去批评别人写的多烂 别人看不懂
那我只能讲 那是因为智商有问题
※ 引述《ms6163 ()》之铭言:
: 这是真的 pointer太难 全部都用array
: 参数要传到function太麻烦 太难 全部写成global..
: 如果时间多一点的话... 程式散布在不同的档案跟function..
: 应该要简化 全部写在main就行了 以后的人也不用在那里找来找去
: 参数一定是在global 程式码保证会在同一个function里面找到
: 你老板一下会很高兴 马上升你官
: ※ 引述《su27 (su27)》之铭言:
: : 没那么严重
: : 我念大学时 我去电机系上c语言
: : 那老师讲 指标太难 跳过 叫我们用阵列就好 XD
: : 我讲的是真的 我大学毕业只会一点点 之后上班时 买本看的懂的书
: : 学几天就会了
: : 我说实在的 不会指标 程式就一定不能动吗
: : 我也看过有人用C去写.net不用物件的方式
: : 只是code变的很大 程式还是能跑
: : 我前主管讲过 就算那code写的在怎么烂
: : 只要经过一堆人测试没问题 他就是ok的
: : 所以你做看看就知道 那么东西只是观念
: : 很容易就能学会了
作者: prpure (风速)   2014-02-22 18:29:00
传指标是真的有个变量在存位址资料,所以可以改指向位址传阵列的话,在complier时就固定位址了两者用assembly实作应该还是有点差,不知我讲的对不对XD
作者: dakkk (我是牛我反刍)   2014-02-22 18:34:00
我觉得 global的要用有义意的 其它每一个演算用一个func不重要的_tmp 可读性就很不错
作者: dakkk (我是牛我反刍)   2014-02-22 18:40:00
不过我可以回答你第一个问题
作者: dakkk (我是牛我反刍)   2014-02-22 18:41:00
如果写成c=? a:b 会compile 成c=[a_addr:b_addr]
作者: dakkk (我是牛我反刍)   2014-02-22 18:42:00
取前半或后半如果是if else 判断完后 C jmp a_addr 或jmp b_addr
作者: dakkk (我是牛我反刍)   2014-02-22 18:43:00
理论上来说 一次先抓进两个addr的值 最短
作者: dakkk (我是牛我反刍)   2014-02-22 18:44:00
以上是猜测
作者: tonybin (Courage)   2014-02-22 19:08:00
在台湾你大概很难红(指)
作者: lngagg (lngagg)   2014-02-22 19:32:00
楼上 在台湾你应该薪水很低(指)
作者: bleed1979 (十三)   2014-02-22 19:53:00
上一篇原po不是在讲反话吗?
作者: cafopupu (李俊畿㊣大帅哥㊣ ®™)   2014-02-23 01:40:00
google naming rule ... i j k 很不好,真的不好
作者: cafopupu (李俊畿㊣大帅哥㊣ ®™)   2014-02-23 01:44:00
你的CPU是8051还是arm 9? C去写怎么会这么惨???
作者: tac0wu (在BBS中流浪)   2014-02-24 00:01:00
这篇是什么鬼阿 难不成嵌入式系统都这样搞
作者: wayne3058 (不孝者)   2014-02-24 06:22:00
难怪有人都觉得软工的课程是多余

Links booklink

Contact Us: admin [ a t ] ucptt.com