.NET学习笔记(1)— C#学习路线图
一:引言
因为工作调整,从PHP开发零基础转型到.NET开发,前期没有太多空闲时间去系统学习。只好独辟蹊径,寻找快速掌握满足当前需求的方法,和大家分享:
<一>:先搜集.NET平台重点知识点的概念名称,然后通过网络搜集该知识点的学习资料,尽可能宏观地了解这个全新技术体系的语法结构,涉及的编程练习题反复练习;
<二>:逐行阅读工程源代码,再通过网络学习遇到的知识盲点,然后把零散的知识点先记录到学习笔记中,后续再统一整理;
可想这份挑战并不轻松,但因为是本职工作,基本一天所有精力都在学习、思考这些新知识,代码和笔记也会反复阅读很多遍。这个体验的过程中,我觉得最重要的收获是:工作中,在时间和精力有限的情况下,先满足当前的需求是最重要的,也就是完成大于完美。另一方面,明确一个目标,制定对应的计划,保持好心态,尽最大努力坚持下去也很重要。
二:.NET技术体系
1:.NET介绍
.NET平台的核心技术为:通用语言运行时(CLR:Common Language Runtiome)、基类库(BCL:BaseClass Library)、.NET语言及VisualStudio.NET,如图:

.NET技术体系沿袭的是微软的技术路线,所以主要面向windows操作系统,基于.NET技术开发的常见软件类型有:
1》:WinForm/WPF技术开发基于Windows平台的客户端软件;
2》:asp.net技术开发的网站;
3》:C#语言编译的Dll文件或者COM组件;
它主要由这几个部分组成:编程基础知识、Web编程、桌面编程以及数据访问技术。下面从几个概念介绍来构筑.NET技术体系的总体情况:
2:C#语法
C#作为.NET体系最常用的开发语言,首先它是一门编译型语言,也是一门类型安全的面向对象语言,它依赖.NET Framework运行。C#的语法特性主要包括属性、枚举、值类型和引用类型(转换)、集合、结构以及Lambda表达式、LINQ、WPF、WebSercice、WCF、Win服务等,可以查阅C#关键字列表看一下。关于变量命名、方法传参、数组、流程控制和循环控制、类的继承、派生、多态这些基本是各个语言公共具有的特性,可参阅其他教程。
3:asp.net站点开发
asp.net是.NET体系的一部分,它综合了HTML、CSS、JavaScript以及C#语言开发网站,asp.net支持三种开发模式:
WebPage(单页面模型)
WebForms(事件驱动模型)
MVC
WebPage是过去那种流程化处理的页面,服务器脚本和前端代码混合。WebForms增加了控件机制,支持编写自定义控件。
4:Winform软件开发
(待续)
5:数据访问技术
(待续)
6:调试和错误处理
(待续)
三:常用工具汇总
VisualStudio(IDE集成开发工具)
MiscrosoftSQL Server(关系型数据库)
IIS/IISEpress(Web服务器)
.NETReflector、ILSpy(反编译工具)
NuGET(包管理器)
VSS/TFS(源代码版本管理、团队协作)
NotePad++
四:学习资源汇总
《C#高级编程》
《ASP.NET MVC 5高级编程》
《深入理解C#》
《Learning hard C#学习笔记》
七:总结
不同语言的程序开发中,大部分基础功能用到的语言特性很相近,比如字符串的拼接和拆分、数组的使用、循环遍历,以及读写文件(txt、XML)、数据库增删改查。重新学习一门新语言,就可以先搜集这门语言独特的语法特性,结合编程练习,达到一定的熟悉程度,可以尝试去练习这些语法公共部分相关的编程练习,这样更容易保证用最短的时间解决当前问题,在后续的漫长时间内,在逐渐深入学习掌握语法细节,并领会背后的设计思想。
.NET学习笔记(1)— C#学习路线图的更多相关文章
- golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍
golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍 go语言爬虫框架:gocolly/colly,goquery,colly,chrom ...
- HTML+CSS学习笔记 (6) - 开始学习CSS
HTML+CSS学习笔记 (6) - 开始学习CSS 认识CSS样式 CSS全称为"层叠样式表 (Cascading Style Sheets)",它主要是用于定义HTML内容在浏 ...
- 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧
目录 学习笔记:CentOS7学习之二十五:shell中色彩处理和awk使用技巧 25.1 Shell中的色彩处理 25.2 awk基本应用 25.2.1 概念 25.2.2实例演示 25.3 awk ...
- 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用
目录 学习笔记:CentOS7学习之二十四:expect-正则表达式-sed-cut的使用 24.1 expect实现无交互登录 24.1.1 安装和使用expect 24.2 正则表达式的使用 24 ...
- 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用
目录 学习笔记:CentOS7学习之二十三: 跳出循环-shift参数左移-函数的使用 23.1 跳出循环 23.1.1 break和continue 23.2 Shift参数左移指令 23.3 函数 ...
- 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环
目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...
- 学习笔记:CentOS7学习之二十一: 条件测试语句和if流程控制语句的使用
目录 学习笔记:CentOS7学习之二十一: 条件测试语句和if流程控制语句的使用 21.1 read命令键盘读取变量的值 21.1.1 read常用见用法及参数 21.2 流程控制语句if 21.2 ...
- 学习笔记:CentOS7学习之二十:shell脚本的基础
目录 学习笔记:CentOS7学习之二十:shell脚本的基础 20.1 shell 基本语法 20.1.1 什么是shell? 20.1.2 编程语言分类 20.1.3 什么是shell脚本 20. ...
- 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理
目录 学习笔记:CentOS7学习之十七: Linux计划任务与日志的管理 17.1 计划任务-at-cron-计划任务使用方法 17.1.1 at计划任务的使用 17.1.2 查看和删除at将要执行 ...
- 学习笔记:CentOS7学习之十九:Linux网络管理技术
目录 学习笔记:CentOS7学习之十九:Linux网络管理技术 本文用于记录学习体会.心得,兼做笔记使用,方便以后复习总结.内容基本完全参考学神教育教材,图片大多取材自学神教育资料,在此非常感谢MK ...
随机推荐
- iomanip.h
http://baike.baidu.com/link?url=zuNLgcUVylhUYYefyV13F38NChIMx8nnCEWV5zkkTQMrrSdKPxUERZuydSHtp6sXukWv ...
- jquery easyui的异步tree
1.创建一个简单的tree 结果如图: <script> $(function(){ $('#tt').tree(){ url:'要提交的url地址', checkbox:true, li ...
- 【Java】C/C++与Java的简单比较
转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/5827273.html C/C++: 编译(不同的系统编译出不同的机器码,所以同一 ...
- Objective-C: NSFileManager 的使用
在Objective-C 中的 Foundation 框架中,文件操作是由NSFileManager 类来实现的. 下面通过例子来说明如何创建一个文件,并向文件中写内容,以及如何读出文件中的内容: - ...
- js 限定上传文件大小 类型
方案1 :限定大小 <html> <head> <script type="text/javascript"> var isIE = /ms ...
- sre_constants.error: unbalanced parenthesis
Traceback (most recent call last): File "androidmarket82.py", line 108, in <module> ...
- Mac下生成RSA密钥
MAC OS自带了OpenSSL,直接在命令行里使用OPENSSL就可以. 打开命令行工具,然后输入 openssl打开openssl,接着只要三句命令就可以搞定. 第一句命令生成1024位私钥: O ...
- 【转】python的小知识
1. 如何反序访问一个序列(how do I iterate over a sequence in reverse order) 如果序列是list,则使用list.reverse()即可将序列反序. ...
- 从零开始学android开发-通过WebService获取今日天气情况
因为本身是在搞.NET方面的东东,现在在学习Android,所以想实现Android通过WebService接口来获取数据,网上很多例子还有有问题的.参考:Android 通过WebService进行 ...
- Codeforces Round #250 (Div. 1) A. The Child and Toy 水题
A. The Child and Toy Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/438/ ...