工程师常用的6种最佳实践

这篇具有很好参考价值的文章主要介绍了工程师常用的6种最佳实践。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、约定大于配置

泰思勒定律也被称为复杂度守恒定律。该定律指出每一个过程都有其固有的复杂性,存在一个临界点,超过了这个点过程就不能再简化了,你只能将固有的复杂性从一个地方移动到另外一个地方。

根据这个定律,在做系统设计时,默认会给用户一个“套餐”,这个套餐会满足多数人的需求。实在不满足需求再特殊配置。比如:springboot、JVM的默认值。

工程师常用的6种最佳实践

 

二、随时保存

在如火如荼的编辑文档时,电脑突然死机只能重启,重启后发现自己丢失了两个小时的辛苦工作。这种痛苦不是一杯暖心奶茶可以消解的。所以目前市面比较新的一些编辑器比如intelij都有默认自动保存的功能。但一些经典软件,比如office还是需要手动保存,建议喘口气的时间随手就按下保存快捷键。

工程师常用的6种最佳实践

 

三、任务分解,持续交付

错误越早发现越容易解决。不知道大家有没有这样的经历:好容易写出一个完整的功能模块,好多代码。提交之后找同事评审,同事评审出一堆代码风格问题。你找他评论未果,同事坚决的说你不改不给合入。硬着头皮改了,因为思路不连贯,改出一些bug。气不气。

但是如果做好任务分解,任务分解的足够小。做好一点就提交进行评审,事情就变得很简单。对于review你代码的同事来说。需要评审的代码越少,他能更容易的帮你发现问题,review效果越好。

工程师常用的6种最佳实践

 

四、免过早优化

只有在问题和解决方案都出现在你面前时才进行重构—过早重构是时间上的巨大浪费。不要投入半年后可能被扔掉的任何东西的完善上。过早优化是罪恶之源。

当然上面这种说话可能触动不了大家的心弦,这么说吧:如果没有很明确的需求,优化了也没有业绩,大家也不知道你做了,那为什么要费这个力气呢。

工程师常用的6种最佳实践

 

五、可读性大于没有需求的性能优化

你的代码只写一次,可别人会读它千万遍。你的代码会有未来的观众。代码也是一种书写形式的沟通。所以如果一个性能优化效果不是很明显或者对性能没有很强的需求。为了性能牺牲可读性是不可取的。

工程师常用的6种最佳实践

 

六、打印必要的日志

日志用做数据统计、系统监控和问题排查手段,虽然重要性不言而喻。但是因为通常在需求里没有明确提出,所以很多人可能在真正开发的时候会忽略一些重要日志的打印。那系统的哪些运行信息,需要进行日志记录?

1、功能模块的启动和结束(完整的系统由多个功能模块组成,每个模块负责不同的功能,因此需要对模块的启动和结束进行监控。是否在需要的时机正常加载该模块?又是否在退出结束的时候正常完成结束操作,正常退出?)

2、用户的登录和退出(哪位用户在什么时间通过什么IP登录或退出了系统)

3、系统的关键性操作(数据库链接信息、网络通信的成功与失败等)

4、系统运行期间的异常信息(NPE、OOM以及其他的超时、转换异常等)

5、关键性方法的进入和退出(一些重要业务处理的方法,在进入和结束的时候需要有日志信息进行输出)

工程师常用的6种最佳实践

 

编程一生

因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。

 

想知道自己错过了哪些更新,可参考我不定期更新的《系列文章分类汇总》。文章来源地址https://www.toymoban.com/news/detail-492273.html

到了这里,关于工程师常用的6种最佳实践的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 开发工程师常用的ChatGPT通用提示词模板

    编程语言掌握:如何熟练掌握至少一门编程语言,如Java、Python、C++等? 开发工具使用:如何熟练使用常用的开发工具,如IDE、版本控制工具、调试工具等? 数据库操作:如何进行数据库设计和操作,包括数据模型设计、SQL语句编写等? 系统架构理解:如何理解系统架构,包

    2024年02月01日
    浏览(38)
  • 【网络工程师人手必备的常用网络命令合集,整理收藏!】

    在计算机网络中经常要对网络进行管理,测试,这时就要用到网络命令。今天就为大家整理了一些网络工程师必备的一些常用网络命令合集,建议收藏后观看哦! ping是个使用频率极高的实用程序,主要用于确定网络的连通性。这对确定网络是否正确连接,以及网络连接的状

    2024年02月05日
    浏览(46)
  • 软件测试开发工程师常用的测试工具详解

    1. 操作系统: Linux: vmware: 用于虚拟化环境,创建和管理虚拟机。 xshell、xftp、ssh: 提供对Linux服务器的远程访问和文件传输。 2. 数据库: MySQL: SQLyog、Navicat: 前端连接工具,简化MySQL数据库的管理和操作。 Oracle: PLSQL Developer、Navicat: 前端连接工具,用于Oracle数据库的开发和

    2024年02月02日
    浏览(69)
  • 实践是成为网工最快的方法,网络工程师实战项目整理

    静态IP分配的主机地址请自行配置 实验目标: 1、为AR1的G0/0/0接口配置ip地址,地址为192.168.1.1,掩码为255.255.255.0 2、AR1开启DHCP服务,并且在G0/0/0接口开启DHCP功能,地址池选择接口模式 3、将两台PC配置为自动获取IP地址,然后通过ping命令测试二者连通性 AR1 : dhcp enable interf

    2024年02月09日
    浏览(49)
  • 硬件工程师需要掌握的PCB设计常用知识点

          一个优秀的硬件工程师设计的产品一定是既满足设计需求又满足生产工艺的,某个方面有瑕疵都不能算是一次完美的产品设计。规范产品的电路设计,工艺设计,PCB设计的相关工艺参数,使得生产出来的实物产品满足可生产性、可测试性、可维修性等的技术规范要求,

    2023年04月20日
    浏览(53)
  • 测试工程师常用的10个python库,面试必备哦

    目录 前言 1、os库 2、sys库 3、time库 4、selenium库 5、unittest库 6、pytest库 7、email库 8、appium库 9、pymsql库 10、requests库 总结: 今天给各位小伙伴带来的是测试工程师常用的10个python库,相信有些小伙伴肯定知道一些库,也使用过一些库。下面我们就来聊聊这常用的10个python库,我

    2024年02月08日
    浏览(44)
  • 网络安全工程师常用的威胁情报分析平台有哪些?

    在进行渗透过程中,也可以借助一些商用或者非商业平台来进行信息搜索及验证,主要针对邮箱、IP、域名、文件md5、apk文件等进行搜索,整理和完善线索信息。文章对目前公开的威胁情报平台进行了搜集,在实际使用过程中建议交叉搜索,以获得更多的信息。这些平台都需

    2024年02月13日
    浏览(48)
  • 硬件系统工程师宝典(36)-----盘点常用的总线和常见的逻辑电平

    各位同学大家好,欢迎继续做客电子工程学习圈,今天我们继续来讲这本书,硬件系统工程师宝典。 上篇我们了解了SDRAM的存储技术以及SDRAM的发展历程,技术的进步推动着产品的升级,也加速了整个电子行业的发展。今天我们来讲一讲一些常用的总线及逻辑电平。 I2C总线是

    2024年02月13日
    浏览(35)
  • 硬件系统工程师宝典(14)-----建议收藏!常用的多层板叠层结构“大揭秘”

    各位同学大家好,欢迎继续做客电子工程学习圈,今天我们继续来讲这本书,硬件系统工程师宝典。上篇我们说到PCB的布局可根据功能、频率、信号类型划分,布局时考虑敏感信号远离噪声源。今天我们来看看多层板的常用叠层结构。 四层板的叠层结构包含1个电源平面、1个

    2023年04月25日
    浏览(42)
  • 一本书讲透ChatGPT——理论与实践的完美结合,大模型技术工程师的必备指南

    OpenAI 在 2022 年 11 月推出了人工智能聊天应用—ChatGPT。它具有广泛的应用场景,在多项专业和学术基准测试中表现出的智力水平,不仅接近甚至有时超越了人类的平均水平。这使得 ChatGPT 在推出之初就受到广大用户的欢迎,被科技界誉为人工智能领域的新里程碑。 人们在为生

    2024年03月13日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包