一些.Net面试题 (BS 方向)

解决方案和思路类:

  设计和策略:

  1.有一个网站的中购买功能, 假设现在有很多用户(假设10000人)在抢购一个物品,该物品的库存只有10个,请问怎么设计一个系统支持这样的场景

  2.一个用户中心,保存用户名密码和其他基本资料, 你会怎样设计?(尽可能好,考虑安全,性能,扩展,高可用等等..)   

  3.前端(HTML HTTP等..)优化策略

  4.应用服务器(主要是Asp.net)性能优化策略

  5.互联网应用程序常见的安全风险和解决策略

  6.设计模式(一般问最简单的单件模式在C#中的实现)

  7.如何保证你的软件/产品的质量

 

  问题排查:  

  1.有一台生产环境的Web服务器出现了w3wp.exe CPU100%的情况, 请问怎么排查?

  2.有一个简单的Asp.net开发的页面(新闻列表),用户反映打开这个页面非常慢,怎么排查?

 

技术基础类:

  1.类型和基本概念

    1.1 Attribute和Property

    1.2 抽象类和接口

    1.3 类继承

    1.4 什么是Delegate

    1.5 LINQ或者Lambda表达式 

    1.6 简述闭包 (C#或者javascript 都可以)

  2.String

    1.1 String是什么类型  (接着问 值类型和引用类型的主要差别是? 装箱和拆箱)

    1.2 "111" == "222" 内部是怎么实现的? (字符串比较)

    1.3 .Net中的String 默认是什么编码

    1.4 .Net中的String的结构是怎样的

  3.lock和多线程

    1.1 简述lock (接着问 你一般lock()什么对象,为什么)

    1.2 多线程,线程池和并行库

    1.3 多线程同步的方式和优劣

    1.4 性能问题和死锁问题  

  4.数据库(SQL Server)

    1.1 Inner Join 和 Left Join 的区别

    1.2 SQL Server中的索引

    1.3 SQL Server中的锁

    1.4 如何排查和提高SQL语句的性能

    1.5 大数据量处理

  5.前端

    1.1 HTML中的 doctype是做什么用的

    1.2 jQuery的几个简单方法和使用

    1.3 HTTP状态码

    1.4 Javascript(DOM)内存泄漏的问题

  6.简单算法(只有在面试者说他擅长这个的时候才问)

    1.1 你了解或者知道的算法

    1.2 排序你一般用什么算法 为什么

    1.3 具体的算法题目, 一般只要求说思路 (一般都很简单,桶排序或者合并什么的)

  7.一些技术和概念

    1.1 Asp.net MVC 和传统方式的比较

    1.2 Entiry Framework 简述,和传统模式的比较

    1.3 WCF 和传统模式 例如Remoting Service 和Web Service的比较

    1.4 一些第三方类库的使用情况

    1.5 是否开发过组件或者是底层类库

    1.6 IIS6 和IIS7的区别

非技术类:

  1.一个新项目交给你,但是你还不了解其中的技术,老板说下周就要搞定这个项目,你现在会怎么处理这个情况?

  2.你负责的一个项目, 下周就要上线了,可是运营部门说下周没法准备好服务器给你们用,你会怎么办?