Learning Go programming : an insightful guide to learning the Go programming language /
Annotation
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt,
2016.
|
Temas: | |
Acceso en línea: | Texto completo Texto completo |
MARC
LEADER | 00000cam a2200000Ii 4500 | ||
---|---|---|---|
001 | EBSCO_ocn962192246 | ||
003 | OCoLC | ||
005 | 20231017213018.0 | ||
006 | m o d | ||
007 | cr cnu---unuuu | ||
008 | 161107s2016 enka o 001 0 eng d | ||
040 | |a UMI |b eng |e rda |e pn |c UMI |d N$T |d YDX |d NLE |d IDEBK |d OCLCQ |d OCLCF |d TOH |d STF |d DEBBG |d REB |d OCLCQ |d VT2 |d UOK |d CEF |d KSU |d INT |d OCLCQ |d WYU |d AGLDB |d IGB |d OCLCO |d OCLCQ |d QGK | ||
019 | |a 962011255 |a 962064538 |a 1259181920 | ||
020 | |a 9781784392338 |q (electronic bk.) | ||
020 | |a 1784392332 |q (electronic bk.) | ||
020 | |z 9781784395438 | ||
020 | |z 1784395439 | ||
029 | 1 | |a DEBBG |b BV043970629 | |
029 | 1 | |a DEBSZ |b 485811049 | |
029 | 1 | |a GBVCP |b 876249748 | |
029 | 1 | |a AU@ |b 000066053510 | |
029 | 1 | |a AU@ |b 000066232760 | |
029 | 1 | |a AU@ |b 000067096946 | |
029 | 1 | |a AU@ |b 000070277545 | |
029 | 1 | |a AU@ |b 000058968669 | |
035 | |a (OCoLC)962192246 |z (OCoLC)962011255 |z (OCoLC)962064538 |z (OCoLC)1259181920 | ||
037 | |a 966297 |b MIL | ||
050 | 4 | |a QA76.73.G63 | |
072 | 7 | |a COM |x 051010 |2 bisacsh | |
072 | 7 | |a COM |x 051000 |2 bisacsh | |
082 | 0 | 4 | |a 005.133 |2 23 |
049 | |a UAMI | ||
100 | 1 | |a Vivien, Vladimir, |e author. | |
245 | 1 | 0 | |a Learning Go programming : |b an insightful guide to learning the Go programming language / |c Vladimir Vivien. |
264 | 1 | |a Birmingham : |b Packt, |c 2016. | |
300 | |a 1 online resource : |b illustrations | ||
336 | |a text |b txt |2 rdacontent | ||
337 | |a computer |b c |2 rdamedia | ||
338 | |a online resource |b cr |2 rdacarrier | ||
347 | |a text file | ||
588 | 0 | |a Online resource; title from PDF title page (EBSCO, viewed November 17, 2016). | |
500 | |a Includes index. | ||
520 | 8 | |a Annotation |b An insightful guide to learning the Go programming languageAbout This Book Insightful coverage of Go programming syntax, constructs, and idioms to help you understand Go code effectively Push your Go skills, with topics such as, data types, channels, concurrency, object-oriented Go, testing, and network programming Each chapter provides working code samples that are designed to help reader quickly understand respective topicWho This Book Is ForIf you have prior exposure to programming and are interested in learning the Go programming language, this book is designed for you. It will quickly run you through the basics of programming to let you exploit a number of features offered by Go programming language. What You Will Learn Install and configure the Go development environment to quickly get started with your first program. Use the basic elements of the language including source code structure, variables, constants, and control flow primitives to quickly get started with Go Gain practical insight into the use of Go's type system including basic and composite types such as maps, slices, and structs. Use interface types and techniques such as embedding to create idiomatic object-oriented programs in Go. Develop effective functions that are encapsulated in well-organized package structures with support for error handling and panic recovery. Implement goroutine, channels, and other concurrency primitives to write highly-concurrent and safe Go code Write tested and benchmarked code using Go's built test tools Access OS resources by calling C libraries and interact with program environment at runtimeIn DetailThe Go programming language has firmly established itself as a favorite for building complex and scalable system applications. Go offers a direct and practical approach to programming that let programmers write correct and predictable code using concurrency idioms and a full-featured standard library. This is a step-by-step, practical guide full of real world examples to help you get started with Go in no time at all. We start off by understanding the fundamentals of Go, followed by a detailed description of the Go data types, program structures and Maps. After this, you learn how to use Go concurrency idioms to avoid pitfalls and create programs that are exact in expected behavior. Next, you will be familiarized with the tools and libraries that are available in Go for writing and exercising tests, benchmarking, and code coverage. Finally, you will be able to utilize some of the most important features of GO such as, Network Programming and OS integration to build efficient applications. All the concepts are explained in a crisp and concise manner and by the end of this book; you would be able to create highly efficient programs that you can deploy over cloud. Style and approachThe book is written to serve as a reader-friendly step-by-step guide to learning the Go programming language. Each topic is sequentially introduced to build on previous materials covered. Every concept is introduced with easy-to-follow code examples that focus on maximizing the understanding of the topic at hand. | |
505 | 0 | |a Cover -- Copyright -- Credits -- About the Author -- About the Reviewers -- www.PacktPub.com -- Table of Contents -- Preface -- Chapter 1: A First Step in Go -- The Go programming language -- Playing with Go -- No IDE required -- Installing Go -- Source code examples -- Your first Go program -- Go in a nutshell -- Functions -- Packages -- The workspace -- Strongly typed -- Composite types -- The named type -- Methods and objects -- Interfaces -- Concurrency and channels -- Memory management and safety -- Fast compilation -- Testing and code coverage -- Documentation -- An extensive library -- The Go Toolchain -- Summary -- Chapter 2: Go Language Essentials -- The Go source file -- Optional semicolon -- Multiple lines -- Go identifiers -- The blank identifier -- Muting package imports -- Muting unwanted function results -- Built-in identifiers -- Types -- Values -- Functions -- Go variables -- Variable declaration -- The zero-value -- Initialized declaration -- Omitting variable types -- Short variable declaration -- Restrictions for short variable declaration -- Variable scope and visibility -- Variable declaration block -- Go constants -- Constant literals -- Typed constants -- Untyped constants -- Assigning untyped constants -- Constant declaration block -- Constant enumeration -- Overriding the default enumeration type -- Using iota in expressions -- Skipping enumerated values -- Go operators -- Arithmetic operators -- The increment and decrement operators -- Go assignment operators -- Bitwise operators -- Logical Operators -- Comparison operators -- Operator precedence -- Summary -- Chapter 3: Go Control Flow -- The if statement -- The if statement initialization -- Switch statements -- Using expression switches -- The fallthrough cases -- Expressionless switches -- Switch initializer -- Type switches -- The for statements -- For condition. | |
505 | 8 | |a Infinite loop -- The traditional for statement -- The for range -- The break, continue, and goto statements -- The label identifier -- The break statement -- The continue statement -- The goto statement -- Summary -- Chapter 4: Data Types -- Go types -- Numeric types -- Unsigned integer types -- Signed integer types -- Floating point types -- Complex number types -- Numeric literals -- Boolean type -- Rune and string types -- The rune -- The string -- Interpreted and raw string literals -- Pointers -- The pointer type -- The address operator -- The new() function -- Pointer indirection -- accessing referenced values -- Type declaration -- Type conversion -- Summary -- Chapter 5: Functions in Go -- Go functions -- Function declaration -- The function type -- Variadic parameters -- Function result parameters -- Named result parameters -- Passing parameter values -- Achieving pass-by-reference -- Anonymous Functions and Closures -- Invoking anonymous function literals -- Closures -- Higher-order functions -- Error signaling and handling -- Signaling errors -- Error handling -- The error type -- Deferring function calls -- Using defer -- Function panic and recovery -- Function panic -- Function panic recovery -- Summary -- Chapter 6: Go Packages and Programs -- The Go package -- Understanding the Go package -- The workspace -- Creating a workspace -- The import path -- Creating packages -- Declaring the package -- Multi-File packages -- Naming packages -- Use globally unique namespaces -- Add context to path -- Use short names -- Building packages -- Installing a package -- Package visibility -- Package member visibility -- Importing package -- Specifying package identifiers -- The dot identifier -- The blank identifier -- Package initialization -- Creating programs -- Accessing program arguments -- Building and installing programs -- Remote packages. | |
505 | 8 | |a Chapter 10: Data IO in Go -- IO with readers and writers -- The io.Reader interface -- Chaining readers -- The io.Writer interface -- Working with the io package -- Working with files -- Creating and opening files -- Function os.OpenFile -- Files writing and reading -- Standard input, output, and error -- Formatted IO with fmt -- Printing to io.Writer interfaces -- Printing to standard output -- Reading from io.Reader -- Reading from standard input -- Buffered IO -- [Buffered writers and readers] -- Buffered writers and readers -- Scanning the buffer -- In-memory IO -- Encoding and decoding data -- Binary encoding with gob -- Encoding data as JSON -- Controlling JSON mapping with struct tags -- Custom encoding and decoding -- Summary -- Chapter 11: Writing Networked Services -- The net package -- Addressing -- The net.Conn Type -- Dialing a connection -- Listening for incoming connections -- Accepting client connections -- A TCP API server -- Connecting to the TCP server with telnet -- Connecting to the TCP server with Go -- The HTTP package -- The http.Client type -- Configuring the client -- Handling client requests and responses -- A simple HTTP server -- The default server -- Routing requests with http.ServeMux -- The default ServeMux -- A JSON API server -- Testing the API server with cURL -- An API server client in Go -- A JavaScript API server client -- Summary -- Chapter 12: Code Testing -- The Go test tool -- Test file names -- Test organization -- Writing Go tests -- The test functions -- Running the tests -- Filtering executed tests -- Test logging -- Reporting failure -- Skipping tests -- Table-driven tests -- HTTP testing -- Testing HTTP server code -- Testing HTTP client code -- Test coverage -- The cover tool -- Code benchmark -- Running the benchmark -- Skipping test functions -- The benchmark report -- Adjusting N. | |
505 | 8 | |a Comparative benchmarks -- Summary -- Index. | |
590 | |a eBooks on EBSCOhost |b EBSCO eBook Subscription Academic Collection - Worldwide | ||
590 | |a O'Reilly |b O'Reilly Online Learning: Academic/Public Library Edition | ||
650 | 0 | |a Go (Computer program language) | |
650 | 0 | |a Computer programming. | |
650 | 6 | |a Go (Langage de programmation) | |
650 | 6 | |a Programmation (Informatique) | |
650 | 7 | |a computer programming. |2 aat | |
650 | 7 | |a COMPUTERS |x Programming Languages |x General. |2 bisacsh | |
650 | 7 | |a COMPUTERS |x Programming |x General. |2 bisacsh | |
650 | 7 | |a Computer programming. |2 fast |0 (OCoLC)fst00872390 | |
650 | 7 | |a Go (Computer program language) |2 fast |0 (OCoLC)fst01893916 | |
776 | 0 | 8 | |i Print version: |a Vivien, Vladimir. |t Learning Go programming. |d Birmingham : Packt, 2016 |z 1784395439 |z 9781784395438 |w (OCoLC)948336659 |
856 | 4 | 0 | |u https://ebsco.uam.elogim.com/login.aspx?direct=true&scope=site&db=nlebk&AN=1404358 |z Texto completo |
856 | 4 | 0 | |u https://learning.oreilly.com/library/view/~/9781784395438/?ar |z Texto completo |
938 | |a EBSCOhost |b EBSC |n 1404358 | ||
938 | |a ProQuest MyiLibrary Digital eBook Collection |b IDEB |n cis34515031 | ||
938 | |a YBP Library Services |b YANK |n 13244386 | ||
994 | |a 92 |b IZTAP |