V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  james122333  ›  全部回复第 27 页 / 共 46 页
回复总数  916
1 ... 23  24  25  26  27  28  29  30  31  32 ... 46  
2022-03-12 20:04:55 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
@dzdh

如果是传入的是 type interface 可以这样做
不然其实只是三方包不希望你这样做
go 本身挺有限制 往好处想其实就是一堆人说的规范
2022-03-12 19:50:42 +08:00
回复了 darklinden 创建的主题 程序员 PHP 原来是这么神奇的语言吗?
动态语言就是要方便 不然相比那些啰嗦的语言有什么长处 js 也很神奇 对象与数组分不清楚
2022-03-11 18:26:48 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
那个 A 函数只要透过 makefunc 把 call 函数并入一次就可以 比较麻烦的是怎么让一切自动完成
2022-03-11 18:01:36 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
@dzdh

这只是 type embedding 如果要实现你要的风格 并且有其他动作 就得替换方法包一层 每个都要呼叫魔术方法

另外反射讲的是写个 library 把下列类似代码串起来(反射再包一层的方法是 reflect.MakeFunc) 然后如何初始化 struct 内 func 自己想想 毕竟每次 new 一个出来还要指定哪个 func 很麻烦 所以才会有后面那个`bind` 主要是透过 reflect.MakeFunc 替换原来 func field 指定先做魔术方法再做原来的方法
type Test struct {
Call func(t *Test) `bind:"Call"`
A func(t *Test) `bind:"A"`
}

var Call = func(t *Test) {
fmt.Println("Call")
}

var A = func(t *Test) {
fmt.Println("A")
}
2022-03-10 19:01:58 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
你要用对象写是会很痛苦的
2022-03-10 19:00:20 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
可以自己写个 lib 用来初始化 类似 new 或者依赖注入都可以 乍看之下风格是差不多的 type embeding 的状况这些函数 field 也会有
2022-03-10 18:39:20 +08:00
回复了 dzdh 创建的主题 Go 编程语言 go 怎么实现 方法前置操作 类似 PHP 的__call
__call 如果没做其他什么直接 type embeding 就可以
有的话只能用反射外包一层 并且方法必须要是 field 不能是 struct 内 method
不然完全找不到 Address...
2022-03-10 09:59:18 +08:00
回复了 huigeer 创建的主题 PHP Info from https://repo.packagist.org: #StandWithUkraine
所以这就是建立自己生态的重要性 这东西其实不难的
都玩自己的肯定好
2022-03-06 19:11:58 +08:00
回复了 fengsien1999 创建的主题 PowerShell 现在 PowerShell 是不是没有什么用?
就算这工具有 linux 版也不会去使用 真的不如直接写其它语言 而且 shell 已经够 power
我都有一个自己的库 也实现了命名空间
对象功能正在研究
2022-03-01 14:21:29 +08:00
回复了 aababc 创建的主题 PHP PHP 数组转对象
你可以写一个基本数组与进来的资料进行结构比对 这样的好处是不用用反射
转成对象需要反射 用法和 java 差不多 效能有些许的影响
2022-02-16 20:13:35 +08:00
回复了 Ashore 创建的主题 程序员 PHP 大神? GO 大神?
@sagaxu

本来就是种取舍 然而这种方式还是比都是类别好多了 你不是总是 array. 如果你会写 multilevel array 一样一目了然 不用一直往下追类别
2022-02-16 19:42:09 +08:00
回复了 Ashore 创建的主题 程序员 PHP 大神? GO 大神?
外面套个类给个命名空间都可以
2022-02-16 19:37:39 +08:00
回复了 Ashore 创建的主题 程序员 PHP 大神? GO 大神?
这样做还有个好处 当你需要改数据结构的时后会产生非常惊人的效果
2022-02-16 19:02:38 +08:00
回复了 Ashore 创建的主题 程序员 PHP 大神? GO 大神?
@sagaxu

可以定义函数专门用来产生某个 array
可维护性是人搞出来的 一个语言不会因为本身限制多就写不出屎山 只要它为了完成複杂需求
2022-02-07 12:45:45 +08:00
回复了 cala 创建的主题 程序员 提高编程效率的方法,抛砖引玉
重构非常需要打字 思考是最花时间的 但说实话有时候是语言与框架的原因导致你需要思考如何实现 非常规应用如此 自写轮子其实需要时间少很多 一般业务逻辑倒是还好
2022-01-30 08:36:38 +08:00
回复了 rv54ntjwfm3ug8 创建的主题 Linux policykit 的作用是什么?直接 remove 会不会更安全?
@secondwtq

那一整串本来就很糟糕 实现的也就一点点
然后从以前到现在出了多少漏洞了...
只是对于不会写脚本的比较友好
刻意复杂除了会坑到别人也会坑到自己
现在很多东西一个人很难掌握住了 十分糟糕
不是很认同制造问题给别人处理做大需求这种风气
2022-01-25 23:24:59 +08:00
回复了 aljun 创建的主题 程序员 2022 年最适合写业务代码的编程语言是哪个?
好像如果有 eval 也可以实现任意类型
2022-01-25 23:04:50 +08:00
回复了 aljun 创建的主题 程序员 2022 年最适合写业务代码的编程语言是哪个?
@bthulu

有 代码生成 不然只能换标准库了
reflect.value.call 对效能实在太伤了 又不能改函数 body
2022-01-25 20:13:03 +08:00
回复了 aljun 创建的主题 程序员 2022 年最适合写业务代码的编程语言是哪个?
@Hanggi
还是有 用反射 不过效能很差... 正在研究
2022-01-25 10:02:09 +08:00
回复了 aljun 创建的主题 程序员 2022 年最适合写业务代码的编程语言是哪个?
@UserNameisNull
基本上差不多就是
(随你定义)

/**
*@Annotation1
*@Annotation2
*/
1 ... 23  24  25  26  27  28  29  30  31  32 ... 46  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2618 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 13:47 · PVG 21:47 · LAX 06:47 · JFK 09:47
Developed with CodeLauncher
♥ Do have faith in what you're doing.