SwiftSwiftで使えるWEBフレームワーク7選!特徴や使い道まとめ佐野裕史2016/9/262019/6/28SwiftではどんなWEBフレームワークがあるの?WEBフレームワークはたくさんあるけどそれぞれの特徴が知りたいこんにちは!インストラクターの佐野です。Swiftがオープンソースとなってからすでに3年以上の年月が経ちました。以前と比べて、SwiftでWEBサーバー作ってみたという声が増えてきましたね。Swiftで開発できるWEBフレームワークがたくさん誕生しています。WEBフレームワークの種類がありすぎてどれを使えばいいのか?わからなくてお困りではないでしょうか?そこで、今回はあらためてSwiftで使える各WEBフレームワークの特徴や使い道、実践で使えそうなWEBフレームワークはどれなのかをまとめました。Swift開発者の助けになれば幸いです。最近ですが、SwiftでのWEB開発はどんどん活発になってきました。Swiftが発表された2年前はWEB開発をする人はごく一部でしたが、多数のWEBフレームワークの登場により検証が繰り返され実践でも使われるようになっています。WEB開発には「Ruby」「Python」「PHP」だけではなく、Swiftも候補に入れておく必要があるでしょう。Swiftでフレームワークを使用するにはWEBサーバーの知識が必要です。これといったWEBフレームワークがないので、使い方を自分で学んでコーディングしていく必要があります。初心者にとっては非常に辛い部分ですが、WEBの知識と英語のドキュメントが読むことができれば、初心者でもアプリとWEBサーバーの両方をSwiftで開発することも可能でしょう。そもそもフレームワークって何?ライブラリとの違いは何?という方は、以下の記事にフレームワークについての詳細な解説をしていますので参考にしてください。現在あるSwfitのWEBフレームワークは以下のようなものがあります。Serverとして機能それぞれの詳細について見ていきましょう。http://perfect.org/Appleは12月の初めにSwiftをオープンソースとして公開しました。それとほぼ同じ時期にリリースされたのが「Perfect」です。最初に登場したWEBフレームワークでしょう。このWEBフレームワークは噂によるとカナダ在住の方がほとんど一人で作られたそうです。OSで動くWEBアプリケーションやWEBサーバーを作ることができちゃいます。自分で用意したサーバー環境で使うことができるので自由度が高そうです。Perfectがほぼ同時に登場したおかげで、1つのプログラミング言語(Swift)だけで、フロントエンド(iOSアプリケーション)とバックエンド(Webアプリケーション)の両方をいきなり開発できるようになりました。http://www.kitura.io/Kitura(キトゥーラ)は、あの有名なIBM社が2016年2月22日に発表したフレームワークです。Bluemixという同社のクラウド環境上(herokuやcloud9などと同じPaaSというサービス)で動作するWEBアプリケーションやWEBサーバーを作ることができます。IBM社が開発しているだけあって開発は活発に行われています。https://vapor.codes/Vaporは、最近はどんどん人気をあげているWEBフレームワークです。MacOSとLinuxのUbuntu上で動作します。PHPのフレームワーク「Laravel」に影響を受けたフレームワークなので、非常に効率的に開発ができます。API、クラウドサービスを作るための便利な機能が提供されています!ぜひ次のWEB開発で使われてみてはいかがでしょうか。http://swiftexpress.io/Expressは、非同期、シンプル、強力なWEBアプリケーションを作ることができます。RailsやLaravelなどと同じ拡張性に優れたMVCによる開発がサポートされています。シンプルなルーティングのメカニズムやテンプレート機能が提供されているので、WEB開発者は使いやすいでしょう。CocoaHTTPSwiftServerは、MaxOSアプリを構築するためのフレームワーク「Cocoa」を拡張するフレームワークです。WEBの基礎技術である「HTTP」をiPhoneなどのiOSアプリと連携できるように改良されています。シンプルな機能しか提供していませんが、もともとMacに組み込まれているCocoaを拡張しているので統合性が高く、サーバー機能を使う為の最もベストな方法だと言われています。Railsに影響を受けたWEBフレームワークです。LinuxとMaxOS上で動作します。Rails風に書くことができるので、Railsに慣れている方であれば一番使いやすいでしょう。MysqlやPostgreSQLなどのデータベースもサポートされています。https://github.com/noppoMan/Slimane先ほどのExpressに影響を受けた最新バージョンのSwift3に対応しているWEBフレームワークです。非同期通信に強く、非同期に関わる機能はほぼ対応しているといっていいでしょう。Serverとして機能するので、扱いやすいです!ぜひ今後発展してほしいWEBフレームワークです!SwiftでのWebアプリ開発をより効率的に進めるには?SwiftでのWebアプリ開発はまだ他の言語に比べると発展途上ではありますが、現状でもここまで多くのWebフレームワークがあります。将来的にはWebアプリ開発はSwiftと呼ばれる時代がくるかもしれませんね。SwiftでのWebアプリ開発はあくまでも発展途上の段階です。他の言語に比べると参考となる資料や書籍がまだ多くありません。そのため、独学での学習は通常よりも難しいと言えます。独学でのプログラミング学習には1000時間ほど必要と言われています。その理由は教材が足りないこととモチベーションが続かないことが要因です。それらを解決するためにはプログラミングスクールへ通うことをおすすめします。手前味噌ではありますが、弊社「侍エンジニア塾」では、お一人お一人に専属のインストラクターがつくので、通常のスクールでは難しいオリジナルアプリ開発や、フリーランスとしての仕事獲得までを徹底的に支援しています。未経験からSwiftを効率よく学習するコツアプリ制作ができるようになった人のキャリアSwift以外にも身につけておくべきスキルなど、IT業界に精通したコンサルタントがただの言語習得ではなく、あなたのキャリアを見据えた上でのコンサルティングを行います。私でもプログラミング出来るようになるのかな...スキルやノウハウを身につけて成長したい...そんな熱い気持ちを持ったあなたを弊社では全力でサポートいたします。下記のカレンダーより、お気軽にレッスンへお越しください。まとめいかがでしたでしょうか?まだまだ発展途上のWEBフレームワークですが、どんどん実用的なものがでてきています。SwiftでのWEB開発も当たり前になってくるのではないでしょうか。実用で使われるケースも出てきているので、これからもっと発展していくでしょう。SwiftのWEBフレームワークからは目が離せません。今後が楽しみですね!TweetPocket無料でSEからWebエンジニアへ転職しませんか?侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、システムエンジニアという職業だけどコードが書けない事務作業が多くスキルがないため将来が不安スクールに通うと完全未経験者と同じスタートになるからレベルが合わないという、すでに知識があるSEならではのお悩みがあることに気づきました。弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。こちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。侍エンジニア塾インストラクター。様々な業界を経てIT業界に参入。IT未経験からスタートし、1ヶ月で仕事獲得に奇跡的に成功。1年半後にフリーランスに転身。Web開発を主に行っており、得意とするのはRails、Ruby。自分でプログラミングができない人のために情報を発信しています。お気軽にフォローください。