IDEとしてのUnix:はじめに

初心者でも経験者でもあるプロのプログラマーは、通常IDEの概念、つまり「統合開発環境」を順守します。 確かに、すべてのツールの単一のインターフェイスを備えた1つのアプリケーションでコードを整理、作成、サポート、およびテストするために最も必要な手段があると便利ですか? さらに、プログラミング用に特別に設計された環境には、自動補完、チェック、構文の強調表示など、いくつかの利点があります。



LinuxやBSDを含むすべての一般的なデスクトップオペレーティングシステムで同様のツールが利用でき、それらの多くは完全に無料であるため、Windows Notepad、nano、またはcatに限定することはほとんど意味がありません。



しかし、Unixのファンの間では、「UnixはIDEです」というミームは、開発者が端末に持っているツールが最新のIDEの基本機能を簡単に実現するという意味で、さまざまなバリエーションがあります。 EclipseまたはMicrosoft Visual Studioであるという意味で、Unixの「IDE」を認識することに同意することも拒否することもできます。 いずれにせよ、控えめな開発環境が控えめなBashになりうることに驚くことでしょう。





Unixはどのような意味でIDEですか?



IDEのアイデアは、すべてのツールをインターフェイスの共通の概念と組み合わせることであり、それらを連携させる方法を簡単に教えることです。 通常、共通言語を見つけるのは非常に難しいため、これはGUIアプリケーションにとって特に重要です。 テキストをコピーして貼り付ける機能に加えて、他の操作手段はありません。



同時に、コマンドラインユーザーが既に十分に設計され、実績のあるUnixツールを手元に持っていることは興味深いことです。 Unixアーキテクチャに組み込まれている「すべてはファイル」という原則により、最初から、これらのツールにはテキストとファイルのストリームという共通のインターフェースがあります。 Unixのほとんどすべては、望ましい共通インターフェースであるファイルとストリームの上に構築されています。 これらのツールの40年間の開発により、Unixは本格的なIDEと同じくらい強力になりました。



素晴らしいアイデア





このアプローチは、白髪のUnix退役軍人だけの運命ではありませんでした。 ViとEmacs(VimとGNU Emacs)の現代の化身を中心に、あらゆる種類のテキスト操作の拡張に取り組む開発者コミュニティが形成されました。 両方のエディターには、プログラミングタスク用のプラグインがあり、それらの多くを重要と呼びます。



最終的に、拡張機能の開発者は、これらのテキストエディタを実際のIDEに変えようとしているように思えます。 多くの場合、VimまたはEmacsがプロセス中にまったく残すことのできない投稿を見つけることができます。

しかし、彼にとっては珍しいテキストエディター機能を使用することは、問題に対する適切なアプローチではないようです。 Vimの作者であるBram Moolenaarは、デザインではなくヘルプで判断して、私にほぼ同意しているようです。 コマンドラインは、Ctrl-Zを介して常にアクセス可能であり、その成熟した、統合されたツールキットは、可能であれば、テキストエディターをベルトに接続します。



この一連の出版物について





この一連の投稿では、IDEの6つの最も重要なプロパティについて説明し、これらを組み合わせて使用​​することで基本的なLinuxツールを使用してこれらの特性を簡単に実装できる例を示します。 これは決して徹底的なレビューではなく、私が説明するツールは唯一の可能な選択肢ではありません。







私が話さないこと



IDEが悪いとは思わない。 彼らは素晴らしいので、私はUnixが同じように使用できると主張しようとしている、または少なくともUnixをそのように考えているのです。 また、Unixは常にプログラミングタスクに最適なツールであると主張するつもりもありません。 特に複雑なGUIアプリケーションの作成に関しては、JavaやC#などの主流言語よりも、C、C ++、Python、またはシェルでの開発の方がはるかに優れています。 また、多少難解なコマンドラインの世界を支持して、EclipseまたはMicrosoft Visual Studioの苦労して得た知識をダンプするよう説得するつもりはありません。 フェンスの向こう側で何をしているのかを見せたいだけです。



IDEとしてのUnix:はじめに

IDEとしてのUnix:ファイル

IDEとしてのUnix:テキストの操作

IDEとしてのUnix:コンパイル



All Articles