Por Fabrício Tavares / 2013-02-21

Convenções de Nomenclatura no Ember.js

Muito do que o Ember automaticamente faz por você depende dos nomes utilizados para classes, objetos e properties. Portanto, é fundamental conhecer a forma que o Ember espera encontrar tais nomes. Vamos lá.

Classes

Todas as classes devem ser CamelCase.

Routes, views e controllers devem ter essa especificação após o nome. Por exemplo, um resource (existem Routes do tipo resource e do tipo route) com nome people, deve gerar:

App.PeopleRoute = Ember.Route.extend({});
App.PeopleController = Ember.ObjectController.extend({});
// ou 
// App.PeopleController = Ember.ArrayController.extend({});
App.PeopleView = Ember.View.extend({});

Um model com nome people deve ser da seguinte forma:

App.People = Ember.Object.extend({});
// ou, no caso do Ember Data
App.People = DS.Model.extend({});

Mixins possuem nomes como os models.

Instâncias

O Ember cria automaticamente instâncias das classes na inicialização da aplicação. Então não há necessidade de fazer algo como:

App.PeopleView = Ember.View.create({});

Nos casos em que seja necessário, os nomes devem ser camelBack. Como no exemplo abaixo.

App.peopleView = Ember.View.create({});

Templates

Templates de resources, devem ter como nome o nome do resource. No caso de um resource com nome people:

<script type="text/x-handlebars" data-template-name="people">
</script>

Routes do tipo route devem vir após o nome do resource "pai", da seguinte forma:

// No caso do route padrão
<script type="text/x-handlebars" data-template-name="people/index">
</script>

// No caso de um route com nome `new`
<script type="text/x-handlebars" data-template-name="people/new">
</script>

Properties

Todas properties devem ser camelBack.


comments powered by Disqus