Golang语言快速上手到综合实战高并发聊天室
需要的联系我:QQ:1844912514
Go是Google开发的一种编译型,可并行化,并具有垃圾回收功能的编程语言。2015,Go迎来了全迸发的一年。时隔一年,回头再看,Go已跻身主流编程语言行列。在国内,Go的热度更是不凡。七牛云、百度、滴滴等一线互联网公司正在逐步将Go应用到自身的项目之中。
讲师本人之前在滴滴从事后台开发时,曾有幸采用过Go语言开发web应用,故对Go的设计、性能等情有独钟,并且积累了一些这方面比较实用的经验,特意整理录制成视频,本项目全程手敲,适合之前有一定web开发语言基础的学员学习。当然课程中的项目比较简单却也实用--从经典的聊天室到豆瓣电影的爬虫开发,希望学员从中领略到Go语言的编程方式以及思想,从中体会到Go作为下一代系统语言的精髓。
1.课程研发环境
项目源代码以Go 1.4.1为基准,以下环境都适用于项目。
开发工具:Sublime3或者LiteIDE X30.2;
涉及框架版本:Beego
数据库工具:MySQL 5.5.53 MySQL Community Server
其他工具:Redis 2.6.12、 Bee工具
2.内容简介
本教程从基础的Golang语言语法开始讲起,介绍了Golang的数据类型(包括基础类型与复合类型)以及分支与循环结构,进而深入地介绍了Golang语言的类与继承,以及与其他语言如Java、C++等的诸多不同,尤其是Go语言非侵入式的接口设计,其体现了Go语言设计的独到之处。紧接着,对Go语言中的并发概念-协程与channel进行了深入分析,力求让学员搞清楚协程与线程的区别。在上述基础上,会带领学员们开发一个高并发聊天室(得益于Go协程的轻量级特性)。接下来,会介绍Go语言在web开发上的应用并且以Beego框架为主进行介绍;在介绍完Beego的基础应用后,带领大家编写一个豆瓣电影爬虫的项目,让学员对Beego的使用更加熟练,同时对爬虫的相关理论与实践也有所了解。
〖课程目录〗
第1讲 Go语言简介
第2讲 理解GOPATH
第3讲 Go语言基础上
第4讲 Go语言基础下
第5讲 Go语言之流程控制
第6讲 Go语言之函数上
第7讲 Go语言之函数下
第8讲 Go语言之struct
第9讲 Go语言之面向对象上
第10讲 Go语言之面向对象下_1
第10讲 Go语言之面向对象下_2
第11讲 Go语言并发编程之协程
第12讲 Go语言并发编程之channel
第13讲 Go语言并发编程之缓冲channel
第14讲 Go语言并发编程之select
第15讲 Go语言并发编程之深入协程
第16讲 Go语言之JSON与Md5
第17讲 Go语言之HTTP
第18讲 Go语言之正则表达式_1
第18讲 Go语言之正则表达式_2
第19讲 Go语言之Mysql_1
第19讲 Go语言之Mysql_2
第20讲 Go语言之Redis
第21讲 Go语言之聊天室_1
第21讲 Go语言之聊天室_2
第21讲 Go语言之聊天室_3
第21讲 Go语言之聊天室_4
第22讲 Beego框架简介
第23讲 Beego框架之参数配置与路由配置
第24讲 Beego框架之Controller
第25讲 Beego框架之请求数据处理
第26讲 Beego框架之session机制
第27讲 Beego框架之model_1
第27讲 Beego框架之model_2
第27讲 Beego框架之model_3
第28讲 Beego框架之view
第29讲 Beego框架之config、httplib、context
第30讲 Beego框架之爬虫项目实战_1
第30讲 Beego框架之爬虫项目实战_2
第30讲 Beego框架之爬虫项目实战_3
第30讲 Beego框架之爬虫项目实战_4
第30讲 Beego框架之爬虫项目实战_5
第30讲 Beego框架之爬虫项目实战_6
Golang语言快速上手到综合实战高并发聊天室的更多相关文章
- IM即时通讯设计 高并发聊天服务:服务器 + qt客户端(附源码)
来源:微信公众号「编程学习基地」 目录 IM即时通信程序设计 IM即时通讯 设计一款高并发聊天服务需要注意什么 如何设计可靠的消息处理服务 什么是粘包 什么是半包 解决粘包和半包 IM通信协议 应用层 ...
- 08Vue.js快速入门-Vue综合实战项目
8.1. 前置知识学习 npm 学习 官方文档 推荐资料 npm入门 npm介绍 需要了解的知识点 package.json 文件相关配置选项 npm 本地安装.全局安装.本地开发安装等区别及相关命令 ...
- golang高并发的理解
前言 GO语言在WEB开发领域中的使用越来越广泛,Hired 发布的<2019 软件工程师状态>报告中指出,具有 Go 经验的候选人是迄今为止最具吸引力的.平均每位求职者会收到9 份面试邀 ...
- golang高并发
golang 为什么能做到高并发 goroutine是go并行的关键,goroutine说到底就是携程,但是他比线程更小,几十个goroutine可能体现在底层就是五六个线程,Go语言内部帮你实现了这 ...
- Java 18套JAVA企业级大型项目实战分布式架构高并发高可用微服务电商项目实战架构
Java 开发环境:idea https://www.jianshu.com/p/7a824fea1ce7 从无到有构建大型电商微服务架构三个阶段SpringBoot+SpringCloud+Solr ...
- 《即时消息技术剖析与实战》学习笔记10——IM系统如何应对高并发
一.IM 系统的高并发场景 IM 系统中,高并发多见于直播互动场景.比如直播间,在直播过程中,观众会给主播打赏.送礼.发送弹幕等,尤其是明星直播间,几十万.上百万人的规模一点也不稀奇.近期随着武汉新型 ...
- Go语言学习之9 网络协议TCP、Redis与聊天室
主要内容 1. Tcp编程2. redis使用 1. Tcp编程 (1)简介 Golang是谷歌设计开发的语言,在Golang的设计之初就把高并发的性能作为Golang的主要特性之一,也是 ...
- Python--网络编程学习笔记系列01 附实战:udp聊天器
Python--网络编程学习系列笔记01 网络编程基本目标: 不同的电脑上的软件能够实现数据传输 网络编程基础知识: IP地址: 用来在网络中标记一台电脑 网络号+主机号(按网络号和主机号占位分类A ...
- 15套java架构师大型分布式综合项目实战、千万高并发-视频教程
* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩 展 ...
随机推荐
- vue中使用svg字体图标
1.在src/ 下面新建目录icons,里面新建文件夹svg,和文件index.js .svg用于存放从iconfont下载下来的svg格式的图标,index.js用于引入使用到svg文件和对应的组件 ...
- centos 中 Java环境变量配置
一.安装java 1.搜索java包 yum search java 2.安装java包 -openjdk.x86_64 3.查看java安装目录 whereis java #找到Java目录 一般在 ...
- vue 之this.$router.push、replace、go的区别
一.this.$router.push 说明:跳转到指定URL,向history栈添加一个新的记录,点击后退会返回至上一个页面 使用: this.$router.push('/index') this ...
- Delphi 从一个对象中继承数据和方法
- GITHUB readme基本语法
一.标题写法: 第一种方法: 1.在文本下面加上 等于号 = ,那么上方的文本就变成了大标题.等于号的个数无限制,但一定要大于0个哦.. 2.在文本下面加上 下划线 - ,那么上方的文本就变成了中标题 ...
- bind9+dlz+mysql连接断开问题
前言 关于bind-dlz介绍:http://bind-dlz.sourceforge.net/ DLZ(Dynamically Loadable Zones)与传统的BIND9不同,BIND的不足之 ...
- Spring 注解无效 空指针异常
对于Java开发,现在Spring已成为一种生态,使用Spring成为一种享受,Spring的使用让开发变得更加便捷. 而Spring好用归好用,若不清楚里面的工作原理,使用的时候难免会踩到一些坑. ...
- Linux文件系统之mv(重命名/移动文件)
mv(move)命令 输入man mv,了解到mv命令是用于移动或重命名文件 语法 mv [options] source dest mv [options] source... directory ...
- Redis之哨兵机制(五)
什么是哨兵机制 Redis的哨兵(sentinel) 系统用于管理多个 Redis 服务器,该系统执行以下三个任务: · 监控(Monitoring): 哨兵(sentinel) 会不断 ...
- “景驰科技杯”2018年华南理工大学程序设计竞赛 A. 欧洲爆破(思维+期望+状压DP)
题目链接:https://www.nowcoder.com/acm/contest/94/A 题意:在一个二维平面上有 n 个炸弹,每个炸弹有一个坐标和爆炸半径,引爆它之后在其半径范围内的炸弹也会爆炸 ...