绝不误人子弟!零基础应该选择学习Java、PHP,还是前端?(1)

简介: 绝不误人子弟!零基础应该选择学习Java、PHP,还是前端?

上周,有读者私信我说,“二哥,零基础该选择 Java 还是 PHP 啊?”


image.png



我瞬间就误了!PHP?世界上最好的编程语言?


后来,又有读者私信问我,“挺纠结的,不知道该选前端还是 Java?”

image.png


真不好选,因为“男怕入错行,女怕嫁错郎”,初学者纠结这个问题也是情有可原。


首先来说说 PHP,Web 蛮荒的年代,PHP 真的是王者姿态,连 Java 可能都要礼让三分,但近些年,PHP 只能做一些速成型的外包项目了,如果想增加更多的业务,想在性能上有所改善,PHP 就真的很难了!


所以,本着不误人子弟的原则,我推荐选 Java。前端的事,随后再说。


对于编程新村的同学来说,最重要的是找到工作,对吧?你要是给我说,你是凭借着一腔热血才学编程的话,我还真的是将信将疑。


毫无疑问,就找工作而言,Java 首屈一指!


我刚去编程语言排行榜(TIOBE,非常权威)截了一张图——关于近 10 年编程语言的变化。



可以看得出,Java 霸占这份榜单很多年,并且还会持续更久。一门编程语言能有这么顽强的生命力,他一定有别的语言所没有的优点,它与生俱来的竞争力是别的语言无法取代的。


如果你决定选 Java 的话,可以先看看我整理的这份 GitHub 上星标 115k+ 的 Java 教程,里面涵盖了 Java 所有的知识点,包括 Java 语法、Java 集合框架、Java IO、Java 并发编程和 Java 虚拟机,内容不多,只讲重点。


GitHub 星标 115k+的 Java 教程,超级硬核!


尤其是对非科班的同学而言,最困难的就是如何先进入这个行业,如果连门都进不来,找不到工作,那么再怎么努力,有什么用呢?


至于科班的同学,很直白,我们学编程的目的就是找工作,就是奔着高薪来的,如果临近毕业,如果连一份实习的工作都找不到,该有多难受!


Java 的就业岗位如果谦虚地说自己只能排第二,那没有其他编程语言敢说自己排第一。国内的一线互联网公司,比如阿里、美团、京东等等,后端都用的 Java。就别说中小型公司了,Java 的开源类库非常丰富,有着一个充满活力和积极进取的 Java 社区,借助这些类库可以让开发者避免重复造轮子,尤其是有了 Spring Boot 之后,搭建一个独立的应用程序可以说是轻而易举,手到擒来。


更重要的是,Java 程序员的薪资客观啊,以北京为例。

image.png


虽然我是科班出身,但我始终觉得,不管是科班还是非科班,只要找到合适的学习路线,然后付出努力,找到一份称心如意的工作并非痴人说梦。对于程序员这个行业来说,你付出一分努力,就会收获一份回报!


刚发现了一个在线学习 Java 的网站,真的非常不错,截个图给你感受下。


image.png


风格贼舒服!还能做任务和打游戏,学习起来也更轻松自在一些。记住一点,编程是一门手艺活,不动手是学不会的。尽量把网站上的代码都敲一遍,你就会发现自己在技术层面突飞猛进。


https://codegym.cc/zh/quests/tutorial?transition=force


Java 基础当中,除了数据类型、运算符、表达式、输出和输入、程序结构、控制循环、数组、方法、传参、IO、异常处理、泛型、注解、反射这些偏基础的内容,难点就两个,一个是并发编程,一个是 Java 虚拟机。


关于并发编程,我之前画过一张思维导图,可以按照里面的知识点,一个个过一遍。


image.png


Java 虚拟机涉及到的有 Java 虚拟机内存结构、垃圾收集策略与算法、内存分配与回收策略、Java 虚拟机性能调优、类文件结构、类加载机制等等,可以先看一看周志明老师的《深入理解 Java 虚拟机》,一开始啃起来可能会比较痛苦,但如果能硬着头皮多啃一啃的话,面试的时候就会容易得多。工作后,如果能解决一些性能问题,领导也会对你刮目相看。


学 Java 基础的时候,可以到 B 站上白嫖培训机构的视频,比如说尚硅谷和动力节点的。但培训机构出的视频有一个问题就是,内容繁多,过于偏重基础,真正核心的内容讲的不多,也不够深入。为什么这么说呢,我给大家分析一下,就明白了。


拿动力节点的来说:


https://www.bilibili.com/video/BV1Rx411876f?from=search&seid=1705641531822657605

844 节,真塔喵的多,怎么办呢?学的过程中,可以跳过,或者倍速下面这些内容:


JDK 的安装

PATH 环境变量的配置

变量

数据类型

循环控制语句 if、if-else、while

MyEclipse

等等

我没列举完,比较多,你自己在看的时候要注意下。


遇到一些不太会的知识点,或者看不懂的,可以按照关键字搜一下,Google 是第一选择,Bing 是第二选择,微信搜索是第三选择,度娘是第四选择。


CSDN 的 SEO 做的不错,有些文章的质量对学习还是很有帮助的(注意,我在吹 CSDN 的彩虹屁,哈哈哈)。


说完 Java,再来说说前端吧。


前端这些年因为有 React 和 Vue,再加上安卓、Flutter、微信公众号、微信小程序等等,确实发展得挺好的,可谓一片盛世。


但不能抱着偏见去做选择,尤其是不能有这样的偏见:“前端比 Java 后端容易一些”,那可能一个 Java 后端的大神级的好苗子就没了。像同学舍友说的那样,认为“学 Java 找实习来不及,学前端的话,可能性更大”,这种结论很不可取。做任何选择,都不能只停留在表面。


Java 后端的学习建议我前面已经说过了,接下来重点谈一谈前端,看看前端需要掌握的知识点都有哪些,我尽量给大家梳理的完整一些。


前端开发是一个非常特殊的行业,它的历史并不长,但知识相当的繁杂(尤其是近些年),并且技术的迭代速度是其他技术不能相比的。与此同时,前端工程师也成为了研发体系中的重要岗位之一。


image.png



相关文章
|
1月前
|
SQL 关系型数据库 MySQL
如何学习PHP编程?
【10月更文挑战第2天】如何学习PHP编程?
38 9
|
30天前
|
JavaScript 前端开发 程序员
前端学习笔记——node.js
前端学习笔记——node.js
37 0
|
11天前
|
前端开发 开发者 C++
独家揭秘:前端大牛们如何高效学习新技术,保持竞争力!
【10月更文挑战第31天】前端技术飞速发展,如何高效学习新技术成为关键。本文通过对比普通开发者与大牛们的策略,揭示了高效学习的秘诀:明确目标、主动探索、系统资源、实践应用和持续学习。通过这些方法,大牛们能更好地掌握新技术,保持竞争力。示例代码展示了如何通过实践加深理解。
28 4
|
1月前
|
JSON 前端开发 Java
震惊!图文并茂——Java后端如何响应不同格式的数据给前端(带源码)
文章介绍了Java后端如何使用Spring Boot框架响应不同格式的数据给前端,包括返回静态页面、数据、HTML代码片段、JSON对象、设置状态码和响应的Header。
132 1
震惊!图文并茂——Java后端如何响应不同格式的数据给前端(带源码)
|
1月前
|
前端开发 小程序 Java
java基础:map遍历使用;java使用 Patten 和Matches 进行正则匹配;后端传到前端展示图片三种情况,并保存到手机
这篇文章介绍了Java中Map的遍历方法、使用Pattern和matches进行正则表达式匹配,以及后端向前端传输图片并保存到手机的三种情况。
19 1
|
1月前
|
JavaScript 前端开发 Java
VUE学习四:前端模块化,ES6和ES5如何实现模块化
这篇文章介绍了前端模块化的概念,以及如何在ES6和ES5中实现模块化,包括ES6模块化的基本用法、默认导出与混合导出、重命名export和import,以及ES6之前如何通过函数闭包和CommonJS规范实现模块化。
73 0
VUE学习四:前端模块化,ES6和ES5如何实现模块化
|
1月前
|
前端开发 JavaScript 小程序
前端新机遇!为什么我建议学习鸿蒙?
【10月更文挑战第4天】前端新机遇!为什么我建议学习鸿蒙?
109 0
前端新机遇!为什么我建议学习鸿蒙?
ly~
|
2月前
|
安全 Java 大数据
php跟java有什么区别
PHP 和 Java 是两种常用编程语言,各有特色。PHP 语法简洁灵活,适用于快速开发中小型网站,尤其在 Web 脚本和数据库交互中表现出色。Java 则语法严谨,强类型特性使其在企业级应用、移动开发及大数据处理中更受欢迎,具备高稳定性和安全性。通过优化,PHP 性能可提升,而 Java 在大规模应用中表现更佳。总体而言,PHP 开发效率高但维护性稍差,Java 则更注重代码质量和安全性。
ly~
47 5
|
1月前
|
前端开发 JavaScript 小程序
前端uni开发后端用PHP的圈子系统该 如何做源码?
圈子系统系统基于TP6+Uni-app框架开发;客户移动端采用uni-app开发,管理后台TH6开发。系统支持微信公众号端、微信小程序端、H5端、PC端多端账号同步,可快速打包生成APP
|
2月前
|
机器学习/深度学习 数据采集 JavaScript
ADR智能监测系统源码,系统采用Java开发,基于SpringBoot框架,前端使用Vue,可自动预警药品不良反应
ADR药品不良反应监测系统是一款智能化工具,用于监测和分析药品不良反应。该系统通过收集和分析病历、处方及实验室数据,快速识别潜在不良反应,提升用药安全性。系统采用Java开发,基于SpringBoot框架,前端使用Vue,具备数据采集、清洗、分析等功能模块,并能生成监测报告辅助医务人员决策。通过集成多种数据源并运用机器学习算法,系统可自动预警药品不良反应,有效减少药害事故,保障公众健康。
ADR智能监测系统源码,系统采用Java开发,基于SpringBoot框架,前端使用Vue,可自动预警药品不良反应