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

2022-10-11 22:11:49 122 0
魁首哥

首先要说明下:前端并不是编程语言,它是很多种技能的组合,主要包括HTML/CSS/JavaScript等。工作性质是与UIUX这样的设计师合作,通过代码来呈现他的设计稿。简单来说他就是蓝图,你照图施工通过代码来实现。

其实编程这个事情,很多人有计算机专业相关和非计算机相关的区分,虽然确实有基础底蕴的差别,但是在努力的共性上还是一致的,有以下几个共性,你可以看一看:

1.对编程有求知欲,喜欢自己去探索一些数据或编程的东西。

许多人入行都是听说程序员很赚钱就进来的,虽然对程序没有特别的兴趣,这样的人在经过短暂的训练后,还是可以基本入行的,但他们基本上还是处于初级阶段,升入中级一般都需要主动。有兴趣和基础的人会比别人更进一步。

2.善于发现程序问题,想办法自己解决。

程序设计中最困难的一点是找出错误,任何程序出现问题都是正常的,关键是你有能力发现和解决问题。假如你有很强的Bug问题解决能力,那么你就会像一个优秀的程序员一样快速前进

3.对编程学习有耐心和自学能力。

许多人说编程和武功一样,一天不练,武功全废。不要只凭一时的兴趣,简单的玩一玩,然后问很多问题,就问人。这个学习过程不科学,可以问,但最好有基本的解决办法。

说完了一些注意事项,我们再回到一开始的语言选择问题上来

其实没什么好说的,零基础小白当然是推荐Java。Python固然好,但对一个刚入门的人来说,首先要先找到一份工作。而且,在求职中,Java无疑是最简单的。对跨行业的人来说,实际上第一步是最困难的,那就是如何进入这个行业。假如你进不了门,而且第一份工作迟迟不能开始,那就好好努力,补上数据结构,设计模式,算法设计这些空白就无从谈起

接下来,讲一个具体的学习计划:

1.了解Java运行环境。明确path和classpath的作用,以及如何在命令行执行编译、执行。了解IDE按钮背后实际发生的事情。

2.精通Java语法。明确包、接口、类,并继承这些基本概念。学习多态,overwrite,死背IO的界面,包括InputStream/OutputStream和Writer/Reader,死后背对网络编程和GUI编程界面,死背JDBC界面。

3.精通多线程编程。找出ConcurrencyHashMap是如何实现的,弄清楚synchronized是什么,为什么要使用Runnable接口。

4.错误的数据结构。明确LinkedList和ArrayList的实现机制,了解每个LinkedList的时间复杂性。而且还有其他容器,Map啊,Set啊,都是一样的。堆栈,队列,二叉树,图表贯穿编程始终,如果您无法跨越这一步,那么您将只能在低级程序员中工作。

5.在这个时候,你可以有自己的思考。Java发展到今天,在很多情况下使用过,认为Java是应用最广泛的编程语言也不为过。打好基础之后,你可以考虑该往哪个方向发展。例如服务端的体系结构,最好先了解JavaEE。长期以来,JEE就是让人们觉得门槛太高。这一点实际上可以从Spring开始,弄清楚反射,控制反转,依赖注射(这些神灵唠叨的名词实际上是为了解决Java本身不够动态这一缺陷而出现的,在此,我只是想提醒一下,这些概念没什么大不了的,别被那些爱装逼的家伙吓到)。另外还有消息这件事,还有ORM这件事,快来看看。想想他们能解决什么问题,然后猜想他们是如何实现的。在我采访的时候发现,其实大多数优秀的开发人员,即便是没有想过这个问题,就让他现场设计一下Hibernate,都可以设计的差不多。由此可见,这些框架性的东并不是什么大问题。在基础上,你也可以设计它。重要的是要动脑思考。上面以服务端开发为例,那么在客户机方面,您要考虑事件响应机制是如何工作的(这些我不熟悉,也就不多说了)。深入研究JVM的源代码,以及它的实现机制,还要学习垃圾收集算法等等。

汉码未来

汉码未来上课实景

收藏
分享
海报
0 条评论
122
上一篇:浅谈PHP开发(经验分享) 下一篇:JMeter快速入门知识系列(3)JMeter测试HTTP GET请求

本站已关闭游客评论,请登录或者注册后再评论吧~

忘记密码?

图形验证码