
本人搞前端的,现在不掌握几门技术语言都不好意思说自己是程序员,所以也学了很多后端的内容,nodejs 、python 、php 都有接触
在学习自学前端的时候都是用 php 配合写项目的,后来才逐渐学习其他的后端语言
因为用 nodejs 、python 、php 写内容,相对比较轻,本身 php 和 Javascript 也非常像,上手也很简单,可以几乎无门槛的建立一个 http 接口。
但是上班之后,两个公司都是以 java 做为后端开发语言,也就有了学习 java 的想法,但是尝试了 4 、5 次,都以失败告终,可能是因为太浮躁了哈哈哈。
其他的后端语言,包括 C 、C#等,都觉得很能接受,但是 JAVA 真的是看了起不良反应那种。
原因就是太大了。。哈哈,想当年在学校参加 web 开发比赛的时候,和我搭档的后端同学,在如何让项目跑起来的问题上,纠结了两天,整整两天训练时间他们都在纠结这个,最后好像是因为包什么的。
java 基本内容都能上手,但是一到包管理,需要上手 spring boot 等框架的时候,真的是一个头两个大
光怎么让这玩意跑起来我每次都要折腾好久,最后放弃
虽然我认为我自己的问题也比较多,主要问题还是有了其他后端语言做支撑,其实对 JAVA 学习的紧迫性并不高,所以容易放弃。
感觉还是轻语言适合我一点(当然这里的轻语言是个伪概念),上手简单,学习的每一步都有反馈,框架和生态并不深度绑定。
说到这点,哈哈哈,编程语言我一直是自学的,但是现在回首一看,现在上手一个前端项目也很难,自学的门槛也提高了很多。我自学那会大概上手一个项目只需要 html 、css 、js 再加上一个 jquery 做工具库,现在上手一个前端项目需要涉猎的知识就多了 html 、css 、js 、vue 、nodejs 、webpack(后两项并不强需求,但是也会有涉猎),好高骛远一点的大概会看到一个更漫长的道路,react 、typescript 、sass 以及一堆听不懂的名词
当然,个人认为前端工程化绝对是在进步,但其实某种程度上复杂度也提升了。
即使已经掌握了前端编译方面的知识,个人做开源项目(比较小,只有几个界面)的时候,还是会选择 cdn 引入 vue+axios 或者 jquery 。因为足够简单,开源后使用者并不需要专业的知识即可运行(双击打开),和修改。
扯远了,虽然是个问句,但我感觉还是绕不过,无论是实现某些项目(原生安卓开发),还是想要往管理和架构方面发展,都绕不过。
唉,当下技术栈满足使用需求后,遇到挫折就容易退缩了,还是浮躁了。
1 mokevip OP 一不小心写太长了,抱怨的多了,哈哈哈,姑且就当是在怨天尤人吧,该学还得学 |
2 mokevip OP emmm,但前端我还是很爱学的,哈哈哈,感觉很顺畅。 要不是怕新同事上手难,哈哈哈,架构项目的时候就恨不得 vue3 、ts 、tsx 等等新技术全整上了。 不知道为啥,可能天克 JAVA 吧 |
3 dongisking 2021-07-15 22:56:39 +08:00 java,后端的答案。。。 |
4 yitingbai 2021-07-15 23:00:37 +08:00 你觉得 java 太复杂是因为你一上来就用 spring 这样的框架, 这些框架本来就是极其复杂的技术集合体, 你甚至都不知道 java 的 servlet , 又怎么能理解 spring 的运行原理呢. 真正的 java 程序非常简单, 和 C 一样, 一个 main 函数就能跑起来, 从基础开始学吧, 别浮躁, 个人觉得 java 是个最好的语言, 代码严谨规范(嗦), 我特别喜欢在开发的时候利用接口,封装,设计模式约束自己, 虽然前期很枯燥, 但是维护起来很舒服 , 哪怕你已经忘记了之前的代码, 只要你按照自己的规矩去做, 一切代码都是那么的安全和理所当然 |
5 JYii 2021-07-15 23:04:39 +08:00 我学 Java 那会感觉挺平滑的...但是在学 vue 时反而感觉很奇怪,可能因为 Java 太“死板”了吧 |
6 mokevip OP @yitingbai emmmm,之前还真的不知道 servlet,一直以为 java 基础学完了就是 spring boot 了。。我再看看 |
8 lcdtyph 2021-07-15 23:16:41 +08:00 via iPhone 程序员也不是只有前后端和架构什么的吧…再往底层还有内核开发、驱动开发什么的,没 java 什么事 |
9 mokevip OP @lcdtyph WEB 开发领域大概就是这样了。。感觉学历不够研究内核容易把自己搞死(感觉内核啥的偏底层的好像更难了)。。 |
10 rabbbit 2021-07-15 23:22:52 +08:00 java 还好吧,一套可以用很久.前端总是变来变去. 装包啥的 maven 改个镜像地址,把包名复制进去就可以了. |
11 rabbbit 2021-07-15 23:23:21 +08:00 不过找工作还是前端相对容易点 |
13 GG668v26Fd55CP5W 2021-07-15 23:28:19 +08:00 via iPhone 想起很久一个说法,如果扎克伯格当年是用 Java 而非 PHP 去写 Facebook,可能还没写完就已经放弃了,所以…当然可以绕过 Java 。 |
14 IGJacklove 2021-07-15 23:56:49 +08:00 via Android spring boot 已经很简单很简单了。。。你是没写过 ssm 那些,配置起来比这麻烦多了。 |
15 BeautifulSoap 2021-07-15 23:59:09 +08:00 via Android 在国内应该没法逃过 java,初创公司可能语言更加丰富点 国外的话体感 php 工作反倒更多,其他语言也还算好找工作,不像国内 java 一家独大这样 |
16 mokevip OP @IGJacklove 可能少了一个循序渐进的过程。。 |
17 JudyHal 2021-07-16 00:01:34 +08:00 @BeautifulSoap 国外 Java 应该都快灭绝了吧,PHP Ruby on Rails C# Node.js 的机会都比 Java 多多了 |
18 catcn 2021-07-16 00:06:57 +08:00 当你写代码写久了,就会进入禅道了。java 这些都可以通过快速学习来学。 过几个月估计会开始写点 java 代码玩玩。 |
20 Leviathann 2021-07-16 00:35:57 +08:00 @JudyHal 这么看还是国内的 java hater 比较厉害。。也就基于 spring 的 java web 占比比国内少些就能说成 java 快灭绝 |
21 limbo0 2021-07-16 01:44:29 +08:00 java 天生适合工程类的, 强约束, 确实比写 Python, ruby 踏实多了 lz 作为前端其实也不需要学 Java, 学学简单的 Python, 写个网页, 没事写点提升工效的小脚本岂不美哉 |
22 vincent321 2021-07-16 04:12:45 +08:00 大部分人是这样的: Java EE -> Servlet -> Spring -> Spring MVC -> Spring Boot -> Spring Cloud |
23 nerocc 2021-07-16 06:55:17 +08:00 via Android 你要是习惯 node express 的话,试试.NET 6 (目前还在预览版)的 minimal hosting 。可以像 node 一样几行就写出来一个简易的后端,可以小步子学,有反馈。后期项目复杂了需要转换成 MVC 还有工具帮忙自动转换 |
24 Cbdy 2021-07-16 08:40:43 +08:00 via Android 你学 java 的时候看了太多国产 csdn 等二手文档吧?那玩意儿都是害人的东西 类似照着几年前 webpack1 的文档搭 webpack5 的脚手架,自然问题多多 java 的变化也很快的,说他稳定只是相对于前端,java web 正确的学习方法是看 spring 等框架的官方文档 |
25 sonxzjw 2021-07-16 08:49:26 +08:00 你一味的迎合别人当然逃不过某些焦虑。 当你定位清晰,目标清晰的时候,就会更清楚了 |
26 HDMItoDP 2021-07-16 08:55:29 +08:00 java 入门是需要时间的,是需要基础的 |
27 dinghmcn 2021-07-16 09:10:10 +08:00 linux 驱动内核基本没 java 什么事,但会借鉴面向对象语言的设计理念 |
28 abcbuzhiming 2021-07-16 09:35:59 +08:00 spring 比较庞大,所以初期看上去很难下手,其实绝大部分人用 spring,最多就用到了自动装配依赖,连 aop 都很少用。你把 spring 是怎么扫描你的依赖,怎么装配依赖的这个流程搞懂,就基本上手了 |
29 Variazioni 2021-07-16 09:45:15 +08:00 @vincent321 是的。。先从集成度不这么高的框架入手。。了解原理。。再往上学 spring 一套。。就简单多了。 |
30 LinShiG0ng 2021-07-16 09:57:02 +08:00 我就是一开始自学的 java,导致我后来再学 php,python 的时候极其不适应。 |
31 passerbya9527 2021-07-16 10:23:20 +08:00 via iPhone 对,想我做了 8 年 c++,最后还是没逃过 java,现在用 springcloud 快乐的涂胶水 |
33 jmc891205 2021-07-16 10:37:51 +08:00 应该这样问 (互联网行业的)程序员的职业发展真的逃得过 Java 吗? |
34 DeWjjj PRO 逃得过呀,C++玩家。无缝切 go,干 python 。 我估计我这辈子都不会去学 java 了,我是单纯觉得老技术新人就不该去学。 天花板上面大佬那么多,他们不退工作岗位压根抢不到。 学 go 就不一样了,都是白给玩家。 |
nbsp; 35 dqzcwxb 2021-07-16 11:16:25 +08:00 有些人,他不是不喜欢 Java,他只是不愿学习不想工作不想写代码 |
36 79lawyer 2021-07-16 11:16:26 +08:00 题外话,用 jquery 久了,学 VUE 屡屡失败。。。感觉完全是两套逻辑 |
37 efaun 2021-07-16 11:22:18 +08:00 后端表示看 react 也是不能理解 |
38 aaniao002 2021-07-16 11:27:14 +08:00 via Android 一股浓烈的啊三味。我也不喜欢 java,不喜欢就不喜欢呗,看工作。这边都是个人项目,只要能 hold 得住,那 |
39 aaniao002 2021-07-16 11:27:50 +08:00 via Android 拿 bash 写 web 也不会有人说什么。 |
40 wizzer 2021-07-16 11:30:08 +08:00 |
41 szq8014 2021-07-16 11:30:15 +08:00 从 0 学 Java 一上来就用 Springboot 也算是正常,毕竟里面包含了很多开源组件。 你让一个人从 0 基础学前端直接用 ExtJS 试试,也是能学懵。 |
42 mokevip OP @vincent321 好的,我按这个走看看 |
44 fkdog 2021-07-16 14:10:06 +08:00 java 是目前阶段企业级系统项目开发的唯一解. 语言特性决定了就算是代码写的再烂, java 也能勉强一步步跟踪调试理清整个项目调用链, 在人员流动频繁的公司里这个是非常有用的. spring 看着很庞大, 实际上主要是为了解决开发里存在的两个痛点, 依赖注入和 AOP. 为什么这两个是痛点, 如果你没有做过纯 servlet 项目可能没办法理解.. 只能多写代码自行体会了. |
45 zeronofreya 2021-07-16 14:22:59 +08:00 java 入的坑,目前前端 总的来说,我只拒绝 java 的一点,虚拟机太大,不适合我。跨平台理念很好,但现实是我不想拖着这么大的虚拟机只为了运行一个小程序,目前国内没有哪家开发的程序能大过虚拟机吧?说是跨平台,直接在安卓上运行试试,鸿蒙也行,不能全平台通吃吹什么跨平台。 如果 java 能把源码直接编译成各平台对应的程序,去掉臃肿的虚拟机,那我就没有任何怨言了 |
46 wr516516 2021-07-16 14:55:34 +08:00 目前再做 Java 开发 自学过很多次 Python 都失败了 语法什么的没有问题,但是没什么实际项目让我写来练手. 然后也没啥刚性需求,总是提不起劲... 感觉 Java 本身也没太多东西,但是依赖的框架和很多别的东西太多太杂了 |
47 kenshinhu 2021-07-16 14:57:47 +08:00 为了不写 spring,我决心要转去 go 但说真的,如果所遇到的公司项目都是小型而要快速实现的,用 java 就像是用 RPG 打小鸡 |
49 onionKnight888 2021-07-16 15:37:47 +08:00 springboot 已经算傻瓜式操作了吧,以前没有 maven,框架还是 ssh,更折磨人 |
50 thtznet 2021-07-16 15:39:59 +08:00 用 C#路过,从来没写过 java 。 |
51 dqzcwxb 2021-07-16 15:41:47 +08:00 @zeronofreya #45 Javascript 引擎、虚拟机、运行时环境是一回事儿吗? - RednaxelaFX 的回答 - 知乎 https://www.zhihu.com/question/39499036/answer/81707112 |
52 cenbiq 2021-07-16 16:06:56 +08:00 java 是一套奇怪又复杂的技术 |
53 jzphx 2021-07-16 16:38:08 +08:00 现在的 Spring Boot 已经比当年的 Spring MVC 方便很多了,起码你用一个 Spring Initializer 就能一分钟设置好一个能跑起来的工程。 |
55 tourist2018 2021-07-16 17:38:04 +08:00 Java 还能有 C++难上手? |
56 zeronofreya 2021-07-16 17:38:08 +08:00 @dqzcwxb 额,为啥要给我科普 Javascript 的知识?我觉得 java 虚拟机太大没毛病啊…… |
57 leeyom 2021-07-16 18:12:36 +08:00 其实现在的 Java 发展到现在,基本上已经比较容易上手了,想当初,ssh 、ssm 时代的时候,那才是灾难,一堆的配置,现在的 springboot,实际上已经几乎不用怎么配置了,基本上就是开箱即用,你说的包管理,Java 这块,无非就是 maven 、gradle,在打包的时候,确实这两个东西饶不过去,最好的办法,去 github 搜,springboot-xxx-demo,看看别人是怎么配置 maven 的,Java 之所以庞大,主要是他的成熟的生态,如果只是简单的搭建个后台服务,直接 springboot 一把梭,你要深入往管理和架构方面发展,光 Java 生态这块,学习的东西可就真的太多了 |
58 zxCoder 2021-07-16 18:58:52 +08:00 各人的兴趣不同吧 像我就特别讨厌 python js golang 这仨 |
59 young1lin 2021-07-16 19:01:14 +08:00 Spring Boot 已经是最简化配置了, 你要用 SSM,你简直想骂娘。当然,你想要玩转 Spring Boot 的话,可以先了解下 Spring,再去看 Spring Boot 就很简单。Spring 其实是胶水框架,把这些对象以流水线的方式生产了出来,你想深入了解,可以看书,也可以直接看源码,先从看一部分,再看另一部分,最后总结出来。 这是我总结的 Spring Boot 的启动流程相关的内容。你也可以看相关书籍,其实不难,最多花你两个月的时间,就能比较深入的了解 Spring 和 Spring Boot 了。主要是它的生态好,开箱即用,简单的配置,强大的功能! https://www.processon.com/view/link/5ff6897f07912930e0207859 |
60 chenshun00 2021-07-16 22:18:17 +08:00 Java(当然我也靠这个吃饭) 其实挺烂的,但是确实什么都能做. |
61 todayisgood 2021-07-16 23:25:45 +08:00 java 写的还可以啊,maven 工程管理属于 工程结构管理和包管理知识的一环 java 知识你基本都会了,就是面向对象语言,它有它完善的语言设计层次结构,抽象层面做的挺好的 然后 spring 相关其实就是依赖注入的一些相关知识, 你知道它怎么完成依赖注入的流程就可以了 |
62 Lonely 2021-07-16 23:37:43 +08:00 via iPhone @zeronofreya 你写的网页就不要在浏览器或者其他环境里运行吗? |
64 NotreDame 2021-07-18 07:25:10 +08:00 职业发展?那应该逃得过。入行时靠 Java,但一直以来都是 go 。个人不喜欢 Java 一把梭的感觉,跟一个语言一起成长的感觉很妙。下一步计划学学 Rust 。 另外:理解不了“几次尝试学习一个语言,结果都失败”的情况,心里应该有危机感了。 |