ASP.Net软件工程师基础(一)
本人目前是一名有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软件工程师基础(一)的更多相关文章
- ASP.Net软件工程师基础(二)
1.封装 答:属性封装了字段,通过get和set访问器限制字段对外开放的程度:将重复的代码封装成方法,实现DCR原则(Don't Copy yourself):方法的参数组合可以用类实现,即在方法中不 ...
- ASP.Net软件工程师基础(四)
1.接口 (1)接口是一种规范.协议,定义了一组具有各种功能的方法(属性.索引器本质是方法). (2)接口存在的意义:多态.多态的意义:程序可扩展性. (3)接口解决了类的多继承的问题. (4)接口解 ...
- ASP.Net软件工程师基础(三)
1.多态 答: (1)虚方法 public class Child : Person { public void Speach() { base.Speach(); } public virtual ...
- QT软件工程师招聘市场需求报告
QT软件工程师招聘市场需求报告 目录 最流行的编程语言排行榜 QT软件工程师职位需求 QT软件工程师薪资待遇 QT软件工程师行业需求 QT软件工程师QT技术需求 QT软件工程师基础技术需求 QT软件工 ...
- 1、软件工程师要阅读的书籍 - IT软件人员书籍系列文章
软件工程师要阅读的书籍估计是项目组内最多的.软件工程师处于项目组中最基础的人员储备阶层,与项目的关系最密切.当然,现在是大数据时代,我们无法全部看完所有相关的书籍,只能够先学习工作需要的知识,然后在项 ...
- Atitit. 高级软件工程师and 普通的区别 高级编程的门槛总结
Atitit. 高级软件工程师and 普通的区别 高级编程的门槛总结 1. 完备的知识体系 2 2. 编程理论/原理的掌握 2 1.1. 掌握常用的概念(ORM,IOC,AOP,event driv ...
- net软件工程师求职简历
Net软件工程师求职简历 姓 名: 王静静 性 别: 女 出生日期: 1991-12 籍 贯: 河北 居住地: 北京 学 历: 专科 E-mail: 335659753@qq. ...
- 软件工程师 Book
一.软件工程师 --Clean Code<代码整洁之道> --Implementation Patterns<实现模式> --Code Complete<代码大全& ...
- 第二节:Web前端-ASP.NET之C#基础
第二节:Web前端-ASP.NET之C#基础 学习ASP.NET,要掌握学习语言,控件等技能, <div style="text-align: center; line-height: ...
随机推荐
- Android Studio如何添加override
而Android Studio如何添加呢?方法如下: 右键(或者Alt + Insert) --- Generate... ---- Override Method... 或者 Implement ...
- Settings.System.getInt获取Setting里的设置信息
数据库的路径:/data/data/com.android.providers.settings. 获取飞行模式: Settings.System.getInt(mContext.getContent ...
- 【转】JDBC为什么要使用PreparedStatement而不是Statement
http://www.importnew.com/5006.html PreparedStatement是用来执行SQL查询语句的API之一,Java提供了 Statement.PreparedSta ...
- HTML常用标签(自用,可能不严谨,勿怪)
html标签中‘<’和‘>’默认被占用,如果想要显示出这些符号,就需要使用特殊字符来实现'<':使用<实现'>':使用>实现空格:html中再多的空格默 ...
- SVN switch 用法详解
一直知道SVN有个switch命令,但是对它的介绍教程却很少,大多是生硬的svn帮助文档里的文字,从而一直不怎么会用.今天看了这篇文章,突觉豁然开朗,整理下来以备查阅. 使用SVN,自然是需要与别人合 ...
- Yii集成smarty说明
1. [在protected目录下建立文件夹vendor/smarty,把smarty的类包放入其中] 2. [在extensions目录下边建立文件CSmarty.php] ...
- java数组初始化的三种方式
//第一种 int[] is= new int[3]; is[0]=1; is[1]=2; is[2]=3; //第二种 int[] is2= {1,2,3}; //第三种 int[] is3= ...
- DBA_Oracle Erp重启Database/Application/Concurrent/Apache(案例)
2014-12-27 Created By BaoXinjian
- linux 挂载(转载)
From:http://forum.ubuntu.org.cn/viewtopic.php?t=257333 用linux,就一定要用linux的方式去思维.嗯,说的容易做起来难.我的D盘哪去了?恐怕 ...
- linux ps命令(转载)
来源:http://www.cnblogs.com/peida/archive/2012/12/19/2824418.html Linux中的ps命令是Process Status的缩写.ps命令用来 ...