当前位置:首页 > 科技  > 软件

嵌入式系统, 如何一次把事情做对?

来源: 责编: 时间:2024-02-29 14:41:48 121观看
导读作者 | 梅雪松不知道你有没有注意到,走进各个企业,总能看到那么几句振奋人心的标语,其中“一次把事情做对”绝对是个高频词汇。以前每次看到,我都会想:这家企业也太教条了,都什么时代了,对失败这么零容忍,还怎么创新呢?这个时

作者 | 梅雪松7pe28资讯网——每日最新资讯28at.com

不知道你有没有注意到,走进各个企业,总能看到那么几句振奋人心的标语,其中“一次把事情做对”绝对是个高频词汇。以前每次看到,我都会想:这家企业也太教条了,都什么时代了,对失败这么零容忍,还怎么创新呢?这个时代的主旋律不是从错误中学习,快速响应、快速迭代吗?7pe28资讯网——每日最新资讯28at.com

然而最近一年的嵌入式领域经历,让我重新反思并意识到,“一次把事情做对”不仅是对工作效率的追求,更是对质量控制的严格要求。在嵌入式产品开发领域,这一理念的重要性尤为突出。7pe28资讯网——每日最新资讯28at.com

7pe28资讯网——每日最新资讯28at.com

与Web系统相比,嵌入式产品有其独特性。它是软硬件的紧密结合体,不易升级,一旦发布,出问题的解决成本异常高昂,后果更为严重。所以“一次把事情做对”就是一个合理且必要的目标了。7pe28资讯网——每日最新资讯28at.com

但是怎么做到一次把事情做对呢?我们从四个原则来聊聊。7pe28资讯网——每日最新资讯28at.com

不做就不错

7pe28资讯网——每日最新资讯28at.com

在生活中,我们常说“不做就不错”。在工作中,我也要把这个原则送给你,它仍然是真理。说白了就是:没代码,无bug。7pe28资讯网——每日最新资讯28at.com

我不是说让大家不干活,而是在没搞清楚需求之前,千万别急着动手。你想想,画画草图、写写文档总比直接写代码来得轻松吧?而且成本也低多了。如果错了大不了重画重写,可是写成了代码,那就叫 bug。7pe28资讯网——每日最新资讯28at.com

你要学会拒绝需求。需求来了,你得想想这需求有价值吗?合理吗?如果对方说不清楚价值,给不出理由,那就应该拒绝。告诉他不要浪费你的时间和公司的金钱。7pe28资讯网——每日最新资讯28at.com

你得要求明确的需求。当业务方提出需求时,BA(需求分析师)就要分析清楚这个需求的细节,一句话的需求太模糊,没法干,开发者也要拒绝。这是你的权利。一旦你干了,出了 bug 那就是你的错。7pe28资讯网——每日最新资讯28at.com

但你可能要问了,有些需求在初期就是模糊的,只能在做的过程中慢慢摸索,那怎么办呢?7pe28资讯网——每日最新资讯28at.com

记住,不做就不错,不写代码就没 bug!你扪心自问,需求是模糊的,可代码能模糊吗?计算机只能分清0和1,根本就不会模糊处理。所以即使需求是模糊的,我们却无法写出模糊的代码。如果在这种情况下写出了代码,必然是把模糊的东西变成了确定的东西,那大概率就写了个bug。7pe28资讯网——每日最新资讯28at.com

正确的做法是,需求必须明确,不能模糊。如果在产品初期,摸索阶段,那么BA应该提出假设,进行验证。提出假设后,需求就是明确的。我们假设是这种情况,代码就这么开发,先验证,不断迭代就能逐渐找到更好的答案。7pe28资讯网——每日最新资讯28at.com

这种通过假设来明确需求的方法叫试错,你拿着模糊需求写成不模糊的代码,那叫 bug,这两者的区别自己体会一下。7pe28资讯网——每日最新资讯28at.com

少做就少错

7pe28资讯网——每日最新资讯28at.com

现在我们把能拒绝的工作拒绝了,把模糊的需求明确了,剩下的就是不得不做的了。接下来的第二个原则是,少做就少错。7pe28资讯网——每日最新资讯28at.com

怎么做到呢?千万别急着动手写代码,否则你很可能要走不少弯路才能做对。这里提供一个三步法,让你少走弯路、少写代码,少出错。7pe28资讯网——每日最新资讯28at.com

  • 第一步,脑中做一遍。先在脑海中预演整个实现过程,这类似于一种虚拟的模拟运行。要想清楚每一步的输入输出是什么,处理过程是什么。这一步很重要,它能确保你真正理解了需求,并提前发现潜在的问题和难点。
  • 第二步,纸上画一遍。把脑中预演的过程在纸上画个草图。这个过程不仅有助于整理思路,还有助于和别人沟通讨论。记住,一定要画出来。有时候你以为你想清楚了,画出来才发现没想清楚。
  • 第三步,找人问一遍。经过前两步,你对需求理解透了,实现方案也想清楚了。这时候要找人问一遍。这个人最好是个有经验的人。他能对你的方案提出建议,也能发现你没注意到的、可能对原来的功能有影响的地方。即使对方没有经验,也要找人问一遍。因为在讲的过程中,自己就能发现一些问题。

经过这样三步的准备和验证之后,就可以信心满满地开始编写代码了。这时在面对复杂问题时会从容不迫,出错的概率也大大降低。7pe28资讯网——每日最新资讯28at.com

让机器多干活

7pe28资讯网——每日最新资讯28at.com

前面铺垫那么多,你可能都觉得那不是好好工作,只有写代码才是真正工作。其实你写的代码是非常宝贵的东西。产品的价值都是靠你一行行代码实现的。前面的铺垫就是为了让你能真正写好代码。7pe28资讯网——每日最新资讯28at.com

现在你终于开心地写着代码了。这时要思考的是自己怎么少干活,怎么让机器多干活。毕竟,不做就不错,少做就少错。7pe28资讯网——每日最新资讯28at.com

这里我们暂且不提让AI来帮你写代码。想想在开发过程中,哪些工作是可以交给机器来做的呢?7pe28资讯网——每日最新资讯28at.com

开发的工作可以分为三大块:看代码、写代码、调试验证。7pe28资讯网——每日最新资讯28at.com

验证对你来说既无聊又耗时间。你打着断点,看着变量是不是你想要的值,逻辑跳转对不对。这样的工作不停地重复着,有时候一抬头发现周围人都走光了,一天很快就过去而你还没定位到问题。7pe28资讯网——每日最新资讯28at.com

验证这部分是最容易交给机器来做的。完全可以写个验证代码(测试代码)来验证程序的输出对不对,是不是想要的结果。这是个一劳永逸的方法。验证代码只要写一遍,它就在那里,孜孜不倦一遍遍运行着。你完全可以放心交给它帮你完成验证的工作。再进一步,甚至可以先写验证代码,再写业务代码,这就是极限编程中的测试驱动开发(TDD)。7pe28资讯网——每日最新资讯28at.com

机器还可以帮你干其它活,那些重复的活都可以让它干。所以这第三个原则“让机器多干活”还有另一个名字:自动化一切能够自动化的工作。7pe28资讯网——每日最新资讯28at.com

比如你的软件的构建,部署,一切能够自动化的工作,都应该交给机器来做。因为人都是会犯错误的。7pe28资讯网——每日最新资讯28at.com

早纠错、少浪费

7pe28资讯网——每日最新资讯28at.com

前面三个原则讲的都是尽量地少干活,但只要干了活,就可能出错。所以最后这个原则是“早纠错、少浪费”,怎么尽早地发现错误,减少浪费。7pe28资讯网——每日最新资讯28at.com

对于产品研发来说,最大的浪费是返工。因为功能做得不对返工,因为质量问题返工,这些都会造成品牌受损,成本增加。7pe28资讯网——每日最新资讯28at.com

问题发现得越晚,成本越高。所以我们要通过一切手段尽早纠错。极限编程提供了一个很好的参考机制:7pe28资讯网——每日最新资讯28at.com

  • 分钟、小时级别的反馈:通过结对编程、自动化测试、流水线完成
  • 天级别的反馈:每日站会、每个需求的验收测试
  • 周级别的反馈:每个迭代的showcase
  • 月级别的反馈:版本发布后的反馈

7pe28资讯网——每日最新资讯28at.com

(图片来自网络)7pe28资讯网——每日最新资讯28at.com

如果我们能建立极限编程这样的从分钟到月级别的多维度反馈机制,就能够在早期阶段及时察觉问题、纠正错误,从而显著提高工作质量并减少不必要的浪费。7pe28资讯网——每日最新资讯28at.com

总结

7pe28资讯网——每日最新资讯28at.com

质量就是生命线!7pe28资讯网——每日最新资讯28at.com

基于嵌入式产品由于其自身特点,“一次把事情做对”是每个研发人员的追求。通过文中介绍的四个原则和相应的实践,建立多维度的反馈机制,你就能够最大化实现质量的提升和资源的充分利用。7pe28资讯网——每日最新资讯28at.com

本文链接://www.dmpip.com//www.dmpip.com/showinfo-26-75327-0.html嵌入式系统, 如何一次把事情做对?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: 系统设计面试问题:如何设计 Spotify,一个音乐流媒体系统

下一篇: 函数式编程艺术:深入Python修饰器的世界

标签:
  • 热门焦点
  • 让我们一起聊聊文件的操作

    让我们一起聊聊文件的操作

    文件【1】文件是什么?文件是保存数据的地方,是数据源的一种,比如大家经常使用的word文档、txt文件、excel文件、jpg文件...都是文件。文件最主要的作用就是保存数据,它既可以保
  • 只需五步,使用start.spring.io快速入门Spring编程

    只需五步,使用start.spring.io快速入门Spring编程

    步骤1打开https://start.spring.io/,按照屏幕截图中的内容创建项目,添加 Spring Web 依赖项,并单击“生成”按钮下载 .zip 文件,为下一步做准备。请在进入步骤2之前进行解压。图
  • JVM优化:实战OutOfMemoryError异常

    JVM优化:实战OutOfMemoryError异常

    一、Java堆溢出堆内存中主要存放对象、数组等,只要不断地创建这些对象,并且保证 GC Roots 到对象之间有可达路径来避免垃 圾收集回收机制清除这些对象,当这些对象所占空间超过
  • 当家的盒马,加速谋生

    当家的盒马,加速谋生

    来源 | 价值星球Planet作者 | 归去来自己“当家”的盒马,开始加速谋生了。据盒马官微消息,盒马计划今年开放生鲜供应链,将其生鲜商品送往食堂。目前,盒马在上海已经与
  • 重估百度丨大模型,能撑起百度的“今天”吗?

    重估百度丨大模型,能撑起百度的“今天”吗?

    自象限原创 作者|程心 罗辑2023年之前,对于自己的“今天”,百度也很迷茫。“新业务到 2022 年底还是 0,希望 2023 年出来一个 1。”这是2022年底,李彦宏
  • 2纳米决战2025

    2纳米决战2025

    集微网报道 从三强争霸到四雄逐鹿,2nm的厮杀声已然隐约传来。无论是老牌劲旅台积电、三星,还是誓言重回先进制程领先地位的英特尔,甚至初成立不久的新
  • iQOO Neo8系列今日官宣:首发天玑9200+ 全球安卓最强芯!

    iQOO Neo8系列今日官宣:首发天玑9200+ 全球安卓最强芯!

    在昨日举行的的联发科新一代旗舰芯片天玑9200+的发布会上,iQOO官方也正式宣布,全新的iQOO Neo8系列新品将全球首发搭载这款当前性能最强大的移动平台
  • DRAM存储器10月价格下跌,NAND闪存本月价格与上月持平

    DRAM存储器10月价格下跌,NAND闪存本月价格与上月持平

    10月30日,据韩国媒体消息,自今年年初以来一直在上涨的 DRAM 存储器的交易价格仅在本月就下跌了近 10%,此次是全年首次降价,而NAND 闪存本月价格与上月持平。市
  • 苹果MacBook Pro 2021测试:仍不支持平滑滚动

    苹果MacBook Pro 2021测试:仍不支持平滑滚动

    据10月30日9to5 Mac 消息报道,苹果新的 14 英寸和 16 英寸 MacBook Pro 2021 上市后获得了不错的评价,亮点包括行业领先的性能,令人印象深刻的电池续航,精美丰
Top
Baidu
map