プログラミングの際、ソースコードを書くところからデバッグ、そしてコンパイラまでを一つのソフトウェアで開発したいという要望があるでしょう。
そんな時、エンジニア(プログラマー)は「統合開発環境(IDE)」を使うことが多いです。
それでは、統合開発環境(IDE)とはどのようなものなのでしょうか。どんな種類があって、それぞれ、どういう言語での開発に向いているのでしょうか。
本記事では、統合開発環境(IDE)の機能から、定番やプログラミング言語別の統合開発環境のおすすめなどを一挙紹介します。
※2019年03月08日編集:この記事は、現役エンジニアによって監修済みです。
※記事内の情報は2023年12月執筆時の内容です。最新の情報は公式サイト等でご確認ください。
この記事は現役エンジニアによって監修済みです。
この記事の目次
統合開発環境(IDE)とは
もともとシステム開発は、テキストエディタでソースコードを書き、コマンドライン上でコンパイルコマンドを叩く、というやや不便な環境で開発を行っていました。
デバッグするならデバッガ。コンパイルするなら、コンパイラとバラバラのソフトが必要。開発に必要なツールを全てバラバラに揃え、バラバラに使わないといけなかったのです。
しかし現在は違います。サーバーサイドのコーディングだけでなく、GUIの開発など、ITエンジニアに求められる仕事は増大。
プロジェクト管理の難易度も上がり、ITサービス開発の負担は格段に大きくなっています。そのため、その負担を軽減しようという開発環境が出てきているのです。
それが、テキストエディタ・コンパイラ・デバッガなど、開発ツールを1つにまとめた「IDE」です。IDEを日本語に訳すると、統合開発環境となります。
Webシステムやサービス、スマートフォンアプリなど、現在の統合開発環境は、さまざまなITシステムやプログラミング言語に対応しています。
今や、統合開発環境なくしてシステム開発・アプリ開発は成り立ちません。
この記事もオススメ
統合開発環境(IDE)にはエディタ・コンパイラ・デバッガなどが含まれる
ソフトウェアを開発する場合、一般的には、作業の各段階に応じた複数のソフトウェアを使い分ける必要があります。
プログラムのソースコードを書くためのエディタ。ソースコードからオブジェクトコードを生成するためのコンパイラ。
ターゲットとなるCPU向けの実行コードを生成するリンカ。そして作成したプログラムのバグを検出するために使用するデバッガなどです。
統合開発環境の登場以前は、ファイル構成が複雑になればなるほど、ファイルの管理自体も複雑化していました。
そのため、いざという時に必要なファイルが見つからなかったり、ソースコードのバージョン管理ができないなど様々な問題が発生しがちでした。
統合開発環境(IDE)とは、ソフトウェアの開発で利用されるこれらのソフトウェアを、その他の支援ツールなどとまとめてしまい、統一的に扱えるようにしたものです。
この記事もオススメ
ソースファイルの構成管理やビルド・デバッグが可能
統合開発環境には、様々な種類が存在します。どの統合開発環境を選ぶかによって、厳密にはできることは異なります。
ただ一般的には、以下のようなことが可能になっていることが多いです。
- ソースファイルの構成管理
- ビルドの自動実行
- デバッグ
またソースコードのローカル環境での管理だけでなく、Gitなどと連携することにより、チームメンバー間での共有なども行えるようになってきています。
特に大型の案件になればなるほど、ソースコードなどのリソース管理が大変になってきます。
従って、現在のIT企業の開発では、統合開発環境(IDE)を利用、導入するのが一般的です。
ソースコードのバージョン管理やファイルの構成管理などは、統合開発環境の登場以前と以後で、大きく効率が変わった1つの例と言えるでしょう。
統合開発環境(IDE)とフレームワークの違い
統合開発環境(IDE)は、アプリケーション開発に必要なソフトウェアをまとめて1つにして提供するパッケージです。
このように書くと、「統合開発環境(IDE)はフレームワークと何が違うのだろう?」と疑問に思う方もいるでしょう。
ここでは、統合開発環境(IDE)とフレームワークの違いを見ていきます。
フレームワークとは
フレームワークとは、アプリケーション開発における「雛形」の役割を担います。フレームワークは開発の際に必要とされる機能を、まとめて提供します。
アプリケーションの全体の処理の流れを、分かりやすくクリアに管理できるのがフレームワークのメリットです。
例えば、Webアプリケーション開発向けフレームワークの代表例である「Ruby on Rails」では、デザインパターンである「MVC(Model View Controller)」を導入。
全体の処理を「Model」「View」「Controller」の3つに分けて管理します。
IDEとフレームワークの違い
統合開発環境(IDE)は、エディタやコンパイラをまとめて提供する「開発環境」そのものです。日本語の「統合開発環境」という言葉の意味通りの機能を、IDEは提供します。
一方、フレームワークはアプリケーション開発の工程を楽にするものです。
統合開発環境(IDE)の人気ランキング
Stack Overflowが毎年発表している『Developer Survey 2023』によると、2023年の統合開発環境の人気ランキングTOP10は以下の通りでした。
出典元:Stack Overflow
- 第1位:Visual Studio Code(73.71%)
- 第2位:Visual Studio(28.43%)
- 第3位:IntelliJ IDEA(26.82%)
- 第4位:Notepad++(24.54%)
- 第5位:Vim(22.29%)
- 第6位:Android Studio(16.82%)
- 第7位:PyCharm(14.63%)
- 第8位:Jupyter Notebook/JupyterLab(12.74%)
- 第9位:Sublime Text(12.61%)
- 第10位:Neovim(11.88%)
上記の通りで、Visual Studio Codeが70%以上の支持率で人気を独占している状況。
この記事もオススメ
【定番】統合開発環境(IDE)のおすすめ4選
統合開発環境は数多くリリースされています。本章ではその中でも、現在の開発で良く使われる定番のIDEを4つ厳選して紹介。
- Eclipse
- Xcode
- Android Studio
- Visual Studio
統合開発環境は、ターゲットとしているOSや動作環境が異なります。どういうソフトウェアやアプリケーションを開発したいかによって、最も適したものが変わります。
この記事もオススメ
Eclipse
最初に紹介するのは「Eclipse」です。
もともとはJavaを扱う統合開発環境として、IBMが商用製品として開発していました。
後にオープンソースプロジェクトに寄贈され、現在では様々なプログラミング言語に対応している言語としては、C言語、C++、PHP、Rubyなどがあります。
Eclipseをダウンロードする際は、Eclipse本体と日本語化プラグインなどの便利ツールをパッケージ化した「Pleiades All in One」がおすすめです。
Eclipseは無料でダウンロード可能。
プラグインの追加で機能拡張可能
EclipseはPlugin(プラグイン)と呼ばれる拡張モジュールを追加することによって、さまざまな機能を追加できるようになっています。
これが多くの開発者に指示されている理由と言って良いでしょう。
ソースコードを即実行
Eclipseではエディタで書いたソースコードを、即実行できます。
特にJavaで利用する場合、ローカルにJavaをインストールしておけば、すぐに結果を試すことができます。コンパイルの手間が大幅に削減されるのが利点です。
また、デバッガやコンソールを利用すれば、どういうバグがあり、どういうログを出力したのかなどが一目でわかるようになっています。
このように、各ソフトウェア機能を搭載したサブウィンドウがそれぞれの役割を持っており、連携しながらプログラムを開発できるのです。
Xcode
出典元:Apple
iOS用のアプリを開発するのであれば、「Xcode」が便利です。
Xcodeは、Appleが無料で提供している開発ツール。iOSはもちろん、macOSやwatchOSなど、Apple製品に対するソフトウェアやアプリを開発できる統合開発環境です。
Mac App Storeからダウンロードできますので、Apple IDさえ取得すれば誰でもすぐにプログラミングを始めることができます。
ソースコード、画像ファイルなどを一元管理
Eclipseと同様、プロジェクトで利用するソースコードや、画像ファイル、音声ファイル、アイコンなどを一元管理できるようになっています。
Interface Builderで画面を設計したあと、Objective-C言語またはSwift言語のどちらかでプログラムをします。
プログラムした後、コンパイルやデバックまでできるようになっています。
iOS用のアプリを作成するには、大変重宝する統合開発環境です。ただし、Macでしか動作しない点には要注意です。
Android Studio
出典元:Google
Android用のアプリを開発するのであれば「Android Studio」がおすすめ。
これは、GoogleがAndroidアプリ開発用に公開している無料の統合開発環境(IDE)です。
Androidアプリのソースコードの作成から、ソースコードをアプリとしてインストールできる形式に変換するビルド作業までを一括して行う事ができます。
Android Studioは、Windows・Mac・Linuxと、マルチプラットフォームで動作します。好きなOS上で開発を行うことが可能な点は、大きなメリットです。
また、Androidは流通しているOSのバージョン、端末の開発メーカーが多岐に渡ります。
これを解決するため、Andoird StudioではIDE上で仮想デバイスを作成可能。さまざまな端末条件でのデバッグが行えることもメリットです。
ただし、やはり最後には実機での動作確認をする方が望ましいでしょう。
この記事もオススメ
Visual Studio
出典元:Microsoft
最後に紹介するのはWindowsの開発環境として長年使われている「Visual Studio」です。
Microsoft(マイクロソフト)により、Windows向けアプリケーション開発用の統合開発環境としてリリースしたものです。
.NET Frameworkをベースとして、Visual Basic、C++、C#などのプログラミング言語によって開発が可能です。
ボタンなどの部品の見た目を統合するために、初期の段階からリソースを用意していたこともVisual Studioの特徴。開発者にとって、使い勝手の良い統合開発環境です。
また、2016年2月には、Microsoft(マイクロソフト)がクロスプラットフォーム開発のできる「Xamarin」を買収しました。
これにより、AndroidやiOS用のアプリも開発できるようになりました。Visual Studioは個人利用については無料でダウンロード可能。
【プログラミング言語別】統合開発環境(IDE)のおすすめ
ここでは、プログラミング言語別に、おすすめ統合開発環境の種類を紹介していきましょう。
- Java
- Swift
- C#
- Python
Java
出典元:Oracle
大型のWebシステム開発案件で良く使われている「Java」。Androidアプリ開発でも、Javaは主流言語の1つです。
そもそも、Javaはサン・マイクロシステムズが開発を始め、その後オラクルが管理をしているプログラミング言語。
クロスプラットフォームで利用できるソフトウェアの開発のための言語です。
登場当初からオラクル以外にも、IBMなどが積極的に開発ツールなどを提供していました。そのためもあって、様々なツールが整備されています。
オープンソースのオフィス製品である、ApacheのOpenOffice.orgやLibreOfficeなども、Javaで開発が行われています。
そんなJava開発でおすすめのIDEは「Eclipse」「Android Studio」「IntelliJ IDEA」です。
この記事もオススメ
Eclipse
Webシステムを開発するのであれば、主流のIDEはEclipseです。
もともとIBMが開発していた統合開発環境をオープンソースプロジェクトに寄贈したものですので、ツールとしての完成度は大変高いものがあります。
Eclipseの特徴として、様々な拡張プラグインを設定できる点があります。
特に、Javaを実行するアプリケーションサーバーであるTomcatやJBossと連携できるプラグインをインストールすれば、動作確認をEclipse上でできます。
そのためEclipseは、Webアプリケーションの開発環境としては極めて高いレベルで整備されていると言って良いでしょう。
もちろんデスクトップアプリ開発であっても、Eclipseを使うと開発が楽です。
Android Studio
Android Studioは、GoogleがAndroidアプリの開発用に準備した統合開発環境です。
Androidアプリ開発に特化しています。そのため、仮想端末環境などが整備されていて、実際のAndroid端末がなくても、開発環境上で動作を確認できます。
ただし、Androidアプリの開発に特化していますので、JavaでデスクトップアプリやサーバーサイドのServletなどを作る場合には、Eclipseなどの他のIDEを使うようにしましょう。
IntelliJ IDEA
IntelliJ IDEAは、Windows/macOS/Linuxで使えるマルチプラットフォームのIDEです。
環境構築が容易なことや便利なプラグイン・ツールが最初から入っていることなどから、Java開発者の約80%がIntelliJ IDEAを愛用しています。
IntelliJ IDEAには有料のUltimate版と無料のCommunity版があります。Java開発で基本的なことは無料版でできるので、まずは試してみてください。
Swift
出典元:Apple
現在のiOSでは、サービス開発には「Swift」が推奨されています。
それまではC言語をベースとしたObjective-Cで開発が行われていました。しかし今は、よりiOSに特化した言語として、SwiftをAppleが提供しています。
インタラクティブに実行しながら動作を確認できますので、ちょっと書いては動かす、という事ができるようになっています。
SwiftやJavaやObjective-Cに比べるとサービス開発がしやすいと言われています。
特に、Objective-CはApple製品の開発用として、特殊な構文が多い特徴がありました。
そのためObjective-Cは、汎用的に利用するには高いハードルがあったのも事実です。
それを、多くの人に使ってもらいやすいように、Swiftでは「ソースコードが読みやすくて書きやすい」という特徴があります。
また、PHPのような変数型の動的な変更を許可せず、Javaと同じ様にきっちりと型変換をしないといけません。この辺がバグを出しにくい仕様なのです。
この記事もオススメ
Xcode
Xcodeは、AppleがiOSのアプリ開発用に提供した統合開発環境です。もしSwiftで開発を行うのであれば、基本的にはXcodeを利用することになります。
またmacOS用のアプリも開発可能ですので、Apple製品用のアプリを開発する際には最適。
近年はiOSとAndroid両対応のクロスプラットフォーム開発も盛んですが、あくまでiOS向けに安定的な動作をするアプリを作るならXcodeは必須です。
C#
「C」という言葉が入ってはいますが、C言語やC++言語の後継ではありません。
「C#」はMicrosoft(マイクロソフト)が開発した言語で、C言語の欠点を改良したJavaに刺激を受けて、C言語風に作られたプログラミング言語だと言われています。
.NET Frameworkの一部でもありますので、Windows用のソフトや、ユニバーサルアプリを開発する上では、C#が便利であると言われています。
また、Xbox用に開発されたジェスチャー検出センサーであるKinectや、MR端末であるHoloLensなどのアプリケーションはC#での開発が推奨されています。
C#開発でおすすめのIDEは「Visual Studio」と「Unity」です。
この記事もオススメ
Visual Studio
C#開発では、Microsoft純正の統合開発環境である「Visual Studio」がおすすめです。
Visual Studioのプランのうち、Communityエディションは、個人向けに無償で提供。企業向けにはProfessionalやEnterpriseエディションを利用します。
これはオープンソースプロジェクトの開発や、トレーニング/教育/学術研究を目的とした場合には人数の制限なく使えるものです。
オンラインでのチーム開発やソースコード管理ができる様になっていますので、ソースコードを共有しながらの開発が可能なようになっています。
iOSやAndroid向けのアプリも開発できるクロスプラットフォーム開発環境なので、Windows・iOS・AndroidのアプリをVisual Studio1本で開発できます。
Unity
C#を使ったゲーム開発に興味があるなら、さまざまな有名タイトルにも採用されているゲームエンジンの「Unity」を使ってみましょう。
Unityはゲーム開発者向けに特化した豊富な機能を提供しています。一例としては3Dグラフィックス、物理エンジン、アニメーション、サウンド処理などです。
そしてUnityとC#の組み合わせはゲーム開発の世界では主流で、開発者コミュニティも活発。質問への回答やコードの共有も多く、学習や問題解決もスムーズに進むでしょう。
小規模開発にとどまり、過去12 か月の収益が10万米ドル以下の条件を満たせば無料版を使えるので、C#の勉強にUnityを採用してみてください。
Python
出典元: Python Software Foundation
「Python」は、シンプルで可読性の高い構文が特徴のプログラミング言語です。
その汎用性と拡張性の高さから、小規模なアプリ開発からAI・データ分析などの先端技術開発まで、さまざまな開発現場で採用されています。
世界的に需要のあるプログラミング言語なので、コミュニティも広大で学習する上で教材も豊富にそろっており、初心者にもおすすめ。
Python開発でおすすめの統合開発環境は、以下の3つです。
- PyCharm:Python特化のIDEでさまざまなOSに対応している
- IDLE:Pythonに付属した専用IDEでCUIベースのシンプルな機能性
- Visual Studio:今後ほかの言語も学習する予定ならこちらがおすすめ
上記の通りで、PyCharm・IDLEはPython特化型のIDEで、Visual Studioは多機能型のIDE。今後の学習スタイルに合わせて選んでみてください。
この記事もオススメ
目的に適した統合開発環境(IDE)を選ぼう
統合開発環境の機能、統合開発環境の人気ランキング、定番およびプログラミング言語別の統合開発環境のおすすめまで紹介しました。
どの環境を利用するのかは、どのOSや言語をターゲットにした開発を行うのかを考えて選択すると良いでしょう。
Webシステム開発であればEclipseがイチオシですし、iOS・Android向けはそれぞれの統合開発環境を利用しましょう。
また、今後も新たな統合開発環境が開発されるかもしれません。その際にも、しっかりと対象に向いた統合開発環境を選ぶ事で、効率的に開発が行えるはずです。
はじめての転職、何から始めればいいか分からないなら
「そろそろ転職したいけれど、失敗はしたくない……」そんな方へ、テックキャンプでは読むだけでIT転職が有利になる限定資料を無料プレゼント中!
例えばこのような疑問はありませんか。
・未経験OKの求人へ応募するのは危ない?
・IT業界転職における“35歳限界説”は本当?
・手に職をつけて収入を安定させられる職種は?
資料では、転職でよくある疑問について丁寧に解説します。IT業界だけでなく、転職を考えている全ての方におすすめです。
「自分がIT業界に向いているかどうか」など、IT転職に興味がある方は無料カウンセリングにもお気軽にお申し込みください。