写给初学编程的同学的话.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
写给初学编程的同学的话

写给初学编程的同学的话 我常在想,再也没有人像你对我这么好;而我呢,执拗的脾气还是改不掉。 ——题记 我不在此渲染IT世界有多么美妙,编程的作用和乐趣,毕竟现代整个信息社会都是由那一行行代码所架设起来的。 业界有这样一句话,叫 程序 = 算法 + 数据结构,这句话太深奥,没有十万行编码的经验是没法体会的。我在此也不作过多的解释。下面来具体说说如何快速而又高效地上手一门编程语言,以C#为例。 我们先举个例子,让一个不懂编程的人去看一段代码,他肯定看不懂,那么为什么看不懂?因为他不懂这些程序中的符号含义,比如像int float class interface, for while。 但是,即使像张越这样的同学,他们也懂这样的符号含义,比如int代表一个整形数据类型,for和while是循环控制语句。他们在看多数程序时仍然看不懂,这又是为什么?原因是他们知道这门语言本身或者运行平台的一些约定符号的含义。比如,他们不知道CreateThread是用来创建进程的,MB_ICONASTERISK是windows中用来代表提醒信息对话框的,更别说他知道Mutex是互斥量、CriticalSection代表临界区,我相信多数编程新手可能第一次听这样的术语,而且你和他说上七七四十九天,他们也不会记得这样的词汇。 处于这种水平的同学常常充满豪情壮志,因为他们能看懂一些程序,能够写一些诸如给100个数排序、累加的程序。但是你让他去写一个类windows计算器的程序,他却难以下手或者步履维艰。这又是为什么? 还是上面的原因——他不了解他会的这门编程语言在对应的运行环境或者运行平台上相应的接口,说得通俗点,就是可以调用平台提供的函数。还是以上文说的编写计算器程序为例: 你会C/C++,但是你写不了程序,但是倘若你知道C/C++运行的计算机环境,也就是Windows操作系统平台提供了CreateWindow或者DialogBox这样的函数,前者用来创建一个窗口,后者用来创建一个对话框,这样计算器框架界面就做好了,但是还不够,必须有按键按钮和显示数值文本框,这个时候,你必须要知道Windows的button和edit这两种控件,并且知道如何操作它:包括如何响应这些按键和在文本框中现实数据。 再比如,你会C#语法,能写出一堆for循环和if语句,甚至牛X到能写一个类,但是你也无法制作这样的计算机程序。C#托管于CLR,通俗地说,就是C#程序编译后在.Net环境中运行。你要想做这样的界面,你必须懂.net(准确地说,是CLR运行环境,.net托管了很多语言诸如vb CLI/C++(C++的变种),而不仅仅是C#)提供的制作界面功能比如强大的WinForm和一些按钮文本框等控件,光有这些,做出来的程序只是拥有一个界面的空壳子。为什么呢?你虽然制作出了界面和按钮,但是你的按钮点击得有反应,你的数据得能显示出来,按钮被点击并且能够响应这需要你理解平台提供的事件机制,在C#中,事件机制主要有两种,一种侦听(listen),一种是委托(delegate),这里简单展开一下吧,因为我写这篇文章主要是教你怎么学C#的,就是用平台提供的一个“+=”符号,后面跟一个函数名,比如计算器计算按钮的名字叫caculateButton,你可以这样写: caculateButton.MouseClick += caculateResult(parameters…); 这样的话,它所代表的意思就是,当caculateButton被鼠标左键单击以后,执行函数caculateResult,其中parameters代表的是这个函数需要的一些参数。 当你算出结果了,你需要显示出来,比如显示结果的文本框叫result,如果你知道.net的文本框有Text这样一个属性(看,“属性”又一个新词!你也需要知道的),你就可以这样写: result.Text = “计算结果”; 我们再来看看Java吧,同样,在Java中什么if while这些语句的语法都是一样的,但是会这些语法,你一个Java程序也写不了,更别说那些强大的服务器程序和现在安卓手机上流行的各种应用程序,为什么呢?我不说,你应该也明白了,Java运行的平台JRE提供的一些函数你不知道,比如做界面的java.swing包。哇哦,“包”又是一个新概念,C#中其实也有,只不过,在C#中不叫包,而叫命名空间(namespace)。 我们再深入一层,当然对于初学者现在不一定能理解了。对于我,左雪菲,来说,写程序也至少有三四年了,代码数量也不下于十万行,因为,光我们07地理专业的毕业纪念册电子版的,我就花了四个月时间,写了不下于两万行的代码。大学四年加上研究生生活一年以来,我写过形形色色的程序,从web前后端到桌面

文档评论(0)

hh83kxy + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档