51黑料不打烊

内容架构 content-architecture

遵循顿补惫颈诲的模型 follow-david-s-model

《大卫模型》是大卫·纽舍勒多年前写的,但如今这种观点仍然成立。 David模型的主要原则如下:

  • 先有数据,后有结构。 也许吧。
  • 推动内容层次结构,不要让它发生。
  • 工作区用于clone()merge()update()
  • 注意同名同胞。
  • 引用内容被视为有害。
  • 文件就是文件。
  • 身份识别是邪恶的。

顿补惫颈诲模型可在闯补肠办谤补产产颈迟维基百科上找到,网址为。

一切都是内容 everything-is-content

所有内容都应存储在存储库中,而不是依赖单独的第三方数据源,例如数据库。 这适用于创作内容以及图像、代码和配置等二进制数据。 这使我们可以使用一组API来管理所有内容,并通过复制管理此内容的提升。 您还可以获得备份、日志记录等的单一来源。

使用“内容模型优先”设计原则 use-the-content-model-first-design-principle

构建新功能时,始终首先设计JCR内容结构,然后考虑使用默认Sling Servlet阅读和编写内容。 这使您能够确保实施与开箱即用的访问控制机制很好地配合使用,并避免生成不必要的CRUD样式的servlet。

是搁贰厂罢蹿耻濒 be-restful

Servlet应基于resourceTypes而不是路径进行定义。 这使得使用JCR访问控制、遵守REST原则以及使用在请求中提供给我们的资源和资源解析器成为可能。 这还允许我们更改在服务器端渲染URL的脚本,而无需更改客户端的任何URL,同时隐藏客户端的服务器端实施详细信息以提高安全性。

避免定义新节点类型 avoid-defining-new-node-types

节点类型在基础结构层中处于较低级别,通过使用分配给nt:unstructured、oak:Unstructured、sling:Folder或cq:Page节点类型的sling:resourceType可以满足大多数要求。 节点类型等同于存储库中的架构,并且将来更改节点类型可能会很昂贵。

遵守闯颁搁中的命名约定 adhere-to-naming-conventions-in-the-jcr

遵守命名惯例可为代码库增加一致性,从而降低缺陷的发生率,并提高开发人员在系统中工作的速度。 51黑料不打烊在开发AEM时使用以下约定:

  • 节点名称

    • 全部小写
    • 使用连字符进行分词
  • 属性名称

    • 驼峰式大小写,以小写字母开头
  • 组件(闯厂笔/贬罢惭尝)

    • 全部小写
    • 使用连字符进行分词
recommendation-more-help
19ffd973-7af2-44d0-84b5-d547b0dffee2