提高新老码农生产率的6点可行性建议
【.com快译】有人认为:无论是提高新手程序员、还是新老行性编程老司机,说到底并非代码的码农创造者,而是生产程序的“搬运工”。在项目开发中,建议他们希望自己能够高效、提高且颇有成就感地交付出完美的新老行性代码,但是码农现实却往往事与愿违。本文将从一名深耕编程领域多年的生产资深码农的角度出发,和您分享六个方面的建议经验总结,希望能够帮助您最大限度地提高生产率、提高并加快产品的新老行性交付速度。
1.使用恰当的码农编程语言

俗话说:“工欲善其事,必先利其器。生产”如果您的建议团队能够为应用程序选用合适的编码语言,势必会对开发任务的高效完成产生积极的正面影响。例如:
Python能够“扎根”于科学计算,因此那些重视程序稳定性、b2b供应网以及问题解决一致性的开发人员,会时常选择Python。 Ruby非常适合网站的表达性代码,并且Ruby社区可以为同一问题提供多种解决方法。 PHP是针对快速服务器端应用的绝佳选择。它几乎可以在任何地方被部署。由于社区中拥有大量的PHP开发人员,因此它形成了一套生态系统,并能够对您手头的项目及时提供帮助。 Node.js虽然稍许复杂,但是它允许Web开发人员在服务器端使用与客户端相同的语言。如果您需要提供高度交互性的客户端体验,那么就可以选择Node.js来进行优化。不过,无论如何,请尽量不要让最新的编程时尚影响您的语言选择。最新的不一定是最适合您手头项目的语言。就我个人而言:十年前,我们会用一些JavaScript在服务器端呈现页面。云服务器提供商五年前,我们会用REST或GraphQL API进行客户端的数据渲染。而在2020年初,我们在应用程序中使用了TypeScript,来呈现服务器端数据。
2.不要自行实施身份验证

我参与过多个项目,其中有些是在应用程序中实现了自定义的身份验证,并且将加盐(salted)的密码哈希值保存到数据库中。实际上,这完全没有需要。由于我们拥有将身份验证委派给活动目录(Active Directory)的基础架构,因此用户完全可以使用与Windows登录名相同的密码。如今,我们已经拥有了Auth0及其类似产品,完全可以将身份验证委托给Auth0。据此,我们不但可以降低自行设计与实现身份验证所带来的潜在风险,而且能够为应用程序提供更好的安全性。
3.首先编写单元测试

没有测试驱动的设计,就像只知道编写代码,而不开展测试一样,您最终会发现各种无法解决的长方法、长参数列表等问题,源码库而且这些代码也会变得难以维护和改进。有时候,您需要手动去执行“git reset”,或直接转入代码重构(https://www.refactoring.com/)。

为了成功地进行单元测试,我们可以将某些功能分解为如上图所示的“红色、绿色、重构”,这样的微循环。其中:
红色 - 直接从那些失败的单元处开始编写测试,通过排除真实运行环境中的干扰因素,以便随时运行单元测试。 绿色 - 编写使该单元能够测试通过的代码。 重构 — 清理代码,重构并再次运行单元测试。如此往复循环下去,以提高代码的质量,并增强团队对于软件产品的交付信心。
4.利用SaaS、IaaS和PaaS
如今,开发人员需要将更多的时间投入到那些非代码性的任务上,其中包括:基础架构、DevOps、以及集成等方面。实际上,您完全可以通过简单的git push,这类SaaS服务与工具,来部署应用的新版本,且无需与DBA、系统管理员等抢夺内网资源。SaaS、IaaS和PaaS等服务供应商可以帮助我们打理各种有关软件项目开发的基本琐事。例如,您不需要自行配置Logstash和ElasticSearch的复制,第三方服务公司会从您的应用中检索并提取相关日志,同时在保存了90天后再删除掉,以满足GDPR(欧洲《通用数据保护条例》,https://www.ctrl.blog/entry/gdpr-web-server-logs.html)的要求。当然,您既需要花时间去找到能够提供此类服务的可靠提供商,又要充分衡量将客户的信用卡、短信、邮件等信息,存放到第三方平台所带来的安全性问题。
此外,像Heroku之类的平台即服务(PaaS)提供商,不仅能够实现应用程序的外包托管,而且可以通过各种技术栈的预配置安装,提供基础架构和平台的日常运维。据此,您可以更加专注于软件产品的交付时间。
5.使用IDE来分析代码

一些常用的、广受欢迎的IDE(集成开发环境,如:Eclipse、IntelliJ、Visual Studio、以及VS Code等),要么过于复杂,要么只能发现case块中没有最终默认子句之类的问题。我们在实际项目中使用到了linter这一套开发工具(生态系统)。它能够集成IDE或编辑器的各种内置功能,方便我们开展各种调试。其中,SonarLint不但能够支持前面提到的各种IDE,还可以提供针对程序中安全问题、细微错误、以及不规范编码的各种建议。此外,您还可以使用SonarQube来衡量代码的质量,修正IDE中的错误建议,最终交付安全且易于维护的代码。
6.快速构建

作为独立的开发人员,您可能会选择在本地的开发环境中,运行测试和部署代码,并据此得到快速的反馈。但是,当您在进行团队协作时,程序代码就可能需要在CI/CD管道中运行了。为了按时完成任务,我们往往会用到Makefile、Gradle、或其他适合编程语言与运行时环境的构建工具,以便实现数据库的迁移、打包、部署、以及分发等过程自动化,并保证代码能够顺利地运行在生产环境中。
在任何新的项目开启时,我们都需要对其进行一些基础性的探索与研究。而在开发的生命周期中,我们的重点除了编写代码,还应当兼顾实施构建,搭建IDE,配置运行环境,部署生产环境,以及顺畅地与外部进行各种调用和交互。
小结
当然,在实际开发程序的过程中,我们可能会碰到许多影响到生产率和交货时间的因素。希望上面介绍的六种提高生产率的可行性技术建议,能够对您的项目实践提供帮助,让您事半功倍。
原标题:6 Productivity Practices for New (or Old) Developers ,作者: Michael Bogan
【译稿,合作站点转载请注明原文译者和出处为.com】
相关文章
电脑报read错误的解决方法(遇到电脑报read错误如何应对,尝试这些方法解决问题)
摘要:现代社会,电脑已经成为人们生活中不可或缺的工具之一。然而,有时我们可能会遇到电脑报read错误的情况,这给我们的使用体验带来了很大的困扰。本文将为大家介绍一些解决电脑报read错误...2025-11-04
本文转载自微信公众号「Linux开发那些事儿」,作者 LinuxThings 。转载本文请联系Linux开发那些事儿公众号。平常写shell脚本的过程中,经常要用到日期的运算,比如:日期的加减、与UT2025-11-04
你用过宏##粘贴函数,然后用函数指针查找执行吗?今天就给你说道说道
总述宏的使用,大家经常会用,但是一般只是简单定义一个符号常量,类似于#define WHEEL_SCALE_MM 0.53f、#define LOG_I(tag, text_fmt, ...) log2025-11-04
GitHub十大Python项目推荐,Star最高26.4k
编写 Python 代码的乐趣应该是看到简短、简洁、易读的类,这些类用少量清晰的代码来执行大量的操作,而不是那些让读者厌烦的大量琐碎代码。在相当长的一段时间内,世界各地的开发人员在他们的大多数项目中都2025-11-04Asus装机教程(亲手打造属于自己的高性能电脑,一步步学习Asus装机技巧!)
摘要:在科技发展迅猛的今天,电脑已经成为人们日常生活不可或缺的一部分。而如果你想要拥有一台性能卓越、稳定可靠的电脑,那么自己动手组装一台Asus电脑将是一个绝佳选择。本文将为大家提供一份...2025-11-04
阿里妹导读:IaaS上云和PaaS上云有什么区别?如何借助云原生技术来提升交付的速度?云原生时代背景下,研发的关注点又会有哪些转变?阿里云高级技术专家许晓斌通过本文分享从IaaS上云时代到PaaS上云2025-11-04

最新评论