0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么代码能看懂却不会写?

工程师 来源:玩转嵌入式 作者:玩转嵌入式 2020-10-19 17:43 次阅读

程序代码是主观性很强的东西,同样的一个功能,每一个程序员所写出来的代码都不一样,所以那句名言“一千个读者就有一千个哈姆雷特”在代码上同样使用。同时,代码又是只可意会却很难言传的东西。硬件原理,看的多了即使外行人也能指点一下,但是代码只有编写的人才清楚。这也使得很多人认为代码很神秘。

1 代码要多看、多练

在学习编程语言的时候,我们都会有这样的经历:老师在讲每行代码的时候,我们都能听懂,但是要自己写的时候,却一条语句可能都写不出来。所以,代码除了要多看,还要多写。在练习写代码的时候,从最简单的功能开始,要搞懂每一条语句的含义,充分理解编程的思想,搞清楚每一个常用函数的使用方法。其实编程者就是一名经理,每一个函数就是一个工程师,经理就是要发挥每一个工程师的优点去实现一个项目。这就要,经理多和每个工程师谈话,熟悉每个工程师的做事方法、优点以及确定。用好每一个人。

2 编程之前要做好流程框图

拿到一个任务后,千万不要立即开始敲代码,而是要规划一下编程思想和流程,先把程序的流程图画下来。前文说过,实现一个功能的代码方法有很多,最重要的是编程思想,一定要先把自己的编程思想、程序构架梳理好后之后再去填充代码。否则,自己会陷在自己的逻辑里出不来。

3 优化代码、提高执行效率

同样的功能,有的人需要一百行代码,有的人需要七八十行代码,而有的人可能只需要四五十行。有的代码执行效率很高,而有的代码执行效率却很低。功能实现了并不代表任务就结束了,接下来要做的工作就是优化代码,包括优化代码结构、优化变量、减少全局变量等,同时通过测试来验证代码的逻辑防止出现BUG。

编程是一定要动手的,别人讲千百遍也比不上自己的一次动手,代码能看懂却写不出来就是因为动手少,不知道从何下手。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 程序
    +关注

    关注

    116

    文章

    3775

    浏览量

    80838
  • 代码
    +关注

    关注

    30

    文章

    4742

    浏览量

    68337
收藏 人收藏

    评论

    相关推荐

    运行tas5086gui软件后要实现低音要加载cfg文件吗?

    请问运行tas5086gui软件后要实现低音 要加载cfg文件吗?能告诉我步骤吗 ?pdf文件不怎么能看懂。谢谢了!!
    发表于 11-06 06:43

    使用CH32V103C8TC设置中断优先级分组时,编译报错的原因?

    使用CH32V103C8TC设置中断优先级分组时,设置为NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);编译报错 而使用NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1); 却不会报错 这是什么原因呢??
    发表于 09-27 06:03

    CH32V103 使用中断优先级分组0时报错

    使用CH32V103C8TC设置中断优先级分组时,设置为NVIC_PriorityGroupConfig(NVIC_PriorityGroup_0);而使用NVIC_PriorityGroupConfig(NVIC_PriorityGroup_1);却不会报错
    发表于 09-23 13:52

    ESP32-WROOM-32上电后不会运行的原因?

    最近我们在调试ESP32-WROOM-32板子是发现一个问题。代码是完整下载到芯片里并且是可以运行的。但是,但板子上电后,ESP32芯片却不会运行,只有必须在按下reset键后才运行。这是很奇怪的现象。有什么人可以帮助我吗?
    发表于 06-05 08:05

    请问Arduino Due是如何进入串口中断的呢?

    reporting outside ISR _pUsart->US_CR |= US_CR_RSTSTA; } } 这个代码到时不难,能看懂,但是不知道这个中断是如何进入的。 希望了解的能够给点提示。
    发表于 05-17 07:16

    硬件工程师只要会照着芯片规格书画外围电路就够了吗?高级硬件工程师多了这项技能

    我们要关注的是芯片内部的电路拓扑,要想达到高级硬件工程师也必须能看懂芯片内部的电路拓扑,在规格书中也叫做BLOCK DIAGRAM。 今天就介绍两种稳压IC的内部电路拓扑。
    的头像 发表于 05-11 08:46 1587次阅读
    硬件工程师只要会照着芯片规格书画外围电路就够了吗?高级硬件工程师多了这项技能

    触碰复位管脚的上拉电阻会引起复位,为什么?

    我发现一个很奇怪的现象,每当我用万用表的其中一个表笔去触碰复位管脚10K的上拉电阻,触碰端在5V的电源端那边,单片机就复位。而靠近管脚端却不会。不知这种现象正不正常。
    发表于 05-08 06:47

    CubeAI-7.0.0生成的C语言代码,神经网络运行函数是哪个,输入输出分别是哪个变量啊?

    CubeAI-7.0.0生成的C语言代码,神经网络运行函数是哪个,输入输出分别是哪个变量啊?求教大佬,之前5.1.2还能看懂,现在7.0.0看不懂了。
    发表于 04-01 07:30

    微软4月1日推出生成式AI安全产品“Securit Copilot”

    脚本反编程:自动解码恶意软件,实现无须手工逆向工程,让每位分析师都能看懂入侵者的操作;分析复杂命令行脚本,实现自然语言解释,找到相关实体并关联;
    的头像 发表于 03-14 10:28 465次阅读

    空指针区域写入数据会hardfault,为什么测试时读取却不会hardfault?

    空指针区域写入数据会hardfault,这个大家都知道, 但是测试时发现读取时却不会,这是为什么?有人知道吗?
    发表于 03-14 08:20

    程序中的R地址都是什么意思?怎么样才能看懂

    程序中的R地址都是什么意思?怎么样才能看懂? 在程序中,R地址通常指的是寄存器地址,它是用来存储和访问计算机中的数据的硬件部件。寄存器是计算机中最快的内存形式,它位于中央处理器(CPU)内部或与
    的头像 发表于 02-18 10:49 1037次阅读

    变压器输出端不接负载会短路,为啥输入端直接接电压却不会短路?

    变压器输出端不接负载会短路,为啥输入端直接接电压却不会短路? 变压器输出端不接负载会短路,而输入端直接接电压却不会短路的原因是因为变压器的工作原理与电路的构成不同。要理解这个问题,我们需要深入
    的头像 发表于 01-15 11:23 3370次阅读

    图解大模型RLHF系列之:人人都能看懂的PPO原理与源码解读

    回想一下我们对NLP任务做强化学习(RLHF)的目的:我们希望给模型一个prompt,让模型能生成符合人类喜好的response。再回想一下gpt模型做推理的过程:每个时刻只产生一个token,即token是一个一个蹦出来的,先有上一个token,再有下一个token。
    的头像 发表于 01-14 11:19 2412次阅读
    图解大模型RLHF系列之:人人都<b class='flag-5'>能看懂</b>的PPO原理与源码解读

    九齐单片机NY8A053E求助:我PB0-PB7对应数码A-H段,字形码查表赋值小程序不会写

    九齐单片机NY8A053E求助:我PB0-PB7对应数码A-H段,字形码查表赋值小程序不会写,我是用汇编的,有大神用过这个吗,请指点迷经!
    发表于 12-25 09:51

    一文看懂BLE Mesh

    一文看懂BLE Mesh
    的头像 发表于 12-06 16:24 1421次阅读
    一文<b class='flag-5'>看懂</b>BLE Mesh