我不能称自己是绝对的初学者go
,而且我绝对不是专家。
今天,我注意到一些非常令人困惑的事情。我正在试验 Unix 套接字和 Windows 命名管道,根据我的研究,有 2 个包支持 Windows 命名管道:
https://github.com/Microsoft/go-winio(我找不到任何关于这个包的文档、帮助、使用方法)
我的操作系统是 Linux,我决定试一试:go get
软件包,并编写代码以便稍后在 Windows 机器上进行测试,但令我惊讶的是,至少在 VSCode 中,这些软件包无法被工具。
例如,当我查看它时npipe
,我看到它只有npipe_windows.go
,如果我没记错的话,它应该会自动在 Windows 上使用。
所以,我认为 Go 中有特定于操作系统的包的概念,对吧?如果是这样,这是否意味着我不能使用例如 VSCode 的 go 工具来针对 Linux 上的 Windows 包进行编码?
在我看来,为了编写可以在 Linux 和 Windows 上运行的东西而不得不切换系统是非常不方便的……尽管我想这只有在我们在 Linux 上开发时才是正确的,而 Windows 应该涵盖两者。
但对我来说,不能在Linux上开发东西是没有意义的;在 IMHO 上开发的最佳环境(当然与 Apple 相关的代码除外)
我在这里错过了什么吗?
谢谢