[펌] API 설계 Tip

Programming 2016. 6. 29. 11:19

좋은 코드일수록 재사용이 용이한 코드일 확률이 높습니다. 그런 의미에서 API 설계에 대한 내용을 공유할까 합니다.

Google How to Design A Good API and Why it Matters 부분을 정리해 봤습니다

참조 동영상 : https://www.youtube.com/watch?v=aAb7hSCtvGw&feature=youtu.be

 

  1. 한 개의 API는 하나의 일만해야 하고, 그것을 잘 해야 합니다.

     이름을 짓기 어려울 정도로 여러 가지 일들을 하는 단위 API는 통상적으로 잘못 만들어져 있습니다.

  2. API는 가능한 한 작은 단위로( Atomic) 만들지만, 요구 Spec을 만족시켜야 합니다.

     API는 특성상 한번 배포되면 더할 수는 있지만, 제거할 수는 없기 때문이기도 합니다.

  3. Implementation API에 영향을 줘서는 안 됩니다.

     구현부분을 너무 세세하게 정의하면 사용자가 혼란스러워집니다. 스펙을 너무 과하게 잡지 않는 게 중요하겠죠?

  4. 접근 가능한 메쏘드는 최소화 해야 합니다.

     정보은폐를 최대한 해서 다른 메쏘드에는 접근하지 않도록 설계해야 합니다.

  5. 이름을 잘 짓는 게 아주 중요합니다. 설명 없이 이해가 되면 금상첨화.

     기호나 축약은 사용하지 않는 것이 좋습니다. 저희 회사의 경우는 약어를 많이 쓰는 편이긴 한데, 구글은 그것보다는

     바로 이해가 되는 단어로 네이밍을 하는 것이 중요하다고 하는군요

  6. 문서화가 무엇보다 중요합니다.

  7. API 디자인의 성능 결과에 대해 고려하라. 좋은 디자인은 일반적으로 좋은 성능과 일치합니다.

  8. 플랫폼상의 관습적인 표준을 따르라.

 

"비록 아주 가끔 우리가 좋은 디자인(설계, 아키텍쳐)을 보게 되었다고 하더라도, 우리가 문서 없이 재사용되어질 정도로

좋은 컴포넌트를 볼 수는 없다."

  – D.L.Parnas, Software Aging, 1994

 

위 내용 보다 더 잘 정리된 페이지가 존재하는 군요. 동영상과 함께 보기를 추천 드립니다.

https://subokim.wordpress.com/2011/12/23/how-to-design-a-good-api/

'Programming' 카테고리의 다른 글

알고리즘- 순열, 판매원  (0) 2016.07.15
VLC Player로 RTSP 영상 보는 방법 (TCP or UDP)  (0) 2016.04.04
rtsp url  (0) 2016.03.27
Posted by 세모아
,