2010-11-18 10 views
0

org.apache.commons.validator.EmailValidatorを呼び出してシステム全体の電子メールを検証するか、システム固有のクラスStringUtilで呼び出しをラップし、システム全体を通してStringUtilを使用して電子メールを検証するのが最適です.validateEmailシステム全体のサードパーティライブラリへの依存

THX

答えて

0

短い答えは、それをラップすることが最良であるということである、と私は確かに過去にこれを行って、それを後悔していませんでした。しかし、あなたがすることができないと言う難しくて速いルールはありません - あなただけが注意する必要があることです。

これはいくつかの要因によって異なりますが、もっとも明白なのは、これがもたらす(追加の)依存関係です。

これは、soluitonの "ロードマップ"が本当に重要であるという良い考えを持っているところです。ソリューションのコンテキスト(内部ツールであっても、あなたが目指している市場)などを考慮しています。

危険#1:Org.Apache.Commonsは、管理したくない/管理したくない他の依存関係を追加します。私はOrg.Apache.Commonsの最初の知識は持っていませんのでごめんなさい私は細部を手助けすることはできません。

危険#2:Org.Apache.Commonsがあなたより頻繁に変更されます。 Apahceがどのようにしていつリリースするのかに満足しているのなら、あなたは大丈夫だと思いますが、あなたが安定したいシナリオにいて、直接的に第三者を参照することは「悪い」と答えています明らかでなければならない。これはすべてReuse Release Equivalence Principleに関連しています。

あなたのソリューションが何らかの形でOrg.Apache.Commonsに戦略的に結合されている場合(FireFoxアドインがFireFoxに結びついているような場合)一方、(戦略的に)結合されていないのであれば、タイトカップリングの導入は避けるべきです。

関連する問題