首页 文章 精选 留言 我的

精选列表

搜索[数据库连接池],共10000篇文章
优秀的个人博客,低调大师

Go语言与数据库开发:01-01

一、前言 Google的三位大牛,为了解决在21世纪多核和网络化环境下越来越复杂的编程问题而发明了go语言,从2007年9月开始设计和实现,于2009年的11月对外正式发布。从版本的发布历史来看,go语言是从Ken Thompson发明的B语言、Dennis M. Ritchie发明的C语言逐步演化过来的,是C语言家族的成员,因此很多人将Go语言称为21世纪的C语言。 纵观这几年来的发展趋势,Go语言已经成为云计算、云存储时代最重要的基础编程语言。 Go语言有着和C语言类似的语法,但是它不仅仅是一个更新的C语言。它还从其他语言借鉴了很多好的想法,同时避免引入过度的复杂性。 Go语言中和并发编程相关的特性是全新的也是有效的,同时对数据抽象和面向对象编程的支持也很灵活。 Go语言同时还集成了自动垃圾收集技术用于更好地管理内存。 Go语言尤其适合编写网络服务相关基础设施,同时也适合开发一些工具软件和系统软件。 目前Go语言已经成为受欢迎的作为无类型的脚本语言的替代者: 因为Go编写的程序通常比脚本语言运行的更快也更安全,而且很少会发生意外的类型错误。 Go语言还是一个开源的项目,可以免费获编译器、库、配套工具的源代码。 Go语言编写的程序无需修改就可以在不同的系统环境下运行。 二、 Go语言的设计哲学 Go语言的编程哲学是简洁。 正如Rob Pike所说,“软件的复杂性是乘法级相关的”,通过增加一个部分的复杂性来修复问题通常将慢慢地增加其他部分的复杂性。通过增加功能和选项和配置是修复问题的最快的途径,但是这很容易让人忘记简洁的内涵,即使从长远来看,简洁依然是好软件的关键因素。 简洁的设计需要在工作开始的时候舍弃不必要的想法,并且在软件的生命周期内严格区别好的改变或坏的改变。通过足够的努力,一个好的改变可以在不破坏原有完整概念的前提下保持自适应,正如Fred Brooks所说的“概念完整性”;而一个坏的改变则不能达到这个效果,它们仅仅是通过肤浅的和简单的妥协来破坏原有设计的一致性。只有通过简洁的设计,才能让一个系统保持稳定、安全和持续的进化。 Go语言有足够的类型系统以避免动态语言中那些粗心的类型错误,但是Go语言的类型系统相比传统的强类型语言又要简洁很多。。在实践中Go语言简洁的类型系统给了程序员带来了更多的安全性和更好的运行时性能。 Go语言鼓励当代计算机系统设计的原则,特别是局部的重要性。它的内置数据类型和大多数的准库数据结构都经过精心设计而避免显式的初始化或隐式的构造函数,因为很少的内存分配和内存初始化代码被隐藏在库代码中了。比如,Go语言的动态栈使得轻量级线程goroutine的初始栈可以很小,因此创建一个goroutine的代价很小,创建百万级的goroutine完全是可行的。 Go程序也很容易学习。 使用Go语言自带工具构建Go语言项目只需要使用文件名和标识符名称, 一个偶尔的特殊注释来确定所有的库、可执行文件、测试、基准测试、例子、以及特定于平台的变量、项目的文档等;Go语言源代码本身就包含了构建规范。 三、Go语言入门 运行环境:root@ubuntu:~# go versiongo version go1.6.2 linux/amd64 设置GOPATH:root@ubuntu:/home/go# export GOPATH=/home/goroot@ubuntu:/home/go# echo $GOPATH/home/go 学习一门新语言时,一种仪式性的开场程序就是从那个经典的helloWorld开始: package main import "fmt" func main() { fmt.Println("Hello, World!") } root@ubuntu:/home/go/ch01# go run helloworld.go Hello, World! root@ubuntu:/home/go/ch01# go build helloworld.go root@ubuntu:/home/go/ch01# ls -ltotal 2240-rwxr-xr-x 1 root root 2288216 Jun 30 03:13 helloworld-rw-r--r-- 1 root root 74 Jun 30 03:10 helloworld.goroot@ubuntu:/home/go/ch01# ./helloworld Hello, World!

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册