本人目前是一名有1年左右ASP.Net开发经验的的软件开发工程师,目前公司用的是MVC+EF+...做的网站。写这套总结性系列文章的目的有两个:一是帮助自己总结一下自己到底有多少斤两,而不是一味的学新东西;二是将此文分享给大家,让大家好在自己已有的基础上更进一步,而不要每天盲目的学,重复的看一些看过的东西而导致效率过低。

本来只想总结技术方面(偏代码)的,但是看到一些好的名次解释,顺便也加上了

1、什么OOP、OOD、OOA?

答:OOP:Object Oriented Programming(面向对象编程);OOD:Object-Oriented Design(面向对象设计);OOA:Object-OrientedAnalysis(面向对象分析)。

2、什么是面向对象?

答:这个不好回答,要是你学过C语言,应该能很明显的区分出来。目前我认为最明显的区别体现在依赖关系上,面向过程编程依赖函数,而面向对象编程更多的要求依赖接口(多态),实现差异化编程(把不同的子类对象都当作父类来看,可以屏蔽不同子类对象之间的差异,写出通用的代码,做出通用的编程,以适应需求的不断变化)。

3、面向对象三大特性:封装、继承、多态(想都不想就说出来)

4、知道什么是类,如何定义类?什么是对象,如何得到对象?(最基本的)

public class Person
{
private string _name; public string Name
{
get { return _name; }
set { _name = value; }
}
}

类的定义

Person person = new Person();

对象的定义

5、普通类里面可以有什么?

答:字段、属性(本质是方法)、索引器(本质是方法)、方法(函数)、构造函数等。属性可以简写,而且在MVC3开始建议简写。

public int Age
{
get;
set;
}

属性简写定义方式

public string this[int key]
{
get
{
string result = "";
switch (key)
{
case : result = "a";break;
case : result = "b"; break;
}
return result;
}
}

索引器的定义

public int this[string key]
{
get
{
int result = ;
switch (key)
{
case "a": result = ; break;
case "b": result = ; break;
}
return result;
}
}

索引器的key可以为string类型

6、引用和命名空间的区别?

答:除非你真是菜鸟,否则你会分的特别清楚的,每天都会引程序集,导命名空间,目前做项目的时候,项目组要求不到命名空间了,直接命名空间.类名.方法使用你想要的方法。导命名空间小技巧,刚接触编程的时候,你可能更喜欢点出来,所以选择先导命名空间,而你某个方法用多了,而对用的方法名也不长,你可以先拼写方法名,shift + alt + F10导入命名空间,当然如果你把输入法关掉,也可以ctrl+ .导入。

今天写到这,有时间继续。

ASP.Net软件工程师基础(一)的更多相关文章

  1. ASP.Net软件工程师基础(二)

    1.封装 答:属性封装了字段,通过get和set访问器限制字段对外开放的程度:将重复的代码封装成方法,实现DCR原则(Don't Copy yourself):方法的参数组合可以用类实现,即在方法中不 ...

  2. ASP.Net软件工程师基础(四)

    1.接口 (1)接口是一种规范.协议,定义了一组具有各种功能的方法(属性.索引器本质是方法). (2)接口存在的意义:多态.多态的意义:程序可扩展性. (3)接口解决了类的多继承的问题. (4)接口解 ...

  3. ASP.Net软件工程师基础(三)

    1.多态 答: (1)虚方法 public class Child : Person { public void Speach() { base.Speach(); } public virtual ...

  4. QT软件工程师招聘市场需求报告

    QT软件工程师招聘市场需求报告 目录 最流行的编程语言排行榜 QT软件工程师职位需求 QT软件工程师薪资待遇 QT软件工程师行业需求 QT软件工程师QT技术需求 QT软件工程师基础技术需求 QT软件工 ...

  5. 1、软件工程师要阅读的书籍 - IT软件人员书籍系列文章

    软件工程师要阅读的书籍估计是项目组内最多的.软件工程师处于项目组中最基础的人员储备阶层,与项目的关系最密切.当然,现在是大数据时代,我们无法全部看完所有相关的书籍,只能够先学习工作需要的知识,然后在项 ...

  6. Atitit. 高级软件工程师and 普通的区别 高级编程的门槛总结

    Atitit.  高级软件工程师and 普通的区别 高级编程的门槛总结 1. 完备的知识体系 2 2. 编程理论/原理的掌握 2 1.1. 掌握常用的概念(ORM,IOC,AOP,event driv ...

  7. net软件工程师求职简历

    Net软件工程师求职简历 姓    名: 王静静 性    别: 女 出生日期: 1991-12 籍    贯: 河北 居住地: 北京 学    历: 专科 E-mail: 335659753@qq. ...

  8. 软件工程师 Book

    一.软件工程师  --Clean Code<代码整洁之道>  --Implementation Patterns<实现模式>  --Code Complete<代码大全& ...

  9. 第二节:Web前端-ASP.NET之C#基础

    第二节:Web前端-ASP.NET之C#基础 学习ASP.NET,要掌握学习语言,控件等技能, <div style="text-align: center; line-height: ...

随机推荐

  1. 动态代理到基于动态代理的AOP

    动态代理,是java支持的一种程序设计方法. 动态代理实现中有两个重要的接口和类,分别是InvocationHandler(interface),Proxy(class). 要实现动态代理,必须要定义 ...

  2. Struts2 - Rest(1)

    Struts2提供了一个restful的插件:struts2-rest-plugin-2.3.16.1.jar 这个插件可以把Struts2当做restful来使用,不过它的rest功能目前来说有点“ ...

  3. 【jmete】Bean shell使用(一)

    一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...

  4. FrameWork启动流程

    Android启动过程包含从Linux内核加载到Home应用程序启动的整个过程.整体流程如下: Android是基于Linux内核的系统平台.启动时,首先通过bootloader(系统加载器),加载L ...

  5. VisualStudio 调试不提示调试错误

    尝试办法: 1.工具->选项->调试->启用异常助手;2.调试->异常; 解决办法: 把2.调试->异常; 下地全部钩上异常就弹出来了

  6. 黄聪:如何使用WebKitBrowser调用元素点击事件(C#)

    string s = "var _elm = document.getElementById('loginBtn');var _evt = document.createEvent('Mou ...

  7. 黄聪:PHP json_encode中文乱码解决方法

    相信很多人在使用Ajax与后台php页面进行交互的时候都碰到过中文乱码的问题.JSON作为一种轻量级的数据交换格式,备受亲睐,但是用PHP作为后台交互,容易出现中文乱码的问题.JSON和js一样,对于 ...

  8. 黄聪:C#操作xml SelectNodes,SelectSingleNode通过 xPath 定位class包含Contains的DIV

    一. SelectNodes,SelectSingleNode总是返回NULL 下面以一个简单的xml为例: <?xml version="1.0"?> <mes ...

  9. mysql创建表与索引

    -- ---------------------------- -- 商品属性表 -- AUTO_INCREMENT=1为设置了自增长的字段设置起点,1为起点 -- ENGINE选择:MyISAM类型 ...

  10. PLSQL_闪回操作4_Flashback Drop

    2014-06-25 Created By BaoXinjian