.NET学习路线之我见(转)
这是我的第一篇博客,所以,我想写个大的,至少这个话题是比较大的。
在文章的开头,首先声明,这篇文章仅代表我个人的想法,并且只适合.NET的初学者,如果你已经有两年以上的开发经验,我劝你还是别看了,省得像看别人的代码那样边看边骂,呵呵。
我觉得,.NET这个东西,入门确实比较快,所以现在很多人都说,.NET程序员只会拖拖控件,没什么技术含量。我对这种看法不以为然,.NET技术确实把很多东西都集成在一块了,用起来很方便,界面上的很多东西,可也以拖拖控件,设几个属性,写几个事件,有时候就完事了。像这种项目,逻辑确实太简单了,但是,也不能为了有难度而有难度,而故意把精力放在界面上吧。其实,在.NET中,无论是WinForm也好,ASP.NET也好,WPF也好,其实他们只是一种表现形式的差异,后台的程序集都是一样的,都是UI需要什么数据,类库负责把这些数据传递给UI。三层架构,设计模式,数据结构与算法,这些思想适用于所有编程语言。好了,这些东西,点到为止,下面进入正题。
我学习.NET的路线是这个样子的。
1,先从c#语言学起,在Console环境中,对着那个不大不小的黑框,练习c#语法和面向对象的思想,语法包括流程控制,方法,属性,委托,泛型等。面向对象包括封装,继承,多态,特别是多态,要好好看看。也要理解抽象类,接口,密封类等名词的概念。
2.熟悉一些.NET封装好的一些常用的类,比如说,集合类,字符串操作类,文件操作类,等等。
3.熟悉WinForm。这个东西跟Console不是很一样,是基于事件的。在WinForm环境中,熟悉熟悉常用的控件,包括常用的属性和事件。不要因为有人鄙视拖控件,你就不好好学习控件,要对控件有一个客观的认识。学学GDI+,研究研究为什么控件拖上去以后,他就能在界面上显示出来,你的事件是怎么被调用的,等等。这个阶段,做一些简单的小软件,试着把一些功能封装在不同的类中,每个类写一个单独的文件。
4.学习SQL Server,理解关系数据库的思想,熟悉sql 语句,然后学习ADO.NET,达到可以通过c#实现对数据库的增删改查,会写比较复杂一些的查询语句。这个阶段,可以做一些小型的信息管理系统。
5.学习HTML,CSS,JavaScript,ASP.NET,熟悉ASP.NET的几个内置对象的常用操作,理解B/S结构跟C/S结构的差异和相同点。这个阶段可以做一些简单的小网站。
6.学习.NET的一些底层机制,比如,托管堆中的内存分配,值类型跟引用类型的差别,字符串驻留机制,垃圾回收机制等等。
7.学习三层架构的思想以及一些常用的设计模式,如简单工厂,外观模式,单例模式,生成器模式等,理解面向接口编程的思想和依赖注入,控制反转思想。
8.之后,就可以自己接一些小项目,或者是自己做着玩也行,自己设计,自己写代码,这个项目中需要用什么技术,就去学什么技术,遇到什么问题,首先自己去解决,自己搞不定了,再去向别人求助。
9.有意识地学习一些相关技术,如XML,水晶报表,LINQ,正则表达式,JQuery,多线程,Socket,Remoting等。
10.可以去好好研究研究设计模式,它绝对不会让你失望的。
11.这个时候,我觉得你就可以选择自己比较感兴趣的领域,去深入研究了。这时候,如果你还觉得.NET程序员没啥技术含量,只会拖控件,那么,你转行做其他的也行,上手就比较快了。因为软件开发中虽然有不同技术和不同门派,但他们的很多思想都是相通的。
12.多写代码,多研究系统架构。
13,把你的学习成果分享到博客园,与大家交流和学习。
转自 http://www.cnblogs.com/zdkai/articles/2390094.html
.NET学习路线之我见(转)的更多相关文章
- mui初级入门教程(一)— 小白入手mui的学习路线
文章来源:小青年原创发布时间:2016-05-15关键词:mui,html5+转载需标注本文原始地址:http://zhaomenghuan.github.io/#!/blog/20160515 写在 ...
- Android学习路线总结,绝对干货
title: Android学习路线总结,绝对干货 tags: Android学习路线,Android学习资料,怎么学习android grammar_cjkRuby: true --- 一.前言 不 ...
- 从啥也不会到可以胜任最基本的JavaWeb工作,推荐给新人的学习路线(二)
在上一节中,主要阐述了JavaScript方面的学习路线.先列举一下我朋友的经历,他去过培训机构,说是4个月后月薪过万,虽然他现在还未达到这个指标. 培训机构一般的套路是这样:先教JavaSE,什么都 ...
- 《C#微信开发系列(Top)-微信开发完整学习路线》
年前就答应要将微信开发的学习路线整理给到大家,但是因为年后回来这段时间学校还有公司那边有很多事情需要兼顾,所以没能及时更新文章.今天特地花时间整理了下,话不多说,上图,希望对大家的学习有所帮助哈. 如 ...
- 一位资深程序员大牛给予Java初学者的学习路线建议
java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打算来点干货,因此咱们就不说一些学习方法和技巧了,直接来谈 ...
- 分享篇——我的Java学习路线
虽然之前我是开发出身,但是我学习的语言是Objective-c,这个语言使用起来范围比较窄,对于自动化学习来说也是无用武之地,所以我自己学习了Java,对于一个有开发经验的人来说学习一门新语言相对来说 ...
- Java Web 学习路线
实际上,如果时间安排合理的话,大概需要六个月左右,有些基础好,自学能力强的朋友,甚至在四个月左右就开始找工作了.大三的时候,我萌生了放弃本专业的念头,断断续续学 Java Web 累计一年半左右,总算 ...
- Java Web学习路线
2016-08-22的早上,本是一个很平静的早上,坐在去往公司的公交车上想到了很多之前上学时的点点滴滴,回想起来还真的是耐人寻味啊,当初青春的懵懂,当初的冲动,当初的做事不考虑后果! 也正是这耐人寻味 ...
- 适合PHP学习者的学习路线 10个PHP优化技巧
适合PHP学习者的学习路线: (1) 熟悉HTML/CSS/JS..网页基本元素,完成阶段可自行制作简单的网页,对元素属性相对熟悉 (2) 理解动态语言的概念和运做机制,熟悉基本的PHP语法 (3) ...
随机推荐
- Redis持久化方式RDB和AOF
Redis 持久化 RDB(快照) 优点 rdb是可进行压缩的二进制文件,表示Redis在某一个时间点的数据快照.非常使用与备份,灾难恢复等场景.比如使用定时任务执行bgsave并备份rdb到serv ...
- unittest 单元测试框架断言方法
unittest单元测试框架的TestCase类下,测试结果断言方法:Assertion methods 方法 检查 版本 assertEqual(a, b) a == b assertNotEqu ...
- Linux基础——系统监控
系统监视和进程控制工具——top(任务管理器) top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. 各行数据大致解释如下: 12: ...
- CodeForces - 220B Little Elephant and Array (莫队+离散化 / 离线树状数组)
题意:N个数,M个查询,求[Li,Ri]区间内出现次数等于其数值大小的数的个数. 分析:用莫队处理离线问题是一种解决方案.但ai的范围可达到1e9,所以需要离散化预处理.每次区间向外扩的更新的过程中, ...
- Secondary ,Supplementary alignment 和bwa mem的-M -Y参数
1.supplementary alignment supplementary alignment是指一条read的一部分和参考区域1比对成功,另一部分和参考区域2比对成功,参考区域1和参考区域2没有 ...
- React Native实战系列教程之自定义原生UI组件和VideoView视频播放器开发
React Native实战系列教程之自定义原生UI组件和VideoView视频播放器开发 2016/09/23 | React Native技术文章 | Sky丶清| 4 条评论 | 1 ...
- 在winform中,禁止combobox随着鼠标一起滑动!
在winform中,如果form上或者是控件上有一个combobox控件,当你选择这个控件,当你鼠标移动其他地方,滑动鼠标时,这时combobox的选择值就会随之鼠标一起变化,如果你不想让comboB ...
- NOIP 数字游戏
描述 丁丁最近沉迷于一个数字游戏之中.这个游戏看似简单,但丁丁在研究了许多天之后却发觉原来在简单的规则下想要赢得这个游戏并不那么容易.游戏是这样的,在你面前有一圈整数(一共n个),你要按顺序将其分为m ...
- session的活化与钝化 (转)
session的活化与钝化就是当用户访问时网站异常,不能丢掉session,所有也必须采用文件存储:和之前那个统计网站访问量一样的原理. class Person implements必须实现这两个接 ...
- Spring_Bean 的作用域
beans-scope.xml <?xml version="1.0" encoding="UTF-8"?><beans xmlns=&quo ...