2017-08-28 4 views
0

Webプロジェクトでシンボリックリンクを使用しています。ソースフォルダーと、サービスによって実行される電子メールタスク用の追加フォルダーがあります。シンボリックリンクはコードの理解と維持に有害ですか?

ウェブサイトとタスクは共にPHPで書かれており、util.php,sql_functions.phpconfig.phpのファイルを使用しています。

これら3つのファイルの場所をハードコーディングするのではなく、これらの3つのユーティリティファイルといくつかのディレクトリへのシンボリックリンクを作成して、各サブディレクトリから利用できるようにしました。コードは機能します。

また、これらのリンクを自動的に作成し、インストール手順を文書化したバッチファイルも作成しました。

私の電子メールタスクを含むフォルダのスクリーンショットがあります。 sql_functions.phpは構成データを読み込み、email.phpがSQL Serverにアクセスするために使用しています。 sqlフォルダへのシンボリックリンクも役立ちます。

これらのフォルダはすべて同じリポジトリにあるため、依存関係がロードされないというリスクはありません。

ちょうど汚いプログラミングのように感じます。

file explorer

答えて

1

、それ自体でシンボリックリンクが理解に有害とコードベースを維持すべきではないものの、残忍なの一種で、あなたのケース。あなたのファイルのすべてでシンボリックリンクを張ることは、そこに残虐行為のように見えます。ハードウェアのパスとそのような激しい解決策を選択するだけではなく、より多くの選択肢があります。

たとえば、これらのファイルのパスは、require()などのソリューションを使用して各ファイルの先頭にロードされる定数で設定できます。結局のところ、あなたのウェブサイトの仕組みによって異なりますが、あなたのソリューションはあなたが思いつく最も柔軟性のあるものではないのではないでしょうか。

+0

ありがとうございました!はい、それはおそらく私が思いつくべき最善の解決策ではありません - 私は主な問題がPHP名前空間にあると確信しています。私のメールスクリプトを実行するときに変更され続け、シンボリックリンクを作成するのが当時の最も簡単な解決策でした。私はそれを眠り、PHPの名前空間についてさらに研究します。 – RubbelDieKatz

関連する問題