第一篇:程序员入门要学多久
程序员入门要学多久
程序员入门要学多久,那要看你通过什么样的渠道去学习,而且还要根据个人的情况来定,比如说自制力、时间是否充裕、对程序员的热情。程序员入门学习的方式主要有两种:培训和自学。某种意义上讲视频教学也属于自学。
培训:市面上程序员入门培训的时间在3~12个月不等。只有个别的方向根据培训内容的不同在三个月以下、一年以上。而在3~12个月之间,又以四个月最为见长。这样的一个时间段里,如果培训机构靠谱些,再加上你个人的努力,是可以胜任编程类基础性的工作。
例如一些热门的编程语如Java、HTML、Python等等,培训时间基本都是四个月上下。这也是一些比较传统的IT行业方向,基本都是以一门单一的编程语言作为整个工作的重点。
而对于一些复合性较强、应用范围比较广的岗位方向从业的程序员,入门学习的时间都在4个月以上。
比如IT里的新兴行业大数据和底层信息安全等。
要想学好大数据最好是理工科成绩过硬,这样以后的发展天花板高得多。前期你要有编程语言的基础,后期要培训自己的数据思维、统计学思维。
而底层信息安全,入门就需要有几门编程语言做基础,中期的Windows原理方方面面知识、安全知识、最后的实战技能,是一个知识量众多的行业方向。
比如我们机构15PB信息安全教育,培训时间就是7个月。相信很多打算培训或培训过的小伙伴都会觉得时间很长,但是7个月,已经是在保证授课质量的前提下,能达到的最短时间了。
自学:由于个人自制力和悟性的不同,自学的时间也有长有短,就总体情况来说四个月的培训课程一般的自学时间都在一年以上。我们机构7个月的课程,如果个人自制力够好、悟性够高入门自学时间也要2~3年,深入一些时间就更长了。我们机构的大BOSS任晓珲,自学时间长达4~5年。
个人建议:不管程序员入门学习要学多久,最终的目的都是获得一份工作进入一个行业。
而要想快速而有效率的的进入一个行业,培训要比自学更合适一些,它能解决方向上的问题,避免自己在自学的过程中没有侧重点的去学习,对就业方面的问题也有一定的帮助。培训机构肯定比你了解掌握什么样的知识、什么样的技能能找到工作。
第二篇:php程序员入门必读
php程序员入门必读
php程序员入门必读:
1.概要:学习任何语言都需要多看、多想、多写、多问!写编程是一种熟能生巧的东西!学习PHP也一样,因为知识就那么多,你看多了就会觉得怎么都一样。
程序员就是炒冷饭的,一遍又一遍。代码多敲几遍就可以闭着眼睛写了,所以企业招聘都会问你写过多少行代码的!程序员最忌讳浮躁,有时候发现一段程序完全找不出错误,仅仅是因为少了或多了一个符号,程序员需要的是细心,粗心的人当不了程序员!
2.php参考手册是必须熟知的,有的新手会问一些很基础的问题,其实手册上面都有,所以建议新手先把手册看了,最好把常用函数抄几遍!再敲几遍手册里的代码。
当你把手册里的东西都熟悉了,你遇到问题的可能性就很小了。当然mysql手册,也要看一下,但可以不先看的那么细!至少要知道常用的sql语句,这是必须的!
3.觉得php最好的东西就是,网上能找的开源项目很多,而且一些都是大项目的。所以建议php程序新手可以看留言板代码,先熟悉常用的数据操作,然后可 以去看一下简单的企业网站或者博客,然后可以去研究一下ecshop之类,当你看懂这些,你可以去看看discuz,phpwind论坛源码,帝国,PHP168等开源CMS系统,里面的架构都是相当强悍的,当然这不是新手需要去做的,但是 总要有个做将军的理想!
4.要习惯,遇到问题自己先解决,在网络时代,要学会用百度,这是必须的。当你实在没法解决的时候再去寻求别人的帮助!
5.当你写完一个程序的时候,要学会分享出去,因为你是新手,你的程序也许会有很多不完善的地方,所以分享你写的程序对你更有益!多分享多交流!才
会让你写的程序更精!
6.记住,学了php你要不只是学会php,你要学会分析一个项目的实现方式或者一个程序的实现方式。都说算法是语言的基础,要学好php,你还得去学习和运用算法去实现你的程序,学会用算法可以用于任何语言,学会用php你只能用php.
第三篇:PHP程序员入门Plus
PHP程序员入门Plus
这篇文章和MySQL的那个一样,本文其实并不专指PHP,仅仅是因为搜索引擎的关系才用了这个名字。
我解除了很多新的不能再新的新人,发现新人的通病是不明白怎么做程序员,这是一个思想境界的问题,只能依靠顿悟,本文的作用也只是点拨,希望能对你有所帮助吧。
程序和语言
在我看来,哲学是一切知识的基础,艺术、语言、数学都是已不同的方式对哲学思想的表达,程序其实也是如此,它介于语言和数学之间。
程序,可以认为是过程和顺序的简称。和那句名言“万物皆对象”类似的,万事皆程序。如果说物是名词,那么事就是动词,所有的事都是有序发生的过程。我们不承认“莫须有”的原因导致的结果,只是可能我们还没有搞清楚而已。
也许你会认为C、Java、PHP、Perl之类的东西写出来的东西叫做程序,其实这只是表象。各种开发语言本质上和汉语、英语没有什么不同。也就是说,如果你能用汉语表达,那么就能用其他语言表达,最多可能需要借助翻译软件、词典等工具而已。对于C、Java、PHP来说,翻译软件可能没有,但是词典还是很容易找到的,那就是开发手册。不要迷信各种书籍、培训、视频,开发手册才是真正能帮到你并一直陪伴你的东西。
什么是程序员
程序员是指掌握了某种计算机语言的家伙,程序员可以把自然语言翻译为计算机可以识别的内容。没错,就是个翻译。
那么你就会问,我没吃过猪肉还没看过猪跑吗?翻译谁不会?可是为什么我还是写不出程序呢?
答案就是你还没顿悟。元芳你怎么看这句话知道吗?楼主你妈喊你回家吃饭这句话你知道吧?甄环体知道吗?都不知道?没关系,其实我的意思就是,你需要按照计算机的方式组织你的语言,这样的语言才能更容易的翻译为程序语言。
非程序员是没有这个觉悟的,这就是为什么开发之前都要进行需求分析的原因。客户告诉我们现实中发生了什么事情,需求分析的任务就是考虑怎么把这些事情在计算机上重现。
再举个例子,“我想在屏幕中间显示一个红色方框”就是客户的表达方式,而作为程序员,你应该这样理解这句话:使用代码为ff0000的颜色填充一个正方形并显示在屏幕上,且正方形距离屏幕顶部的距离和距离屏幕底部的距离相等,正方形距离屏幕左侧的距离和距离屏幕右侧的距离也相等,然后立刻抛出问题,正方形的边长是多少?客户如果回答50,那么我们就得到了一个常量,如果客户回答不一定,那么就知道边长是个变量。
这是一个矫枉过正的例子,现实中绝对没有这么二,但是其实差不多。
我该怎么做
计算机语言中的各种对象、函数其实就像是木匠手中的榔头和锤子。但是唯一的麻烦就就是:如果你是个木匠,我让你帮我做一套家具,你会明白一套家具至少包括柜子、床、书桌、椅子,因为你家有家具,而且你用过,并且知道大致的结构;可是你是个程序员,我让你帮我做一个电子商城,谁家有电子商城,谁用过电子商城(指后台),谁知道它是个啥东西拼起来的;这就是结症。
初学者最缺乏的是经验,经验依靠累计,不要去思考我学了半天还不会做网站的问题。网站是个统称,是个类,你应该已其实例为目标,比如,今天做个网页,展示一下我家的装修效果,明天做个网页发表一下我的学习经验,后天做个网页让大家给我留言。这种累积式必不可少的过程。
如果你还不理解,我真的没办法了。最后尝试用一种玄幻的风格告诉你答案:程序员就如修真者,而且是老厉害那种,言出法随,我让你输入6个字母作用户名你就不可能写5个,我让你填密码你就别想空着,只要你想,你就可以去做,别人喜欢不喜欢是别人的事(不过悲催的是给不给工钱也是别人的事)。
亲,加油吧,努力顿悟,早成正果!
如果你有什么意见和想法可以点击这里打开原文地址并通过回复的方式告诉我,只有注册用户才能回复哦。呵呵。
第四篇:程序员入门进阶手册
这篇文章,我主要是让你成为更为专业的入门程序员。请注意,此时,你可能需要读一些比较枯燥的书,但我想说,这些是非常非常重要的。你一定要坚持住。
编程技能
在系统地学习编程技能之前,我希望你能先看一下 “ The Key To Accelerating Your Coding Skills”,这篇文章会告诉你如何有效地快速提高自己的编程能力。然后接下来是下面几大块内容,但还只是入门级的。
编程技巧方面这个阶段,你可以开始了解一下 Java 语言了,我个人觉得 Java 是世界上目前为止综合排名最好的语言。你一定要学好这门语言。推荐《Java 核心技术(卷 1)》,除了让你了解 Java 的语法,它还会让你了解面向对象编程是个什么概念(如果你觉得这本书有点深,那么,你可以降低难度看更为基础的《Head First Java》)。然后,既然开始学习Java 了,那就一定要学 Spring,推荐看看《Spring in Action》或是直接从最新的 Spring Boot 开始,推荐看看《Spring Boot 实战》。关于 Spring 的这两本书,里面可能会有很多你从来没有听说过的东西,比如,IoC 和 AOP 之类的东西,能看懂多少就看懂多少,没事儿。
操作系统。这里你可以看看《鸟哥的 Linux 私房菜》,这本书会让你对计算机和操作系统,以及 Linux 有一个非常全面的了解,并能够管理或是操作好一个 Linux 系统。当然,这本书有很多比较专业的知识,你可能会看不懂,没关系,就暂时略过就好了。这本书的确并不适合初学者,你能看多少就看多少吧。
网络协议你需要系统地了解一下数据库设计中的那些东西,这里推荐慕课网的一个在线课程--“数据库设计的那些事”。每个小课程不过 5-6 分钟,全部不到 2 个小时,我相信你一定能跟下来。你需要搞清楚数据的那几个范式,还有 SQL 语句的一些用法。当然,你还要学习和使用一下数据库,这里推荐学习开源的 MySQL。你可以看官方文档,也可以看一下这本书《MySQL 必知必会》。 前端方面在你处理中文时有时会发现有乱码出现,此时需要了解 ASCII 和 Unicode 这样的字符编码。这里推荐一篇文章Character encoding。还有 Github 上的这两个 Awesome 仓库:Awesome Unicode 和 Awesome Code Points。
为什么转成 Java 语言?
相信你可能会问,为什么之前学习的 Python 和 JavaScript 不接着学,而是直接切到 Java 语言上来,这样会不会切得太快了。这是一个好问题,这里需要说明一下,为什么我会切到 Java 这个语言上来,主要是有以下几方面考虑。1.Java 是所有语言里面综合实力最强的,这也是为什么几乎所有大型的互联网或是分布式架构基本上都是 Java 技术栈。所以,这是一个工业级的编程语言(Python 和 JavaScript 还达不到这样的水准)。
2.之所以,没有用 Java 来做入门语言而是用了 Python,这是因为编程是一件比较费脑子的事,一开始学习时,兴趣的培养很重要。Python 比较简单,容易上手,能够比较容易地提起兴趣,而用 Java 则可能比较难。3.在你有了一些编程语言的基础后,有了一些代码的逻辑后,切到工业级的编程语言上来,更为专业地学习编程,是非常有帮助的。像 Python 和 JavaScript 这样的动态语言用着是很爽,但是,只有像 C、C++ 和 Java 这样的静态语言才可以让你真正地进阶。
4.对于一个合格的程序员,掌握几门语言是非常正常的事情。一方面,这会让你对不同的语言进行比较,让你有更多的思考。另一方面,这也是一种学习能力的培养,会让你对于未来的新技术学习得更快。很多时候,一些程序员只在自己熟悉的技术而不是合适的技术上工作,这其实并不好,这会让你的视野受限,而视野会决定你的高度。综上所述,这就是在入门的时候我故意让你多学几门语言的原因。
编程工具
编程工具方面,你需要开始学习使用下面这些工具了。
编程的 IDE。传统一点的,你可以使用 Eclipse。当然,我推荐你使用 Intellij IDEA。这两个工具都可以开发各种语言,但是主要用在 Java。如果你想玩得更时髦一些的话,使用 Visual Studio Code 也不错,这个工具潜力十足,用其开发 Python、JavaScript、Java、Go、C 和 C++ 都能得心应手(教程-本文发布时还基本没怎么翻译完)。
版本管理工具。版本管理工具是非常重要的编程工具。传统的有 P4、SVN、CVS 等,但都会被 Git 取代,所以,你就只用学习Git 就好了。学习Git 的教程网上有很多,这里我推荐非常系统的 Pro Git 第二版(如 果你觉得 Pro Git 比较枯燥的话,备选猴子都能懂的 Git 入门),然后你要学会使用 GitHub。关于一些 Git 环境安装和准备以及 GitHub 使用,你可以自行 Google(比如:这篇Github and Git 图文教程 或是这篇Git 图文教程及详解)。
调试前端程序。你需要学会使用 Chrome 调试前端程序,Google 一下会有很多文章,你可以看看 超完整的 Chrome 浏览器客户端调试大全。 数据库设计工具。你需要学会使用 MySQL WorkBench,这个工具很容易使用。相关的手册,你可以看一下官方文档。
实践项目
这回我们需要设计一个投票系统的项目。业务上的需求如下:
用户只有在登录后,才可以生成投票表单。投票项可以单选,可以多选。
其它用户投票后显示当前投票结果(但是不能刷票)。投票有相应的时间,页面上需要出现倒计时。
投票结果需要用不同颜色不同长度的横条,并显示百分比和人数。
技术上的需求如下:
这回要用 Java Spring Boot 来实现了,然后,后端不返回任何的 HTML,只返回 JSon 数据给前端。
由前端的 JQuery 来处理并操作相关的 HTML 动态生成在前端展示的页面。
前端的页面还要是响应式的,也就是可以在手机端和电脑端有不同的呈现。这个可以用 Bootstrap 来完成。
如果你有兴趣,还可以挑战以下这些功能。
在微信中,通过微信授权后记录用户信息,以防止刷票。 可以不用刷页面,就可以动态地看到投票结果的变化。
Google 一些画图表的 JavaScript 库,然后把图片表得风骚一些。
小结 上面那些书和知识你要看完,还要能理解并掌握,我估计你最少也要花 1-2 年左右的时间。如果你能够走到这里,把前面的那些知识都了解了,不用精通,能独立地做出上面的那些实践项目,那么,你就算是真正的入门了。
而且,你已经是一个 “ 全栈工程师 ” 的样子了,在这里我要给你一个大大的赞。如果这个时候,你对编程还有很大的热情,那么我要恭喜你了,你可能会是一个非常不错的程序员。加油啊!
上面的那些技术已经算是比较专业的了。如果你已经大致掌握了,我相信你可以找到至少年薪 20 万以上的工作了,而且你的知识面算是有不错的广度了。但是深度还不够,这个时候,是一个比较关键点了。
你可能已经沉醉在沾沾自喜的骄傲的情绪中,那么你也可以就此止步,加入一些公司,在那里按部就班地完成一些功能性的开发,成为一个搬砖的码农。你也可以开始选择一个方向开始深入。
我给你的建议是选择一个方向开始深入。因为你并不知道你未来会有多大的可能性,也不知道你会成为什么样的人,所以为什么不再更努力一把呢?
后面,我们就开始非常专业的程序员之路了。这也是一般程序员和高级程序员的分水岭了,能不能过去就看你的了。
第五篇:软件工程师要学多久
软件工程师要学多久
软件工程师确实是个让人艳羡的工作,每年都有大量的学习者,加入到软件开发的学习中来,很多有想法,却迟迟还未行动的人,都特别关注软件工程师的学习时间,那软件工程师要学多久呢?
其实答案不是唯一的,因为学习者的学历、学习能力的不同,那学习起来的接收能力肯定不一样,再加上每个学习者的基础也不尽相同,所以学习的起点也会不一样,那要讨论软件工程师的学习时间,我们不得不进行一下简单分类。
首先我们来说大学生,大学生的学习能力自然是没问题的,对于没有编程基础的大学生来说,如果选择一个知名大品牌的培训机构,差不多也就四五个月左右,就能熟练的掌握软件开发技术,同时在项目实战中,积累下相当于工作一年左右的工作经验,那像计算机专业的学生,可能只需要三个月就足够了,这对于大多数大学生来说,还是可以接爱的。那对于高中学历的同学来说,很多人就有了学不学得会的担忧,其实IT职业教育已经发展近十年了,在这个过程中,一些老牌的培训机构积累了丰富的办学经验,针对高中生的零基础班在培训市场上并不少见,很多高中毕业人群,也通过这种零基础培训班,最终找到了自己满意的工作,那这些学生的学习时间就要长一些,可能要一年的时间。
最后,我们不得不说一下初中学历的学习者,从现实情况来看,大多数初中生其实从来都没有考虑学软件开发,有的想学厨师,有的想学挖掘机,还有想学电焊工的,原因是初中生人群觉做软件开发太高端了,那做软件工程师,更是没想过的事。
当然,大品牌的培训机构,像北大青鸟广安门等,原则上是不招收初中生人群的,不过由于近年来,电脑越来越普及,很多初中学历的学生,对于电脑操作也是很熟练的,那只要学生能够通过学校的基本入学测试,符合学校招生要求,可由校长特批录取,事实证明,初中生也能学会软件开发,并且找到相关的工作,而学习时间跟高中生相近,也是一年多的时间。
总之一句话,只要你对于软件工程师有向往,并且愿意付出努力去认真学习,那你就能学出来,并找到满意的工作。