枣庄软件开发 青岛软件开发
在线客服1069706080
现在的位置:首页 > 软件开发行业资讯 > 文章详情

枣庄软件开发的编程学习之路

跟随我们枣庄软件开发一起来了解一下,软件开发的编程学习之路。
一、看清形势
    首先要说干什么事情一定不能犯方向性的错误。有必要回顾一下软件开发的三个大的阶段。八十年代,主要的操作系统是 Unix, DOS,程序语言主要是 C,开发方法是面向过程的自顶向下,逐步细化,我们在大学中学C语言时用的Turbo C 2.0 就是主要的开发工具。到了九十年代,操作系统成了Windows,程序语言是C ,开发方法是面向对象,开发工具有Microsoft的VC , Borland 的 BC 。而我们现在所处的时代是 Web service 的时代,操作系统已经是Microsoft的 .Net和Sun的J2EE ,程序语言已经是 Microsoft 的 C# 和 Sun 的Java ,开发方法是面向组件,工具是 Visual Studio .Net ,Jbuilder。
    程序开发的主流绝对不在中国,是在美国,作为不是优势产业的软件我们没有办法,只能跟着别人走。而全球的领先技术是掌握在像 Microsoft 和 Sun 这样的大公司手中的。跟着微软走已经成为软件业的一条至理名言。微软实在太强大了,历史上有多少公司都被它给搞跨了,比如 Borland, Netscape 。
二、语言选择
    我们首先认清了形势。下面来讲我们的选择。对于初学者,光去学C语言是远远不够的。这只能让你对程序语言有一个大概的了解,比如什么是变量,什么是函数。依经验在初步有所了解之后应马上去学习C ,这可是一个比较艰辛的过程。可以看一下清华的《C 语言程序设计》,这是一本入门教材。这时的学习是单纯语言的学习,不涉及任何实际的开发,比如 windows程序开发,初学者开始最好不要去碰 windows。
    在你比较熟悉C之后最好去学一下数据结构,进一步熟悉 C ,学习数据结构,了解面向对象的设计方法。
    在这之后就可以去看 windows 编程了,对没有做过 window 编程的人,这种学习可能让你马上想放弃,因为 windows 编程实在太复杂了。一个很简单的 Hello World 窗口有近一百行的程序,而且让人看不大明白。不太推荐绕过学 win32 api 去直接学 mfc,这会让你吃尽苦头。正是由于直接用 api 开发太麻烦了,所以就有了mfc。
    这里真正有价值的是 win32 的 api ,这对你以后的编程学习有很大的好处,比如对 mfc机理的了解。说到底操作系统就是一大堆系统调用的集合,在 windows 下就是 win32 api 。后来我看 win32 汇编方面的书时,其实也就是在调用 win32 api 。
在学 windows 的同时应该继续学习 C ,C 是一个大的课题,包括很多的东西,我现在在看 C 标准库方面的书,用的书是侯捷译的《C 标准程序库》和他的《STL源码剖析》。在学数据结构时想那么多的 ADT 和算法是不是都要自己去写呢,我接触过 STL 后就没有这种担心了,STL 里提供了你所能用到的几乎所有的东西,而且是程序大师帮你写的。C 之父的经典著作《C 程序设计语言》中已经将STL视为标准C 的一个部分了。
有了好的 C 基础后,就可以去学一下业内主流的语言 Java 和 C# ,其实学习它们很简单,都是衍生于 C ,语法基本一样,只是它们是纯面向对象的语言,添加了对于组件的支持。Java 可以用《Java编程思想》这本书,侯捷翻的,很不错。 C# 书就多了,我用的是清华翻的那套,《beginning C#》,《advanced C#》。为什么要学这两种语言,因为微软和Sun 都把未来压在分布式计算之上。未来的程序是运行在网络空间之中的,Java 的流行就揭示了这种趋势。
三、专业课程
    很多人认为只要学学语言就够了,不需要学专业课程,随着学习的深入,渐渐体会到这种想法是不对的。软件开发中,还是需要专业的课程的。我们青岛软件开发给您介绍一下这样的专业课程,像《操作系统》,《计算机组成原理》,《编译原理》,这样的课程,你学的时候不觉得,但在编程中的一些东西你如果明白原理的话,就能深入理解。比如编程时按行访问数组和按列访问执行的时间就不同,这涉及到了《操作系统》中的虚拟内存的原理。
    操作系统方面的书很多,大家学习过之后应该看一下《操作系统,设计与实现》这本书,它的好处是结合一个小型的教学用的操作系统 Minix 来讲,可以结合源代码来学习,Linux对初学者有点太专业了,其实 Minix 也是类 Unix 的,当初 Linux 本人就是看了这本书才决定自己写 Linux。
四、方向选择
    计算机科学是一个大的学科,很多的分支学科,计算机图形学,人工智能,实时控制,分布式计算,我们也不可能有那么多的时间去学习它的方方面面。可以捡自己有兴趣的地方深入学习,我选的就是计算机游戏来学习。《Windows 游戏编程大师》是入门的教材,主要讲DirectX 。游戏编程是一个大杂烩的方向,涉及计算机图形学,人工智能,数据结构。
    计算机科学也有一些普及性的书,比如《编码的秘密》,《计算机信息处理》,这些书虽然不是专业性的书,但能让人对计算机科学产生浓厚的兴趣,蛮有意思的。 
五、开发实践
    计算机编程绝对是需要实践的东西,你想整天看看书成为高手,这是不可能的。你必须去做。学习教材时书上有很多的例子,你可以运行它,作一些适当的修改,有些书的例子是非常经典的,比如《数据结构 C 语言描述》的源代码,SGI的STL源代码,这些东西网上都能下载到。
    开始做程序不要想着自己去做一个OFFICE,这是不可能的,给自己选一个小的题目,有实用价值的。枣庄软件开发提示您,您也可以找一些志同道合的同学一起开发,我就经常和计算机系的一个同学,还有软件学院的一个同学一起做些东西,大家在一起可以培养团队精神,相互交流,资源共享。
六、常用工具
C#:Visual Studio .Net
Java: Sun Java 2 SDK
C :Dev C
Win32asm:Masm32v7

想要了解更多详情欢迎来电咨询18678812288,或登陆网址www.zzydkj.net。联系人:王经理。