自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

框架讓程序員變笨?

開發(fā) 前端
上周,我做了幾次面試,要招幾名有5年工作經(jīng)驗(yàn)的高級(jí)Java開發(fā)人員。但當(dāng)面試結(jié)束后,我感覺到,各種框架(frameworks)使開發(fā)變得容易,但同時(shí),也使程序員變笨。

本文是從 Are frameworks making developers dumb? 這篇文章翻譯而來。

上周,我做了幾次面試,要招幾名有5年工作經(jīng)驗(yàn)的高級(jí)Java開發(fā)人員。但當(dāng)面試結(jié)束后,我感覺到,各種框架(frameworks)使開發(fā)變得容易,但同時(shí),也使程序員變笨。

每個(gè)人都會(huì)在他們的簡(jiǎn)歷中羅列出幾乎所有的新框架,他們能“熟練的使用Spring,Hibernate,Web Services等”。

下面是面試的過程。

我: 你在你最近的項(xiàng)目中使用了Spring。使用Spring有什么好處?

應(yīng)試者: 我們使用XML配置出bean信息,Spring能夠幫我們實(shí)例化這些bean,供我們使用。

我:如果Spring只是用來創(chuàng)建對(duì)象,那我們干嘛要用它?我們可以直接使用“new”來實(shí)例化各種依賴關(guān)系。為什么我們還要在XML里配置類的名字、要從Spring里取對(duì)象?

應(yīng)試者:如果改天我們又需要對(duì)接口做另外一種實(shí)現(xiàn),我們開發(fā)出實(shí)現(xiàn)后,更改一下XML配置,就能使用我們的新實(shí)現(xiàn)了。我們不需要去修改Java類和重新編譯它們。

我:可是既然你寫出了新的Java類,你必然要重新編譯你的項(xiàng)目。

至于XML里的變化,99%的時(shí)間里你的XML都是打包在war 或 ear 文件里的。

所以,你只需要運(yùn)行一下ant腳本,把你所有的變更都包在war文件里就行了。你的“如果使用XML就不需要編譯”的觀點(diǎn)是站不住腳的。

應(yīng)試者:唔,但依賴注入的設(shè)計(jì)模式建議采用這種做法。

我:好吧。我們就先聊到這。人力資源部會(huì)給你打電話的。

 

面試另外一個(gè)家伙:

我:你能描述一下你最近開發(fā)的項(xiàng)目、以及使用到的技術(shù)嗎?

應(yīng)試者: 那是個(gè)XYZ系統(tǒng),我們使用了Spring,Hibernate,REST WebServices。

我:那好。你能解釋一下RESTful嗎?

應(yīng)試者:我們使用@RequestMapping(value=”/url”, method=”POST”)來開發(fā)RESTful應(yīng)用。我們還使用了PUT,DELETE方法。

我:哦,那RESTful個(gè)什么概念?

應(yīng)試者: 我不是說了嗎,如果你使用 @RequestMapping(value=”/url”, method=”POST”),你就是在開發(fā)RESTful應(yīng)用。

我:哦,你對(duì)Hibernate如何?

應(yīng)試者:我這兩年一直在使用Hibernate。我對(duì)Hibernate很熟悉。

我:跟JDBC比起來,Hibernate有什么優(yōu)勢(shì)?

應(yīng)試者:使用Hibernate,我們不需要寫任何跟數(shù)據(jù)庫(kù)交互的東西,Hibernate會(huì)幫我們處理這些。

我:那Hibernate怎么能知道你的項(xiàng)目需要如何的存取?

應(yīng)試者:如果我們使用了Hibernate,它會(huì)幫我們完成存儲(chǔ),更新,取數(shù)據(jù)等數(shù)據(jù)庫(kù)操作。

我:哦,哦。你在業(yè)余時(shí)間會(huì)讀一些技術(shù)相關(guān)的博客嗎?

應(yīng)試者:當(dāng)然,我對(duì)Hibernate的深入掌握就是這樣學(xué)會(huì)的。

我:非常好,很高興見到你。我們的人力資源部會(huì)給你打電話的。

 

面試過程就這樣…

我絕對(duì)相信各種框架會(huì)提高程序員的工作效率。但程序員也應(yīng)該努力去了解這些框架是如何工作的。你并不需要理解各種框架的所有內(nèi)部工作原理。如果你非常的擅長(zhǎng)Servlets和JSP,那你就很容易理解諸如Struts,Spring MVC等Java Web框架。如果你不了解這些基礎(chǔ)知識(shí),很顯然,所有你的回答只能是“框架/標(biāo)記/XML幫我們做了這些”。

我強(qiáng)烈建議所有剛開始職業(yè)生涯的Java程序員都要認(rèn)真學(xué)習(xí)Java核心,Servlets,JSP知識(shí)。只有這樣你才能正確的理解各種框架的工作原理。

原文:http://www.aqee.net/are-frameworks-making-developers-dumb/

【編輯推薦】

  1. 硅谷“老黃忠”程序員:Google+設(shè)計(jì)者上榜
  2. 程序員離職前應(yīng)知道的12件事
  3. 讓程序員憤怒的10種事
  4. 有理想的程序員必須知道的15件事
  5. 我們程序員為什么難晉升
責(zé)任編輯:陳貽新 來源: 外刊IT評(píng)論
相關(guān)推薦

2015-04-28 10:13:36

Jenkins蒲公英

2013-08-05 09:55:47

程序員

2014-04-14 16:02:01

2016-03-02 10:49:08

程序員快樂

2020-06-05 07:52:25

程序員離職編碼

2015-07-20 09:21:19

程序員非程序員技能

2013-08-20 09:33:59

程序員

2012-03-06 09:22:46

程序員

2020-09-25 20:48:15

程序員技能開發(fā)者

2021-08-28 23:26:14

程序員編碼電腦

2011-08-29 17:05:55

2015-06-16 13:00:43

程序員跳槽原因

2021-07-26 15:57:47

程序員谷歌開發(fā)

2009-05-21 15:58:12

程序員工作經(jīng)驗(yàn)職場(chǎng)

2012-05-25 10:15:06

Java程序員面試題

2010-07-29 11:00:59

程序員

2022-07-17 13:15:40

程序員技術(shù)寫作

2011-05-13 14:34:02

程序員

2015-04-10 19:37:34

程序員

2022-03-16 11:10:19

程序員社區(qū)技術(shù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)