2012-01-01 2 views
2

저는 그것이 그렇게 중요하지 않다는 것을 알고 있습니다. 그러나 사람들이 그들의 모델/콜렉션/뷰/라우터 기능을 어떻게 명명하는지 궁금합니다.일부 backbone.js 명명 규칙은 무엇입니까?

+0

큰 자원은 여기에서 찾을 수 있습니다 : http://ricostacruz.com/backbone-patterns/#conventions – Andrew

답변

3

모두는 모델, 컬렉션 등이 무엇을 나타내고 어떻게 구조적으로 사용되는지에 달려 있습니다.

나는 일반적으로 내 모델에게 일반적인 이름을 부여하고 자신의 생성자 유형과 다른 모든 접미사

예 :

// model 
var Animal = Backbone.Model.extend({});.... 
// collection 
var AnimalCollection = Backbone.Collection...... 
// view 
AnimalView = Backbone.View.extend(){}).... 

지금 당신은 단순히 그것에게 그것의 모델과 다른 전달하여 새로운 동물 뷰를 만들 수 있습니다 코드를 읽는 사람들은 모델이 나타내는 것을 쉽게 이해할 수 있습니다. 물론

var view = new AnimalView({ model: new Animal({name: 'Tiger'}); 

, 당신은 항상뿐만 아니라 단어 모델와 모델을 접미사 수 있지만이 모델은 등록하지 뷰의 일종 또는 단일 평면 객체를 나타 내기 때문에 그것없이 충분히 말을 생각한다 개체의 컬렉션입니다.

+1

내가 그것을 읽을 수 동의하지만 난 모든 모음을 입력 좋아하지 않는다 그 mutch :) 그럼 왜 동물, 동물 및 AnimalView를 사용하지? 나는 대부분보기/컬렉션은 하나 이상의보기, AnimalListView AnimalDetailView 등 등을 가질 수 있기 때문에 View를 주로 유지하지만 컬렉션이 1 개의 큰 풀인 경향이 있습니다. 대개 부모 모델에 포함 된 다음 예를 들어 동물 및 myPets과 같은 적절한 이름을 얻습니다. – Sander

+0

** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** ** 모델에 여분의 ** s **을 추가하거나 콜렉션에 하나를 두는 것이 너무 쉽기 때문에 복수형을 사용하는 것을 좋아하지 않습니다. 이는 불쾌한 버그를 유발합니다. 당신은 항상 콜렉션을 콜로 줄여 쓸 수도 있습니다. :피 – Trevor

3
  • 어떻게 든 사람/문/문 목록과 같은 모든 컬렉션 이름이 복수형입니다.
  • 클래스는 자본으로 시작하며 인스턴스는 낙타/밑줄을 사용합니다.
  • 모델 이름, 컬렉션 등을 절대로 포함하지 마십시오.
  • 반복의 이점이있는 c, m, r, v라는 해시에 모두 넣습니다. 백본 명명 규칙에 대한
var c.People = Backbone.Collection.extend(); 
var c.people = new c.People(); 

var m.Person = Backbone.Model.extend(); 
var m.person = new m.Person();