V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Lighthughjiajin  ›  全部回复第 1 页 / 共 3 页
回复总数  41
1  2  3  
112 天前
回复了 yinlei212 创建的主题 Python [困惑] 写好的 Python 应用如何分发?
pyinstaller 能保护源码吗?
223 天前
回复了 feifeideyu 创建的主题 Linux 自用电脑如何搭建 Linux 系统进行开发?
怎么不 docker
223 天前
回复了 zhuoyue100 创建的主题 Go 编程语言 怎么提升 golang 开发水平
@mryaocom python 咋干不下去了。
我写的是组合多个结构体来满足函数的 Device 接口参数要求,我看你写的是组合多个结构体来调用 sync ,也就是最终都是同一个类型,就是一个结构体。
@Contextualist 感谢大佬,我整理了一下。
https://go.dev/play/p/Z5Hl57w5XdF
看看我理解的对吗?
@Contextualist 这个写法下,有个缺点,Router 无法重写 Device 的 sync 方法,类似于以下 Python 代码
```
from abc import ABC, abstractmethod


class Device(ABC):

@abstractmethod
def fn(self):
raise NotImplementedError

def sync(self):
print("Start Sync ...")
self.fn()
print("Start Done.")


class PC(Device):

def fn(self):
print("PC sync")


class Router(Device):

def fn(self):
print("Router Device sync")

def sync(self):
print("Router 重写了 sync")
super().sync()
print("Router sync ...")


def start_sync(d: Device):
d.sync()


if __name__ == '__main__':
r = Router()
start_sync(r) # Run r.fn()
start_sync(PC())

```
@Contextualist 终于看到比较地道的写法,是我想了解的。
还有一点疑问,在这场景下,IDevice, Device 结构体、接口的命名有什么约定吗?
2023-04-07 13:43:35 +08:00
回复了 Andor_Chen 创建的主题 推广 送几本“通透”的《流畅的 Python (第 2 版)》
希望有机会看看这本书
2023-02-25 19:15:04 +08:00
回复了 Lighthughjiajin 创建的主题 互联网 群辉 + openwrz + zerotier ping 不通
我理解是,我本机访问一个不是同网段的地址,应该会问网关,但是默认网关是主路由。并不会走到 openwrz 。我回家看看我的主路由器支不支持给我配
SO 文件是别人提供的,不是我自己写的 。
2022-10-18 19:30:06 +08:00
回复了 Lighthughjiajin 创建的主题 程序员 关于在 Windows 终端执行 Python 文件
@ysc3839 是的,但是后面装 vs code 的时候,又把 .py 关联到了 vscode 上 --
2022-10-18 19:23:29 +08:00
回复了 Lighthughjiajin 创建的主题 程序员 关于在 Windows 终端执行 Python 文件
@fzls 已解决,谢谢大佬
2022-10-18 19:12:02 +08:00
回复了 Lighthughjiajin 创建的主题 程序员 关于在 Windows 终端执行 Python 文件
@ysc3839 请问如何关联 py 文件为 python 解释器
2022-06-16 17:21:20 +08:00
回复了 Cyanhall 创建的主题 Python 你们怎么看现在 Python 的发展方向?
@Aprilming 大佬方便透露 v 吗,一起学习
2022-06-09 09:22:05 +08:00
回复了 roseduan 创建的主题 程序员 三年职业生涯回顾
加油,我大专毕业,环境治理专业,毕业几年干过很多工作,最后自学编程转开发,现在依旧还在坚持学习,庆幸自己找到喜欢的事情。 共勉。
2022-06-06 11:39:14 +08:00
回复了 liqinliqin 创建的主题 程序员 鸿蒙开发板及培训价格 39.9 是不是合适
人不在深圳,技术培训交流可以直播么
2022-06-06 11:32:25 +08:00
回复了 liqinliqin 创建的主题 程序员 鸿蒙开发板及培训价格 39.9 是不是合适
想参与
2022-06-06 11:30:11 +08:00
回复了 liqinliqin 创建的主题 程序员 鸿蒙开发板及培训价格 39.9 是不是合适
0 基础能学吗?
2022-06-03 22:23:56 +08:00
回复了 Lighthughjiajin 创建的主题 Go 编程语言 为什么我觉得 GO 有些语法很奇怪?
为什么解引用需要加括号?是因为 * 的优先级比 . 低 吗?
```
(*person).name. // <=> person.name
```
2022-06-03 22:18:30 +08:00
回复了 Lighthughjiajin 创建的主题 Go 编程语言 为什么我觉得 GO 有些语法很奇怪?
追加新问题
在我开始接触 Go 之前,有许多朋友跟我说,
1 、Go 的语法严格(例如 { 不能单独换行,结构体里的最后一项要有 , )
2 、Go 写的代码具有更好的可维护性 (和 Python 对比)

最近刚学到 struct ,感觉 struct 和 方法 分离的方式,不太利于代码维护,很可能会出现这个文件里定义了 struct ,另一个文件里定义了 方法,那读代码的时候就很麻烦。 虽然这种情况是认为造成的,但是为什么不设计的 struct 数据 和 方法在一起。 还是说 Go 这么设计有什么原因,或者其他有益的地方?
1  2  3  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4758 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 29ms · UTC 09:56 · PVG 17:56 · LAX 02:56 · JFK 05:56
Developed with CodeLauncher
♥ Do have faith in what you're doing.