java隨記

          堅持就是勝利!

           

          兩道小面試題的背后

          跟同學(xué)聊了通電話,討論了一下需求理論,架構(gòu),軟件擴展性方面
          的東西。好吧。。。搞硬件的跟搞軟件的瞎聊一下這個好象也不奇
          怪。
          軟件易擴展屬于開發(fā)質(zhì)量要求。這樣一些非功能性需求往往很重要
          。理論其實很重要,嗯,從兩道面試題說起,面試官都喜歡問,嗯,
          俺也喜歡問。遺憾的是沒聽到過想要聽的答案。
          1,重定向redirect和內(nèi)部跳轉(zhuǎn)forwar有什么區(qū)別或在什么場景使
          用?
             求職者多半的回答是redirect是瀏覽器執(zhí)行的跳轉(zhuǎn)動作,好吧
          給8分9分的也行。 forward是應(yīng)用服務(wù)器內(nèi)部跳轉(zhuǎn),屬同一個
          request好吧,給10分也行。網(wǎng)上的面試寶典答案也跟這個類似。
              沒毛病。但不甚滿意。redirect本質(zhì)是應(yīng)用服務(wù)器通過http協(xié)
          議發(fā)出一個html文本,里面包含refer:URL指令,瀏覽器解析到這個
          指令后跳轉(zhuǎn)到那個URL。嗯,至少了解http原理,給10分。forward
          確實是內(nèi)部跳轉(zhuǎn),可是怎么用頗值得探討一下。我們知道設(shè)計模式
          中的簡單工廠類經(jīng)典實現(xiàn)是 if(1) return 產(chǎn)品1 ; else return 
          默認(rèn)產(chǎn)品; 。 那forward所在控制器類能否扮演一個簡單工廠類的
          角色呢?if(1)forward 控制器1; else forward 控制器2; 應(yīng)用場
          景舉例,比如我有一個產(chǎn)品查詢頁面,有兩種不同的實現(xiàn)方式,一
          種是通過solr引擎檢出,一種是數(shù)據(jù)庫直接檢出結(jié)果。通過forward
          ,可以把兩種實現(xiàn)同時寫到產(chǎn)品里。可配或者根據(jù)不同條件用不同的
          解決方案。這樣就變成了 (頁面A,控制器A ,serviceA),(頁面A,
          控制器B,serviceB)。兩個組件共用一個頁面A。 因為是兩個組件,
          擴展性自是極好的,比如我們還可以增加一個內(nèi)存數(shù)據(jù)庫查詢結(jié)果
          的解決方案,而只用簡單的修改一下 forward所在的控制器類。簡
          單工廠模式加策略模式的組合應(yīng)用。理解設(shè)計模式和組件的概念,
          有思考,嗯,給12分。
          2,mvc模式中的m,v,c 分別指什么?
             m就不必多說。但是v就很值得思量。 一般的回答是jsp和swing. 
          這種說法很片面,也可以說沒理解mvc。 v指view,翻譯是視圖,貌
          似jsp和swing的回答沒毛病,網(wǎng)上也多說是這個。但v準(zhǔn)確的理解應(yīng)
          該是邊界,即和系統(tǒng)交互的一切東西。比如觸發(fā)某個任務(wù)的時鐘,
          調(diào)用系統(tǒng)的某個外部系統(tǒng),人機交互的界面等.這樣子的理解,即
          使沒有界面的功能也同樣適用mvc. c也有講究,就不說了。
              編程確實是一種藝術(shù),但是很多東西都很抽象,理解了就是一
          種思想,沒理解或不通透就是一種工具。搞程序的和搞硬件的我想
          理論比經(jīng)驗更重要。因為經(jīng)驗有可能是錯的,理解透了的理論則不
          會。

          posted on 2017-04-28 14:00 傻 瓜 閱讀(1178) 評論(0)  編輯  收藏


          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導(dǎo)航:
           

          導(dǎo)航

          統(tǒng)計

          常用鏈接

          留言簿(7)

          我參與的團隊

          隨筆分類

          隨筆檔案

          文章分類

          友情鏈接

          搜索

          積分與排名

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 五家渠市| 尚义县| 蓝田县| 平邑县| 德江县| 丰原市| 阿巴嘎旗| 南靖县| 梅州市| 通许县| 梁平县| 溧水县| 门头沟区| 金阳县| 黄石市| 昌平区| 阜南县| 青龙| 瓦房店市| 平果县| 扎兰屯市| 类乌齐县| 徐水县| 缙云县| 新昌县| 亚东县| 嘉祥县| 广水市| 潮安县| 浏阳市| 荥阳市| 龙川县| 龙口市| 鄂尔多斯市| 平乡县| 昭通市| 鄂州市| 太原市| 肇庆市| 安达市| 井陉县|