C#后台架构师成长之路-高阶知识体系核心

了解了这些东西,熟悉了运用基本都是高工级别的了,其他修修补补就行了。。。。

1、三种预定义特性:attributeUsage、Conditional、obsolete,允许创建自定义特性,派生自System.Attribute类

2、委托和事件

2.1、将方法作为方法的参数:委托是一个类,它定义了方法的类型,使得可以将方法当作另一个方法的参数来进行传递

2.2、将方法绑定到委托:

可以将多个方法赋给同一个委托,或者叫将多个方法绑定到同一个委托,当调用这个委托的时候,将依次调用其所绑定的方法

2.3、声明一个事件不过类似于声明一个进行了封装的委托类型的变量而已,事件应该由事件发布者触发,而不应该由事件的客户端(客户程序)来触发

2.4、很多的委托定义返回值都为 void,如果定义了返回值,那么多个订阅者的方法都会向发布者返回数值,结果就是后面一个返回的方法值将前面的返回值覆盖掉了,因此,实际上只能获得最后一个方法调用的返回值

2.5、四种委托类型:

Delegate至少0个参数,至多32个参数,可以无返回值,也可以指定返回值类型;

Action是无返回值的泛型委托,至少0个参数,至多16个参数;

Func是有返回值的泛型委托,Func<T1,T2,,T3,int> 表示传入参数为T1,T2,,T3(泛型)返回值为int的委托,Func至少0个参数,至多16个参数,根据返回值泛型返回。必须有返回值,不可void;

predicate 是返回bool型的泛型委托,Predicate有且只有一个参数,返回值固定为bool;

3、流与文件的操作、多线程、程序集以及反射、XML文档处理

4、托管代码以及非托管代码

4.1、托管代码(Managed Code)就是中间语言(IL)代码,在公共语言运行库(CLR)中运行。编译器把代码编译成中间语言,当方法被调用时,CLR把具体的方法编译成适合本地计算机运行的机器码,并且将编译好的机器码缓存起来,以备下次调用使用。随着程序集的运行,CLR提供各种服务:内存管理,安全管理,线程管理,垃圾回收,类型检查等等

4.2非托管代码,直接编译成目标计算机码,在公共语言运行库环境的外部,由操作系统直接执行的代码,代码必须自己提供垃圾回收,类型检查,安全支持等服务。如需要内存管理等服务,必须显示调用操作系统的接口,通常调用Windows SDK所提供的API来实现内存管理

5、Web Service、基于Sockets模型的网络编程

原文地址:https://www.cnblogs.com/hualiuliu/p/11451682.html

时间: 2024-10-31 11:33:29

C#后台架构师成长之路-高阶知识体系核心的相关文章

C#后台架构师成长之路-基础体系篇章大纲

如下基础知识点,如果不熟透,以后容易弄笑话..... 1. 常用数据类型:整型:int .浮点型:double.布尔型:bool.... 2. 变量命名规范.赋值基础语法.数据类型的转换.运算符和选择语句 3. 四种循环结构:for循环.whie循环.do...while循环.foreach循环,嵌套循环 4. 数组.类与对象. 自动属性.对象实例化.方法的返回值.实例方法的调用.静态方法 4.1.静态的方法或变量是长期住留在内存中,直到程序关闭这个软件才会在内存中消失 4.2.静态方法的调用是

C#后台架构师成长之路-Orm篇体系

成为了高工,只是完成体系的熟练,这个时候就要学会啃一些框架了... 常用Orm底层框架的熟悉: 1.轻量泛型的DBHelper,一般高工都自己写的出来的 2.EF-基于Linq的,好好用 3.KeelKit:如下说明 4.NHibernate Linq-自己查,感觉和EF差不多 5.SqlSmart:如下说明 6.Cooperator Framework:如下说明 7.Service Stack :完美对接SQLServer.Orcale.MySQL,完美对接Redis,Lambda的普遍应用

C#后台架构师成长之路-进阶体系篇章大纲

这些知识体系概念和应用如果不了解,怎么修炼你的内功..... 1.数据类型的理解,比如bool,byte,short,ushort,int,uint,long,ulong,float,double,string等 2.winform窗体程序-一个窗体程序,就是一个类,执行步奏如下 2.1.Program.cs文件中的Main方法最先执行 2.2.实例化窗口,配置窗口字段 2.3.执行构造方法,加载所有的控件资源 2.4.显示 2.5.关闭前执行dispose方法 2.6.退出Main方法. 四个

如何成为一名架构师,架构师成长之路(转)

转自http://blog.csdn.net/fei33423/article/details/61934514 如何成为一名架构师,架构师成长之路 原创 2017年03月13日 22:50:34 3116 大量阅读别人的系统实现文章( 架构= 模块图 + 模块流程图(启动 和 主流程 ,可以用拟物 tag) 或者 模块时序图) 动态+静态 .对象很重要,模块很重要. 从产品角度,用户很重要 脑图不需要按空格,收缩行 https://www.processon.com/view/link/58c

开启运维自动化架构师成长之路

技术的提升仅是量的积累,思想的提升才是质的飞跃! 这句话是我在网上看到认为最有道理的励志语录了,当然互联网IT行业的工作者相对理解的会更加深刻. 以这句话开头引出我将要写的这篇文章.首先,请允许我做一个自我介绍: 熟悉的朋友喜欢叫我一声岩哥,这么些年我也认可了这个称谓,尽管不是太好听.从毕业之后就接触了互联网,到现在工作N多年,中间有接触过游戏行业.金融行业.教育行业.云计算行业.电商购物和系统项目集成等,所有的工作经验和项目经历都是跟互联网IT技术挂钩,熟知企业中.项目中和学习中关于IT方面的

架构师成长之路2.4-Kickstart文件剖析

点击返回架构师成长之路 架构师成长之路2.4-Kickstart文件剖析 kickstart文件是一个简单的文本文件,它包含了一个项目列表,每个项目由一个关键字来识别. 创建kickstart文件注意: 每节必须按顺序指定.除非特别申明,每节内的项目则不必按序排列.小节的顺序为: 命令部分,这里应该包括必需的选项.           %packages部分,这部分选择需要安装的软件包.           %pre和%post部分,这两个部分可以按任何顺序排列而且不是必需的.前者是预安装脚本,

架构师成长之路4.4-多维监控体系_zabbix

点击返回架构师成长之路 架构师成长之路4.4-多维监控体系_zabbix 点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 自学Zabbix之路[第一回]:初识Zabbix 1.1 自学Zabbix1.1-简介 1.2 自学Zabbix1.2-zabbix特性 1.3 自学Zabbix1.3-zabbix进程 自学Zabbix之路[第二回]:安装Zabbix 2.1 自学Zabbix2.1-安装需求 2.2 自学Zabbix2.2-服务器端环境

架构师成长之路6.4 DNS服务器搭建(部署主从DNS)

点击返回架构师成长之路 架构师成长之路6.3 DNS服务器搭建(部署主从DNS)  部署主DNS : 点击 部署从DNS : 如下步骤 1.与主DNS一样,安装bind yum -y install bind-utils bind bind-devel bind-chroot bind-libs 2.与主DNS一样,编辑/etc/named.conf options { version "1.1.1"; listen-on port 53 {any;}; #表示使用53端口 direc

架构师成长之路5.2-Saltstack远程执行

点击架构师成长之路 架构师成长之路5.2-Saltstack远程执行 配置管理工具: Pupper:1. 采用ruby编程语言:2. 安装环境相对较复杂:3.不支持远程执行,需要FUNC工具配置才可以 Ansible:1.采用python编程语言:2.被红帽收购:3.轻量级:4.基于模块工作的,本身没有批量部署的能力,真正批量部署的是ansible所运行的模块. Saltstack:采用python编程语言,同时提供Rest API方便二次开发以及和其它平台进行集成(目前企业使用率最高) Sal