- ベンチマーク最速を謳うフレームワーク
- デバイスを選ばず利用できるという特徴があるため、デスクトップやWebサーバー、スマートフォン、ラズベリーパイなどどのデバイスでも高速な動作が実現できます。
- Express.jsライクな、Go言語フレームワークです。Node.jsで開発を行ったことがある人ならば学習コストが低く最良なフレームワークです。
- Express.js ライクなフレームワーク
- Node.jsのフレームワーク である、Express.jsに似たコーディングが可能です。
- Express.js を使用したことがある人ならば、すんなり覚えることが可能です。
- MVCアーキテクチャ
- MVCアーキテクチャを使用しており、コード管理がしやすく開発者とデザイナーでそれぞれ役割分担を行えます。
- 様々な機能がバンドルされている
- あらかじめ開発に必要な機能がバンドルされており、それらの機能をインポートするだけで利用できます。改めてGo言語パッケージを選定する必要がないため非常に効率的な開発を行えます。
- 処理能力はMartiniの約40倍と言われています
- ミドルウェアが豊富であり、アプリケーションのエラー停止「クラッシュ」が起こらないようにサポートする機能が付いているのも特徴です。定期的にアップデートもしているのでセキュリティも堅牢です。
- EchoはRESTful API向けのフレームワークとなっており、小規模~中規模のWebアプリ開発に適しています。
- マイクロフレームワーク
- 必要最低限の機能しか提供していないので、他機能と競合することがなく必要な機能はプロダクトによってカスタム可能です。
- ミドルウェア作成のサポート
- Echoはミドルウェアの作成をサポートします。
- ミドルウェアはそれぞれの機能の合間に必ず実行する処理を記載することができます。これにより開発効率とコード短縮を期待できます。
$ go get github.com/labstack/echo
- MVCフレームワーク
- PHPのCakePHPやJavaのSpringを使ったことがある人は学習しやすい フレームワーク です。
- MVCアーキテクチャ のサポート
- Revelは、MVCの作成をサポートします。
- MVCはModel,Vuew,Controllerを分けることができ、チーム開発で担当を分けることが可能かつ、機能の再利用が容易になります。
- 高パフォーマンス
- Revelは、メモリ効率が非常に高く使用することで高いパフォーマンスを期待できます。
Beego †
- Beego(ビーゴ)は処理速度が速く、メンテナスがしやすいです。また、公式のドキュメントも充実しています。
- このフレームワークは、「アプリケーション」・「API」の開発やエンドサービスに向いていますよ。Beego(ビーゴ)は、フレームワークの初心者におすすめします。
- 多くの機能を提供している大規模アプリケーション開発に最適な Go言語フレームワーク です。
- 多機能であり、Restful API,Webアプリ,バックエンドサービスなどの開発をこれ一つで構築することができます。
- RubyのSinatraをもとに設計されているフレームワークで、オブジェクトとリレーショナルデータベースの相互変換を行うORM(ORマッパー)や専用のCLI(コマンドラインインターフェース)、自動テストなど機能が豊富
- 処理速度が速く、Webアプリケーション、API、バックエンドサービスの開発に向いています
Goji †
Mango †
- モジュラー型のフレームワーク
- シンプルなフレームワークで、ミドルウェアとアプリケーションが関数型で記述されているという特徴があるため、自己完結することができます。
Gorilla †
- 拡張性の高いルーティング機能を提供しているモジュラー型のフレームワーク
- Goのフレームワークの中でも人気のあるフレームワークで、静的型付けをサポートしています。
- Express.jsライクなフレームワーク
- node.jsフレームワークである、Express.jsライクな書き方で開発できます。
- Express.jsを使用したことがある人ならば、すんなりキャッチアップできます。
- Web Socketと静的コンテンツキャッシュのフルサポート
- デフォルトで機能サポートされているため、モジュールを選定・インストールする必要がありません。
Martini †
マイクロサービス向き †
Micro †
- 「micro(マイクロ)」は、「サービス開発のパッケージ」と「高度なサービス運用の開発」の2つの要素を持っています。アップデートは定期的に行われていますが、情報量や事例が多くありません。
- 「micro(マイクロ)」はGo言語以外にも利用できるため、多くのミドルウェアを持っていますよ。
Goa †
kit †