怎么学做电脑系统-怎么学编写电脑系统
1.如何学习电脑编程更快一点 ?
2.初学编程该该怎样学习编程语言
3.怎样学习电脑程序编写
如何学习电脑编程更快一点 ?
实践就是最好的老师! 另一个需要强调的是: 编程是一种技能,就同学习外语一样,绝不可能“速成”! 在有了 10 年自学计算机技术的经历和近几年在高校讲授程序设计系列课程的经验之后,我一直在思索以下几个问题: ? 软件到底是怎样开发出来的? ? 编程是难还是易?有没有能让编程功力“暴长 10 年”的“武功秘笈”? ? 一个有志于成为优秀软件工程师的人应该怎样学习计算机技术? ? 用什么方式才能让许多学生很快地学会特定的计算机技术,而不用重复我和其他人所走过的弯路? 思索的结果就是大家所看到的这本书。 在我自己亲身的学习与开发实践中,逐渐形成了这么一个观点: 编程其实并不难! 要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以参加到软件项目团队中,并写出具有相当质量水准的程序! 为什么会有那么多的人把编程视为很高深的东西? 为什么我国那么多的软件企业深感合格的程序员是如此难找? 与此同时,又有与之完全对立的情况:每年有大批计算机及相关专业毕业生四处求职,却处处碰壁,找工作成了一件很不轻松的事情…… 一边是真正合格的程序员人数很少,软件企业都在喊急缺人才,而另一边是大量的学生毕业找不着理想的工作。这样一个怪圈为何会形成? 我想,造成这个怪圈有两个重要的原因。 一是学生学习方法与态度的问题。由于对软件开发这一工作本身缺乏正确认识,许多学生形成了一种浮躁的功利型学习方法,表现为盲目地跟风学习各种当前流行的新技术,但大都只是三个月热度,由于欠缺毅力和不具备扎实的理论与实践基础,对这些新技术无法深入把握,浅尝辄止,“坐而论道”,讨论时可以“滔滔不绝”,一到动手则“原形毕露”。许多人没有想过:现在流行的“新”技术,难道就会一直“流行”下去?曾经风光一时的 Foxpro 和 PowerBuilder ,国内曾有许多人(包括本人在内)投入大量的时间去学习与掌握,可没过几年,还有几个项目是用这两种技术开发的呢?所以,如果要“追”新技术,也只能去学预计两到三年后社会急需的技术,这就需要学习者有超前的眼光。但软件技术进步实在太快,很少有人能够准确预测出几年之后会流行什么。所以,与其“临渊羡鱼”,不如“退而结网”,选择一项自己喜欢的领域,从理论到技术,扎扎实实地用两到三年时间去学好它,在学习过程中培养出“捕鱼”的本事。有了这种自我学习的基本能力与素质,还担心出海捕不到鱼吗? 有一些学生投入相当多的时间与金钱去参加种种有着各种动听承诺的电脑培训班,指望别人能够帮助自己成为技术高手,却不知真正的高手大都是“自学成才”! 更有太多的尤其是非计算机专业的学生,盲目地去考各种认证,不管是国内的还是国外的考试,只要有证,就有大批的人去参加。他们把应用计算机技术的能力简单地等同于一纸证书。当前的计算机等级考试就大有成为高校中第二个“英语四六级”的可能性。 事实上,你向别人展示自己写的一个软件作品,比给别人看一堆各式各样的证书更能说明你的能力! 造成怪圈的第二个重要原因就是计算机教育问题。目前高校中的计算机教育并不能大批量地培养出合格的软件开发者,学生在四年本科期间计算机理论学了不少,对培养编程能力却重视不够,缺乏实践的结果是理论也掌握不好,学生的计算机水平被煮成了“夹生饭”。 除了在校的大学生,社会上还有大批的软件开发爱好者,他们由于没有机会系统地学习软件开发技术,就采用自学和自我实践的方式,结合自己的工作来应用学到的计算机技术。虽然他们没有在校生的优越条件,但其中优秀人物的真实开发能力远胜于正规高校计算机专业“科班”出身的本科生甚至是硕士生。这种例子已经很多了。 “职业选手”不如“业余选手”! 我自己是走“野路子”出来的,走的是以实践为主导的自学之路,从亲身实践中深切感受到计算机科学本质上是一门实践性非常强的科学,不管是在校学生还是社会上的软件开发爱好者,我的建议是: 我从2002 年开始接触 .NET 技术,并一直研究使用至今,前前后后看了近百本国内外的 .NET 编程书籍,并写了几万行的 .NET 代码。在对 .NET 有了一定的了解之后,我认为 .NET 技术是初学者学习软件技术非常好的切入点,学习者可以一步到位,直接学习目前主流的面向对象软件开发技术,而不用按部就班,按传统的先结构化编程再面向对象编程的顺序去学习。 接着我思考的问题是:这本书该怎么写? 著名物理学家爱因斯坦曾经表达过这样的思想: 学习时只需要掌握那些能让思维导向深入的东西,而将其他无关的知识全部抛弃。 软件技术本身有一个庞大而复杂的体系结构,不分巨细地样样都想掌握,那么只能是疲于奔命而终无所得。 为此,基于我自己的理解,在书中我将认为是最重要和最基础的东西突显出来,这些东西是必须掌握的,一旦理解并掌握它们之后,读者就掌握了“捕鱼”的方法,自己就可以进一步探索某一领域内的其他技术点了。因此在书中不需对每个技术领域的每个技术点都“面面俱到”。 编程是有规律的,读者能不能迅速成为一名具备相当水平的程序员,关键在于对编程规律与必备知识基础的把握程度。 最重要的是要掌握原理。在开发过程中所进行的各项具体活动与工作步骤,其背后都是有道理的,理解清楚了这些道理,在整个软件开发过程中该做什么,不该做什么,先做什么,后做什么,也就心中有数了。 编了这么多年的程序,我意识到其实学习软件开发技术的过程就是一个学会做事方法的过程。例如,在开发软件时,要“分而治之”、“步步为营”、“先局部后整体”、“合理安排开发次序”、“养成良好的编程习惯”等,这不仅仅是程序设计的技巧,也是做好编程之外许多其他工作所需要的。 在学习与掌握软件技术这一过程中,可以锻炼一个人的许多基本素质,如思维周密、意志坚强、学习能力、创新精神等。如果一个人能在竞争空前激烈的 IT 业凭借着高素质站稳脚跟,那么,可以很有把握地说,如果他转向其他行业,同样是一个优秀的人才,也会闯出自己的一番天地! 在许多计算机技术书籍中,出现了大量的技术术语,对于不熟悉这些术语的读者而言,这无疑加大了阅读的难度。对于这些计算机术语的表述,如果强调其在理论上的科学性与严谨性,则往往不易于理解,这在很大程度上限制了这些知识的传播、普及和应用。因此,本书对这些术语大都采用了一种通俗易懂的方式来表达,甚至使用了不少比喻手法来阐明其内涵。这种表达方式虽易于理解,但不免在科学性和严谨性上有所不足,读者如果需要科学而精确的定义,请自行查阅相关的科技文献。强调一下,本书是一本志在普及软件开发技术的专业书籍,与传统的工程技术专著和计算机科学理论教材不同,阅读时不要像中学学习数学一样,每个字都不放过,而应将重点放在形成对软件开发过程的直观理解和感性认识上。 对于一个具体的软件开发者而言,只有被理解了的知识才是真正有用的知识,无法理解的知识是毫无用处的。笔者写书的主要目的是让读者能迅速地汲取书中所提供的知识,尽量做到 “用大白话讲述复杂的技术” ,因此在文字上追求深入浅出,但是否真的做到了这一点,还得由读者来做出评价。 知识的获取与掌握是有其客观规律的,一般而言,具体的知识易于理解,而抽象的知识则难于把握,在学习过程中,应遵循“具体 → 抽象 → 具体 →……”这样一个无限循环的过程。 如果某人对一门学科所知不多,却指望他能通过理论学习迅速地把握这门学科,这就违反了人类认识世界的客观规律。可惜的是,目前中国教育体制中普遍采用的让学生重点学习抽象理论而忽视具体实践的做法,造成了大批的学生既没学好理论,也没打好必要的实践基础。 我认为,只有建立在实践基础之上的理论学习才是真正有效的学习。因此在整个计算机技术的学习过程中,应该把开发实践作为一条主线,由它串起所有的计算机理论。如果把计算机技术中的各个子领域看做是一个个珍珠,开发实践就是那根把所有珍珠串成项链的丝线。没有这根线,学习各门计算机课程得到的不过是一颗颗零散的珠子,价值有限。
初学编程该该怎样学习编程语言
C语言玩玩就好,过了指针就难了,JAVA入门简单,后边框架太多,C++是王道,但学的人多了,想学的很出彩就难了。
计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类。 如果按语种分,可以分为英文符号语言和汉语符号语言两类。(典型的如:易语言、C语言) 电脑每做的一次动作,一个步骤,都是按照已经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。 目前通用的编程语言有两种形式:汇编语言和高级语言。
简单点说就是两条路:
一、C\C++\C#(ASP.NET)
二、JAVA(J2SE\J2EE\J2ME\JSP)
走这两条路都必学的:数据结构、数据库(SQL或Oracle)
选学:计算机应用基础、网络基础、硬件基础。
C是学习高级语言的基础;C++主要用于编写大型软件核心代码和汇编一样,比较难学,不过学好了后,很有前途;C#主要用于编写一些系统软件,比如游戏引擎核心代码,编写比较简单,界面比较友好;ASP.NET主要是用C#语言编写开发网站(B/S架构)。
J2EE是用很广泛,主要偏向于企业应用软件和一些桌面系统(C/S架构),计算机平台;第二,J2ME,面向无限领域,主要用于开发手机一些软件,比如手机游戏。很有潜力的家伙,看看中国的手机用户就知道了;JSP主要也是开发网站。
怎样学习电脑程序编写
当然是选择一个你喜欢的程序设计语言,搞懂他的语句,函数过程,接着就疯狂修炼算法设计如果你还小,没进大学,就学Pascal啦进了大学建议学c,c#,c++啦 推荐阅读从软件开发人员的生涯规划来讲,我们可以大致分为三个阶段,软件工程师→软件设计师→架构设计师或项目管理师。不想当元帅的士兵不是好士兵,不想当架构设计师或项目管理师的程序员也不是好的程序员。我们应该努力往上走。让我们先整理一下开发应用软件需要学习的主要技术。
A.基础理论知识,如操作系统、编译原理、数据结构与算法、计算机原理等,它们并非不重要。如不想成为计算机科学家的话,可以采取"用到的时候再来学"的原则。
B.一门编程语言,现在基本上都是面向对象的语言,JAVA/C++/C#等等。如果做WEB开发的话还要学习HTML/JavaScript等等。
C.一种方法学或者说思想,现在基本都是面向对象思想(OOA/OOD/设计模式)。由此而衍生的基于组件开发CBD/面向方面编程AOP等等。
D.一种关系型数据库,ORACLE/SqlServer/DB2/MySQL等等
E.一种提高生产率的IDE集成开发环境JBuilder/Eclipse/VS.NET等。
F.一种UML建模工具,用ROSE/VISIO/钢笔进行建模。
G.一种软件过程,RUP/XP/CMM等等,通过软件过程来组织软件开发的众多活动,使开发流程专业化规范化。当然还有其他的一些软件工程知识。
H.项目管理、体系结构、框架知识。
正确的路线应该是:B→C→E→F→G→H。
还需要补充几点:
1).对于A与C要补充的是,我们应该在实践中逐步领悟编程理论与编程思想。新技术虽然不断涌现,更新速度令人眼花燎乱雾里看花;但万变不离其宗,编程理论与编程思想的变化却很慢。掌握了编程理论与编程思想你就会有拨云见日之感。面向对象的思想在目前来讲是相当关键的,是强势技术之一,在上面需要多投入时间,给你的回报也会让你惊喜。
2).对于数据库来说是独立学习的,这个时机就由你来决定吧。
3).编程语言作为学习软件开发的主线,而其余的作为辅线。
4).软件工程师着重于B、C、E、 D;软件设计师着重于B、C、E、 D、F;架构设计师着重于C、F、H
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。