【转】C#学习路线WinForm学习路线

前沿:GIS专业刚刚开始接触开发,半年没入开发门,学开发智商应该没问题,走了很多弯路。博文转自 辉耀应用程序框架学习网html

  无论学习哪种编程语言或技术框架,为了不“迷路”,少走弯路,都应当有一条系统的、全面的学习路线,笔者认为应以软件经常使用功能为主线,由简入繁,逐一实践每一项功能。笔者曾自学过C、VFP、ASP、VB.NET、PHP、JAVA、JSF、C#.NET、WinForm、ASP.NET及网页开发等编程语言或技术,参与开发的项目有十多个,笔者认为学习软件开发,入门最难,入门不是简单的在电脑屏幕上输出“Hello World!”,而应当是了解编程语言的开发环境和工具,学习和掌握基本控件,多应用实践。入门阶段计算机编程理论大可放到一边,先学会如何使用编程工具开发小程序,而后再探讨如何开发更复杂的程序,最后再系统性的补全基础理论知识。笔者主张“死记硬背”式自学方法,先看到效果,再回过头来探讨为何这么作。初学者若是尝到甜头,那么他就会对软件编程的兴趣会越学越浓烈,从而进入一个良性循环学习过程。若是学C语言几个周,也只能在本身的电脑屏幕上输出一些字符、写个循环、作个数学运算,那么这个初学者极可能因挫败的成就感而丧失对软件编程的兴趣。程序员

  我大学期间学习C语言的时候,虽然考试成绩不错,但对C语言理论仍是一头雾水、充满疑惑,学好C语言具体能作什么也不清楚。因C语言的经典和传奇而喜欢它,但多次因未感觉到C写程序的成就感而放弃。后来,笔者学习网页开发、ASP,自学半年,虽然能写一些动态网页,但独立作个公司网站还很难。当时公司网站市场价还处于万元时代,和如今几百元一个网站相比,技术进步了,时代变了。笔者自认为在学习VB.NET以前本身不曾入门。一次逛书店,偶然翻到一本VB.NET开发实战,阅读VB.NET代码如同阅读文字同样轻松愉悦,按照书本提供的WinForm案例,短短两个月的时间就将公司档案系统(ASP版)使用Win Form从新开发。后来学习ASP、PHP、Java等编程语也很是顺利。至此,方感恍然大悟,学编程这么多年,一直懵懵懂懂,归根结底是未找到入门的切入点。web

  不论C#、Java、PHP,每种编程语言,语法都很类似,功能也类似,那么按照这个道理学习Java和C#应当难度一致,但大多数程序员都认为学习Java要比C#难,学习成本也高。笔者认为主要缘由是Java的开发环境和资源获取难度要高于C#,C#在集成开发工具Visual Studio中经过向导分分钟就可看到C#写的程序,Visual Studio由微软提供,其完善程度远高于Java的开发环境。一个有趣的现象是Java程序员常常满世界寻找合适版本的jar包,这也是Java开源项目多、资源多的一个关键因素。C#程序员这样的经历就少多了,由于微软提供的已经很全面了。正则表达式

  有的程序员认为微软的东东太容易上手,因此学.NET不够高大上、不能证实本身比别人聪明,更喜欢使用敲命令行的工具。笔者认为学习计算机编程,可先找个“软柿子”,再啃“硬骨头”,因此推荐初学者从C#和Win Form入手。sql

如下是笔者整理的学习路线,功能排列没有绝对前后顺序,只是一个参考方向,欢迎批评指正,欢迎补充!数据库

C#学习路线编程

1.安装和熟悉开发工具或开发环境小程序

2.建立一个项目,输出Hello World,并在另外一台电脑上运行编译好的演示程序数组

3.熟悉WinForm基本控件框架

4.数据类型

5.类及属性定义

6.变量

7.赋值

8.运算符

9.字符串拼接,尽可能避免频繁使用+拼接,可以使用StringBuilder

StringBuilder sql = new StringBuilder();
sql.Append("select tb.name,ta.* from tablea ta");
sql.Append(" left join tableb tb on tb.id = ta.id");
sql.Append(" where tb.name like '%%'");
sql.Append(" order by tb.name");

10.字符串格式化,使用传参方式替代字符串拼接

string username = "huiyaosoft.com";
int age = 1;
Console.WriteLine("Username{0},age{1}",username,age);
Console.WriteLine(string.Format("Username{0},age{1}", username, age));

11.日期时间格式化

12.数值格式化

13.保留小数

14.条件

15.循环

16.生成随机数

17.数组

18.列表

19.队列

20.引用命名空间

21.在控制台输出

22.字体样式

23.快捷键

24.对话框

25.文件及文件夹操做

26.文本文件读取、修改、删除等操做

向文本文件写入(追加)内容,若是文本文件不存在则建立

System.IO.File.AppendAllText(@"c:\demo.txt","your content");

读取文本文件所有内容

string content = System.IO.File.ReadAllText(@"c:\demo.txt");

27.字符集

28.XML文件操做

29.验证码

30.缩略图

31.操做Excel

32.操做WPS

33.错误处理

34.错误日志

35.二进制流

36.字符编码

37.加解密

38.定时器

39.多进程

40.发邮件

41.调用cmd命令提示符

42.链接数据库

43.数据库增删改查操做

44.数据集DataTable

45.字典

46.熟悉WinForm控件

47.文本标签Label

48.按钮

49.文本框

50.下拉框

51.日期时间选择框

52.单选框

53.复选框

54.列表框

55.选项卡

56.分割条

57.树

58.数据表格DataTableGridView/DataGrid

59.控件及事件(单机、双击、得到焦点、失去焦点、选中)

60.表单校验

61.正则表达式

62.消息对话框

63.确认框

63.输入框

65.调用Web Service

66.使用代理

67.操做COM口

68.打印

69.报表

70.Socket通讯

71.托盘小图标

72.打开一个网址

System.Diagnostics.Process.Start("http://www.huiyaosoft.com/");

73.打开一个网址并读取网页内容

74.文件上传下载

75.生成条形码

76.生成二维码

77.安装包

78.获取ip地址

79.引用第三方dll

80.文档管理系统

81.取得程序当前运行所在路径

System.Windows.Forms.Application.StartupPath + "\\";

……

相关文章
相关标签/搜索