優雅なプログラミングがこのように境界を処理すると、あなたは「正常」になります!
2935 ワード
嬉しそうに笑う
[猫と犬が結婚して、間もなく離婚する.裁判官は原因を聞いて、犬は言います:猫は結婚してから毎晩家に帰らないで、行為は軌道に乗っていません.猫は大声で叫びます:濡れ衣を着せて、私はただネズミを追いかけます.犬は言います:裁判官は聞いてください.]
質問を出す
サードパーティAPIとの境界問題をどのように優雅に処理しますか??
問題を解決する
1)学習性テスト:プロジェクトにサードパーティAPIの新しいバージョンを導入し、プロジェクトが正常に動作しているかどうかをテストします.もちろん、サードパーティのツールや自分でコードを書いてサードパーティのツールの機能を実現する時間はほとんどありませんが、少なくともサードパーティのツールをテストする必要があります.
2)テストを作成してサードパーティのコードを閲覧し理解すると同時に、無料学習でもある.
3)境界問題の処理方法:アダプタモードは非常に良い設計で、新しい種類で第三者APIを包装し、Adapterモードで私たちのインタフェースを第三者が提供するインタフェースに変換し、それは互換性のないインタフェースを互換性のあるインタフェースに書き換えることができるだけでなく、第三者のツールを再パッケージすることによって境界の変化がシステムに与える影響を避けることができる.
アダプタの例を示します.
IPOISlideクラス:
POISlideXslfImplはIPOISlideクラスの実装です.
ここでの境界とは、プロジェクトコードとサードパーティAPIの境界を画定することであり、サードパーティAPIに問題が発生すると、サードパーティAPIのソースコードを修正することなく、私たち自身の実装を修正することができます.同時に、私たちは自分の実装の中で、他の方法を拡張することができます.
本を読んで悟る.
『菜根譚』よりは一時的に権力を握って、寂しいです.道徳を守る者は、一時寂しくなる.権勢に従う者は,物寂しい.達人は物外の物を見て、後ろの身を考えて、一時の寂しさを守って、万古の寂しさを取ってはいけない. 路は一歩譲って、味は3点減らさなければなりません.道の狭いところで、一歩残して人と行く.味が濃いので、3点減らして食べさせます.これは世渡りの極楽法である. 厚徳は福を積み、心を逸して労を補い、道を修めて厄を解く.天は薄くて私は福をもって、私は私の徳を厚くしてそれを迎えます;天労我以形,吾補吾心以逸之;天厄我以遇,吾亨吾道以通之;天且奈私は何ですか. 断崖絶壁、起死回生.思い立ってから,やっと道に行きたいと思ったので,道理に従った.いっしょに感じて、一眠りして歩いて、これは災いを転じて福になって、起死回生の瀬戸際で、決して簡単に見逃してはいけません. 君子は徳行し、その道は中庸である.清は容があって、仁は善断することができて、明は察を傷つけないで、まっすぐに矯正することができなくて、蜜 苦しみの中には楽があり、楽の中には苦しみがある.苦心の中でいつも心を楽しませる趣を得て、得意げな時失意の悲しみを生みます. 処世は方円自在で、人に接するには寛大で適切である.処治世宜方、処乱世宜円、処叔季の世当方円併用;善人を待つには寛大で、悪人を待つには厳格で、凡人を待つ人は寛大で互いに存在しなければならない. 暇な時はきつくて、忙しくてのんびりしています.天地は静かに動かず、エアマシンは少し止まった.日月は夜を尽くして走るが、貞明万古は容易ではない.だから君子は暇な時はきつい気持ちを持って、忙しいところはのんびりした趣味を持っていなければならない. 良薬は口に苦く、忠言は耳に逆らう.耳の中でよく耳に逆らう言葉を聞いて、心の中でいつも心をなでることがあって、徳行を学ぶ砥石です.もし言葉が耳に心地よく、何事も速く心を開くならば、この生を薬の毒の中に埋めます. 退即進、与即得.処世は一歩を高くし、退歩は進歩の張本である.人を寛大に扱うのは福であり,人を利し,自分を利する基礎である.
その他
もしあなたに少しの楽しみを持ってきたら、楽しみを伝え続けて、転載を歓迎して、いいね、トップ、貴重な意見を残して、支持に感謝します!
[猫と犬が結婚して、間もなく離婚する.裁判官は原因を聞いて、犬は言います:猫は結婚してから毎晩家に帰らないで、行為は軌道に乗っていません.猫は大声で叫びます:濡れ衣を着せて、私はただネズミを追いかけます.犬は言います:裁判官は聞いてください.]
質問を出す
サードパーティAPIとの境界問題をどのように優雅に処理しますか??
問題を解決する
1)学習性テスト:プロジェクトにサードパーティAPIの新しいバージョンを導入し、プロジェクトが正常に動作しているかどうかをテストします.もちろん、サードパーティのツールや自分でコードを書いてサードパーティのツールの機能を実現する時間はほとんどありませんが、少なくともサードパーティのツールをテストする必要があります.
2)テストを作成してサードパーティのコードを閲覧し理解すると同時に、無料学習でもある.
3)境界問題の処理方法:アダプタモードは非常に良い設計で、新しい種類で第三者APIを包装し、Adapterモードで私たちのインタフェースを第三者が提供するインタフェースに変換し、それは互換性のないインタフェースを互換性のあるインタフェースに書き換えることができるだけでなく、第三者のツールを再パッケージすることによって境界の変化がシステムに与える影響を避けることができる.
アダプタの例を示します.
IPOISlideクラス:
package com.evada.de.common.pptExport.xlsfpoi.api;
/**
* PPT ( )
*/
public interface IPOISlide {
/**
*
* @return IPOISlideText
* @throws Exception
*/
public IPOISlideText CreateText() throws Exception;
}
POISlideXslfImplはIPOISlideクラスの実装です.
package com.evada.de.common.pptExport.xlsfpoi.impl;
/**
* PPT poi xslf ( )
*/
public class POISlideXslfImpl implements IPOISlide {
/** , POI , POISlideXslfImpl XSLFSlide , XSLFSlide , CreateText **/
private XSLFSlide slide;
private IPOISlideShow ppt;
public POISlideXslfImpl(XSLFSlide slide, IPOISlideShow ppt) {
this.slide = slide;
this.ppt = ppt;
}
/** , **/
public IPOISlideText CreateText() throws Exception
{
XSLFTextBox shape1 = slide.createTextBox();
IPOISlideText text = new POISlideTextXslfImpl(shape1);
return text;
}
}
ここでの境界とは、プロジェクトコードとサードパーティAPIの境界を画定することであり、サードパーティAPIに問題が発生すると、サードパーティAPIのソースコードを修正することなく、私たち自身の実装を修正することができます.同時に、私たちは自分の実装の中で、他の方法を拡張することができます.
本を読んで悟る.
『菜根譚』より
その他
もしあなたに少しの楽しみを持ってきたら、楽しみを伝え続けて、転載を歓迎して、いいね、トップ、貴重な意見を残して、支持に感謝します!