Usar o princípio de design "modelo de conteúdo primeiro"

Ao criar um novo recurso, sempre comece criando a estrutura de conteúdo JCR primeiro e, em seguida, procure ler e gravar seu conteúdo usando os servlets Sling padrão. Isso permitirá garantir que sua implementação funcione bem com mecanismos de controle de acesso prontos para uso e evita gerar servlets desnecessários no estilo CRUD.

Seja RESTful

Os servlets devem ser definidos com base em resourceTypes em vez de caminhos. Isso possibilita usar os controles de acesso do JCR, seguir os princípios do REST e usar o resolvedor de recursos e de recursos que são fornecidos a nós na solicitação. Isso também permite alterar os scripts que renderizam URLs no lado do servidor sem precisar alterar quaisquer URLs do lado do cliente, enquanto oculta os detalhes de implementação do lado do servidor do cliente para obter mais segurança.

Evite definir novos tipos de nó

Os tipos de nó funcionam em um nível baixo na camada de infraestrutura e a maioria dos requisitos pode ser atendida usando um sling:resourceType atribuído a um tipo de nó nt:unstructured, oak:Unstructured, sling:Folder ou cq:Page . Os tipos de nó são iguais ao esquema no repositório e a alteração dos tipos de nó pode ser muito cara na estrada.

Aceitar as convenções de nomenclatura no JCR

Aderir às convenções de nomenclatura adicionará consistência à sua base de código, diminuindo a taxa de incidência de defeitos e aumentando a velocidade dos desenvolvedores que trabalham no sistema. As seguintes convenções são usadas pelo Adobe no desenvolvimento de AEM:

  • Nomes de nó

    • Todas as minúsculas
    • Separação de palavras usando hífens
  • Nomes de propriedades

    • Camel case, começando com letra minúscula
  • Componentes (JSP/HTML)

    • Todas as minúsculas
    • Separação de palavras usando hífens

Experience Manager