如何一次性正确创建公司网站?在创建我们的 Drupal Droopler 发行版时,我们考虑到了数年构建企业网站的经验。我们注意到,创建大型网站的最重要要求之一是使用“一次正确”的原则。
一旦创建,软件应该易于使用和更新,并且不需要进行大规模重建即可引入新功能。以下是一些有关如何创建网站的提示,我们可以与您分享。它们在使用 Drooper 时尤其有用。
不要走捷径
在编程中,一个目标通常可以通过多种方式实现。请记住,最快、最简单的方法不一定是推荐的方法。网站外观的变化就是一个很好的例子。
当然,您遇到过编写不当的 CSS,其中包含“匆忙编写”的代码,而无需深入研究文档和现有的样式结构。滥用 important 指令并使用 display: none 属性隐藏不必要的元素是此类修改的特征。快速更改的前景可能会影响正确的判断,以至于代码会出现在错误的位置。缺乏经验的程序员经常会编辑编译文件,甚至不会注意到 SCSS 和 JavaScript 源文件。此类操作的影响会增加其他团队接管项目的成本。
另一个走捷径的例子是覆盖整个页面模板来更改单个部分。这在 Drupal 及其使用的 Twig 文件中很常见。所选页面可以被覆盖而不会出现任何可见问题,但错误的设计决策可能会产生深远的影响。
总结一下:快速解决方案的缺点是什么?它们在短期内是便宜且有效的,但从长远来看,它们使得网站难以维护和更新。将充满不加思索的修改的代码交给其他程序员也很困难。
注意细节
首先,我想给大家讲一下破窗理论。这是一个社会学问题,描述了一个案例,即环境中可见的破坏可能导致人们得出没有法律的结论。菲利普·津巴多教授做了一个实验,他把两辆汽车遗弃在贫民区,一辆在富人区。被遗弃在贫民区的汽车很快就被毁坏了,被遗弃在富人区的汽车仍然完好无损。然而,在它的窗户被故意打破后,随着时间的推移,它也被彻底毁坏了。看来,可见的忽视会引发人类道德约束的丧失。
这一理论可以直接应用到程序员的工作中。如果他注意到某个项目中的变更引入得非常草率,他就不会有动力去编写可靠的代码。隐喻中的“破窗”将导致后续修改并不比之前的修改更好。
这就是为什么关注最小的细节非常重要。在 Droptica 开发软件时,我们会非常仔细地检查代码,不允许出现哪怕是最轻微的缺陷;通过这种方式,我们鼓励其他人不要放松警惕,并将他们的工作质量保持在高水平。我们建议您采用这种方法。通过关注代码注释中的哪怕是很小的拼写错误,您将提高整个团队的标准。
注意细节与上一点直接相关,即不走捷径。扎实工作。从项目开始,使用版本控制并仔细检查代码。作为 Drupal 和 Droopler 用户,请始终使用 Composer,不要屈服于通过 ZIP 文件下载模块的诱惑。规划您的行动并应用模块化方法,其中各个功能彼此分离。
按预期使用工具
设计网站时对灵活性的需求从未减少。从我们的经验中我们知道,没有任何编辑解决方案可以覆盖所有可能的应用程序。这通常会导致软件的使用方式与其创建者的意图不完全一致。
从 Droopler 的创建者的角度来看,我们在发行版中提供了十几种现成的段落类型(可用于构建页面的元素)。有时需要获得我们未曾预见到的功能。例如,用户将来自其他网站的脚本粘贴到文本框的内容中,或者以不同于官方说明的方式更改段落的配色方案。
为什么这种方法无效?当我们发布 Droopler 的新版本时,我们会尝试测试现有功能并确保网站对所有用户的连续运行。但是,我们无法检查自定义和不受支持的用途。
此注意事项几乎适用于所有软件。当以与预期目的相反的方式使用工具时,您必须考虑到将来它们将不再按照我们的假设运行。
限制使用的工具数量
Drupal 是一个由社区开发的基于外部模块的系统。模块数量众多,这意味着一个效果通常可以通过完全不同的方法实现。例如,您可以通过普通的所见即所得编辑器、Paragraphs 元素以及 WordPress 中众所周知的 Gutenberg 项目添加内容。页面上的块可以通过 Layout Builder 或 Context 模块以高级方式排列。您可以使用 Views、内置搜索或外部搜索 API 搜索内容。
上述示例中提到的所有模块都可以并行工作并相互补充功能。但应记住,页面上使用的每个后续解决方案都会使其配置复杂化并对性能产生负面影响。开始创建页面时,请选择要使用的工具并始终坚持使用它们。对于 Droopler,某些操作方法(例如通过段落添加内容)由发行版的架构预先确定。
保持视觉一致性
保持视觉秩序对于每个网站都非常重要。然而,这不仅仅是为了确保正确的外观。引入修改的方法也同样重要。一个对外部用户来说绝对正确的网站也可能存在严重的设计缺陷。
对于 Droopler,在对 SCSS 进行更改之前,我们建议查看官方存储库中包含的文档。这将需要一段时间,但会大大加快您的工作速度。我们准备了一个 SCSS 架构,其中变量排列成一种依赖金字塔。金字塔顶部的变量的使用会影响下面的所有变量,但也可以阻止这种值的“继承”并覆盖每个元素。这是一种非常灵活和有效的方法,允许您在几分钟内更改页面的整个配色方案。
如果您在所述系统之外引入修改,则您将无法利用我们的架构——您的代码将变得更难更新和更难以理解。
概括
“一次正确”原则具有四个优点,从商业角度来看这些优点极其重要:
使更新更容易- 您可以确保您已准备好安装该软件的未来版本,从而能够快速响应任何发布的关键补丁。
接手项目的能力——如果您需要更换开发团队或承包商——无需进行艰苦的代码分析即可完成。
保护应用程序——按照推荐的方式引入更改并避免草率地解决问题,从而直接实现更高级别的安全性。
为未来节省时间——应该记住,快速编写的代码和草率做出的设计决策迟早会产生严重的成本(例如重构和更新)。