1. 程式人生 > >ssh框架被淘汰——上海第一手資訊(綜合了我剛剛就業的的幾位同學的感受)

ssh框架被淘汰——上海第一手資訊(綜合了我剛剛就業的的幾位同學的感受)

時間是2016年11.12月份。如果看到距離這個時間太遠,就失去了時效性。

ssh框架已經有些被淘汰的邊緣,部分公司,起碼小部分已經不用ssh了,都用ssm代替。而且這個趨勢不是最近才有的,聽說已經有些年頭了。springMVC仍在流行,或者說是成為了新的基礎。
當然因為我的同學相對於龐大的上海以及市場來說微不足道,但也算看出來一些端倪。

struts配置太過於複雜,而且太不經用,經常報錯,維護使用不便,再加上漏洞前科,很多中小型都放棄了使用,直接用spingMVC替代。而hibernate效能一般,再加上sql語句全封裝,而Mybatis是半封裝,更加靈活。效能強大,已經有了取而代之的趨勢。

這樣下來就是SpringMVC+Spring+MyBatis的整合使用。
這裡可以學習慕課網的:
搞定Java SSM框架開發:
http://www.imooc.com/course/programdetail/pid/59
從這一點來說,慕課網還是很給力的。

作為網際網路企業,本身就追求極限,技術,進步,跟新換代是任何行業都比擬不了的。所以才有了一輩子都在追趕學習的,掉坑裡永遠爬不出來的感覺。即使是java之父,如果不進行跟新換代,在矽谷面試也是連遭拒絕。

這對於我這個已經31才轉行掉坑裡的人來說,實在是莫大的壓力。
不過一線的網際網路公司都會有自已的框架,而且企業級開發,特別是一些特殊的企業,除了看重開發效率和成本,還有就是安全問題,安全穩定是第一位,效能與效率是第二位,人才供應量是第三位,所以喜歡用舊的穩定的東西,人員也好招。老的技術一時半會不會 被淘汰。

有的大型企業都有自己的資料庫,貌似聽說淘寶開始使用mysql,隨著業務量的增加,變成了處理能力更強大的oracle,在隨著大資料時代的到來,又是基於MySQL的MyISAM引擎作為底層的資料儲存引擎開發自己的獨有資料庫。

很多企業雖然沒有獨立開發資料庫的能力,但是卻多數有著自己的框架,或許只是經典框架的一些修改。單頁五花八門,所以很多跳槽的人,每跳一次,就要學習一次,所以經典的還是經典 的。特別是框架的核心原理永遠都不會過時。比如Spring你需要了解兩個概念AOP和IOC,更進一步就是Spring的核心技術“動態代理”。

語言也是如此,說不定什麼時候java也被淘汰了呢。
ssh是經典的框架基礎,任何語言都有基礎,學好基礎,就掌握了思想。
任何程式語言都會被淘汰,被淘汰只是時間問題,而且這個問題也不是程式設計師要考慮的問題,真正的程式設計師是心中無碼,他只有思想,思想才是最重要的,程式語言對他來說都是浮雲。何況框架。

而且框架的核心其實是邏輯,是處理流程,是清晰的條理。話說當年struts2一出,頓時解決了一個時代難題,現在竟然也到了被淘汰的邊緣。實在是可惜。

用知乎一夢千年的總結結束本文。
我們到底要什麼?
在回顧了我們寫程式碼的歷史之後,我們回過頭來看看,我們到底要什麼?
無論是使用JSP,還是使用Struts1,或是Struts2,我們至少都需要一些必須的元素(如果沒有這些元素,或許我還真不知道這個程式會寫成什麼樣子):

1.資料

在這個例子中,就是name和password。他們共同構成了程式的核心載體。事實上,我們往往會有一個User類來封裝name和password,這樣會使得我們的程式更加OO。無論怎麼說,資料會穿插在這個程式的各處,成為程式執行的核心。

2.頁面展示

在這個例子中,就是login.jsp。沒有這個頁面,一切的請求、驗證和錯誤展示也無從談起。在頁面上,我們需要利用HTML,把我們需要展現的資料都呈現出來。同時我們也需要完成一定的頁面邏輯,例如,錯誤展示,分支判斷等等。

3.處理具體業務的場所

在這裡,不同階段,處理具體業務的場所就不太一樣。原來用JSP和Servlet,後來用Struts1或者Struts2的Action。
上面的這些必須出現的元素,在不同的年代,被賦予了不同的表現形式,有的受到時代的束縛,其表現形式非常落後,有的已經不再使用。但是撥開這些外在的表現形式,我們就可以發現,這不就是我們已經熟門熟路的MVC嘛?
資料 —— Model
頁面展示 —— View
處理具體業務的場所 —— Control
所以,框架不重要,概念是王道。只要能夠深刻理解MVC的概念,框架對你來說,只是一個jar包而已。
框架是為了解決一個又一個在Web開發中所遇到的問題而誕生的。不同的框架,都是為了解決不同的問題,但是對於程式設計師而言,他們只是jar包而已。框架的優缺點的評論,也完全取決於其對問題解決程度和解決方式的優雅性的評論。所以,千萬不要為了學習框架而學習框架,而是要為了解決問題而學習框架,這才是一個程式設計師的正確學習之道。
另外再說一點被淘汰與用來替換的技術,git代替svn。
流行中介軟體。
maven