当前位置: 首页 > news >正文

go 和java 编写方式的理解

1. go 推荐写流水账式的代码(非贬义),自己管自己。java喜欢封装各种接口供外部调用,让别人来管自己。


2. 因为协程的存在, go的变量作用域聚集在方法内部,即函数不可重入,而java线程的限制,函数可重入导致变量作用域聚集在类层次。


3. go不应该有start,close,loop函数(除非业务要求),应该命名forever函数,即使用 go+context+cancel+select 完成单线任务,这就是写流水账,但比封装接口还要好,同时将创建协程交给调用方。


4. 编写服务代码时,go的心智负担应该远小于java才对,如果不是,那么你的姿势就不对,我感觉比写python还轻松

5. go除超高并发外,应使用channel而不是函数回调,小于一千万个channel都因该考虑channel,网络层除外。
 

http://www.lryc.cn/news/493362.html

相关文章:

  • C# 7.1 .Net Framwork4.7 VS2017环境下,方法的引用与调用
  • etcd、kube-apiserver、kube-controller-manager和kube-scheduler有什么区别
  • 每日一题 LCR 057. 存在重复元素 III
  • 使用IDEA编写测试用例,复杂度校验
  • 搭建私有云存储
  • 【从零开始的LeetCode-算法】3304. 找出第 K 个字符 I
  • 深入解析分布式遗传算法及其Python实现
  • gitee:创建仓库,存入本地文件至仓库
  • 计算分数的浮点数值
  • 在 C/C++ 中,volatile 关键字的作用是什么?.volatile 关键字与 const 关键字有什么区别?
  • golang debug调试
  • 自动化运维(k8s)之微服务信息自动抓取:namespaceName、deploymentName等全解析
  • 07 初始 Oracle 优化器
  • Java对象与XML互相转换(xstream)
  • 一键生成唯美动漫图:ComfyUI-tPonynai详细搭建教程
  • C++设计模式(工厂模式)
  • 多阶段报童问题动态规划求解,Python 实现
  • 【C++进阶篇】像传承家族宝藏一样理解C++继承
  • Java基础面试题09:Java异常处理完成以后,Exception对象会发生什么变化?
  • mysql sql语句 between and 是否边界值
  • Java接收LocalDateTime、LocalDatee参数
  • 方差分析、相关分析、回归分析
  • SQLModel入门
  • 单片机蓝牙手机 APP
  • PostgreSQL在Linux环境下的常用命令总结
  • Unity shaderlab 实现LineSDF
  • Ubuntu中的apt update 和 apt upgrade
  • Android 中 Swipe、Scroll 和 Fling 的区别
  • linux基础2
  • 如何通过智能生成PPT,让演示文稿更高效、更精彩?