04-go课程安排

2.5万 未经授权,禁止转载了解课程
课程介绍
讨论{{interaction.discussNum ? '(' + interaction.discussNum + ')' : ''}}
适合人群
Go语言初学者或对Go感兴趣的爱好者
你将会学到
课程目标 主要介绍Go语言相关的介绍和基础语法,学习开发环境的搭建和使用Go语言简单的编程。
课程简介

Go 构建微服务的历程

在2015年之前,头条的主要编程语言是 Python 以及部分 C++。随着业务和流量的快速增长,服务端的压力越来越大,随之而来问题频出。Python 的解释性语言特性以及其落后的多进程服务模型受到了巨大的挑战。此外,当时的服务端架构是一个典型的单体架构,耦合严重,部分独立功能也急需从单体架构中拆出来。

为什么选择 Go 语言?

Go 语言相对其它语言具有几点天然的优势: 
语法简单,上手快 
性能高,编译快,开发效率也不低 
原生支持并发,协程模型是非常优秀的服务端模型,同时也适合网络调用 
 部署方便,编译包小,几乎无依赖

什么是Go?

 Go是一门 并发支持 、垃圾回收 的 编译型 系统编程语言,旨在创造一门具有在静态编译语言的 高性能 和动态语言的 高效开发 之间拥有良好平衡点的一门编程语言。 
  

Go的主要特点有哪些?

  
类型安全 和 内存安全 
以非常直观和极低代价的方案实现 高并发 
高效的垃圾回收机制 
快速编译(同时解决C语言中头文件太多的问题) 
为多核计算机提供性能提升的方案 
UTF-8编码支持 
  

Go存在的价值是什么?

  
 Go在谷歌:以软件工程为目的的语言设计 
  

Go是记事本编程吗?

  
      包括VIM,IDEA,Sublime Text,Eclipse等众多知名IDE均已支持 
vscode idea 
  

Go目前有多少实际应用和资源?

  
全球最大视频网站 Youtube(谷歌) 
七牛云储存以及旗下网盘服务(Q盘) 
爱好者开发的Go论坛及博客 
已用Go开发服务端的**企业:谷歌、盛大、七牛、360 
其它海量开源项目:go-wiki、Go Walker、Go Language Resources 
  
  
监控系统,zk用过100万数据节点就不能动了,然后自己写的,一般用go做服务这块, 
 一个节点宕机不会影响其他节点。除了C和C++感觉搞不定,其他的几乎都搞过,有人感觉python不错就做python,脚本语言比较爽,Go一份代码其他系统都可以运行,和你版本没有任何关系,集群管理,日志收集,开发速度快,稳定,依赖少,可以充分利用这些资源,其他很难依赖,基础设施越来越高 
做一些页面,逻辑变化大用 python 高性能 规模 用go。


展开更多
发布
头像

{{ item.user.nick_name }} {{ EROLE_NAME[item.user.identity] }}

置顶笔记
讨论图
{{ item.create_time }}回复
  • 删除

    是否确认删除?

    确认
    取消
  • {{ item.is_top == 1 ? '取消置顶' : '置顶'}}

    已有置顶的讨论,是否替换已有的置顶?

    确认
    取消
{{ tag.text}}
头像
{{ subitem.user.nick_name }}{{ EROLE_NAME[subitem.user.identity] }}
{{ subitem.create_time }}回复
删除

是否确认删除?

确认
取消
发布
{{pageType === 'video' ? '讨论区抢占沙发,可获得双倍学分' :'讨论区空空如也,你来讲两句~'}}
发布
{{tips.text}}
{{ noteHeaderTitle }} 笔记{{ hasMyNote ? '我的笔记' : '记笔记' }}
{{ hasMyNote ? '我的笔记' : '记笔记' }}
优质笔记
更新于:{{ $dayjs.formate('YYYY-MM-DD HH:mm:ss', item.last_uptime*1000) }}
头像
{{ detail.username }}

公开笔记对他人可见,有机会被管理员评为“优质笔记”

{{ noteEditor.content.length }}/2000

公开笔记
保存
提问

讲师收到你的提问会尽快为你解答。若选择公开提问,可以获得更多学员的帮助。

记录时间点
记录提问时视频播放的时间点,便于后续查看
公开提问
提交