国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
從Java談軟件開發(fā)流程
                                      

經(jīng)過近十年的發(fā)展,說Java是地球上最受歡迎的程序開發(fā)語言一點也不為過。Java賦予開發(fā)人員高度的選擇自由,展現(xiàn)「Java Everywhere」的魅力與成效。你我的生活周遭已處處可見Java;到火星上走走、eBay大采購、網(wǎng)絡(luò)銀行轉(zhuǎn)帳、拿著健??ǖ结t(yī)院看病、無聊時把玩手機上的Java游戲…。

在生活中,你通常只知道「喔!原來這網(wǎng)站是用Java寫的」、「喔!原來這是手機的Java Game」。若自技術(shù)層次拆解,Java Technology可簡單區(qū)分為Java 程序語言(language)與Java 平臺(platform)。Java 程序語言所指是撰寫程序所需的語法與詞匯,像學(xué)習(xí)中、英文,有一套基本的單字與語法,只要利用單字組出符合語法的句子,這就是Java程序的基礎(chǔ)。


 

至于Java 平臺,如大家熟知的,Java共分三大平臺:J2ME、J2SE和J2EE,分別專精于嵌入式行動平臺、標準平臺和企業(yè)應(yīng)用平臺,除了共同的類別函式庫(API)之外,每個平臺也有其特定的API,供程序設(shè)計師們開發(fā)使用。

隨著開發(fā)工具陸續(xù)推出,降低了Java開發(fā)技術(shù)門坎,要寫出正確無誤的Java程序不是太難的事情,但論及系統(tǒng)性的 Java軟件開發(fā),那可就不是一件輕松事。開發(fā)大型項目有三項非常重要的因素,將會影響整個項目的進度與質(zhì)量,分別是人(people)、流程(process)與技術(shù)(technology)。

這三個要素是環(huán)環(huán)相扣的,任何一項要素的成敗都會影響另外兩個要素,而每個要素也都足以影響一個項目的成敗。如何取得這三者的平衡,并將每個要素充份的發(fā)揮,取決于管理者的經(jīng)驗,與相關(guān)開發(fā)人員的素質(zhì),這不是一項簡單容易的任務(wù),但有好的方法可以完成。

Java彈性多選擇資源豐富任君挑選

「技術(shù)」應(yīng)該是最容易掌握的部份,因為你選擇了Java。如前所述,全世界已有許多Java資源可以選擇。某些人可能會認為Java技術(shù)門坎高,考慮訓(xùn)練成本而決定導(dǎo)入較為簡易的程序語言,如VB.Net,或是不敢轉(zhuǎn)換到Java平臺。事實上,真正困難的不是Java程序語言或是API的使用,而是整個對象導(dǎo)向程序設(shè)計的概念。C#也標榜與Java有著類似的對象導(dǎo)向架構(gòu),除執(zhí)行平臺不同、API的名稱不同,本質(zhì)與 Java可以算是巒生兄妹,怎么沒聽有人抱怨C#很難學(xué)?

既然Java、.Net門坎是一樣的,那該如何選擇?答案是,你喜歡誰就選誰。只是當(dāng)你決定投靠其中一個陣營時,不妨想想一件事:「在這個平臺上,我是不是有選擇的空間與自由?」Java是一開放的技術(shù)、平臺,可執(zhí)行于各類作業(yè)平臺,還有各式各樣的開發(fā)工具、API套件與執(zhí)行環(huán)境,包括商業(yè)、免費、開放源碼等豐富資源君挑選。

流程關(guān)乎項目預(yù)算與時間控制

「程序」指的是軟件開發(fā)流程或是項目流程,定義流程的目的是要掌控所有的情況。項目的最大敵人是時間及預(yù)算,這兩者都是有限的,如何在有限預(yù)算內(nèi)準時完成項目,可說是一項藝術(shù)。幸運的是,時間和預(yù)算都是可控制的,并不是指我們可以控制時間快慢或長短,而是如何明確知道哪一個時間點,需要何種產(chǎn)出物,而我們有多少的預(yù)算可以完成。為有效控制,我們需要一個標準的流程,只要照著規(guī)矩走,一切都好辦。

RUP(Rational Unified Process)就是一種業(yè)界常用的不成文規(guī)矩,在多數(shù)軟件項目中幾乎都會使用的一項語言、方法與工具。 RUP的精神在于反復(fù)(iterative)與漸近的(incremental)。在漸進式的開發(fā)過程中,透過不斷的提煉(refine),可趁早發(fā)現(xiàn)問題且找出解決方法,也確保每一工作項目的進度。不過,在架構(gòu)(Architecture)方面,RUP確實著墨較少,而架構(gòu)優(yōu)劣也是足以影響軟件系統(tǒng)成敗的關(guān)鍵因素。

QoS(Quality of Service)或是SLR(Service Level Requirement),我想是每個系統(tǒng)最基本的要求,它包含可用性(Availability)、可管理(Manageability)、可信賴(Reliability)、可擴充(Scalability)和安全性(Security)等條件。

當(dāng)系統(tǒng)架構(gòu)進行規(guī)劃時,就應(yīng)同步考慮這幾項條件。舉例而言,先前某家外商銀行因系統(tǒng)設(shè)計不良而導(dǎo)致外人可輕易猜出參數(shù)設(shè)定的方式,直接入侵系統(tǒng)竊取消費者隱私數(shù)據(jù);也有某家電信業(yè)者為沒考慮系統(tǒng)的負載量,而導(dǎo)致在耶誕、跨年等重要節(jié)日時,涌入大量簡訊的尖峰時期造成服務(wù)塞車、系統(tǒng)當(dāng)機。


 

 

在電視新聞中,我們常??梢婎愃频男侣剤髮?dǎo),而背后隱藏的意義是,「當(dāng)初沒做好系統(tǒng)架構(gòu)規(guī)劃」,看得不夠遠、想得不夠深,等系統(tǒng)開發(fā)到一半,或是系統(tǒng)上線后才發(fā)現(xiàn)問題,此時再東補西補,為時已晚。

雖說不同的程序技術(shù)皆有其滿足QoS的方法,相較之下,Java對上述五大項功能的支持應(yīng)該算是最為豐富。如在J2EE 的設(shè)計模式(Design Pattern)中,幾乎都是為解決此幾項問題而設(shè)計,之后再配合程序語言本身的強固性,開發(fā)而成的企業(yè)級應(yīng)用系統(tǒng),我想應(yīng)可滿足客戶對于QoS的嚴格要求。

話說回頭,企業(yè)一旦使用Java開發(fā)一套系統(tǒng),就一定會是百分百穩(wěn)定且滿足QoS嗎?我想,設(shè)計模式跟程序語言無關(guān),將 J2EE 設(shè)計模式作為C#實作的架構(gòu),也未嘗不可,只要能建構(gòu)出相同安全穩(wěn)定的環(huán)境執(zhí)行該系統(tǒng),都是可行的。就像會說國語,未必可寫出漂亮的文章一樣,訓(xùn)練、經(jīng)驗再加上一點天份才是最重要的。

專業(yè)技術(shù)認證可供參考

「人」是項目中最難預(yù)料與掌控的一項要素。人可分成兩部份,一是客戶,二是研發(fā)人員??蛻羰亲铍y掌握的,不同的客戶有不同的個性,沒有任何人能教導(dǎo)你,如何應(yīng)付不同的客戶,除了靠運氣,還要靠經(jīng)驗。

暫不談客戶,先看研發(fā)人員這部分。我想,要滿足技術(shù)與流程兩項因素,關(guān)鍵都是人。如何選擇對且合適的技術(shù),要有專業(yè)人才;如何有效管理流程?如何規(guī)劃滿足AMRSS五項需求的系統(tǒng)架構(gòu)?這都是需要有經(jīng)驗的管理人才及架構(gòu)師(architect)。當(dāng)然,能不能寫出漂亮且可完善運作的程序代碼,也是需要有一定水平的研發(fā)人員。

開發(fā)程序人員的水平是較容易被認證。Java有幾項專業(yè)認證,如SCJP、SCJD、SCWCD,都可用以鑒定開發(fā)人員基本的功力。另有SCEA、 SCBCD等認證可評鑒程序架構(gòu)人員的素質(zhì)。除專業(yè)訓(xùn)練之外,經(jīng)驗也是一位優(yōu)秀的架構(gòu)師所應(yīng)具備的條件,而程序部份其實也有認證,如PMP。

也許你會覺得Java很八股,寫程序為什么需要一大堆文件、設(shè)計模式、程序與方法論(methodology),邊寫邊設(shè)計,且戰(zhàn)且走不行嗎?對于小型系統(tǒng),或是沒有營運壓力系統(tǒng)而言,是可以的。若果是人力不足、預(yù)算有限、結(jié)案期限已在眼前,當(dāng)然也該直接動工。

但依我接觸過案子經(jīng)驗的深刻體驗,寧愿花費較長時間與心力,在項目初期就先詳細規(guī)劃,才可節(jié)省后期開發(fā)的時間,系統(tǒng)上線后也更容易維護與擴充。雖然耕耘過程會較辛苦,但所得好處也會是倍增的。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
[精華] []為什么要學(xué) Java?
回顧Java經(jīng)過的風(fēng)風(fēng)雨雨
Android開發(fā)入門解答
給菜鳥看的Android應(yīng)用開發(fā)全流程
java軟件開發(fā)學(xué)習(xí)路線
用 XML 設(shè)計一個你自己的程序語言
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服