老哥们,目前 Java 和 node.js 后台都会一点,现在想深入一个方向,怎么选?

2019-06-01 10:22:45 +08:00
 cjh1095358798

自己有三年 android 开发经验,对 java 很熟。又做了一年 rn,前端相关,nodejs 也在用,所以在考虑深入这两种后端技术哪一个好点?

9940 次点击
所在节点    程序员
82 条回复
deepdark
2019-06-01 12:10:49 +08:00
傲慢与偏见
airyland
2019-06-01 12:12:33 +08:00
看上面几个同学对 node 多鄙夷的语态,动不动玩具动不动没人用,用自己来概括全世界。让人不舒服的不是你们觉得 node 不好用,而是那种自负的评价姿态。

对不起,我用 node。

喊句口号:

Always bet on JS.
gimp
2019-06-01 12:20:07 +08:00
一些人对语言的偏见真是根深蒂固,上一个被说是玩具语言的叫 Python

楼主对 Java 看起来更熟悉,选择 Java 吧,从就业角度考虑也没问题
cjh1095358798
2019-06-01 12:27:09 +08:00
@abcbuzhiming 现在我也是首选 typescript 这方面对类型约束支持的还是比较好的,确实如果你诶呦类型系统对大型项目不适合
cjh1095358798
2019-06-01 12:29:02 +08:00
@fghjghf 多谢老哥分析,我想我应该仔细想想自己要的是什么以及趋势
love
2019-06-01 12:29:14 +08:00
@abcbuzhiming 你不知道有个东西叫 typescript 吗,已经在前端界很火爆了。这东西的类型灵活度比 java 还高,结合了动态语言和静态语言的优点
cjh1095358798
2019-06-01 12:33:13 +08:00
@gimp 是的,我也是本来偏向 java,之前写过 node 发现很方便,就有点动摇了。想做一个独立开发者,所以我也是想越容易学易用最好
yuanfnadi
2019-06-01 12:53:30 +08:00
@oneisall8955 nodejs 也可以。
封装继承,aop di。

多态麻烦一点。
abcbuzhiming
2019-06-01 12:53:48 +08:00
@love 我当然知道 ts 这个东西啊,甚至我自己必须用到 node 的场合我都是尽量用 TS,问题是 TS 这个东西说到底还是要把源码编译成 js 的,ts 并不是 node 原生支持的东西。也许倒是可以期待一个 node 原作者搞的 deno
abcbuzhiming
2019-06-01 12:59:25 +08:00
@cjh1095358798 没关系啊,程序员本身就不应该只困在一门语言里,我当初就是受不了 Java 的死板,投奔到 PHP 和 Python 的世界里去呆了两年,然后又被“重构火葬场”给恶心回了静态语言的世界,年轻就应该什么都试试,你试过才知道静态语言和动态语言分别的好处在哪里,翔又在哪里。
PS:程序员千万不要干的事情就是当狂信徒,问题是程序员又是技术工种里狂信徒特别多的行当。我还是建议你,两个都玩玩,没有你想的那么难的。等你两个都玩过,两个的翔都吃过,就会明白为啥 Java 这种简陋死板的语言能够在后端领域经久不衰了
lihongjie0209
2019-06-01 13:07:46 +08:00
nodejs 写写 js 工具链就可以了, 写后端就算了
zqx
2019-06-01 13:12:40 +08:00
大学只学过 java,c++。
实习接触 python,发现 pip 管理依赖,秒杀 java。
工作接触 js,发现 npm 管理依赖,秒杀 python。
说 node 生态不行,那是没见过 npm 几百万个开源类库吧,开源社区≈node。
java 占有率高是市场行为,不代表语言特性高级。
zqx
2019-06-01 13:13:23 +08:00
@fghjghf java 的性能只有 node(c++)的 1/10
Takamine
2019-06-01 13:17:47 +08:00
……我一直把 nodejs 放在前端的技术栈里,大佬们别打我。
love
2019-06-01 13:22:15 +08:00
@abcbuzhiming 变异成什么你又不用管,jvm 本身也不直接支持 Java 源代码
lihongjie0209
2019-06-01 13:22:34 +08:00
@zqx 你用过 maven 吗?
abcbuzhiming
2019-06-01 13:23:13 +08:00
@zqx 你这句话的言下之意就是“市场都是白痴,看不到你说的语言特性高级”?
fghjghf
2019-06-01 13:55:01 +08:00
@zqx 骚年,看来你回答,觉得你工作年限并不长。市场这样选择肯定不是偶然事件。知道什么是 JIT 吗,再不然网上一大堆性能测试 demo,你可以试试看。而且 Java 直接调系统 api,缓冲区、pcb、堵塞非堵塞、文件系统、内存映射、进程线程、ipc 消息管道 /有名无名队列 /共享内存、信号量、socket 原始套接字、直接构造数据包、高并发 select/epoll/kqueue。等等等等。node 行么。对于楼主这个情况,学 Java 以后的发展可以很深。也可以基于业务站在更宏观的角度看待问题。学 node 只能学上层肤浅的东西。你觉得那个更利于职业发展?
cjh1095358798
2019-06-01 15:10:21 +08:00
@abcbuzhiming 哈哈 说的对,各种语言都有自己的信徒,多试试有自己的理解才好
TimPeake
2019-06-01 15:16:38 +08:00
我前端娱乐圈又炸了锅?有趣

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/569670

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX