Opis ebooka: Learning Go
Go is rapidly becoming the preferred language for building web services. While there are plenty of tutorials available that teach Go's syntax to developers with experience in other programming languages, tutorials aren't enough. They don't teach Go's idioms, so developers end up recreating patterns that don't make sense in a Go context. This practical guide provides the essential background you need to write clear and idiomatic Go.
No matter your level of experience, you'll learn how to think like a Go developer. Author Jon Bodner introduces the design patterns experienced Go developers have adopted and explores the rationale for using them. You'll also get a preview of Go's upcoming generics support and how it fits into the language.
- Learn how to write idiomatic code in Go and design a Go project
- Understand the reasons for the design decisions in Go
- Set up a Go development environment for a solo developer or team
- Learn how and when to use reflection, unsafe, and cgo
- Discover how Go's features allow the language to run efficiently
- Know which Go features you should use sparingly or not at all
Wybrane bestsellery
-
Ten praktyczny przewodnik jest przeznaczony dla osób, które chcą się nauczyć myśleć jak rasowi programiści Go. Dzięki niemu zaczniesz pisać idiomatyczny kod w Go, co pozwoli Ci optymalnie wykorzystywać możliwości tego języka. Dowiesz się, jak wygląda środowisko programistyczne Go i w jaki sposób ...
Język Go. Tworzenie idiomatycznego kodu w praktyce Język Go. Tworzenie idiomatycznego kodu w praktyce
(57.85 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Książka stanowi kompendium wiedzy na temat tej niesłychanie szybko rozwijającej się i dynamicznie wkraczającej w nasze życie dziedziny. Została napisana tak, aby była przystępna dla osób posiadających podstawowe umiejętności matematyczne. Może stanowić podręcznik dla studentów takich kierunków ja...(31.85 zł najniższa cena z 30 dni)
34.30 zł
49.00 zł(-30%) -
Wielu adeptów kodowania ulega złudnemu przekonaniu, że opanowanie jakiegoś języka programowania wystarczy, aby być programistą. Nader często w pośpiechu piszą nieuporządkowany kod, który zawiera mnóstwo powtórzeń i jest kompletnie nieczytelny. Tymczasem prawdziwi mistr...
The Art of Clean Code. Jak eliminować złożoność i pisać czysty kod The Art of Clean Code. Jak eliminować złożoność i pisać czysty kod
(38.35 zł najniższa cena z 30 dni)41.30 zł
59.00 zł(-30%) -
Ten praktyczny przewodnik zawiera szeroki przegląd strategii, wzorców i form testowania oprogramowania, ułatwiających dobór ścieżek i podejść do konkretnych projektów w zależności od zakresu, budżetu i ram czasowych. Książka uczy przydatnych umiejętności w zakresie przeprowadzania testów wydajnoś...
Testowanie full stack. Praktyczny przewodnik dostarczania oprogramowania wysokiej jakości Testowanie full stack. Praktyczny przewodnik dostarczania oprogramowania wysokiej jakości
(57.85 zł najniższa cena z 30 dni)62.30 zł
89.00 zł(-30%) -
Oto pierwszy tom dzieła, które stanowi inspirujące spojrzenie na sztuczną inteligencję. Jego zrozumienie nie wymaga wybitnej znajomości informatyki i matematyki. Książka jest wspaniałą syntezą wczesnych i późniejszych koncepcji, a także technik, przeprowadzoną we frameworku idei, metod i technolo...
Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 1 Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 1
(109.85 zł najniższa cena z 30 dni)118.30 zł
169.00 zł(-30%) -
To drugi tom klasycznego podręcznika wiedzy o sztucznej inteligencji. Podobnie jak w wypadku pierwszej części, lektura tej książki nie wymaga wybitnej znajomości tematu. Dzięki przejrzystości tekstu i umiejętnemu unikaniu nadmiernego formalizmu można w dość łatwy sposób zrozumieć kluczowe idee i ...
Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 2 Sztuczna inteligencja. Nowe spojrzenie. Wydanie IV. Tom 2
(83.85 zł najniższa cena z 30 dni)90.30 zł
129.00 zł(-30%) -
To nie jest podręcznik dla programistów. Celem autorów jest zaprezentowanie jedynej w swoim rodzaju perspektywy firmy Google, od lat rozwijającej trwały ekosystem oprogramowania, co pozwoliło zebrać pożyteczne wnioski dotyczące skali działalności i czasu jej trwania. W książce zwrócono uwagę na t...
Inżynieria oprogramowania według Google. Czego warto się nauczyć o tworzeniu oprogramowania Inżynieria oprogramowania według Google. Czego warto się nauczyć o tworzeniu oprogramowania
(83.85 zł najniższa cena z 30 dni)90.30 zł
129.00 zł(-30%) -
To trzecie, wzbogacone i uzupełnione wydanie praktycznego samouczka, dzięki któremu błyskawicznie rozpoczniesz pracę z Terraform. Zapoznasz się z językiem programowania Terraform i zasadami tworzenia kodu. Szybko zaczniesz wdrażać infrastrukturę i zarządzać nią za pomocą zaledwie kilku poleceń. I...
Terraform. Tworzenie infrastruktury za pomocą kodu. Wydanie III Terraform. Tworzenie infrastruktury za pomocą kodu. Wydanie III
(64.35 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%) -
O tym, ile problemów sprawia niedbale napisany kod, wie każdy programista. Nie wszyscy jednak wiedzą, jak napisać ten świetny, „czysty” kod i czym właściwie powinien się on charakteryzować. Co więcej – jak odróżnić dobry kod od złego? Odpowiedź na te pytania oraz sposoby tworzen...(51.35 zł najniższa cena z 30 dni)
55.30 zł
79.00 zł(-30%) -
Ta książka powinna zostać przestudiowana przez każdego architekta nowoczesnych systemów rozproszonych. Jej celem jest pokazanie sposobów rozwiązywania trudnych problemów związanych z projektowaniem takiego oprogramowania. W krytyczny i wszechstronny sposób omówiono w niej najważniejsze problemy u...
Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje Złożone zagadnienia architektury oprogramowania. Jak analizować kompromisy i podejmować trudne decyzje
(64.35 zł najniższa cena z 30 dni)69.30 zł
99.00 zł(-30%)
O autorze ebooka
Jon Bodner jest inżynierem oprogramowania i architektem z dwudziestoletnim doświadczeniem. Zajmował się tworzeniem i rozwijaniem aplikacji dla różnych sektorów, między innymi dla finansów, handlu, ochrony zdrowia czy administracji. Często występuje na konferencjach dotyczących języka Go. Jest też współautorem wielu narzędzi służących do rozwijania oprogramowania.
Kup polskie wydanie:
Język Go. Tworzenie idiomatycznego kodu w praktyce
- Autor:
- Jon Bodner
48,95 zł
89,00 zł
(44.50 zł najniższa cena z 30 dni)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-920-7716-9, 9781492077169
- Data wydania ebooka:
-
2021-03-02
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 3.8MB
- Rozmiar pliku Mobi:
- 9.5MB
Spis treści ebooka
- Preface
- Who Should Read This Book
- Conventions Used in This Book
- Using Code Examples
- OReilly Online Learning
- How to Contact Us
- Acknowledgments
- 1. Setting Up Your Go Environment
- Installing the Go Tools
- The Go Workspace
- The go Command
- go run and go build
- go run
- go build
- go run and go build
- Getting Third-Party Go Tools
- Formatting Your Code
- Linting and Vetting
- Choose Your Tools
- Visual Studio Code
- GoLand
- The Go Playground
- Makefiles
- Staying Up to Date
- Wrapping Up
- 2. Primitive Types and Declarations
- Built-in Types
- The Zero Value
- Literals
- Booleans
- Numeric Types
- Integer types
- The special integer types
- Choosing which integer to use
- Integer operators
- Floating point types
- Complex types (youre probably not going to use these)
- A Taste of Strings and Runes
- Explicit Type Conversion
- Built-in Types
- var Versus :=
- Using const
- Typed and Untyped Constants
- Unused Variables
- Naming Variables and Constants
- Wrapping Up
- 3. Composite Types
- ArraysToo Rigid to Use Directly
- Slices
- len
- append
- Capacity
- make
- Declaring Your Slice
- Slicing Slices
- Slices share storage sometimes
- Converting Arrays to Slices
- copy
- Strings and Runes and Bytes
- Maps
- Reading and Writing a Map
- The comma ok Idiom
- Deleting from Maps
- Using Maps as Sets
- Structs
- Anonymous Structs
- Comparing and Converting Structs
- Wrapping Up
- 4. Blocks, Shadows, and Control Structures
- Blocks
- Shadowing Variables
- Detecting Shadowed Variables
- Blocks
- if
- for, Four Ways
- The Complete for Statement
- The Condition-Only for Statement
- The Infinite for Statement
- break and continue
- The for-range Statement
- Iterating over maps
- Iterating over strings
- The for-range value is a copy
- Labeling Your for Statements
- Choosing the Right for Statement
- switch
- Blank Switches
- Choosing Between if and switch
- gotoYes, goto
- Wrapping Up
- 5. Functions
- Declaring and Calling Functions
- Simulating Named and Optional Parameters
- Variadic Input Parameters and Slices
- Multiple Return Values
- Multiple Return Values Are Multiple Values
- Ignoring Returned Values
- Named Return Values
- Blank ReturnsNever Use These!
- Declaring and Calling Functions
- Functions Are Values
- Function Type Declarations
- Anonymous Functions
- Closures
- Passing Functions as Parameters
- Returning Functions from Functions
- defer
- Go Is Call By Value
- Wrapping Up
- 6. Pointers
- A Quick Pointer Primer
- Dont Fear the Pointers
- Pointers Indicate Mutable Parameters
- Pointers Are a Last Resort
- Pointer Passing Performance
- The Zero Value Versus No Value
- The Difference Between Maps and Slices
- Slices as Buffers
- Reducing the Garbage Collectors Workload
- Wrapping Up
- 7. Types, Methods, and Interfaces
- Types in Go
- Methods
- Pointer Receivers and Value Receivers
- Code Your Methods for nil Instances
- Methods Are Functions Too
- Functions Versus Methods
- Type Declarations Arent Inheritance
- Types Are Executable Documentation
- iota Is for EnumerationsSometimes
- Use Embedding for Composition
- Embedding Is Not Inheritance
- A Quick Lesson on Interfaces
- Interfaces Are Type-Safe Duck Typing
- Embedding and Interfaces
- Accept Interfaces, Return Structs
- Interfaces and nil
- The Empty Interface Says Nothing
- Type Assertions and Type Switches
- Use Type Assertions and Type Switches Sparingly
- Function Types Are a Bridge to Interfaces
- Implicit Interfaces Make Dependency Injection Easier
- Wire
- Go Isnt Particularly Object-Oriented (and Thats Great)
- Wrapping Up
- 8. Errors
- How to Handle Errors: The Basics
- Use Strings for Simple Errors
- Sentinel Errors
- Errors Are Values
- Wrapping Errors
- Is and As
- Wrapping Errors with defer
- panic and recover
- Getting a Stack Trace from an Error
- Wrapping Up
- 9. Modules, Packages, and Imports
- Repositories, Modules, and Packages
- go.mod
- Building Packages
- Imports and Exports
- Creating and Accessing a Package
- Naming Packages
- How to Organize Your Module
- Overriding a Packages Name
- Package Comments and godoc
- The internal Package
- The init Function: Avoid if Possible
- Circular Dependencies
- Gracefully Renaming and Reorganizing Your API
- Working with Modules
- Importing Third-Party Code
- Working with Versions
- Minimum Version Selection
- Updating to Compatible Versions
- Updating to Incompatible Versions
- Vendoring
- pkg.go.dev
- Additional Information
- Publishing Your Module
- Versioning Your Module
- Module Proxy Servers
- Specifying a Proxy Server
- Private Repositories
- Wrapping Up
- 10. Concurrency in Go
- When to Use Concurrency
- Goroutines
- Channels
- Reading, Writing, and Buffering
- for-range and Channels
- Closing a Channel
- How Channels Behave
- select
- Concurrency Practices and Patterns
- Keep Your APIs Concurrency-Free
- Goroutines, for Loops, and Varying Variables
- Always Clean Up Your Goroutines
- The Done Channel Pattern
- Using a Cancel Function to Terminate a Goroutine
- When to Use Buffered and Unbuffered Channels
- Backpressure
- Turning Off a case in a select
- How to Time Out Code
- Using WaitGroups
- Running Code Exactly Once
- Putting Our Concurrent Tools Together
- When to Use Mutexes Instead of Channels
- AtomicsYou Probably Dont Need These
- Where to Learn More About Concurrency
- Wrapping Up
- 11. The Standard Library
- io and Friends
- time
- Monotonic Time
- Timers and Timeouts
- encoding/json
- Use Struct Tags to Add Metadata
- Unmarshaling and Marshaling
- JSON, Readers, and Writers
- Encoding and Decoding JSON Streams
- Custom JSON Parsing
- net/http
- The Client
- The Server
- Middleware
- Use idiomatic third-party modules to enhance the server
- Wrapping Up
- 12. The Context
- What Is the Context?
- Cancellation
- Timers
- Handling Context Cancellation in Your Own Code
- Values
- Wrapping Up
- 13. Writing Tests
- The Basics of Testing
- Reporting Test Failures
- Setting Up and Tearing Down
- Storing Sample Test Data
- Caching Test Results
- Testing Your Public API
- Use go-cmp to Compare Test Results
- The Basics of Testing
- Table Tests
- Checking Your Code Coverage
- Benchmarks
- Stubs in Go
- httptest
- Integration Tests and Build Tags
- Finding Concurrency Problems with the Race Checker
- Wrapping Up
- 14. Here There Be Dragons: Reflect,
Unsafe, and Cgo
- Reflection Lets Us Work with Types at Runtime
- Types, Kinds, and Values
- Types and kinds
- Values
- Types, Kinds, and Values
- Making New Values
- Use Reflection to Check If an Interfaces Value Is nil
- Use Reflection to Write a Data Marshaler
- Build Functions with Reflection to Automate Repetitive Tasks
- You Can Build Structs with Reflection, but Dont
- Reflection Cant Make Methods
- Only Use Reflection If Its Worthwhile
- Reflection Lets Us Work with Types at Runtime
- unsafe Is Unsafe
- Use unsafe to Convert External Binary Data
- unsafe Strings and Slices
- unsafe Tools
- Cgo Is for Integration, Not Performance
- Wrapping Up
- 15. A Look at the Future: Generics in Go
- Generics Reduce Repetitive Code and Increase Type Safety
- Introducing Generics in Go
- Use Type Lists to Specify Operators
- Generic Functions Abstract Algorithms
- Type Lists Limit Constants and Implementations
- Things That Are Left Out
- Idiomatic Go and Generics
- Further Futures Unlocked
- Wrapping Up
- Index
O'Reilly Media - inne książki
-
If you're a PHP developer looking for proven solutions to common problems, this cookbook provides code recipes to help you resolve numerous scenarios. By leveraging modern versions of PHP through version 8.1, these self-contained recipes provide fully realized solutions that can help you solve si...(203.15 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Over the past 10 years, data analytics and data visualization have become essential components of an enterprise information strategy. And yet, the adoption of data analytics has remained remarkably static, reaching no more than 30% of potential users. This book explores the most important techniq...(186.15 zł najniższa cena z 30 dni)
194.65 zł
229.00 zł(-15%) -
Data lakes and warehouses have become increasingly fragile, costly, and difficult to maintain as data gets bigger and moves faster. Data meshes can help your organization decentralize data, giving ownership back to the engineers who produced it. This book provides a concise yet comprehensive over...(203.15 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
If you're planning, building, or implementing a cloud strategy that supports digitalization for your financial services business, this invaluable guide clearly sets out the crucial factors and questions to consider first. With it, you'll learn how to avoid the costly and time-consuming pitfalls a...
Digitalization of Financial Services in the Age of Cloud Digitalization of Financial Services in the Age of Cloud
(143.65 zł najniższa cena z 30 dni)152.15 zł
179.00 zł(-15%) -
Java developers usually tackle the complexity of software development through object-oriented programming (OOP). But not every problem is a good match for OOP. The functional programming (FP) paradigm offers you another approach to solving problems, and Java provides easy-to-grasp FP tools such a...(228.65 zł najniższa cena z 30 dni)
245.65 zł
289.00 zł(-15%) -
As legacy and other critical systems continue to migrate online, the need for continuous operation is imperative. Code has to handle data issues as well as hard external problems today, including outages of networks, storage systems, power, and ancillary systems. This practical guide provides sys...(245.65 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to the language? Do you want clean, efficient, manageable code? Want to stay up-to-date with the latest best practices? If so, the updated second edition of Learning JavaScript Design Patter...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
Between major privacy regulations like the GDPR and CCPA and expensive and notorious data breaches, there has never been so much pressure to ensure data privacy. Unfortunately, integrating privacy into data systems is still complicated. This essential guide will give you a fundamental understandi...(211.65 zł najniższa cena z 30 dni)
220.15 zł
259.00 zł(-15%) -
This essential guide covers all aspects of Linux system administration, from user maintenance, backups, filesystem housekeeping, storage management, and network setup to hardware and software troubleshooting and some application management. It's both a practical daily reference manual for sysadmi...(254.15 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%) -
The past decade has witnessed the broad adoption of artificial intelligence and machine learning (AI/ML) technologies. However, a lack of oversight in their widespread implementation has resulted in some incidents and harmful outcomes that could have been avoided with proper risk management. Befo...(254.15 zł najniższa cena z 30 dni)
262.65 zł
309.00 zł(-15%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
W przypadku usługi "Druk na żądanie" termin dostarczenia przesyłki może obejmować także czas potrzebny na dodruk (do 10 dni roboczych)
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.


Oceny i opinie klientów: Learning Go Jon Bodner (1)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(1)
(0)
(0)
(0)
(0)
(0)
Data dodania: 2021-03-16 Ocena: 6 Opinia potwierdzona zakupem