读书人

.net找工作需要懂什么技术面试需要注

发布时间: 2013-03-26 21:10:08 作者: rapoo

.net找工作需要懂什么技术,面试需要注意什么呢?
目前有2年以上的工作经验,但毕业后一直没换公司,因为公司职责比较轻松,就是维护网站,偶尔新增新功能,但都是在原有的框架上修改,所以接触的都是表面,发现自己不但没有学到更多的知识,反而把学校所学的忘记了大半,公司内部什么都封装好了的,包括基本的增删改查,直接调用就可以了,如果不复习的话,估计增删改查都不能一下写出来了,现在想换工作,因为工作太轻松,所以工资一直加不上去,自己也越来越懒惰,觉得对以后的发展不好,去面试过一次,没上,很受打击,不知道外面公司在.net方面都需要懂什么技术,面试需要注意哪些技巧,还有2-3年的工作经验工资开多少才合适呢?我在面试的过程中有遇到以下问题,希望大家都一起讨论一下·~~

技术点:
1. 关于反射和序列化的理解

2.关于Ajax的原理及用法

3.关于WebService及怎么调用

4.MVC怎么理解

5.关于SEO

6.存储过程(特点,用法)

7.JavaScript(优缺点)

8.Oracle

9.Jauery

10.关于IIS和服务器



遇到的问题:

1.堆与栈的区别

2.Asp.net 页面的生命周期过程

3.软件缺陷

4.软件开发阶段的过程

5.递归算法,冒泡排序

6.线程和进程的区别和定义

7.Asp.net页面之间传递值的方式,利用哪些对象存储状态

8.单例模式

9.数据结构

10.抽象,接口,类,虚函数的定义及区别


PS:感觉对很多知识点一知半解,有些技术会用,但不会表述,面试的时候又说不出个所以然来,希望大家对自己所懂的知识点说上几句,一起讨论下,争取理解更深更透彻

[解决办法]
遇到的问题:

1.堆与栈的区别

2.Asp.net 页面的生命周期过程

3.软件缺陷

4.软件开发阶段的过程

5.递归算法,冒泡排序

6.线程和进程的区别和定义

7.Asp.net页面之间传递值的方式,利用哪些对象存储状态

8.单例模式

9.数据结构

10.抽象,接口,类,虚函数的定义及区别

这些不懂很发指,简单告诉你看什么书:

遇到的问题:

1.堆与栈的区别 - 数据结构
2.Asp.net 页面的生命周期过程 - 入门的 ASP.NET 教程
3.软件缺陷 - 软件测试,软件工程
4.软件开发阶段的过程 - 软件工程
5.递归算法 - 入门的编程书,冒泡排序 - 数据结构
6.线程和进程的区别和定义 - 操作系统原理
7.Asp.net页面之间传递值的方式,利用哪些对象存储状态 - 入门的 ASP.NET 教程
8.单例模式 - 设计模式
9.数据结构
10.抽象,接口,类,虚函数的定义及区别 - 入门的面向对象教材,入门的C#教材
[解决办法]
你能调用别人封装好的东西..
那么面试时你可以这么说:
你能做出什么功能.你能在多少时间内做出来.给你一些试用期,做不出来马上走人.别人才不管你是不是调用别人写的.还是你自己原创的.
[解决办法]
说说我的理解,纯粹凭印象写的,没有查书,可能错漏较多,欢迎拍砖。

技术点:
1. 关于反射和序列化的理解
反射是一种动态地调用assembly的方法,性能相对较差,在做某些通用接口时比较有用,因为无法在编译时间知道数据的类型。
序列化就是把对象转换成文本数据以便于存储和传输,如web service就需要将对象序列化和反序列化。

2.关于Ajax的原理及用法
Ajax的基本原理就是不提交页面,而是向服务器发一个XmlHttpRequest请求(通常是异步请求,虽然jquery里有个同步的选项,具体实现细节不清楚),将返回的html或其他数据(如json字符串)填充页面的某个区域,从而实现页面的部分刷新,提高程序的响应速度。
具体用法,一是最基本的javascript,直接使用XmlHttpRequest对象,另外也可以利用各种第三方的库,如微软的ajax库,jquery的$.ajax方法等。

3.关于WebService及怎么调用
web service本质上是基于xml和http协议的远程过程调用(RPC)。基本原理是服务端将公开的方法,调用地址等信息描述在wsdl文本文件里,客户端根据wsdl的描述生成代理程序,调用时,客户端将对象序列化后发到服务端,服务端反序列化,将运行结果序列化后发回客户端。客户端再反序列化。

4.MVC怎么理解
一种设计模式,典型实现如java的swing类库,微软的asp.net mvc等。程序分成三层,View向Controller发请求,Controller通过Model层获得数据,再返回View层。Model层数据有改变时,通过Controller通知View做相应的改变。
分层的目的是为了尽量分离用户界面,业务逻辑和数据,使大型程序便于维护。不过具体实现时,View层很难一点业务逻辑都没有,特别是现在倾向胖客户端的情况下,Controller层容易过肥,也不容易维护。

5.关于SEO
大致是指通过页面元数据和内容的调整,提升网站在搜索引擎中的排名,从而提高网站知名度的技术。具体实现笼统知道一点,但具体使用很少,不太了解。

6.存储过程(特点,用法)
存储过程是放在数据库里预先编译好的一段sql程序。因为预先编译好,所以执行的时候效率较高,这是存储过程的主要优点。不过现在的数据库,对于同样的sql,即使不是存储过程,也会通过cache,获得和存储过程差不多的性能。以前(20年前)存储过程和触发器是业务逻辑集中的地方,现在这种设计模式已经不太使用,因为存储过程调试相对不太方便,字符处理相对较弱等。
缺点还有不同的数据库有不同的存储过程,不如标准sql通用。

7.JavaScript(优缺点)
优点在Javascript: The Good Parts一书里说得很清楚。比如最大的优点是浓厚的函数式编程风格,基于原形的继承系统,函数是一级公民等等。个人体会较深的一点是它的动态语言特性特别适合web程序,对于解析json数据,转成对象特别方便,不需要静态语言的那种反序列化,另外javascript本来就是用来处理网页的,处理网页元素自然特别方便。
缺点是缺少好的ide,调试不如静态语言方便。另外全局变量很烦人。

8.Oracle
速度快,特别是处理海量数据有优势;稳定;PL/SQL很强大,有些sql扩展很方便,如select里的connect by处理递归比sql server方便多了;还有配套的Forms开发工具(现在大概用得少了吧)。
Oracle有些方面的设计和别人不同,刚用可能会有不适应,具体忘了

9.Jquery
javascript的一个类库。最大优点是至少部分解决浏览器兼容性问题,查找网页元素很方便,提供了很多好用的控件,ajax使用比较方便

10.关于IIS和服务器
IIS是微软做的web服务器,7.0增加了集成模式,便于用程序控制

目前有2年以上的工作经验,但毕业后一直没换公司,因为公司职责比较轻松,就是维护网站,偶尔新增新功能,但都是在原有的框架上修改,所以接触的都是表面,发现自己不但没有学到更多的知识,反而把学校所学的忘记了大半,公司内部什么都封装好了的,包括基本的增删改查,直接调用就可以了,如果不复习的话,估计增删改查都不能一下写出来了,现在想换工作,因为工作太轻松,所以工资一直加不上去,自己也越来越懒惰,觉得对以后的发展不好,去面试过一次,没上,很受打击,不知道外面公司在.net方面都需要懂什么技术,面试需要注意哪些技巧,还有2-3年的工作经验工资开多少才合适呢?我在面试的过程中有遇到以下问题,希望大家都一起讨论一下·~~



技术点:
1. 关于反射和序列化的理解

2.关于Ajax的原理及用法

3.关于WebService及怎么调用

4.MVC怎么理解

5.关于SEO

6.存储过程(特点,用法)

7.JavaScript(优缺点)

8.Oracle

9.Jauery

10.关于IIS和服务器



遇到的问题:

1.堆与栈的区别
数据结构没学好,说不好。栈是先进后出,堆的概念比较笼统。

2.Asp.net 页面的生命周期过程
这个说不太好。大致是IIS将请求转给asp.net的handler以后,建立page对象,生成页面的元素,然后写到Response对象里发给客户端,再销毁page对象

3.软件缺陷
这个话题太大了吧。

4.软件开发阶段的过程
立项,需求分析,概要设计,详细设计,编码,测试,维护。设计和编码有个迭代的过程,具体说来话就长了。

5.递归算法,冒泡排序
对于递归理解不深,所以学prolog感觉困难较大。简单地说递归就是函数调用自身,必须有个终止调用的条件。具体的堆栈实现理解不够,说不清楚。冒泡排序就不用说了吧。

6.线程和进程的区别和定义
进程是物理的,有独立的内存空间等资源,线程是逻辑的,由进程再细分出来。

7.Asp.net页面之间传递值的方式,利用哪些对象存储状态
通过url,session, cookie, cache通过页面元素如window.name, window.referrer(好像叫这个)等,还有asp.net特有的一个什么机制,名字忘了,好像是PastPage还是什么。
可以用session, cookie, cache, application, 隐藏域, ViewState, 数据库, window.name等存储状态

8.单例模式
private static _singleton = null;

private MyConstructor {
}

public MyConstructor GetInstance()
{
if (_singleton == null)
{
_singleton = new MyConstructor();
}
return _singleton;
}

9.数据结构
从何说起?

10.抽象,接口,类,虚函数的定义及区别
抽象和虚函数的概念不是特别清晰。

我的异常网推荐解决方案:oracle存储过程,http://www.myexception.cn/oracle-develop/177537.html

读书人网 >.NET

热点推荐