如何系统的自学编程?
这个要看你自身有没基础,起码要有计算机基础,还有编程范围很广,你要确定好学哪方面的,编程有开发WEB,APP,嵌入式系统等的,有前端开发,后端开发和其他,你先确定自己想做哪方面,然后确定好学哪些编程语言,然后去网上找教程就可以了。
作为一名的大学生,你认为如何去自学编程?
对于编程需要的知识领域我们可能要进行一些分类。编程本身所包含的内容很宽,知识领域不仅包含编程本身的,也包含很多业务层面的。比如学习OAuth2、RBAC、正则表达式、爬虫、操作系统…对于大学生,我的建议和上面很多回答一样,还是从学校的课程入手,把基础要打牢。特别是基础课程,如网络通讯、数据库、算法、操作系统,既要学习原理,也要多做实验。在学习过程中先就可以找到自己感兴趣的方向,在一个方向深耕,其它方向逐步了解。
怎样学习编程?
软件技术 实践就是最好的老师! 另一个需要强调的是: 编程是一种技能,就同学习外语一样,绝不可能“速成”! 在有了 10 年自学计算机技术的经历和近几年在高校讲授程序设计系列课程的经验之后,我一直在思索以下几个问题: ? 软件到底是怎样开发出来的? ? 编程是难还是易?有没有能让编程功力“暴长 10 年”的“武功秘笈”? ? 一个有志于成为优秀软件工程师的人应该怎样学习计算机技术? ? 用什么方式才能让许多学生很快地学会特定的计算机技术,而不用重复我和其他人所走过的弯路? 思索的结果就是大家所看到的这本书。 在我自己亲身的学习与开发实践中,逐渐形成了这么一个观点: 编程其实并不难! 要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以参加到软件项目团队中,并写出具有相当质量水准的程序! 为什么会有那么多的人把编程视为很高深的东西? 为什么我国那么多的软件企业深感合格的程序员是如此难找? 与此同时,又有与之完全对立的情况:每年有大批计算机及相关专业毕业生四处求职,却处处碰壁,找工作成了一件很不轻松的事情…… 一边是真正合格的程序员人数很少,软件企业都在喊急缺人才,而另一边是大量的学生毕业找不着理想的工作。这样一个怪圈为何会形成? 我想,造成这个怪圈有两个重要的原因。 一是学生学习方法与态度的问题。由于对软件开发这一工作本身缺乏正确认识,许多学生形成了一种浮躁的功利型学习方法,表现为盲目地跟风学习各种当前流行的新技术,但大都只是三个月热度,由于欠缺毅力和不具备扎实的理论与实践基础,对这些新技术无法深入把握,浅尝辄止,“坐而论道”,讨论时可以“滔滔不绝”,一到动手则“原形毕露”。许多人没有想过:现在流行的“新”技术,难道就会一直“流行”下去?曾经风光一时的 Foxpro 和 PowerBuilder ,国内曾有许多人(包括本人在内)投入大量的时间去学习与掌握,可没过几年,还有几个项目是用这两种技术开发的呢?所以,如果要“追”新技术,也只能去学预计两到三年后社会急需的技术,这就需要学习者有超前的眼光。但软件技术进步实在太快,很少有人能够准确预测出几年之后会流行什么。所以,与其“临渊羡鱼”,不如“退而结网”,选择一项自己喜欢的领域,从理论到技术,扎扎实实地用两到三年时间去学好它,在学习过程中培养出“捕鱼”的本事。有了这种自我学习的基本能力与素质,还担心出海捕不到鱼吗? 有一些学生投入相当多的时间与金钱去参加种种有着各种动听承诺的电脑培训班,指望别人能够帮助自己成为技术高手,却不知真正的高手大都是“自学成才”! 更有太多的尤其是非计算机专业的学生,盲目地去考各种认证,不管是国内的还是国外的考试,只要有证,就有大批的人去参加。他们把应用计算机技术的能力简单地等同于一纸证书。当前的计算机等级考试就大有成为高校中第二个“英语四六级”的可能性。 事实上,你向别人展示自己写的一个软件作品,比给别人看一堆各式各样的证书更能说明你的能力! 造成怪圈的第二个重要原因就是计算机教育问题。目前高校中的计算机教育并不能大批量地培养出合格的软件开发者,学生在四年本科期间计算机理论学了不少,对培养编程能力却重视不够,缺乏实践的结果是理论也掌握不好,学生的计算机水平被煮成了“夹生饭”。 除了在校的大学生,社会上还有大批的软件开发爱好者,他们由于没有机会系统地学习软件开发技术,就采用自学和自我实践的方式,结合自己的工作来应用学到的计算机技术。虽然他们没有在校生的优越条件,但其中优秀人物的真实开发能力远胜于正规高校计算机专业“科班”出身的本科生甚至是硕士生。这种例子已经很多了。 “职业选手”不如“业余选手”! 我自己是走“野路子”出来的,走的是以实践为主导的自学之路,从亲身实践中深切感受到计算机科学本质上是一门实践性非常强的科学,不管是在校学生还是社会上的软件开发爱好者,我的建议是: 我从2002 年开始接触 .NET 技术,并一直研究使用至今,前前后后看了近百本国内外的 .NET 编程书籍,并写了几万行的 .NET 代码。在对 .NET 有了一定的了解之后,我认为 .NET 技术是初学者学习软件技术非常好的切入点,学习者可以一步到位,直接学习目前主流的面向对象软件开发技术,而不用按部就班,按传统的先结构化编程再面向对象编程的顺序去学习。 接着我思考的问题是:这本书该怎么写? 著名物理学家爱因斯坦曾经表达过这样的思想: 学习时只需要掌握那些能让思维导向深入的东西,而将其他无关的知识全部抛弃。 软件技术本身有一个庞大而复杂的体系结构,不分巨细地样样都想掌握,那么只能是疲于奔命而终无所得。 为此,基于我自己的理解,在书中我将认为是最重要和最基础的东西突显出来,这些东西是必须掌握的,一旦理解并掌握它们之后,读者就掌握了“捕鱼”的方法,自己就可以进一步探索某一领域内的其他技术点了。因此在书中不需对每个技术领域的每个技术点都“面面俱到”。 编程是有规律的,读者能不能迅速成为一名具备相当水平的程序员,关键在于对编程规律与必备知识基础的把握程度。 最重要的是要掌握原理。在开发过程中所进行的各项具体活动与工作步骤,其背后都是有道理的,理解清楚了这些道理,在整个软件开发过程中该做什么,不该做什么,先做什么,后做什么,也就心中有数了。 编了这么多年的程序,我意识到其实学习软件开发技术的过程就是一个学会做事方法的过程。例如,在开发软件时,要“分而治之”、“步步为营”、“先局部后整体”、“合理安排开发次序”、“养成良好的编程习惯”等,这不仅仅是程序设计的技巧,也是做好编程之外许多其他工作所需要的。 在学习与掌握软件技术这一过程中,可以锻炼一个人的许多基本素质,如思维周密、意志坚强、学习能力、创新精神等。如果一个人能在竞争空前激烈的 IT 业凭借着高素质站稳脚跟,那么,可以很有把握地说,如果他转向其他行业,同样是一个优秀的人才,也会闯出自己的一番天地! 在许多计算机技术书籍中,出现了大量的技术术语,对于不熟悉这些术语的读者而言,这无疑加大了阅读的难度。对于这些计算机术语的表述,如果强调其在理论上的科学性与严谨性,则往往不易于理解,这在很大程度上限制了这些知识的传播、普及和应用。因此,本书对这些术语大都采用了一种通俗易懂的方式来表达,甚至使用了不少比喻手法来阐明其内涵。这种表达方式虽易于理解,但不免在科学性和严谨性上有所不足,读者如果需要科学而精确的定义,请自行查阅相关的科技文献。强调一下,本书是一本志在普及软件开发技术的专业书籍,与传统的工程技术专著和计算机科学理论教材不同,阅读时不要像中学学习数学一样,每个字都不放过,而应将重点放在形成对软件开发过程的直观理解和感性认识上。 对于一个具体的软件开发者而言,只有被理解了的知识才是真正有用的知识,无法理解的知识是毫无用处的。笔者写书的主要目的是让读者能迅速地汲取书中所提供的知识,尽量做到 “用大白话讲述复杂的技术” ,因此在文字上追求深入浅出,但是否真的做到了这一点,还得由读者来做出评价。 知识的获取与掌握是有其客观规律的,一般而言,具体的知识易于理解,而抽象的知识则难于把握,在学习过程中,应遵循“具体 → 抽象 → 具体 →……”这样一个无限循环的过程。 如果某人对一门学科所知不多,却指望他能通过理论学习迅速地把握这门学科,这就违反了人类认识世界的客观规律。可惜的是,目前中国教育体制中普遍采用的让学生重点学习抽象理论而忽视具体实践的做法,造成了大批的学生既没学好理论,也没打好必要的实践基础。 我认为,只有建立在实践基础之上的理论学习才是真正有效的学习。因此在整个计算机技术的学习过程中,应该把开发实践作为一条主线,由它串起所有的计算机理论。如果把计算机技术中的各个子领域看做是一个个珍珠,开发实践就是那根把所有珍珠串成项链的丝线。没有这根线,学习各门计算机课程得到的不过是一颗颗零散的珠子,价值有限。 但是最重要的是实践啊!!!
求采纳
如何学习编程
系统学习教材
如何读教材就有学问了。很多同学读教材非常仔细,每一个细节都要搞得非常清楚,这样慢慢推进会让战线拉得非常长,读一本教材大概要花一两个月的时间。对于这些同学,经常出现看第五章的时候已经把第二章的内容忘得差不多了。这样学习最大的问题就是虽然把细节知识点搞到非常清楚,但由于时间太长,让这些知识点相互间无法联系起来形成体系,这样既不利于理解也不利于记忆。
我给同学们的建议是要由粗向细地阅读教材。一般分三个阶段:
粗读
粗读就类似于囫囵吞枣地读。对于一本入门级的教材一般400到500页的样子,在两周内快速通读一遍。阅读过程中,对于不是太清楚的知识点可以跳过,知道有这么回事就行。这样读一遍之后,你会发现自己虽然依然不怎么会写代码,但基本已经知道编程是怎么回事了。现在可以进入下一个阶段。
精读
在这个阶段里,要仔细把教材重新阅读一遍。在这一遍里,重点了解每一章里介绍的编程方法,能够在计算机上把实例代码调通就达到要求。最好把课后习题有关上机练习的部分都自己完成一下。至于那些你还不清楚究竟如何去用的冷门方法,可以不用掌握。这个过程耗时比较久,大概2个月左右。这个阶段完成后,你已经能够用某种语言完成一些最基本的功能了。
贯通
最后这个阶段就是融汇贯通的阶段。在第二遍结束后,基本的功能你已经都掌握了,但可能对于大部分功能你还不知道他们除了写例子程序还有什么用。或者你干脆就忘记了都学会了那些方法。接下来,你需要在互联网上找一些基础的编程实例,在学习这些实例的过程中,你会发现涉及到的很多东西你都了解过,但又有些模棱两可,这时候你就要像查资料一样回到教材中认认真真、仔仔细细地去研读相关的知识点,把它完全吃透。
这也是一个反复的过程,在你学习了一些别人分享的实例内容后,你还可以自己按照兴趣完成一些小工具之类的东西。一段时间后,你会发现,你已经基本掌握了一门编程语言。
敲代码
在编程学习的过程里,写代码是非常重要的东西。即使对于同一段例子程序,读一遍和自己敲一遍的效果都是天壤之别。敲代码的过程是你对编程知识的二次思考的一个过程,同时还能帮助你建立对编程语言的肌肉记忆。就我而言,一些基础的代码片段都是不用思考就能敲出来的,这就是肌肉记忆。
另外,在代码编译和寻找Bug的过程能够帮助你更深入地理解和记忆。敲得多了,很多知识点自然就记住了,压根不用那么刻意地学习。
拓展学习
教材里介绍的东西往往是有限的,当你掌握到一定程度的时候,你需要继续丰富自己的知识和技能。最好的方法就是自己设计一个小工具,然后用掌握的知识去实现它。在这个过程中,你一定会遇到很多问题不知道该如何实现,这时,解决问题的欲望会推动你通过各种渠道去寻找解决方法。当你最终完成了这个小工具时,你会发现你的编程能力已经上升到了一个新的水平。
编程怎么学。
1、首先要明确自己的学习目的,为什么要学习编程。如果是要考级,那么建议学VB,因为它语句比较简单,易上手;如果是真的要掌握一项技术搞研发之用,那么建议学习C++或Java,因为它们语句功能很强大,虽然难度大一点但很实用;
2、选择自己要学习语言种类,如VB,C++,Java等
3、最好找一个辅导班配合书本同步学习,因为程序的问题如果自己只是看书的话很难理解,有前辈指点会有事半功倍的效果;
4、语句和循环是最基本的结构,所以无论学习任何语言都要把它们掌握好,这是在学习过程中一定要注意的;
5、一定要多上机操作。程序是抽象的,有时看程序看的懂,但自己去编却不一定能编的出来;而有时候虽然程序没看懂,但如果经常着手去编,就会非常熟悉该程序用的时候应该怎么去处理,时间久了自然就理解了;
6、有了一点的操作基础以后,就要去背一些简单的语句体了,这些小的语句在你以后编的大程序里是基础的基础
7、最后就是独立编程了,看到一个编程要求之后,首先要在脑中有一个大体的轮廓,独立构思,不要看参考揭示,只有这样才可以达到真正的训练目的,才可以一步步地把思路培养出来
总之呢,学习编程一定要树立信心,首先从思想上就不要去害怕它,只有以此为前提,才可以学的更好。