电子书:《Go Web编程》

[复制链接]
查看1041 | 回复1 | 2019-12-7 10:13:30 | 显示全部楼层 |阅读模式

多种网盘链接检测插件
购买前,请先检测网盘链接是否有效


                       

《Go Web编程》_1

《Go Web编程》_1

《Go Web编程》_2

《Go Web编程》_2

《Go Web编程》_3

《Go Web编程》_3


内容简介:

MANNING
Go
Web编程
0
Web programming
〔新加坡〕郑兆雄( Sau Sheong Chang)著
黄健宏译
人民邮电出版社
北京

图书在版编目(CIP)数据
Go Web编程/(新加坡)郑兆雄著:黄健宏译
北京:人民邮电出版社,2017.12
书名原文: Go Web Programming
ISBN978-7-115-32247-0
G…Ⅱ.①郑…②黄…Ⅲ.①程序语言一程序
DTP312
中guo版本图书馆CIP数据核字(2017)第264241号
版权声明
Original English language edition, entitled Go Web Programming by Sau Sheong Chang published by Manning
Publications Co., 209 Bruce Park Avenue, Greenwich, CT 06830 Copyright e 2016 by Manning Publications Co
Simplified Chinese-language edition copyright o 2017 by Posts Telecom Press. All rights reserved
本书中文简体字版由 Manning Publications Co授权人民邮电出版社独家出版。未经出版者书面许可,不得以
任何方式复制或抄袭本书内容
版权所有,侵权必究
[新加坡]郑兆雄( Sau Sheong Chang)

黄健宏
责任编辑杨海玲
◆人民邮电出版社出版发行北京市丰台区成寿寺路11号
却编100164电子邮件315@ptpress.com.cn
可址htp/www;ntpress,com.cn
北京中新伟业印刷有限公司印刷
◆开本:800×1000/16
字数:425千字
017年12月第1版
2017年12月北京第1次印刷
著作权合同登记号图字:01-2016-6529号
读者服务热线010)81055410印装质量热线010)81055316
反盗版热线010)81055315
广告经营许可证:京东工商广登字20170147号

内容提要
本书全面介绍使用Go语言开发Web应用所需的全部基本概念,并详细讲解如何运用现代设
计原则使用Go语言构建Web应用。本书通过大量的实例介绍核心概念(如处理请求和发送响
应、模板引擎和数据持久化),并深入讨论更多高级主题(如并发、Web应用程序测试以及部
署到标准系统服.务.器和PaS提供商)。
本书以一个网络论坛为例,讲解如何使用请求处理器、多路复用器、模板引擎、存储系统等
核心组件构建一个 Go Web应用,然后在这一应用的基础上,构建出相应的web服务。值得
提的是,本书在介绍 Go Web开发方法时,基本上只用到Go语言自带的标准库,而不会用到任
何特定的web框架,读者学到的知识将不会局限于特定的框架,即使将来需要用到现成的框架
或者自行构建框架,仍然会从本书中获益。本书除了讲解具体的web开发方法,还介绍如何对
Go web应用进行测试,如何使用Go的并发特性提高Web应用的性能,以及如何在 Heroku, Google
App Engine、 Digital Ocean等云平台上部署 Go Web应用;此外,书中还传授一些 Go Web开发
方面的经验和提示。这些重要的实践知识将帮助读者快速成为真正具有生产力的 Go web开发者
阅读本书需要读者具备基本的Go语言编程技能并掌握Go语言的语法。本书适合所有想用
Go语言进行web开发的读者阅读,无论是web开发的初学者还是入行已久的开发者都会在阅
读本书的过程中有所收获

译者记事
随着近年来Web开发的盛行,很多相关书籍也随之如雨后春笋般出现,然而在这些书籍当
中,绝大多数书籍都只关注表面的实现代码,而对代码背后的技术原理却少有提及。读者在看这
类书籍时,虽然可以学到某个框架或者某个库的API,并根据书中给出的代码搭建出一个个演示
序(demo),但是对隐藏在这些代码之下的原理却一无所知。这种停留在表面的理解一旦离开
了书本的指导,就会让人感到寸步难行,不知所措
本书的独特之处在于,它抛开了现有的所有 Go Web框架,仅仅通过Go语言内置的标准
库来展示如何去构建一个Web应用或Web服务。这样做的好处是,无论将来读者是使用这些
标准库来构建web应用,还是使用现成的框架去构建web应用,又或者使用自己建造的框架
去构建web应用,本书介绍的知识都是非常有用的:如果使用的是现成的框架,那么这些框架
的内部实现通常就是由本书介绍的Go标准库构建的;如果选择自建框架,那么将有很大概率
会用到本书介绍的Go标准库。因此,不论在何种情况下,本书对于构建 Go web应用都是非
常有帮助的
本书的另一个优点是,它在介绍Web应用开发技术的同时,也介绍了隐藏在这些技术背
后的基础知识。比如,在介绍Web处理器( handler)的创建方法之前,本书就先深入浅出地
介绍了HTTP协议,然后才说明具体的请求处理方法以及响应返回方法;又比如说,在介绍
会话(session)技术时,本书就先说明了HTTP协议的无状态性质,然后才说明如何使用会
话去解决这一问题;类似的例子在书里面还有很多,不一而足。对刚开始接触Web开发的读
者来说,本书这种“知其然,也知其所以然”的教授方式能够让读者打好web开发的基础
从而达到事半功倍的效果;此外,对那些已经有一定Web开发经验的读者来说,本书将在介
绍 Go Web开发方法的同时,帮助读者回顾和巩固web开发的相关基础知识,并藉此成为更
好的Web开发者
综上所述,我认为这本书对所有关心Web开发的人来说,都是非常值得一读的—无论读者
使用的是Go语言还是其他语言、ⅹ框架还是Y框架,无论读者是Wb开发的初学者还是人行
已久的开发者,应该都会在阅读本书的过程中有所收获

关于本书的翻译
这本《 Go Web编程》是我的第二部译作,在翻译第一部译作《Reis实战》的时候,因为受
经验、知识以及时间等条件限制,我只能把时间尽量花在保证译文的准确性上,但是对于译文本
身的可读性却未能有太多的关注。这次在翻译这本《 Go Web编程》的过程中,我给自己订立了
更高的目标,那就是,在保证译文正确性的前提下,通过合理的用词遣句,让译文更符合中文表
方式,并且更具表现力
以本书的前言原文为例,其中就有一句“ My own journey in developing applications for the web
started around the same time, in the mid-1990s”,这句话的原意是说作者的Web开发生涯跟万维网
的发展轨迹正好重合,因此把它单纯地译为“本人的web应用开发生涯也是从20世纪90年代
中期开始.…”是完全没有问题的,但是通过在句子前面添加“无独有偶”一词来与“ around the
same time”的翻译“也是”相互呼应,就会一下子给译文带来画龙点睛的效果:“无独有偶,本
的web应用开发生涯也是从20世纪90年代中期开始…”
迷续以前言为例,在这篇文章的原文当中,出现了不少常见的英文短语和词汇,这些短语和
词汇通常都有一个正确、常见并且平庸的翻译,但是本书却抛弃了这些翻译,转而选择了更准确
更有表现力的译法。比如说,“ writing web applications has changed dramati.C.A.L.L.y over the years”中
的“ changed dramati.C.A.L.L.y,没有直译为“发生了戏剧性的变化”,而是翻译为“发生了翻天覆地的
2ft\":\"Almost as soon as the first web applications were written, web application frameworks
ppeared”中的“ were written”和“ appeared”没有直译为“被编写出来之后”以及“出现”,而
是分别翻译为“闪亮登场”和“应运而生”,前者突出了Wb应用的出现对于互联网的巨大改变
而后者则突出了Web应用和web框架之间相辅相成的关系。类似的例子还有很多很多,并且它
们不仅出现在了前言里,还出现在了本书的正文当中
当然,提高译文的可读性并不是一件一蹴而就的事。为了让译文更有“中文味”,本书的大
多数译文都已三易其稿,有时候仅仅为了挑选出一个更恰当的词语或成语,就不得不对着词典推
敲半天。这本书的翻译从2016年8月开始,到2017年8月交稿,整整跨越了一年时间,其中翻
译原文和润色译文两项工作花费的时间可谓各占一半。如果读者能够从译文的字里行间感受到这
种润物细无声的优化,那将是对本人翻译工作最好的肯定
另外,因为这是一本使用Go语言标准库进行web开发的书,所以对 Go Web开发相关标准
库的理解程度将是能否准确地翻译本书技术内容的关键。为了进一步熟悉本书用到的标准库,本
人通读了书中用到的各个标准库的文档,阅读了其中部分标准库的源码,并且因为有时候“好记
性比不上烂笔头”,所以本人还翻译了其中一部分标准库文档,力求在尽可能掌握标准库细节的
情况下,再进行翻译,尽量做到知其然也知其所以然,而不是单纯地根据纸面上的文字和代码进
行翻译
最后,在翻译本书的过程中,本人也发现了原著中大大小小数十个bug,并在译文中一一进
行了修正。综上所述,读者看到的这个译本从某个角度来说将比原著更准确也更易读。这也是我


#############################################


回复

使用道具 举报

红颜纷扰红尘 | 2019-12-21 20:05:17 | 显示全部楼层
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则