导航:首页 > 软件知识 > 程序员应该如何学习

程序员应该如何学习

发布时间:2022-02-23 07:09:52

A. 如何学习程序员

要看你喜好了,做什么都是有兴趣才能学好
想学程序 先确定要学什么 c c++ c# java pb vb等等
现在流行就是c#和java c++也可以 不过比较有深度
先学语法 再学程序实例 最后做项目
程序员 工资中上等吧 但是很辛苦
如果你认真学习 不到半年你就会学的很好

B. 如何自学成为程序员

如何学习自学编程的方式最好的莫过于在网络上面查找资源。

目前,网络上电脑资源多不胜数。其中有很多都是基础到精通的视频教程。通过视频讲解。让你明白重点知识。你通过查找一套适合自己的视频。然后看完是基本。

这里推荐几个可以在线学习的好网站:慕课、极客学院、传智播客、如朋网、网易公开课等等做笔记在进行看视频的过程中,一定注意要记笔记。

对视频中重点的部分进行截图,并加以文字解释。就形成了自己的笔记。这些笔记对于你来说很重要。通过记笔记的形式,你就不需要重新观看视频了。只需要复习的时候查看笔记就够了,这样就大大的节约了时间。

下面介绍一个记笔记的好软件:CherryTree多练习代码在视频中讲解的代码,我认为你至少需要自己写三遍以上。在写代码的时候,就用到了上面写的笔记了。通过看笔记截图,即可自己慢慢摸索写出来代码。当然练习到一定程度,就需要你适当的做个项目。巩固自己的知识。

程序员必备技能

1、熟练开发工具

做为一名程序员至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。

而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而JAVA即其相关的技术集JAVAOne很可能会成为未来的主流开发工具之一。

其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,CBuilder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码。

2、熟知数据库

为什么数据库是如此重要?作为程序员,他们自然有自己的理由:很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。

虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL,Postgres等。

3、了解操作系统

当前主流的操作系统是Windows,Linux/Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。

Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。懂得网络协议TCP/IP。

在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课。

网络技术已改变了软件运行的模式,从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,深入掌握TCP/IP协议是非常必要的。

至少,需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。

4、明白DCOM/CORBA/XML/WEBServices存在的意义

随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。

XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布式计算的基石之一。

5、不要将软件工程与CMM分开

大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员,一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合。

编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能,如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。

6、需求理解能力

程序员要能正确理解任务单中描述的需求。

在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求,要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。

7、模块化思维能力

作为一个优秀的程序员,他的思想不能局限在当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。

这样做可以使代码能重复利用,减少重复的劳动,也能使系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。

C. 程序员需要学些什么

程序员的岗位需求很多,例如大型网络公司、软件开发公司等等都需要程序员。

程序员需要学习:

1、掌握数据及其转换、数据的机内表示、算术和逻辑运算,以及相关的应用数学基础知识;

2、理解计算机的组成以及各主要部件的性能指标;

3、掌握操作系统、程序设计语言的基础知识;

4、熟练掌握计算机常用办公软件的基本操作方法;

5、熟练掌握基本数据结构和常用算法;

6、熟练掌握C程序设计语言,以及C++、Java、Visual Basic中的一种程序设计语言;

7、熟悉数据库、网络和多媒体的基础知识;

8、掌握软件工程的基础知识,了解软件过程基本知识、软件开发项目管理的常识;

9、了解常用信息技术标准、安全性,以及有关法律、法规的基本知识;

10、了解信息化、计算机应用的基础知识;

11、正确阅读和理解计算机领域的简单英文资料。

程序员必备技能:

1、熟练开发工具

做为一名程序员至少熟练掌握两到三种开发工具的使用,这是程序员的立身之本,其中C/C++和JAVA是重点推荐的开发工具,C/C++以其高效率和高度的灵活性成为开发工具中的利器,很多系统级的软件还是用C/C++编写。

而JAVA的跨平台和与WEB很好的结合是JAVA的优势所在,而JAVA即其相关的技术集JAVAOne很可能会成为未来的主流开发工具之一。

其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,CBuilder,则更好,这些开发工具减小了开发难度,并能够强化程序员对象模型的概念。

另外,需要掌握基本的脚本语言,如shell,perl等,至少能读懂这些脚本代码。

2、熟知数据库

作为程序员,他们自然有自己的理由:很多应用程序都是以数据库的数据为中心,而数据库的产品也有不少,其中关系型数据库仍是主流形式,所以程序员至少熟练掌握一两种数据库,对关系型数据库的关键元素要非常清楚,要熟练掌握SQL的基本语法。

虽然很多数据库产品提供了可视化的数据库管理工具,但SQL是基础,是通用的数据库操作方法。如果没有机会接触商业数据库系统,可以使用免费的数据库产品是一个不错的选择,如mySQL,Postgres等。

3、了解操作系统

当前主流的操作系统是Windows,Linux/Unix,熟练地使用这些操作系统是必须的,但只有这些还远远不够。

要想成为一个真正的编程高手,需要深入了解操作系统,了解它的内存管理机制、进程/线程调度、信号、内核对象、系统调用、协议栈实现等。

Linux作为开发源码的操作系统,是一个很好的学习平台,Linux几乎具备了所有现代操作系统的特征。虽然Windows系统的内核实现机制的资料较少,但通过互联网还是能获取不少资料。懂得网络协议TCP/IP。

在互联网如此普及的今天,如果您还没有对互联网的支撑协议TCP/IP协议栈有很好的掌握,就需要迅速补上这一课,网络技术已改变了软件运行的模式。

从最早的客户/服务器结构,到今天的WEBServices,再到未来的网格计算,这一切都离不开以TCP/IP协议栈为基础的网络协议支持,深入掌握TCP/IP协议是非常必要的。

至少,需要了解ISO七层协议模型,IP/UDP/TCP/HTTP等常用协议的原理和三次握手机制。

4、明白DCOM/CORBA/XML/WEBServices存在的意义

随着技术的发展,软件与网络的无缝结合是必然趋势,软件系统的位置无关性是未来计算模式的重要特征之一,DCOM/CORBA是当前两大主流的分布计算的中间平台,DCOM是微软COM(组件对象模型)的扩展,而CORBA是OMG支持的规范。

XML/WebServices重要性不言而喻,XML以其结构化的表示方法和超强的表达能力被喻为互联网上的“世界语”,是分布式计算的基石之一。

5、不要将软件工程与CMM分开

大型软件系统的开发中,工程化的开发控制取代个人英雄主义,成为软件系统成功的保证,一个编程高手并不一定是一个优秀的程序员。

一个优秀的程序员是将出色的编程能力和开发技巧同严格的软件工程思想有机结合,编程只是软件生命周期中的其中一环,优秀的程序员应该掌握软件开发各个阶段的基本技能。

如市场分析,可行性分析,需求分析,结构设计,详细设计,软件测试等。

6、需求理解能力

程序员要能正确理解任务单中描述的需求。在这里要明确一点,程序员不仅仅要注意到软件的功能需求,还应注意软件的性能需求。

要能正确评估自己的模块对整个项目中的影响及潜在的威胁,如果有着两到三年项目经验的熟练程序员对这一点没有体会的话,只能说明他或许是认真工作过,但是没有用心工作。

7、模块化思维能力

作为一个优秀的程序员,他的思想不能局限在当前的工作任务里面,要想想看自己写的模块是否可以脱离当前系统存在,通过简单的封装在其他系统中或其他模块中直接使用。

这样做可以使代码能重复利用,减少重复的劳动,也能使系统结构越趋合理。模块化思维能力的提高是一个程序员的技术水平提高的一项重要指标。

就业方向:

1、网络开发

现在网络已经成为世界通讯的一座桥梁,好像Javascript、PHP、Ruby这几类开发语言大部分是用作网络开发方面。

2、企业软件开发

JAVA、C#、VB这几类开发语言都实现了面向对象开发的目标,更多时候用于企业系统的开发。

3、系统软件

C语言、C++、Object-C这些软件更多是用在系统软件开发,嵌入式开发的方面。

当然,这分类不是绝对,像JAVA、C#、VB很多时候也用于动态网站的开发。在很开发项目都会使用集成开发的方式,同一个项目里面使用多种开发语言,各展所长,同步开发。

但所以在刚入门的时候,建议先为自己选择一种合适的开发工具,“专注地投入学习,全力一击”。


(3)程序员应该如何学习扩展阅读:

会编程、会计算机语言就能加入互联网发展大潮中,享受数字经济发展的红利,一时间社会上的程序员培训机构都变得格外火爆。

但是现在,专家的数据分析结果告诉你:若想跟上数字经济发展的步伐,光会编程可不行,这个行业现在紧缺高端的、综合型人才。

11月22日下午,清华大学经管学院互联网发展与治理研究中心与领英联合发布《中国经济的数字化转型:人才与就业》,揭示我国数字人才现状与趋势。

报告显示我国数字经济发展面临人才短缺的挑战,但这种短缺主要体现在拥有中高级专业技能数字人才的比例不高,拥有人工智能、智能制造等前沿技术的人才更是少之又少。

与美国、英国、加拿大等国家相比,中国的数字人才储备尚有很大差距。

此外,报告根据对人才需求的数据分析,结果显示我国数字人才的技能需求不再强调单一编程技能,更加看重技术、管理和领导力等综合技能。

2015年,我国从事信息传输、软件和信息技术服务相关工作的人数约350万,但其中中高端人才,特别是前沿技术的数字人才并不多。根据领英中国智库的研究,在人工智能领域,美国的从业者数量在85万人以上,印度15万,英国14万,中国只有5万多人。

报告负责人、清华大学经济管理学院副院长陈煜波教授表示,我国目前在大数据与人工智能领域人才缺口明显。

他解释说,目前中国85%以上的数字人才分布在产品研发类,而深度分析、先进制造、数字营销等职能的人才加起来只有不到5%,存在较大缺口,新兴技术人才和创新型人才培养方面存在滞后和不足。

这份研究报告的基础数据来自领英在中国的3600万个人用户,这些用户毕业于1.5万多所国内外院校,分布在36.4万家企业,拥有超过2.3万项技能。

陈煜波研究团队从中筛选了72万数字人才,多维度提取用户画像并跟踪其职业轨迹,以此预测不同地区的人才流向、雇佣率、受雇主欢迎的技能等人才趋势层面的信息。

陈煜波说,根据数据分析结果,整体来看,虽然编程技能和数据分析技能需求占据主导,然而随着数字产业走向成熟,企业除了强调编程技能,也逐步更加看重人才的技术、管理和领导力等综合技能。

近年间,项目管理、产品运营等“技术+管理”类技能的需求呈现出明显的上升趋势,懂技术、懂管理的人才被认为是“一将难求”。

领英中国代理总裁曾志恒也提醒,如果你有兴趣向数字职能转型,不能仅仅专注于自己的技术能力,沟通和领导力等软性技能将成为你脱颖而出的关键。

陈煜波希望这些研究结果能为教育行业和政府部门提供借鉴。他说,教育行业可根据职位的供需趋势更好地规划人才培养的方向,政府也可更好地了解人才流动方向、技术缺口等,以此制定有针对性的引才策略。

程序员岗位职责:

1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。

2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。

3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。

4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。

5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。

6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。

7、负责相关技术文档的拟订。

8、负责对业务领域内的技术发展动态进行分析研究。

相关书籍:

很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 9的书。

其实除了前9本之外,推荐数前30左右的书籍都算经典,笔者整理编译这个问答贴,同时摘译部分推荐人的评语。

下面就按照各本书的推荐数排列。

1、《代码大全》 史蒂夫·迈克康奈尔

2、《程序员修炼之道》

3、《计算机程序的构造和解释》

4、《算法导论》

5、《重构:改善既有代码的设计》

6、《设计模式》

7、《人月神话》

8、《计算机程序设计艺术》

9、《编译原理》(龙书)

10、《活着》

D. 程序员应该怎么学习

1、选定方向
编程的世界是多元纷繁的,大的方向就分前端开发、后端开发、移动开发、云计算、数据处理、智能硬件、物联网、虚拟现实等等,光编程语言都几十种。如果没有做过功课,贸然进入只会分分钟懵逼。所以最好是根据自己的兴趣爱好再结合市场前景,先选定一个方向,再选择一门语言,然后头也不回的深深扎进去。
2、优化学习方式
做好笔记,记录经验,我们大多数人并没有过目不忘的神技,很多时候我们学了也不一定马上掌握,需要过后花时间慢慢领悟,而且还有忘掉的风险,所以对于重要的知识点都要做好笔记。
3、多看官方文档,外文资料
互联网是一个更新迭代很快的行业,所有编程语言都会不断的更新新功能和修复旧Bug,网上查的资料很有可能是旧的解决方案,现在已经不适用了。所以最好最快的方法就是查看官方文档。
4、动手做项目
我们学习编程的最终目的就是用所学的做出具有一定功能的项目,而做项目又是最好的学习和巩固知识的方式。如果前期能力不足就先做一些简单的功能模块,一步一步慢慢来,不要一开始就要实现各种酷炫炸天功能,遇到不会的就在网上查, 现在互联网这么发达,获取资源也及其方便。
自学过程中的一些注意事项
1、要善于构建大的知识框架体系,不要执着于细枝末节的知识点。中国的应试教育培养出来的人都喜欢啃细节,对于自学来讲这是大忌,比如在遇到一个函数的时候,非要把这个函数的参数,返回值都弄得清清楚楚才肯罢休。
2、先学重要的知识点,用不到的可以暂时放一放,因为你时间有限,遇到比较难的知识点,如果不是特别重要的,就跳过去,当你哪天用到的时候再来好好的研究,带着问题去学习,你会发现学习难的知识点也没有那么痛苦。
3、要善于查资料,互联网就是最好的老师,遇到问题先网上查,至少能够解决你98%的问题,因为你遇到的问题别人肯定也会遇到,除非你已经到了高处不胜寒的境界。

E. 程序员入门应该怎么学

如果是想通过自学的方式、而不是上外面的各种培训班的方式来学习编写程序的话(在这里以 C 语言为例),那么最、最简单易行的方法就是:在自己的 WINDOWS XP 系统下面,安装一个 Microsoft Visual Studio C++ V6.0 编程环境。然后再购买一本难度适合自己的 C 语言教材,按照教材上面的每一章例题、以及每一章后面的练习题,亲自把书上的每一个源程序输入到电脑中,亲自上机编译、体会、调试通过、并运行每一个源程序。只有这样,你的编程水平才能够在一个较短的时间内,有一个较大的提高。

但是在这里有一个问题必须要注意的就是:任何一种高级语言(C、C++、Python、JAVA等)都只不过是一种编程工具而已,如果将来希望能够胜任大型软件开发工作,那么还必须要学习计算机软件专业的相关课程,例如:计算机操作系统、数据结构(各种排序算法、以及查找算法)、计算机算法及其复杂性分析、各种数学知识(主要用于在大型的软件项目中进行数学建模)等。否则的话,即使掌握了高级语言的编程,那也只能够编写一些小程序,绝对无法胜任大型软件的开发工作。

F. 一个优秀的程序员必须学习什么课程呢

一个优秀的程序员必须不断学习的课程:
1、专业的的理论教程,系统的知识学习面。
要成为一名出色的程序员,从数据结构、算法。数据库都需要系统全面的了解和认识,并可以灵活运用。对自己所从事的编程语言要灵活调用。
2、不断尝试,乐于挑战。
编程高手都是从不断的失败和尝试中走出来的,所以对于一个刚入门的新手来说,任务就是不断的去编程,发现自身存在的缺陷,以及更熟练的掌握各种数据接口的调试和数据调用的应用。
3、好学,不耻下问。
成功都是建立在无数次尝试的基础上的,同时也需要利用前辈们已经得出的一些规律,尽量的少走弯路。
4、保持良好的心态。
编程每天对着的都是一些枯燥的单词以及数据,所以保持一个良好的心态是至关重要的,只有拥有一个良好的心态,才是端正自己学习和勤奋的根本。
5、善于从生活中发现需求。
每一个程序都是为了满足网名的一种需求,所以发现网名的的需求,并把这种需求利用程序解决,可以极大的促进自己的职业发展。
6、扩大自己的视野。
编程的同时,我们也要紧跟时代的步伐,学习更多的前进的经验以及技术,更好的为自己所用。
以上,可以总结为《一个优秀程序猿的自我修养》。

G. 作为一个程序员,应该怎么利用时间。怎样去学习。

首先你说你已经是一个程序员了,那么工作时间就是一个可以学习的,主要看你怎样去工作啦,从所在的团队项目中多研究,多学学别人的好的开发思想,积累经验

H. 程序员如何学习

没有捷径,只有靠多写代码
但是要写有用的代码,不能老是写一样的,所以重构项目是一种很提升水平的经历,每隔一两年最好能参与一次这种优化代码的机会。
还有就是多读书,经典代码读物比如《代码大全》,这本书适合5年以内程序员看

I. 怎么成为一名程序员,要从哪里开始学起,先学什么在学什么

答:

首先你要清楚程序员也分很多种,从语言分,有C,C++,C#,JAVA,Delphi等等,你要考虑好弄自己向哪部分发展。

  1. 一般如果没什么理解可以从C语言学起,因为C语言比较贴切于机器语言,大学里面一般也都是先学C的,学好了C语言,可以触类旁通,更容易学其他的语言。

2.Java据说是现在最热门的(所有程序员都觉得自己用的那个语言最牛逼),IOS或者android学了可以做手机软件哦,Delphi和C#是用控件拖出自己想要的结果,然后在后台写代码的,不过有人说Delphi相对落伍了,但好些大公司还是在用Delphi来搭框架的。

3.选定好语言后,如果觉得自己理解能力动手能力超强的话,自己买本入门的书,或者网上看些教学视频,边看边实践。不过这个对于初学者来说真的挺难的,因为第一次的话,可能连环境都搭不好,用来编程的软件对初学者来说还是蛮麻烦的一种软件,不是这个不行,就是那个设置错了,或者连一些基础的窗口啊工程啊项目啊的概念都没有,网络起来又要答案一个一个看,浪费时间。而且还要自己搭数据库啊什么的,真的很难。有老师教的时候,还能挂科一大片的。不过入门了,之后就简单了,自己随便找本书,学学代码用法啊,照着打就可以了。

拓展资料:

程序员(英文Programmer)是从事程序开发、程序维护的专业人员。一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。

岗位职责:

1、对项目经理负责,负责软件项目的详细设计、编码和内部测试的组织实施,对小型软件项目兼任系统分析工作,完成分配项目的实施和技术支持工作。

2、协助项目经理和相关人员同客户进行沟通,保持良好的客户关系。

3、参与需求调研、项目可行性分析、技术可行性分析和需求分析。

4、熟悉并熟练掌握交付软件部开发的软件项目的相关软件技术。

5、负责向项目经理及时反馈软件开发中的情况,并根据实际情况提出改进建议。

6、参与软件开发和维护过程中重大技术问题的解决,参与软件首次安装调试、数据割接、用户培训和项目推广。

7、负责相关技术文档的拟订。

8、负责对业务领域内的技术发展动态进行分析研究。

网络词条 程序员

阅读全文

与程序员应该如何学习相关的资料

热点内容
新式家居产品有哪些 浏览:870
交易日送股一般多少个 浏览:95
小程序新零售是什么意思 浏览:277
听力差的男孩适合学什么技术 浏览:36
成果信息反馈承诺是什么 浏览:517
宁波机械技术服务有哪些 浏览:190
如何去代理一个团队 浏览:528
车辆保养需要登记哪些信息 浏览:254
信息学潜力测试考哪些内容 浏览:339
差额考察完了还有什么程序 浏览:599
哪些家电产品需要哪些认证 浏览:98
易语言什么是通用型数据 浏览:4
在哪里可以看股票实时交易 浏览:519
等额本息贷款债务优化怎么代理 浏览:381
铝厂化工技术员每天做什么 浏览:712
光遇账号如何交易 浏览:828
农谷种植产什么农产品 浏览:917
西充县哪些菜市场人多 浏览:173
有什么可以增强数据流量 浏览:340
陕西哪里有古币交易市场 浏览:296