2017-05-16 3 views
1

私は最近Swagger-Codegenを使ってRuby gemを自動生成し、個々のAPIエンドポイントごとにファイルを生成するとともに、APIが潜在的に返す可能性のあるすべてのデータ収集について数十のモデルファイルを生成しました。同じモジュールに属する異なるクラスを別々のファイルに分ける利点は何ですか?

どちらのAPIメソッドファイルだけでなく、モデルはキャメルケースを除き、また、ファイルの名前で、ファイルのクラスが含まれ、その後、同じモジュール名SwaggerClientを宣言することから始めます:

module SwaggerClient 
    class GetWalletsForbidden 
    ... 
    end 
end 

私が理解しているように、これらのすべてを技術的に1つのファイルにまとめることができます。最初にモジュールを宣言し、内部にクラスを配置します。

私はトップレベルの宝石ファイルswagger_client.rbを見ると、それがさらに奇妙なよう:ラインrequireの行の後:

... 
require swagger_client/api/assets.api 
require swagger_client/api/bookmarks.api 
require swagger_client/api/calendar.api 
... 

私はRailsので作業する場合は特に、自動生成が使用されている、ことを知っていますかなり多く、しかしこれは私にとっては過度のようです。

非常に多くの小さな部分を別々のファイルに保存する利点は何ですか?組織の利益のためだけですか?私はRailsが背後にある多くの複雑なことをしていることを知っています...これはこれに関連していますか?パフォーマンスが向上しますか?または、requireの場合、「過度」となるものが間違っていると思いますか?

答えて

0

スウェーガーCodegenはAPIエンドポイントを異なるファイルに分類するため、すべてのエンドポイントをすべてのAPI操作で同じtagsを使用して1つのファイルに配置することができます。ここで

は運転中tagsの例である:https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen/src/test/resources/2_0/petstore.yaml#L32

しかし、我々は、特にエンドポイントの多いAPIのために、組織の利益のために別のファイルにAPIエンドポイント/オペレーションを置くためにtagsを活用するためにあなたをお勧めします(例:500+)

関連する問題