V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
DoctorCat
V2EX  ›  程序员

Python 老人写 Java 代码,想吐,怎么治?

  •  
  •   DoctorCat · 2017-08-16 17:16:58 +08:00 · 12943 次点击
    这是一个创建于 2685 天前的主题,其中的信息可能已经有所发展或是发生改变。
    写了 7 年 Python 代码了,现在切换回 Java,有一种懵逼+想吐+砸键盘的冲动… 有类似境况的盆友么,如何治疗呢?
    第 1 条附言  ·  2017-08-17 13:25:43 +08:00
    感谢这么多盆友的回复。
    我以前写过 Java 代码的(好多年前) Eclipse 用过,不过感觉突然又回来写 Java,好迷茫的感觉,感觉除了基本的 Java 姿势外其他框架和新特性都不太了解了。
    有人说矫情,确实有点,不过更多的是迷茫,我估计我当时写 Java ( JDK1.4 ) 相信那会儿很多人都没写代码呢。
    现在感觉大家都好厉害,年纪大跟不上节奏了。
    119 条回复    2017-08-18 16:47:03 +08:00
    1  2  
    wjeasys
        1
    wjeasys  
       2017-08-16 17:22:37 +08:00
    继续回去写 python
    yzmm
        2
    yzmm  
       2017-08-16 17:23:04 +08:00   ❤️ 2
    写了 7 年的 java 写 py 同理
    DoctorCat
        3
    DoctorCat  
    OP
       2017-08-16 17:24:40 +08:00
    @yzmm 不觉得 Python 写起来很简洁么…
    DoctorCat
        4
    DoctorCat  
    OP
       2017-08-16 17:24:54 +08:00
    @wjeasys 工作需要,要撸 Java 呢
    Morriaty
        5
    Morriaty  
       2017-08-16 17:24:56 +08:00
    又不说是因为什么而换回 java.....

    如果是因为 python 效率跟不上,换 golang。
    如果是应用场景只有 jvm 环境支持,换 scala。
    bk201
        6
    bk201  
       2017-08-16 17:25:55 +08:00
    Jython ?
    DoctorCat
        7
    DoctorCat  
    OP
       2017-08-16 17:26:18 +08:00
    @Morriaty 想太多… 我的意思是说还是 Python 顺手写起来简洁
    SuperMild
        8
    SuperMild  
       2017-08-16 17:26:20 +08:00
    这就是人们常说的钱难赚,屎难吃。
    DoctorCat
        9
    DoctorCat  
    OP
       2017-08-16 17:26:44 +08:00
    @bk201 工作需要 工作需要,与 Py 无毛线关系
    DoctorCat
        10
    DoctorCat  
    OP
       2017-08-16 17:26:58 +08:00
    @SuperMild 人艰不拆
    zhx1991
        11
    zhx1991  
       2017-08-16 17:28:01 +08:00
    换工作
    ChangHaoWei
        12
    ChangHaoWei  
       2017-08-16 17:32:09 +08:00
    可以试试 kotlin。。哈哈哈
    metaquant
        13
    metaquant  
       2017-08-16 17:36:48 +08:00 via iPhone
    怎么个想吐法?吐槽也要详细些嘛
    laven
        14
    laven  
       2017-08-16 17:38:08 +08:00
    人艰不拆
    DoctorCat
        15
    DoctorCat  
    OP
       2017-08-16 17:38:34 +08:00
    @metaquant 好吧,VO、抽象类、接口、getter/setter 等等
    winglight2016
        16
    winglight2016  
       2017-08-16 17:39:36 +08:00   ❤️ 2
    看来你一定没看过周星星那边电影——你吐啊吐啊就习惯了,多大点事儿啊
    t2doo
        17
    t2doo  
       2017-08-16 17:39:46 +08:00 via iPhone
    都是 Print,相煎何太急🤦🏻‍♂️
    donething
        18
    donething  
       2017-08-16 17:41:30 +08:00 via Android
    kotlin 体验很不错
    yuanfnadi
        19
    yuanfnadi  
       2017-08-16 17:46:43 +08:00
    @DoctorCat kotlin 大法好
    yongzhong
        20
    yongzhong  
       2017-08-16 17:47:58 +08:00
    毕竟我盾是 java 栈的,指哪打哪吧
    DoctorCat
        21
    DoctorCat  
    OP
       2017-08-16 17:48:51 +08:00
    DoctorCat
        22
    DoctorCat  
    OP
       2017-08-16 17:49:17 +08:00
    @winglight2016 好的 我吐会儿
    idamien
        23
    idamien  
       2017-08-16 17:49:40 +08:00
    拍一拍 继续吃
    evlos
        24
    evlos  
       2017-08-16 17:50:03 +08:00 via iPhone
    说明工资没给够
    DoctorCat
        25
    DoctorCat  
    OP
       2017-08-16 17:51:03 +08:00
    @evlos 技术问题,技术问题
    ofblyt
        26
    ofblyt  
       2017-08-16 17:55:48 +08:00
    @DoctorCat 你说的这些基本都有工具生成或者SDK支持,接口实现这个……面向对象语言都跑不了
    hantsy
        27
    hantsy  
       2017-08-16 18:07:09 +08:00
    @DoctorCat

    目前感觉 PYthon 语法类似有 jade/PUG, CoffeeScript。。。这些都是前端的。

    JVM 虚拟上现在流行的语言太多了(应该超过 100 了吧),Groovy,Kotlin,Scala,总有一种适合你。。。我试了一圈还是感觉 Java 味正。
    janxin
        28
    janxin  
       2017-08-16 18:08:01 +08:00   ❤️ 1
    kotlin 应该可以有效降低恶心效果
    fds
        29
    fds  
       2017-08-16 18:12:19 +08:00
    写 typescript 很安逸,因为能自动格式化感觉比 python 还好。
    xiaoxubeii
        30
    xiaoxubeii  
       2017-08-16 18:13:23 +08:00
    吐着吐着就习惯了。
    DoctorCat
        31
    DoctorCat  
    OP
       2017-08-16 18:20:25 +08:00
    @ofblyt 求工具指点
    BBCCBB
        32
    BBCCBB  
       2017-08-16 18:23:27 +08:00
    你可以把你的代码贴出来,我们大家看看是你写的烂还是其他的?(逃
    zhuangzhuang1988
        33
    zhuangzhuang1988  
       2017-08-16 18:23:48 +08:00
    python 没啥技术含量呗,一直在舒适区
    hantsy
        34
    hantsy  
       2017-08-16 18:30:04 +08:00
    @donething @yuanfnadi 最近几天花了点时间看了下, 转换了我一个 Demo , https://github.com/hantsy/spring-reactive-sample/blob/master/kotlin/src/main/kotlin/com/example/demo/DemoApplication.kt 只是感觉 Kotlin 怪怪的。

    看了 Spring Blog,https://spring.io/blog/2017/08/01/spring-framework-5-kotlin-apis-the-functional-way 和 Spring 最新一个相关的 Presentation。。。Kotlin,+ Gradle Kotlin, Funcational Programming 慢慢的去掉自动化配置, 手动启动程序(去 Spring Boot ), 不用 Annotation( 去 kotlin-spring ), 全部用 Kotlin DSL 声明 Bean (和 Spring 4 时加入的 Groovy DSL 配置类似, 不需要 CGLIB )。 这是 Kotlin 要的效果吗?
    thankuu
        35
    thankuu  
       2017-08-16 18:32:10 +08:00
    你可以试试 scala
    DoctorCat
        36
    DoctorCat  
    OP
       2017-08-16 18:34:06 +08:00
    @zhuangzhuang1988 玩 CURD 业务,编程语言有啥技术含量,跟开车一样都是熟练工种,又不是造轮子的
    DoctorCat
        37
    DoctorCat  
    OP
       2017-08-16 18:34:37 +08:00
    @BBCCBB 开源的一项目,可以去看看:zstack
    st2udio
        38
    st2udio  
       2017-08-16 18:34:51 +08:00
    只用 Python 做深度学习,神经网络,没多大依赖感
    DoctorCat
        39
    DoctorCat  
    OP
       2017-08-16 18:35:03 +08:00
    @zhuangzhuang1988 舒适区,确实啊,毕竟熟练工了
    icedx
        40
    icedx  
       2017-08-16 18:35:07 +08:00 via Android
    楼主的适应性太差了
    Python 和 Java 都写
    写 Python 的时候还会怀念一下 Java 的某些特性
    DoctorCat
        41
    DoctorCat  
    OP
       2017-08-16 18:37:29 +08:00
    @icedx 老司机有什么秘诀增强适应性么?
    Phariel
        42
    Phariel  
       2017-08-16 19:00:41 +08:00
    唯一拯救你的方法只有 Kotlin
    EchoUtopia
        43
    EchoUtopia  
       2017-08-16 19:10:16 +08:00
    如果你用 java 做和 python 大致一样的事情肯定会这样
    ting723
        44
    ting723  
       2017-08-16 19:18:32 +08:00 via Android
    写了 5 年 java 准备开搞 Python
    anyele
        45
    anyele  
       2017-08-16 19:42:09 +08:00
    kotlin
    mooncakejs
        46
    mooncakejs  
       2017-08-16 20:03:43 +08:00   ❤️ 3
    写了 java 的人看 python 才会不安心吧:这也行,不会出错吧,这群小弟靠谱吗?
    doxiami1
        47
    doxiami1  
       2017-08-16 20:06:02 +08:00
    那是因为你用编辑器写的 java 吧,用 intellij idea 写 java,不会比写 python 的效率低
    limbo0
        48
    limbo0  
       2017-08-16 20:08:28 +08:00
    写 3 年 python 去写 scala 了, 握手 lz
    bigyhm
        49
    bigyhm  
       2017-08-16 20:09:29 +08:00
    写了 3 年 C 语言,然后写了 2 年 C#,然后写了 5 年 Java。感觉很松。
    hwsdien
        50
    hwsdien  
       2017-08-16 20:14:17 +08:00
    习惯了就好,我工作要写 Golang, Python, Java, Scala。
    chnyang
        51
    chnyang  
       2017-08-16 20:37:19 +08:00
    @hwsdien 强啊。。
    TheCure
        52
    TheCure  
       2017-08-16 20:38:13 +08:00
    嗯, Java 废话太多了
    Perry
        53
    Perry  
       2017-08-16 20:51:12 +08:00
    可以试试 Scala
    ytmsdy
        54
    ytmsdy  
       2017-08-16 20:54:38 +08:00
    写了 2 年 Python 以后,再回去写 Java,因为“;”处处报错啊!
    watsy0007
        55
    watsy0007  
       2017-08-16 21:11:56 +08:00
    换 ruby
    BBCCBB
        56
    BBCCBB  
       2017-08-16 21:30:28 +08:00
    widewing
        57
    widewing  
       2017-08-16 21:32:35 +08:00 via Android
    5 年 C,两年 java,小半年 scala,三年 python,感觉都挺好
    ThinkCat
        58
    ThinkCat  
       2017-08-16 21:48:07 +08:00
    写了两年 java 也觉得想吐。。
    Monstercat
        59
    Monstercat  
       2017-08-16 22:25:22 +08:00
    矫情
    lrh3321
        60
    lrh3321  
       2017-08-16 22:38:12 +08:00
    kotlin 感觉不错+1
    no13bus
        61
    no13bus  
       2017-08-16 23:04:32 +08:00
    geter/setter 用户 java 注解会自动生成的。
    viosey
        62
    viosey  
       2017-08-16 23:20:58 +08:00
    感觉 Java 好啰嗦
    chinvo
        63
    chinvo  
       2017-08-16 23:54:51 +08:00
    已经练成了在 py 文件里面忍住不写 ; 的绝技

    不过说起来 Java 真是太啰嗦太死板了
    RqPS6rhmP3Nyn3Tm
        64
    RqPS6rhmP3Nyn3Tm  
       2017-08-17 00:34:26 +08:00
    和我写 node.js 一样,异步是个什么鬼……
    sheep3
        65
    sheep3  
       2017-08-17 00:35:55 +08:00
    用 scala 啊,啊哈哈哈,我现在就是在生产环境用的 scala,挺爽的
    linmounong
        66
    linmounong  
       2017-08-17 00:50:05 +08:00
    工作以来两年 c++,小半年 java,一年 python,半年 c++,零星夹杂着 android/go/rails/js,感觉良好,换语言的时候需要一下找感觉,然后就爽了,而且语言这东西常用常新,特别是 c++
    如果让我自己选,python+go 做后端,js 前端吧

    忘记回答 lz 了,我一开始写 java7 的时候也有和你一样的症状,换了 java8+intellij 后大幅改善
    congeec
        67
    congeec  
       2017-08-17 00:57:55 +08:00 via iPhone
    用 ide 和 snippets 自动生成代码
    vcfghtyjc
        68
    vcfghtyjc  
       2017-08-17 01:22:51 +08:00
    @congeec 还有这种操作?
    lxml
        69
    lxml  
       2017-08-17 01:33:44 +08:00
    跟 Python 无关,我觉得谁写 Java 写多了都想吐,本来 Java 就以裹脚布著称。
    lxml
        70
    lxml  
       2017-08-17 01:34:10 +08:00
    @congeec #67 工厂模式的创新性实践。
    bravecarrot
        71
    bravecarrot  
       2017-08-17 02:02:12 +08:00 via iPhone
    写了三四年 py,现在白天写 c sharp 晚上写 java.
    不仅没有想吐,反而自我膨胀觉得自己很厉害😆
    markx
        72
    markx  
       2017-08-17 02:03:46 +08:00
    习惯了就好。
    Geoion
        73
    Geoion  
       2017-08-17 04:17:40 +08:00
    python 写多了,写什么都想一把梭,Kotlin 或者 Scala 吧
    jimzhong
        74
    jimzhong  
       2017-08-17 04:26:27 +08:00
    同感觉 Java 罗嗦
    congeec
        75
    congeec  
       2017-08-17 06:45:23 +08:00
    @congeec https://www.jetbrains.com/help/idea/generating-code.html 这是 JetBrains 家的 IDE 自带的代码生成。
    不过我平时用 Vim 写 Python,用 Snippets 加上单身 20 年的手速,撸代码也能溜得飞起
    snipes
        76
    snipes  
       2017-08-17 07:46:26 +08:00
    打开网银,看看余额就治好了。
    stanjia
        77
    stanjia  
       2017-08-17 07:58:24 +08:00
    请服用 clojure
    aheadlead
        78
    aheadlead  
       2017-08-17 08:09:07 +08:00
    楼主一定要记得用 IDE … 从 py 转过来的可能有这问题

    用文本编辑器写了 7 年代码 前几天刚用起 IDE 感觉“我上天了”
    YzSama
        79
    YzSama  
       2017-08-17 08:14:07 +08:00
    @yzmm #2 你看那个 Python 教程入门?
    patx
        80
    patx  
       2017-08-17 08:30:39 +08:00 via Android
    那么…可以选择不写 java ?
    linux40
        81
    linux40  
       2017-08-17 08:33:55 +08:00 via Android
    矫情
    xAx
        82
    xAx  
       2017-08-17 08:39:06 +08:00
    可能楼主不知道 ide 怎么用吧
    pythonee
        83
    pythonee  
       2017-08-17 08:49:33 +08:00
    矫情
    wupher
        84
    wupher  
       2017-08-17 09:06:40 +08:00
    换 Groovy 喽……

    如果队友能接受,换 kotlin 也行。我觉得换 groovy 对哪怕只会 Java 语言的同学来说也是可以接受的。
    LuciusChen
        85
    LuciusChen  
       2017-08-17 09:10:05 +08:00
    矫情
    danielzhang0212
        86
    danielzhang0212  
       2017-08-17 09:18:33 +08:00
    试试 Kotlin 吧
    clino
        87
    clino  
       2017-08-17 09:26:30 +08:00
    我之前有个同事原来写 java 的,来写 python 以后我也是受不了,本来简洁搞定的非要写一大堆传参数,代码大部分都在传参数,本来少量文件就能搞定的,非要写一大拖文件出来也是醉了
    microhz
        88
    microhz  
       2017-08-17 09:28:13 +08:00
    @clino 你的意思是该直接传个 model ?
    topbandit
        89
    topbandit  
       2017-08-17 09:36:15 +08:00
    试试写写 Rust,据说能取代 C++的语言,掌握要花比较长的时间,开发起来很慢
    clino
        90
    clino  
       2017-08-17 09:55:33 +08:00   ❤️ 2
    @microhz 他把一个小工具抽象成非常零碎的很多 class,在 n 个 class 中把参数传来传去,完全没必要
    MajorAdam
        91
    MajorAdam  
       2017-08-17 09:58:12 +08:00
    辞职
    sagaxu
        92
    sagaxu  
       2017-08-17 10:20:38 +08:00
    kotlin 写了一段时间,连 python 都不想写了
    SmiteChow
        93
    SmiteChow  
       2017-08-17 10:35:19 +08:00
    还行吧, 我感觉, 我是写了 5 年 Python, 现在又开始写 Java
    icedx
        94
    icedx  
       2017-08-17 10:42:23 +08:00 via Android
    去发现 Java 的美就好了
    ophunter
        95
    ophunter  
       2017-08-17 11:13:36 +08:00   ❤️ 1
    这么多年了,还停留在语言的表面
    djFFFFF
        96
    djFFFFF  
       2017-08-17 12:24:19 +08:00
    @linmounong 赞同,习惯了 Python 的各种语法糖后 Java 7 完全不想写。Java 8 至少还有 lambda
    djFFFFF
        97
    djFFFFF  
       2017-08-17 12:25:03 +08:00
    @icedx Java 有啥美…… Java 不就是实在吗。
    TangMonk
        98
    TangMonk  
       2017-08-17 12:46:49 +08:00 via Android
    写过 ruby 再写 Python 感觉难受
    pexcn
        99
    pexcn  
       2017-08-17 12:46:50 +08:00
    试试 Scala 吧
    pyufftj
        100
    pyufftj  
       2017-08-17 13:29:14 +08:00
    我最喜欢 Python 的就是脱了裤子就干,没有一点废话。甚至是没穿裤子就开干。
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1181 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 17:48 · PVG 01:48 · LAX 09:48 · JFK 12:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.