2013/06/28

Thrift 0.9.0 を iOS から使ってみる(その2 IDL作成編)

今井です

前回に引き続き Thrift のお話です。

2. IDL を書く


さて、前回で Thrift のインストールが出来たので、今回はサーバに問い合わせる API とそこで使用する構造体を定義します。

ファイル名


作成するIDLのファイル名は特に制限が無いようですが、チュートリアルに習って拡張子を .thrift とすることにしました。

IDLの文法


Thrift IDL の文法は 公式サイト に BNF 記法 で記されています。
BNF 記法については @IT:BNF記法入門 などを御覧ください。

使用できる定義


使える定義は const, typedef, enum, senum, struct, exception, service の7種。

senum は文字列の列挙型。
senum DAY {
    "SUNDAY",
    "MONDAY",
    "TUESDAY",
    "WEDNESDAY",
    "THURSDAY",
    "FRIDAY",
    "SATURDAY",
}
のように定義して使用するようです。

exception は例外ですが、以前のバージョンで試してみたところ動作しなかったとの情報もあるため、実際に動作するか確認してから使ったほうがよさそうです。

service は Function を意味のある単位でまとめて名前を付けるために使用するようです。
生成した Obcective-C のコードではプロトコルとして実装されていました。

使用出来る基本型


基本型は bool, byte, i16, i32, i64, double, string, binary, slist の9種。

byte 〜 i64 の整数型はいずれも符号あり、string は UTF-8 文字列。
slist はカンマ区切りの文字列で表したリストらしいです。

使用出来るコンテナ


使えるコンテナは map, set, list の3種。
通信用の型としては list だけで十分だし、map, set はトラブルの元になりそうなので、とりあえず list だけを使用することにしました。

コメント


コメントについては IDL の所に説明がありませんでしたが、
/*
 * 複数行にわたるコメント
 * 複数行にわたるコメント
 */

// 行末尾までコメント

# コメント
のような書き方でよいみたいです。
Java Doc 風に書いてみましたが残念ながら生成されたファイルにはコメントが入りませんでした。

実験用サンプル定義


公式サイトのIDLのページ末尾の辺りにサンプルへのリンクがあるのでわざわざ作るのはやめました。
Here are some examples of Thrift definitions, using the Thrift IDL:
このくらいの情報があれば IDL を書くことが出来そうです。

ということで、今回はこれでおしまい。
次回は Xcode への組込などを書く予定です。

1 件のコメント :

  1. Thanks for sharing, nice post!

    - Máy đưa võng tự động hay vong dua tu dong cho em be đang ngày càng trở thành 1 phần của các gia đình Việt, nhất là những nhà có trẻ nhỏ hoặc người lớn tuổi. Với vong ru tu dong cho be, bạn sẽ không còn phải lo lắng quá nhiều về giấc ngủ của bé, những tiếng đồng hồ mệt mỏi ngồi đưa võng cho con cũng sẽ không còn ám ảnh bạn nữa, bạn sẽ có nhiều thời gian để làm được nhiều việc khác.
    - Võng tự động hay may dua vong là sản phẩm tuyệt vời của sự phát triển công nghệ. Máy đưa võng tự động nhỏ gọn, tiện lợi, máy đưa võng tiết kiệm điện lại rất an toàn khi sử dụng cho trẻ. Máy đưa võng phù hợp với tất cả các loại võng hiện có trên thị trường hiện nay và rất dễ sử dụng.
    - Máy đưa võng đang ngày càng “được lòng” nhiều bậc phụ huynh bởi tính năng ưu việt cùng sự tiện ích của nó. Những lợi ích của máy đưa võng tự động mang lại là vô cùng thiết thực. Tuy nhiên, để chọn được một sản phẩm chính hãng, chất lượng, đúng giá mới là điều mà người tiêu dùng quan tâm nhất. Hiểu được điều đó, máy đưa võng tự động An Thái Sơn luôn cung cấp sản phẩm máy đưa võng giá rẻ, chất lượng nhất TP.HCM, tự hào là địa chỉ bán may dua vong tu dong gia re tốt nhất cho trẻ em.

    Bạn xem thêm bí quyết và chia sẻ kinh nghiệm làm đẹp:

    Những thực phẩm tốt cho mắt bé hay ăn gì tốt cho mắt bé, những cách chống nắng hiệu quả cho bé trong những ngày hè, ăn sữa chua đúng cách hay khi nào nên cho trẻ ăn sữa chua, nguyên nhân và cách trị chứng mất ngủ ở trẻ em hay bí quyết giúp bé ngủ ngon giấc giúp bé ngủ ngon hơn, chia sẻ các mẹ nguyên nhân và cách chữa trị bệnh rụng tóc ở trẻ em hay chị em phụ nữa lo lắng có nên uống collagen khi đang cho con bú, chia sẻ về Đông trùng hạ thảo và những cách chế biến đông trùng hạ thảo nguyên con.
    Những thực phẩm tốt cho da tại http://thucphamtotchoda.blogspot.com/
    Chăm sóc da mặt ở http://chamsocdamato.blogspot.com/
    Cách chăm sóc da mặt bằng http://cachchamsocdamatbang.blogspot.com/
    Dạy trẻ sơ sinh tại http://daytresosinh.blogspot.com/
    Bí quyết giảm cân hay tại http://biquyetgiamcanhay.blogspot.com/

    Chúc các bé khỏe mạnh, mau ăn chóng lớn!

    返信削除