即使是经验最丰富的web开发人员,使用遗留代码也是非常麻烦的。
从令人眼花缭乱的语法,到全球范围内的性能问题,难以驾驭的代码可能是你在为新客户的网站工作时遇到的最大痛点之一。幸运的是,重构提供了一个选择为了逃离混乱代码的深渊。
如果您以前从未做过重构,那么重构就是以一种不改变代码的外部行为,但改善其内部结构的方式重构现有代码库的过程。
几周前,我们和CSS魔法的哈利罗伯茨对于一个Shopify合作伙伴网络研讨会,我们讨论了重构遗留CSS的重要性和挑战。Harry向我们介绍了他的过程,并为刚开始进行重构的开发人员提供了一些有价值的建议。OB欧宝娱乐APP您可以在这里观看完整的网络研讨会录音:
在他的演讲中,Harry还分享了一些在进行重构项目时需要牢记的技巧。我们在这里编译了其中的一些,为您提供重构CSS所需的建议,而不会失去理智。OB欧宝娱乐APP
1.了解什么时候该重构
虽然理解如何重构代码库很重要,但理解何时重构代码库也同样重要。重构可能是一个非常耗费人力资源的过程,它可能需要无数个小时来筛选您或您客户的网站或应用程序的每个功能。
虽然Harry坚定地表示“无论如何,我们应该始终在持续的基础上重构我们的代码”,但他也承认有一些情况总是需要重构。他识别这类情况的试金石基于以下三个变量:
- 如果预计的维护成本高于重写- - - - - -重构的目的是删除不必要的代码以提高性能并降低成本。如果您建议的流程提供了维护现有代码库的更便宜的替代方案,那么在这些维护成本变得更大之前对您进行重构是有益的。
- 如果当前版本的特性阻碍了性能-如果当前版本拖慢了你的网站,这是一个明确的迹象,表明你是时候看看你现有的代码基础结构了。
- 如果新版本的特性或重构代码提供了切实的好处——这与前面提到的线相反,但仍然值得考虑。即使您现有的版本没有太大的问题,整理CSS仍然可能带来一些潜在的好处。花点时间回顾一下,看看是否有什么遗漏了。
2.明白什么时候不是重构的时候
在很多情况下,重构并不是正确的解决方案。考虑到与重构相关的高成本和工作量,理解什么时候重构实际上可能是更昂贵的选择尤为重要。
下面是Harry给出的一些建议,用于决定是否需要重构。
- 如果你没有被什么东西拖慢的话如果某些东西对您或您客户的网站、应用程序或业务没有问题,那么可能还不值得重构。
- 如果它是可以在以后的重写中捕获的东西如果您的客户意识到在几个月内他们将重写整个站点,那么此时重构代码库是不值得的,因为工作将被删除。
- 如果重写是比重构更好的解决方案——有一些项目的代码库是如此痛苦,以至于从头重写整个CSS实际上是比重构现有代码更明智的选择。
3.理解重构的好处
一些客户可能会因为缺乏对重构实际完成的理解而对雇佣你重构他们网站的CSS犹豫不决。对于那些不太懂技术的客户来说尤其如此,他们可能会把重构看作是对现有网站的简单管理。在这些情况下,你能够清楚地传达重构对他们的网站或web应用程序的好处是很重要的。
如果你发现自己面对的是一个持怀疑态度的客户,一定要与他们沟通重构对他们业务的积极影响。你可以分享以下几个例子:
- 为开发人员增加可读性和易用性根据重构过程的性质,您将降低CSS系统的复杂性。反过来,这将使其他开发人员更容易访问、读取和更新您的代码。这对于新开发人员或在大型开发团队中工作的公司尤其重要。
- bug更少,性能更强,用户体验更好重构带来的性能优势是众所周知的。通过整理您的代码,您的web应用程序或网站将看到几乎立即的增强,这将为您的最终用户带来更好的整体体验。
- 帮助消除技术债务和节省资金糟糕的代码结构需要持续的维护,并且通常意味着开发人员在代码上花费的时间比实际需要的要多。通过重构,您将在内部降低技术债务,这可以转化为财务节省——这是每个客户都希望听到的。
OB欧宝娱乐APP不要失去理智,开始重构CSS吧
如果您想了解有关重构过程的更多信息,请务必观看我们对哈利网络研讨会的录音.