2019 PHP高薪工程师学习路线图....>>>
为什么选择 Go 语言?
听说go语言是几年前的事了,但真正认识他是在2017年,因为当时作为讲师,需要准备go语言课程。结果,一点接触就立刻喜欢上了这种语言。作为一名长期从事 c For /c++ 的程序员个人博客系统有哪些,我在过去的 10 年中参与了许多大型项目。用c开发真的很难,所以当我遇到go语言的时候,我发现它真的很让人上瘾。痛点体现出来了,尤其是像肯汤普森这样的高手。
go语言的优点有很多:
这可能是很多人选择go语言的原因。如果你想做一个有后端的项目,相信go语言会成为很多程序员的首选。由于python、java等高级语言的优势,go有它,但运行效率更高。
为什么要开发博客?
早些年博客很流行,现在大部分程序员都养成了写博客的习惯。事实上,博客是一个非常典型的互联网应用。其中使用的最基本技术正是网络编程中使用的技术。在开发过程中,您还可以了解开发的一些细节。同时,还有抖音等热门头条。等产品有更深入的了解。
我需要为开发做些什么准备?
第一个选择是考虑数据存储。写好的博客需要存储,所以首先要有一个数据库。这里我们选择 MongoDB 数据库。说到MongoDB,它的介绍很有意思。MongoDB 是使用 C++ 开发的分布式数据库。它是非关系数据库中关系最密切的。使用MongoDB是因为它有文档的概念,数据是以文档的形式存储的,当然是key-value的形式。基于此,我们需要安装一个数据库,在linux平台上安装非常简单。
sudo apt-get install mongodb
数据库问题解决后,还需要准备什么?可以,剩下的就是如何用go语言编写http服务器了。写之前最好先了解一下http协议,不然有些东西还是不能完全控制的。
go语言中的数据库操作
首先学习并了解如何在go语言中操作MongoDB
go get -u gopkg.in/mgo.v2/bson
type Mongo struct {
Session *mgo.Session
} func (m *Mongo) Connect(url string) {
session, err := mgo.Dial(url) if err != nil { panic(err)
}
m.Session = session
}
文档是 MongoDB 的核心组件个人博客系统有哪些,MongoDB 编程基本上是关于文档的添加、删除、修改和查询。
type Person struct {
Name string Age int }
tabName := "person" ps := sess.DB("myblog").C(tabName)
文档构建完成后,可以基于该文档进行增删改查。
//添加一个perso //func (c *Collection) Insert(docs ...interface{}) error err = ps.Insert(&Person{"yekai", 30}) if err != nil { panic(err)
}
//修改person //func (c *Collection) Update(selector interface{}, update interface{}) error err = ps.Update(bson.M{"name": "yekai"}, bson.M{"name": "yekai", "age": 35}) if err != nil { panic(err)
}
//删除全部纪录 //(c *Collection) RemoveAll(selector interface{}) (info *ChangeInfo, err error) ps.RemoveAll(bson.M{"name": "yekai"})
//查询person p1 := Person{} //func (c *Collection) Find(query interface{}) *Query ps.Find(bson.M{"name": "yekai"}).One(&p1)
fmt.Println(p1)
了解了go语言的优势和go语言的数据库操作之后,就可以开始个人博客系统的开发了,明天再分享这部分的内容。