编程入门学习

2024-04-17

编程入门学习(精选9篇)

篇1:编程入门学习

接触编程有两年多了,也算积累了一些经验,希望能给刚入门的朋友一些帮助,文章仅代表本人观点,如有错误之处,还请多多包涵。

1.我该学什么语言?

VB、VC、Delphi、Java……面对各种各样的编程语言,你是不是被弄昏了头脑呢?该学什么?“学VC吧!”许多高手说。并且还举了很有说服力的例子:“学VB只要两个月,学VC要一年,如果先学VB再学VC,所用时间仍然是一年,但学了VC再学VB,所用时间将不到两个月。”这句话没错,的确是这样的。但是刚入门的初学者都能学VC?把每个人都看得这么高?一些初学者把VC当成自己的入门语言,结果能学到最后的只有少部分人!我们不能奢望所有初学者都是在十分熟悉Windows的情况下才开始接触编程的,实际上,很多人就是在学习编程的过程中逐渐深入了解系统的,要是所有人都选择VC作为“入门级语言”……

初学者应该根据自身情况来选择语言,如果你刚开始接触系统,应该去学VB,因为VB很好学,基础最重要;当然,还有Delphi,它介于VB与VC之间。除非你比较熟悉Windows,否则别急着学VC,你会因此神经衰弱的。

2.切忌同时学习多种语言

有没有试过同时学英语俄语德语波兰语法语日语?最后八成会变成鸭子。学编程也一样,如果你才高八斗机敏过人玉树临风,那么随便你同时学VC、VB、Delphi等等等等,没人会拦你,但如果是初学者呢?去做鸭子吧。同时学这么多种语言还不如踏踏实实学好学精一门适合自己的语言!初学者往往什么语言都要去了解一下,更有甚者连一些概念都不熟悉就什么都学,面对他们,我都要自愧不如了,但我还是要劝他们一句:一样一样的学,没有人能一步登天!别以为同时学多种语言就很“光彩”,当心最后仍是七窍通了六窍。

无论学哪门语言,都要把它学好再想其它,别“花心”,如果你是学VB的,至少要熟悉VB编程并且能熟练使用API的时候,你才应该去学其它语言,学VC更要注意,否则最后只能“无所不学,而一无所知”,只学一种语言时遇到困难还是好处理的,但是同时学这么多种,你保证都不遇上问题?小心几种语言的问题一起来压你!

3.要有主见

许多初学者爱跟着潮流走,外面流行什么他就跟着做什么(追“猩”族?)今天流行VB他就学VB,明天流行Delphi他就把VB忘了,再到VB.Net、C#……人云亦云,随波逐流,“专家”说什么语言好他就投奔什么语言,“走在科技前沿”,但是到最后又能学到什么?不仅丢了西瓜,连个绿豆都没拣着。这年头“世界变化快”,我知道,但是它怎么变就随它去,总不见得把你变成今天张三明天李四吧?“月亮走,我也走”的思想要不得,别管外面流行什么,如果不是大众需要,你只管学好你该学的语言就行。

4.别看轻其他语言

经常有人说“XX语言差,学了没前途!”要是让我评价一句,恐怕是你没前途吧?你凭什么说它差?没有一种语言是十全十美的,即使它再“差”,只要它还没有被外界宣布完全淘汰,它就有存在的理由!曾经有人对我说:“我的老师经常教育我,VB太差了,所以我要把以前学过的忘掉。”且不说这家伙随波逐流,单是他老师就够酷了,呵呵,不知道他的老师是圈子里的哪位资深专家呢?只怕是个三角猫吧!VB虽然存在一些局限性,但它的语法很好理解,数据库编程很方便,配合API也能完成一些复杂工作,这就叫差?多少个优秀程序不是用VB这个“没前途”的语言写出来的?多少个程序员不用VB?你看见他们没前途了吗?

5.不可缺少的教材

虽然从古到今一直有“尽信书,宁可无书”的遗训,但是我们可别因此“无书”哦!也许你天资聪明,自学电脑不用教材,但是自学电脑可以凭现象和经验,学编程能凭空摸索?连变量、过程等概念都不知道,还能

看懂for(i=1;i<50;i++)的意思?要学编程绝对不能少教材资料,如果连这都不舍得买,那么你最好别学了。还有一点,关于网络教程,我个人认为它太过于零散了,即使是一本完整的电子书也尽量不要看(除非实在买不到),难道你要一边写代码一边ALT+TAB?我宁愿慢慢翻一本书,也不愿盯着屏幕看半天!现在市面上的教材参差不齐,光买一本是明显不够的,基础的、高级的都要买回来慢慢研究,至少也要3本吧?市价低于20元的书最好不要考虑了,看看它的厚度!书本的厚度通常与含金量是成正比的(厚厚一本垃圾?你衰),最好选一些比较常见的出版社出版的书籍,尽量别买少见的,质量没得保证!我的一个同学就买了一本20元的垃圾,整本书连个完整的例程都没有,还大言不惭“基本入门”,误人子弟啊!现在那同学看的是我借给他的清华大学出版社出版的《中文 Visual Basic 6.0 傻瓜书》。

一个小窍门:如果你不知道该买什么书,最好找个高手一起去,让他帮你选本好的,如果你身边没有高手,那就找厚点的!或者书名带有“疑难解答”或“API”,这些书质量一般都可以。

6.关于英语

由于大多数语言的母语都是英语,这就导致了一些初学者望而却步,但是英语对于编程很重要吗?实际上编程需要的英语很少,都是比较基础的词汇语法,它和一般的英语不一样,即使你连一篇英语文章都看不下去,但只要有点英语基础的,你就不用怕“不会”!(当然前提是一些基础词汇如If、For、Next、While、include等必须看得懂,否则先去补习一点英语再说)就算英语再好,没学过编程也不会看得懂程序源码,难道没学过编程能知道StrComp等于String Compare?学编程与英语水平无关,我们学的是编程而不是英语!

7.编程大忌——组装

VB最大的方便之处是它和ActiveX能很好组合,MS和第三方厂商为VB开发了许多ActiveX控件,为初学者提供了很好的学习机会,但是一些初学者却满足于此,做一个程序用了一大堆别人的控件,加上一点微不足道的代码,就以为学会了编程,却不知这样根本没有入门!ActiveX是别人做的东西,写了多少代码才到你用的!别幻想ActiveX无所不能,从另一个方面说,它正是VB的累赘!会用ActiveX又有什么了不起?API会吗?复杂点的代码会写吗?会自己开发ActiveX吗?做一个用到通用对话框的程序,只会用comdlg32.ocx的ShowOpen方法,却不会用GetOpenFileName这个API来打开,而且使用ActiveX会让你的程序挂上一大堆OCX,加重程序开销,更要命的是ActiveX会导致许多不可预料的错误,如控件过期、控件没有注册等,任何一个错误都会让你的程序无法运行,许多初学者搞不清ActiveX与程序文件的关系,发布软件时忽略了程序需要的ActiveX,导致程序在其他环境无法运行,我早期发布的IIS Cracker就因为不得已用了两个ActiveX而成为我最头痛的事(有些东西不用ActiveX做不出来,没办法)如果一个程序出现控件错误,而作者又没有提供相应的控件,那么我要做的就是把这个程序删除!在此提醒各位一句:写程序不是组装!别以为用VB画个窗体,加几个ActiveX就学会了编程,你根本连编程的门槛都没入!

8.循序渐进

许多初学者刚开始接触编程就急着写一些较高级的代码,却忽略了最重要的基础,他们也许热情高涨,也许有心学编程,但是却没能静下心学编程基础,这将导致付出时间多而收获少的后果,举个例子吧,你刚入门,连一个简单的程序都不会做,就算我给你个木马程序的全部源代码(谁要独裁者的代码?呵呵)你又能看懂多少?学习要一步一步来,没有扎实的基础,谁都不可能写出好程序。当然,学习的方法也不能不提,尽管学VB、Delphi不需要专门学Basic、Pascal,但是学VC就不能不学C/C++了,否则你会前进得很辛苦!别信什么“速成班”、“24小时学会XXX”,那种是喂猪的!经验要靠练习来积累,不能只学理论,编程不是让你纸上谈兵的,平时不多练习,别想写出什么好程序!学习时要从简单做起,先熟练简单编程,在这个基础上要写出高级点的程序就不困难了,遇到难题别被吓着,努力克服它(除非是由于语言的局限性而做不到的),如果暂时做不出来,可以先搁一段时间,但别把它忘了。等你学到更高一层的技术

后,再回头研究过去的难题,将会事半功倍。

9.在学好一种语言的基础上,继续学习其他语言

别误会,这不是让你同时学习N种语言,而是在学好一种语言后,继续学其它语言,例如学好VB后,可以改学C、Delphi等,不要守着VB不放,多一种语言就多一条出路,如果你觉得自己学得够好了,那就别犹豫,马上改学另一种语言(喂喂,你怎么把VB的书给烧了?不是让你放弃已经学会的语言啊)还是那句话,切忌同时学习多种语言!如果你对自己掌握的水平没信心,最好还是别想其它了!

多学几种语言的好处是显而易见的,一来可以做到几种语言同时配合,二来对扩大知识面也有很大帮助。注意:学VB/Delphi后马上学VC是错误的,你必须先学会C!

10.用多种语言配合,多利用各种语言的长处

前面已经提到过,各种语言都有短处,但是它们一般都能互相弥补,VB的局限性导致一些复杂工作不能实现,VC强大,但是界面难做(个人想法),这时你可以用VB写界面,VC写DLL供VB调用。例如VB的指针、位运算操作麻烦且执行速度比较慢,在一些特殊应用环境里,就必须用VC写DLL了,其实写个DLL并非难事,甚至比写个VC的MFC程序还要简单。

11.多收集信息

学编程不能闭门造车,有些知识是书本上没有的,应该多使用搜索引擎,多搜集研究前辈们做的源代码,吸收一些新知识和优秀思路,有助于提高编程水平,另外还应该参与一些论坛的讨论,积累一些经验。

篇2:编程入门学习

本篇将是一个系列,重点讲述在外力很少的情况下如何自学编程,以及需要注意的一些地方。

一般来说,一些所谓的『高手』或者老师会告诉人们算法是非常非常重要以至于会不会算法就是你会不会编程的唯一标准。不过事实上并非如此。掌握算法固然是好,只是大部分程序并不需要高深的算法,而且招人的时候仅仅要求会算法的公司也是很少的(而且很难进)。我并不是学院派的人,所以虽然我本人也推崇学习算法,但并不推崇一开始就学习算法。

刚开始学编程的人总是不知道自己应该从哪里入手。实际上这是一个相当重要的问题。在我看来,学好变成有若干条件:

·兴趣

·数学/英语

·财力

首先谈一谈兴趣。那些为了生计而寻找捷径学习编程的人并不在本篇的考虑范围之内,这些人我通常是不管的。兴趣是非常重要的一个条件,但是兴趣也是可以培养的。对编程的浓厚兴趣可以让自己自发地寻找各种各样的书籍、发现自己知识结构上的弱点、跟同行有效地进行交流等等。那些没有兴趣的人遇到了一个问题只会上论坛或者QQ群上要代码(而且多数脾气暴躁)。

数学和英语在一开始并没有什么影响,但是在你学有所成之后,开始接触复杂的内容的时候,数学能力就开始起作用了。很多计算机论文都是使用数学语言写的,对数学没有热情或者不够敏感的人将会很难跨过这个门槛学习一些书本上没有的东西。英语同样也是重要的,因为并不是所有的文章或书籍都会翻译成中文,或者及时翻译成中文。

财力并不是重点,不过至少在养活自己的同时要有闲散资金来不停地支付网络费用、书籍、电脑、外围设备等必须物品。

至于知识结构方面我个人的见解可能跟流行的观点有所出入。目前人们总是把知识结构比喻为一个金字塔,最下面是基础,上面一层一层更加深入而且更加专业的知识,最上是领域知识。老师们会说要学好基础,首先学好语言和算法,然后慢慢往上走。我自己并不这么认为。个人认为『从左到右』的学习方法是更加有效而且不会错过什么东西的,只是不能速成。

从左到右是什么意思呢?想象一个金字塔,最左边仍然是最底层的【基础】,再往左就涉及到更多的【基础】以及更多的上层内容了。这样一步一步下去就会有【基础】--【上层】--【基础】--【上层】这样的不断循环。这么做的好处是成果快,能够培养起兴趣和成就感,而且基础随着应用的需要慢慢积累,等到学有所成的时候,基础也覆盖完了,上层的东西也看得差不多了,就可以超越金字塔自己翱翔了。

好了,那么如何培养兴趣呢?

人总是对有趣的东西比较感兴趣的,而且这种东西如果不难入门的话,那么接受起来更加容易,跟容易培养成就感,也就更有兴趣了,

根据实际情况,个人推荐刚开始接触的时候应该学习C#,理由如下:

·C#的书籍非常多,语言内核简单易懂,类库丰富

·C#制作界面简单

·C#屏蔽了有关操作系统和底层的大部分事情,可以让学习的人专注于自己感兴趣的内容

如果不是特别着急的话,一开始就对着C/C++的数组啊指针啊什么乱七八糟的东西我觉得没什么必要,反正将来自然就知道了。我在这里推荐C#的另一个重要原因是Microsoft Visual Studio .NET的C#编辑器有一个无敌美好的提示列表(按了一个“.”之后弹出来的),这对于初学者来说是相当好的一个工具。

一开始学习C#的时候应该首先掌握基本的少量语法,也就是说掌握条件语句、分支语句、函数声明以及数组,外加少量库的运用以及计算上的知识。然后开始学习制作界面,最后学GDI+。

学习GDI+是有很多好处的。不过在学习之前应该找本相关的书来看。GDI+有一些比较高级的功能如半透明效果和画刷等等,容易组合出一些非常漂亮的图形来。学会GDI+的基本操作之后,就可以慢慢接触一些图形滤镜、分形、三维的内容了。使用平面工具绘制简单的三维图形是一件非常有意思的事情,而且非常锻炼数学能力,所得到的效果也是『令人震撼』的。

随后应该学习字符串处理。典型的字符串处理有分析INI文件、对一个四则运算式子进行操作等等的内容。虽然C#处理器字符串出来比C++稍微蹩脚一点,不过在这个时候忽略这个问题是相当有用的,至少不用陷入无穷的指针漩涡里面去。

等图形和字符串都少有涉猎之后,就可以开始开发有趣的程序了。譬如用C#些动画、开发画函数图的工具、自己设计一种高度简化的HTML然后进行渲染制作自己的帮助程序、或者开发简单的图像处理软件之类。稍微聪明一点的人,如果每天都有机会写很多代码的话,大概半年到一年就可以走到这里了。

为什么我会选择图形和字符串两种东西呢?为了培养兴趣,首先要有成就感。图形跟字符串都是跟操作系统本身没关系的东西,而且操作起来也没什么注意事项,因此入门比较简单。如果渐渐深入的话会激发起学习数据结构、算法、甚至是数学英语的热情。如果可以使用这条主线贯穿整个编程的初级阶段的话,得到的将会是扎实的基础以及灵活的头脑。

好了,今天就先说到这里。下次再写续篇。在此解答一下大家有可能提出来的疑问。

·数据库和网络都很热门,要不要学呢?

--这两门技术掌握了也是很好的一件事情,而且作为入门的话也未尝不可。只是如果一开始就往数据库和网络的路走的话,将来可能会错过一些学习操作系统底层以及复杂的算法的机会,因为这两种东西不会让你有学习大部分有深度的知识的动力。

·算法为什么不一开始学习呢?

--学会了算法,但是没有有趣问题给你解决的话,那学来干什么?而且学习算法的最终目的是让自己拥有设计算法的能力,很多人都忽略了这一点。

·学会了GDI+和字符串之后能不能找工作呢?

--不能。做人切勿急躁,学编程没有个三五年还是不要把自己看得太厉害的好。

·接下来应该学习什么样的东西呢?

--请等待下一篇文章。

篇3:UG软件五轴编程入门要点

1 得到产品设计

首先,准备好要加工的部件文件,如果是用直接用UG做的PART文件那最好。如果是用别的软件做的,如Pro E、Master CAM等,那么应先将部件在原软件中转换IGES等格式,再导入到UG中。

2 设计加工模型

进入加工模块前应对部件部件进行一些必要的处理,如曲面修补工作、做五轴加工的驱动面、做粗加工的刀轴、做部件的毛坯、准备检查面等,并分析部件的最小曲率,初步确定需要的刀具。

3 设置加工环境

3.1 进入加工模块

如下图1,可从菜单进入,也可点击红色方框所示的图标进入,也可按组合键Ctrl+Alt+M,跳出加工模块的初始化界面,点击“Initialize”按键或直接中键,进入加工模块。

3.2 设置加工座标系及安全参数

进入加工模块后,如图2,其中1~4是刀轨视图按钮,分别是:顺序视图、刀具视图(图4)、几何体视图(图3)、方法视图(不建议采用,易引起留量的混乱)。如果程序的数量比较多,建议采用顺序视图,因需要建立程序组(Program Group);如果程序比较少,建议采用几何体视图,可以观察到程序所在的环境。第5是导航器钉子,点击它可以使导航器展开或折叠。点击第6将导航器切换到加工导航器。

先进入几何体视图设置加工座标系及安全参数。如图3,双击“MCS_MILL”节点,在“Mill_Orient”对话框中,点击MCS的“Constructor”(构造器)按钮,构造需要的加工座标系。然后返回“Mill_Orient”对话框,在“Clearance”(安全)选项前打勾,点击“Specify”(指定)按钮,在跳出的“Plane Constructor”(安全平面构造器)中设置安全高度。

至于“WORKPIECE”中是设置部件及坯料、检查面的,只在三轴加工或是单件加工中有用。

3.3 创建刀具

进入如图4所示的刀具视图,在“GENER-IC MACHINE”上右键→Insert→Tool,在“Create Tool”(创建刀具)对话框中,选择所需的刀具类型如铣刀,在“NAME”中为刀具起个名字,如“D6R3”,然后确定,在跳出的刀具参数对话框中输入刀具的参数,确定。依此把需要的刀具创建好备用。

加工环境至此基本设置完毕,其余还有很多的设置,不过很多地方是不需要的,在此略过。

4 选择加工方法

开粗尽量用三轴或三轴半(固定轴)的刀轨,在此不加详述。精加工才采用五轴刀轨。

插入五轴刀轨:在图2所示的“Program”或自己创建的程序组上面右键→Insert→Operation,选择图5中的“mill_multi-axis”(变轴加工)类型,跳出图6的对话框。最实用和常用的是第一个:“VARIABLE_CONTOUR”(变轴轮廓铣)。后面的命令有几个是由第一个变出来的,如“vc_multi_depth”(多层变轴轮廓铣),有几个虽然不是但平时很少用到,如“Sequential_mill”(顺序铣)。

所以建议大家用熟第一个命令,如图7。在这个命令里包含了几种加工方式,加工方式由:驱动方法+刀轴方向构成,如图8。作用和用法如下。

4.1 Surface Area+Normal to Drive(曲面区域+垂直驱动)

作用与优点:使刀轴方向保持垂直于驱动面对加工面进行加工。当加工区域变化较大、存在加工安全隐患,需要以变轴方式以缩短刀具长度防止抖刀及较好的加工方向以提高部件表面加工质量,可以采用此方式。此方式需要构建合适的驱动面。

曲面区域的参数设置注意点:

4.1.1 Surface Stock:驱动面留量。不要跟部件的Cutting里面的留量混在一起,一个是驱动面的,一个是加工对象的。

4.1.2 Tool Position:刀具位置。有二种方式:Tanto和On,是指刀具的加工位置。默认是Tanto。在采用Normal to Drive这种刀轴方向时,对加工结果没什么影响,但如果是Swarf Drive这种刀轴方向时,结果是绝对不同的,后面“4.5”里再述。

4.1.3 Flip Material:反转材料侧。这个是改变刀具是在加工面的那一边进行加工的按钮。

4.1.4 Cut Direction:加工方向。这个决定你的刀具是从面的那一个角点进刀的。

4.1.5 Cut Step:切削精度。这个主要影响到刀轨的精度。建议设置如下:用Tolerance(公差)的方式,设为较小的值如:0.002。

4.1.6 Stepover:切削步进。这个决定刀具在这个面上一共走几刀,在Normal to Drive里是刀距,在Swarf Drive里是背吃刀量。编程人员事前要根据材料和刀具算好这个数字。

4.1.7 Cut Area:切削区域。这个可以决定你要在这个面的那个区域里进行加工,可以以百分比的方式设定加工的起始和终止,比较少用。

4.2 Surface Area+Away From Poit/Towar poit:(曲面区域+离开点/趋向点)

作用与优点:作用同4.1,只不过驱动由面变成点,刀轴的方向始终保持通过指定的点。Away From Poit多用于凸形的加工区域。Towar poit多用于凹形加工区域。设置简单,只要选一个点做为刀轴方向驱动就行了。

4.3 Surface Area+Away From Line/Towar Line:(曲面区域+离开线/趋向线)

作用与优点:这是四轴的刀轨,它的一个旋转轴是固定的。驱动是直线,刀轴的方向始终保持垂直通过指定的线,主要用于一个方向形状相对固定(如以一个剖面向此方向拉伸而得)而另一个与其相对垂直的方向形状变化呈弧形或接近弧形的部件,驱动线就位于形状相对固定的方向上。Away From Line多用于凸形的加工区域。Towar Line多用于凹形加工区域。设置也简单,只要选一条线做为驱动就行了。

4.4 Surface Area+Relative to Surface:(曲面区域+相对于驱动面)

作用与优点:这是在A的基础上进一步扩展的,可以设定Lead和Tilt两个方向的刀具倾斜角度,以使刀具在加工过程中始终与部件法向矢量形成一个角度,利用侧刃加工,避免因长时间用刀尖加工以致磨损(因为刀尖的切削速度为零)。Lead是刀具前进的方向,Tilt是与刀具前进方向成基本垂直的方向。

4.5 Surface Area+Swarf Drive:(曲面区域+面流线驱动)

作用与优点:Swarf驱动是五轴加工里面极重要的加工方式,它是以驱动面的形状对部件面或驱动面进行加工,刀轨流畅、线条优美,可以加工部件面,也可以加工驱动面。对于两者,UG软件是部件优先,操作里有选部件面是加工部件面,如果没选部件面,则加工驱动面。

此方式的曲面区域的参数设置注意点:

Tool Position:刀具位置。如A里所述:有二种方式:Tanto和On,是指刀具的加工位置。默认是Tanto。用Tanto方式时,刀具与驱动面是相切的;用On方式时,刀具是刀轴正好通过驱动面。

4.6 Curv/Poit+Away From Poit/Normsl to Part:(线/点+)

作用与优点:此方式常用于五轴刻线,驱动可以是面或点,选面时注意要给投影矢量。

“VARIABLE_CONTOUR”(变轴轮廓铣)这个命令里面还有很多其它的加工方式,但较为少用,如螺旋线加工、放射线加工等等,就不再详述。

5 设置参数

5.1 选择刀具

在图7的界面中,点击Groups切换到图9的界面,左边是还没有选择刀具的,右边是已选好刀具的。点击Select或Reselect可以选取或更换刀具。

5.2“Cutting”里面设置切削余量,加工精度等。

5.3“Non-Cutting”里面设置进退刀参数,相当于Cavity里面的安全高度。如果刀轴变化比较大,或部件形状比较复杂、加工区域较多,应当相对的加大进退刀的数值,以防撞刀。

5.4“Feed Rates”里面给转速和进给率。

5.5“Machine Control”里面设置机床的控制参数,如:开关主轴、开关冷却、刀具补偿、刀轨的输出形式(圆弧或直线)等等。

6 生成及验证刀轨

所有参数设置后,点击“Generate”按钮可以生成刀轨,然后应仔细观察,注意应在取消着色的情况下观察。最好点击“Verify”进行实体验证。

7 对刀轨进行后处理,生成需要的NC文件

以上是对UG软件五轴加工的一些体会,因篇幅原因,未能多加插图及说明,望读者见谅,并希望能为读者对UG五轴模块的学习起到抛砖引玉的作用。

摘要:结合实例,对UG软件五轴编程入门要点进行了论述。

篇4:Scratch计算机编程入门

如今,编程已经不仅仅是学计算机的专业人员工作,更成为现代人的必修技能。不仅从事科学工作的人往往需要通过电脑编程实现大量的数据处理等工作,越来越多的中小学生也通过学校的课程及校外的课程学习并使用着各种编程语言。然而,许多科技辅导老师因为种种原因,对计算机程序和程序思维缺乏一个深度的了解,从而在指导学生开展相关活动或是项目研究时,无法做到得心应手。鉴于此,本课程设计者希望通过推广计算机编程语言,从基础开始,构建起科技辅导教师的程序思维。

科技辅导员在繁忙的日常工作中,很难抽出大量时间完整地学习一门常用的编程语言,所以,我们在众多的计算机语言中选择了最能够直击程序思维的语言——Scratch。Scratch计算机编程语言是美国麻省理工大学开发的一套适应于学习编程基础知识的工具。在这个语言中,学习者不需要学习复杂的计算机语言和语法便能开发出生动有趣的计算机程序。Scratch的特点在于编程思想的设计,而非具体语言的学习,通过形象化的模块化的拖曳组合方式,呈现计算机程序设计的特点,并由此进一步锻炼学习者的程序思想。

在“Scratch计算机编程入门”慕课课程中,课程内容的核心在于如何用计算机的思维去分析问题,解决问题。即使不会具体的编程语言,这个核心的思想仍然能够应用于教学的设计中去,并可以指导学习Scratch,以培养程序思维。

课程内容

在这门课程中,程序思维被归纳为6个方面的内容,并被穿插于每节课的课程任务中。这6个内容分别为规律模式(Pattern):寻找事物之间的相似性和规律;逻辑推理(Logic reasoning):解释事物如何发生并作出正确预测;抽象(Abstraction):寻找事物的本质,简化事物模型;算法(Algorithm):遵循一系列步骤完成一项工作;分解(Decompose):把一个大的负责问题分解为更小部分;评估(Evaluation):客观系统对项目作出评价。

计算机编程中有一句格言:先有解决方案,才有程序。程序语言多种多样,而解决方案的思维却是共通的。通过Scratch的学习,教师能够在指导学生进行相关科技项目探究时,从核心人手,解决遇到的问题。

篇5:游戏编程入门

经常有人问我,没有编程经验的人该如何开始开发游戏。在此之前,我总是一个个的尽力回答。然而,后来提相同问题的人数增长到难以处理的地步。我决定,是时候把我所有的建议写成文章,作为一个大概。

这篇文章是针对那些想要开发自己游戏,但几乎没有编程经验的人。事实上,我假设读者没有任何编程经验。我主要讨论游戏开发的程序和设计方面,而不是艺术性。我也不准备讲述如何进入游戏行业(这方面已经有足够的资料),而只是让你逐步的开始开发自己的游戏。最后,我所指出的这条道路也并不能作为唯一的,或是最好的路径来学习开发游戏,但至少对我和一些人很有用。选择一门语言

你要做的第一件事就是选择一门开发语言。你有很多选择,包括

Basic,Pascal,C,C++,Java,等等。也经常会有人争论对于初学者那一门语言是最好的。对于这一系列流行语言的讨论,你可以参看John Hattan的著作,What Language Do I Use?(我用什么语言?)

我的建议是以C和C++开始。有些人会说这些语言对初学者来说太高级了,但因为我自己就是学C++,我并不同意这一说法。而且,C/C++是当今使用最广泛的语言(译者认为应该是汉语。。),所以你可以找到大量学习资料和帮助。你先学C或C++都无所谓,因为只要学了一个,再学另外一个就很容易。但是,如果你先学C++,请保证在学习面向对象编程之前能理解和使用过程编程(等编程熟练再去学习类)。(译者:C是过程性语言,C++是面向对象语言)

如果你开始学习C/C++,发现太难,那再学一个简单一点的也没关系,比如Basic或Pascal。但是我真的认为,如果你坚持努力,而且有好的资料,学C/C++应该没有太大问题。

你的下一个问题可能会是:“我该怎么学C/C++?”我很高兴你这样问。最好的办法是上课。有老师可以回答你的问题,帮助你产生很大进步,编程练习作业也可以保证你能用到所学的东西。

如果你不觉得上课是个好主意,那最好的办法就是买一些好书。不要花太多时间去选一本什么“超级宝典”或“万用全书”,因为你最终可能会买几本。我建议你去一家书店,然后拿几本比较入眼的C或C++书看,直到找到一本或几本你能看懂,并且可以拿来学习的。同时,你可能会想要一些更深入的,或者一些材料,但是你一旦对于这门语言有了一些了解,我相信你应该有自己更好的选择。在这里,我有必要花一些时间,来说我看到很多初学者所关心的一个事情,特别是年轻人:没有钱买书和其他东西。首先,有很多免费资源可以利用,图书馆,Macmillan Computer Publishing(/personal),有成千上百的编程书籍。但是如果你真的想要成为一个好的程序员,还是应该投入一部分资金。应当想方设法(合法的)帮助你弄到一些钱。

网上也有很多C/C++的学习指南。但是我认为那只能作为补充而不是你自学的主要资源。

选择正确的编译器

你写的程序,或者代码,是以文本方式储存的,你甚至可以用记事本写C/C++程序。但是总需要有东西把他们转换成为可执行文件。对于C和C++,那就是编译器。

可用的编译器有好多种,包括很多免费的。选择一款自己适合的编译器很重要,免费的编译器就有这样的好处,你可以把它们试个遍,然后从中选择自己最喜欢的。然而,免费编译器比起商业版,可能会缺失一些功能和大部分服务。幸运的是,多数商业版编译器也兼售介绍版或学习版,这要便宜得多,通常功能却不见得少,唯一的限制是你不能发布用它编译的程序(短时间内你也根本用不着)。

总之,选择编译器取决于你能花多少钱,用什么操作系统,和为什么平台开发。如果要为windows开发,我强烈推荐Microsoft Visual C++。他强大的开发环境使得很多事做起来更方便,毫无疑问没有其他编译器更适合开发windows应用程序。如果你是个学生,你还可以折价买到。(译者:爽!)如果你在DOS平台开发,你最好的选择可能是DJGPP,免费的哦~。

选择开发平台

尽管最终你很可能为好几个平台开发,总要先选择一个来学。当你在学这门语言,还没有接触到图像的时候,你可能会想使用非图形用户界面的操作系统,比如DOS,Unix.这样可以避免接触高层,比如windows编程,让你集中精力学习语言本身。

一旦你做好开发游戏的准备,那么,应该考虑是否改变平台,让我们来看看每个选项的特征。

windows:如果你想成为游戏行业的专家,或者如果你想让许多人来玩你开发的游戏,那么,这就是你要选择的平台。因为多数你的用户使用windows,而且现在我也看不出有什么改变的迹象。当今大多数的windows游戏都是由一种你可能听说过技术---DirectX---开发的。你可以DirextX这个库直接访问硬件,这意味着你可以开发高性能的游戏。

DOS:DOS过去是占统治地位的游戏平台,但是已经一去不复返了。尽管可能有一些特殊爱好者还在为DOS开发游戏,现在没有一个为DOS开发的商业游戏,他也将继续衰落,直到微软不再支持。如果你只是想开发游戏,还是不要选择DOS,如果你非要这么做,也不要太久。记住:由于存在大量DOS游戏开发的书,可能还有人辩护从这些书中学习DOS游戏开发。但是,windows游戏开发的书越来越多,那些辩解也变得越来越无力。

Linux:Linux是Unix的一种,由于很多原因后来变得流行,包括稳定性,价格,和反微软情绪。尽管Linux用户还是相当少,但是围绕着他的热情和不断增长的市场潜力使其也成为不错的选择。

Macintosh:MAC有大量忠实粉丝并不能说明什么,几乎每一个和我讨论的MAC狂热者都需要更多更好的游戏。我没有见过多少MAC游戏开发资源,但我相信还是有的,因此这也是一个选择。

consoles:console(就是PS,N64,DC等等)的游戏市场十分巨大,当然

console游戏开发的前景也不错。然而以非商业的形式开发console游戏,出于各种原因,在现在似乎行不通。如果你开发console,很可能是在被商业游戏开发组雇用之后。

开始进入主题

现在是时候讨论开发游戏了。简单起见,我假设你选择用C/C++在windows平台开发,可能你选择别的,但大多数我说的还是有用的。

首先,甚至在你打算开始开发游戏之前,你必须很好掌握C和C++.你应该懂指针,数组,结构体,函数,可能还有类。如果你精通他们,就可以开始做游戏了。

这篇文章可能不能教会你所有关于开发游戏的东西。幸运的是,也没有这个必要。这方面有很多书,网上也有很多指南。GameDev.net应该有所有你想要的东西,这里我建议你怎么开始:

找一本或几本书。对于windows游戏开发初学者,Tricks of the Windows Game Programming Gurus是个完美的开始。除此之外,还有许多好书.读透这些书,试试所有的例子,不懂得部分多读几遍。

网上指南作为补充。除了弄清书上读到的,他们还涉及一些书上没有谈及的主题。

向专家寻求帮助。如果你不能在书上或指南找到问题的答案,好好利用我们的论坛和聊天室。那里有好多专家愿意帮助别人。

这并不是要你按照顺序执行的,而是可以同时并且不断的重复执行。

光学习还是不够的,你必须运用你所学到的。从一个小游戏开始,然后在这个基础上前进。你可以看一下Geoff Howlands 的著作: How do I Make Games?

A Path to Game Development.开始,自己独立工作。不要急着加入团队,那样只会减缓学习过程。而且一旦你有了自己的几个游戏,你可以为团队做出更大的贡献。

还有关于书,你应该不仅仅看游戏开发的书。为了能够开发出你看到商店出售的游戏,你应该钻研比大多数游戏开发书籍更高级的一些主题。有一些可以在网上找到,但你也应该选一些图形学,人工智能,网络,物理学等方面的书。计算机科学学位看来唾手可得,但因为你被迫上这些课的时候可能认为他们和游戏开发无关----你错了!

包装

这里有一些提示很有用

不要只积累知识,用它:你永远不会知道会理解一些东西知道你是用他们。用你学的东西作些演示。做作书上的练习。

经常玩游戏:这样做会使你做出更好的游戏。而且可以减轻编程的枯燥。帮助别人:能帮别人的地方尽量帮助别人,教别人的过程中自己会学到更多。有始有终:不要有这样的想法“我能够完成这个游戏了,但是我又有一个新的想法,那就直接做下一个。”你可以学得更多如果你完成他,你也可以用事实证明你不是只会空谈。所以,尽量不要做很大很复杂的游戏,直到你有了一定经验。

篇6:编程入门学习

有了上述的基础,就要开始学汇编了。汇编开始的时候是很难,那些各种各样各样的寄存器,分段的内存地址,是很难理解,但是这些知识理解了以后,后面的内容就简单了,学习8086的那些指令,再加上一些伪操作,还有DOS和BIOS中断的.调用,就能够看懂书上的汇编程序了。(着重是理解算法,对于后面的那些汇编的应用有兴趣的能够看一下!)到此,你应该会对计算机的理解更深一层!

有了汇编的基础,再来学习C语言中的精华部分----指针,可谓如鱼得水了。现在你要对C语言全全面面的学一遍了,谭版的教材要从头到尾认努力真的看两遍上述。

不会英语课能不能学编程

首先,我们来看看英语课和编程究竟是什么关系。我觉得编程比较主要的有两个方面的东西,一个便是代码,这是毋庸置疑的;另一个便是文档了,也便是参考资料。

篇7:编程入门学习

编程对于很多计算机菜鸟来说,可能是一件很难懂的学问。但是其实,想要学会编程,只要你有恒心、有耐心,就一定可以实现。

首先必须要学会C语言,C语言相对其他的编程语言来说也是比较简单的。但是如果你想要成为一名出色的C语言程序人员,必须要经过长期的练习才行,要多看代码、多写代码,并根据实战的经验多思考,学习编程是一件很艰难的事情,很少人能够坚持下来。而C语言作为编程的基础性课程,更是需要广大的编程爱好者多注意才行。

C语言在计算机中的运用可以说是无处不在。可以这么说,任何精通计算机的人一般都是C语言的高手。而我虽然不是计算机专业的,但是仍然对于编程很有兴趣,C语言就是我学习计算机编程学到的第一堂课。如果没有C语言,就不能够学习系统操作、结构化数据和计算机编译等高等课程,如果你想要在计算机有建树的话,就必须要掌握C语言这门基本功。

篇8:数控车床编程入门方法之我鉴

一、分析零件图样、确定加工工艺过程

分析零件的材料、形状、尺寸、精度及毛坯形状和热处理要求等, 确定正确的加工方法、定位夹紧以及加工顺序、所用刀具和切削用量等, 即制定加工工艺。这一个环节是数控编程的一个重要环节。其主要目的是确定数控加工的工艺路线、切削用量以及工件的定位、夹紧等。首先是数控加工工艺的划分, 如加工端面、车外圆、切槽、切断等等;其次是刀具的选择, 应该合理选择加工刀具;然后是工序顺序的安排, 要求在确定工艺过程中, 要做到加工路线短, 进给、换刀次数少, 充分发挥数控机床的功能, 使加工安全、可靠, 效率高。

走刀路线是指在加工过程中, 刀具刀位点相对于工件的运动轨迹和方向, 它不仅包括了工步内容, 还反映了工步顺序。在安排可以一刀或多刀进行的精加工工序时, 其零件的最终轮廓应由最后一刀连续加工而成。这时, 加工刀具的进退刀位置要考虑妥当, 尽量不要在连续的轮廓中安排切人和切出或换刀及停顿, 以免因切削力突然变化而造成弹性变形, 致使光滑连接轮廓上产生表面划伤、形状突变或滞留刀痕等疵病。

二、数值计算

根据零件的尺寸要求、加工路线及设定的坐标系, 进行运动轨迹坐标值的计算。对于由圆弧和直线组成的简单零件, 只要求计算零件轮廓上各几何元素的交点或切点的坐标, 得出各几何元素的起点、终点、圆弧圆心的坐标值。如果数控系统无刀具补偿功能, 还应该计算刀具刀位点的运动轨迹。对于由非圆曲线组成的复杂零件, 由于数控机床通常只具有直线和平面圆弧插补功能, 因而只能采用支线段或圆弧段逼近的方法进行加工, 这时就要计算逼近线段和被加工曲线的交点 (即节点) 的坐标值。对于简单的平面运动轨迹, 各几何元素坐标值的计算常由人工完成。对于运动轨迹十分复杂, 或者是三维立体的, 则坐标值的计算常借助于计算机来完成。对数控加工的零件, 为了便于编程和尺寸间协调, 尺寸最好从一个基准引注, 有关坐标尺寸直接给出, 用绝对编程方式就可以直接从图上看出坐标值。如果不是这样, 最好改注过来。

三、编写程序单

根据计算出的运动轨迹坐标值和已确定的加工顺序、刀具号、切削参数以及辅助动作等, 按照规定的指令代码及程序格式, 逐段编写加工程序单。在编写程序时应注意使程序简单, 方便和直观。我们在建立工件坐标系时数控车床一般将程序原点设立在工件的右端面上。数控加工程序由一系列程序段构成, 程序段又由指令字组成。编程之前, 首先要弄清程序段的基本格式, 常用指令的格式、功能及用途, 实际上基本的加工指令不多, 比如G00、G01、G02、G03等等;其次是加工路线要确定, 尽量把路线上点的坐标值标示出来, 这样在编程时才不容易出差;然后在编写程序单。程序编写的一般步骤总结如下:程序号---程序的内容---程序结束。程序的内容通常由三个部分组成: (一) 准备阶段:工件坐标系的建立 (绝对编程时必写) ---选择刀具---主轴转动---快速定位 (定位到靠近工件的几个毫米的位置) ; (二) 、加工阶段:根据具体加工要求编写; (三) 结束阶段:刀具快速退回 (一般回到起刀点位置) ---取消刀具数据补偿。如果是多把刀加工, 每一把刀的加工过程重复上述三个阶段。必须要学生熟悉编程的这几个步骤, 然后以不变应万变。对形状复杂的工件 (棒料) , 通常需要多把刀才能加工完成, 编程时先分析工艺、确定夹具、刀具及其加工路线, 写程序时把一把刀加工的内容写完以后, 再考虑另外的刀具加工, 这样编程就要容易一些。

加工程序是按程序段的输入顺序执行的, 而不是按程序段号的顺序执行的, 但书写程序时, 一般按升序书写程序段号。

下面以华中数控为例编写外圆精加工程序

以上就是程序编制的方法, 分析工艺---划出走刀路线--建立坐标系并适当标注坐标---按格式写程序。对于初学程序的人, 先用此方法多练习, 到熟悉以后再写粗加工。当然, 程序熟悉以后, 走刀路线、坐标可以不标注出来, 但思路一定要清楚, 这样写的程序才不会出错。

篇9:美术学习入门曲

关键词:兴趣

兴趣是最好的老师,激发兴趣、维护兴趣是父母首先要做的。

及时的接纳和肯定孩子再脏、再乱的画面,父母都不应该全盘否定,因为里面总有值得肯定的东西,哪怕孩子只在纸上画了一条线,也应该鼓励他:“这是春天的雨、地上的小草?还是水里游来游去的鱼?”

参与孩子的活动家长和孩子一起画画、一起剪剪贴贴、一起玩色彩的游戏,孩子会非常高兴,还可以邀请小伙伴到家里来和孩子一起“玩”美术。

提供材料和空间

给孩子提供丰富的创作材料,比如:一块属于他自己的空间,让他可以在这个天地里大胆地创作;一张尽可能大的纸;一块可以尽情涂抹的瓷砖;各种喜欢的彩笔,各色漂亮的纸和胶水等材料,这样既不会弄脏家里的地板和墙壁,又能随时满足孩子创作的欲望。

关键词:美术书

书店里幼儿美术书籍非常多,有简笔画、蒙纸印画、手工制作、各种画派的入门指导以及美术作品欣赏等。那么该怎样给孩子选择合适的呢?

注意适用年龄

书中的内容如果太难,则不容易让孩子品尝到成功的喜悦,时间长了,孩子很容易失去兴趣。父母选书时要先看看美术书的提示,如“适合4至5岁的孩子”;再结合您对孩子现有水平的了解。例如,您的孩子现在5岁,这个阶段应主要学习画简单的线条和形状,包括直线、折线、曲线、圆形和方形,如果书中的线条和图形比较复杂,孩子就会力不从心,困难较大。

单一得简笔画布妥

有的家长以为简笔画最适合孩子,所以只给孩子买简笔画书籍。其实,虽然简笔画可以帮助孩子积累一定的造型表象,但同时它也比较单调,容易限制孩子自己的造型能力。所以,过多的简笔画书籍会限制孩子的发展。

买些美术欣赏书

这样的书能够丰富孩子的视觉经验,让孩子逐渐拥有“感受美的眼睛”,学会欣赏各种画派不同的表现手段。

注意书籍本身的质量

画面大、印刷清楚、色彩纯正和明亮的美术书更便于孩子观察和欣赏。

有趣味性

不单纯提供范例,还穿插了有趣情节的美术书,或是“混合式”的、涂色结合的书等更适合孩子。

少而精

每次精心挑选一本好的美术书,然后引导孩子充分地利用它。

关键词:美术启蒙老师

不少家长以为,小孩子刚开始学美术,不必请很专业的美术教师。这其实是一个很大的误解。最初的印象往往深刻而持久,如果孩子开始学美术时接触的是正确的原则和方法,在以后的学习中就会少走弯路,长久受益。所以,家长应为孩子选择一位好的美术启蒙老师。

专业素质好

受过专业训练、有丰富的教学经验。

懂儿童心理学

懂得一定的儿童心理,能够根据儿童美术发展的规律和年龄特点安排教学,让孩子学得轻松而有乐趣。

能因材施教

上一篇:鸿瑞年年自动计划书下一篇:找规律奥数训练题