上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 18 下一页
摘要: 不知不觉写 Go 已经快一年了,上线了大大小小好几个项目;心态也经历了几轮变化。 因为我个人大概前五年时间写的是 Java ,中途写过一年多的 Python,所以刚接触到 Go 时的感觉如下图: 既没有 Java 的生态,也没有 Python 这么多语法糖。 写到现在的感觉就是: 这里就不讨论这几门 阅读全文
posted @ 2021-11-02 08:17 crossoverJie 阅读(6382) 评论(1) 推荐(2)
摘要: Go 里的超时控制 前言 日常开发中我们大概率会遇到超时控制的场景,比如一个批量耗时任务、网络请求等;一个良好的超时控制可以有效的避免一些问题(比如 goroutine 泄露、资源不释放等)。 Timer 在 go 中实现超时控制的方法非常简单,首先第一种方案是 Time.After(d Duration): func 阅读全文
posted @ 2021-10-28 01:24 crossoverJie 阅读(719) 评论(0) 推荐(0)
摘要: 前言 设计模式不管是在面试还是工作中都会遇到,但我经常碰到小伙伴抱怨实际工作中自己应用设计模式的机会非常小。 正好最近工作中遇到一个用观察者模式解决问题的场景,和大家一起分享。 背景如下: 在用户创建完订单的标准流程中需要做额外一些事情: 同时这些业务也是不固定的,随时会根据业务发展增加、修改逻辑。 阅读全文
posted @ 2021-09-05 21:45 crossoverJie 阅读(352) 评论(0) 推荐(1)
摘要: 前言 作为一个 Go 语言新手,看到一切”诡异“的代码都会感到好奇;比如我最近看到的几个方法;伪代码如下: func FindA() ([]*T,error) { } func FindB() ([]T,error) { } func SaveA(data *[]T) error { } func 阅读全文
posted @ 2021-08-01 23:35 crossoverJie 阅读(328) 评论(1) 推荐(0)
摘要: 前言 最近在实现两个需求,由于两者之间并没有依赖关系,所以想利用队列进行解耦;但在 Go 的标准库中并没有现成可用并且并发安全的数据结构;但 Go 提供了一个更加优雅的解决方案,那就是 channel。 channel 应用 Go 与 Java 的一个很大的区别就是并发模型不同,Go 采用的是 CS 阅读全文
posted @ 2021-07-05 20:32 crossoverJie 阅读(759) 评论(0) 推荐(0)
摘要: 前言 最近用 Python 写了几个简单的脚本来处理一些数据,因为只是简单功能所以我就直接使用 print 来打印日志。 任务运行时偶尔会出现一些异常: 因为我在不同地方都有打印日志,导致每次报错的地方都不太一样,从而导致程序运行结果非常诡异;有时候是这段代码没有运行,下一次就可能是另外一段代码没有 阅读全文
posted @ 2021-05-18 19:35 crossoverJie 阅读(1775) 评论(4) 推荐(2)
摘要: 前言 最近公司内部项目的发布流程接入了 GitHub Actions,整个体验过程还是比较美好的;本文主要目的是对于没有还接触过 GitHub Actions的新手,能够利用它快速构建自动测试及打包推送 Docker 镜像等自动化流程。 创建项目 本文主要以 Go 语言为例,当然其他语言也是类似的, 阅读全文
posted @ 2021-03-29 09:46 crossoverJie 阅读(430) 评论(3) 推荐(1)
摘要: 前言 最近在用 Go 写业务的时碰到了并发更新数据的场景,由于该业务并发度不高,只是为了防止出现并发时数据异常。 所以自然就想到了乐观锁的解决方案。 实现 乐观锁的实现比较简单,相信大部分有数据库使用经验的都能想到。 UPDATE `table` SET `amount`=100,`version` 阅读全文
posted @ 2021-03-17 10:09 crossoverJie 阅读(538) 评论(0) 推荐(1)
摘要: 前言 我的读者中应该大部分都是 Java 从业者,不知道写 Java 这些年是否真的有找到对象? 没找到也没关系,总不能在一棵树上吊死,我们也可以来 Go 这边看看,说不定会有新发现。 开个玩笑,本文会以一个 Javaer 的角度来聊聊 Go 语言中的面向对象。 OOP 面向对象这一词来源于Obje 阅读全文
posted @ 2021-02-23 18:20 crossoverJie 阅读(332) 评论(0) 推荐(1)
摘要: 前言 ”面向接口编程“写 Java 的朋友耳朵已经可以听出干茧了吧,当然这个思想在 Java 中非常重要,甚至几乎所有的编程语言都需要,毕竟程序具有良好的扩展性、维护性谁都不能拒绝。 最近无意间看到了我刚开始写 Python 时的部分代码,当时实现的需求有个很明显的特点: 不同对象具有公共的行为能力 阅读全文
posted @ 2021-01-15 17:26 crossoverJie 阅读(602) 评论(0) 推荐(0)
上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 18 下一页