このページの本文へ

どこでどうやってコードを書く?:ベストな無料オンライン・コード・エディタの選び方

2014年08月27日 07時00分更新

文● Lauren Orsini via ReadWrite

  • この記事をはてなブックマークに追加
  • 本文印刷

Cloud9、Koding、Nitrous.IOの考察

MTIzMDQ5NjYzODM4NDU1MzA4_0

はじめてのコーディング・プロジェクトを始める準備はできましたか?すばらしい!では、まず設定をしよう。ターミナルまたはコマンド・プロンプトの使用方法を学び、必要な言語、アドオン・ライブラリ、APIのインストールしよう。これらすべて終えてやっと、タスクのプレビューに使用するVisual Studioをインストールできるようになる。

以前はこんな準備が必要だった。

だから、コーダーがオンライン統合開発環境(IDE)に目を向け始めているのも不思議ではない。オンラインIDEは、コンピュータに使用する言語や開発環境をインストールする手間を節約してくれるコード・エディタであるからだ。

私は典型的なオンラインIDEの構成について詳しく学びたいと思ったので、最も人気がある無料クラウドベース統合開発環境、Cloud9KodingNitrous.IOの3つを試してみた(有料アップグレードあり)。その過程でプログラマーがどういった場合にIDEを使うのか、使わないのか知ることができた。

なぜオンラインIDEを使うのか

Microsoft Wordのようなテキストエディタを例にすると、GoogleドライブがクラウドベースのIDEと言うことができるだろう。同様の機能を利用できるうえ、どのコンピュータからでもアクセスでき、共有も簡単だ。プロジェクト・ワークフローにインターネット環境が必要になってきており、オンラインIDEは非常に便利だ。

私は、Pythonで書いたYoに似た非常にシンプルなメッセージ・アプリの作成方法をReadWriteに書いている。その際、私はNitrous.IOを使っていたのだ。オンラインIDEを使用する場合、オンラインIDEの仮想マシン(VM)は特定の言語でのみ機能するので、テストやプレビューには言語を選択する必要がある。

関連記事:Angular, Ember, Backbone:どのJavaScriptフレームワークを選ぶべきか?

その記事を読めば、私のアプリはメッセージ・サービスTwilioとFlask(Pythonの軽量なウェブアプリケーションフレームワーク) の2つのAPIライブラリのみを使用していることがお分かりになるだろう。この程度であれば、自分のPC上でテキストエディタとターミナルを使って開発するほうが簡単だったはずだ。しかし私はある利点を考慮して、オンラインIDEを選んだ。読者が同じ開発環境を使用すれば、記事の内容を理解しやすいと思ったからだ。

オンラインIDEのデメリット

現在のところ、クラウドベースのIDEは、長期的なホスティング・ソリューションとは言えない。

クラウドベースのIDEで作業すれば、あなたはクラウド内でアプリを開発、テスト、プレビューすることができる。リンクを介して最終案を共有することもできる。

しかし、クラウドベースのIDEを使用した場合、永久にプロジェクトを保存することはできない。あなたはGoogleドライブ・ドキュメントを選択し、記事を保存したからといって、自分のブログを破棄したりはしないだろう。GoogleドライブとIDEのコンテンツ・シェア機能は使えるが、本物のホスティング・サービスの代わりにはならないのだ。

しかも、クラウドベースのIDEでは、広く共有することができない。高機能のものであれば、テキストエディタのプレビュー機能が追加されている。しかし、アプリのプレビュー機能は友人、同僚といった範囲に限定され、Hacker Newsのフロントページのように多くの人との共有はできない。もしそんなことをしたら、トラフィック増が原因であなたはIDEを使えなくなるだろう。

上記のようなことから、クラウドベースのIDEはアプリを構築し、テストするための場所、ホストはそれを動かすための場所と考えている。あなたはアプリを完成させたら、Herokuのような無料のホスティングを候補にし、長期的にクラウドベースのサービスにデプロイしたいと思うだろう。

オンライン IDEの選択

MTIzNjEzMTg5MjA2NDc2MzAy

オンラインIDEが、人気になるにつれて、新しいものが次々に出てくる。私見だが、完璧なオンラインIDEはないと思う。しかし、いくつかのオンラインIDEは、特定の業務プロセスにおいて非常に優れた選択肢といえる。

私は、最も人気がある無料クラウドベース統合開発環境、Cloud9KodingNitrous.IOの3つを試してみた。それぞれに得意とする分野がある。以下にそのことを述べよう。

Cloud9:コラボレーション機能

私がCloud9へサインアップしたとき、初めにGitHubとBitBucketアカウントをCloud9と統合するよう促された。試してみると、GitHubのプロジェクト用、個人用、共同作業用リポジトリは、すぐに複製されてCloud9の開発ツールで扱えるようになっていた。他のオンラインIDEでは、このレベルでGitHubを統合できない。

3つのオンラインIDEのうち、Cloud9は私と共同コーダーとの間に、シームレスな作業環境を提供する点において最も優れていた。これは単にチャット機能のことを言っているのではない。実際、最高経営責任者(CEO)ルーベン·ダニエルズは、Cloud9では、リアルタイムでお互いのコーディング見ることができる。これはGoogleドライブの共同編集と同じようなものだ、と述べた。

「ほとんどのサービスにおいて共同作業機能は、1つファイルでのみ有効です。しかし当社のものは、プロジェクト全体のファイルで機能します。共同作業機能は、IDE内に完全に統合されています」ともダニエルズは語っている。

Koding :ヘルプ機能

オンラインIDEは、オープンソース言語を使ったアプリの構築とテストに必要なツールを提供する。初心者にとっては、少しとっつきにくいかもしれない。例えば、私がPython、Rubyの両方のコンポーネントを使用してプロジェクトに取り組んでいる場合、どのVMを使ってテストしたらいいのだろうか?

テスト用のVMをオンにするだけで、1回でテスト可能だ。無料アカウントであってもだ。その機能はKodingのダッシュボードにあり、Kodingプロジェクトについてユーザーが助言をしあう場所にもなっている。助言を求めて、すぐに貰える場所と言ったら、上記3つの中でここが一番だ。

「私たちのサービスには、活発なコミュニティがあります」とニティン·グプタ、Kodingのチーフ·ビジネス·オフィサーは語っている。「私たちは、助けを必要とする人、誰か支援したい人にとって非常に魅力的な環境を作りたかったのです」。

Nitrous.IO:場所を問わないIDE

デスクトップ環境を差し置いてオンラインIDEを使用する究極の利点は、それだけで作業が完結するということだ。オンラインIDEを使うために何かをインストールする必要はない。一方、自分で構築したデスクトップ環境の究極の利点は、ローカルで作業可能ということだ。インターネットも必要ない。

Nitrous.IOは両方の長所を備えている。IDEをWebでも使えて、自身のコンピュータにダウンロードすることもできる、と共同設立者AJ・ソリミンは語っている。Nitrous統合環境で好みのテキストエディタを使用できるのだ。

「当社のオンラインのWeb IDEを経由して、任意のWebブラウザからNitrous.IOにアクセスできます。当社はまた、好みのエディタで編集を可能にする、Windows用とMac用の便利なデスクトップ・アプリケーションもあります」とも彼は語っている。

結論

私が3つのオンラインIDEを一週間使用して学んだ最も驚くべきことは何か? 3つが非常に似ているということだった。基本的なコーディングにおいては、どれも同じぐらい便利だ。

Cloud9、Koding、Nitrous.IOは、主要なオープンソース言語をサポートしている。Ruby、Python、PHP、HTML5といったものだ。VMはサポート言語のものがどれでも選択可能だ。

Cloud9とNitrous.IOでは、GitHubとの統合をワンクリックで行うことができる。 Kodingでもいくつかのステップを踏めば可能だ。

どのオンラインIDEもAPI統合が簡単だった。私の好きなパッケージ・インストーラもインストール可能だ(Kodingではsuperuserアカウント必須)。ターミナルも備えていて、テストや開発も容易。3つとも、簡単にプロジェクトをプレビューすることができ、当たり前だが、プロジェクトはクラウド内にあり、どこでも作業できる。

一方で、3つとも同じ欠点を持っていた。これらが無料と考えると理にかなっている。特定の言語で書かれたプログラムのテストの際には、1度に1つのVMのみ実行可能な点だ。しばらくの間、VMを使用していないと、オンラインIDEはVMを休止状態にし、処理能力を確保しようとする。次に使用する際は、再読み込みを待つ必要がある(Cloud9は特に面倒だった)。また、どのサービスも、完成したプロジェクトを永久にホストするには適切とは言えない。

そういったわけで、無料で完璧なオンラインIDEがあるかと聞かれると、おそらく答えはノーだ。しかし、何を優先するかによって、あなたのプロジェクトに最適なものがあるかもしれない。

トップ画像提供:Shutterstock

Lauren Orsini
[原文]


※本記事はReadWrite Japanからの転載です。転載元はこちら


週刊アスキー最新号

編集部のお勧め

ASCII倶楽部

ASCII.jp Focus

MITテクノロジーレビュー

  • 角川アスキー総合研究所
  • アスキーカード
ピックアップ

デジタル用語辞典

ASCII.jp RSS2.0 配信中