两个人做人爱视频免费,97久久精品人人搡人妻人人玩,欧洲精品码一区二区三区,999zyz玖玖资源站永久

互聯網名企后端面試問題

  互聯網行業現在是越來越火了,很多人往互聯網方面發展,下面是CN人才網小編推薦整理的道互聯網名企后端面試問題,歡迎參考借鑒。

面試問題

  【通用問題】

  語言設計中空引用(null reference)的存在有什么問題?假設你想要將空引用的概念從你的首選語言中移除,可能導致什么結果?

  為什么函數式編程重要?什么時候適用函數式語言?

  設計(design)、架構(architecture)、功能(functionality)和美學(aesthetic)之間有什么區別?討論一下。

  微軟、谷歌、歐朋(opera)和火狐這類公司是如何從他們的瀏覽器中獲利的?

  為什么打開TCP套接字有很大的開銷?

  封裝的重要性體現在哪兒?

  什么是實時系統?它與普通系統有什么區別?

  實時語言(real-time language)和堆內存分配(heap memory allocation)之間的關系是什么?

  不變性(Immutability)是指: (變量的)值只能在創建的時候被設置一次,之后就不能被改變。為什么不變性對寫更加安全的代碼有幫助?

  可變值(mutable values)和不可變值(immutable values)有哪些優缺點?

  什么是O/R阻抗失衡(Object-Relational impedence mismatch)?

  如果你需要使用緩存,你使用哪些原則來確定緩存的大小?

  TCP和HTTP有什么區別?

  在客戶端渲染(client-side rendering)和服務端渲染(server-side rendering)之間,你是如何權衡的?

  如何在一個不可靠的協議之上構建一個可靠的通信協議?

  【開放式問題】

  為什么人們會抵制變化?

  如何向你的祖母解釋什么是線程?

  作為一個軟件工程師,你想要既要有創新力,又要產出具有可預測性。采用什么策略才能使這兩個目標可以共存呢?

  什么是好的代碼?

  解釋什么是流(Streaming)和如何實現一個流?

  假設你的公司給你一周的時間,用來改善你和同事的生活: 你將如何使用這一周?

  本周你學了什么?

  所有的設計中都會有美學元素(aesthetic element)的存在。問題是,你認為美學元素是你的朋友還是敵人?

  列出最近你讀過的5本書。

  How would you introduce Continue Delivery in a multi million waterfall shop?

  我們來談談"重復造輪子","非我發明癥", "吃自己做出來的狗糧"的這些做法吧。

  (注: 重復造輪子: Reinventing the wheel; 非我發明癥:Not Invented Here Syndrome; 吃自己做出來的狗糧: Eating Your Own Dog Food)

  在你當前的工作流中,什么事情是你計劃下一步需要自動化的?

  為什么寫軟件是困難的?是什么使軟件的維護變得困難?

  你更喜歡在全新項目(Green Field Project)上工作還是在已有項目(Brown Field Project)基礎上工作?為什么?

  當你在瀏覽器地址欄輸入google.com回車之后都發生了什么?

  What does your computer do when you wait?

  如何向一個5歲的孩子解釋什么是Unicode/數據庫事務?

  如何維護單體架構(monolithic architecture)?

  一個"專業的開發者"意味著什么?

  軟件開發是藝術、是技藝還是工程?你的觀點是什么?

  "喜歡這個的人也喜歡...",如何在一個電子商務商店里實現這種功能?

  為什么在創新上,企業會比創業公司慢些?

  【設計模式相關問題】

  請用一個例子表明,全局對象是邪惡的存在。

  假設你工作的系統不支持事務性,你會如何從頭開始實現它?

  什么是好萊塢原則(Hollywood Principles)?

  關于迪米特法則(最少知識原則): 寫一段代碼違反它, 然后修復它。

  (注: 迪米特法則:the Law of Demeter, 最少知識原則: the Principle of Least Knowledge)

  Active-Record模式有什么限制和缺陷?

  Data-Mapper模式和Active-Record模式有什么區別?

  空對象模式(Null Object Pattern)的目的是什么?

  為什么組合(Composition)比繼承(Inheritance)更好?

  什么是反腐敗層(Anti-corruption Layer)?

  你可以寫一個線程安全的單例(Singleton)類嗎?

  Could you implement Objects in terms of Higher Order Functions, and vice-versa?

  數據抽象(Data Abstraction)能力是指能改變實現而不影響客戶端的這種能力。請構造一個一個例子,違反這個特性,并且嘗試修復它。

  你是如何處理依賴關系地獄(Dependency Hell)的?

  為什么說goto語句是惡魔般的存在?

  【代碼設計相關問題】

  What is the tests influence on design?

  內聚和耦合的區別是什么?

  重構在哪些場景下有用?

  代碼中的注釋有用嗎?

  設計和架構有什么區別?

  為什么在測試驅動開發(TDD)中是先寫測試,再寫代碼?

  C++支持多繼承,Java允許類實現多個接口。這些特性對正交性有什么影響?使用多繼承和使用多接口有區別嗎?[這個問題來自Andrew .Hunt 和 David Thomas寫的《程序員修煉之道》]

  5. 語言相關問題:

  告訴我你的首選語言的三個最壞的缺陷。

  為什么現在函數式編程這么越來越受關注?

  閉包是什么?它有什么用途?閉包和類有什么共同點?

  泛型有什么用途?

  什么是高階函數?有什么用途?用你的首選語言寫個例子出來。

  討論一下,如何寫一個循環,然后把它轉換成遞歸函數,要避免易變性。

  有些語言將函數視為第一公民,這是什么意思?

  用一個例子說明匿名函數是有用的。

  什么是動態方法調度(Dynamic Method Dispatch)?

  名字空間(Namespace)有什么用?有什么可以替代它的嗎?

  談談Java和C#之間的互操作性(Interoperability) (任選其他兩門語言都行)

  為什么很多軟件工程師不喜歡Java?

  你認為好的語言好在哪里?差的語言差在哪里?

  寫兩個函數,一個是"引用透明的(Referentially Transparent)",另一個是"引用不透明的(Referentially Opaque)"。討論之。

  什么是棧?什么是堆?

  為什么一個語言中,"函數是第一公民"是很重要的?

  模式匹配(Pattern Matching)和Switch語句(Switch clauses)的區別在哪兒?

  為什么有些語言設計上沒有異常機制?這有什么優缺點?

  如果Cat是一個Animal, 那么TaskCare是一個TakeCare嗎?

本文已影響6827
上一篇:面試常見問題總結 下一篇:常見的求職面試問題盤點

相關文章推薦

|||||

主站蜘蛛池模板: 阳泉市| 瑞昌市| 宜宾市| 通河县| 保德县| 隆德县| 开平市| 遂昌县| 永和县| 金昌市| 南丰县| 迁安市| 安乡县| 浪卡子县| 皋兰县| 黎川县| 广东省| 巧家县| 武冈市| 剑川县| 临城县| 东丽区| 克东县| 化州市| 合川市| 额敏县| 上高县| 连平县| 临武县| 正定县| 阜城县| 康定县| 昂仁县| 富源县| 沙坪坝区| 汉阴县| 曲麻莱县| 舟曲县| 泗阳县| 蓝田县| 鞍山市|