BT
x あなたのご意見でInfoQが変わる!

サーバでSwingを使用可能にするPerfect

作者: Sergio De Simone , 翻訳者 吉田 英人 投稿日 2016年3月2日 |

原文(投稿日:2016/01/15)へのリンク

Perfectを使えば,AppleのSwift言語を使ったエンタープライズ級のWebアプリケーションが開発可能になる - カナダのスタートアップであるPerferctSoft Incはこう説明する。Appleが先日オープンソース化したSwiftを使ったPerfectは,OSXやLinux, Windows, iOS, Androidといった,複数のプラットフォームにまたがったクロスプラットフォーム開発のサポートを提供している。同社CEOのSean Stephens氏によると,Swiftをクライアントとサーバ両方で採用することによって,コードやロジックの再利用による開発プロセスの効率化が実現すると同時に,Swiftの持つ高レベルの安全性とセキュリティ,パフォーマンスを活用できる。

Perfectを構成するのは,フロントエンドとバックエンドのどちらでも使用可能な一連のコアユーティリティを提供する,SwiftフレームワークのPerfectLibである。クライアント上では,JSONエンコード/デコードとマーシャリングのサポート,バイトストリーム管理,cURLサポート,SQLiteアクセスといった,AppleのSDKがすでに提供している機能を踏襲する。PerfectLibが提供するこれらの機能実装を使用することで,クライアントコードのApple SDKへの依存度が低くなり,バックエンドでの再利用が容易になる。サーバ側に関しては,ファイル管理,プロセス管理とIPC,Mustacheテンプレート解析,状態およセッション管理,MySQLやPostgreSQL, SQLite, MongoDBといったデータベースへのコネクタなど,サーバ上で一般的な機能が含まれている。

InfoQはPerfectの詳細と開発者に提供される内容を理解すべく,Sean Stephens氏に話を聞いた。

あなたのプロジェクトと,Appleがオープンソース化したSwiftとの関連について教えてください。どのような点で,それがきっかけになったのでしょうか?

PerferctはモバイルアプリやApple TV用アプリを開発している人たちに,アプリケーションのサーバ側でもクライアント側と同じようにSwiftを使えるようにするだけでなく,Swiftを使ったWebサイトやWebアプリケーションの開発も可能にします。これはつまり,開発者が自身のアプリケーションのエコシステム全体で同じ言語を使用できることから,開発時間や学習カーブ,構築に必要なコード量の削減が可能になることを意味します。

さらに私たちは,他のプラットフォーム(Androidなど)にもコンパイラを近日中に対応して,一般的なプラットフォームやモバイルなどすべてを,ひとつのネイティブ言語だけにしたいと考えています。

現在のPerfectにはPerfectLibフレームワークが含まれているだけですが, PerfertLibはどのような役割を果たしているのでしょう?

それ以外にも,FastCGI経由のApacheコネクタ(あるいは代用として自己完結型サーバ)も含まれていて,自身でサービスを行なうことが可能です - これはSwiftとスタンドアロンのSDKではできません。さらに元のSwiftには含まれていなかった,開発用の重要なライブラリ(セッション管理,JSON接続など)も追加されています。いずれもモバイル開発では必須ではありませんが,Webやバックエンド開発では重要なライブラリです。

新たなフレームワーク追加などの方法でPerfectLibを拡張して,もっと多くの機能や抽象化を含めることで,サーバ側のソフトウェア開発を容易にするような計画はありますか?

機能や抽象化を増やして,Perfectを拡張しようという計画はあります。いくつかのプロジェクト(ORMなど)はすでにベータテスト中ですし,開発中のものもあります。重要な機能とプロジェクト全体のサイズとのバランスにある程度の目処がついたら,機能セットを拡張する作業を停止して,モジュール形式の機能開発と全体の改善に集中するつもりです。もし開発者が重要な機能を必要としているのであれば,もちろんそれは考慮します。

開発者の日常作業を容易にするために,付加的な構成ツールやサーバ管理ツールなども提供していくつもりです。

Apple以外のプラットフォーム用には,特別なツールやツーリングサポートが提供されるのでしょうか?

私たち自身のSwift開発で,すでにLinux用の他のIDE - SublimeやEclipseなど - を使い始めています。Swiftは一般的なツールですでにサポートされていますから,今後もオーガニックな成長が続くでしょう。これらのプロジェクトが成熟したら,私たち自身も参加できればと思っています。Swiftは現時点で,最も急速に成長し,最も愛された言語です。彼らのフロントシートに私たちも座ることができて,本当に幸せだと思っています。それとも,リアシートでしょうか?

PerfectはGitHubから入手可能だ。

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

翻訳タイトルに誤りがあります by 小川 達也

SwingではなくSwiftだと思いますが、如何でしょうか。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

1 ディスカッション
サイト全般について
バグ
広告
記事
Marketing
InfoQ.com and all content copyright © 2006-2016 C4Media Inc. InfoQ.com and 株式会社豆蔵 InfoQ Japan hosted at Contegix, the best ISP we've ever worked with.
プライバシー
BT

広告ブロッカーを使用されています。

何かの理由で広告ブロッカーを使用されていることと存じますが、InfoQを今後も無料でお使いいただけるようにするために、広告の表示にご協力いただけますと幸いです。InfoQはあなたの許諾なしに第三者にあなたの情報を提供することはありません。広告は読者の皆さんに関連するもののみを表示いたします。広告表示可能なサイトとしてご登録いただけますと幸いです。