web 开发, PHP 转 Java 可以做些什么?

2018-10-28 16:28:52 +08:00
 jswh
如题。
php 转 java 的话。
3085 次点击
所在节点    问与答
15 条回复
chinvo
2018-10-28 16:50:03 +08:00
转 C# 吧,真的,别看现在阿里带头用 Java,但是 Java 除了阿里站台之外真的没啥优势。

另外其实建议不要急着转,学扎实一门语言的情况下多学几门,尽量做到融会贯通,不要把自己定义为 XX (编程语言)程序员
jamesxu
2018-10-28 18:35:07 +08:00
@chinvo 你确定你说的真的大丈夫吗?
veightz
2018-10-28 19:13:04 +08:00
@ chinvo 你确定你说的真的大丈夫吗?
FunnyCodingXu
2018-10-28 19:34:34 +08:00
@chinvo 你确定你说的真的大丈夫吗?
Java 的生态完爆 c 井好吗 以及 JVM 系语言都是很强大的存在
falcon05
2018-10-28 19:38:37 +08:00
@chinvo 你确定你说的真的大丈夫吗?

为啥我听到的都是 c#转其他语言的
visonme
2018-10-28 19:42:47 +08:00
以前 PHP 该干的事情,只是换着 JAVA 接着干而已
kljsandjb
2018-10-28 19:45:13 +08:00
@chinvo #1 你确定你说的真的大丈夫吗?
blindpirate
2018-10-28 20:20:39 +08:00
@chinvo 你确定你说的真的大丈夫吗?
kran
2018-10-28 20:29:03 +08:00
做程序员一定要多学几打语言。
terry0314
2018-10-28 22:17:56 +08:00
C#有什么知名一点的互联网公司用吗
FakeLeung
2018-10-28 22:19:05 +08:00
@terry0314 据我所知,团贷网。
lihongming
2018-10-29 03:42:40 +08:00
@terry0314 这个问题得加个限定词——国内

北美 C#还是很流行的,你可以搜一下北美的招聘网站,C#跟 Java 的职位数量是同一级别的,互有上下
mmdsun
2018-10-29 07:46:48 +08:00
@terry0314 stackoverflow 微信支付清算网关
jswh
2018-10-29 10:39:01 +08:00
我是同意不要把自己定义为 xxx 语言程序员的,做后端来说,需要很多除了语言以外的知识。我自认为,要我换一个语言,熟悉两三周也能够比较顺畅的做功能。
提这个问题的缘由,是最近想到成都去,但成都的 web 开发基本是 Java。可能是我问题问的不清楚,其实应该是,从 PHP 到找 Java 相关的开发工作,可以做点什么。
clecho
2018-10-29 13:26:19 +08:00
我也是 php,但我周围同学都是做 java 的,他们也经常向我传教,所以我也看了一段时间的 java,不是很深入,可能比较片面,如果有说错的地方,还请路过的大佬指正。
1.首先 java 确实是目前市场占有率第一的,转 c#肯定是不可能的。c#虽然最近那个 croe 开源了,但短时间内肯定还是没办法和 java 抗衡。
2.java 和 php 作为 web 后端来看的话,java 比 php 强在多线程带来的并发处理上的优势(当然通过 swoole 的多进程也可以办到)、静态语言常驻内存,带来的定时任务,以及与其他硬件嵌入式程序交互的能力。单从简单 web 开发来看的话,其实两者相差并不大,差异点在于大型应用架构方面,java 有更多成熟的解决方案。
3.java 作为静态强类型语言比弱类型脚本语言带来的天生优势,强类型更容易纠错,java 啰嗦但严谨的语法让开发者不会写出很烂的代码,java 系的开发者多迷信各种设计模式,带来的更健壮的程序结构。(就我自己所感觉到的啰嗦繁杂在,php 里数据结构一个 array 走遍天下,java 里就要使用各种集合类,一个简单的变量类型操作都要包装成对象。但优点在于逼着开发者去重视规则与结构,很多 php 里底层封装好的功能,比如数组,数据库连接池,等等东西,在 java 这里他们都会自己对着源码再自己实现一遍,看有没有更好的实现方法,导致 java 很多基础功能如 json 等,他们都喜欢用第三方库,就像前端界强调的一样,轻量,小而美,渐进式框架。)
4.可以做些什么,如果你用的是 laravel、symfony、yii 等现代 php 框架,那么其实 java 中的 spring 等框架和他们都差不多,你需要学习的是语言和习惯方面的差异,比如 spring 的核心 ioc,在 laravel、symfony 中都是同样的核心。框架方面不需要花过多的时间,时间花在 servlet、jdbc、jsp 这些底层上就可以了。做一遍这些教程,再找一个 spring 系的开源项目,学习一下对方项目架构的写法,就差不多了。

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

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

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

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

© 2021 V2EX