① 程序员需要学些什么
程序员的岗位需求很多,例如大型网络公司、软件开发公司等等都需要程序员。
程序员需要学习:
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很多时候也用于动态网站的开发。在很开发项目都会使用集成开发的方式,同一个项目里面使用多种开发语言,各展所长,同步开发。
但所以在刚入门的时候,建议先为自己选择一种合适的开发工具,“专注地投入学习,全力一击”。
会编程、会计算机语言就能加入互联网发展大潮中,享受数字经济发展的红利,一时间社会上的程序员培训机构都变得格外火爆。
但是现在,专家的数据分析结果告诉你:若想跟上数字经济发展的步伐,光会编程可不行,这个行业现在紧缺高端的、综合型人才。
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、《活着》
② 一年程序员经验做培训教师好还是接着做程序好
从你的描述中可以看出,你个人的意见比较偏向作程序员的.我个人认为作程序员你可以积累经验,同时干的好的话一个项目可以让你身价百倍的,那时你的选择不只一两个吧.或是说你先往管理方面努力,等以后你想工作轻松点稳定点的话,在从事教师那决对比现在强.教师的工作也许比现在教师的工作的待遇还好啊!
③ 打算去传智培训,请问大家是做程序员前途好,还是学网络营销待遇好
这样的选择关键还是看你的能力和兴趣爱好
能力:编程学的好的话就做程序员。差内一点就做测试工程师,容再差一点就做软件实施工程师
兴趣爱好:比较内向的话就做程序员,组织能力比较强比较活泼外向的话就做软件实施工程师
我给个比喻吧:你要建一座房子,那么软件工程师相当与总指挥,而程序员相当与建设的工人,在这个工地上既不能没有软件工程师也不能没有软件程序员。他们是一个团队。在这个过程当中一个软件工程师以前绝对是一个优秀的程员。序程序员一般要掌握各种语言以应用。而软件工程师,要对一个软件项目进行分析,分析它的框架,分析它要用什么语言来写,分配给一个小组中每个程序员应该做什么。然后还要对软件进行测试,是否达到预期的效果,是否会出现异常,哪些地放需要改进。虽然这两个岗位看似是有领导者和被领导者的区别,不过薪资待遇的话还是看能力,好的程序员会比工程师拿的工资高的多的。
还有一点儿需要提示楼主,既然是学习软件的,就不要去老想着其它专业更好,努力的学以致用,在本行业里有所建树吧。能力强的人在什么岗位上都是会发光的。加油!:)
④ 经过四个月的培训真的能当程序员么
为什么一定要当程序员呢?据我所知,一般程序员工资不高,工资高的程序员可不是4个月培训出来的
⑤ 作为一名刚从培训出来的程序员,怎么找工作,感觉现在公司招人都要2年开发经验的,像我这种没经验的,如
你可以先到一些公司做程序的练习生或者实习生,熟悉一些就可以到外面找工资高一些的工作了。
⑥ 想转行做程序员,这样的培训模式可信么
现在有很多打着招聘程序员名义,实际上是让你进去交学费培训,往往这样的学习效果是最差的。
题主,如果你是没有基础,想做程序员的话,建议到专业的培训机构学习,学会了之后再参加工作。
在选择IT培训机构前,首先要认真的考虑以下两个方面:
一、你是否真的对IT开发感兴趣?
在做IT开发,整天和你打交道的只有两样东西:
1、电脑;
2、代码;
工作相对比较枯燥,而且要求逻辑思维比较强,所以首先要问你自己是否做好了万全的准备。
如果只是为了many many money,那么在以后的学习中,如果遇到困难,你就会想着放弃,不会坚持走下去。
二、正确的选择IT培训机构
如今IT培训机构数不胜数,但很多同学都不知道如何去选择。
1、合理的课程时间安排
(主要了解练习时间和上课时间的比例,做开发主要还是要多练。);
2、经验丰富的老师
(师资力量,他们说的再好,你也不会明白,应该主动要求试听,课间和老师多沟通,摸摸底。);
3、主打课程
(虽然每个培训机构都有很多课程培训,但是主打课程肯定是他们最看重的课程。)
4、培训室的地理位置
(环境肯定要自己喜欢,周围无杂音,是不是小班制,一对一教学。)
⑦ 各位大神,黑马程序员培训靠谱吗我是一个毫无基础的,如果我就读的
黑马程序员培训机构在行业内口碑还是不错的,是比较靠谱的。黑马程序内员培训的教学经验非容常丰富,设施设备齐全,此外,根据多年教学经验,黑马培训总结了一套先进、科学、高效的课程体系,帮助学员更好地进行培训。
黑马程序员培训机构富特色和竞争力的教学服务内容和方式,充分体现了黑马培训机构以学员为中心的核心理念。对学员学习情况的跟踪及指导。
从学员进校开始,就应该重点关注他们的学习方法,吸收的程度,及学习进度,督促和鼓励学员经常来校上机和上课,帮助学员最大限度地利用教学资源,在学习期内成功完成学习。
⑧ 想进入互联网行业做程序员,需要自己学还是需要
我先给您科普一下程序员是什么:
程序员是从事程序开发、程序维护的专业人员。我们一般将程序员分为程序设计人员和程序编码人员,但两者的界限并不非常清楚,特别是在中国。软件从业人员分为初级程序员、中级程序员、高级程序员(现为软件设计师)、系统分析员,系统架构师,测试工程师六大类。通过国家统一组织的考试,资格考试分为:程序员级(原初级程序员)、软件设计师(原高级程序员)以及更高水准的:信息系统项目管理师、系统分析师(原系统分析员)、系统架构设计师、网络规划设计师、系统规划与管理师。
再来说,当程序员,虽然挣得多,但是发际线和健康是不能保证的(再加一句,挣多前提是要先镀金):
“干得比驴累,吃得比猪差,起得比鸡早,睡得比狗晚,看上去比谁都好,五年后比谁都老。”很多程序员都曾这样感慨和抱怨过自己的生活状态。
国外曾做过一个统计:如果用是“糟透了”这样的词如果用来形容程序员健康的话,大多数非程序员都绝对认同“你已经病了”这样的理解。令人不敢相信的是,竟然有8.24%的程序员用这个词来形容自己的健康状态!
再来说一下它的职业要求:
一般的程序员都有四年的在专业领域的学习,需要一个在程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的。
大约有20%的人在这一领域的计算机科学和工程学拥有更高的学位。还有极少部分程序员是自学的,尽管一些专业性的学校或者综合大学可以提供,但是也需要一些别的途径来提供相关的人才。一个程序员虽然没有正规的学历,但是如果一个人拥有程序设计的深厚知识背景或者丰富的工作经验的话,那么他的机会要比有学历的应届毕业生大得多。
对于职业程序员,另外一个重要的方面就是,程序员需要不断提升自己的业务技术,他的技术必须一直保持在一个较高的水平,并且要不断发展,程序员也要寻找贸易的机会,要参加研讨会,在周刊上发表文章和接受职业教育,这些使程序员在自己的领域中分级或者不断并排前进。
我说一些题外话,中国的程序员大都是吃“青春饭”的,大部分程序员的黄金时代是20~35岁。到了35岁左右,一批又一批年轻程序员会带来巨大的竞争压力。首先由于软件行业的飞速发展,很多以前学的东西逐渐升级换代,而许多程序员由于长期于工作,学习新知识的效率必然下降。其次自己干了几年,薪水要求自然就高了,而年轻程序员工资又低、干活又快,当然会成为老板的首选;第三,35岁基本都已经成家了,要支撑家庭的生活负担,几乎连从头再来的勇气都不会有了。中国的老话说“长江后浪推前浪,前浪死在沙滩上”,这个历史的规律在软件开发行业体现的尤其明显和残酷,很多程序员必然要面对的结果就是降薪乃至失业。
希望我的回答可以给您带来一些帮助。
⑨ 程序员培训 要学多久 学it一年学费大概多少
如果零基础,复全日制学习,一般需要制4个月左右,时间太短应该学不会。有短期的4个月和长期的2年,费用一般在1万。
一般学习it技术需要花费的学费是不一样的,不同的地方收费标准也是不一样的,在学习信息技术的时候,初学者经常犯的错误是只要速度,而不注意基础知识的学习,这样无论是学习后期,还是参加工作后,都会觉得很难,因此一开始就要牢牢掌握计算机的基础知识,比如软件系统,计算机网络知识和数据库知识。
(9)做网络程序员经过培训扩展阅读:
程序员培训注意事项:
弄清楚整体流程,掌握全局才能形成清晰的思路,就如同写作文要先写提纲一样。
理顺各个模块之间的关系,才能更好的衔接各模块来完成相应功能。
做接口时,要考虑使用者的感受是否易用,并且尽可能少的向使用者暴露内部的实现过程,简化使用过程。
正常分支总是少数,大部分情况下都是异常分支,可以用2-8定律来形容,因此对异常处理很重要。