编程课堂
❶ 怎样学习编程
VB~VC~VF~C~C#~C++~java~.NET~这些都是编程 ASP~CGI~PHP~JSP这些是WEB编程。。 虽然都是编程,但编出来的程序可是不一样的。 目标是什么?开发?创业?还是去公司上班?还是业余爱好? 如果想业余编小程序,推荐VB~VC~容易上手。简单。也蛮强大。 如果想学好了去企业上班,推荐C++~~~.net~~~JAVA之类的大型项目开发。 如果想做网站,就学ASP~CGI~PHP~JSP,这4个就JSP最最最难,先学ASP。 编程语言很多,但是目的都是想写出好的程序,只要学精了一个就有钱赚,一上来不要要求太高 我推荐你学三种编程语言,因为推荐你学是有原因的。 第一:先学习好c语言,这个是学所有编程语言的基础。也是将来去考国家证书的必须要考的一门。 第二:学好java,因为java在目前来说,占领地位是排第一位的。而且工资待遇也不错。市场需求占有率高达50%以上。或者学习.NET,因为.NET出来还不算太久,但是就因为是微软出的东西,所以市场占有率也已经达到了48%了,况且.NET比java要容易上手。两者之一,你可以选择一个。学java就往jsp工程师方向发展,学.NET就往ASP.NET方向发展吧。 第三:顺便学一门数据库的技术。因为开发的时候,难免会要和数据库打交道。懂总比不懂要好。一般就学SQL就行了。ORACLE一般只适应于大型公司
采纳哦
❷ 请教:如何从零开始学编程
VB~VC~VF~C~C#~C++~JAVA~.NET~这些都是编程
ASP~CGI~PHP~JSP这些是WEB编程。。
虽然都是编程,但编出来的程序可是不一样的。
目标是什么?开发?创业?还是去公司上班?还是业余爱好?
如果想业余编小程序,推荐VB~VC~容易上手。简单。也蛮强大。
如果想学好了去企业上班,推荐C++~~~.net~~~JAVA之类的大型项目开发。
如果想做网站,就学ASP~CGI~PHP~JSP,这4个就JSP最最最难,先学ASP。
编程语言很多,但是目的都是想写出好的程序,只要学精了一个就有钱赚,一上来不要要求太高
语言是用来交流沟通的
计算机语言也一样
多说多练
❸ 学习编程
如果您想学习编程,却又不知从何入手,那么您不妨看看下面的几种学习方案,可能会给您一些启示吧!
方案一 Basic语言 & Visual Basic
方案二 Pascal语言 & Delphi
方案三 C语言 & Visual C++
方案四 C++语言 & C++ Builder
方案五 SQL语言 & Power Builder
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
方案一 Basic语言 & Visual Basic
优点
(1)Basic 简单易学,很容易上手。
(2)Visual Basic 提供了强大的可视化编程能力,可以让你轻松地做出漂亮的程序。
(3)众多的控件让编程变得象垒积木一样简单。
(4)Visual Basic 的全部汉化让我们这些见了English就头大的人喜不自禁。
缺点
(1)Visual Basic 不是真正的面向对象的开发文具。
(2)Visual Basic 的数据类型太少,而且不支持指针,这使得它的表达能力很有限。
(3)Visual Basic 不是真正的编译型语言,它产生的最终代码不是可执行的,是一种伪代码。它需要一个动态链接库去解释执行,这使得Visual Basic 的编译速度大大变慢。
综述:方案一适合初涉编程的朋友,它对学习者的要求不高,几乎每个人都可以在一个比较短的时间里学会vB编程,并用VB 做出自己的作品。对于那些把编程当做游戏的朋友来说,VB 是您最佳的选择。
(个人意见:其实我认为学VB之前不需要BASIC的基础,而且学起来非常容易上手,一般通过短时间的学习就能有所成就,如果在勤加练习的话,很容易就可以达到一个比较高的层次,但是起对指针的不支持使之灵活性不够,还有由于其是高级语言的原因,直接对硬件操作的能力也是有限的)
方案二 Pascal语言 & Delphi
优点
(1)Pascal语言结构严谨,可以很好地培养一个人的编程思想。
(2)Delphi是一门真正的面向对象的开发工具,并且是完全的可视化。
(3)Delphi使用了真编译,可以让你的代码编译成为可执行的文件,而且编译速度非常快。
(4)Delphi具有强大的数据库开发能力,可以让你轻松地开发数据库。
缺点
Delphi几乎可以说是完美的,只是Pascal语言的过于严谨让人感觉有点烦。
综述: 方案二比较适合那些具有一定编程基础并且学过Pascal语言的朋友。
(个人意见:Delphi是最近几年很流行的一种语言,虽然我没有用过,但是我早就听说了它的严谨性,也许是由于学校中对这种语言的教育不够吧,导致掌握这种语言的认输似乎不是很多。。。)
方案三 C语言 & Visual C++
优点
(1)C语言灵活性好,效率高,可以接触到软件开发比较底层的东西。
(2)微软的MFC库博大精深,学会它可以让随心所欲地进行编程。
(3)VC是微软制作的产品,与操作系统的结合更加紧密。
缺点
对使用者的要求比较高,既要具备丰富的C语言编程经验,又要具有一定的WINDOWS编程基础,它的过于专业使得一般的编程爱好者学习起来会有不小的困难。
综述: VC是程序员用的东西。如果你是一个永不满足的人,而且可以在编程上投入很大的精力和时间,那么学习VC你一定不会后悔的。
(个人意见:这个其实很多高*最终都会走这条路,它无论在功能上还是灵活性,还是对硬件的操作上都是非常强大的,但是由于学习起来需要很大的毅力,所以这条路有些难走,不过我相信如果你学好了是绝对不会后悔的!!!!!)
方案四 C++语言 & C++ Builder
优点
(1)C++语言的优点全部得以继承。
(2)完全的可是化。
(3)极强的兼容性,支持OWL、VCL和MFC三大类库。
(4)编译速度非常快。
缺点
由于推出的时间太短,关于它的各种资料还不太多。
综述:我认为C++ Builder 是最好的编程工具。它既保持了C++语言编程的优点,又做到了完全的可视化。
(个人意见:由于对这条路的了解不多,所以不敢妄自评论)
方案五 SQL语言 & Power Builder
对于一些传统的数据开发人员来说,Foxpro系列也许让他们感到更加熟悉。但是对于初学者来说,PowerBuilder也许是最好的数据库开发工具。各种各样的控件,功能强大的PowerBuilder语言都会帮助你开发出自己的数据库应用程序。
(个人意见:对于数据库的运用非常的专业:)
(个人意见:其实还有很多编程语言可以学习的,比如ASP/PHP+SQL,JAVA等,都是不错的语言呀,呵呵)
***转帖***
❹ 学习编程首先要掌握什么
重要概念 和编程 思想 下来是你要做的 1.明确学习目的 学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能 锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。 2.打好基础 学编程要具备一定的基础,总结之有以下几方面: (1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。 (2)逻辑思维能力的培养 学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。 (3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发 应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发 开发工具如 Java 等。 3)网络开发 对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。 以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。 3. 注意理解一些重要概念 一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。 4.掌握编程思想 学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道 VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。 5.多实践、多交流 掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。 6.养成良好的编程习惯 编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。 7.上网学编程 在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”( http://best.yeah.net/) 主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧;网站“现在时编程学园”( http://pshool.yeah.net/) 是专门介绍C、VC、VB、Delphi 等的综合编程网站;网站“ VB 编程乐园 ”( http://www.vbeden.com/) 提供内容丰富而且实用的编程技术文章、精选控件、源代码下载、计算机考试、相关软件以及编程书籍推荐等等。 8.加强计算机理论知识的再学习 学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。
❺ 求一个学习编程的教学网站
http://www.shiyanlou.com/register?inviter=NTY0MzE5MDI3MTQ4
❻ 代码编程教学是什么意思
教编程语言的课程。编程语言,例如c语言,java等。
1、有基础的学员:对于没有任何编程基础的初学者来说,要想快速入门编程,最为有效的方式之一就是与专业人士进行交流,在专业人士的指导下进行学习会有比较高的学习效率,而且也会有一个系统的学习过程,当前可以充分利用互联网来开辟自己的交流渠道。
2、无基础的学员:对于已经有一定编程基础的同学来说,边用边学往往会有更高的学习效率,比如程序员在学习一门新的编程语言时,如果采用听课的方式学习也许并不是最高效的,很多程序员是直接看代码案例,然后就开始尝试应用,然后再逐渐提升应用的熟练程度,因为对于已经有成熟编程思想的程序员来说,不同的编程语言仅仅是语法上的不同,思想终归是统一的。
编程语言难易
编程语言的语法并不难掌握,但是要想熟练运用编程语言,一定要多做实验,这个过程是无法忽略的,也没有任何捷径,编程语言用得多了,自然也就熟练了。对于很多应用级程序员来说,编程并没有太多需要思考的地方,也不需要设计复杂的算法。
如果要想在程序设计领域走得更远,熟练运用编程语言仅仅是第一步,还需要有自己的主攻方向,并且能够围绕自己的主攻方向不断深入,掌握相应的研究方法,最终成长为一名研发级程序员。
❼ 学编程入门
设备:电脑
你既然喜欢编程,就应该认认真真的学习一门语言,学习微软的就先从VB开始,VB是比较好的入门语言,可视化的,比较简单,是非常好的入门语言。书籍最少应该准备两本,不可能一本书籍会包含VB的所有内容,在看书的时候,可以交叉的看,一本书籍中没有讲到的内容可以在另一本中看到,这样对学习是很有好处的,也能保证所学知识的完整性。学编程是一个很漫长的过程,不要着急,要理论与实践想结合,例程书籍也是很重要的,看源代码对学习也是很有帮助的,等你学完这门VB语言之后,学习别的语言是非常简单,可以尝试C语言,按照C——C++——VC的顺序学习,有助于知识的连贯性,我也希望你能学好的。
或者学习Delphi,入门较为简单类似于VB,但比VB强大,即可作为入门又能做强、做大
怎样学编程
1.明确学习目的
学习编程对大多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。
2.打好基础
学编程要具备一定的基础,总结之有以下几方面:
(1)数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。
(2)逻辑思维能力的培养学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。
(3)选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发开发工具如 Java 等。 3)网络开发对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。
3. 注意理解一些重要概念
一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。
4.掌握编程思想
学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道 VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。
5.多实践、多交流
掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。
6.养成良好的编程习惯
编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。
7.上网学编程
在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载。例如网站“编程课堂”(http://best.yeah.net/)主要以 VB 和 Delph;教学和交流为主,提供大量实用技巧;网站“现在时编程学园”(http://pshool.yeah.net/)是专门介绍C、VC、VB、Delphi 等的综合编程网站;网站“ VB 编程乐园 ”(http://www.vbeden.com/)提供内容丰富而且实用的编程技术文章、精选控件、源代码下载、计算机考试、相关软件以及编程书籍推荐等等。
8.加强计算机理论知识的再学习
学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度
°heroべ小丢 18:18:18
在我看来,要做一个合格的程序员,你需要具备下面几个条件:
1. 强烈的好奇心和求知欲
2. 追求完美的精神
3. 良好的逻辑分析能力
其他方面的条件几乎所有类似的帖子都有提及:如果你不是准备单打独斗,那么团队合作能力必不可少;英语我就懒得说了,没有基本的阅读英文资料的能力,我劝你还是打消做个程序员的想法,没有为什么;数学能力也是必不可少的,如果不是做算法,高中水平的数学能力就足够了,但一定要成绩很好才行。
那么为什么我要强调上面列的三点呢?
具有强烈的好奇心和求知欲,能够让你跟上技术发展的步伐,仅仅靠危机感和责任感,你对技术的学习会有很强的功利性质,导致你的技术体系不能构成一个完整自包容的整体,而且很难对技术有高层次的认识和掌握。
我认识的一个资深系统设计师跟我说过:做软件,“做出来”和“做的好”完全是两个概念,所要求的投入和技术水平是天壤之别。现在国内很多程序员仅仅把软件开发当作养家糊口的谋生手段,国内计划经济时代凑合、马马虎虎干活的思想也渗透到了软件业,很多程序员仅仅是把功能做出来,根本不会去考虑提高重用性、可维护性,也不会去考虑提高稳定性、运行速度,甚至连代码也是乱七八糟,基本的编码规范都不遵守(在我看来,这样的人不配“程序员”这个称号),在我们大声谴责国内软件业环境不好,拉项目靠关系,没有质量保证体系,老板不重视程序员,疯狂剥削程序员的时候,我们是不是该问问自己,你是不是只把眼睛盯着别人?
现在各种软件开发包应有尽有,包罗万象,编程工具也异常强大方便,对于国内占主流的MIS系统来说,要完成一个功能实在不是很难的事情,但是如果把系统做为一个整体,则大多数都是运行缓慢、占用资源过大、兼容性差、可维护性差、不稳定的系统,你可曾尝试过开发一个优秀的系统,如果有,你就会发现开发优秀软件是多么困难,对技术的要求是多么高,而你在努力做到完美的过程中水平的提升是多么快。没有追求完美的精神,无论外部环境如何好,你也是不会开发出优秀软件的,等待你的是无休止的修改和维护~,你的技术水平也永远停留在简单的编码阶段,最终只有被迫转行。
好了,我真的适合当个程序员,那我该如何开始?
首先选择一门编程语言和操作系统平台。
操作系统平台国内比较流行的基本有Windows、Linux(Unix)、Mac OS。一般来说大家都选择的是Windows平台,因为此平台是国内处于垄断地位的操作系统,而且有很多优秀的开发工具可供选择,缺点就是Windows 平台的开放性不高,往底层探究比较困难(但我对于言必称底层的观点比较反感,不是所有搞开发的都要对底层非常了解,做出用户满意的系统才是我们追求的根本,玩些底层的trick只是一种自我满足罢了。当然我们需要有一些掌握底层技术的高手,但这个是个人选择的问题),而且用惯Windows的程序员在配置、脚本等方面比较弱。Linux是开源平台,当然从理论上你可以操纵Linux的一切,但是有几个人能够达到这一水平?刚刚开始学习开发的程序员,在 Linux上也仅仅能够开发一些应用软件罢了。Linux下的开发工具不够人性化,但这种情况正在逐步得到缓解,Eclipse就是非常出色的开发平台。在Linux下开发,你可以得到大量优秀的源代码,并且一切都是透明的(只要你想),但你必须学习很多命令行指令,掌握各种系统和参数配置以及脚本方面的知识。
编程语言的选择更是令人头痛,我涉猎不多,对于有些语言,我无法给出任何建议,只好等这方面的高手来给大家补充了。我仅仅对C++和Java进行一些说明,当然这个也仅仅是基于个人体会,绝对不是权威观点 :P
C++仍然是目前占主流的开发语言(详细的可以阅读TCPL中的相关论述),而且一种语言的发展或消亡都是一个渐进的过程,在可以预见的将来,C ++仍然是一门举足轻重的开发语言,但其所针对的领域和方向可能会有所调整,我认为最主要的变化是C++会逐步从商业MIS系统市场上退出。选择C++的理由是关于C++的优秀开发书籍和开发工具最多,相关的资源也异常丰富,待对于一般应用程序的开发掌握之后,无需过渡,就可以深入学习各种技术,因为现阶段讲述系统底层奥秘和高级技术的书籍,基本都是选用C\C++做为示例语言。加上微软精心打造的开发平台Visual Studio或Borland的C++ Builder系列,学习起来更是如虎添翼。但C++现在的缺点也是比较明显的,我最深的感触就是对于XP和Agile Development的支持不好。
Java简化了C++的语法,学习起来比较容易(但随着Java的日益普及和发展,是否能够继续保持这一优势,我不敢断言),Eclipse 是非常优秀的Java开发平台,支持XP的整个过程:设计、测试、编码、重构……现阶段敏捷软件开发的主要语言就是Java。而且Java的跨平台特性更是非常大的优势。
实际上,选择哪门语言都没有关系,根据你的发展规划和目前身边的环境选择就可以,没有必要跟风,其后的坚持才是难点。
好,假设你选择了C++做为开发语言,在Windows平台上开发,那么我给你如下的学习建议(其他的选择请各位积极补充……):
C++语言的学习当然是基础,这个阶段由于没有任何在特定平台上的开发经验,我们只能按照书中的例子一个一个输入运行,暂时告别熟悉的图形界面,回到古老的DOS了。参考书的选择是这个阶段很多朋友关心的,Stan Lippman的《Essential C++》和《C++ Primer》是我优先推荐的,而《Essential C++》因为篇幅较小,讲解内容适当,而且对C++ STL的运用有不少描述,显得相当实用,我认为最适合初学者使用。无论选择了那本书做为入门教材,都应该逐个例子逐个例子的消化,不要贪快,但同时要对重点内容有所侧重。我们学习任何东西都是为了解决实际问题,所以请把重点放在我们实际中最常用的部分,而不要过多的追究一些细节和艰深晦涩的不常用技术。
此刻我们会碰到很多过后看来非常简单幼稚的问题,比如为什么编译出错,为什么按照书中的例子输进去却无法通过编译,找不到头文件等等,大体上这是因为刚刚接触程序开发,对程序理解还很初级,以及对于所使用的开发环境不够了解,特定编译器对标准C++的支持程度不一导致。请多阅读关于所使用开发环境的各种文档,以及查阅帮助文档。以我最经常使用的Visual C++配合MSDN来说,当出现一个我不能理解的编译错误时,按F4键编辑器就会自动跳到当前错误地点,下面的输出窗口也会给出错误代码(比如C××× ×),把错误代码记下,打开MSDN,在索引一栏输入错误代码,就能够查到详细的关于此错误的说明,当然,是英文的(不要问你不会英文怎么办,这是基本要求)。现在的开发工具查错排错非常方便。当然,有时很多错误原因并不是编译器所提示的地方,而是往前或往后一些地方,长期的编程经验可以提高查错速度。此时也请多练习练习Debug技术。
此阶段只要能够掌握C++的基本语言要素,对结构化程序设计和基于对象的设计有一定理解,能够完成一些简单的小程序就可以结束了,毕竟DOS 程序现在很难勾起我们学习的欲望了 :P 在此之后可以视自己的情况决定是否学习数据结构,数据结构是程序员的必修课,不可或缺,地位非常重要,即使你现在希望马上进入图形界面程序开发的世界,这一课我也提醒你记着早点补上。
终于可以迈入图形世界,我们要从SDK编程开始,不要担心,这不会花费你太长时间,但却是对Windows程序运行机制进行深入了解的好时机,在此的努力都不会白费(trust me),此时的参考书没有什么好考虑的,基础的有Charles Petzold的《Windows程序设计》,进阶的有《Windows核心编程》。请从《Windows程序设计》开始,Charles Petzold的书通俗易懂,学习起来非常轻松,而且对你的语言要求不高,只要懂C就可以了。
此时容易碰到的问题大多与项目设置有关,如果使用Visual C++,请按Alt+F7调出项目设置对话框仔细检查,并阅读相关文档,熟悉各项配置的意义。
此阶段请重点掌握Windows SDK程序的编写方法,Windows程序的运行机制和Windows消息机制,和常用的Windows API。我们还可以更进一步:尝试用前一阶段学到的C++知识对过程化的SDK程序进行初步的改造,将我们敲入计算机的程序变得可重用,按照自己对基于对象思想和面向对象思想的理解来重新编写例子程序。
OK,现在你已经初步入门了,掌握了C++的基本用法,对面向对象有了一点模糊而自以为是的认识,也能够写出Windows程序了,虽然还有点简单,还有点丑陋,不过,总归是图形界面啊。开始有点感觉了,是吗? :P 别急着往前冲,停一停,将C++和Windows SDK的基础打牢,贪多嚼不烂吗。此时有很多经典书籍等待你去掌握,也有几乎无限的题材供你练习,请尽量多阅读接触下面的资源:
《C++ Primer》
《Windows核心编程》
《应用程序调试技术》
面向对象开发设计方面的书籍
MSDN的Platform SDK部分,Periodicals部分(包含了大量有价值C++、SDK方面的技术文章)
°heroべ小丢 18:18:20
CodeProject里相关的源代码是很好的补充学习资料
现在继续往前走吧,利用SDK开发毕竟有时太过于费时费力,还是使用更高级的应用程序开发框架的好,主要的有MFC和VCL,关于这些框架谁好谁坏的争论我已经听烦了,一句话,能帮助我们完成任务就行,它们无非都是工具,你自己随便选择吧。不过选择好之后,你应该明白,对于你的工具,了解越深,越能发挥它的威力。如果你选择了MFC,我建议学习下面的书籍:
《深入浅出MFC》:关于此书毋庸多说,尽管有人不停的贬低,但它的地位是无可置疑的,而且也是对我最有帮助的书籍之一。
《MFC程序设计》
《Visual C++技术内幕》
然后就停止找书吧,网上开发站点的数不胜数的源代码就是最好的老师了……
学习过程中碰到问题我该怎么办?
我始终认为学习软件开发过程中遇到的问题只有自己尽最大的努力去解决,才能收到最大的成效,对于那些动不动就把问题发到网上指望高手帮你解决的做法我非常不赞同,因为这样你并不能从中学到多少。我建议的做法是,首先尝试自己独力解决问题,花几个小时解决一个问题,是很正常的,不要几分钟解决不了就放弃了;实在无法解决的时候,请尝试尽量减小涉及范围,将问题归结一下,初步形成自己的结论;然后利用搜索引擎或者开发论坛中的搜索功能来搜索是否有对于自己问题的解答;实在没有的时候,再发帖子求助。请了解一点:你遇到的问题都是别人遇到过的,网上肯定有现成的解决方法(因为你还没有到开发研究前所未有的问题的水平:P),只看你找不找得到了,请尽力去利用现有的资源而不是麻烦别人。
CSDN的论坛、MSDN在线文档都是非常好的资源,基本上我们遇到的问题在这里都能找到解答。
❽ 编程学习
QQ185259693我提供资料