股票與基金
股民贞让,特別是新股民在沒有足夠了解證券知識的情況下去做股票周崭,是很容易虧錢的。畢竟喳张,需要學(xué)習(xí)的知識是在太多了续镇,不具備這些知識就很難做好,再有就是心態(tài)也非常重要销部,剛開始接觸股票的人一般都盼漲怕跌摸航,心態(tài)很不穩(wěn)定,反而做不好股票舅桩〗椿ⅲ基金是一個幫手,它將投資者分散的基金集中起來擂涛,交由專業(yè)的經(jīng)理人進(jìn)行管理读串,投資于股票、債券撒妈、外匯等領(lǐng)域恢暖,而基金投資的收益歸持有投資者所有,管理機構(gòu)收取一定比例的托管管理費用狰右。
由于基金會買幾十支好的股票杰捂,不會因為某個股票大跌影響收益,盡管每個人的前不多棋蚌,但大家放在一起嫁佳,反而容易達(dá)到好的投資效果峭弟。
自己做股票需要了解股票的各種信息,需要預(yù)測它的未來脱拼,還要買入和賣出的時機合適,這其實是很難做到的坷备。專業(yè)的基金經(jīng)理人相對專業(yè)熄浓,不容易像散戶那么盲目。
股票省撑,由于眾多投資者對眾多股票的聯(lián)系太多赌蔑,反而不利于操作,這在軟件中成為耦合性過高竟秫。有了基金之后娃惯,變成眾多用戶只和基金打交道,關(guān)心基金的上漲和下跌就可以了肥败,而實際上的操作卻是基金經(jīng)理人與上千支股票和其他投資產(chǎn)品打交道趾浅。
外觀模式
外觀模式(Facade),為子系統(tǒng)的一組接口提供一個一致的界面馒稍,此模式定義了一個高層接口皿哨,這個接口使得這一子系統(tǒng)更加容易使用。[DP]
外觀模式(Facade)結(jié)構(gòu)圖
代碼
四個子系統(tǒng)類
public class SubSystemOne {
public void methodOne(){
print("子系統(tǒng)方法一");
}
}
public class SubSystemTwo {
public void methodTwo(){
print("子系統(tǒng)方法二");
}
}
public class SubSystemThree {
public void methodThree(){
print("子系統(tǒng)方法三");
}
}
public class SubSystemFour {
public void methodFour(){
print("子系統(tǒng)方法四");
}
}
外觀類纽谒,它需要了解所有的子系統(tǒng)的方法或?qū)傩灾づ颍M(jìn)行組合,以備外界調(diào)用
public class Facade {
SubSystemOne one;
SubSystemTwo two;
SubSystemThree three;
SubSystemFour four;
public Facade() {
one = new SubSystemOne();
two = new SubSystemTwo();
three = new SubSystemThree();
four = new SubSystemFour();
}
public void methodA() {
print("方法組A");
one.methodOne();
two.methodTwo();
four.methodFour();
}
public void methodB() {
print("方法組B");
two.methodTwo();
three.methodThree();
}
}
測試類,由于Facade的作用鼓黔,客戶端可以根本不知道單個子系統(tǒng)類的存在
public class Test {
public static void main(String[] args){
Facade facade = new Facade();
facade.methodA();
facade.methodB();
}
}
何時使用外觀模式
首先央勒,在設(shè)計初期階段,應(yīng)該要有意識的將不同的兩個層分離澳化,比如經(jīng)典的三層架構(gòu)崔步,就需要考慮在數(shù)據(jù)訪問層和業(yè)務(wù)邏輯層、業(yè)務(wù)邏輯層和表示層的層與層之間建立外觀Facade缎谷,這樣可以為復(fù)雜的子系統(tǒng)提供一個簡單的接口刷晋,使得耦合大大降低。
其次慎陵,在開發(fā)階段眼虱,子系統(tǒng)往往因為不斷的重構(gòu)演化而變得越來越復(fù)雜,大多數(shù)的模式使用時也都會產(chǎn)生很多很小的類席纽,這本是好事捏悬,但也給外部調(diào)用它們的用戶程序帶來了使用上的困難,增加外觀Facade可以提供一個簡單的接口润梯,減少它們之間的依賴过牙。
第三甥厦,在維護一個遺留的大型系統(tǒng)是,可能這個系統(tǒng)已經(jīng)非常難以維護和擴展了寇钉。你可以為新系統(tǒng)開發(fā)一個外觀Facade類刀疙,來提供設(shè)計粗糙或高度復(fù)雜的遺留代碼的比較清晰簡單的接口,讓新系統(tǒng)與Facade對象交互扫倡,F(xiàn)acade與遺留代碼交互所有負(fù)責(zé)的工作谦秧。[R2P]對于復(fù)雜難以維護的老系統(tǒng),直接去改或去擴展都可能產(chǎn)生很多問題撵溃,分兩個小組疚鲤,一個開發(fā)Facade與老系統(tǒng)的交互,另一個只要了解Facade的接口缘挑,直接開發(fā)新系統(tǒng)調(diào)用這些接口即可集歇。