透視SynleadCRM的靈動(dòng)性、擴(kuò)展性和安全性(一)
2005/04/14
導(dǎo)讀--SynleadCRM企業(yè)版4.0秉承了此前版本SynleadCRM軟件產(chǎn)品的各項(xiàng)優(yōu)點(diǎn),在靈動(dòng)性、擴(kuò)展性和安全性方面更是處于國(guó)內(nèi)領(lǐng)先地位。
(一) 靈動(dòng)性
很多人經(jīng)常詢問(wèn)起點(diǎn)公司怎樣編寫出如此靈活、動(dòng)態(tài)的B/S CRM軟件,我們不覺(jué)得有什么可保密的,答案是:我們采用了W3C(www萬(wàn)維網(wǎng)聯(lián)盟)的新一代XML/XSL業(yè)界標(biāo)準(zhǔn),直接用XSL引擎來(lái)處理XML應(yīng)用數(shù)據(jù)、實(shí)現(xiàn)業(yè)務(wù)邏輯并生成Web頁(yè)面,用DHTML組件來(lái)實(shí)現(xiàn)動(dòng)態(tài)交互,站在更高的起點(diǎn)上去領(lǐng)跑今后的市場(chǎng)競(jìng)爭(zhēng)。
SynleadCRM企業(yè)版4.0沒(méi)有像其他一些CRM軟件那樣陷入技術(shù)門派之爭(zhēng)的漩渦。大多的爭(zhēng)斗偏偏卻忽視了不依賴特定門派技術(shù)、更有普遍意義的前進(jìn)方向——采用XML/XSL標(biāo)準(zhǔn)并且把中間層X(jué)ML應(yīng)用數(shù)據(jù)、XSL業(yè)務(wù)邏輯處理和表示層轉(zhuǎn)換區(qū)分開(kāi)來(lái),而這些恰恰是今后解決問(wèn)題的關(guān)鍵所在。
1. 采用XML標(biāo)準(zhǔn)
SynleadCRM企業(yè)版4.0中間層應(yīng)用數(shù)據(jù)已全面采用W3C的新一代XML(可擴(kuò)展標(biāo)記語(yǔ)言)標(biāo)準(zhǔn),XML對(duì)基于Web的應(yīng)用軟件賦予了強(qiáng)大的功能和靈活性。全球中高端應(yīng)用系統(tǒng)(如CRM、ERP、BI)正迅速轉(zhuǎn)向遵循XML標(biāo)準(zhǔn),它給開(kāi)發(fā)者和用戶帶來(lái)了前所未有的諸多好處:
XML提供更有意義的搜索。沒(méi)有XML,搜索軟件不得不了解每個(gè)數(shù)據(jù)庫(kù)是如何構(gòu)建的,這實(shí)際上是不可能的,因?yàn)槊總(gè)數(shù)據(jù)庫(kù)數(shù)據(jù)結(jié)構(gòu)和描述都是不同的。有了XML,數(shù)據(jù)可被XML唯一地標(biāo)識(shí),很容易地以所需的標(biāo)準(zhǔn)方式對(duì)數(shù)據(jù)進(jìn)行組織,信息搜索就變得十分方便。
XML提供用于本地計(jì)算的數(shù)據(jù)。它既可應(yīng)用于服務(wù)器端,也可遞交給客戶端形成數(shù)據(jù)島——數(shù)據(jù)計(jì)算、處理無(wú)需回到服務(wù)器就能進(jìn)行,而這些過(guò)去必需基于昂貴的高端系統(tǒng)方可實(shí)現(xiàn)。
XML向用戶提供更穩(wěn)固的結(jié)構(gòu)化視圖。XML數(shù)據(jù)一旦建立,就可由各種編程語(yǔ)言、組件、對(duì)象以及多種方法進(jìn)行加工,以適當(dāng)?shù)男问剑谝晥D中動(dòng)態(tài)表現(xiàn)給用戶。值得說(shuō)明的是:如果我們必須在XML文檔中補(bǔ)充加入新標(biāo)記,那么即使閱讀該文檔的應(yīng)用程序沒(méi)有修改、無(wú)法辨識(shí)此新標(biāo)記,也不至于造成系統(tǒng)崩潰。
XML允許集成不同來(lái)源的結(jié)構(gòu)化數(shù)據(jù)。在中間層服務(wù)器上集成后臺(tái)數(shù)據(jù)庫(kù)和其它應(yīng)用系統(tǒng)的數(shù)據(jù),按XML標(biāo)準(zhǔn)進(jìn)行聚合、處理和分發(fā)。
XML可描述來(lái)自多種應(yīng)用程序的數(shù)據(jù)。由于XML是可以擴(kuò)展的、數(shù)據(jù)是可以自描述的,因此不需要來(lái)自其它應(yīng)用程序的內(nèi)置描述,也能夠接收并處理數(shù)據(jù)。
XML可通過(guò)粒度更新來(lái)提高性能。XML允許粒度更新,不必在每次數(shù)據(jù)變動(dòng)時(shí)都發(fā)送整個(gè)結(jié)構(gòu)化數(shù)據(jù)集,只有改變的元素才在服務(wù)器、客戶機(jī)之間傳送,改變的數(shù)據(jù)可以在不必刷新整個(gè)頁(yè)面或表格、表單的情況下顯示。
XML為應(yīng)用系統(tǒng)帶來(lái)更好的升級(jí)能力。由于XML徹底把標(biāo)識(shí)的概念同顯示區(qū)分開(kāi)來(lái),只需在結(jié)構(gòu)化的數(shù)據(jù)中嵌套程序化的描述以表明如何顯示數(shù)據(jù),因此大多情況下只是更新嵌套的程序化描述即可改變業(yè)務(wù)與表現(xiàn)邏輯,這極大改善了應(yīng)用系統(tǒng)的升級(jí)能力。
XML可以壓縮傳輸。XML壓縮性能很好,因?yàn)橛糜诿枋鰯?shù)據(jù)結(jié)構(gòu)的標(biāo)簽可以重復(fù)使用。XML數(shù)據(jù)是否壓縮,要根據(jù)應(yīng)用來(lái)定,還取決于服務(wù)器和客戶端之間的數(shù)據(jù)傳輸量。XML能夠使用HTTP1.1中的壓縮標(biāo)準(zhǔn),許多第三方軟件也提供該壓縮。
XML可供非專業(yè)人員使用。即便是沒(méi)有任何編程經(jīng)驗(yàn)的人員,也可以輕松解讀XML文檔描述。
2. 采用XSL標(biāo)準(zhǔn)
SynleadCRM企業(yè)版4.0已普遍采用W3C的新一代XSL(可擴(kuò)展樣式表語(yǔ)言)標(biāo)準(zhǔn)。XSL是一種XML應(yīng)用程序,包含三部分:XSLT轉(zhuǎn)換XML,XPath定義XML部分和模式,XSL格式化對(duì)象定義XML顯示方式。XSL的好處如下:
使用XSL的好處之一是不依賴于特定門派技術(shù)。XSL與XML均與平臺(tái)無(wú)關(guān),得到廣泛支持,在此基礎(chǔ)上用哪種語(yǔ)言開(kāi)發(fā)應(yīng)用程序都可以,這帶來(lái)了很大的靈活性和很高的開(kāi)發(fā)效率。XSL甚至還允許把商業(yè)邏輯保留在后端系統(tǒng)里,而不需要放在門戶里,這使所有事情進(jìn)一步簡(jiǎn)化。
用XSL直接驅(qū)動(dòng)XML可獲得最高效率。作為XML的孿生、擴(kuò)展樣式語(yǔ)言,XSL提供了比ASP、JSP、PHP、JAVASCRIPT、JAVA、DOM、TOM等更為高效的XML結(jié)構(gòu)化數(shù)據(jù)定義、處理、轉(zhuǎn)換方法,“XML
+ XSL”是SynleadCRM企業(yè)版4.0執(zhí)行業(yè)務(wù)邏輯、生成Web頁(yè)面的最主要方式。
XSL提供遠(yuǎn)遠(yuǎn)超過(guò)CSS的強(qiáng)大功能、靈活性與控制能力。盡管簡(jiǎn)單的XML已可被CSS所解釋,然而復(fù)雜的、高度結(jié)構(gòu)化的XML數(shù)據(jù)必須采用XSL極強(qiáng)的格式化和處理能力展現(xiàn)給用戶,例如元素的再造、排序、商業(yè)邏輯的重塑等。
XSL提供了多種腳本語(yǔ)言的通道,以滿足更為復(fù)雜的計(jì)算和應(yīng)用需求,例如JAVASCRIPT等。
XSL的擴(kuò)展性極強(qiáng)。XSL憑借其可擴(kuò)展性能夠生成、控制無(wú)窮無(wú)盡的標(biāo)簽,而控制每個(gè)標(biāo)簽的方式也是無(wú)窮盡的。這就給Web提供了高級(jí)的布局特性,例如多列和獨(dú)立區(qū)域,例如局部業(yè)務(wù)流程處理。
XSL采用結(jié)構(gòu)化描述。XSL遵循XML語(yǔ)法規(guī)范,結(jié)構(gòu)性、可讀性較強(qiáng)。經(jīng)過(guò)短時(shí)間學(xué)習(xí),渠道增值伙伴乃至用戶就可以掌握XSL描述要領(lǐng),改寫或新建XSL模板,例如定制客戶化的報(bào)表。
3. 采用DHTML組件
您驚喜地發(fā)現(xiàn),SynleadCRM企業(yè)版4.0呈現(xiàn)給您的是前所未有的動(dòng)態(tài)交互Web頁(yè)面。
例如,(如果您有權(quán)限)您可以直接交互當(dāng)前頁(yè)面表格窗口里看到的任何記錄的“字段”,而不必另外打開(kāi)一個(gè)包含這條記錄所有“字段”的表單窗口方可交互其中的某個(gè)“字段”!白侄巍彼(jiàn)即所得式的交互方式,得益于動(dòng)態(tài)DHTML技術(shù)的運(yùn)用。它使您能夠俯瞰一片數(shù)據(jù)森林的上空,觀察到更多的信息,并且不會(huì)因場(chǎng)景的頻繁轉(zhuǎn)換而迷路或迷失自己。
又例如,您新建或修改了一條記錄而忘記保存,當(dāng)焦點(diǎn)試圖移開(kāi)時(shí),系統(tǒng)會(huì)自動(dòng)提示是否保存。這種人本化的提醒,同樣受益于動(dòng)態(tài)DHTML。
動(dòng)態(tài)Web交互頁(yè)面確實(shí)很好,但問(wèn)題的關(guān)鍵不僅僅在于應(yīng)用了這種技術(shù),更在于怎樣的應(yīng)用方式才可以保證今后系統(tǒng)的模塊維護(hù)、擴(kuò)展和升級(jí)?
SynleadCRM企業(yè)版4.0在表示層嵌入DHTML組件,以實(shí)現(xiàn)動(dòng)態(tài)行為和交互,其優(yōu)點(diǎn)如下:
盡管可以在XSL對(duì)XML轉(zhuǎn)換成HTML頁(yè)面時(shí),由XSL添加動(dòng)態(tài)行為,但這樣做不利于把表示層和中間層商業(yè)邏輯、格式轉(zhuǎn)換剝離開(kāi)來(lái)。而在表示層中嵌入DHTML組件,相當(dāng)于對(duì)XSL轉(zhuǎn)換出的HTML包裝了一個(gè)“殼”,讓DHTML組件在表示層來(lái)加載所需的動(dòng)態(tài)行為,不影響其它的邏輯層。今后,只是改變需要改變的邏輯層即可,有效縮短了系統(tǒng)維護(hù)、擴(kuò)展和升級(jí)周期。
DHTML組件可以重復(fù)使用。SynleadCRM企業(yè)版4.0有近200個(gè)窗體,如果每增加一個(gè)窗體,都要去寫特定的動(dòng)態(tài)控制代碼,那工作量還了得?如果此前的動(dòng)態(tài)控制代碼有錯(cuò)誤怎么辦,還要對(duì)近200個(gè)窗體一一修改?肯定不可以這樣。我們的軟件廣泛采用DHTML組件,就是因?yàn)榻M件可以復(fù)用,在不同窗體中對(duì)DHTML組件進(jìn)行差別化聲明即可。盡管編寫優(yōu)質(zhì)的DHTML組件是頗具難度、嘔心瀝血的工作,但我們做到了,并且做的會(huì)更好。
DHTML組件可用來(lái)對(duì)HTML頁(yè)面所有對(duì)象或局部對(duì)象添加動(dòng)態(tài)行為或?qū)傩浴D硞(gè)HTML頁(yè)面能夠嵌入多種組件,例如組件A控制某類對(duì)象,組件B控制另一類對(duì)象,組件之間可以通信,也可以互不影響;組件本身可以隔離對(duì)象,組件內(nèi)部的行為和屬性并不影響外部。DHTML組件的這種優(yōu)良特性,為開(kāi)發(fā)CRM、ERP、BI高端動(dòng)態(tài)交互應(yīng)用帶來(lái)了空前的便利和靈活性。
DHTML組件的強(qiáng)勁動(dòng)態(tài)方法和屬性,遠(yuǎn)超過(guò)JS腳本等直接控制對(duì)象的能力,并且DHTML組件提供更完整的事件觸發(fā)機(jī)制和運(yùn)行中動(dòng)態(tài)行為機(jī)制。
待續(xù)…
起點(diǎn)公司供稿 CTI論壇編輯
相關(guān)鏈接: