產(chǎn)品之路的隨想(完整圖文版)

ID:19224875

大?。?16.00 KB

頁數(shù):9頁

時間:2018-09-29

產(chǎn)品之路的隨想(完整圖文版)_第1頁
產(chǎn)品之路的隨想(完整圖文版)_第2頁
產(chǎn)品之路的隨想(完整圖文版)_第3頁
產(chǎn)品之路的隨想(完整圖文版)_第4頁
產(chǎn)品之路的隨想(完整圖文版)_第5頁
資源描述:

《產(chǎn)品之路的隨想(完整圖文版)》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在應用文檔-天天文庫。

1、產(chǎn)品之路的隨想98年從14.4k的modem撥號上網(wǎng),看到的是網(wǎng)易,郵箱,藍波BBS,以及痞子蔡的《第一次親密接觸》,這些讓我印象非常深刻。當時沒能想到web對我的生活和工作產(chǎn)生了這么大的影響。99年開始接觸搜索引擎,有位老鳥的話讓我記憶猶新:“要把google.com寫在手背上,天天能看見”。2000年開始接觸php,mysql,linux,apache,一個企業(yè)網(wǎng)站能賣5000元,那個時候是個產(chǎn)生泡沫的時代,對我們來說也是個幸福的時光。在那個年代里,操作系統(tǒng)是windows98,linux還只是勇敢者的工具,廣大程序員還

2、熱衷于鉆研pb、dephi、vb;Web上的開發(fā)感覺上還是玩具;仍舊津津樂道于ms的發(fā)家史,回味著ms和broland的激烈競爭,至于google,面孔總是一成不變,但它總能返回你檢索需要的東西,仿佛是從遙遠的地方傳來的天籟之音,一切很神秘。如果把基于web開發(fā)看作一段歷史,我和web也逶迤拍拖了10年。如果把Java出生名門的語言叫做大家閨秀,那開源社區(qū)推出來的語言就可以稱呼為小家碧玉了。大家閨秀和小家碧玉各有風姿,在早期的開發(fā)中是各有千秋,一般來說企業(yè)應用采取的是java/jsp/ejb等;互聯(lián)網(wǎng)應用是php/mysql

3、/apache/linux;大家井水不犯河水,各自在自己的領(lǐng)域中用著不同的開發(fā)語言。不過隨著小家碧玉這幾年越發(fā)出落得玲瓏綽約,大家也爭相使用,象spring,hibernate,tomcat都是其中的佼佼者;開發(fā)模式也有了極大的改進,從早期model1演變成了隨后的model2,再到目前基于框架的快速開發(fā),乃至現(xiàn)在推崇平臺開發(fā);工具也從當年的editplus/ultraedit到后來的jbuilder,直到現(xiàn)在的eclipse一統(tǒng)天下。圖1model1模式圖2model2模式仿佛是一夜春風來,千樹萬樹梨花開,在java誕生1

4、5年后,我們處在一個前所未有的面臨選擇的境地:各種各樣的軟件工具,框架,平臺紛至沓來;銀彈/非銀彈爭論不休,開發(fā)方法論孰是孰非皆無定論,此時此刻只有windowsnet氣定神閑,整體解決方案,全套開發(fā)工具,所見即所得界面,開發(fā)就這么容易,可惜我選擇的是Java路線,結(jié)果在選型,搭配上花不少的時間,也走了不少的彎路。一路走來,項目之中的苦與樂在內(nèi)心中醞釀發(fā)酵,如何抽象組件,如何提煉成平臺,如何包裝產(chǎn)品,也漸漸有了一點感悟和體會。作項目苦,作項目累,留給自己的只有滿身的疲憊;在上線的倒計時中,程序員們在疲憊不堪的編寫代碼調(diào)試bu

5、g,項目經(jīng)理們殫精竭慮計算如何上線,不同的部門之間相互扯皮推諉。幾年下來,項目還是手工作坊方式,自己沒有什么長進。疲憊啊疲憊,不在項目中錘煉,就要在項目中頹廢。如何跳出項目的怪圈呢?國內(nèi)的軟件公司大體可以分為3類:1作項目;2做作平臺/產(chǎn)品,有的公司是兼而有之,以項目養(yǎng)產(chǎn)品;3、做運營。項目導向的公司要做好做強做長久,以下幾個步驟是不可缺少的,只是不同的階段深入的程度有所差異:1、業(yè)務邏輯組件化;2、基礎代碼框架化;3、開箱即用平臺化1、組件化:公司在項目中已經(jīng)沉淀了這么多年,已經(jīng)積累了很多可用的業(yè)務組件,包括報表展現(xiàn)、Ex

6、tJs圖形開發(fā),flex頁面設計工具,規(guī)則引擎,流程引擎等。應用這些組件,在項目實施中減少了開發(fā)時間,提高了工作效率。但這些組件分布在不同的部門,大家各用各,甚至還有些敝帚自珍的想法;有的基礎組件是你有我有大家有,重復開發(fā)。對于這些組件如何甄別和挑選,不浪費本來就很珍貴的人力資源,則在部門之間應該有個通盤考慮。就算各個組件都匯聚了,如何互聯(lián)互通,以及在同一個項目內(nèi)發(fā)揮預期作用,這就考驗組件的設計方式了。我們的組件基本上都是圍繞數(shù)據(jù)/表來的,涉及一些增刪改查以及前端展現(xiàn),著重要考慮是事務以及組件之間的關(guān)聯(lián),因為我們的組件是需要

7、被上層更大的組件,或者模塊所調(diào)用,如果組件對外暴露的是api接口,就不能假設上層應用對組件之間的調(diào)用邏輯順序。如何設計一個比較通用的組件?有些地方可能需要注意:1、事務的調(diào)用,組件內(nèi)部不能發(fā)起事務的開始,這個權(quán)利交給了用戶,用戶或在client顯示申明,或是在spring內(nèi)部聲明。2、組件可能要使用充血模式而不是貧血模式,即在組件內(nèi)部中維護自身的數(shù)據(jù)和狀態(tài),并同上層的業(yè)務系統(tǒng)的數(shù)據(jù)同時提交或者同步回滾。3、組件內(nèi)部的各個類需要自身來維系,比如工廠模式,多例單例,而不能依靠AOP的能力,否則每集成一個組件,都尾大不掉的帶一個s

8、pring,彼此之間有影響,項目內(nèi)部可以使用spring,但在組件級別,類與類的關(guān)系得在組件內(nèi)部考慮。4、組件要支持多線程環(huán)境,要不給方法加入同步,要不給屬性加入threadlocal支持5、組件之間如果都有對數(shù)據(jù)的持久化處理,建議給表加上鎖的方式。比如加上樂觀鎖,雖然有時候用戶提交后會彈

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。
关闭