由于是换一家 PHP 公司,还是转学 Java,求老人给些建议。
1
aksoft 2017-07-20 08:58:36 +08:00
转就转呗,我朋友也是从 php 转的 spring,看你现在公司好坏呗。不好就走人呗
|
2
zjsxwc 2017-07-20 08:59:20 +08:00
程序员应该面向工资编程,还有什么问题?
|
3
V2Simon 2017-07-20 09:01:15 +08:00
我觉得应该利用这次机会好好学习下 Java 虽然我承认 PHP 是世界上最好的编程语言
|
4
abcbuzhiming 2017-07-20 09:01:42 +08:00
你是几年的程序员,如果你刚入行不久,为了技术延续性,你可以换一家 PHP 公司,但是如果你已经有了几年经验,这时的程序员难道不应该走全面发展的路吗,都是写后端而已,换个语言无所谓
|
5
nullen 2017-07-20 09:01:49 +08:00
程序员应该面向工资编程,还有什么问题?
|
6
CYKun 2017-07-20 09:38:26 +08:00 via Android
php 是最好的语言,但是我选择 java
|
7
MushishiXian 2017-07-20 09:40:58 +08:00
有机会可以学下 java 也是很好的,多学一门语言对 php 也很有帮助的,而且 java 那么火,不会吃亏的
|
8
DukeAnn OP @abcbuzhiming 一年半吧快两年 PHP
|
9
zhouxuchen 2017-07-20 09:43:59 +08:00
转 Spring 的好机会啊
|
10
orderc 2017-07-20 09:45:50 +08:00
你会问这个问题,当然是换公司了。
|
11
bombless 2017-07-20 09:46:13 +08:00 via Android
换个语言没啥所谓……不爱现在换就换公司呗
|
12
lrh3321 2017-07-20 09:46:38 +08:00
php 是最好的语言,但是我选择 kotlin
|
14
zhpech 2017-07-20 09:48:53 +08:00
正好可以学一波 Java (没毛病
|
15
sagaxu 2017-07-20 09:51:42 +08:00 via Android
php 是最好的语言,java 是最火的语言,但我都弃坑了
|
16
Everyman 2017-07-20 11:11:06 +08:00 1
前期求广度,后期求深度。刚工作不久建议转型 Java,已经工作了几年了建议坚持 PHP。
|
17
jarlyyn 2017-07-20 11:14:15 +08:00
这个问题取决于你到底是网站开发工程师,还是 php 工程师?
|
18
fanhaipeng0403 2017-07-20 11:17:51 +08:00
程序员应该面向工资编程,还有什么问题?
|
19
andrewDDC 2017-07-20 11:20:32 +08:00
PHP 是最好的语言,我选 NODE
|
20
gowk 2017-07-20 11:25:24 +08:00
转吧,Java 还算是非常优美实用的语言的。
但我选最有前途的语言 Go |
21
flowerains 2017-07-20 11:32:23 +08:00
首先工资不会降低
其次多学一门语言对你有坏处么,需要抗拒? |
22
DukeAnn OP @flowerains 深度广度之间纠结
|
23
rainex 2017-07-20 11:51:17 +08:00 1
所谓“ php 是最好的语言”,这句话就是扯淡,是当笑话说的,谁要当真那就是搞笑了,要培养对软件架构和设计模式的理解,java 比 php 好太多了。
php 唯一的好处就是尽快出活,脚本语言主要就是为了短平快,反正主要就是连接 mysql 并输出 html,还有门槛更低的吗 说到底看你对未来有多大想法了,如果只看工资,那就不用考虑这些了,要是将来不甘心只做个小程序员,那转 java 挺好,走过这一步以后再用别的也对你有帮助 |
24
firenut 2017-07-20 11:58:00 +08:00
我们招过来一个 php 程序员本来打算开发页面的 不过最后页面的小项目没下文了 看学习能力还不错直接让他开发 java 了,现在业务写的也很好。实用为先吧,基础好的话换个语言都不是问题。
|
25
unbeau 2017-07-20 12:01:54 +08:00
向钱看齐
|
28
nimdanoob 2017-07-20 13:01:16 +08:00
Android 想转 Java 路过,其实是想转 python 的,不过国内 python 职位太少
|
29
joeke 2017-07-20 13:11:21 +08:00 via iPhone
语言不是关键,解决问题才是王道
|
30
xoxo419 2017-07-20 13:36:24 +08:00
永远要把语言看成一种工具, 面临的是什么需求, 什么工具好处理就用什么. 但我还是相信 PHP 是世界上最好的语言.
|
32
amwyyyy 2017-07-20 16:09:15 +08:00
我现在的同事就有两个是 PHP 转的,公司以前的项目是 PHP 做的
|
33
cxbig 2017-07-20 16:22:14 +08:00
看个性,是想一条道跑到黑,还是多种技能多种出路。
跟风市场需求,风险比较高。不如一技之长来得踏实。 |
34
zdt3476 2017-07-20 16:26:50 +08:00
有机会在工作的时候学习一门新的语言难道不是一件值得开心的事吗
|
35
lxml 2017-07-20 16:31:23 +08:00
@gowk #20 终于看见吹 Go 的了,看了下 Github 上国内玩的 Go 的主力军,大都是 左手 Python 右手写 Go,从 Java 转的还真是不多(可能是 Python 性能真的烂吧)。
|
36
j4fun 2017-07-20 16:34:16 +08:00
JAVA 的一套架构非常多、虚拟机之类的理论知识也挺复杂。学习代价挺大的,而且虽然 java 入门简单,但是学习曲线陡峭难深入,而且 java 的一些知识对其他系统也没有明显帮助,所以个人觉得如果不是兴趣的话,转 JAVA 不是一个很好的选择。
|
37
Lucups 2017-07-20 16:40:50 +08:00
公司出钱让你学 Java,这种好事不应该抓住吗?
另外,技多不压身,"现代" PHP 的生态从 Java 学了很多东西,趁此机会补一补。 讲真,等你写 Java 一段时间后,对 PHP 的认识会更加深刻,对于再回头写 PHP 也有极大的帮助。 最后,等你掌握了 Java,才会更有信心说出『 PHP 是世界上最好的语言』~ |
38
cunkouwdy007 2017-07-20 17:34:14 +08:00 via Android
会 PHP+JAVA,基本就能应聘大部分的公司了,挣外快的话大部分都能接了
|
39
tabris17 2017-07-20 17:35:05 +08:00
多一项技能不好么。公司出钱让你学啊
|
40
sagaxu 2017-07-20 17:56:32 +08:00 1
@lxml Go 相比 Java,也就 goroutine 吸引人和内存占用比 Java 低一些,性能只跟 Java 差不多,GC 比 Java 还差一些。其它语言特性,Go 比 Java 还稍微差一些,第三方库跟 Java 没法比。对 Javaer 而言,scala 和 kotlin 这样比较现代的 JVM 语言更有吸引力,转 Go 图什么?
|
41
onlyice 2017-07-20 18:33:31 +08:00 via Android
Java,就一句听烂了的 「 php 是全世界最好的语言」,让我觉得应该学 Java
正经地说,Java 适用面比 php 广,生态非常丰富,更值得投资 |
43
fox0001 2017-07-20 21:30:01 +08:00 via Android
一直在用 Java 混饭吃。以前头脑发热想学下 PHP,结果发现这东西反人类…
|
44
wdlth 2017-07-20 21:34:02 +08:00
上吧,让你体会到 JVM 的各种优势和坑。
|
45
TuringGunner 2017-07-20 21:43:15 +08:00
多好的机会,当然转了
|
46
lxml 2017-07-20 21:51:07 +08:00
@sagaxu #40 但 Go 还有俩优势,特别适合写工程化的代码(可以约等于写出容易理解的好代码,因为啥语法糖高级特性没有,写出来的风格非常近似,不像我之前 Python 出来牛鬼蛇神什么风格都有 ,PEP8 也镇不住),还有部署非常方便,打个包全家桶装走了这个我觉得还是挺吸引人的,写过一段时间 Java,深受语法啰嗦之害,但没写过 Java 后端代码,不好妄下定论,不清楚这两个能不能算作相比之下的优势?
当然,大家吹 Go 很重要的一个原因是因为它爹好,跟语言本身无关。 |
47
akira 2017-07-20 22:00:02 +08:00
有人出钱让你多点一个技能点,不赶紧抓住还在犹豫什么。
现在早就不是一个语言打遍天下的时代了 |
48
sagaxu 2017-07-20 22:13:51 +08:00
@lxml 最工程化的语言不是 Java 7 么?语法糖和高级特性完全空白。maven/gradle 工具链完备齐全,junit 和 PMD 以及 jenkins 等一大把 CI 工具,大部分特性都有相应的 JSR,这是个相当严谨的语言。
部署打包,Go 跟 Java 比真没什么太大优势,Java 项目一般只依赖个 JRE,其它都可以自动打包进来,而且不管是 windows 还是 Linux,不用分别打包。 |
49
tairan2006 2017-07-20 22:30:33 +08:00
@lxml 你说的那些优势 Java 更具备… Go 的 interface{}里面什么都能塞啊,写的很 trick 也不是不可能。
Python 已经很标准化了,毕竟崇尚只有一种最佳做法,写成牛鬼蛇神只能说队友水平参差不齐。 |
50
zjsxwc 2017-07-20 22:50:44 +08:00 via Android
总结楼上关于 go 与 java 的争论。
语言好不好主要看用的人,再工程化的语言用的人菜,照样能给你写出坑到爹都不认识的代码。 |
51
lxml 2017-07-20 22:52:20 +08:00
@tairan2006 #49 Python 虽然有各种最佳实践和规范,的确,队友水平习惯是的确是一个非常大的原因,大量使用魔术方法,元编程,也算 trick 的一种吧,甚至滥用 lambda,习惯也不好,不过这种我看了下的确没有一个十分清晰的规范能限制这种,写出来照样完美过团队代码检测啊,总不能让 HR 招大家水平都一样的来吧,但我们同样一批人,用 Go 写的相比 Python 确实好了很多,所以算作个人的一个体会。
@sagaxu 对 Java 生态和工具链了解不多,看了下我了解 Go 的优势和你说的 Java 优势相比,似乎确实没有什么太大的提高,可能正是之前你提到的原因导致很少有转 Go 的吧,加上国内本来这个也不好招人,没听说有大量部署的公司,自然生态就很差了。 |
52
yougg 2017-07-20 23:26:02 +08:00 via Android
@sagaxu 部署打包没什么优势? 对 JRE 的依赖就是最大的问题好吧,在 J9 才能有个去 JRE 解决方案。更别说各种 jar/不同版本依赖,能比编译后就唯一一个二进制文件部署方便?
|
53
mingyun 2017-07-20 23:50:16 +08:00
正好学 java
|
54
sagaxu 2017-07-20 23:58:05 +08:00
@yougg JRE 的依赖是最好搞定的依赖了吧,你可以用各个发行版自带的 OpenJRE,也可以解压即用 Oracle 官方的。不同库依赖不同版本的某个库,这不是 Java 独有的问题,Go 一样有这样的版本冲突问题。而且,Go 现在还比较依赖源码复用,而不是 binary 的复用。
典型的 Java 应用,也是打包成一个 jar 或者一个 war,一个二进制文件能比一个二进制文件+JRE 方便多少? 况且很多 Go 的库,依赖一些 so 或者 DLL,这个时候不是一个二进制文件搞得定的了,比如你试试分别用 Java 和 Go 做个带图形界面的软件,无论你用 Qt 还是其他 gui 库,在不同平台上打包都是个麻烦事。再比如一些 db 驱动,java 的直接在 jar 包里了,go 还要依赖对应的 so/dll,编译一个各个发行版通吃的 so 还是有点麻烦的。 |
55
DukeAnn OP @cunkouwdy007 前端硬伤
|