V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  weiwenhao  ›  全部回复第 9 页 / 共 22 页
回复总数  436
1 ... 5  6  7  8  9  10  11  12  13  14 ... 22  
301 天前
回复了 weiwenhao 创建的主题 分享创造 nature-lang 编程语言的第三个版本发布啦
![测试图片裂开]( https://i.imgur.com/9DLuC70.jpg)
301 天前
回复了 Mark24 创建的主题 问与答 为何而卷?
@SuperMild 很有道理,作为一个底层人,永远不知道什么是真的,什么是假的。
303 天前
回复了 weiwenhao 创建的主题 分享创造 nature-lang 编程语言的第三个版本发布啦
@Saturn72 已经发布的语法中还没加进来,在计划中是有的~
cmdcat A -> B, B 启动 C 之后,B 自己退出, 然后 C 再次启动新的程序能够追踪到么。
307 天前
回复了 timqian 创建的主题 分享发现 LK-99 磁悬浮首次被验证!
大道至简?
307 天前
回复了 taco1wang 创建的主题 汽车 吉利星越 l 这款车咋样, 各位
@Keystroke 这个价位领克的哪一款车比较推荐呀.
311 天前
回复了 EyebrowsWhite 创建的主题 推广 [抽奖] 评论送两台 OneKey Mini
搏一搏
311 天前
回复了 YhXyt 创建的主题 求职 突然发现好像很少出现武汉公司的招聘贴
校招性价比更高.
313 天前
回复了 shuimitao 创建的主题 游戏 90 后是不是玩不动游戏了?
switch 确实不错, 可以碎片化的时间玩, 启动游戏成本非常低, 游戏可以常驻后台.
314 天前
回复了 gitrebase 创建的主题 Go 编程语言 关于 Go Web 项目的项目结构
@gitrebase

1. 就叫 package user, 如果冲突就 import userservice "service/user" 就可以了. 没啥不雅的吧
2. 假如 service 互相引用就说明存在共同逻辑呗, 如果是和 model 相关的就下沉到 model, 如果是通用的业务逻辑就下沉到 util, 如果都不是, 我就继续在 service 单独起一个目录来建. 实际编写过程中, 我一般不会直接创建 service, 需要复杂逻辑时才会提取到 service 里面. 否则基本都在 model 中写了.

3. 这个不是 golang 的方案, 就是我自己的总结学习的方案. 原则上遵循瘦 controller, 胖 model, 如果 model 太胖了,才会提取一个 service package.
314 天前
回复了 gitrebase 创建的主题 Go 编程语言 关于 Go Web 项目的项目结构
@gitrebase

1. controller 排版有问题, 应该是 controller/user/user.go . 也就是一个模块一个 package

2. model 下面全部都放在 package model 下面. 是为了方便处理模型之间的关联关系, 比如 user 的多个 posts . 相反的 post 属于 user 也可以在 post 模型定义, 不会出现引用循环. 我自己是这么用的,写起来比较简单快捷.

```go
type struct User {
Posts []*Post `gorm:"-:migration" json:"posts,omitempty"`

}

// user 相关的方法就用接收器来写, 需要对外访问的就大写, 不需要对外访问的就小写.

func (u *User) xxx() {
}

```

3. 另外访问的层级关系需要严格限定,避免造成引用的循环. router -> controller -> service -> model 或者 router ->controller -> model

util 模块则可以在任意模块被访问的,和业务无关的通用模块

4. 不是很熟悉面向对象的内聚之类的, 我的原则是写起来和看起来简单一点就行.
314 天前
回复了 gitrebase 创建的主题 Go 编程语言 关于 Go Web 项目的项目结构
❯ tree .
.
├── cmd
│   └── root.go
├── controller
│   └── user
│   └── user.go
├── go.mod
├── go.sum
├── main.go
├── middleware
├── model
│   ├── model.go
│   └── user.go
├── router
│   └── v1.go
├── service
└── util
└── helper.go

平面架构了解一下, 总之就是在项目根目录下加主要模块, 比如定时任务,就加 jobs. 需要什么就加什么模块. 另外 model 的核心库是 gorm, router 的核心库是 gin, cmd 目录的核心库是 spf13/cobra
315 天前
回复了 zbinlin 创建的主题 分享发现 昨晚,你做梦了吗?
最近比较神奇的就是,梦里面过了很久. 醒来看老婆跟几个月没见了一样.
315 天前
回复了 TESTFLIGHT2021 创建的主题 程序员 敲代码的机械键盘,推荐个啊?
楼上提到了矮轴, 那我推荐一下 nuphy 的 矮轴机械键盘, 我买的青轴感觉很不错, 做工精细, 适合已经体验过机械键盘的, 想来点新鲜感的
女人 30 如狼似虎?
牛逼.
315 天前
回复了 yaott2020 创建的主题 程序员 感觉 rust 门槛太高了
从入门到放弃,确实比较难.
1 ... 5  6  7  8  9  10  11  12  13  14 ... 22  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3293 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 41ms · UTC 00:43 · PVG 08:43 · LAX 17:43 · JFK 20:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.