提高开发人员技能的4个技巧

Coder navigates a roadmap avoiding bugs and errors in coding
+$(Image credit: Robert Pizzo)

SuperFriendly导演Dan Mall 将分享他关于如何保持与网页设计师相关的专业技巧 生成纽约 2018. 立即获取您的机票

对于那些在Web开发方面经验不足五年的人来说,您可能仍然在语言功能,框架,架构和最佳实践方面找到了自己的位置。虽然你可能会以最好的意图开始每个网站,但最终,你想要的就是让事情更好地工作以获得报酬。

我花了几年的时间来拯救各种知名品牌的网站,理论上应该很简单,但由于种种原因 - 自由职业者的继承,缺乏自上而下的监督 - 已经变成了意大利面 - 技术债务的交汇点。

01.遵循公式

我想要摆脱的方法是向你保证,我们一直都在那里,不知道一切都没有错。编程非常有趣,而且您每天想要这样做的原因可能是因为您可以迎接挑战,带头并提供创新的解决方案。

但是这里有一个问题:让编程变得有趣(创造力和思考能力)的因素可能无意中导致了更大的团队主导项目的技术债务。

多年来已经证明了自己已经证实的最佳实践,原则和模式。研究,学习和实施它们是你的工作 - 并且在此过程中,牺牲一点个性来换取可维护性和可靠性。有一篇名为'的博文你没有报酬写代码“总结得相当好。

02.小东西出汗

编程非常关注清晰度,当你看不到树木的木材时,你的代码库有目的地保持精益和平均的机会将会严重减少。因此,保持领先地位的主要策略应该是对基础知识的专注。

  • 超组织:担心文件夹结构和文件位置(框架可以在这里提供帮助),确保模块具有一致的API顺序,组通用功能,以及使用带分隔符的模板。
  • 使代码可读:明智地使用空格,并使用注释来注释分组并澄清意图(但不是错误的代码)。你是一个团队工作,你得到报酬是清楚的。
  • 不要偷工减料:现在节省时间看起来似乎是一个好主意,但你可以肯定,随着项目的发展,任何偷偷摸摸的懒惰都会变得复杂,以后会花费这个项目。

在整个过程中,确保在进行过程中纠正错误。迟早其他代码最终会依赖这些错误。尽快停止腐烂。如果进行更改,请始终如一地进行更改。数据库列,后端函数,API调用,JavaScript函数,DocComments,注释,HTML属性,CSS类名等等 - 确保它们全部级联。

03.保持结构

Image showing a before and after of restructured and refactored code

相同应用程序的两个版本路由文件。哪个更容易理解应用程序的结构?

构建一个自包含的站点以静静地忽略封装,并通过对app的全局引用或通过parent.parent.parent或类似的组件来扩展代码时,有一种诱惑。这很快就会增加技术债务。

在可能的情况下,尝试将您的应用程序视为一系列独立模块,并以您的框架的最佳实践为基础,以消除紧密耦合和相互依赖性。如果它有帮助,试着想象你将在其他项目中重用部分应用程序,并考虑如何构建文件,标记和代码以促进这一点。

你需要保持警惕,将责任分开,不断问自己:这属于这里吗?如果代码感觉'icky',它可能是。

在团队项目中,缺乏代码重用和复制/粘贴代码是一个大问题。当您看到重复的代码时,咬住子弹并将所有实例重构为函数,模块或模板。同样,良好的文件夹结构将使您可以轻松找到放置东西的位置。

04.小心过度复杂

A before and after demonstrating how a refactored class is more readable, functional and testable

右侧的重构类是左侧的重构类,更具可读性,功能性和可测试性

复杂性的关键问题在于它掩盖并分散了您试图解决的原始问题,并最终在应用程序的相同位置或其他部分生成更多代码和更多复杂性。你最终陷入了恶性循环。

如果您的代码开始看起来更像是代数课而不是维护良好的API,那么您需要退一步。可能您需要重构特定的代码块,重构其所在的类或重新考虑您当前解决您尝试解决的问题的方法。

在极端情况下,您可能需要再次向外看。我最近重构了一个非常复杂的视图设置,我意识到这是一个经过深思熟虑的路由模式的受害者。通过将错综复杂的路线重新设计成合理的东西,我能够在各种类别中抛弃数百行密集的意大利面条代码,并在此过程中删除一些长期存在的路由器黑客/错误。

写完一些特别晦涩的代码之后你不应该做的一件事就是坐下来,自豪地看到阅读的难度!最好的代码是优雅的(读:不棘手);如果你不是,你有工作要做。

本文最初发布于net的第290期,这是世界上最畅销的网页设计师和开发者杂志。购买问题290要么订阅网

想要进一步提高您的编程技巧吗?

Dan Mall is giving his talk Should Designers…? at Generate New York from 25 - 27 April 2018

Dan Mall正在发表他的演讲应该设计师......?于2018年4月25日至27日在纽约生成

设计师需要提高他们的技能以保持相关性和有效性,但哪些值得关注?设计师是否应该学习编码,如果是这样,有限的代码知识能否真正与才华横溢的工程师合作?设计师如何融入敏捷工作流程?项目方法甚至无论如何都重要吗?设计师在创建,使用和维护设计系统方面有何作用?

在他的演讲中2018年4月25日至27日生成纽约,SuperFriendly导演Dan Mall将分享故事和观点来回答这些问题以及更多,提供具体的方法和技巧,帮助设计师变得更加不可或缺,更快。立即获取您的机票

相关文章:



翻译字数超限