Golang的一些独特特性

最近在学习golang,这门新编程语言,相较于传统的编程语言,有一些很独特的特性,总结一下:

  • goroutine,channel,推崇“用通信来共享内存,而不是共享内存来通信”
  • 变量一经申明,就被初始化为变量类型的零值
  • 类型推断,短变量声明的方式,多返回值代码更简洁,而且利于代码重构
  • 封装的最小单位是package而不是类,没有public/protected/private关键字,使用首字母大小写来标识包外是否可见
  • 通过组合而不是继承来实现面向对象编程
  • 接口是隐式实现的,不用显示指明实现了哪些接口
  • 没有try...catch...机制
  • 函数多返回值,常见返回一个error类型的值,用来进行错误处理
  • 强制统一代码风格,如函数和结构体的大括号不能另起一行

你可能感兴趣的:(Golang的一些独特特性)