六月丁香五月婷婷,丁香五月婷婷网,欧美激情网站,日本护士xxxx,禁止18岁天天操夜夜操,18岁禁止1000免费,国产福利无码一区色费

學(xué)習(xí)啦>創(chuàng)業(yè)指南>職場(chǎng)>面試題>

程序員經(jīng)典面試題目

時(shí)間: 芷晴0 分享

通常我們?cè)?a href='http://www.yishupeixun.net/speech/mianshi/' target='_blank'>面試計(jì)算機(jī)程序員時(shí),會(huì)遇到各種各樣的問(wèn)題。現(xiàn)在我們把程序員面試所要遇到的問(wèn)題做了一個(gè)總結(jié)與歸納。下面小編給大家?guī)?lái)程序員經(jīng)典面試題目有哪些,希望能幫助到大家!

2021年前端面試題目

1.1、前端 MV框架的意義

早期前端都是比較簡(jiǎn)單,基本以頁(yè)面為工作單元,內(nèi)容以瀏覽型為主,也偶爾有簡(jiǎn)單的表單操作,基本不太需要框架。

隨著 AJAX 的出現(xiàn),Web2.0的興起,人們可以在頁(yè)面上可以做比較復(fù)雜的事情了,然后前端框架才真正出現(xiàn)了。

如果是頁(yè)面型產(chǎn)品,多數(shù)確實(shí)不太需要它,因?yàn)轫?yè)面中的 JavaScript代碼,處理交互的絕對(duì)遠(yuǎn)遠(yuǎn)超過(guò)處理模型的,但是如果是應(yīng)用軟件類(lèi)產(chǎn)品,這就太需要了。

長(zhǎng)期做某個(gè)行業(yè)軟件的公司,一般都會(huì)沉淀下來(lái)一些業(yè)務(wù)組件,主要體現(xiàn)在數(shù)據(jù)模型、業(yè)務(wù)規(guī)則和業(yè)務(wù)流程,這些組件基本都存在于后端,在前端很少有相應(yīng)的組織。

從協(xié)作關(guān)系上講,很多前端開(kāi)發(fā)團(tuán)隊(duì)每個(gè)成員的職責(zé)不是很清晰,有了前端的 MV框架,這個(gè)狀況會(huì)大有改觀。

之所以感受不到 MV框架的重要性,是因?yàn)镸odel部分代碼較少,View的相對(duì)多一些。如果主要在操作View和Controller,那當(dāng)然 jQuery 這類(lèi)庫(kù)比較好用了。

參考《前端 MV框架的意義》

1.2、請(qǐng)簡(jiǎn)述盒模型

IE6盒子模型與W3C盒子模型。

文檔中的每個(gè)元素被描繪為矩形盒子。盒子有四個(gè)邊界:外邊距邊界margin, 邊框邊界bder, 內(nèi)邊距邊界padding與內(nèi)容邊界content。

CSS3中有個(gè)box-sizing屬性可以控制盒子的計(jì)算方式,

content-box:padding和bder不被包含在定義的width和height之內(nèi)。對(duì)象的實(shí)際寬度等于設(shè)置的width值和bder、padding之和。(W3C盒子模型)

bder-box:padding和bder被包含在定義的width和height之內(nèi)。對(duì)象的實(shí)際寬度就等于設(shè)置的width值。(IE6盒子模型)

參考《盒模型》

1.3、請(qǐng)你談?wù)凜ookie的弊端

a. 每個(gè)特定的域名下最多生成的cookie個(gè)數(shù)有限制

b. IE和Opera 會(huì)清理近期最少使用的cookie,F(xiàn)irefox會(huì)隨機(jī)清理cookie

c. cookie的最大大約為4096字節(jié),為了兼容性,一般不能超過(guò)4095字節(jié)

d. 安全性問(wèn)題。如果cookie被人攔截了,那人就可以取得所有的session信息。

1.4、瀏覽器本地存儲(chǔ)

在HTML5中提供了sessionStage和localStage。

sessionStage用于本地存儲(chǔ)一個(gè)會(huì)話(session)中的數(shù)據(jù),這些數(shù)據(jù)只有在同一個(gè)會(huì)話中的頁(yè)面才能訪問(wèn)并且當(dāng)會(huì)話結(jié)束后數(shù)據(jù)也隨之銷(xiāo)毀,是會(huì)話級(jí)別的存儲(chǔ)。

localStage用于持久化的本地存儲(chǔ),除非主動(dòng)刪除數(shù)據(jù),否則數(shù)據(jù)是永遠(yuǎn)不會(huì)過(guò)期的。

1.5、web stage和cookie的區(qū)別

a. Cookie的大小是受限的

b. 每次你請(qǐng)求一個(gè)新的頁(yè)面的時(shí)候Cookie都會(huì)被發(fā)送過(guò)去,這樣無(wú)形中浪費(fèi)了帶寬

c. cookie還需要指定作用域,不可以跨域調(diào)用

d. Web Stage擁有setItem,getItem等方法,cookie需要前端開(kāi)發(fā)者自己封裝setCookie,getCookie

e. Cookie的作用是與服務(wù)器進(jìn)行交互,作為HTTP規(guī)范的一部分而存在 ,而Web Stage僅僅是為了在本地“存儲(chǔ)”數(shù)據(jù)而生

f. IE7、IE6中的UserData通過(guò)簡(jiǎn)單的代碼封裝可以統(tǒng)一到所有的瀏覽器都支持web stage

1.6、對(duì)BFC規(guī)范的理解

BFC全稱是Block Fmatting Context,即塊格式化上下文。它是CSS2.1規(guī)范定義的,關(guān)于CSS渲染定位的一個(gè)概念。

BFC是頁(yè)面CSS 視覺(jué)渲染的一部分,用于決定塊盒子的布局及浮動(dòng)相互影響范圍的一個(gè)區(qū)域。

BFC的一個(gè)最重要的效果是,讓處于BFC內(nèi)部的元素與外部的元素相互隔離,使內(nèi)外元素的定位不會(huì)相互影響。

利用BFC可以閉合浮動(dòng),防止與浮動(dòng)元素重疊。

參考《Learning BFC》

1.7、線程與進(jìn)程的區(qū)別

a. 一個(gè)程序至少有一個(gè)進(jìn)程,一個(gè)進(jìn)程至少有一個(gè)線程

b. 線程的劃分尺度小于進(jìn)程,使得多線程程序的并發(fā)性高

c. 進(jìn)程在執(zhí)行過(guò)程中擁有獨(dú)立的內(nèi)存單元,而多個(gè)線程共享內(nèi)存,從而極大地提高了程序的運(yùn)行效率

d. 每個(gè)獨(dú)立的線程有一個(gè)程序運(yùn)行的入口、順序執(zhí)行序列和程序的出口。但是線程不能夠獨(dú)立執(zhí)行,必須依存在應(yīng)用程序中,由應(yīng)用程序提供多個(gè)線程執(zhí)行控制

e. 多線程的意義在于一個(gè)應(yīng)用程序中,有多個(gè)執(zhí)行部分可以同時(shí)執(zhí)行。但操作系統(tǒng)并沒(méi)有將多個(gè)線程看做多個(gè)獨(dú)立的應(yīng)用,來(lái)實(shí)現(xiàn)進(jìn)程的調(diào)度和管理以及資源分配

1.8、你都使用哪些工具來(lái)測(cè)試代碼的性能?

JSPerf, Dromaeo

1.9、你遇到過(guò)比較難的技術(shù)問(wèn)題是?你是如何解決的?

1.10、常使用的庫(kù)有哪些?常用的前端開(kāi)發(fā)工具?開(kāi)發(fā)過(guò)什么應(yīng)用或組件?

關(guān)于性能測(cè)試的面試題目

1、如何識(shí)別系統(tǒng)瓶頸?

從TPS指標(biāo)分析,TPS即系統(tǒng)單位時(shí)間內(nèi)處理事務(wù)的數(shù)量。當(dāng)前隨著用戶數(shù)的增長(zhǎng)期系統(tǒng)每秒可處理的事務(wù)數(shù)是否也會(huì)增長(zhǎng)。

2、如何發(fā)現(xiàn)數(shù)據(jù)庫(kù)的相關(guān)問(wèn)題?

①通過(guò)運(yùn)行某些相應(yīng)的已獲取的SQL語(yǔ)句,判斷是否由于數(shù)據(jù)庫(kù)索引所導(dǎo)致的事務(wù)響應(yīng)過(guò)長(zhǎng)的問(wèn)題發(fā)生。

②通過(guò)實(shí)時(shí)監(jiān)控工具(nmon等)監(jiān)控分析:Ⅰ.系統(tǒng)在運(yùn)行過(guò)程中其CPU是否穩(wěn)定運(yùn)行或CPU耗用是否過(guò)高;Ⅱ.在系統(tǒng)運(yùn)行過(guò)程中其內(nèi)存是否存在內(nèi)存泄漏現(xiàn)象;

3、think_time的作用是什么?

①降低當(dāng)前運(yùn)行時(shí)壓力,環(huán)節(jié)對(duì)應(yīng)用服務(wù)器所造成的壓力;

②模擬真實(shí)生產(chǎn)用戶操作,考察對(duì)服務(wù)器所造成的影響。

4、進(jìn)行參數(shù)化的目的是什么?

①減少腳本的大小;

②便于腳本的維護(hù),從而更加真實(shí)的模擬生產(chǎn)環(huán)境的數(shù)據(jù)。

5、容量測(cè)試方法中為什么要以逐步遞增的方式進(jìn)行?

虛擬用戶數(shù)隨著負(fù)載時(shí)間的延長(zhǎng)而增加,可以幫助確定系統(tǒng)響應(yīng)時(shí)間減慢的準(zhǔn)確時(shí)間以及準(zhǔn)確的用戶數(shù)。

6、假設(shè)在測(cè)試過(guò)程中某些事務(wù)的響應(yīng)時(shí)間過(guò)長(zhǎng),但分析應(yīng)用服務(wù)、數(shù)據(jù)庫(kù)以及網(wǎng)絡(luò)都屬于正常現(xiàn)象,問(wèn)題可能出現(xiàn)的原因有哪些?

①LoadRunner客戶機(jī)器是否已無(wú)法承載當(dāng)前運(yùn)行壓力導(dǎo)致LoadRunner無(wú)法及時(shí)獲取從服務(wù)端返回的信息;

②Tink_time是否已忽略;

③確定當(dāng)前被測(cè)系統(tǒng)架構(gòu),是否為在每次測(cè)試過(guò)程中清楚緩存所導(dǎo)致。

7、如何發(fā)現(xiàn)應(yīng)用服務(wù)器的相關(guān)問(wèn)題?

①通過(guò)某些事務(wù)的運(yùn)行,判斷是否在應(yīng)用代碼層未進(jìn)行調(diào)優(yōu)導(dǎo)致事務(wù)響應(yīng)事件過(guò)長(zhǎng);

②通過(guò)實(shí)時(shí)監(jiān)控工具(nmon等)監(jiān)控分析:Ⅰ.系統(tǒng)在運(yùn)行過(guò)程中其CPU是否穩(wěn)定運(yùn)行或CPU耗用是否過(guò)高;Ⅱ.在系統(tǒng)運(yùn)行過(guò)程中其內(nèi)存是否存在內(nèi)存泄漏現(xiàn)象;Ⅲ.打開(kāi)相應(yīng)日志、分析在運(yùn)行過(guò)程中是否存在交易報(bào)錯(cuò)并獲取錯(cuò)誤原因查看是否由于代碼原因?qū)е陆灰族e(cuò)誤發(fā)生。

8、簡(jiǎn)述性能測(cè)試流程?

①分析性能需求:挑選用戶使用最頻繁的場(chǎng)景來(lái)測(cè)試,比如:登陸,搜索,下單等等。確定性能指標(biāo):比如:事務(wù)通過(guò)率為100%,TOP99%是5秒,最大并發(fā)用戶為1000人,CPU和內(nèi)存的使用率在70%以下;

②制定性能測(cè)試計(jì)劃,明確測(cè)試時(shí)間(通常在功能穩(wěn)定后,如第一輪測(cè)試后進(jìn)行)和測(cè)試環(huán)境和測(cè)試工具;

③編寫(xiě)測(cè)試用例;

④搭建測(cè)試環(huán)境,準(zhǔn)備好測(cè)試數(shù)據(jù);

⑤編寫(xiě)性能測(cè)試腳本;

⑥性能測(cè)試腳本調(diào)優(yōu)。設(shè)置檢查點(diǎn)、參數(shù)化、關(guān)聯(lián)、集合點(diǎn)、事務(wù),調(diào)整思考時(shí)間,刪除冗余腳本;

⑦設(shè)計(jì)測(cè)試場(chǎng)景,運(yùn)行測(cè)試腳本,監(jiān)控服務(wù)器;

⑧分析測(cè)試結(jié)果,收集相關(guān)的日志提單給開(kāi)發(fā);

⑨回歸性能測(cè)試;

⑩編寫(xiě)測(cè)試報(bào)告。

9、如何確定系統(tǒng)最大負(fù)載?

通過(guò)負(fù)載測(cè)試,不斷增加用戶數(shù),隨著用戶數(shù)的增加,各項(xiàng)性能指標(biāo)也會(huì)相應(yīng)產(chǎn)生變化,當(dāng)出現(xiàn)了性能拐點(diǎn),比如,當(dāng)用戶數(shù)達(dá)到某個(gè)數(shù)量級(jí)時(shí),響應(yīng)時(shí)間突然增長(zhǎng),那么這個(gè)拐點(diǎn)處對(duì)應(yīng)的用戶數(shù)就是系統(tǒng)能承載的最大用戶數(shù)。

10、性能測(cè)試指標(biāo)有哪些?

①響應(yīng)時(shí)間;

②吞吐量;

③Cpu;

④內(nèi)存;

⑤Io;

⑥D(zhuǎn)isk。

Shell 腳本面試題目

一、Shell腳本是什么、它是必需的嗎?

一個(gè)Shell腳本是一個(gè)文本文件,包含一個(gè)或多個(gè)命令。作為系統(tǒng)管理員,我們經(jīng)常需要使用多個(gè)命令來(lái)完成一項(xiàng)任務(wù),我們可以添加這些所有命令在一個(gè)文本文件(Shell腳本)來(lái)完成這些日常工作任務(wù)。

二、什么是默認(rèn)登錄shell,如何改變指定用戶的登錄shell?

在Linux操作系統(tǒng),“/bin/bash”是默認(rèn)登錄shell,是在創(chuàng)建用戶時(shí)分配的。使用chsh命令可以改變默認(rèn)的shell。

三、可以在shell腳本中使用哪些類(lèi)型的變量?

在shell腳本,我們可以使用兩種類(lèi)型的變量:①系統(tǒng)定義變量;②用戶定義變量。

系統(tǒng)變量:是由系統(tǒng)系統(tǒng)自己創(chuàng)建的。這些變量通常由大寫(xiě)字母組成,可以通過(guò)“set”命令查看。

用戶變量:是由系統(tǒng)用戶來(lái)生成和定義,變量的值可以通過(guò)命令“echo $<變量名>”查看。

四、如何將標(biāo)準(zhǔn)輸出和錯(cuò)誤輸出同時(shí)重定向到同一位置?

這里有兩個(gè)方法來(lái)實(shí)現(xiàn):

方法一:2>&1 (如# ls /usr/share/doc > out.txt 2>&1 )

方法二:&> (如# ls /usr/share/doc &> out.txt )

五、shell腳本中“$?”標(biāo)記的用途是什么?

在寫(xiě)一個(gè)shell腳本時(shí),如果你想要檢查前一命令是否執(zhí)行成功,在if條件中使用“$?”可以來(lái)檢查前一命令的結(jié)束狀態(tài)。

六、如何在后臺(tái)運(yùn)行腳本?

在腳本后面添加 “&”。

七、"chmod 500 script" 做什么?

使腳本所有者擁有可執(zhí)行權(quán)限。

八、">" 做什么?

重定向輸出流到文件或另一個(gè)流。

九、& 和 && 有什么區(qū)別

& - 希望腳本在后臺(tái)運(yùn)行的時(shí)候使用它;

&& - 當(dāng)前一個(gè)腳本成功完成才執(zhí)行后面的命令/腳本的時(shí)候使用它。

十、什么時(shí)候要在 [ condition ] 之前使用 “if”?

當(dāng)條件滿足時(shí)需要運(yùn)行多條命令的時(shí)候。

程序員經(jīng)典面試題目相關(guān)文章

程序員經(jīng)典面試題及答案

程序員面試最常問(wèn)的10個(gè)問(wèn)題解析

程序員面試常見(jiàn)問(wèn)題及回答技巧

程序員面試常見(jiàn)問(wèn)題

程序員電話面試題匯總大全(2)

知名IT企業(yè)程序員面試題

非常經(jīng)典Java基礎(chǔ)面試題

程序員面試邏輯題

程序員面試筆試寶典

程序員經(jīng)典面試題目

通常我們?cè)诿嬖囉?jì)算機(jī)程序員時(shí),會(huì)遇到各種各樣的問(wèn)題?,F(xiàn)在我們把程序員面試所要遇到的問(wèn)題做了一個(gè)總結(jié)與歸納。下面小編給大家?guī)?lái)程序員經(jīng)典面試題目有哪些,希望能幫助到大家!2021年前端面試題目1.1、前
推薦度:
點(diǎn)擊下載文檔文檔為doc格式
1097797