零基础应该选择学习 java、php、前端 还是 python?

什么样子的人适合学习编程?

在大众周围,总是充斥着各种如何学习编程的声音。许多人已经对于是否“每个人都应该学习编程”发表了自己的观点。其实编程这个事情,很多人有计算机专业相关和非计算机相关的区分,虽然确实有基础底蕴的差别,但是在努力的共性上还是一致的,有以下几个共性:

  1. 对编程求知欲,喜欢自己动手探索一些数据或者编程的东西。很多人入行都是听说程序员很赚钱就进来了,不过对程序并没有特别的兴趣,这类人在经历了短暂的培训之后,还是可以基本入行,但是他们基本还是在初级阶段,向中级晋升一般都需要主动性。有兴趣,并且有基础的才会比其他人更进一步。
    2.善于发现程序问题,并且自己想办法解决。编程最难的一点是找Bug,任何程序出现问题是正常的,关键是你具备发现问题和解决问题的能力。 3.对编程学习有持久和自学的耐心。很多人说编程跟武功一样,一日不练,武功全废。不能光凭借一时间的兴趣,简单的玩一下,然后问题很多,就问人。这种学习的过程是不科学的,问是可以的,但是最好需要有基本的解决。
    上面说的是一些通过习惯,有了上面的基础,然后再有英语基础、数学还不错、还是计算机专业,那就非常完美了。

而对于零基础我认为先学习JAVA。对于初学者来说,Java是一门非常友好的、容易入门、且实践应用广泛的语言。

  1. Java 的语法简单易懂。在所有JVM语言中,Java的语法属于比较容易理解的。它的语法法简单易懂,可读性非常强。
    2.Java 有良好的开放性社区。Java 是移动开发使用最广泛的语言。因为 Android 的开发主要使用的语言就是 Java,而 android 本身就是一个巨大的开放性社区。
    3.学习Java可以快速投入App应用开发。对于初学者来说,如果学习了一门语言,马上可以用来开发一些小app,那绝对是一件激动人心的事情。Java 是 Android 平台的官方语言。因此,在学会 Java 后,你马上就可以将所学投入到 Android app 开发中。对于初学者来说,这是一件很有用、酷炫的事情,有利于激励他们保持学习的兴趣。而且,做完的 Android 项目还可以写到简历中,帮助自己丰富简历内容,争取到更多的面试机会。 4.Java 在各大互联网公司里应用广泛在各大互联网公司里。Java的应用非常广泛。从 glassdor 随意搜索一下美国旧金山的 Java 开发职位,就有上万个。如果你在担忧就业问题,那么 Java 也是你的一个不错的开始。
    综上,Java是一门对初学者来说非常友好的语言,而且学完后很快可以投入实践应用。你完全可以到网上搜索教育平台如咕泡学院的视频教程进行自学。

一、如果是在校学生,务必要在学好基础的前提下,再考虑去进行下面的学习。Java基础首先去找一个Java的基础教程学习Java基础的时候,应该尽量多动手,很多时候,你想当然的事情,等你写出来运行一下,你就会发现不是这么回事儿。因此对于【第一部分】的推荐内容,目的是让你尽快成为一个可以参加工作的Java开发者,更适用于处于待业状态,包括一些在校生以及刚准备转行Java的同学。    等你写上几天程序以后,你往往会比较迷茫,因为你写的东西似乎看起来毫无用处,这个时候你就应该去学着写一些让你觉得有意思的东西,所以你应该学习更多的知识。关于学习java可以在网上报名一些口碑较好的在线教育平台如咕泡等,同时需要学习资料的可以进群549970957进行视频学习。群里分享是阿里Java高级大牛直播讲解知识点,源码分析专题、团队协助专题、分布式架构专题、微服务架构专题、性能优化专题及电商项目实战。这五大专题都是各位老师多年工作经验的梳理和总结,可以带着大家全面、科学地建立自己的技术体系和技术认知。 二、对于参加工作2年到3年的同学有的同学在这个时候觉得自己已经很牛逼了,于是忍不住开始慢慢松懈。请记住,你还嫩的多。这个阶段,有一本书是你必须看的,它叫做《深入理解Java虚拟机》。这本书绝对是Java开发者最重要的书。这本书的内容是帮助你全面的了解Java虚拟机,在这个阶段,你一定已经知道Java是运行在JVM之上的。另外,在过去的时间里,你肯定或多或少接触过并发。这个时候,你应该去更加深入的了解并发相关的知识,而这部分内容,我比较推荐《Java并发编程实战》这本书。把这本书啃下来,并发的部分基本已经了解了十之六七。 三、对于参加工作3年到4年的同学这个阶段的同学,提升已经是很难了,而且这个阶段的学习往往会比较多样化。因此如果你对某一项技术感兴趣的话,这个时候可以深入去研究一下。这项技术不一定是你工作所用到的,但一定是相关的。而且在研究一门新技术时,切忌朝三暮四。有的人今天去整整大数据,过不了一段时间,就觉得没意思,又去研究分布式缓存,然后又过不了一段时间,又去研究分布式计算,结果到最后,搞得自己好像什么都会一样。一定要记住,作为一个程序猿,平日里所接触的技术可能会很多,但是想要让一门技术成为你的优势,那么一定是你对这门技术的了解强过绝大多数人才行。因此在这个阶段,你就不能再简单的去学习前3年的内容了,这个时候你应该更多的考虑建立你的优势,让自己变得与众不同。前面三年的工作与学习足够你成为一名基本合格的Java开发者,但你离成为一名优秀的Java开发者还有很大的距离。而对于具有1-5工作经验的,面对目前流行的技术不知从何下手的、跳槽时面试碰壁需要在短时间内进修、跳槽拿高薪的、或者觉得自己很牛B,一般需求都能搞定,但是所学的知识点没有系统化,很难在技术领域继续突破的可以加高级架构群549970957进行视频学习。大牛老师可以带着大家全面、科学地建立自己的技术体系和技术认知,完善自我。       所谓优秀,即能别人所不能。所以这三门当中,首推Java。真的,Python当然是好,但是对于一个新入门的人,最重要的是先找到工作不是吗?而找工作的话,Java无疑是最容易的。对于跨行业的人而言,最困难的其实是第一步,那就是如何进入这个行业。如果你连进都进不来,第一份工作迟迟无法开始,那么好好努力,补上数据结构,设计模式,算法设计这些差距就根本无从说起,不是吗?不要被什么科班出身之类的说法吓坏了。我始终觉得,只要你肯努力,这里面并没有什么无法逾越的鸿沟,最重要的是不要好高骛远,也不要急于求成。学习和积累是有一个过程的,在程序员这个行当,你一分付出,就会有一分回报。尊重学习的内在规律,循序渐进,终有一天,你会成为你想成为的那个人的。
对于零基础,我来谈谈具体的规划。 1.了解Java的运行环境。搞清楚path和classpath是干什么的,怎么在命令行进行编译,执行。知道IDE的各个按钮后面真正发生了什么事情。 2.掌握Java的语法。搞清楚包,接口,类,继承这些基本概念。 3. 掌握多线程编程。弄明白ConcurrencyHashMap是怎么实现的,搞清楚synchronized是怎么回事,弄明白为什么要有Runnable接口。 4. 在工作中体会一下设计模式。推荐《Java与模式》这本书。看完里面的Decorator,IO接口你再也不会去死记硬背了。 5. 恶补数据结构。搞清楚 LinkedList和 ArrayList的实现机制,了解它们的每一个接口的时间复杂度。同样的还有其他容器,Map啊,Set啊,都是一样的。栈,队列,二叉树,图贯穿编程始终。 6. 如果有可能,最好对一些算法设计也有所涉猎。比如动态规则的思路,贪心算法,诸如KMP这种奇妙的算法等。这一步没有数据结构那么重要,学得好当然好,学不好也不用太挫败。 7. 进阶,这时候就可以有自己的思考了。Java发展到现在,被用在各种各样的情景之中,说它是应用最广泛的编程语言并不过分。你在打好基础以后,就可以考虑应该向哪个方向发展了。 8. 架构。到了这一步,你就算是登堂入室,真正迈入高级开发人员了。这一步,你要思考更多的东西,比如,如何处理高并发,如何应对分布式系统,如何提供更健壮的数据服务。到了这一步,那就没有什么可以参考的,全靠自己的悟性。   编程的世界永远向所有热爱编程的人开放,这是一个自由,平等,共享的世界,我始终是这样坚信的。所以,希望大家自己有的判断力,去决定到底该如何度过这一年。每个人吸收知识的时候,都要有抽取精华,去除糟粕的能力。我所说的,可能有些是对的,有些是错的,有些是适合你的,有些是不太适合你的,你要自己能够判断。 希望你能成为一个成功的程序员。祝好。

转载于:https://juejin.im/post/5a7800526fb9a0633d71b596

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值