• 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 1: result = "a";break;
                case 2: result = "b"; break;
            }
            return result;
        }
    }
    索引器的定义
    public int this[string key]
    {
        get
        {
            int result = 0;
            switch (key)
            {
                case "a": result = 1; break;
                case "b": result = 2; break;
            }
            return result;
        }
    }
    索引器的key可以为string类型

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

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

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

    本文版权归作者和博客园共有,来源网址:http://www.cnblogs.com/tq1226112215/
    欢迎各位转载,但是未经作者本人同意,转载文章之后必须在文章页面明显位置给出作者和原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    BZOJ3193: [JLOI2013]地形生成
    ARG102E:Stop. Otherwise...
    51NOD1847:奇怪的数学题
    大型大常数多项式模板(已卡常...)
    CF932G Palindrome Partition
    51nod1538:一道难题(常系数线性递推/Cayley-Hamilton定理)
    HTML——meta标签
    HTTP 格式
    Node.js——Async
    设计模式——外观模式
  • 原文地址:https://www.cnblogs.com/tq1226112215/p/3453078.html
Copyright © 2020-2023  润新知