The go programming language 🔍
Donovan, Alan A A;Kernighan, Brian W Addison-Wesley Professional, Addison-Wesley professional computing series;Professional Computing Series 1, 2015;2016
英语 [en] · PDF · 6.3MB · 1992 · 📘 非小说类图书 · 🚀/lgli/lgrs/nexusstc/zlib · Save
描述
Go is an open-source programming language that makes it easy to build clean, reliable, and efficient software. It has been winning converts from dynamic language enthusiasts as well as users of traditional compiled languages. The former appreciate the robustness and efficiency that Go's lightweight type system brings to their code; the latter find Go's simplicity and fast tools a refreshing change. Thanks to its well-designed standard libraries and its excellent support for concurrent programming, Go is fast becoming the language of choice for distributed systems.
The Go Programming Language is the definitive book on Go for the working programmer. It assumes no prior knowledge of Go, nor any other specific programming language, so you'll find it an accessible guide whether you come from JavaScript, Ruby, Python, Java, or C++.
The book will quickly get you started using Go effectively from the beginning, and by the end, you will know how to use it well to write clear, idiomatic and efficient programs to solve real-world problems. You'll understand not just how to use its standard libraries, but how they work, and how to apply the same design techniques to your own projects.
The earlier chapters will introduce you to the basic concepts of Go programming---numbers, strings, functions---while at the same time presenting important computer science concepts like recursion, and useful examples of graphics, UTF-8, and error handling. The chapters on methods and interfaces will show you a new way to think about object-oriented programming; the chapter on concurrency explains why concurrency is so important in modern programming, and how Go helps you handle it well. You'll also learn about Go's pragmatic but effective approach to testing; how to build, test, and manage projects using the go tool, and the art of metaprogramming using reflection.
The book contains hundreds of interesting and practical examples that cover the whole language and a wide range of applications. The code samples from the book are available for download from gopl.io.
备用文件名
lgrsnf/Z:\Bibliotik_\A Library\Programming\Go\Go Programming Language (Addison-Wesley Professional Computing), The - Brian W. Kernighan.pdf
备用文件名
nexusstc/The go programming language/36db8dad77eb2dcd79ac26368124bacb.pdf
备用文件名
zlib/Computers/Computer Science/Donovan, Alan A A;Kernighan, Brian W/The go programming language_11002344.pdf
备选标题
Go Programming Language, The (Addison-Wesley Professional Computing Series)
备选标题
Territorial Changes and International Conflict
备选标题
Язык программирования Go: пер. с англ
备选作者
Алан А. А. Донован, Брайнан У. Керниган; [пер. с англ. и ред. И. В. Красикова]
备选作者
Alan A. A. Donovan; Brian W. Kernighan
备选作者
Gary Goertz; Paul F Diehl
备选作者
Diehl, Paul; Goertz, Gary
备选作者
Paul Diehl; Gary Goertz
备选作者
Gary Goertz, 1953-
备选作者
Донован, Алан А. А
备用出版商
Globe Fearon Educational Publishing
备用出版商
Ashgate Publishing Limited
备用出版商
Taylor & Francis Group
备用出版商
Taylor & Francis Ltd
备用出版商
Gower Publishing Ltd
备用出版商
Sangyo Hochi Center
备用出版商
Taylor and Francis
备用出版商
Longman Publishing
备用出版商
б. и.; Диалектика
备用出版商
Вильямс; б. и.
备用出版商
Addison Wesley
备用出版商
Cengage Gale
备用出版商
Routledge
备用版本
Addison-Wesley professional computing series, First printing, October 2015, New York, 2015
备用版本
Серия "Программирование для профессионалов", Москва, Санкт-Петербург, Russia, 2020
备用版本
Серия "Программирование для профессионалов", Москва, Санкт-Петербург, Russia, 2018
备用版本
Addison-Wesley Professional Computing Series, New York City, New York, USA, 2016
备用版本
Серия "Программирование для профессионалов", Москва [и др.], Russia, 2016
备用版本
Addison-Wesley professional computing series, New York State, 2016
备用版本
Addison-Wesley professional computing series, New York, cop. 2016
备用版本
Studies in international conflict, v. 5, London ; New York, 1992
备用版本
Taylor & Francis (Unlimited), London, 1992
备用版本
United Kingdom and Ireland, United Kingdom
备用版本
Studies in International Conflict, 2002
备用版本
United States, United States of America
备用版本
Pearson Education (US), New York, 2016
备用版本
Japan, Japan
备用版本
1, 20020122
备用版本
1, PS, 2015
元数据中的注释
lg2860573
元数据中的注释
{"content":{"parsed_at":1707279570,"parser":{"name":"textparser","version":"0.1.77"},"source":{"name":"grobid","version":"0.8.0"}},"isbns":["0134190440","1134903170","4386660666","4398046511618","9780134190440","9781134903177","9784386660669"],"publisher":"Addison-Wesley","series":"Addison-Wesley professional computing series;Professional Computing Series 1"}
元数据中的注释
"First printing, October 2015"--Title page verso.
Includes index.
元数据中的注释
Предм. указ.: с. 425-429
Пер.: Donovan, Alan A. A. The go programming language Boston [etc.] : Addison-Wesley, 2016 978-0-13-419044-0
元数据中的注释
РГБ
元数据中的注释
Russian State Library [rgb] MARC:
=001 010277375
=005 20200623135554.0
=008 200210s2020\\\\ru\\\\\\\\\\\\|||\|\rus|d
=017 \\ $a КН-П-20-009438 $b RuMoRKP
=020 \\ $a 978-5-907114-21-0 $c 500 экз.
=040 \\ $a RuMoRGB $b rus $e rcr
=041 1\ $a rus $h eng
=044 \\ $a ru
=084 \\ $a З973.2-018.19Go,0 $2 rubbk
=100 1\ $a Донован, Алан А. А.
=245 00 $a Язык программирования Go : $b пер. с англ. $c Алан А. А. Донован, Брайан У. Керниган
=260 \\ $a Москва $b [б. и.] ; $a Санкт-Петербург $b Диалектика $c 2020
=300 \\ $a 429 с. $b ил. $c 25 см
=336 \\ $a Текст (визуальный)
=337 \\ $a непосредственный
=490 0\ $a Серия "Программирование для профессионалов"
=500 \\ $a Предм. указ.: с. 425-429
=534 \\ $p Пер.: $a Donovan, Alan A. A. $t The go programming language $c Boston [etc.] : Addison-Wesley, 2016 $z 978-0-13-419044-0
=650 \7 $a Техника. Технические науки -- Энергетика. Радиоэлектроника -- Радиоэлектроника -- Вычислительная техника -- Вычислительные машины электронные цифровые -- Программирование -- Языки программирования -- Go $2 rubbk
=700 1\ $a Керниган, Брайан $d 1942-
=852 \\ $a РГБ $b FB $j 2 20-9/156 $x 90
=852 7\ $a РГБ $b CZ2 $h З973.2-018/Д67 $x 83
元数据中的注释
Предметный указатель: с. 425-429
Пер.: Donovan, Alan A. A. The Go programming language Boston [etc.] : Addison-Wesley, cop. 2016 978-0-13-419044-0
元数据中的注释
Russian State Library [rgb] MARC:
=001 009647366
=005 20180607143347.0
=008 180531s2018\\\\ru\||||\\\\\\\0||\|\rus|d
=017 \\ $a КН-П-18-039527 $b RuMoRKP
=020 \\ $a 978-5-8459-2051-5 $c 500 экз.
=040 \\ $a RuMoRGB $b rus $e rcr
=041 1\ $a rus $h eng
=044 \\ $a ru
=080 \\ $a 004.4
=084 \\ $a З973.2-018.19Go,0 $2 rubbk
=100 1\ $a Донован, Алан А. А.
=245 00 $a Язык программирования Go $h [Текст] $c Алан А. А. Донован, Брайнан У. Керниган
=260 \\ $a Москва $b Вильямс ; $a Санкт-Петербург $b [б. и.] $c 2018
=300 \\ $a 429 с. $b ил. $c 24 см
=336 \\ $a текст (text) $b txt $2 rdacontent
=337 \\ $a неопосредованный (unmediated) $b n $2 rdamedia
=338 \\ $a том (volume) $b nc $2 rdacarrier
=490 0\ $a Серия "Программирование для профессионалов"
=500 \\ $a Предметный указатель: с. 425-429
=534 \\ $p Пер.: $a Donovan, Alan A. A. $t The Go programming language $c Boston [etc.] : Addison-Wesley, cop. 2016 $z 978-0-13-419044-0
=650 \7 $a Вычислительная техника -- Вычислительные машины электронные цифровые -- Программирование -- Языки программирования -- Go $2 rubbk
=650 \7 $a Языки программирования $0 RU\NLR\AUTH\661264476 $2 nlr_sh
=653 \\ $a Go - программы
=700 1\ $a Керниган, Брайан $d 1942-
=852 \\ $a РГБ $b FB $j 2 18-35/111 $x 90
元数据中的注释
Указ.
Пер.: Donovan, Alan A. A. The Go programming language Boston [etc.] : Addison-Wesley, cop. 2016 978-0-13-419044-0
元数据中的注释
Russian State Library [rgb] MARC:
=001 008474809
=005 20160505165338.0
=008 160429s2016\\\\ru\||||\\\\\\\0||\u\rus|d
=017 \\ $a 16-36342 $b RuMoRKP
=020 \\ $a 978-5-8459-2051-5 $c 700 экз.
=040 \\ $a RuMoRGB $b rus $e rcr
=041 0\ $a rus
=080 \\ $a 004.4
=084 \\ $a З973.2-018.19Go,0 $2 rubbk
=100 1\ $a Донован, Алан А. А.
=245 00 $a Язык программирования Go $h [Текст] $c Алан А. А. Донован, Брайнан У. Керниган ; [пер. с англ. и ред. И. В. Красикова]
=260 \\ $a Москва [и др.] $b Вильямс $c 2016
=300 \\ $a 429 с. $b ил. $c 24 см
=336 \\ $a текст (text) $b txt $2 rdacontent
=337 \\ $a неопосредованный (unmediated) $b n $2 rdamedia
=338 \\ $a том (volume) $b nc $2 rdacarrier
=490 0\ $a Серия "Программирование для профессионалов"
=500 \\ $a Указ.
=534 \\ $p Пер.: $a Donovan, Alan A. A. $t The Go programming language $c Boston [etc.] : Addison-Wesley, cop. 2016 $z 978-0-13-419044-0
=650 \7 $a Вычислительная техника -- Вычислительные машины электронные цифровые -- Программирование -- Языки программирования -- Go $2 rubbk
=650 \7 $a Языки программирования $0 RU\NLR\AUTH\661264476 $2 nlr_sh
=653 \\ $a Go - программы
=700 1\ $a Керниган, Брайан $d 1942-
=852 \\ $a РГБ $b FB $j 2 16-35/189 $x 90
备用描述
Contents......Page 8
Preface......Page 12
The Origins of Go......Page 13
The Go Project......Page 14
Organization of the Book......Page 16
Where to Find More Information......Page 17
Acknowledgments......Page 18
1.1. Hello, World......Page 20
1.2. Command-Line Arguments......Page 23
1.3. Finding Duplicate Lines......Page 27
1.4. Animated GIFs......Page 32
1.5. Fetching a URL......Page 34
1.6. Fetching URLs Concurrently......Page 36
1.7. A Web Server......Page 38
1.8. Loose Ends......Page 42
2.1. Names......Page 46
2.2. Declarations......Page 47
2.3. Variables......Page 49
2.4. Assignments......Page 55
2.5. Type Declarations......Page 58
2.6. Packages and Files......Page 60
2.7. Scope......Page 64
3.1. Integers......Page 70
3.2. Floating-Point Numbers......Page 75
3.3. Complex Numbers......Page 80
3.4. Booleans......Page 82
3.5. Strings......Page 83
3.6. Constants......Page 94
4.1. Arrays......Page 100
4.2. Slices......Page 103
4.3. Maps......Page 112
4.4. Structs......Page 118
4.5. JSON......Page 126
4.6. Text and HTML Templates......Page 132
5.1. Function Declarations......Page 138
5.2. Recursion......Page 140
5.3. Multiple Return Values......Page 143
5.4. Errors......Page 146
5.5. Function Values......Page 151
5.6. Anonymous Functions......Page 154
5.7. Variadic Functions......Page 161
5.8. Deferred Function Calls......Page 162
5.9. Panic......Page 167
5.10. Recover......Page 170
6.1. Method Declarations......Page 174
6.2. Methods with a Pointer Receiver......Page 177
6.3. Composing Types by Struct Embedding......Page 180
6.4. Method Values and Expressions......Page 183
6.5. Example: Bit Vector Type......Page 184
6.6. Encapsulation......Page 187
7.1. Interfaces as Contracts......Page 190
7.2. Interface Types......Page 193
7.3. Interface Satisfaction......Page 194
7.4. Parsing Flags with flag. Value......Page 198
7.5. Interface Values......Page 200
7.6. Sorting with sort. Interface......Page 205
7.7. The http. Handler Interface......Page 210
7.8. The error Interface......Page 215
7.9. Example: Expression Evaluator......Page 216
7.10. Type Assertions......Page 224
7.11. Discriminating Errors with Type Assertions......Page 225
7.12. Querying Behaviors with Interface Type Assertions......Page 227
7.13. Type Switches......Page 229
7.14. Example: Token-Based XML Decoding......Page 232
7.15. A Few Words of Advice......Page 235
8.1. Goroutines......Page 236
8.2. Example: Concurrent Clock Server......Page 238
8.3. Example: Concurrent Echo Server......Page 241
8.4. Channels......Page 244
8.5. Looping in Paralle......Page 253
8.6. Example: Concurrent Web Crawler......Page 258
8.7. Multiplexing with select......Page 263
8.8. Example: Concurrent Directory Traversal......Page 266
8 9 Cancellation......Page 270
8.10. Example: Chat Server......Page 272
9.1. Race Conditions......Page 276
9.2. Mutual Exclusion: sync. Mutex......Page 281
9.3. Read/Write Mutexes: sync. RWMutex......Page 285
9.4. Memory Synchronization......Page 286
9.5. Lazy Initialization: sync.Once......Page 287
9.6. The Race Detector......Page 290
9.7. Example: Concurrent Non-Blocking Cache......Page 291
9.8. Goroutinesand Threads......Page 299
10.1. Introduction......Page 302
10.2. Import Paths......Page 303
10.4. Import Declarations......Page 304
10.5. Blank Imports......Page 305
10.6. Packages and Naming......Page 308
10.7. The Go Tool......Page 309
11. Testing......Page 320
11.2. Test Functions......Page 321
11.3. Coverage......Page 337
11.4. Benchmark Functions......Page 340
11.5. Profiling......Page 342
11.6. Example Functions......Page 345
12.1. Why Reflection?......Page 348
12.2. reflect. Type and reflect. Value......Page 349
12.3. Display, a Recursive Value Printer......Page 352
12.4. Example: Encoding S-Expressions......Page 357
12.5. Setting Variables with reflect.Value......Page 360
12.6. Example: Decoding S-Expressions......Page 363
12.7. Accessing Struct Field Tags......Page 367
12.8. Displaying the Methods of a Type......Page 370
12.9. A Word of Caution......Page 371
13. Low-Level Programming......Page 372
13.1. unsafe. Sizeof, Alignof,and Offsetof......Page 373
13.2. unsafe. Pointer......Page 375
13.3. Example: Deep Equivalence......Page 377
13.4. Calling C Code with cgo......Page 380
13.5. Another Word of Caution......Page 385
A......Page 386
C......Page 387
D......Page 388
E......Page 389
F......Page 390
H......Page 391
L......Page 392
M......Page 393
P......Page 394
R......Page 395
S......Page 396
T......Page 397
U......Page 398
Z......Page 399
备用描述
The Go Programming Language is the authoritative resource for any programmer who wants to learn Go. It shows how to write clear and idiomatic Go to solve real-world problems. The book does not assume prior knowledge of Go nor experience with any specific language, so you'll find it accessible whether you're most comfortable with JavaScript, Ruby, Python, Java, or C++. The first chapter is a tutorial on the basic concepts of Go, introduced through programs for file I/O and text processing, simple graphics, and web clients and servers. Early chapters cover the structural elements of Go programs: syntax, control flow, data types, and the organization of a program into packages, files, and functions. The examples illustrate many packages from the standard library and show how to create new ones of your own. Later chapters explain the package mechanism in more detail, and how to build, test, and maintain projects using the go tool. The chapters on methods and interfaces introduce Go's unconventional approach to object-oriented programming, in which methods can be declared on any type and interfaces are implicitly satisfied. They explain the key principles of encapsulation, composition, and substitutability using realistic examples. Two chapters on concurrency present in-depth approaches to this increasingly important topic. The first, which covers the basic mechanisms of goroutines and channels, illustrates the style known as communicating sequential processes for which Go is renowned. The second covers more traditional aspects of concurrency with shared variables. These chapters provide a solid foundation for programmers encountering concurrency for the first time. The final two chapters explore lower-level features of Go. One covers the art of metaprogramming using reflection. The other shows how to use the unsafe package to step outside the type system for special situations, and how to use the cgo tool to create Go bindings for C libraries. The book features hundreds of interesting and practical examples of well-written Go code that cover the whole language, its most important packages, and a wide range of applications. Each chapter has exercises to test your understanding and explore extensions and alternatives. Source code is freely available for download from http://gopl.io/ and may be conveniently fetched, built, and installed using the go get command.
备用描述
« Go may be our generation's most important new programming language. It is exceptionally expressive, highly efficient in both compilation and execution, and enables the development of extremely reliable and robust programs. It shares the same spirit programmers once found in C: it helps serious professional programmers achieve maximum effect with minimum means. Now, Go shares something else with C, too. Brian Kernighan, who wrote the world's most respected and useful C primer for working programmers, has just done the same for Go. Together with Google Go insider Alan Donovan, Kernighan explains what Go does and doesn't borrow from C ... the great ideas it borrows from other modern languages ... and how it avoids features that lead to unnecessary complexity and unreliable code. Throughout, their short, carefully-crafted code examples demonstrate today's most effective Go idioms, so you can start using Go effectively right from the beginning, and quickly take advantage of its full power. All code has been extensively reviewed by Go's creators at Google for both completeness and accuracy. »-- Résumé de l'éditeur
备用描述
This book charts the incidence of territorial changes and military conflicts from 1816 to 1980. Using statistical and descriptive analysis, the authors attempt to answer three related sets of questions: * When does military conflict accompany the process of national independence? * When do states fight over territorial changes and when are such transactions completed peacefully? * How do territorial changes affect future military conflict between the states involved in the exchange?
备用描述
The book will quickly get students started using Go effectively from the beginning, and by the end, they will know how to use it well to write clear, idiomatic and efficient programs to solve real-world problems. They'll understand not just how to use its standard libraries, but how they work, and how to apply the same design techniques to their own projects.
备用描述
Contents
Preface
Tutorial
Program Structure
Basic Data Types
Composite Types
Functions
Methods
Interfaces
Goroutines and Channels
Concurrency with Shared Variables
Packages and the Go Tool
Testing
Reflection
Low-level Programming
Index
备用描述
Charts the incidence of conflict since 1816, using statistical and descriptive analysis to uncover the relationship between national independence, territorial change and military confrontation.
开源日期
2020-11-29
更多信息……

🚀 快速下载

成为会员以支持书籍、论文等的长期保存。为了感谢您对我们的支持,您将获得高速下载权益。❤️

🐢 低速下载

由可信的合作方提供。 更多信息请参见常见问题解答。 (可能需要验证浏览器——无限次下载!)

所有选项下载的文件都相同,应该可以安全使用。即使这样,从互联网下载文件时始终要小心。例如,确保您的设备更新及时。
  • 对于大文件,我们建议使用下载管理器以防止中断。
    推荐的下载管理器:JDownloader
  • 您将需要一个电子书或 PDF 阅读器来打开文件,具体取决于文件格式。
    推荐的电子书阅读器:Anna的档案在线查看器ReadEraCalibre
  • 使用在线工具进行格式转换。
    推荐的转换工具:CloudConvertPrintFriendly
  • 您可以将 PDF 和 EPUB 文件发送到您的 Kindle 或 Kobo 电子阅读器。
    推荐的工具:亚马逊的“发送到 Kindle”djazz 的“发送到 Kobo/Kindle”
  • 支持作者和图书馆
    ✍️ 如果您喜欢这个并且能够负担得起,请考虑购买原版,或直接支持作者。
    📚 如果您当地的图书馆有这本书,请考虑在那里免费借阅。