最近面試的題目(WEB、Service、SQL、JavaScript)

Wizardlsw發表於2014-04-28

整理一下最近面試被問到的主要題目。由於本人主要是做WEB及WEB SERVICE這塊,使用的語言主要是C#,資料庫主要用到的也是MSSQL。所以就分成這些塊來整理(有些是在面試之後才意識到回答不對),也包括部分別人被問及的。每一次面試都是一個成長的過程,分享一下:

 

一、HTML、CSS

  1. position有哪幾種值,各是怎麼使用的?
  2. 一個左右佈局,如何實現?
  3. SPAN與DIV的區別

二、JAVASCRIPT, JS FRAMEWORK

  1. window.onload與jQuery中的ready有何區別?
  2. 什麼是閉包?寫一下。
    http://baike.baidu.com/view/648413.htm
    function a(){
        var i=0;
        function b(){
        alert(++i);
        }
        return b;
    }
    var c = a();
    c();

    in C#:

    void MethodA(){
         int i = 5;
         
         Action m = delegate() {
                i = i + 3;
         };
         i ++;
         m();
         i++;
    }
    

     

  3. jQuery中有個叫"on"的API,它是怎麼使用的?
  4. JavaScript中類是什麼樣子?繼承是如何實現的?
    function o1(name){this.Name = name; this.func1 = function(){alert('from o1.func1');}} 
    function o2(name){o1.apply(this, [name]); this.func2 = function(){alert('fromt o2.func2:' + this.Name);}}
    
    var o = new o2('abc'); 
    o.func1(); 
    o.func2();

     這裡有一篇關於javascript中的this 的文章

  5. 在變數定義的時候,"var a = null"與“a = null"(沒有var)有何區別?
  6. 在JavaScript裡面可以通過POST呼叫REST API嗎?

三、WEB及ASP.NET MVC(奇怪居然沒問及EF)

  1. 頁面與頁面之間傳遞引數有哪幾種方式?ASP.NET MVC中提供了一個可以直接使用的的是什麼?
  2. 什麼 MVC?
  3. MVC裡面的template是做什麼用的?

四、.NET及C#

  1. object.Equals與“==”有什麼區別?
  2. 簡單介紹引用與值型別?
  3. 裝箱與拆箱?哪個會更耗效能?
  4. 什麼是多型(polyphism)?
  5. 抽象類(Abstract class)與介面(interface)有什麼區別? 
  6. IQueryable與IEnumerable的區別?
  7. 有一List<Person>物件,如何把Person.Name以逗號串起來?在Linq中提供的Aggregate擴充套件方法在這是如何實現的?
  8. List<Person>,寫一Lambda表示式要求得到List<Person.Name>
  9. 簡單介紹一下記憶體管理(GC)
  10. 簡單介紹一下事件。
  11. DI與Ioc的區別?
  12. DI中例項的的生命週期有幾種管理方式?
  13. 多執行緒你瞭解不?在進行執行緒同步的時候用到哪幾種方式?
  14. lock與Monitor的區別?
  15. 擴充套件方法,為string擴充套件返回把奇數位的字串。
  16. var與dynamic的區別?
  17. Converter<TInput,TOutput>
  18. Finalize與Dispose的區別?
  19. What's volatile variable? When to use it?
  20. C#不同版本中引入的哪些新特性?
  21. static 與 const 的區別? 使用readonly關鍵字 與 const 的區別?
  22. String與StringBuilder的區別?如果請您自己寫一個StringBuilder類,您怎麼實現,思路?
  23. 有沒有基於IQueryProvider寫過自定義的Provider?

五、資料庫

  1. 什麼是聚簇索引與非聚簇索引?
  2. 有一個表PatientName, PatientAge, CheckDateTime;請寫出每個月看病病人的平均年齡,提示一個病人一個月內可以來醫院多次。
  3. 使用過臨時表?臨時表有哪幾種?各有什麼 區別?
  4. 臨時表與表變數有什麼區別?
    http://blogs.msdn.com/b/apgcdsd/archive/2012/03/27/tempdb-compare.aspx
  5. 什麼是CTE(Common Table Expression)?有什麼優點? 
    其實就是WITH T AS(...)。HERE for details.
  6. 使用過儲存過程沒?如何在儲存過程中呼叫另一個儲存過程?
  7. 儲存過程與函式有什麼區別?
  8. (自己加的)表與檢視有什麼區別?
  9. 事務的隔離級別有哪幾種,分別介紹一下。
    • READ UNCOMMITED
    • READ COMMITED (depends on flag READ_COMMITED_SNAPSHOT)
    • REPEATABLE READ
    • SNAPSHOT
    • SERIALIZABLE
  10. 簡單地介紹一下設計正規化(Table Normalization,面試時聽到這詞,懵了,直接回答第一次聽說。悔,只是不知道原來指的是設計正規化,雖然也不會)
  11. MySql中資料庫引擎有幾種?
  12. deadlock一般是怎麼處理的,如何避免死鎖?死鎖是怎麼產生的,可以簡單地寫一個出來不?
  13. 能舉出一些不同SQL SERVER版本之間新增了什麼功能?
  14. 如果一個儲存過程線上上用ADO.NET調起來很慢,但用查詢分析器裡查詢起來卻很快,這是為什麼? 提示:one case: parameter got casted to varchar and used in query.
  15. 那把int引數CAST成字串可以與INT欄位比較嗎?

六、WCF(獨立出來)

  1. WCF中要提供一個服務,需要幾個主要的主成部分?
  2. WCF中主要有哪幾種協議(Contract)?DataContract與MessageContract有什麼區別?
  3. WCF中一個如何建立一個Endpoint?
  4. WCF中系統提供的有哪些binging? 您常用的是哪幾種。
  5. 底層的傳輸協議主要有哪些?有什麼不同?
  6. SOAP與REST有什麼區別?
  7. WCF與傳統的WEB SERVICE有什麼區別?

七、設計模式

  1. 您最經常使用的設計模式是哪個?
  2. Singleton裡面,執行緒安全是如何考慮的?
  3. 一個簡單的工廠模式,有一類叫AbstractDBFactory,裡面的static方法 static AbastractDB CreateDB(string type, string connString)內是使用if (type == "ORALCE") ...,如何使用反射(reflection)來重構
  4. Unit of Work
    http://martinfowler.com/eaaCatalog/unitOfWork.html

八、資料結構

  1. dictionary與陣列的區別?

九、思路及經驗

  1. 有沒有壓力測試的經驗?
  2. 對一個指定的頁面如何效能調優?
  3. 有一儲存過程,如何控制它被多個不同的伺服器併發呼叫?

十、其它

  1. 下面的程式碼會出錯,具體在哪行報哪些錯?
    static int k;
    static void Main(){
        int i;
        int j = i;
        int m = k;
    }
  2. 有兩個已經排好序的陣列,長度分別是m和n,請找出相同的元素,時間複雜度為O(m+n)。
  3. 與上一題類似的:有兩字串a與b,請找出a與b中共同的字元,a有但b沒有的以及b有但a沒有的。
  4. 介紹一下SDLC?
    http://en.wikipedia.org/wiki/Systems_development_life-cycle
  5. what's REST stands for?
    Representational State Transfer
  6. Python裡面介面卡模式是什麼樣的?

 

 

相關文章