도서관이나 API를 어떻게 디자인 할 것인가에 대한 몇 가지 사항을 읽었으며 Joshua Bloch의 Google Tech Talks에서의 멋진 대화를 발견했습니다. 이제는 전문 API 개발자가 아니지만 많은 프로그래밍과 클래스/기능이 비슷하다고 생각합니다. 똑같은 기능의 축소 된 버전 (명확한 동작 분리, 쉽고 즐거운 사용, 깨끗한 코드 권장)이긴하지만 비슷합니다. 등누구나 이런 식으로 API 또는 라이브러리 코드를 디자인합니까?
좀 널리 사용되는 오픈 소스 자바 코드를 통과하고이 아이디어 없어 (새 아무것도하지만, 그냥 ... 명쾌하게 그것을 넣어)
우리가 예를 들어 의사 코드 보자되었다 (또는 어쩌면 일부 방언의 BASIC) :
1. new label
2. set name 'hello world'
3. set color 'blue'
4. show 'topmost'
5. on click hide
지금 나는이 같은 뭔가 할 수 있도록하려는 것입니다 자바 코드에 의해 영감 :
1. Label l = new Label()
2. .setName('Hello World')
3. .setColor('blue')
4. .show(zindex.top);
5. l.onClick = l.hide() ;
내 질문이 있습니다 :
합니까이 같은 의사 코드에서 시작하여 다른 사람 디자인 API를?
작은 것이 좋은가요? 각각 10 개의 클래스로 10 개의 클래스를 작성하십시오. 각 메소드는 내부에 5-6 개의 라인 코드를 넘지 않습니다. 이것은 분명히 설계된 클래스의 크기를 보여주기위한 거친 숫자 세트입니다. 취미 프로젝트가 아닌 전체 API에 가까운 곳은 없습니다. 작지만 작은 일을하지만 잘 수행하는 전문 패키지.
누군가이 접근법에 심각한 단점을 발견 했습니까?
은 내가 하나 실제 이익이 힘이 먼저 사용 사례를 기록 할 것으로 생각합니다.다른 점은 명사와 동사가 닷지 MultiPhraseAbstractParadigmDesignPatternImplementor 증후군 - D에 최종 제품이 가능, 간단한를 유지한다는 것이다