GO的垃圾特性
所属分类 go
浏览量 1363
不允许左花括号另起一行
编译器莫名其妙地给行尾加上分号
极度强调编译速度,不惜放弃本应提供的功能 ,编译器应该多做一些检查、约束、核对性工作,尽量阻止常规错误的发生,尽量不让有潜在错误的代码编译通过,必要时给出一些警告或提示
错误处理机制太原始, 处理错误的基本模式:函数通常返回多个值,其中最后一个值是error类型,用于表示错误类型和描述
垃圾回收器(GC)不完善
禁止未使用变量和多余import
创建对象的方式太多令人纠结 new函数、make函数、New方法、花括号语法直接初始化结构体
对象没有构造函数和析构函数
defer机制不合理
需要长期运行的函数,其中有无限循环语句,在循环体内不断的创建资源(或分配内存),并用defer语句确保释放。
由于函数一直运行没有返回,所有defer语句得不到执行,循环过程中创建的大量短暂性资源一直积累着,得不到回收。而且,系统为了存储defer列表还要额外占用资源
许多语言内置设施不支持用户定义的类型 ,for in、make、range、channel、map等都仅支持语言内置类型,不支持用户定义的类型
不支持泛型
实现接口不需要明确声明
省掉小括号却省不掉花括号
编译生成的可执行文件尺寸非常大
不支持动态加载类库
上一篇
下一篇
git的各种状态
为啥GO不火
springboot2微服务实例演示
springboot2网关zuul实例
三体精句摘录
硬盘读写特性