本文来自 Totango 的联合创始人兼 CEO 盖伊·尼尔帕兹(Guy Nirpaz),他在本文中列出了优秀的开发者和差的(或还需努力的)开发者之间的区别。
如果你认为使用“优秀”和“差”来区分开发者不妥的话,也可以将这些看作是初级开发者和资深开发者之间的区别。但无论如何,多看看其他的优秀开发者(或资深开发者)是如何做的,对于自身技能、工作方式的提升有很大的帮助。
文章内容如下:
优秀的开发者是一个艺术家,一个享受创作过程的工匠。差的开发者只将自己当作负责产生代码的码农。
优秀的开发者了解客户的问题。差的开发者只了解手头的技术问题。优秀的开发者会不断努力去理解“为什么”,然后去实现,同时能够把握大局。差的开发者专注于构建类、方法和配置文件,而不理会大局。
优秀的开发者了解产品的完整架构。差的开发者只知道他写的组件。优秀的开发人员充分理解在产品中使用的技术,了解它们的用途,以及它们在内部如何工作。
优秀的开发者不害怕新技术,并能够很快掌握。差的开发者只坚持他目前掌握的技术,对于任何技术变化持否定态度。
优秀的开发者通过不断学习来提高自己的技能,他们经常阅读技术文章和书籍。差的开发者没有时间来学习,他们总是太忙了,以致于不能干其他事情。
优秀的开发者关心产品的质量,同时也非常关注过程质量,他们努力创造无缺陷的代码。差的开发者将 bug 留给 QA 去发现,然后再修复。
优秀的开发者为客户开发能够创造价值的功能,差的开发者只是想完成任务。优秀的开发者不会声称需求描述是不完整的,并确保充分理解这些特性。差的开发者会等到需求细节完善后才开始工作。优秀的开发者总是确保拥有产品功能的相关信息,一旦信息丢失,他会想办法再得到它。
优秀的开发者不害怕在产品中加入其他人的代码,而差的开发者会担心别人使用他的代码。优秀的开发者认为不应该花费过多的时间来写不言自明 (self-explanatory)和显而易见(well-documented)的代码。差的开发者总是需要分配额外的时间来记录和简化代码。
优秀的开发者永远不会觉得自己的代码已经足够好,相反会持续不断地整理和修复。他们始终致力于创造优雅的解决方案,认为他的工作是向客户提供价值。差的开发者只考虑自己代码是否优雅,将创造价值的工作留给别人。
原文:Good Developer, Bad Developer
分享到:
相关推荐
IOS开发者账号区别IOS开发者账号区别IOS开发者账号区别
这不仅提高了调试效率,也使得开发者能够更好地模拟真实环境下的小程序运行情况,从而打造出更优秀的微信小程序产品。所以,下次遇到类似需求时,不妨尝试一下这种方法,相信它会成为你开发过程中的得力助手。
华为开发者学堂试题答案.zip,HarmonyOS NEXT 开发者预览版 Beta 招募开启,一个实名账号具有 5 次机会,通过要求为 100 分(即满分)。 IT之家注: HarmonyOS NEXT 开发者预览版是在正式版本发布前,为更全面地验证...
用友开发者中心提供了开发者社区服务,为开发者提供了解、学习、互动沟通的服务环境,与开发者共建产业生态联盟。 四、开发者经营服务 用友云平台对开发者推出"有参与、可收益、共推广"的保障性服务模式。为合作...
本报告是基于一年一度的CSDN开发者大调查数据分析结果形成。CSDN最早从2004年开始针对中国开发者进行大规模调查,是迄今为止覆盖国内各类开发者人群数量最多,辐射地域、行业分布最广的调查活动。该调查旨在全面和...
8. 与硬件交互:Cocoa开发者手册会指导开发者如何利用框架提供的API与硬件设备进行交互,如触摸板、摄像头、麦克风等。 9. 应用程序生命周期管理:掌握应用程序的启动、运行和关闭过程,确保应用程序能够正确地响应...
8. **故障诊断与调试**:当遇到打印问题时,开发者需要知道如何使用HP提供的诊断工具进行问题定位,以及如何通过日志和错误代码找出问题的根源。 9. **性能优化**:为了获得最佳的打印效果和效率,开发者需要掌握...
- 在学习和开发过程中,可以积极参加华为开发者社区的交流与讨论,以便获得更多的帮助和支持。 ### 结语 HarmonyOS应用开发者高级认证不仅是一个提升个人技术能力的机会,也是一个加速职业发展的平台。通过系统化...
在此方面,开发者需要与腾讯公司保持良好的沟通,确保所有信息的及时更新和准确对接。 最后,服务管理与责任承担是开发者应当承担的重要责任。开发者需要对小程序所提供的服务进行全面管理,并确保这些服务的合法性...
1. **嵌入式软件**:在嵌入式系统领域,赛灵思提供了基于Zynq系列的SoC解决方案,集成了高性能的ARM处理器与可编程逻辑,使得开发者能够在同一平台上进行硬件加速和软件处理。大会可能深入讨论了如何利用Vivado HLS...
Firefox开发者版是一款专为网页开发者和设计师打造的高级浏览器版本,它提供了丰富的工具和功能,以便于进行网页调试、性能分析以及代码编辑。这款浏览器基于开源的Gecko引擎,具有高度可定制性和强大的扩展能力,...
Vue DevTools 是一个浏览器扩展,它为Vue应用程序提供了一个方便的开发环境,帮助开发者深入理解应用程序的状态和生命周期。 Vue DevTools 有针对Vue2和Vue3两个版本,因为Vue3引入了一些重大变化。`vue_dev_tools....
Steam平台开发者游戏上传指南 Steam平台是全球最大的数字发行平台之一,对于游戏开发者来说,上传游戏到Steam平台是非常重要的一步骤。本文将指导开发者如何上传游戏到Steam平台,并对应标签进行详细的解释。 一、...
从提供的文件信息来看,标题是“中国开发者调查报告”,而描述中提及了“云栖社区”,这是阿里巴巴集团旗下的一个技术社区平台。根据这些信息,我们可以推断这份报告应该是关于中国开发者在中国云技术领域的使用情况...
统信UOS操作系统离线进入开发者模式安装包,安装后重启即打开开发者模式,无需申请官方账号。适用于arm64版,安装包已签名。
本篇文章将详细介绍苹果开发者账号的种类、申请流程以及遇到的问题与解决方案。 首先,苹果开发者账号分为四种类型:个人账号(Individual)、团体账号(Company)、企业账号(Enterprise)和教育账号(University...
CompactRIO是NI推出的一款工业级实时可重配置I/O平台,它将实时处理器、可重配置FPGA硬件和模块化I/O相结合,适用于复杂、高可靠性要求的控制与监测任务。 文档的前言部分说明了该指南的目的是为了让用户能够快速...
2019-2020年度调查问卷从个人信息、基本信息、职业信息、技术与技术文化、新技术趋势等版块对开发者进行数据征集,最终收集问卷近万份。 本次调查报告重点发现摘要: 1、30岁以下开发者人数占比超8成,全国近半数的...
2018-2019中国开发者报告由CSDN发布,它是基于每年CSDN软件开发者大调查的数据分析结果。CSDN自2004年起就开始针对中国软件开发者进行大规模调查,其调查的广度和深度是目前国内最为广泛的。该调查覆盖了各类软件...
为了帮助开发者简单和高效地开发和调试微信小程序,我们在原有的公众号网页调试工具的基础上,推出了全新的 微信开发者工具,集成了公众号网页调试和小程序调试两种开发模式。版本号:1.02.1808080