####I. 一般的なルール
- API説明書を作成して、APIの情報を説明する、例えば:APIの名、APIの内容、レスポンスとリクエスト、。。。
- URLにサイトのバージョンを書く。
http://myapisite.com/v1/api/widgets
- 新しいバージョンがある時、API説明書に変更を記録する。
- JSONまたはXMLタイプのリクエストの代わりにAPI URIsを使用する。
http://myweb.com/login?User=name -> http://myweb.com/login/user/name
####II. APIデザインルール
- 認証が必要なAPIでは、APIログインの値をコメントする。例えば:ユーザー名、パスワード、トークン、。。。
- エラーをはっきり通知して、機能に欠陥があるか、変数に欠陥があることを示する。
“Can’t find file” -> “The file filename can’t be found in folder folder name”
####III. 命令のルール
- 変数名や関数名やAPIの名前は変数や関数やAPI自体に定義することができる
“int A” -> ”int CountUser”, “function show” -> ”function showAllContacts”
- 命名の一貫性
- 略語を避ける
- 変数名は名詞に使用べきだ。動詞の使用を制限する
- 変数名はスペースを削除して、各単語の最初の文字を大文字にする。
“int userphonenumber” -> “int UserPhoneNumber”
- メソッド(GET, POST, PUT, DELETE)を付けるAPIなら、関数名=メソッド+機能
API: get(“/userLogIn/logIn”) -> 関数名:“getLogIn”
- 各apiグループの前に、apiグループがやっていることについてコメントする。
/* userLogIn Controller: UserController Work: log in, register, forgot password */
####IV. 参考文献参考文献
- API design: https://people.mpi-inf.mpg.de/~jblanche/api-design.pdf
- How to design a good API and why it matters:
http://zoomq.dn.qbox.me/ZQCollection/presentations/Howto-Design-a-Good-API_Why%20it%20Matters.pdf - REST API rulebook:
https://books.google.com.vn/books?id=4lZcsRwXo6MC&pg=PR4&lpg=PR4&dq=api+design+rule&source=bl&ots=F5Ak7DqvfN&sig=YYy_frOZepM0GcAPxoIIF2oznYo&hl=vi&sa=X&ved=0ahUKEwj2pOzo8pHVAhWElZQKHUfUDTQ4ChDoAQhQMAU#v=onepage&q=api%20design%20rule&f=false