TaskDecorator——异步多线程中传递上下文等变量

TaskDecorator——异步多线程中传递上下文等变量
开发中很多数据如oauth2的认证信息,日志TracerId都是在请求线程中的,如果内部使用多线程处…

年度代码翻车现场 |前端代码评审问题总结


阿里妹导读
代码评审于技术团队的工程师文化建设非常有意义,它是形成团队统一代码风格最有效的方式,作者把自己团队在一年的CR中常见的那些小问题做了一些梳理,…

我有一个朋友写出了17种触发NPE的代码!避免这些坑

阿里妹导读
我有一个朋友,写代码的时候常常遭到NPE背刺,痛定思痛,总结了NPE出没的17个场景,哪一个你还没有遇到过?
虽然无法统计出Java程序员写的最多…

如何写好代码?一个提升代码可读性的小技巧

阿里妹导读
如何提高代码的可读性,使得代码变得整洁,甚至赏心悦目。本文会从“控制流”的角度分享一下作者对提高代码可读性的一些思考。
写在开头
如何写好代码,一…

好好的“代码优化”是怎么一步步变成“过度设计”的

阿里妹导读
本文记录了作者从“代码优化”到“过度设计”的典型思考过程,这过程中涉及了很多Java的语法糖及设计模式的东西,很典型,能启发思考,遂记录下来。
有…

一场67万行代码的应用重构

阿里妹导读
本文分享了作者对一个架构模糊,拥有67万行代码、46个module的超级应用重构过程中面临的一些问题,还探讨了重构的价值以及技术方案,最后对综合效…

不规范的枚举类代码引发的一场事故

阿里妹导读
作者参与了一个问题排查,最后得到的结论和枚举类的规范有关系,本文将过程总结在这里提供大家一起学习交流。
今天开发跟我反馈了一个很奇怪的问题,说有个…

一文聊聊代码的可读性

阿里妹导读
作者通过本文聊聊自己写代码的要求及代码的可读性。
观点表达

上图代码中,你觉得左边实现更好,还是右边的实现更好 ?你的代码是更像左边还是更…

别再为没时间重构找借口:每年两次机会,治愈你的代码洁癖、安抚你的工匠之心!

阿里妹导读
本文分享了作者对于重构的经验和看法。
一、引子
回顾曾在开放平台工作台的三年,发现自己主要是写业务为主。虽然和同伴们一起参与主导过从组件化到平台化…

实战总结|记一次迭代需求中的微型代码重构

阿里妹导读
本文记录了程序员一次普通的日常需求中的微型重构过程。
大家好,我是钉钉业务平台前端技术的单丹。以往,历经考勤、日志、审批、开放平台、工作台等多个钉…

代码整洁之道–告别码农,做一个有思想的程序员

阿里妹导读
代码整洁是软件长期稳定和可扩展的基础,本文作者从现实中的代码、重构、设计模式谈论代码整洁之道,总结出如何做一个有思想的程序员。
我心中理想的代码

什么是比较好的低代码产品?

阿里妹导读
本文汇总了几种业界的低代码,如果找到了对应的场景,同时又可以真正解决问题,低代码比原本敲代码要快,会是一个很好的发展空间。
本文主要聊下外面的低代…

十行代码让日志存储降低80%

阿里妹导读
日志是系统中熵增最快的一个模块,它承载了业务野蛮生长过程中的所有副产品。本文介绍了一个日志治理案例,围绕降本和提效两大主题,取得一定成效,分享给所…

Code:美团代码托管平台的演进与实践

美团代码托管平台经过长期的打磨,完成了分布式架构的改造落地,托管数以万计的仓库,日均Git相关请求达到千万级别。本文主要介绍了美团代码托管平台在迭代演进过程中面…

通过测试学Go:结构体,方法和接口

假设我们需要编程计算一个给定高和宽的长方形的周长。我们可以写一个函数如下:
Perimeter(width float64, height float64)
其…

为什么大神能够写出高性能代码?因为他们掌握了Go编译器所做的优化

以下文章来源于Go 101 ,作者老貘
下面将介绍Go标准编译器(截至Go SDK 1.12.x)所做的其它一些优化。
1. 多个字符串的衔接表达式在运行时只需…

go 学习笔记之解读什么是defer延迟函数

以下文章来源于雪之梦技术驿站 ,作者雪之梦技术驿站
Go 语言中有个 defer 关键字,常用于实现延迟函数来保证关键代码的最终执行,常言道: "未雨…

字节切片(byte slice)相关的编译器漏洞和标准库设计失误

以下文章来源于Go 101 ,作者老貘
假如一个类型MyByte定义如下,如何将一个[]MyByte切片值和一个[]byte切片值互相转换为对方的类型?

pa…

Go将数字转换为字符串的正确姿势

以下文章来源于网管叨bi叨 ,作者KevinYan11
在许多语言中,你可以轻松地将任何数据类型转换为字符串,只需将其与字符串连接,或者使用类型转换表达式即可。…

如何声明支持有默认值的可选参数的函数?

以下文章来源于Go 101 ,作者老貘
我们知道,Go中的函数是不支持带默认值的可选参数的。这是Go语言的设计者为了保证代码可读性特意抛弃的功能。那么我们真得无…