你遇到过哪些比较难理解的编程语言概念

67 天前
 pythonee

我先来:递归 -> Y 组合子 -> Monad

10732 次点击
所在节点    程序员
139 条回复
DOLLOR
67 天前
@vfs
如果你从来只写过 java ,可能确实就会觉得函数作为返回值、参数、变量,是无法理解的事情。
反过来也一样,学过其他语言(尤其函数是一等公民的语言)的人看 java ,也会很困惑 java 这边为了传递 callback ,还要整出依赖注入、控制反转这些设计模式。
netabare
67 天前
DDD 和六边形那套东西,函数式编程的概念反而没什么难的
GuardX
67 天前
reactor 那套,比如背压。。
jeesk
67 天前
@vfs 这都嫌弃乱,那 golang 和 cpp 不适合你,连 js 都不适合你
xuanbg
67 天前
其实不是概念难以理解,更多的是名词难以理解。譬如 JS 的原型链和闭包
wangjh0802
67 天前
就没人提 控制反转 和 依赖注入吗 哈哈哈哈哈哈哈
Kaiv2
67 天前
@DOLLOR 不能这么说返回参数是函数和函数参数是函数,当作是匿名 class 就理解了。而且 Java8 就有了 lambda
TWorldIsNButThis
67 天前
闭包是穷人的对象 对象是穷人的闭包
nagisaushio
67 天前
楼主想要讨论编程语言概念,但楼上说的有些并不是编程语言概念
johnhsh
67 天前
闭包
GeekGao
67 天前
C++ 的模版、预编译指令
povsister
67 天前
Makefile
cookii
67 天前
@GuardX reactor 绝对是 java 程序员的噩梦
rabbbit
67 天前
指针
函数式编程
ts 类型体操
M4n5ter
67 天前
第一眼看到 go1.23 有些丑陋的迭代器和其文档中给出的 example 时
adoal
67 天前
@ltyj2003 然后发现很多程序员看不懂 Linux 举的那个编程品位例子里的二阶指针
levelworm
67 天前
@ltyj2003 像我这种小白就喜欢 C 。简洁,没那么多花招。函数式编程实在是超过了我的智商。
echoless
67 天前
我觉得没有难的概念, 只是大部分人(包括很多知名教授)没有把一个概念解释清楚的能力.

我看递归, Monad, 都是看多个资料慢慢懂得.

你要懂 C. 可能需要你先了解 A, B, 但是你可能不懂 A, 或者你知道 B’.

但是很多资料(或者老师), 给所有人直接讲 C.

那么就是恰好了解 A, B 的人明白了 C.

因为你不懂 A, 了解 B’, 又干扰了你了解 B. 所以会觉得 C 很难.

教学是 1 对 1 的. 需要知道学习的人的状态, 要学习的概念. 跟化学反应一样, 要把所有的条件都达到, 才能进入下一步.
echoless
67 天前
@levelworm #37 这个绝对是那些追求 Pure functional 的把函数编程给弄的阳春白雪了. pure functional 代价很大.
但是函数编程思想倒是很容易理解, 根本在于对状态(state)的处理上. C 语言可以 OOP 也可以 FP. 追求 pure OOP 或者 pure FP 就意义不大.
echoless
67 天前
插一句, 我想象中科班和非科班的 CS 区别, 在于编程语言理论, 计算理论. 但是实际上, 无论科班和非科班, 99.99%的人都是刷题, 被八股文, 搞我这个非科班的也可以滥竽充数.

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

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

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

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

© 2021 V2EX