はじめに
Apache NetBeans IDE 20の統合開発環境でプログラムを作成していますが、プロジェクトフォルダーがいくつも作成されています。過去何年も使っていると、ゴミだらけになります。様々なwebページやプラグインのフォルダーのほかに、サンプルをテストするためのテストフォルダーがゴミのように溜まっています。テストが終了しても削除できません。せっかく、動作して確認できたので消すことがもったいないのです。
しかし、あとから見ても、何のテストだったか、ファイル名を見ても思い出せません。
その時は適当に命名していたためです。つい、急いで適当に付けていたためです。
このゴミ問題はどうしたらいいのかということです。どこかに焼却炉を作って燃やしてしまったらいいのか。この問題を考えてみます。
ゴミはどうして貯まるのか。
まるで、ゴミ屋敷です。どんどん溜まって行きます。折角作ったプログラムなので、捨てるに捨てられない状態が延々と続いています。いつか、整理(断捨離)したいのですが、そのタイミングがつかめません。着物であれば。買取り屋に買い取ってもらえます。しかし、ゴミのプログラムは誰も買い取ってくれません。
問題は単なるゴミの問題だけではありません。
実は、そこに、大問題が隠されているのです。「不具合の温床」という大問題です。
ゴミが沸々と燃え出しているのです。あるいはゴミの中からゴキブリのようなばい菌も培養されているのです。
まるで、どぶ川のメタンガスのように、ブクブクと泡を吹きだしています。
古くなった統合開発環境のフォルダーは、まさにこのどぶ川と同じです。
いつか、ヘドロの大掃除をしなくてはなりません。
統合開発環境のヘドロとは
これは、テストも含め、本番環境のフォルダーも同居していますので、増々、怪しくなっています。本来であれば、テスト環境と本番環境は、サーバー毎分離しておくのが鉄則ですが、個人の趣味のためのレンタルサーバなので、明確には分けていません。
これが、すべての元凶かも知れません。
■一番の問題は安易な更新
テストで動作確認後、本番のwebページに、組み込むときに、既存のプログラムにも手を加えることはよくあります。これが問題を引き起こしています。
その時はあまり吟味せずに、これで大丈夫と思って、既存のプログラムを更新してしまいます。しばらくはこれで、うまく動作しています。
しかし、大分、後になって、不具合が発生します。しかし、この不具合の原因はすぐにはわかりません。
かなり、調べた後になって、ようやく、あの時の更新が影響していたとなります。
こういう不具合は、よくあります。十分テストしたから更新すればいいのですが、それでは時間がかかります。おそらく、世の中のシステムにもこのようなことは発生しているのではないでしょうか。
■共有か、個別か(フォルダーも、ファイルも)
この問題が一番の問題
よく、ひとつのファイルを共有して、他のwebページでも使用できるようにするのがよいと言われることもあります。しかし、このやり方はよくない面もあります。
各webページで固有の処理があると、それぞれのページ処理を追加することになり、これはよくない方法です。逆に、webページ毎に、個別にそれぞれの処理ファイルをつくる方法もあります。これもメンテナンス管理が大変になります。
いずれがいいか、判断に迷います。オブジェクト指向のクラスを使えば、継承(extend)で解決するのかも知れません。また、最近出てきた、ESモジュール化もいいかも知れません。
■ESモジュール化(import/export)
モジュール化すると、必要なクラス、関数、変数などだけをロードすることができます。未使用の処理はロードしなくて済みます。
この仕様は、従来の共通/個別対応への代替手法と言えるかも知れません。
共通問題の不具合解消も個別対応のメンテナンス問題解消にも使える仕様と言えるかも知れません。ゴミ問題の解消手段になるかも知れません。
■プロジェクトフォルダーのメンテナンス
統合開発環境のプロジェクトフォルダーは、新規にwebページを作る場合に便利です。
このフォルダーに、様々のリソースフォルダーをつくり、開発を進めて行きます。
それらのフォルダーの中が、開発を進めて行くとファイルが多く作成されてゆき、そのうち何が何だか分からなくなります。特に、ファイルの名称に問題が出てきます。
行きあたりばったりに命名して行くと訳が分からなくなります。
■使い慣れたIDEの場合、中々新しいIDEに移れなくなる問題
Netbeansもそうですが、これに慣れてしまうと他のIDEへ移れなくなります。ラッピングツールなども同様です。使い慣れたプラットフォームがあると中々、他のプラットフォームには移れません。途中で、プラットフォームを変えると、そのソースコードだけが従来のソースコードとスタイルが変ってしまい、メンテナンスが大変になります。すべてを一括変更することは、容易ではありません。それらが混在したIDEは、ゴミ化が進みます。
あとがき
まだ、ゴミ化を防ぐいいアイディアが見つかりません。
いまから、大量のファイルを整理する気は起りません。手っ取り早いのは、不要と思ったファイルはどんどん捨てて行くことかも知れません。しかし、むやみに行うと、すでに動作しているシステムにも悪影響が及ぶかも知れません。
このゴミ処理問題は中々解決しないかも知れません。