1
yule111222 2020-02-18 08:37:34 +08:00
好招人
|
2
zjq123 OP perl 好在 one liner
|
3
tuboshuv1 2020-02-18 08:43:17 +08:00
好招人,然后能想到得都能干
|
4
zjq123 OP java 好在纯打工普遍概率上比 php 工资高
|
5
tianxianggezhu 2020-02-18 08:48:16 +08:00 1
(⊙﹏⊙),为啥要反对 Swing ?做了几年的 pc 端软件,就是基于 Java swing,不仅 Windows 可以运行,各种 Linux 也能运行,包括国产的垃圾 Linux,国产 CPU 等等。虽然 C# 拖拽入门确实很简单,但是要深度改造就很麻烦,远远不如 Swing 自由,需要什么自己用键盘撸就好了!
|
6
defage 2020-02-18 08:48:59 +08:00
Java 足够简单。约束好,成熟的经验可借鉴的多。
|
7
zjq123 OP @tianxianggezhu 我可以为了速度快 拖拉拽 而舍弃 unix 桌面用户 java 的编译一次到处运行 跨平台 是商业泡泡 php 也是跨平台啊 swing awt 是反人类
|
8
lhx2008 2020-02-18 09:02:14 +08:00 via Android
语言管理者定的,当然希望语言稳定,稳定就得社区大而且有年头,还要开发难度小,所以 PHP 和 Java 是中小公司喜欢的原因
|
9
tianxianggezhu 2020-02-18 09:08:49 +08:00
@zjq123 看公司需求吧,我们面向的客户主要是 zf、国家 baoli 部门,有些用的 Windows,有些就是 Linux,而且 php 能做客户端?
|
10
aguesuka 2020-02-18 09:10:24 +08:00
我觉得,java 最大的优点是运行前尽可能会把错误检查出来,然后写的好的代码相当于自带文档,语法足够简单,调用别人写的代码配以 ide 一路点下去就行
|
11
zjq123 OP @tianxianggezhu 为什么要钻牛角呢 早就说过 反短板
|
12
Cbdy 2020-02-18 09:12:57 +08:00 via Android
JVM 上有几百个语言,还有类似于喵帕斯( MPS )、Graalvm 这样的平台工具,这方面勉强算生态大吧
|
13
ericgui 2020-02-18 09:20:14 +08:00
生态大就足够了
|
14
yinzhili 2020-02-18 09:29:06 +08:00
稳定,向下兼容性好,现成东西多,好招人,遇到问题也容易找到解决方案
|
15
RubyJack 2020-02-18 09:35:15 +08:00 1
java 好就好在 jvm
|
16
abcbuzhiming 2020-02-18 09:53:40 +08:00 1
用户群足够大,你好招人
背后的企业支持够强力,JCP 委员会,apache 基金会,哪个不是实力雄厚,有实力雄厚的企业支持,在产业界就会畅通无阻,很多问题其实不是社区解决的,而是背后的企业解决的,Linux 背后如果不是一大堆超级企业站台,靠 linus 一个人绝对不可能到今天这个地步 |
17
ZSeptember 2020-02-18 09:55:37 +08:00
Java 语言也简单啊,无脑,不需要多想,坑少,优秀的工业语言。再加上生态,性能,所以公司喜欢用。
|
18
ZSeptember 2020-02-18 09:56:34 +08:00 2
不知道你反 Java 什么,带着先入观点,能听进入大家的想法吗。
|
19
zjq123 OP @abcbuzhiming 嗯 linux 几年前就明白 就现在难用的 linux 桌面系统 也是靠企业支持 不然连这点用处都没有
|
20
bbao 2020-02-18 09:58:05 +08:00
go 启动快,其实不是啥特别的优势,启动快……慢,能怎样呢,慢能慢到哪里去呢。又带来不了什么,开发的时候「感官舒服」一点,仅此而已。
|
21
zjq123 OP @ZSeptember 我是先学 java 然后转 php 的 先学会安装 linux 然后才安装 win 的 你知道个屁呀
|
22
abcbuzhiming 2020-02-18 10:01:13 +08:00 2
@zjq123 额,其实 Linux 桌面如此难用的一个很重要的原因其实就是因为它没有什么重量级的支持,大家都不怎么上心,甚至投入都不够,相反 Linux 在企业级服务的领域,那真是很多大公司货真价值投入真金白银贡献代码。所以 Linux 能在服务器领域占 6 成份额不是浪得虚名。但相对的,也能看出能在服务器领域占据接近 3 成份额的微软的内在实力有多可怕,它是以一家大企业的力量对抗一堆大企业
|
23
huruwo 2020-02-18 10:01:29 +08:00
大还不好吗
|
24
janxin 2020-02-18 10:02:45 +08:00
好招人,比小众语言好压工资
|
25
BBCCBB 2020-02-18 10:03:09 +08:00
Java 稳.
|
26
aabbcc112233 2020-02-18 10:06:37 +08:00 via Android 10
|
27
clf 2020-02-18 10:33:38 +08:00
1.安全
2.可移植性 - 除了 UI 有关的部分外,其它 Java 库能很好的支持平台 duli 性。 - Java 的基本数据类型的大小和有关传递的行为都有明确的说明。 (例如,Java 的 int 类型永远是 32 位的整数。在 Java 中,数值类型有固定的字节数。二进制数据以固定格式进行存储与传输,消除了字节顺序(大端小端)的困扰。字符串采用 Unicode 存储) 3.多线程 - Java 是第 1 个支持并 发 程序设计的主流语言。 4.高性能 - 字节码可以(在运行时)动态地转换成对应运行这个应用的特定 CPU 的机器码。 5.动态性 - Java 相比 C/C++来说更具有动态性。 - 库中可以自由地添加新方法和实例变量,对客户端却没有任何影响。 - 在 Java 中找出运行时类型信息十分简单。 |
28
zjq123 OP @aabbcc112233 我没有反 java 而是反 swing awt 你自己没看清楚 我早说清楚了 没有语言是万能的 。
比如以前就有大牛鼓吹 erlang 是下一代编程语言 拜托 erlang 只适用很小的场景 而且 erlang 是 1986 年就已经开发出来了 比 perl 都早 |
30
pursuer 2020-02-18 11:01:42 +08:00
Java 的 ClassLoader,这个 C#也有,这个可以为代码热更新提供很大的便利。像 c/c++通常也有动态库,但动态库的符号似乎不能限定到一个命名空间内,也不支持符号卸载。除非能用上像微软的 COM 这类框架,但大部分库不会特地支持这类框架。
|
31
tt67wq 2020-02-18 11:06:43 +08:00 via iPhone
jvm 生态好
|
32
br00k 2020-02-18 11:13:19 +08:00
jetbrains 表示很慌
|
33
tyrantZhao 2020-02-18 11:13:30 +08:00
主要岗位多
|
34
Ericcccccccc 2020-02-18 11:15:45 +08:00
大规模被使用, 支撑大规模业务得到有效验证. 由此带来坑也少, 因为前人都踩过了, 不用花大力气处理奇葩 bug 上. 最佳实践的路子他人也铺好路, 直接拿来用就行
相关生态完整而且成熟, 业务中使用的第三方组件 /开源产品不会说不迭代就不迭代, 想要什么基本都有(比如我上次尝试学 go 想找个和 mybatis 类似的组件, 结果找了一大堆出来 ) 会的人多, 好招人, 这个就不多说了 |
35
Michaelssss 2020-02-18 12:04:03 +08:00 via Android
招人简单啊…会写 java 的满地有,对于资方就是最大优势,至于你说什么特性啊,用途啊都没有这条有意义
|
36
cdh1075 2020-02-18 14:59:38 +08:00
底层语言和函数式语言与 java 完全不是一个类别的没法比
剩下的 go swift php python 各种 script perl ruby csharp....等的优点 java 几乎全都提供了实现方法,关键就看你用不用了,比如 java 早就提供了 jaotc,还有人说 java 和 go 的性能问题,早就提供了 jmod,还有人说 jre 体积大要安装,早就提供了不知多少种垃圾回收,还有人吹 swift 的 gc 我觉得 java 除了有点费键盘,没别的缺点了,但都 2020 年了,java 代码里的“废话”有 ide 帮忙写的,又不用人写 |
37
zjq123 OP |
38
murmur 2020-02-18 15:49:59 +08:00
优点是名字好,java 加瓦,添砖加瓦,说明 java 是大型应用的基石
|
39
tairan2006 2020-02-18 16:12:48 +08:00
Java 生态好,语言功能比较丰富( Java8 以后),性能比下有余,也比较好招人。
缺点:写网络中间件 /高并发程序比 Go 难写多了;占内存太多;打包体积太大。 |
40
qwertty01 2020-02-18 16:18:26 +08:00
@zjq123 awt、swing 这两个东西不是都死了吗? javafx 能了解一下? PS:开发桌面程序不是 c#和 qt 干的事吗?
|
41
paoqi2048 2020-02-18 16:27:08 +08:00 1
Java,永远滴神!
|
42
wind3110991 2020-02-18 16:35:22 +08:00
Java 用了一年,比起 cpp 最好的我觉得在于,不用手动管理内存,并且大数据生态比较齐全( hadoop 生态),依赖库管理方便
|
43
zjq123 OP @wind3110991 cpp 就是好在不需要垃圾回收 高频交易 密集型计算
|
44
wysnylc 2020-02-18 17:21:23 +08:00
对于老板来讲,java 下限高可以保证木桶的最短木板能够符合老板期望
|
45
PiersSoCool 2020-02-18 17:34:08 +08:00
歪个题,没有人觉得 golang 的工程性更好吗。语法简单不多也正好,没继承地狱的问题( Spring 源码 omg )。但是 Java 全家桶和 Stream 确实爽。
|
46
CuVee 2020-02-18 17:39:54 +08:00
还真是好招人。。。
一个语言火不火不能单看语言特征的啊 各方面都要考虑的啊 比如 JS,在 ES5 出来前这语言简直就是垃圾 但是保上了浏览器大粗腿,加上最近十年 ES56789. 直接晋升第一语言了 |
47
lithiums 2020-02-18 18:28:48 +08:00
简而言之适合面向“二三四五流程序员”编程。
|
48
BruceTu 2020-02-18 19:01:38 +08:00
讨论这个语言好还是那个语言好这件事本身就很 low
java 好招人那也是因为 java 需求大,学的人才多,实际上易学性上 java 不占优势 java 在某些方面效率是低点,语法是繁琐点,但是语言的完备性,健全性上是其他语言不具备的 如果限定一个人只能学一种语言,那肯定是 java 老板招人都希望能根据业务变化在不变动人员的情况下随时切换各个项目,招会 java 的是最节省成本的 |
49
6IbA2bj5ip3tK49j 2020-02-18 20:09:33 +08:00
|
51
hpeng 2020-02-18 20:41:52 +08:00
用热度高的语言。不然遇到问题,搜不到解决,就得自己搞。多累(来自咸鱼的我
|
52
bug4c 2020-02-18 21:22:57 +08:00 via iPhone
java 恰恰就是因为规矩多,语法啰嗦,写法统一让系统非常好维护
|
53
hangszhang 2020-02-18 21:56:48 +08:00
Jetbrain 瑟瑟发抖
|
54
zjq123 OP 相比 go 我觉得我会爱上 java 异常机制
我继承了 perl 码农的懒 |
55
james122333 2020-02-18 22:36:18 +08:00
什么时候啰唆 什么时候不要啰唆 才是好的
啰唆到底人也没那么多精力可以掌握代码 人体力不足的时候 就是难以维护的状况了 很多时候是不是被小状况卡了很久? (滑稽) |
56
miaotaizi 2020-02-19 00:35:21 +08:00 via iPhone
java 再好有何用,照样给你写成 php
|
57
janus77 2020-02-19 00:56:47 +08:00 1
生态大就是最好的好处
不止是框架,还有招人 开发成本 维护成本 你说反短板,可是从工程的角度上来看 有些东西恰好就是考虑短板。 正是因为 java 没有长处,所以说他也就没有短处。没有短处就是最大的长处 |
58
fcten 2020-02-19 02:32:02 +08:00
写过比较多的语言有 C/C++、Go、Java、JavaScript、TypeScript、PHP、Lua。
对于面向上层业务逻辑的服务端开发来说,Java 是目前最好的选择之一。 在软件开发的其他领域( GUI、游戏、基础设施等等),则往往有更优的选择。 |
59
alphatoad 2020-02-19 03:34:38 +08:00 via iPhone
Haskell 天下第一
|
60
zjq123 OP @fcten 你厌恶不厌恶 go 的 if error != nil
你觉得 java 能替代 go 吗 go 还有个好处 能直接用指针 java 只能 jni |
61
DEVN 2020-02-19 09:15:54 +08:00 via iPhone
目光短浅,因为你不是做 Java 的。
|
63
zjsxwc 2020-02-19 09:37:03 +08:00
java 是个好语言,不过说生态好其实也就那样,一个是各种私货 jvm 之间不兼容的也多,还有就是很多历史遗留的屎坑项目,现在都是废弃不用了的,于是就造成生态比别的语言多的样子。
|
64
pursuer 2020-02-19 09:39:43 +08:00
@zjq123 go 的指针不支持指针运算,我觉得这只是另一种表现形式的引用。要说 cgo 那就和 jni,jna 差不多了。
go 的优势是它的默认实现有可动态扩展的栈,方便创建很多协程,c#的无栈协程我觉得是更高效的协程方式,但是会增加编写负担 |
65
momocraft 2020-02-19 09:40:58 +08:00
常驻内存 也是优点吗? 相对 cgi 的优点?
|
66
Ravenddd 2020-02-19 09:50:46 +08:00
好养活自己,一条就够了
|
68
cabing 2020-02-19 10:32:10 +08:00
一直觉得 java 很稳,除了费代码外。社区和功能,生态特别强大,兼顾性能和开发速度。
|
70
fcten 2020-02-19 11:31:55 +08:00
@zjq123
if err != nil 已经被吐槽得很多了。确实不算优雅,但是也不算太坏,而且也有自己的优点。 Go 的指针和引用其实是类似的,而且还引入了和 Java 一样的 NPE 问题。我觉得是比较糟糕的设计。 Go 和 Java 是相互替代性比较强的。但是从各个角度来看,从 Java 迁移到 Go 的情况应该要更多一些。 |
71
casillasyi 2020-02-19 11:50:47 +08:00
不要再在各个语言之间来回争论,比较了。各有各的优势,编程这个行业,90%是业务逻辑。业务逻辑最主要的要求是可以迅速实施,迅速迭代,Java 就非常合适,生态成熟,文档全面,简单好修改,性能的需求不是那么强烈。中间件之类的对性能要求很强的场景,可以用 go,rust,c/c++等等。数据分析之类的脏活累活,用 python 就很方面,快速灵活,用完即走。看你自己的定位和从事的项目,争论哪个好哪个坏,没必要
|
72
zjq123 OP @casillasyi 嗯 我早被 php 惯坏了 我不是想争 而是集思广益
|
73
inwar 2020-02-20 09:11:25 +08:00 via Android
语言约束强,好入手,避免了垃圾代码;隔离了大部分底层,适合纯做业务(相对 c/c⺾);
语言也是面向需求生成的,没有绝对的好和差 |
74
bk201 2020-02-21 13:18:24 +08:00
日经贴。反对 一门语言是什么鬼?程序员何必拘泥于语言,既然反对就别用,没啥大不了的。
优缺点这种网上一搜一大把,但绝对不是你贴子里的说法,发表见解之前麻烦搜索一下。 |
75
yitingbai 2021-03-12 15:26:55 +08:00
@tianxianggezhu java 确实方便, 最近我用 javafx 写了一个常驻后台的工具,功能很好用, 费劲心思降低资源占用都办不到, 启动空窗口就占用 100M+,44 个线程, 最小化到后台, 哪怕什么任务都不做并且手动 gc 后占用也在 300M 左右, 太难了, 相同功能的软件, mac 原生版只需要 30M 内存, 唯一的好处也就剩下跨平台了
|