JDeveloper10g你真的準備好了嗎?
Oracle 推出了最新的JDeveloper10g,網上頓時風風火火,郵箱中也多了不少關於此的廣告郵件。平心而論,10g比9i已經有了很大的進步,他儘量通過視覺化的編輯方式來完成程式開發工作,希望JDeveloper也能夠像微軟的Studio一樣,高效率工作。但是,通過一段時間的試用以後,終於明白JDeveloper與成熟的商用Java IDE是有差距的。這裡我只談一談不成熟的地方,下面就請各位看官容我細細道來:
看Oracle的Demo時,覺得很不錯,對一個數據表,從建立Entity Object(實體物件),ViewObject(檢視物件),Struts Action,Jsp到最後執行,基本上沒有寫程式碼,都是通過拖動完成,資料的增加,修改,刪除都由系統自動來幫你完成了。非常輕鬆,當然這是最理想、最簡單的情況。然後這個優點其實也是一個缺點,高效率犧牲了靈活性,ViewObject與表現層關聯的過於緊密,以往我們在ActionForm裡面直接做的時候,可以對ActionForm隨意操作,因為他與資料庫無關,但是現在你要想對ViewObject隨意操作就不行了,因為他有資料庫的規則存在,而在JDeveloper提供的方式中,ViewObject承擔了太多的工作,雖然ViewObject直接和頁面做資料交換很方便(自動管理資料的增加、修改、刪除),但在複雜情況下(多表約束,外來鍵),則無法實現一些複雜操作,除非非常簡單的專案,否則他就是雞肋。
缺點一:希望能夠節省大家的時間少寫重複程式碼,結果只能滿足簡單的需求。
我們都知道,現在任何一個專案要靠一兩個人來完成是不容易的,所以肯定是一個小組共同作戰,那麼這就涉及到一個版本管理、協同工作的問題。在這個環節我終於體會到了Oracle的強大,不把你折騰倒是不會罷休的。
先來講講Oracle的專案檔案結構, .JPR 是專案的主檔案,然後在SRC下會有各種.XML檔案,還有一些.CPX檔案,這些檔案的作用就是儲存專案目錄下原始檔的型別、Path。也就是說在同一專案中,有非常多共用檔案,對於團隊並行開發來說,這簡直是一個惡夢。在專案中任意增加一個檔案,都會記錄到上述的公共檔案中,如果大家的專案一合併,就會出現 N個Conflicts,解決不好,專案就打不開了。上了Metalink,又上了Oracle forum ,才知道大家都是痛苦不堪,想出各種辦法來解決這個問題。最後,沒辦法,只有獨佔模式最好,不用合併。只不過一個人做的時候,其他人就休息。
缺點二:做來做去做成了一個個人開發工具,適合獨行俠使用。
大量的XML配置檔案儲存了大量的資訊,想維護只有通過圖形化的工具,還不讓你直接修改。怕你改壞了,所以只有關掉Jdeveloper,用editplus到外面修修改改。然後再開啟Jdeveloper.
缺點三:只考慮入門新手,但應該為熟手提供一個Edit XML功能。
以上是我試用過程中的一些體會,還有很多雞肋、Bug之類的東西懶得說了。感覺Oracle Jdeveloper10g離成熟還有一段距離,當然,他帶來了一些新的思路,辦法,我覺得如果發揚好了,還是很有希望的。