自己从找工作到现在已经有半个月了多了,感觉自己一直在进步。
首先对自己的定位比较明确了,原来自己对什么都抱着无所谓的态度,什么事情都好象与自己无关似的 。现在找工作如果有一点可能自己都要把握住,不要放过任何希望。
在参加笔试的过程也知道了自己知识的缺陷,第一次参加笔试是索比公司给的,哪次完全没有准备,早上上完课,回到宿舍都12点多了,无意间打开电子邮箱,看到了笔试通知。结果匆匆应阵,结果可想而知。第2次是颠峰软件给的,通知我2点考试我却记错了以为是4点,还好到了那里参加了笔试,第3个笔试是广州信息所给的,感觉里面好多还是不会,第4个机会是新蛋,题目多难度大就不用说了。
认识到的知识面盲点还是有的:面向对象的基本原则是什么?要注意什么? 常见的设计模式有那些?FOREACH这个语句使用的对象必须满足什么条件?数据库中的E-R图的画法?C#中的值类型和引用类型的区别,装包和拆包的意思?C#中的范型的理解,委托的理解?等等 反正好多!
面试中自己犯了2个错误 1别人问工资的时候,自己直接说了 “最底1500”,感觉有点欠妥,直接把自己给逼死了,没有回旋的余地了。2 公司问我对他们公司的了解 我的回答是 “不是太了解”。 这个实在是太失败了。
这个就是2次面试得到的教训。
面试中如果面试官问到自己不会的问题,要把它引导到自己会的东西。这个切记!
今天去NEW EGG的题目好多不会,同学把题目记了一些,好好研究一下!(只供学习使用,其他用途么有哈)
1 StringBuilder和‘+’字符串连接有什么区别?
String类的不可改变性使它更像一个值类型而不是一个引用类型。其副作用是每次执行字符操作时,都会创建一个新的String对象。在使用+连接字符串的过程也就相当与使用STRING类中的方法把2个字符串进行连接。StringBuilder是个类,它解决了用STRING中连接字符串时创建大量对象的问题。+字符串连接的时候在内存中都要建立一个新的对象。也就是说StringBuilder可以提升性能,当程序中存在字符串并且该字符串需要重复的修改
以下是VS2005帮助文档的内容
String 对象是不可改变的。每次使用 System.String 类中的方法之一时,都要在内存中创建一个新的字符串对象,这就需要为该新对象分配新的空间。在需要对字符串执行重复修改的情况下,与创建新的 String 对象相关的系统开销可能会非常昂贵。如果要修改字符串而不创建新的对象,则可以使用 <?xml:namespace prefix = mshelp />System.Text.StringBuilder 类。例如,当在一个循环中将许多字符串连接在一起时,使用 StringBuilder 类可以提升性能。
2 asp.net 1.1应用程序的默认身份验证是什么,如果想改变,应该怎么办?
默认身份验证是windows,即不需要任何的权限就可以访问任何的页面。想改变的话可以在WEB.config中进行配置。
ASP.NET 的身份验证模式包括Windows、Forms(窗体)、Passport(护照)和None(无)。
Windows验证是使用Windows的账号密码来验证用户的,主要适用于部署在局域网内部的网站,每个使用此网站的人都有一个可以登录网络的账户。
Passport验证依靠Mircosoft Passport来验证用户身份。Passport是Microsoft公司提供的Web服务,是一个大型的用户名和密码数据库。当需要用户验证的时候,将用户名和密码提交给Passport,如果验证通过,则返回一个验证证明。
Forms验证是要求用户在Web Form中输入用户名和密码来验证用户身份。当用户第一次访问被保护的页面的时候,ASP.NET会把用户引导到指定的登录页面,当登录成功以后,ASP.NET会记录一个Cookies,用来作为用户身份的证明,然后将用户引导回最初要求登录的页面。
None就是不对用户进行验证。
3 asp net 1.1中的URL REWRITE方法和原理是什么?
所谓的URL REWRITE就是把一个URL重定向到另外一个URL。原理是:每次http请求,将此URL定位到重写的url函数中并返回重写后的URL地址。主要用于当我们站点板块移动时由于链接仍然指向旧地址,故可以重定向到新的地址,当然查询参数也可以重写。(一般放在httpmodule中applicatioin_request事情中当这个不明白)其他的文章说这个用到了正则表达试。
url重写的优点在于:
缩短url,隐藏实际路径提高安全性
易于用户记忆和键入。
易于被搜索引擎收录
实现url重写的基本方法见
http://blog.csdn.net/vipxiaotian/archive/2007/07/12/1686156.aspx
4 code behind和code inline 的区别?
这个太汗了 所谓的Code Behind,就是代码代码隐藏,在ASP.NET中通过ASPX页面指向CS文件的方法实现显示逻辑和处理逻辑的分离,这样有助于web应用程序的创建,维护。比如分工,美工和编程的可以个干各的,不用再像以前asp那样都代码和html代码混在一起,难以维护。
code inline 就是内嵌代码的意思,它非常适用于简单的命令。然而,对于更复杂的代码而言,编写内嵌代码将为读取混合了表示 (HTML) 和功能(代码)的 Web 页面带来困难。
在 ASP.NET 1.x 中,供开发人员开发 Web 窗体的主要选择有两个。首先,开发人员可以参照传统的 ASP 模型并直接在 ASPX 页面中编写代码。此过程称为“内嵌代码”,它非常适用于简单的命令。然而,对于更复杂的代码而言,编写内嵌代码将为读取混合了表示 (HTML) 和功能(代码)的 Web 页面带来困难。在 ASP.NET 中,为了帮助解决这个问题,已更改了默认的编码方法。您可以在单独的、只包含代码的文件(称为“内含代码”文件)中编写业务逻辑和事件处理代码。内含代码模型将只包含代码的文件与包含表示标记的 ASPX 文件链接起来。通过将代码与表示相分离,开发小组可以让设计人员处理演示文件,而让开发人员处理代码文件,从而提高开发小组的工作效率。
图1:ASP.NET 1.x 代码模型
内含代码模型面临的主要困难在于如何将内含代码文件与 ASPX 页面保持同步。尽管从编程意义上来讲 ASPX 页面是从内含代码文件继承而来的,但实际上这两个文件是通过更复杂的关系联系在一起的。
5 列出2种在microsoft的asp.net 1.1框架中设计到的GOF设计模式以及起具体在ASP。NET框架中体现?
本来想写几种设计模式的,可就是因为不懂GOF是什么意思没写,郁闷!
Design Patterns: Elements of Reusable Object-Oriented Software(《设计模式》一书),由 Erich Gamma、Richard Helm、Ralph Johnson 和 John Vlissides 合著(Addison-Wesley,1995)。这几位作者常被称为"四人组(Gang of Four)",而这本书也就被称为"四人组(或 GoF)"书。
设计模式的详情见http://baike.baidu.com/view/1082055.htm
三大类是 创建型模式 结构型模式 行为型模式
6.net remoting远程对象中的异常详细如何能够在客户端里能够捕获,以及如何在客户端写入到log文件中。
这个先放下
7C#中的深拷贝和浅拷贝的区别 .net是如何实现的
这个我好象把写错了,当时是想到了肯定和值类型,引用类型有关。
深拷贝就是 怎么说呢 就是复制出来的东西独立的存在和原来对象是一样的 并且对新对象的改变不会影响到原来的对象。
浅拷贝就是复制出来的东西知识新东西的一个引用,当改变这个新东西时候就相当与改变了原来的东西。
C#中值类型的复制就是深拷贝,引用类型的拷贝就是浅拷贝。浅拷贝是非常危险的,应该尽量避免!
下面是2个参考文章:
http://phixcn.spaces.live.com/blog/cns!3deefd8a6cca3c8c!365.entry
http://www.shji.net/article/6/222_1.htm
8 多态的理解?
http://blog.csdn.net/21aspnet/archive/2007/03/24/1539948.aspx
还是不能很好的理解这个概念!
总算找到个通俗的说法:同一个对象在不同情况下有不同表现,通俗一点就是“见风使舵”。