首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
V2EX  ›  问与答

为什么中小企业的技术栈不喜欢 Java ?

  •  
  •   1oNflow · 103 天前用 iPhone 发布 · 8906 次点击
    这是一个创建于 103 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近面试,发现中小企业招聘后台主要要求会 node, ruby on rails, php, python (频率递减),就见过两家提到过 Spring Java 的。其中一家技术负责人也和我说 java 太重了,但按我的理解,java 库这么全,spring 也是集大成开发非常规范,会 java 的人也最多,招聘、从无到有搭建服务、继而维护不应该是最方便吗,他的"重"体现在哪里呢?

    另外,java 的工作难道只能去大厂找了吗……
    第 1 条附言  ·  103 天前
    补充一点,感觉 go 用的公司也不少。

    开发周期、效率的确可能是重要的因素,js 全栈前后端顺带 react native 全都搞定了,但是不知道为什么又总能看到 js 行情不好的消息……
    123 回复  |  直到 2019-04-14 14:29:50 +08:00
    1  2  
        101
    puilu   103 天前
    靠了,我这个半吊子前端还想学 Java,你们竟然还没个准话,到底值不值得学?
        102
    blackboom   103 天前 via Android
    其实大部分是 hold 不住
        103
    qq976739120   103 天前
    没想到这个帖子下还有人分不清什么是强类型和弱类型,什么是动态语言和静态语言
        104
    LichMscy   102 天前   ♥ 1
    @mogutouer #77
    类比一下
    java 程序员说“ java 程序员普遍沙雕“ 和 “ 2019 年还在用 jdk6 只会 java -jar 充斥各种迷信和盲目的 java 程序员普遍沙雕“
    比如某个河南人说”河南人普遍沙雕“ 和 “ 偷井盖低素质的河南人普遍沙雕”

    最后说一句 开地图炮的却有 74 个发送感谢 看来 v2 畸形心理或者说从众心理用户增多
    还有 我是也 java 程序员
        105
    YORYOR   102 天前
    当还处在语言优越感的时候,说明还只是最底层的搬砖而已。
    在什么阶段 用什么能最快最好的解决当前问题才是核心需要考量的
        106
    iyangyuan   102 天前
    据我所知刚开始用 php 或 py,最后转 java 的比比皆是
        107
    lancelock   102 天前
    说 java 开发效率太低我怎么看不出来呢。以前各种配置各种 xml 也就算了。现在 spring boot 或者其他框架都是傻瓜式操作,基本 0 配置,一个 demo 一两分钟就能跑起来,我是没觉得效率低在哪里
        108
    mogutouer   102 天前
    @LichMscy #104 你想多了,只是周边有人(不是全部)正巧符合该评论描述,所以略微表示一下赞同而已。
        109
    dosmlp   102 天前
    又慢又耗资源,我接触过的 Java 程序员普遍解决性能问题的办法都是加机器,,感觉傻子一样
        110
    AngryMagikarp   102 天前
    每种语言都会对程序员的思维产生一定影响。说句不中听的话,JAVA 给人的感觉就是只会按部就班,不会变通,因此中小企业不太喜欢。
    JAVA 在大企业流行并不是 JAVA 本身多优秀,而是在那个可选语言贫乏的年代,JAVA 积累了大量的“解决方案”,而在中小企业,其他语言也能满足需求,而且没有历史负担。
        111
    murmur   102 天前
    @dosmlp 因为加机器比改代码省钱,改代码优化不测试了?测试不许要成本?数
        112
    LichMscy   102 天前
    @mogutouer #108
    不好意思 并不是代表赞同 这个意思是感谢回复者
    当然也可能你们都当成点赞了 但是退一万步讲你身边有人附和这个描述 然后感谢了一个“普遍沙雕”的回复
    想了半天 恕我实在是无法理解这种行为

    而且我确认的确不是我想多了 我依旧认为能说出三楼那种话的人非蠢即坏

    如果你依旧不认可我的观点 依旧认为我想多了的话 恕我不再多费口舌了
        113
    ymj123   102 天前 via Android
    node 前端写到后端,老板很省心。
        114
    gowk   102 天前
    说 Java 重的都是没把 Java 用好,觉得 IDE 重,框架重,OO 抽象重,打包部署维护重。我觉得是 OO 界的风气把 Java 带坏了,本来是一个身手矫健的高手,你非得给它穿上厚重的盔甲,再配上重型的兵器,它想灵动也灵动不起来了。Java 是非常好的语言,正确的使用才能发挥最大效能。
        115
    lihongjie0209   102 天前
    这个问题我之前就和我的领导讨论过了,得出的结论是这样的

    java 对开发人员的要求相对高一点。直白一点就是贵

    你想啊,php 可以在服务器上直接改代码。
    java 要想做到相同的效率你需要搞持续集成系统。
    你如果需要搞持续集成,那么你还需要比较熟练 linux

    和 php 同样的价钱怎么可能招到同样质量的开发人员。

    这只是一个很小的细节。
        116
    aijam   102 天前   ♥ 4
    领导:小王,客户那边有一个 JSON 的 API 需要你调用一下,今天你赶快写一个。
    写 python 的小王:import json; json.loads(...)
    写 node 的小王:JSON.parse(...)
    写 php 的小王:json_decode(...)
    写 ruby 的小王:require 'json'; JSON.parse(...)

    写 Java 的小王:
    嗯,我先装个 Jackson,好像没有 maven,先装个 maven。。。
    maven 配置怎么写来着?上网找找模版。。。或则让 IDE 自动生一个?
    嗯,终于写好了 maven 配置,build 下先。。。
    终于可以用了,怎么用来着?好像要定一个 Class 先?让我看看这个 json 什么 schema。。。
    这个 schema 怎么这么奇怪?太烦啦。。。
    。。。网上又搜了下,好像可以直接解析到 jsonNode ?好像还是这个方便。
    怎么弄来着? objectMapper.readTree(...)。。。好像还要 catch 一下 exception。。。等等,这个 key 存的是数字还是字符串来着?
    。。。终于能跑了,但是不太满意。。。
    嗯,objectMapper 好像应该用“依赖注入”传进来比较好,方便测试,那就在 spring xml 里搞一个单例的 bean 吧。。。
    哦对了,还没有下 spring,maven 配置改一改,在 build 下。。。
    既然都依赖注入了,是不是应该考虑下以后万一发现 Jackson 没有 Gson 快,可以替换底层的解析器呢?
    感觉这个想法不错,先写一个 interface JSONParser,再写一个 class JacksonJSONParser extends JSONParser,里面调用 Jackson 的方法,这样不但方便了注入,别人也不用直接调用 Jackson 的方法了。。。
    索性再写一个 JSONParserFactory,用来生成 JacksonJSONParser 或者 GsonJSONParser。。。
    感觉还不错,感觉我这代码写的鲁棒性真强,各种 design pattern 也体现了我作为高级程序员的技术实力,领导 code review 的时候一定会表扬我。。。

    第二天。
    领导:小王,昨天那个 API 调用写的怎么样了?
    小王:写好了,领导你看看。
    领导:哦,对了,刚才客户告诉我说那个 API 是 XML 的不是 JSON 的,你赶快稍微改一改我再看吧。
    小王:。。。
        117
    mogutouer   102 天前
    @LichMscy #112 你对三楼的看法犹如三楼对 java 的看法,既然你俩无法互相理解,其实是没有结果的,犹如这张图:


    另外,沙雕是个不那么严重的词,比如哈士奇可以叫他沙雕狗,就这么随意一说,你真是想得太多了。
        118
    Cyron   102 天前
    @CtrlSpace #100 笑死
        119
    pursuer   102 天前
    相较于弱类型语言,java 可读性很不错,有些库文档都不需要,看了方法签名就可以拿来用了。对我而言 java 的优点就是生态,classloader。缺点在于运行时实在太重了,繁琐的地方还可以搬出 kotlin,各种不常用的(比如 awt swing javafx 等)也在运行时里。
        120
    janus77   102 天前 via iPhone
    我觉得楼主在张口就来
        121
    Cbdy   102 天前 via Android
    @LichMscy

    开语言程序员炮是是我头脑发昏孟浪了,我也没想到这么多人点💕,可能是真的身边遇到过类似的人吧

    语言的设计和其生态的发展确实会影响使用的程序员,我后续写一篇文章就这个观点展开一下😳
        122
    charlie21   102 天前 via iPhone
    @Cbdy 是的,语言生态再好,语言设计负分,也没用 ...
        123
    mingyun   92 天前
    @aijam 哈哈
    1  2  
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4045 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 21ms · UTC 02:41 · PVG 10:41 · LAX 19:41 · JFK 22:41
    ♥ Do have faith in what you're doing.