c#学习计划范文
C#是一种安全的、稳定的、简单的、优雅的,由C和C++衍生出来的面向对象的编程语言。只是对于不少人来说,学习C#并不容易,特别是女生,那么要下定决心学好C#的话,最好要有可行的学习计划表。下面是小编整理的c#学习计划范文,希望对您有帮助。
c#学习计划范文篇1
第一版:单页面读取
目标:写一个控制台程序,可以从网络上读取一个指定页面的HTML内容。并输出到控制台
作用:练习语法,理解类库阶段,比如属性HTTP相关的类的操作,String类的操作,控制台操作
第二版:.2层页面读取
目标:在前面的基础上,读取到一个页面之后,用正则操作分析出其中的URL地址,读取第二层页面
作用:可以学习正则,数组操作。
第三版:.N层页面读取
目标:在前面的基础上,读取N层网页。
作用:可以学习递归,异常处理(N层页面,总会遇到访问不到的无效链接的),以及循环读取控制的问题(重复访问首页:从首页出发爬行,子页面再次指向首页的问题)。
程序做到这里,基本上就是慢如乌龟了。然后就是考虑加速
第四版:.N层页面单线程读取
目标:在前面的基础上,把访问HTML部分代码放置到一个线程中,并和前面的结果保持一致
作用:可以学习代码重构(因为功能要保持前面一个版本完全一样,只是改成线程操作),线程相关的类库
第五版:.N层页面,多线程读取
目标:使用多线程来同步读取网页内容,并解析之后,放入到待解析队列中。
作用:学习多线程操作,线程同步概念,以及同步操作。
这时候运行速度飞快,但是内存消耗也飞快。于是会就会有第六版本
第六版.N层页面,多线程读取,存入数据库
目标:在前面的基础上,把读取的内容保存到数据库中
作用,数据库读写操作学习。
第七版:增加控制界面
目标:运行过程中有些参数,比如线程数,爬行深度这些参数需要一个界面来控制。还有一些运行数据,比如抓取数目,错误数目,队列长度等需要在界面上直观的显示出来。这都需要把控制台的程序,改成UI界面的。
作用:学习UI开发,以及线程和UI的交互。
基本上到了这里,如果按这个来操作,C#的学习结束了,完全过关。
c#学习计划范文篇2
第一阶段:.Net基础加强
常用数据结构(List、Dictionary、Array)、多态、常用设计模式、反射、常用.net类库、泛型、IO流、委托事件、正则表达式、反射、XML等。
第二阶段:数据库开发及ADO.Net
1、索引、事务、SQL语言高级技术(空值处理、聚合与分组、数据分页、Union、日期函数、类型转换函数、流控函数、表连接、子查询、存储过程、触发器)、数据库设计范式、数据库调优。
2、ADO.Net:行集、数据集、Enterprise Library(SQLHelper)、SQL注入漏洞防范。
3、三层架构:UI+BLL+DAL三层架构是目前企业中应用最广的系统架构模式,这个阶段我们将学习动软代码生成器、CodeSmith、自己动手写三层架构等技术。
4、做一个具体的项目(类似餐饮管理系统之类的项目):
第三阶段: JavaScript与JQuery
1、HTML高级特性、CSS(包含Div+CSS布局);
2、JavaScript基础、JavaScript高级语法(JS面向对象原型prototype、混合方式构造对象、面向对象实例详解、作用域、闭包、call和apply)、JavaScript Dom;
3、JQuery(JQuery函数、隐式迭代、链式编程、id选择器、tag选择器、CSS选择器、层次选择器、表单选择器、过滤选择器、复合选择器、节点导航、节点操作、样式操作、事件、动画、JQuery Cookie、JQueryUI);
CSS、JavaScript是ASP.Net开发的基础,把这些掌握好了就能很轻松的学会ASP.Net;Dom是实现网页动态效果的技术,在网站越来越个性化年代,招聘企业对应聘者的Dom水平要求非常高;JQuery是近几年异军突起的JavaScript框架库,几乎成了Web前端开发事实上的标准,大部分企业都是使用JQuery进行Web前端的开发。
第四阶段: ASP.Net开发
Socket网络编程、多线程、自己动手写Web服务器、ashx模式Web开发、ViewState、Cookie、Session、Http协议、Web开发基本原则、XSS漏洞防范、Request对象、Response对象、Server对象、虚拟路径、HttpHandler深入、ASP.Net生命周期、WebForm原理、服务端基本控件、WebShell漏洞防范、HTML服务端控件、验证框架、MasterPage、数据绑定控件(ObjectDataSource、列表类绑定控件、GridView、FormView、ListView、Repeater、高效率分页)、缓存、错误处理、AJAX(XMLHTTP、JQuery AJAX、Json)、全局文件、HttpHandler与HttpModule、IIS配置、NVelocity模板引擎。
由于微软对ASP.Net进行高度封装,因此ASP.Net入门非常简单,开发人员不需要了解HTML、JavaScript、Http协议也可以快速开发出一个Web系统,正因为如此,社会上充斥着大量这样的“拖控件的开发人员”,使得很多Java、PHP等语言的开发人员诋毁ASP.Net开发人员的时候经常会说“你们什么都不懂,就会拖控件”。
ASP.Net的快速开发是ASP.Net非常大的一个优点,可以加快开发效率,这是行业的发展趋势,但是局限于这样的“傻瓜化开发方式”的开发人员的竞争力和成长性都是非常有限的,遇到ASP.Net一些高级技术(比如ASP.Net MVC、SEO、网站调优、服务端客户端混合编程、AJAX等)的时候就完全不能胜任。通过上一个阶段的HTML、JavaScript、Dom的学习,学员已经有了很好的HTML、JavaScript基础;在ASP.Net课程的一开始,不是直接学习怎么拖ASP.Net控件进行快速开发,而是通过ajaxx的模式开发原始的动态网站,明白“请求—处理—响应模型”、“Http协议、Http无状态”、“C#代码渲染生成浏览器端JavaScript”、“ViewState的作用”、“Session的原理”等这些基本而又重要的原理,从而扫清后面ASP.Net知识学习的基础性障碍。
ASP.Net中有一些技术是有局限性的,要根据这些技术在企业中的实际应用情况进行调整、补充。比如项目中几乎没有在UI层直接访问数据库的,而是采用三层架构,因此不学习UI层直连数据库的控件SQLDataSource,而是把主要精力放在讲解三层架构开发模式。再比如ASP.Net内置的AJAX解决方案UpdatePanel只在部分要求不高的内网项目中才被使用,因此学习UpdatePanel的使用和原理之外,把更多的时间放在学习企业中用的最多的JQuery AJAX解决方案上。
第五阶段:ASP.Net项目
1、CMS系统:这是一个包含了资讯栏目管理、资讯发布、富文本编辑器、页面静态化、URL重写、验证码、AJAX、评论管理、网站安全、高效率分页、权限管理、友情链接管理等技术的内容管理系统。
第六阶段:ASP.Net MVC 技术基础
ASP.Net MVC是微软推出的区别于ASP.Net WebForm的Web开发新技术,由于ASP.Net MVC解决了ASP.Net WebForm的很多缺点,非常适合大型、中型项目的开发,一经推出就受到了.Net开发社区的追捧,很多.Net开发人员的职位要求中都提到了要求掌握ASP.Net MVC。
主要知识点:Entity Framework、Linq To EF、MVC模型、Html.Helper、AspNet MVC下的Ajax、AspNet MVC分页、路由(Routing)、常用ActionResult、Razor视图引擎;
第七阶段:ASP.Net MVC 项目
B2C电子商城。这是一个典型的基于ASP.Net MVC技术的B2C电子商城项目,使用经典的三层架构进行开发。涉及商品管理、用户管理、订单管理、导航管理、站内搜索引擎、静态页面生成(新浪、搜狐等大型网站普遍采用的技术)、视频转码和播放、伪静态设置(URL重写)、RSS输出、水印设置、在线支付(支持支付宝、财付通、快钱等第三方支付平台)、AJAX无刷新操作、敏感词过滤、无刷新上传等核心模块。还涉及到工厂模式、抽象工厂、Spring.Net、Memcached、Redis分布式队列、MongoDB、权限管理、单元测试、WebService、WCF、图片文件集群处理、源代码管理(SVN、CVS)、网站优化等技术的应用。大型互联网站由于访问量非常大,因此不是那些单纯用ASP.Net控件拖拽开发的开发人员能够开发的,也不是闭门造车能够造出来的,必须是在实际项目中经过无数访问者的使用、反馈、修改才能做出来的。
项目:自己开发一个B2C商城,并且做一个实例(一个实际的店铺)。
模仿nopCommerce,并分析nopCommerce.把nopCommerce研究清楚。(写详细的分析笔记,用自己的语言,从学习的角度。)
第八阶段: .Net开发Android、IPhone技术
Unity3D开发Android、IPhone、网游游戏开发课程
1)Unity3D场景编辑器使用;3D模型导入导出;地形和天空编辑;Unity3D C#语言特色语法;
2)游戏菜单GUI;血条绘制;配置信息保存;多场景控制;
3)3D模型控制;PhysX物理引擎;第一人称角色控制;第三人称角色控制与场景漫游;
4)任务自动路径行走;粒子系统;游戏3D音乐播放;模型3D动画;
5)要做的项目:做两个小游戏。(至少在商店上架一个会有很多人付费的游戏。)
jQueryMobile和PhoneGap做移动开发:
1、使用jQueryMobile制作移动网站
2、把移动网站使用Phonegap打包成app
3、调用手机的功能,如:响铃、震动摄像头、获取地理位置等
4、在地图上显示地理位置
5、移动网站和服务器端通信