我从来没见过比面向对象更糟糕的编程范式和语言

2023-02-14 12:31:17 +08:00
 soclearn

来看 java 的 hello world

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello world");
    }
}

好一个蠢字了得。为了输出二个字,要写这么多样板和层次

不能像 shell 一样平坦化吗

而且以后,你还要学”继承,保护,ducking type ,mixed in, 参数类,原型链,面向 interface ,设计模式,并发加锁,信号量“ 而且到最后,你会被告知”py,cpp 的 oo 都是山寨,只有 smalltalk,ruby 那种 oo 才是纯的“

并且最最后,你会发现先它们一步的函数式语言无须厚重的数据抽象,也能获得更好的代码结构和范式,并且天然并发,自带 dsl

10687 次点击
所在节点    编程
135 条回复
SeaTac
2023-02-14 14:34:44 +08:00
哈哈哈哈哈哈哈哈
meeop
2023-02-14 14:39:52 +08:00
哈哈哈😂
soclearn
2023-02-14 14:46:42 +08:00
@TWorldIsNButThis 冯氏语言代码结构中的数据是都 mutable 的,带来并发问题。现在的语言基本逃不出这个范畴,只有纯粹函数语言不同
soclearn
2023-02-14 14:56:20 +08:00
@tyzandhr 现在的语言实现有太多范式,比如 pipeline based,trigger based,data flow,组件式,为啥除了 oo 就是 fp ?

现在的语言,运行时实现中除了 object based 就是 function based 这倒是真的。
语言层可以有很多具体范式。
soclearn
2023-02-14 15:09:34 +08:00
@libook 用函数式作为元可以写出上层 class 和 oo 的语言,如 scheme 。用对象式作为元能写出上层函数式语言,如 ruby
现在的语言都是混合语言(实际上这里至少存在过程式,oo ,函数,混合)。
Jwyt
2023-02-14 15:10:02 +08:00
是的,你说得对
parthenon2007
2023-02-14 15:36:02 +08:00
J2EE 才是业界毒瘤。
LaTero
2023-02-14 15:38:19 +08:00
楼主真勇啊😄反正我是不敢在一般的论坛发这种的,大部分程序员都没有学过 oo 以外的模式,更体会不到 oo 的问题,所以自己唯一会的东西被“喷”就会感觉自己被否定。
现在的新语言都在去 oo ,往过程式和函数式走,比如用 composition 代替继承,用 variant 来动态派发。我之前看到把 if 理解成多态,还有工厂模式之类的东西是真的给我整无语了,脱裤子放屁也没这样的。而且在游戏或者一些高内存吞吐量的场合 oo 的性能是真的差。
est
2023-02-14 15:56:15 +08:00
你这不是 oop 吧。。。是 Enterprise™ code

我个人觉得面型对象都是跟游戏和 GUI 相关的事儿采用。
dobelee
2023-02-14 15:59:58 +08:00
目前市场上大部分 lang 是半 oo 吧,主流的全 oo 就 java 和 c#,放弃即可。
wetalk
2023-02-14 16:05:03 +08:00
习惯了 opp ,转而写函数式很痛苦
krixaar
2023-02-14 16:10:34 +08:00
喷 OO 有点打击面太广,喷继承就行了。
toneal
2023-02-14 16:12:26 +08:00
独行侠请随意,代码量扩张到多人协作时,,,,
eibici
2023-02-14 16:13:59 +08:00
所以要用 c++,想面向啥面向啥
wangpugod2003
2023-02-14 16:16:34 +08:00
建议 LZ 学 C++,从过程到 oo 到函数式到 Template Metaprogramming ,完全满足你的要求~
Martens
2023-02-14 16:16:42 +08:00
6
wangpugod2003
2023-02-14 16:20:14 +08:00
你甚至用 C++能写出公司大神都没人能懂的 fancy code ,但是那怎么样呢?
怎么找到如此多的 developer 和你一起搞?招聘?招不到人咋办
0o0o0o0
2023-02-14 16:21:38 +08:00
你可以使用 C#的顶层语句
monologue520
2023-02-14 16:25:00 +08:00
我喜欢这种热闹的帖子,币已投
RightHand
2023-02-14 16:31:19 +08:00
很好,那么:函数是对象么???

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

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

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

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

© 2021 V2EX