借鑒某PaaS平臺(tái)開發(fā)思想、程序中的所有邏輯都可以使用對象和配置實(shí)現(xiàn)。
這和ABAP的最新開發(fā)思想一致,使用BOPF和BRF實(shí)現(xiàn)對象和配置的業(yè)務(wù)和邏輯廷痘。
由此想到在自開發(fā)ABAP程序中如何更好的運(yùn)用這種思想,列出以下幾點(diǎn)件已。
一句話總結(jié):BOPF牍疏、CDS、Class拨齐、BRF、配置表昨寞、BADI瞻惋、動(dòng)態(tài)內(nèi)表。
具體如下:
1援岩、盡可能使用Interface歼狼、Class、還要是Instance Class
2享怀、每個(gè)Action使用一個(gè)主的Method羽峰,并調(diào)用其他Class的Instance Method,并使用Instance Class傳參
3、使用BOPF梅屉,使用BOPF的緩存值纱,使用BOPF的Check檢查、使用BOPF的Determination坯汤、使用BOPF的Action執(zhí)行事件虐唠,使用BOPF的Association獲取關(guān)聯(lián)對象,使用BOPF的Query執(zhí)行查詢惰聂。BOPF的思想很好疆偿,SAP新產(chǎn)品開發(fā)都是使用這種技術(shù)。
4搓幌、使用配置表杆故,對于字段間的關(guān)聯(lián),如顯示隱藏的設(shè)置溉愁,執(zhí)行的相關(guān)操作处铛,計(jì)算邏輯,級(jí)聯(lián)等叉钥,并且配置表要有是否啟用字段
5罢缸、借鑒BADI思想,使用Interface的實(shí)現(xiàn)類或者Class的繼承類進(jìn)行復(fù)雜邏輯擴(kuò)展
6投队、使用CDS View和數(shù)據(jù)庫表替代對象方式代替LOOP中的READ語句
7枫疆、使用BRF進(jìn)行規(guī)則判斷,程序中的邏輯判斷迎更多使用BRF敷鸦,不僅后續(xù)維護(hù)和調(diào)整容易息楔,而且開發(fā)起來也更清晰。
8扒披、使用公用方法或者Include程序值依,是的程序可以復(fù)用,開發(fā)模塊化
9碟案、使用動(dòng)態(tài)內(nèi)部愿险,動(dòng)態(tài)實(shí)現(xiàn)結(jié)構(gòu)和邏輯
10、使用ASSERT語句進(jìn)行邏輯和變量監(jiān)控