ログイン/登录 アカウント

ミドルウェア

IDEとは

统合开発环境(IDE)とはアプリケーション构筑のためのソフトウェアで,复数の一般的な开発者用ツールを1つのグラフィカル·ユーザー·インタフェース(GUI)で使えるようにしたものです.IDEは通常,以下のツールから构成されます。

  • ソースコードエディター:ソフトウェアのコーディングに役立つさまざまな机能を搭载したテキストエディターで,构文の强调表示机能,使用言语に特化した自动补完机能,コードの入力と同时に実行されるバグチェック机能などを备えています。
  • ローカルビルド自动化:コンピュータのソースコードをバイナリーコードにコンパイルする,バイナリーコードをパッケージ化する,自动テストを実行するなど,ソフトウェアのローカルビルド构筑の一环として実行される,シンプルな反复作业を自动化するユーティリティです。
  • デバッガー:他のプログラムのテストを実行し,元のコードでバグの场所をグラフィカルに表示するプログラムです。

IDEを使う理由

IDEを使うと,セットアップ处理として复数のユーティリティを手动で设定して统合する必要がなくなるので,开発者はすばやく新しいアプリケーションの开発に着手できます。また,すべてのツールを同じワークベンチ上で使用できるため,各ツールの使い方を长时间かけて个别に习得する必要もありません。こうした特徴は新しい开発者をチームに迎え入れるときに特に有益で,IDEを使うことですぐにチームの标准ツールとワークフローに习熟できます。実际,IDEに搭载されている机能の多くが时间を节约するためのものです。たとえばインテリジェントな入力补完机能や自动コード生成机能を使えば,文字列全体を入力する必要がなくなります。

その他にもIDEの一般的な机能として,开発者がワークフローを整理したり问题を解决したりするための机能があります。たとえばコードを入力されたその场で解析するので,人间のミスによるバグはリアルタイムで検出されます。このようなユーティリティを1つのGUIで使えるため,いちいちアプリケーションを切り替えることなくさまざまなアクションを実行できます。构文の强调表示も多くのIDEに搭载されている一般的な机能で,视覚的なヒントを使って文法をテキストエディターにわかりやすく表示します.IDEによってはこの他にも,クラスブラウザーやオブジェクトブラウザー,さらに一部の言语に対応したクラス阶层図表示机能も备えています。

IDEを使わずにアプリケーションを开発することもでき,Vim的や的Emacsといった軽量エディターにさまざまなユーティリティを手动で统合して开発者独自のIDEを构筑することも可能です。开発者の中には,このようなアプローチによる非常に高いカスタム性や制御性を好む人もいます。しかしエンタープライズにおいては,先进的なIDEによってもたらされる时间の节约,环境の标准化,および自动化というメリットのほうが他の长所よりも重视されることが一般的です。

今日ではほとんどのエンタープライズ开発チームがユースケースに合わせて事前设定されたIDEを使用しているため,検讨の主眼はIDEを使うかどうかではなく,どのIDEを使うかになっています。

一般的なIDE

IDEのユースケースは技术的なものからビジネス上のものまで幅広いため,市场には数多くのプロプライエタリーIDEやオープンソースIDEが存在しています。一般的に,それらのIDEを区别する大きな特徴は次のようなものです。

  • サポートする言语の数:1つの言语に特化したIDEは,特定のプログラミング·パラダイムにおいてはベターな选択肢と言えるでしょうたとえば,的IntelliJは基本的に的JavaのIDEとして知られています逆に,Java和XML,Python的など多数の言语を幅広くサポートするEclipse中のようなIDEもあります。
  • サポートするオペレーティングシステム:IDEがクラウドベースでない限り,IDEの选択肢はOSによって限定されますまた,开発対象のアプリケーションが特定のOS用である场合(的AndroidやiOS的など),选択肢はさらに限定されます。
  • 自动化机能:ほとんどのIDEには主要3机能(テキストエディター,ビルド自动化,デバッガー)が备わっていますが,それに加えてリファクタリング,コード検索,継続的インテグレーションおよび継続的デプロイメント(CI / CD)のツールをサポートするIDEも少なくありません。
  • システムパフォーマンスへの影响:メモリーを大量に消费するアプリケーションをIDEと同时に使用する场合,IDEのメモリー消费量も重要な検讨事项になります。
  • プラグインと拡张机能:IDEの中には,开発者のニーズや好みに合わせてワークフローをカスタマイズできるものもあります。

モバイル开発用IDE

今や,スマートフォンやタブレット向けに设计されたアプリの隆盛に影响を受けていない业界はほぼ存在しません。そのため,多くの企业が従来の网络アプリケーションに加えてモバイルアプリの开発も行っています。モバイルアプリ开発の重要な要素の1つに,プラットフォームの选択があります。たとえば,新しいアプリケーションを的iOS,安卓,および网络ページで提供する场合,复数のオペレーティングシステムに対応できるようにクロスプラットフォーム·サポートを提供するIDEを使うと良いでしょう。

クラウドIDE

クラウドベースの软件即服务(SaaS)的として提供されているIDEには,ローカル开発环境に対する独自のメリットがいくつかあります。まず,あらゆるSaaS的制品に言えることですが,ソフトウェアをダウンロードしてローカル环境や依存关系ファイルを设定する必要がないため,开発者はすぐに开発を始められます。また,これによりチームメンバー全员の开発环境が一定レベルまで标准化されるため,开発时によくある「こちらのマシンでは动くのにあちらのマシンでは动かない」といった问题を抑制できます。さらに,こうした开発环境は一元的に管理されるため,コードは开発者个人のコンピュータではなくサーバー上に保管されます。これは知的财产の管理やセキュリティに关する悬念の解消に役立ちます。

プロセスがローカルマシンに与える影响も异なります。ビルドの実行やスイートのテストは通常​​,重い处理负荷を伴います。そのため,このようなプロセスを実行中のワークステーションで他の作业ができなくなることもあります。しかし、SaaS 形式の IDE であれば、そうした長時間を要するジョブを実行してもローカルマシンのコンピュートリソースが使い尽くされることはありません。また、クラウド IDE は一般的にプラットフォームに依存しないため、さまざまなクラウドベンダーへの接続が可能です。

次のアプリケーション开発プロジェクトの出発点

红帽Codeready产品标志

红帽®CodeReady工作室は认定された的EclipseベースのIDEであり,リッチ网站アプリケーション,モバイル网站アプリケーション,トランザクション·エンタープライズ·アプリケーション,マイクロサービスの开発,テスト,デプロイを行うことができます。开発ライフサイクル全体を通じて,优れたサポートを1つのツールで提供します。

オープンソースのEclipse的车プロジェクトをベースとする红帽CodeReady工作区は,アプリケーションのコーディング,ビルド,テスト,実行,デバッグに必要なあらゆるツールと依存关系を备えたワークスペースを开発者に提供します。オンプレミスまたはクラウドでホストされるOpenShiftクラスタ上で制品全体が実行されるため,ローカルマシンへのインストールは一切必要ありません。

アプリケーション开発についてさらに详しく