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

2024 年 9 月 3 日
 pythonee

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

18231 次点击
所在节点    程序员
139 条回复
0x90200
2024 年 9 月 4 日
channel
0x90200
2024 年 9 月 4 日
go 中的 channel
mosfet
2024 年 9 月 4 日
多重指针吧
看的头痛
concernedz
2024 年 9 月 4 日
DDD 这套理解不了
一直都还是用的 controller->service->impl->model
pythonee
2024 年 9 月 4 日
函数指针
左值右值
传值、传引用

虽然不难,但是也需要切换成计算机来思考
ninjashixuan
2024 年 9 月 4 日
channel 不难吧, 甚至这个逻辑上把 async 改成 sync 模式了我觉得是更好理解吧。
echoechoin
2024 年 9 月 4 日
@vfs #3 C 语言都可以返回函数。。。
csys
2024 年 9 月 4 日
@Dcrclub 👍这辈子有了
bugmakerxs
2024 年 9 月 4 日
箭头函数。。
macscsbf
2024 年 9 月 4 日
1. atomic
2. yield
3. yield + 递归
yanyoo2000
2024 年 9 月 4 日
上下文。刚学编程的时候困扰我很久
vfs
2024 年 9 月 4 日
@ltyj2003 虽然说 c 语言的函数也能返回一个函数指针, 但是好理解。 类似 golang 之类的函数作为变量到处传,调用, 看着很乱
vfs
2024 年 9 月 4 日
@superhot 其实我是不懂闭包和函数式编程, 我只是在说支持这样的 feature 会让代码的复杂度迅速上升, 不直观。 至于你说 java 怎么实现的, 那是编译器和虚拟机的事儿, 我的代码中不会出现把函数作为返回值或者参数到处传递(但是我在用 java1.8 , 如果新版本有其他特性, 我不知道)
vfs
2024 年 9 月 4 日
@DOLLOR 其实个人也写好几种语言(c++/c,java, golang), 其中 golang 就是支持这种设计的。 我没有说这种东西绝对是坏的, 只是说引入这样的特性, 很容易写出复杂度比较高的代码, 个人是不会写这种代码的(即使语言支持)
vfs
2024 年 9 月 4 日
@qW7bo2FbzbC0 是啊, 这种代码就不容易读, 调试的时候也会更重乱跳,太动态了。
vfs
2024 年 9 月 4 日
@echoechoin 是支持, 但是真的在代码中大量写这种代码,感觉就会很复杂, 代码不容易读。
HkMuxxx
2024 年 9 月 4 日
asyncio
junwind
2024 年 9 月 4 日
@Dcrclub 很有同感,就是故意为之,比如 laravel 框架,什么任务调度,不就是定时任务吗,什么事件监听,不就是一种埋点吗,有些东西,换个名词,就高大上,很多所谓的专家就是吃饱了撑了,故意让你看不懂,然后提升自己的逼格。
vfs
2024 年 9 月 4 日
@jeesk golang 和 cpp 还行,js 还真是学不会
shijingshijing
2024 年 9 月 4 日
@kinkin666 泛型还好,看到 C#后面的委托(Delegate)了吗?

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

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

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

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

© 2021 V2EX