程序員們?cè)谶M(jìn)行面試的時(shí)候肯定會(huì)被問(wèn)道很多技術(shù)題目,提前看面試題是一個(gè)非常好的幫助,但苦于自己記不住回答不上來(lái),這里小千就總結(jié)了一下面試題回答技巧,幫助大家更好的記憶和回答問(wèn)題,廢話不多說(shuō)下面上貨了~
一、確定題目類(lèi)型
把海量的技術(shù)面試題,進(jìn)行分類(lèi)。你會(huì)驚奇地發(fā)現(xiàn),這些面試題無(wú)非就是這三大類(lèi),分別是有:
固定答案的封閉式問(wèn)題、考你理解深度的開(kāi)放式問(wèn)題、考你編程能力的邏輯算法題
舉例說(shuō)明:
題目1:Vue 的生命周期有哪些?
題目2:請(qǐng)談一談你對(duì) MVVM / MVC / MVP 的理解。
題目3:請(qǐng)用 js 計(jì)算 1 ~ 10000 中出現(xiàn)的 0 的次數(shù)。
不難發(fā)現(xiàn)
題目1是有固定答案的封閉式面試題;題目2開(kāi)放式題目,側(cè)重考你的理解深度;題目3就是典型的邏輯算法題了。
因此,在你“背誦”面試題的第一步,你首先要搞清楚的就是題目類(lèi)型。不同類(lèi)型的題目,預(yù)示著你需要搭建不同結(jié)構(gòu)的知識(shí)體系,你需要提取不同深度的知識(shí)重點(diǎn)。
二、制定答題框架
當(dāng)確定了面試題題目類(lèi)型以后,就可以開(kāi)始制定“背誦”框架了,下面舉例說(shuō)明。
以 題目1 為例:
題目1是一道有固定答案的封閉式題目,你可以使用并列式結(jié)構(gòu)來(lái)提取面試題中的知識(shí)要點(diǎn)。
舉例:在初始化階段有 beforeCreate、created,在掛載階段有 beforeMount、mounted,在更新階段有 beforeUpdate、updated,等。
你還可以使用遞進(jìn)式結(jié)構(gòu)來(lái)提取面試題中的知識(shí)要點(diǎn)。
舉例:Vue生命周期總共有 11 個(gè),常用的有 8 個(gè),分為初始化、掛載、更新和銷(xiāo)毀這 4個(gè)階段。工作中我常用的有 created、mounted、beforeDestroy 這三個(gè),created里我常用來(lái)觸發(fā)調(diào)api 接口,mounted 中我常用來(lái)執(zhí)行 DOM 更新后的相關(guān)邏輯操作,比如開(kāi)啟定時(shí)器等,beforeDestroy 中,我常用來(lái)清除定時(shí)器、清除Vuex中緩存等。良好地理解生命周期,可以幫助我們高效地解決工作中的若干bug,比如……
當(dāng)你有了這種 框架結(jié)構(gòu)式的答題思維 以后,我們?cè)跍?zhǔn)備面試題、背誦面試題時(shí),就可以刻意地從大段大段的答案中提取出重點(diǎn)知識(shí),而不是像背課文一般死記硬背。這種結(jié)構(gòu)化的背題方式,不僅效率高,而且記憶更持久。
事實(shí)上,用人單位和面試官需要的是一個(gè)有邏輯的程序員,而不只是一個(gè)“能背誦”的“記憶力大師”。
以 題目2 為例:
題目2是一道開(kāi)放式題目,你采用 并列式結(jié)構(gòu) 來(lái)準(zhǔn)備面試題,那么你只用分條說(shuō)明白 MVVM、MVC 和 MVP 即可。如果你采用 遞進(jìn)式結(jié)構(gòu) 來(lái)準(zhǔn)備,你可以先從前端框架發(fā)展史的角度講一講 3 種架構(gòu)模式的各自特點(diǎn),再講一講彼此的優(yōu)勢(shì)和劣勢(shì),最后談一談你對(duì) MVVM 的深入理解。
以 題目3 為例:
題目3是一道邏輯算法題,你可以采用 順承式結(jié)構(gòu) 來(lái)準(zhǔn)備。要完成這道算法題,你該怎樣寫(xiě)代碼,你的思路是怎樣的。第1步干什么,第2步干什么,第3步干什么……這有點(diǎn)“面向過(guò)程編程”的味道了。即使你無(wú)法在白紙上手寫(xiě)出正確代碼,你仍然可以借助偽代碼來(lái)展示你的解題思路和詳細(xì)步驟。
你還可以采用 并列式結(jié)構(gòu) 來(lái)準(zhǔn)備這道題,即你有 N 種解題思路,逐一把它們說(shuō)清楚。如果采用 遞進(jìn)式結(jié)構(gòu) 來(lái)準(zhǔn)備,你除了要逐一說(shuō)出解題思路,還要對(duì)這 N 種解題方案進(jìn)行優(yōu)劣分析,最后指出你的終極選擇、并解釋為什么。
從上面三個(gè)例子可以發(fā)現(xiàn),只要你清楚了題目類(lèi)型,你就可以靈活地選擇 3 種不同的答題框架來(lái)準(zhǔn)備面試題。
并列式結(jié)構(gòu):強(qiáng)調(diào)對(duì)重點(diǎn)知識(shí)的提取與羅列。
遞進(jìn)式結(jié)構(gòu):要求你能夠由淺入深、層層升級(jí)。
順承式結(jié)構(gòu):要求你有較強(qiáng)的過(guò)程化思維、知道先做什么再做什么。
三、淡定應(yīng)對(duì)追問(wèn)
在技術(shù)面試過(guò)程中,有經(jīng)驗(yàn)的面試官都會(huì)不斷地追問(wèn),比如,當(dāng)你回答了“Vue常用生命周期”后,面試官可能會(huì)追問(wèn)——“請(qǐng)問(wèn)在 beforeMount 和 mounted 之間,Vue在后臺(tái)做了哪些工作?”。
我可以采用 順承式結(jié)構(gòu) 來(lái)回答這個(gè)問(wèn)題。我說(shuō):“beforeMount 和 mounted 之間,Vue在后臺(tái)做了 3 件事。
第1步,當(dāng)聲明式 data 發(fā)生變化時(shí),Vue先是生成一個(gè)新的虛擬DOM副本。第2步,Vue將對(duì)內(nèi)存中的這兩個(gè)虛擬DOM執(zhí)行 diff 運(yùn)算,找出 data變化前后的最小差異。第3步,Vue使用真實(shí)的DOM操作,把上一步中找到的最小差異更新到頁(yè)面中去,視圖完成更新。
聰明的你又發(fā)現(xiàn)了,在回答這個(gè)被追問(wèn)的問(wèn)題時(shí),我是不是提到了很多可能被繼續(xù)追問(wèn)的新知識(shí)點(diǎn)啊,比如“虛擬DOM”、“Diff運(yùn)算”等。沒(méi)錯(cuò),面試官很有可能繼續(xù)追問(wèn)——“什么是虛擬DOM?”、“Diff 運(yùn)算是怎么實(shí)現(xiàn)的?”等。
這就是“追問(wèn)”的藝術(shù),有經(jīng)驗(yàn)的面試官一定會(huì)把你問(wèn)到“絕境”,把你問(wèn)倒為止。追問(wèn)的問(wèn)題也會(huì)越來(lái)越深、越來(lái)越難,如此才能確定出你的真實(shí) Level ——你值多少錢(qián),你是否符合我公司的用人需求。
如果你有時(shí)間和精力,你仍然可以使用“制定答題框架”中學(xué)習(xí)到的 3 種答題框架,來(lái)應(yīng)對(duì)一切可能被追問(wèn)的問(wèn)題。本小節(jié)的重點(diǎn),是教你另外 3 個(gè)技巧原則,助你從容應(yīng)對(duì)被追問(wèn)。
不挖坑原則
指的是,當(dāng)你在回答面試問(wèn)題時(shí),盡量不要提那些自己不懂的、或者一知半解的知識(shí)點(diǎn)。比如,如果你對(duì) Diff 運(yùn)算不太理解,為了避免被追問(wèn),你在回答“beforeMount 和 mounted 之間 Vue做了什么”這一問(wèn)題時(shí),應(yīng)該避免提到“Diff 運(yùn)算”一詞,或者別過(guò)度提到它。這就是“不挖坑原則”,請(qǐng)確保你說(shuō)出來(lái)的關(guān)鍵詞和知識(shí)點(diǎn),都是你已經(jīng)做過(guò)功課的。
不吹牛原則
這個(gè)原則很容易理解,就是你在回答問(wèn)題,不要說(shuō)大話。比如說(shuō),“我精通JavaScript”,“我是一個(gè)高級(jí)全棧開(kāi)發(fā)工程師”等,這都屬于“吹牛”。對(duì)大多數(shù)人來(lái)講,可以說(shuō)“熟練使用”,但說(shuō)“精通”就有點(diǎn)夸張了。一旦你說(shuō)了大話,這很容易遭到面試官的追問(wèn)。萬(wàn)一你答不上來(lái),會(huì)給面試官留下“不誠(chéng)實(shí)”的印象,那么你的面試成功率必將大大降低。
擅引導(dǎo)原則
這個(gè)原則和“不挖坑原則”有異曲同工之妙。“不挖坑原則”是避免提到自己陌生的領(lǐng)域,而“擅引導(dǎo)原則”是鼓勵(lì)你多提自己熟悉的領(lǐng)域、多提自己做過(guò)功課的領(lǐng)域,通過(guò)語(yǔ)言強(qiáng)調(diào)等技巧,把面試過(guò)程向有利于自己的方向引導(dǎo)。有經(jīng)驗(yàn)的求職者,要有這樣的自信,要敢于引導(dǎo)面試過(guò)程,讓自己占據(jù)溝通的主動(dòng)立場(chǎng)。在這個(gè)3 個(gè)原則的指導(dǎo)下,相信你一定可以更好地準(zhǔn)備面試。在面試準(zhǔn)備階段,用正確的方法、有目的地“背”題,有邏輯地答題,講自己擅長(zhǎng)的話題,效果肯定會(huì)更好。
面試,是我們進(jìn)入理想公司的第一道門(mén)檻。毫不夸張地講,面試過(guò)程中七分靠“演技”、三分靠實(shí)力。作為求職者,你必須清楚,你需要做大量的前期準(zhǔn)備,才有可能淘汰其它的面試競(jìng)爭(zhēng)者。打鐵還需自身硬,你準(zhǔn)備好了嗎?
以上就是面試回答技巧的介紹了,同學(xué)們?cè)诒痴b面試題之前看一下絕對(duì)會(huì)對(duì)你的面試有幫助的,最后同學(xué)對(duì)web前端培訓(xùn)感興趣的話,不妨了解一下千鋒web前端培訓(xùn)班提供的培訓(xùn)課程,更有免費(fèi)的學(xué)習(xí)資料可以領(lǐng)取,趕緊聯(lián)系在線老師吧~