行走代码江湖,怎能没有一把趁手的兵器?本专区包括开发者工具、极客技能、开发库、文档、应用开发、操作系统、编码工具等。

加载中
置顶
发表了博客
2021/07/31 11:18

结对编程,到底是双剑合璧还是脚趾抠地?

摘要:结对编程(Pair programming)来自于极端编程XP(eXtreme Programming),是它的十二个最佳实践之一。顾名思义,结对编程就是两个程序员坐在一起,结对进行代码开发。 本文分享自华为云社区《结对编程到底好不好》,作者: 敏捷江湖桃花岛梅师姐 。 什么是结对编程 结对编程(Pair programming)来自于极端编程XP(eXtreme Programming),是它的十二个最佳实践之一。顾名思义,结对编程就是两个程序员坐在一起,结对进行代码... 展开更多

收藏 0
0
置顶
发表了博客
2021/07/28 19:03

最容易忽略的10大软件开发定律

本文分享自百度开发者中心最容易忽略的10大软件开发定律 与其他领域一样,软件开发领域也有一些非常经典的定律。这些定律包括了一些法则或软件开发大神的名言。 1康威定律 也就是所谓的“按照组织架构来交付软件”: “任何一个组织在设计一个系统时,这个系统的结构与这个组织的沟通结构是一致的”。 你或许认为可以通过一些方式来避免这个定律,比如跨功能团队的站会、进度更新和决策矩阵,但最终都不可避免地会发生冲突和分歧... 展开更多

收藏 9
0
置顶
发表了博客
2021/07/19 09:59

2021,你还在写“赤裸裸”的API吗?

前言 新的项目要开始了,由于项目中涉及到和第三方厂商的接口对接,所有对接口的安全性有要求,下来我们看看如何写好一个规范的接口 如何保证接口传输中数据安全 保证数据安全,大家首先能想到的就是对内容进行加密。加密的话主要有两种方式,对称加密和非对称加密。 1、对称加密 我们先一起看一张图 可以看到,上图中采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密,也称为单... 展开更多

收藏 17
2
置顶
发表了博客
2021/07/15 10:07

怎样防止同事用 QQ 邮箱提交公司代码?

事情是这样的,最近组里新建了一个代码仓库来开发一个新的产品,再加上今天北京下大雨很多同事选择在家工作(包括我也是),于是我就选择用自己的个人电脑来工作。 但我的个人电脑里面的 Git 信息是用的我自己的个人邮箱: git config --global user.name "Germey" git config --global user.email "cqc@cuiqingcai.com" 复制代码 这两行命令大家用过 Git 的肯定都敲过对吧? 这个配置是全局生效的,所以如果我用 Git 的 ...... 展开更多

收藏 3
0
置顶
发表了博客
2021/06/25 14:31

我招了个“水货”程序员

这篇文章对很多没有高并发经验的程序员来说,会非常有帮助。 很多程序员可能都遇到过类似的困惑: > 我没有高并发项目经验,但是面试的时候经常被问到高并发、性能调优方面的问题,该怎么办? 这个问题怎么解决?和大家说说我招人的一个经历。 程序员小张参加工作已 5 年,是一位高级工程师,是我亲自招进公司,表现很出色。 前一阵子,我把小张叫进会议室,想让他单独带个团队。其中,我谈到了面试时,他简历注水的问题。 事情... 展开更多

收藏 13
4
置顶
发表了博客
2021/06/21 10:44

程序员修炼之道系列 | 敏捷估算

交付这个项目需要多久? 存储一百万个客户信息需要多少磁盘空间? 压缩1000MB文本需要多长时间? …… 在软件项目中,我们经常要对即将开始的工作进行预估。而这其中有很多技术更新、需求变更等未知因素,都会使估算结果不是很精确。那么,我们为什么要进行敏捷估算呢? ![08.png](https://p9-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/b4747f56f44548b8be8ae5379ca9409b~tplv-k3u1fbpfcp-watermark.image) 视频链接:[https://... 展开更多

收藏 1
0
置顶
发表了博客
2021/05/25 16:20

关于鲁棒性的思考

在计算机科学中,鲁棒性(英语:Robustness)是指一个计算机系统在执行过程中处理错误,以及算法在遭遇输入、运算等异常时继续正常运行的能力。 鲁棒性关注的重点在于系统的稳定性,在不同场景下衍生了复杂的设计考量,且本身是一个广泛且难以具像化的特性。因此,针对特定目标实现鲁棒性分析,形成切实可行的鲁棒性意识,保障安全性。 基于鲁棒性分析,以设计规约为目标,有三个维度可以拆解:输入、处理、输出;以代码规范为核... 展开更多

收藏 7
0
置顶
发表了博客
2021/05/27 12:54

拯救祭天的程序员——事件溯源模式

# 一、事前 你相信吗?曾经有一段日子,我几乎没接到过合格的产品需求。 **开局几句话,技术全靠猜。** ## 总是以为简单的需求 曾经,我从产品那里接到过这么一个需求: > 对系统的用户进行分级,不同级别的用户有不同的福利。 依然如常,无图无文档,只是这么一句话。我知道,需求一句话,分析五日功嘛。为了项目能持续发展,我只好自己分析自己搞了。 从业务上看,目前的**用户**对象尚无等级一说,我们先为**用户**对象加上个... 展开更多

收藏 30
8
置顶
高级程序员
发表了博客
2021/05/26 12:33

从SLF4J源码角度分析阿里开发手册日志规约

欢迎大家关注公众号「JAVA前线」查看更多精彩分享文章,主要包括源码分析、实际应用、架构思维、职场分享、产品思考等等,同时欢迎大家加我个人微信「java_front」一起交流学习 1 日志规约 阿里巴巴开发手册日志规约章节有一条强制规定:应用中不可直接使用日志系统(Log4j、Logback)API,而应依赖使用日志框架SLF4J中的API。使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一: import org.slf4j.Logger; im...... 展开更多

收藏 3
0
置顶
程序员
发表了博客
2021/05/25 20:14

maven deploy 集成 gitlab ci 自动发版

背景 多模块的 maven 项目,抽象了通用的代码逻辑作为单独的 maven 模块,这样,不仅自己项目可以用,也可以提供依赖给其他项目用,那么这个时候需要将这个模块上传到 maven 私服,发布 maven 私服时,release 版本不支持覆盖,所以需要集成 ci 工具,给 maven 模块自动加上版本号,并自动完成 deploy 操作。本文方案依赖 maven 打包插件 flatten-maven-plugin,maven 版本要求大于等于 3.5.0 maven 配置 1、将 root 模块的 ve... 展开更多

收藏 4
0
置顶
发表了博客
2021/05/17 13:01

当年一穷二白搞微服务……我太难了

在我最初接触微服务的很长一段时间里,有两类问题都困扰着我和团队,这是让我印象最深的两类问题: - **没有配合微服务理念的团队** - **没有配合微服务理念的基础设施** 后来,在和一些搞了微服务的同行多次交流后,发现他们当初也面临和我类似的问题。 这次就写写我最早搞微服务遇到的问题。 有些问题放到现在来说,已经有解决办法了,已经算不上问题了。但是无论怎样,这些问题如果能提前意识到,早做准备,会为将来搞微服务... 展开更多

收藏 7
14
置顶
发表了博客
2021/05/13 14:25

问题这样查,拒做背锅侠

**技术的锅太多,到底该不该你背?** 话说这天一大早,那个悲催的中年架构师大刘又被手机微信群给炸醒。部门的运维兄弟在公司微信群里说: 短信的生产环境服务器 CPU 占用率过高,疯狂报警。是不是你们昨天上线看门狗导致的? 大刘迷了巴登的想了想,没错,昨天确实给短信服务装上了看门狗。但是看门狗服务肯定不会有问题(架构师必备的蜜汁自信),而且上线之前各轮测试也都测过了,没见过这个想象啊。 难道是测试妹子没测试到... 展开更多

收藏 60
24
置顶
发表了博客
2021/04/25 17:54

如何画好架构图 (建议收藏)

先说下哈,我找 ProcessOn 官方要了 300 个会员名额,加我好友发你哈,先到先得。 这是悟空的第 98 篇原创文章 作者 | 悟空聊架构 来源 | 悟空聊架构(ID:PassJava666) 转载请联系授权(微信ID:PassJava) 本文主要内容如下; 前言 最近我发了一张我的开源项目的架构图给读者交流群看了下: 然后读者群里就炸锅了,来看看大家怎么说: ProcessOn 不是只能画基本的流程图么,还能画彩色架构图? 我猜他们眼中的流程图是这样的... 展开更多

收藏 39
4
置顶
发表了博客
2021/04/22 18:38

走完线上 Bug 定位最后一公里

作者:陈陈 ## ## **一个小故事** --- ## 周末 12 点的闹钟在回龙观均价 3000 的出租屋急促的响起,程序员小A慵懒的拿过手机,滑开手机通知栏,没有未接电话,点开手机的拦截信箱,没有报警短信,昨晚的发布一定很顺利。小A幸福的伸了个懒腰。戴上 3000 块的 BeatsSolo Pro,音乐逐渐响起来,小A缓缓的闭上了眼睛,正午的阳光从窗户漫进来,撒在小A稀疏的头发上。此时的小A正在脑海中勾勒着自己美好的未来。房东说:十年前住在这... 展开更多

收藏 4
2
置顶
发表了博客
2021/04/06 13:40

我,第一次做项目经理,干赔了

我第一次做项目经理,那是十多年前的事情了,当时给国家开发银行做一个财务风险分析的系统,这个项目: - 金额:200 万 - 周期:起初定的 8 个月做完 - 人员:10 个人左右。除了我之外还有,需求分析师 2 人;测试 1 人;Java 5 人(那时候还没有前后端分离这个词,前后端一起搞);BI 工程师 1 人。 项目启动之后,我们项目组去国开行驻场,行里给我们腾出来一间办公室,办公室不大,我们十来个人坐进去之后,满满当当的。 我们... 展开更多

收藏 9
3
置顶
架构师
发表了博客
2021/03/04 18:30

一场关于代码注释的争执,引发的三点思考

在一次研发沟通会上,大家关于是否需要代码注释做了一番争执(讨论)。 主要内容简述如下: A:我提议项目应该有个注释,我们有些程序员几乎从不注释代码,谁都知道没注释的代码是没法阅读的。 B:我觉得注释没必要,注释被当做万灵药,可是任何实际编码过的人都知道,注释反而会使代码更难读懂。注释很容易产生大量的废话,而编码语言相对简明扼要得多。 C:是这么回事。假如代码不清晰,又怎能注释的清楚呢?再说,代码一变,... 展开更多

收藏 4
3
置顶
发表了博客
2021/02/22 00:07

为什么阿里巴巴不建议boolean类型变量用isXXX?

背景: 平时工作中大家经常使用到boolean以及Boolean类型的数据,前者是基本数据类型,后者是包装类,为什么不推荐使用isXXX来命名呢?到底是用基本类型的数据好呢还是用包装类好呢? 例子: 1.其他非boolean类型 private String isHot; public String getIsHot() { return isHot; } 2.boolean类型 private boolean isHot; public boolean isHot() { return isHot; } 3.包装类型 private Boolean isH...... 展开更多

收藏 0
2
置顶
架构师
发表了博客
2021/02/02 12:50

盘点软件开发中那些有趣的边际效应

我是架构精进之路,点击上方“关注”,坚持每天为你分享技术干货,私信我回复“01”,送你一份程序员成长进阶大礼包。 什么是边际效应 边际效应是源自经济学中的一个概念。 是指消费者对某种物品的消费量每增加一单位所增加的额外满足程度。边际的含义是额外增量。在边际效应中,自变量是某物品的消费量,而因变量则是满足程度或效用,消费量额外变动所引起的效用的变动即为边际效应。 什么是边际效应递减? 我们在听专家做投资... 展开更多

收藏 0
0
置顶
发表了博客
2021/01/25 08:54

RESTful API如何进行版本控制

本文将帮助您理解为什么需要版本控制,以及如何对REST API进行版本控制。我们将讨论4种版本控制的方法,并比较不同的方法。 您将学到 为什么我们需要对RESTful API 进行版本控制? 可用的版本控制有哪些? 如何实现基于 Restful 的版本控制? 为什么我们需要对RESTful API进行版本化 最好的版本控制方法是不进行版本控制。只要不需要版本控制,就不要版本控制。 构建向后兼容的服务,以便尽可能避免版本控制! 然而,在许多情况下我... 展开更多

收藏 8
1
置顶
架构师
发表了博客
2021/01/17 09:01

如何成为一名优秀的技术Leader?

我是架构精进之路,点击上方“关注”,坚持每天为你分享技术干货,私信我回复“01”,送你一份程序员成长进阶大礼包。 相信大部分人对于团队管理和技术管理在认知上,存在一定隔阂,无形之中会将【管理岗】和【技术岗】进行对立比较。 在国内一些大研发团队,一般会同时设置两类角色来更好地做团队运行管理。 研发经理/总监,主要负责团队价值输出和业务目标管理; 技术Leader/架构师,主要负责技术攻坚和技术架构落地。 本文结... 展开更多

收藏 13
1
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
返回顶部
顶部