延时5s程序
您好,世界各地的孩子们。 在今天的课程中,我们将讨论保持代码/脚本井井有条和整洁的重要性。 请带一点盐,我认为开发中是对还是错。
特别是,我想谈谈一种叫做5S的日本技术。 简而言之,它由五个“途径”组成,这些途径有助于创建一个追求效率和效率的有组织的工作环境。 那些是:
Seiri,Seiton,Seisō,Seiketsu和Shitsuke。
好的,到目前为止,您可能会问我“它是否与软件开发有关”,我很高兴您是否这样做。 我个人认为,如果将此工具应用于软件开发,可能会非常有用。
清里
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-9qcg3uvr.webp?alt=media&token=c9e27a36-259d-489c-a907-82f865b91209)
Seiri意味着对位置中的所有项目进行分类并删除所有不必要的项目。
更不用说所有这些W3schools了,大约一个半小时前打开的MDN和Stackoverflow选项卡,即使没有使用,它们仍然处于打开状态,让我们关注实际开发。
在前端开发中,留下深刻印象的一件事是未来的计划。 在下图中,我们可以看到其中有一些不必要的代码行,如果可以理解<p>
和<span>
标记的显示属性,则可以避免这些行。
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-cor3uni.webp?alt=media&token=7338598e-2d28-48b9-a01e-697358730852)
赛顿
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-hcc53ugk.webp?alt=media&token=c40749cf-3dfb-48ba-b368-0ce3ed549345)
Seiton意味着将所有必要的物品放在最佳位置以实现其功能。
在这件事上,我不得不考虑将相关的信息分组。 在非常大的项目中,就维护代码而言,这可以带来巨大的不同。
例如,让我们考虑一下CSS,在下图中,我们可以在左侧示例中看到信息未分组,而在右侧示例中则对其进行了分组和注释。
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-aw363ugx.webp?alt=media&token=9bb714d5-0d0d-4f81-89ab-4098fb4c4a48)
在后端,一个持久的示例是类声明,在这样做时,请务必将相关信息分组在一起,这一点很重要。 正如我们在下面的示例中看到的。
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-xl3w3u8m.webp?alt=media&token=29a1dde3-0d39-41d8-b466-6aa3aaee6203)
清创
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-lbbu3uhk.webp?alt=media&token=276e2cb1-1bb4-4e83-9787-04b8b2debb59)
Seiso将定期清洁和检查工作场所,工具和机械。
根据我的个人经验,匆忙完成一个项目可能会导致大量错误,而以后可能很难解决。 在开发应用程序时,使用诸如linter和代码验证器之类的工具检查脚本对于确保预期输出的可靠性具有一定的帮助。
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-a56z3uop.webp?alt=media&token=24963b6f-cdd0-4c42-9601-32fcde3beb1e)
另一个解决方法是所谓的测试驱动开发 。 如前所述:
依赖于非常短的开发周期的重复,在该周期中,需求被转换为非常具体的测试用例,然后对代码进行了改进,以使测试通过。
精光
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-cnb83u9n.webp?alt=media&token=5a83d135-e941-4ee3-8c13-f49962e0d325)
Seiketsu将标准化用于分类,订购和清洁工作场所的流程。
我认为这可能是软件开发中最相关的主题之一,尤其是在远程工作时。 可以在许多不同方面确定创建标准的重要性。 可能您已经听说过万维网联盟和Camel Case 。
让我们将此主题带入一个开发示例。 在下面的图像中,理解这些元素之间的父/子关系非常棘手,使用适当的缩进可以轻松避免这种情况。
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-l98o3uai.webp?alt=media&token=707fccc9-9282-458f-96f8-4082d42492be)
静克
![](https://firebasestorage.googleapis.com/v0/b/hackernoon-app.appspot.com/o/images%2Fo31IGzz5P3YMgcRfsPDpSMBalM42-n0b33ucd.webp?alt=media&token=baf025d4-e53b-4f0f-9ae7-7c2dd58acf89)
Shitsuke将通过自律来维持发展的过程。
这是最难举例说明的,它意味着在参与该项目的每个人中创建和发展习惯,以实践前面步骤中所讲的内容。 在远程工作中,这可能是最难实现的,因为我们正在与来自不同文化和背景的人打交道。
总结一下
当然,这些原理可以用在许多其他示例中,不仅可以用于专业领域,还可以用于个人和学术领域。 正如我之前所说,我相信软件开发中没有对与错。 我们可以依靠的是良好实践,我认为使用5S可以很好地帮助实现这些目标。
翻译自: https://hackernoon.com/use-the-5s-technique-to-become-a-better-programmer-4o1l3y94
延时5s程序