
1 程序员至少要学一门程序设计语言,这样才能开始做点什么。主流的程序设计语言一般都有一本圣经级别的书,例如 C 语言中, K&R 的 The C Programmer Lanugage,C++ 中的 C++ Primer, Java 中的 Thinking in Java。扎扎实实地选一本好好学习一下,把习题都做一遍,反复 阅读,掌握书中的知识点。还有一些书可以增强对这些语言的理解,例如 C 专家编程,C 和指针这些,还有 C++ 中的 Effective C++, Java 中的 Effective Java。
2 一个程序员,至少要精通一门语言,无论是 C, C++ 还是 Java 还是其它。所以除了掌握这门语言的基本知识外,要做到精通,还需要其它 两个方面的知识。一是语言标准,关于语言核心的一切都在这里面,不熟悉语言标准怎么敢说精通。另一方面是标准库,要经常读语言标准库, 确保自己了解标准库的方方面面,不至于要用到一个东西时,标准库里有而自己不知道。
如何去学习:
1 只学程序设计语言本身无法成为出色的程序员,就像你熟悉字典里每一个字,并不说明你是一个优秀作家一样。能用精通的语言写出有用的程序,就要学习领域知识。无论是三大浪漫的 *** 作系统,图形学,编译器,还是做其它领域,总有一些领域知识是必须要掌握的。很多领域知识都有一些基础的文档,要成为领域内的专家,就要反复阅读这些基础的文档。
2 除了程序语言本身以及领域知识外,还有一些通用的知识是非常有必要了解的。假如我们要开发一个软件,现在你已经精通了语言以及领域 知识,那么就意味着一定可以开发出优秀的程序吗?不一定。你还要保证你写的程序是高质量的程序。
一是开发效率,二是运行效率。
开发效率
与开发效率相关的东西很多,例如程序的可读性,可维护性,正确性。从这两个方面,又可以衍生出代码风格,高内聚,低耦合,设计良好的测试,设计模式等等问题。需要阅读 《代码大全》,《重构》,《设计模式》,《编写可读代码的艺术》这一类的书籍。光阅读还不行,还需要在编写程序的过程中,不断地思考,实践书中说的内容。
运行效率
与运行效率相关的东西也不少,例如如何写出编译器友好的程序,这一点和精通程序设计语言本身以及了解编译器特性有关系。另一方面,是与并发编程相关的,要提高程序运行效率,除了程序本身之外,如何利用并发提高运行效率是又一个重要的内容。
大学英语-不要觉得好笑。我极力推荐这门课程是因为没有专业文档的阅读能力是不可想象的。中文的翻译往往在猴年马月才会出来,而现在的许多出版社干脆就直接把E文印刷上去。学习的方法是强迫自己看原版的教材,开始会看不懂,用多了自然熟练。吃得苦下得狠心绝对是任何行业都需要的品质。
计算机体系结构和汇编语言-关于体系结构的书遍地都是,而且也大同小异,倒是汇编有一本非常好的书《80x86汇编语言程序设计教程》(清华大学出版社,黑色封面,杨季文著)。你需要着重学习386后保护模式的程序设计。否则你在学习现代 *** 作系统底层的一些东西的时候会觉得是在看天书。
计算机 *** 作系统原理-我们的开发总是在特定的 *** 作系统上进行,如果不是,只有一种可能:你在自己实现一个 *** 作系统。无论如何, *** 作系统原理是必读的。这就象我们为一个芯片制作外围设备时,芯片基本的工作时序是必需了解的。这一类书也很多,我没有发现哪一本书非常出众。只是觉得在看完了这些书后如果有空就应该看看《InsideWindows2000》(微软出版社,我看的是E文版的,中文的书名想必是Windows2000技术内幕之类吧)。关于学习它的必要性,ZDNET上的另一篇文章已经有过论述。
数据结构和算法-这门课程能够决定一个人程序设计水平的高低,是一门核心课程。我首选的是清华版的(朱战立,刘天时)。很多人喜欢买C版的,但我觉得没有必要。C的语法让算法实现过程变得复杂多了,而且许多老师喜欢用模块这一东西让算法变得更复杂。倒是在学完了C版的书以后再来浏览一下C的版的书是最好的。
软件工程-这门课程是越到后来就越发现它的重要,虽然刚开始看时就象看马哲一样不知所云。我的建议是看《实用软件工程》(**,清华)。不要花太多的时间去记条条框框,看不懂就跳过去。在每次自己完成了一个软件设计任务(不管是练习还是工作)以后再来回顾回顾,每次都会有收获。
Windows程序设计-《北京大学出版社,Petzold著》我建议任何企图设计Windows程序的人在学习VC以前仔细的学完它。而且前面的那本《InsideWindows2000》也最好放到这本书的后面读。在这本书中,没有C,没有GUI,没有控件。有的就是如何用原始的C语言来完成Windows程序设计。在学完了它以后,你才会发现VC其实是很容易学的。千万不要在没有看完这本书以前提前学习VC,你最好碰都不要碰。我知道的许多名校甚至都已经用它作为教材进行授课。可见其重要。
上面的几门课程我认为是必学的重要课程(如果你想做Windows程序员)。
对于其它的课程有这样简单的选择方法:如果你是计算机系的,请学好你所有的专业基础课。如果不是,请参照计算机系的课程表。如果你发现自己看一本书时无法看下去了,请翻到书的最后,看看它的参考文献,找到它们并学习它们,再回头看这本书。如果一本书的书名中带有“原理”两个字,你一定不要去记忆它其中的细节,你应该以一天至少50页的速度掌握其要领。尽可能多的在计算机上实践一种理论或者算法。
首先要学习什么?
我觉得可以先选一门简单的语言进行学习,这样可以先对编程有一个初步的认识,我学习的第一门语言是c,学得不精,简直就是入门中的入门。我觉得c、java、Python都是不错的入门语言,书籍可以直接百度 ----入门书籍。
然后这样一边认识编程,一边去了解自己想开发的东西需要什么技术,比如开发安卓要用java,网站要>
我认为最重要的就是尽快选一个语言开始学习吧!
给自学成才的新手程序员的六个建议
1、让编程成为一个习惯
想要培养一项技能的最好的办法,就是将他融入到我们的生活并成为我们的爱好。其实说白了,就是让这个爱好成为一个习惯,一天不去做这件事情,都会觉得少了什么。在不知不觉中,这个习惯会像滚雪球一样积累起来。
对我来说,养成这种习惯首先就是要对“拖延症”说不。比如,你想锻炼下自己的写作能力时,但是没有好看的本子,没有好的灵感,没有安静的环境总之就是找各种理由一拖再拖,最后就不了了之了。但仔细想想等你有了好看的本子,舒适的环境就能写出好的文章吗?不!我很明确的告诉各位,文章的功底是随着你不断的积累而成的。所以,当我们决定去做某件事情,请立刻!马上!现在就要开始行动!
接着从小事入手,如果我决定开始跑步,那么最初只会要求自己每周跑两、三天。虽然看起来要求低,但这样的做法更容易长期坚持,且不会被其它因素所轻易干扰。
同样的思路也适用于学习编程。每周拿出几天,每天拿出几个小时,编程学习就这样慢慢步入正轨。如果大家觉得没心情阅读编程教材,没关系,视频网站上的技术讲座能够起到同样的作用。
2、把工作拆分成小块
对待编程工作,我们没必要像健身狂人那样一口气做到筋疲力尽。与其直接编程2小时,我们完全可以先做25分钟、而后休息5分钟,整个过程重复4次。很明显,25分钟这样的短周期更容易坚持也不会带来多少压力。
不过这样的方式应该配合更为灵活的执行思路。如果您感觉状态很好,而25分钟才刚刚完成热身,那就继续做下去并努力让自己抓住这种状态。
另外要向大家推荐蕃茄工作法,这是种学习新型技能的良好机制,因此推荐各位认真了解。
3、阅读别人的代码
经过这几年的编程学习,我认为想要提升编码水平的最佳途径就是多看、多写,然而阅读别人的代码也确实是快速提升代码水平的一个技巧。
4、寻找良师益友
5写技术文章
如果大家学习了一种新的编程概念,但不能确定自己是否已经真正掌握,可以写技术博文加以检验。一来可以提高自己的编程水平,二来也能提高自己的知名度,将来找工作也会比别人多一个机会。
6保持耐心
对于人生来说,其中任何目标的实现都离不开耐心。编程学习就如其它任何学习任务一样,都需要反复努力并投入大量时间。
在这个过程中,您一定会经历高潮与低谷——别被这些曲线影响了心情。接受已经发生的一切,并尽可能避免其中不好的部分。就像打高尔夫球一样,我们的手感总在不断浮动,但只要坚持到底,您最终总能成为一个大神呢~
展开全部
基础课程包括:计算机硬件基础、计算机网络基础、 *** 作系统、计算机组成原理、计算机体系结构、数据库原理、软件工程、离散数学、算法设计与分析、数据结构、编译原理
编程语言可以根据需要选择,底层开发人员必学:汇编语言、c、c++;web应用表示层开发人员:html、xml、javascript、jsp(或asp,php)等;普通应用程序开发:c++、vb、net(其中包括多种语言,可根据现有基础选择)、java等。
如果你是学生,或者如果你有充足的时间。我建议你仔细的掌握下面的知识。我的建议是针对那些希望在IT技术上有所成就的初学者。同时我还列出了一些书目,这些书应该都还可以在书店买到。说实在的,我在读其他人的文章时最大的心愿就是希望作者列出一个书单。
大学英语——不要觉得好笑。我极力推荐这门课程是因为没有专业文档的阅读能力是不可想象的。中文的翻译往往在猴年马月才会出来,而现在的许多出版社干脆就直接把E文印刷上去。学习的方法是强迫自己看原版的教材,开始会看不懂,用多了自然熟练。吃得苦下得狠心绝对是任何行业都需要的品质。
计算机体系结构和汇编语言——关于体系结构的书遍地都是,而且也大同小异,倒是汇编有一本非常好的书。《80x86汇编语言程序设计教程》(清华大学出版社,黑色封面,杨季文著)。你需要着重学习386后保护模式的程序设计。否则你在学习现代 *** 作系统底层的一些东西的时候会觉得是在看天书。
计算机 *** 作系统原理——我们的开发总是在特定的 *** 作系统上进行,如果不是,只有一种可能:你在自己实现一个 *** 作系统。无论如何, *** 作系统原理是必读的。这就象我们为一个芯片制作外围设备时,芯片基本的工作时序是必需了解的。这一类书也很多,我没有发现哪一本书非常出众。只是觉得在看完了这些书后如果有空就应该看看《Inside Windows 2000》(微软出版社,我看的是E文版的,中文的书名想必是Windows 2000 技术内幕之类吧)。
数据结构和算法——这门课程能够决定一个人程序设计水平的高低,是一门核心课程。我首选的是清华版的(朱战立,刘天时)。很多人喜欢买C#版的,但我觉得没有必要。C#的语法让算法实现过程变得复杂多了,而且许多老师喜欢用模块这一东西让算法变得更复杂。倒是在学完了C版的书以后再来浏览一下C#的版的书是最好的。
软件工程——这门课程是越到后来就越发现它的重要,虽然刚开始看时就象看马哲一样不知所云。我的建议是看《实用软件工程》(**,清华)。不要花太多的时间去记条条框框,看不懂就跳过去。在每次自己完成了一个软件设计任务(不管是练习还是工作)以后再来回顾回顾,每次都会有收获。
Windows 程序设计——《北京大学出版社,Petzold著》我建议任何企图设计Windows 程序的人在学习VC以前仔细的学完它。而且前面的那本《Inside Windows 2000》也最好放到这本书的后面读。
在这本书中,没有C++,没有GUI,没有控件。有的就是如何用原始的C语言来完成Windows 程序设计。在学完了它以后,你才会发现VC其实是很容易学的。千万不要在没有看完这本书以前提前学习VC,你最好碰都不要碰。我知道的许多名校甚至都已经用它作为教材进行授课。可见其重要。
上面的几门课程我认为是必学的重要课程(如果你想做Windows 程序员)。
对于其它的课程有这样简单的选择方法:如果你是计算机系的,请学好你所有的专业基础课。如果不是,请参照计算机系的课程表。如果你发现自己看一本书时无法看下去了,请翻到书的最后,看看它的参考文献,找到它们并学习它们,再回头看这本书。如果一本书的书名中带有“原理”两个字,你一定不要去记忆它其中的细节,你应该以一天至少50页的速度掌握其要领。尽可能多的在计算机上实践一种理论或者算法。
你还可以在CSDN上阅读到许多书评。这些书评能够帮助你决定读什么样的书。
最好是边学边练,遇到问题有人解答,程序员主要就是敲代码,多做项目比较好,有问题遇到了先自己解决,不行了再问老师。自学的话自己找一些资料,最好全套,带项目,可以到尚学堂官网下载免费的资料。
很多人刚开始接触计算机编程时,觉得编程很难!其实计算机编程并没有你们想象中的那么难,之所以你们觉得很难,是因为你们刚开始接触一门比较抽象且枯燥无味的新鲜学科,一时无法理解它,说实话,计算机编程入门还是比较容易的,但是想要精通,成为编程高手就没那么容易了。
下面分享一些学习经验及技巧吧:
(1)计算机编程语言有很多,C语言、C++、C#、java、Python、php、VB以及数据库开发语言SQL、VisualBasic等,根据个人喜爱及学习目的进行选择吧。学习嵌入式系统开发软件、硬件底层编程着重以C语言为主,比如单片机、DSP、ARM、PowerPC等编程都是以C语言为主;若想学习安卓系统程序开发,则学习java;若想学习人工智能、爬虫、数据分析、Web开发等,建议学习Python。java、Python以及php是目前最流行的语言,若想学习计算机编程,可从其中一门学起,只有好处没有坏处,可以用得到的地方很多。
(2)学习计算机编程,不要光看书,要多动手!计算机编程属于一门技能,只有多动手敲代码才能熟能生巧。遇到想不明白的地方不要气馁,要有一种求知欲,可以网上多查阅资料,看得多了慢慢就掌握了。看不懂可以到一些比较知名的计算机编程论坛学习,论坛上会有很多编程技术以及相关经验分享,或者网上找一些免费的教学视频,跟着视频学习,比如百度传课、网易云课堂、腾讯课堂等,有很多免费的视频教学。
(3)感觉自己理解得差不多了之后,最好找一些相对比较简单项目,自己变成开发一个系统,实现相应的功能,不但能够检验自己的水平,还能提高自己对编程的兴趣。
总结:计算机编程就是一门计算机语言,多看、多动手、多练习,慢慢就会觉得编程其实并没有想象中的那么难了。学习一门技术可不是三两天就能学会的,只要自己能够沉得住气,静下心来学习,其实并不难。
以上是本人的回答,答题不易,如果觉得还可以别忘了点个赞哦!若还有什么不明白的地方请评论区下方留言,若想了解更多相关知识,请关注本头条号,会持续更新内容,谢谢支持!
1、兴趣是最好的老师
建议先找个老师,带你看下编程实现的一些案例之美,不要太复杂的例子。简单点就行,比如:从1000个Excel中提取特定字符串行、实现某些自动化任务。这些如果是人工手工去做,可能要多个人要花好几天才能完成,完成的结果可能因人为疏忽,还存在遗漏错误等情况。用程序实现结果准确无误,可能几个小时就完成了。从而发现编程的强大之处,感觉编程解决了某个问题好有成就感,兴趣爆增^_^。
2、跟着案例学习
首先,认识下语言的基础语法、关键词,变量、流程控制语句之类的。这些知识做下笔记,因为比较枯燥乏味。要常用才会越用越熟悉,否则这周你记得,一个月后就忘记差不多了。
其次,了解案例的实现思路。具体代码如何实现的,进而理解代码模仿代码。从而调试代码的执行流程,数据流向等。
再次,根据自己的思想,改写代码以实现自己想要的另一个功能。这点很重要,编程不是一味的模仿,需要有自己的思想。能实现自己的功能,基本上你已经算入门了,恭喜恭喜(^_^)。
3、保持耐心
不建议初学者按照填鸭式的一张一张的学习编程基础,如数据结构、离散数据进制转换等,这些知识非常的枯燥,不需要全部学习。了解其含义认识就行。后面学习案例的时候,遇到了在回到基础教程中学习就行。这样印象更深刻,而且深刻认识到这个知识点的应用。而且书本上基础知识基本讲的非常全面,你所在领域编程可能只用到其中的40%知识,好的可能你用不到。初学者填鸭式的学习很容易失去信心而放弃。
学习过程当持之以恒,切忌三天打鱼。当然在这个过程肯定有高潮与低谷,要喜欢适当放松解压,劳逸结合。
4、其他建议
广交良师益友,你能获得更多的思维方式,扩展你的眼界与人脉。
写技术文章、博客等,人的记忆力是有限的,很多我们非常熟悉的知识,长期不用就会进入慢慢的遗忘区,查看笔记我们能很快的恢复记忆。
多阅读别人的代码,从而借鉴优化自己的代码,多参与开源项目,编程实现自己的一些想法,提高自己解决问题的能力。
树立一个观念,在人使用的语言和机器使用的语言之间做对比,机器语言很死板很简单。
首先:凡事觉得编程麻烦的基本都是因为基础不好,静下心来,把所有的基础打扎实,从最基础的语句、算法、结构等牢牢抓住。
第二:任何复杂的程序都是由基础的算法构成,在做大的工程之前懂得把框架设计好,每一个模块功能话,久而久之,你脑子里就会形成一种概念,但凡再遇到类似的东西,瞬间就有了思路,至于边边角角的语法和是否美观,也要在一次次编程中养成良好的代码习惯
计算机编程有很多方面,你最好简单了解下编程的方向(这个可以上网了解下),在决定学习哪方面的编程,一般方向确定后,你可以选择自学(这个时间成本还是很高的,而且你要能管住你自己):也可以找个好的培训机构。
以上就是关于初学程序员要掌握些什么,要怎么学习全部的内容,包括:初学程序员要掌握些什么,要怎么学习、请问如何成自学为一名软件工程师和程序员、要做程序员需要学会什么等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)