Programowanie

Nasza biblioteka online zawiera szereg publikacji, dzięki którym programowanie nie będzie mieć przed Tobą żadnych tajemnic. Zawarte tu książki przybliżą Ci takie języki jak HTML, JavaScript, Python czy CSS. Dowiesz się dzięki nim także tego, jak tworzyć efektywne algorytmy, projektować aplikacje mobilne, czy dbać o poprawną architekturę informacji w serwisach internetowych.

1057
Ebook

Git dla programistów. Efektywna kontrola wersji w projektach programistycznych

Jesse Liberty

Kontrola wersji jest warunkiem sukcesu w każdym projekcie programistycznym. Im większy zespół i im bardziej złożony projekt, tym ważniejsze jest skuteczne zarządzanie wersjami. Do tych celów najczęściej używa się Gita. To popularne i dynamicznie rozwijane darmowe oprogramowanie. Zawiera wiele przydatnych narzędzi, pozwala też na wyrafinowaną konfigurację i dostosowanie do szczególnych potrzeb. Jeśli chcesz w pełni skorzystać z jego potencjału, musisz nabrać wprawy, pewności siebie i dobrze poznać poszczególne elementy Gita. Oto opracowany z myślą o programistach praktyczny przewodnik, dzięki któremu szybko zaczniesz się posługiwać Gitem. Zawiera wszystkie informacje niezbędne do dogłębnego zrozumienia specyfiki tego narzędzia. Dowiesz się, w jaki sposób je zainstalować i skonfigurować, nauczysz się tworzyć i klonować repozytoria, a także zapoznasz się z narzędziami GUI Gita i zrozumiesz zasady pracy z gałęziami. Poznasz techniki rozwiązywania konfliktów scalania i korzystania z historii zmian. W książce omówiono polecenia potrzebne do zarządzania repozytorium, wyjaśniono też kwestie dotyczące bisekcji, polecenia blame i wielu innych narzędzi ułatwiających naprawianie błędów i rozwiązywanie typowych problemów. Dzięki książce dowiesz się, jak: zacząć pracę z Gitem tworzyć repozytoria lokalne i zdalne używać gałęzi, zarządzać nimi i scalać je do gałęzi głównej rozwiązywać konflikty scalania mieć pełną kontrolę nad wszystkimi informacjami w repozytorium naprawiać błędy w Gicie Kluczowym elementem każdego projektu programistycznego jest kontrola wersji!

1058
Ebook
1059
Ebook

Git Essentials. Create, merge, and distribute code with Git, the most powerful and flexible versioning system available - Second Edition

Ferdinando Santacroce

Since its inception, Git has attracted skilled developers due to its robust, powerful, and reliable features. Its incredibly fast branching ability transformed a piece of code from a niche tool for Linux Kernel developers into a mainstream distributed versioning system. Like most powerful tools, Git can be hard to approach since it has a lot of commands, subcommands, and options that easily confuse newcomers.The 2nd edition of this very successful book will help you overcome this fear and become adept in all the basic tasks in Git. Building upon the success of the first book, we start with a brief step-by-step installation guide; after this, you'll delve into the essentials of Git. For those of you who have bought the first edition, this time we go into internals in far greater depth, talking less about theory and using much more practical examples.The book serves as a primer for topics to follow, such as branching and merging, creating and managing a GitHub personal repository, and fork and pull requests. You’ll then learn the art of cherry-picking, taking only the commits you want, followed by Git blame. Finally, we'll see how to interoperate with a Subversion server, covering the concepts and commands needed to convert an SVN repository into a Git repository.To conclude, this is a collection of resources, links, and appendices to satisfy even the most curious.

1060
Ebook

Git for Programmers. Master Git for effective implementation of version control for your programming projects

Jesse Liberty, Jon Galloway

Whether you’re looking for a book to deepen your understanding of Git or a refresher, this book is the ultimate guide to Git. Git for Programmers comprehensively equips you with actionable insights on advanced Git concepts in an engaging and straightforward way. As you progress through the chapters, you’ll gain expertise (and confidence) on Git with lots of practical use cases. After a quick refresher on git history and installation, you’ll dive straight into the creation and cloning of your repository. You’ll explore Git places, branching, and GUIs to get familiar with the fundamentals. Then you’ll learn how to handle merge conflicts, rebase, amend, interactive rebase, and use the log, as well as explore important Git commands for managing your repository.The troubleshooting part of this Git book will include detailed instructions on how to bisect, blame, and several other problem handling techniques that will complete your newly acquired Git arsenal.By the end of this book, you’ll be using Git with confidence. Saving, sharing, managing files as well as undoing mistakes and basically rewriting history will be a breeze.

1061
Ebook

Git. Leksykon kieszonkowy

Richard E. Silverman

Podręczny przewodnik po Git! Jeszcze do niedawna wśród systemów kontroli wersję fotel lidera zajmował SVN. Jednak ta sytuacja w ostatnich latach ulega diametralnej zmianie. Rynek systemów kontroli wersji opanowały systemy rozproszone, z Gitem na czele. Czemu zdobyły taką popularność? Dzięki zastosowaniu Gita każdy programista dysponuje swoją lokalną, kompletną kopią całego repozytorium. Pozwala to na błyskawiczne wykonywanie typowych zadań i korzystanie z możliwości kontroli wersji bez wpływu na repozytoria innych osób. Aż do momentu, gdy stwierdzisz, że chcesz podzielić się efektami pracy z innymi. Brzmi interesująco? Jeśli chciałbyś zgłębić system Git, trafiłeś na doskonałą książkę. Dzięki jej niewielkim rozmiarom możesz mieć ją zawsze przy sobie. Zmiana SVN na Git oprócz poznania nowych pojęć wymaga zmiany sposobu myślenia. Ten leksykon pozwoli Ci w każdej chwili sprawdzić, jak stworzyć nowe repozytorium czy gałąź oraz jak wprowadzić zmiany i przesłać je na centralny serwer. Ponadto dowiesz się, jak śledzić zdalne repozytoria, przeglądać historię zmian i scalać wersje. To doskonała lektura dla wszystkich osób chcących błyskawicznie poznać możliwości Gita i zacząć stosować go w codziennej pracy. Dzięki tej książce: poznasz filozofię pracy z Gitem stworzysz repozytorium i zaczniesz z niego korzystać nauczysz się pracować z gałęziami kodu biegle opanujesz system Git Poznaj rozproszony system kontroli wersji!

1062
Ebook

Git. Od koncepcji do praktyki

Jacek Drąg

Kontroluj rozwój Twojego oprogramowania Git to aktualnie najpopularniejszy na świecie system kontroli wersji. Dzięki niemu możliwe jest śledzenie modyfikacji w kodzie źródłowym i łączenie zmian w plikach dokonanych przez różne osoby w różnym czasie. Git oferuje wiele możliwości, jest bardzo elastyczny i nie narzuca sposobu, w jaki należy w nim pracować. Można to robić na przykład przy użyciu programów graficznych, które znacznie ułatwiają realizację niektórych celów, szczególnie w zakresie przeglądania historii pracy nad kodem czy rozwiązywania konfliktów. Ta książka koncentruje się głównie na rozwijaniu repozytorium kodu, czyli tworzeniu grafu commitów zawierających poszczególne wersje. Do realizacji tego zadania idealnym, bo najpotężniejszym narzędziem jest wiersz poleceń - i właśnie z niego korzystamy w poradniku. Druga kwestia, którą się zajmujemy, to próba zrozumienia, co Git mówi do nas w trakcie pracy. Tak, mówi, ponieważ gdy zlecimy mu wykonanie jakiejś komendy, Git najprawdopodobniej nie tylko ją wykona, ale także skomentuje stan obecny, co nieco podpowie, zwróci uwagę, jeśli coś się nie uda, i wskaże sposób, jak to poprawić. Uruchom Gita, otwórz książkę i poznaj: Koncepcje (byty, abstrakcje), którymi posługuje się Git Polecenia wysokiego poziomu wraz z najczęstszymi przypadkami ich użycia Sposoby pracy w środowisku lokalnym i rozproszonym

1063
Ebook

Git. Rozproszony system kontroli wersji

Włodzimierz Gajda

Git - oszczędź sobie kłopotów z synchronizacją projektu! Praca nad niemal każdym projektem informatycznym wymaga współdziałania wielu osób, często pracujących z dala od siebie. W takich warunkach bardzo łatwo popełnić błąd, nadpisać jakiś ważny plik albo przypadkowo zdublować dane. Mały projekt po takiej wpadce da się jeszcze uratować, ale większy… można wyrzucić do kosza. Chyba że od momentu jego inicjalizacji używamy narzędzia odpowiedzialnego za właściwą synchronizację danych, czyli systemu kontroli wersji, co jest standardem we współczesnej informatyce. Jednym z takich programów jest git, napisany na potrzeby zarządzania kodem źródłowym jądra systemu Linux - taka rekomendacja mówi sama za siebie. Możliwości programu git i sposoby jego praktycznego zastosowania w różnych projektach przedstawione zostały w tej książce. Znajdziesz tu podstawowe informacje o instalacji środowiska i tworzeniu repozytoriów, pracy z plikami, identyfikowaniu rewizji i zmienianiu historii projektu. Dowiesz się, kiedy i jak tworzyć czy łączyć gałęzie oraz całe repozytoria, korzystać z repozytorium lokalnego i zdalnego, a także synchronizować je w odpowiedni sposób. Poznasz możliwe konflikty między wersjami pliku i nauczysz się radzić sobie z nimi. Zrozumiesz, jak wykorzystywać najbardziej znane serwery hostingowe dla projektów git oraz dostępne w nich, wbudowane systemy śledzenia błędów. I wreszcie przestaniesz miewać koszmary, w których tracisz tygodnie na odszukanie zagubionego pliku. Git zrobi to za Ciebie! Instalacja programu git, tworzenie repozytoriów i obszar roboczy Tworzenie rewizji i przywracanie stanu plików Stany plików, ignorowanie plików i znaczniki Identyfikowanie rewizji, skróty komend Modyfikowanie historii projektu oraz tworzenie i usuwanie gałęzi Łączenie gałęzi: operacja merge i operacja rebase Powiązanie repozytorium lokalnego i zdalnego oraz podstawy synchronizacji repozytoriów Praktyczne wykorzystanie git i łączenie oddzielnych repozytoriów Treść pliku: konflikty, badanie różnic, pliki tekstowe i binarne Serwisy github.com i bitbucket.org Praca grupowa w serwisach github.com oraz bitbucket.org i zintegrowany system śledzenia błędów Wypróbuj git - wystarczająco dobry nawet dla jądra Linuksa!

1064
Ebook
1065
Ebook

Git Version Control Cookbook. Leverage version control to transform your development workflow and boost productivity - Second Edition

Kenneth Geisshirt, Emanuele Zattin(EUR), Aske Olsson, Rasmus Voss

Git is one of the most popular tools for versioning. With over 100 practical, self-contained tutorials, this updated version of the bestselling Git Version Control Cookbook examines the common pain points and best practices to help you solve problems related to versioning.Each recipe addresses a specific problem and offers a proven, best-practice solution with insights into how it works. You’ll get started by learning about the Git data model and how it stores files, along with gaining insights on how to commit changes to a database. Using simple commands, you’ll also understand how to navigate through the database. Once you have accustomed yourself to the basics, you’ll explore techniques to configure Git with the help of comprehensive examples and configuration targets. Further into the book, you’ll get up to speed with branches and recovery from mistakes. You’ll also discover the features of Git rebase and how to use regular Git to merge other branches. The later chapters will guide you in exploring Git notes and learning to utilize the update, list, and search commands. Toward the concluding chapters, you’ll focus on repository maintenance, patching, and offline sharing. By the end of this book, you’ll have grasped various tips and tricks, and have a practical understanding of best-practice solutions for common problems related to versioning.

1066
Ebook

GitHub Actions Cookbook. A practical guide to automating repetitive tasks and streamlining your development process

Michael Kaufmann

Say goodbye to tedious tasks! GitHub Actions is a powerful workflow engine that automates everything in the GitHub ecosystem, letting you focus on what matters most.This book explains the GitHub Actions workflow syntax, the different kinds of actions, and how GitHub-hosted and self-hosted workflow runners work. You’ll get tips on how to author and debug GitHub Actions and workflows with Visual Studio Code (VS Code), run them locally, and leverage the power of GitHub Copilot. The book uses hands-on examples to walk you through real-world use cases that will help you automate the entire release process. You’ll cover everything, from automating the generation of release notes to building and testing your software and deploying securely to Azure, Amazon Web Services (AWS), or Google Cloud using OpenID Connect (OIDC), secrets, variables, environments, and approval checks.The book goes beyond CI/CD by demonstrating recipes to execute IssueOps and automate other repetitive tasks using the GitHub CLI, GitHub APIs and SDKs, and GitHub Token. You’ll learn how to build your own actions and reusable workflows to share building blocks with the community or within your organization.By the end of this GitHub book, you'll have gained the skills you need to automate tasks and work with remarkable efficiency and agility.

1067
Ebook

GitHub Essentials. Unleash the power of collaborative development workflows using GitHub - Second Edition

Achilleas Pipinellis

Whether you are an experienced developer or a novice, learning to work with Version Control Systems is a must in the software development world. Git is the most popular tool for that purpose, and GitHub was built around it, leveraging its powers by bringing it to the web.Starting with the basics of creating a repository, you will then learn how to manage the issue tracker, the place where discussions about your project take place. Continuing our journey, we will explore how to use the wiki and write rich documentation that will accompany your project. You will also master organization/team management and some of the features that made GitHub so well known, including pull requests. Next, we will focus on creating simple web pages hosted on GitHub and lastly, we will explore the settings that are configurable for a user and a repository.

1068
Ebook

GitHub for Next-Generation Coders. Build your ideas, share your code, and join a community of creators

Igor Irić

Navigating the world of collaborative software development can be daunting, especially for young coders just starting their programming journey. This book is designed to take you on a coding adventure, transforming you from a curious beginner into a confident GitHub user.The book builds a solid foundation and explains the Git version control system in depth, helping you understand how to track changes, collaborate effectively, and manage your projects with ease. You'll master repositories, the building blocks of your coding projects, and learn branching strategies to experiment and work seamlessly with others. The chapters will teach you about GitHub Actions, guiding you through workflow syntax, exploring environments and secrets management, and providing hands-on exercises to solidify your understanding. You’ll also discover how to craft a compelling GitHub profile that highlights your achievements and discover the exciting world of open-source projects where you can contribute and give back to the community. To get you started with AI, you’ll also learn how to leverage Copilot and ChatGPT together to write faster, cleaner code.By the end of this book, you’ll be well prepared to contribute to real-world projects on GitHub, equipped with the skills to thrive in the world of collaborative software development.

1069
Ebook

GitHub. Przyjazny przewodnik

Brent Beer, Peter Bell

Poznaj możliwości Gita i GitHuba! Git zrewolucjonizował świat systemów kontroli wersji. Koncepcja rozproszonego systemu podbiła serca programistów i ustanowiła trendy na kolejna lata. Co powstało z połączenia Gita i serwisu udostępniającego miejsce oraz narzędzia dla programistów korzystających z Gita? To GitHub — najpopularniejsze miejsce w sieci, w którym znajdziesz tysiące projektów. GitHub wytycza dziś ścieżki dla platform ułatwiających pracę z rozproszonymi systemami kontroli wersji. Ta książka została w całości poświęcona właśnie GitHubowi. Sięgnij po nią i przekonaj się, jakie usługi oferuje ten serwis oraz jak wykorzystać jego potencjał w Twoim projekcie. W trakcie lektury dowiesz się, jak przeglądać udostępniony kod, współpracować przy projektach oraz dostarczać poprawki. Ponadto nauczysz się zarządzać zgłoszonymi przez użytkowników problemami w Twoim kodzie oraz opanujesz najlepsze praktyki konfigurowania Twojego repozytorium. Na sam koniec poznasz narzędzia przeznaczone dla systemów MacOS i Windows, a służące do współpracy z serwisem GitHub. Książka ta jest obowiązkową lekturą dla wszystkich czytelników chcących w pełni wykorzystać potencjał drzemiący w tym serwisie. Dowiedz się jak i dlaczego ludzie używają GitHuba do współpracy. Przeglądaj bieżący stan projektu — najnowsze zmiany, prace do wykonania i historię poprawek. Twórz i edytuj pliki w GitHubie bez znajomości systemu Git. Sugeruj zmiany w projektach, w których nie masz uprawnień do bezpośredniego wprowadzania poprawek. Używaj narzędzi do obsługi problemów i zgłoszeń, twórz gałęzie w celu definiowania nowych funkcji i wspólnej pracy nad zmianami. Twórz nowe repozytoria GitHuba, z uwzględnieniem praw dostępu do swojego projektu Zaawansowany system kontroli wersji dla każdego!

1070
Ebook

GitLab Quick Start Guide. Migrate to GitLab for all your repository management solutions

Adam O'Grady

Gitlab is an open source repository management and version control toolkit with an enterprise offering. This book is the ideal guide to GitLab as a version control system (VCS), issue management tool, and a continuous integration platform.The book starts with an introduction to GitLab, a walkthrough of its features, and explores concepts such as version control systems, continuous integration, and continuous deployment. It then takes you through the process of downloading and installing a local copy of the on-premise version of GitLab in Ubuntu and/or CentOS.You will look at some common work?ows associated with GitLab work?ow and learn about project management in GitLab. You will see tools and techniques for migrating your code base from various version control systems such as GitHub and SVN to GitLab.By the end of the book, you will be using Gitlab for repository management, and be able to migrate projects from other VCSs to GitLab.

1071
Ebook
1072
Ebook

Go: Building Web Applications. Building Web Applications

Nathan Kozyra, Mat Ryer

Go is an open source programming language that makes it easy to build simple, reliable, and efficient software. It is a statically typed language with syntax loosely derived from that of C, adding garbage collection, type safety, some dynamic-typing capabilities, additional built-in types such as variable-length arrays and key-value maps, and a large standard library.This course starts with a walkthrough of the topics most critical to anyone building a new web application. Whether it’s keeping your application secure, connecting to your database, enabling token-based authentication, or utilizing logic-less templates, this course has you covered. Scale, performance, and high availability lie at the heart of the projects, and the lessons learned throughout this course will arm you with everything you need to build world-class solutions. It will also take you through the history of concurrency, how Go utilizes it, how Go differs from other languages, and the features and structures of Go's concurrency core. It will make you feel comfortable designing a safe, data-consistent, and high-performance concurrent application in Go.This course is an invaluable resource to help you understand Go's powerful features to build simple, reliable, secure, and efficient web applications.

1073
Ebook

Go Cookbook. Build modular, readable, and testable applications in Go

Aaron Torres

Go (a.k.a. Golang) is a statically-typed programming language first developed at Google. It is derived from C with additional features such as garbage collection, type safety, dynamic-typing capabilities, additional built-in types, and a large standard library.This book takes off where basic tutorials on the language leave off. You can immediately put into practice some of the more advanced concepts and libraries offered by the language while avoiding some of the common mistakes for new Go developers. The book covers basic type and error handling. It explores applications that interact with users, such as websites, command-line tools, or via the file system. It demonstrates how to handle advanced topics such as parallelism, distributed systems, and performance tuning. Lastly, it finishes with reactive and serverless programming in Go.

1074
Ebook

Go Design Patterns. Best practices in software development and CSP

Mario Castro Contreras

Go is a multi-paradigm programming language that has built-in facilities to create concurrent applications. Design patterns allow developers to efficiently address common problems faced during developing applications. Go Design Patterns will provide readers with a reference point to software design patterns and CSP concurrency design patterns to help them build applications in a more idiomatic, robust, and convenient way in Go. The book starts with a brief introduction to Go programming essentials and quickly moves on to explain the idea behind the creation of design patterns and how they appeared in the 90’s as a common language between developers to solve common tasks in object-oriented programming languages. You will then learn how to apply the 23 Gang of Four (GoF) design patterns in Go and also learn about CSP concurrency patterns, the killer feature in Go that has helped Google develop software to maintain thousands of servers. With all of this the book will enable you to understand and apply design patterns in an idiomatic way that will produce concise, readable, and maintainable software.

1075
Ebook

Go: Design Patterns for Real-World Projects. Build production-ready solutions in Go using cutting-edge technology and techniques

Vladimir Vivien, Mario Castro Contreras, Mat Ryer

The 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 lets programmers write correct and predictable code using concurrency idioms and a full-featured standard library. This practical guide is full of real-world examples to help you get started with Go in no time at all. You’ll start by understanding the fundamentals of Go, then get a detailed description of the Go data types, program structures, and Maps. After that, you’ll learn how to use Go concurrency idioms to avoid pitfalls and create programs that are exact in expected behavior. Next, you will get familiar with the tools and libraries that are available in Go to write and exercise tests, benchmarking, and code coverage. After that, 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. Then you’ll start applying your skills to build some amazing projects in Go. You will learn to develop high-quality command-line tools that utilize the powerful shell capabilities and perform well using Go’s built-in concurrency mechanisms. Scale, performance, and high availability lie at the heart of our projects, and the lessons learned throughout the sections will arm you with everything you need to build world-class solutions. You will get a feel for app deployment using Docker and Google App Engine. Each project could form the basis of a start-up, which means they are directly applicable to modern software markets. With these skills in hand, you will be able to conquer all your fears of application development and go on to build large, robust and succinct apps in Go.This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products:1. Learning Go Programming2. Go Design Patterns3. Go Programming Blueprints, Second Edition

1076
Ebook

Go Machine Learning Projects. Eight projects demonstrating end-to-end machine learning and predictive analytics applications in Go

Xuanyi Chew

Go is the perfect language for machine learning; it helps to clearly describe complex algorithms, and also helps developers to understand how to run efficient optimized code. This book will teach you how to implement machine learning in Go to make programs that are easy to deploy and code that is not only easy to understand and debug, but also to have its performance measured.The book begins by guiding you through setting up your machine learning environment with Go libraries and capabilities. You will then plunge into regression analysis of a real-life house pricing dataset and build a classification model in Go to classify emails as spam or ham. Using Gonum, Gorgonia, and STL, you will explore time series analysis along with decomposition and clean up your personal Twitter timeline by clustering tweets. In addition to this, you will learn how to recognize handwriting using neural networks and convolutional neural networks. Lastly, you'll learn how to choose the most appropriate machine learning algorithms to use for your projects with the help of a facial detection project.By the end of this book, you will have developed a solid machine learning mindset, a strong hold on the powerful Go toolkit, and a sound understanding of the practical implementations of machine learning algorithms in real-world projects.

1077
Ebook

Go Programming - From Beginner to Professional. Learn everything you need to build modern software using Go - Second Edition

Samantha Coyle

Go Programming – From Beginner to Professional is a comprehensive guide that takes your proficiency in the Go programming language from novice to expert. Starting with fundamental concepts, this book covers variables, command-line tools, and working with data before delving into advanced concepts, including error handling, interfaces, and generics, harnessing Go’s latest features through hands-on exercises. Along the way, you’ll learn to structure projects using Go modules, manage packages effectively, and master debugging techniques.As you progress, you’ll get to grips with practical application-centric aspects such as command-line programming, file manipulation, and working with SQL databases. Additionally, the book explores web server development, RESTful APIs, and utilizing the Go HTTP client to interact with web applications. Further enhancing your Go skills, you’ll learn concurrent programming, testing methodologies, Go tools, and how to deploy applications in the cloud. Throughout the book, you’ll uncover Go’s hidden gems and gain insights into time manipulation, best practices, and more.By the end of this book, you’ll have worked through practical exercises and activities that’ll equip you with the knowledge and skills needed to excel as a proficient Go developer, primed for success in real-world projects.

1078
Ebook
1079
Ebook

Go Programming Blueprints. Build real-world, production-ready solutions in Go using cutting-edge technology and techniques - Second Edition

Mat Ryer

Go is the language of the Internet age, and the latest version of Go comes with major architectural changes. Implementation of the language, runtime, and libraries has changed significantly. The compiler and runtime are now written entirely in Go. The garbage collector is now concurrent and provides dramatically lower pause times by running in parallel with other Go routines when possible.This book will show you how to leverage all the latest features and much more. This book shows you how to build powerful systems and drops you into real-world situations. You will learn to develop high quality command-line tools that utilize the powerful shell capabilities and perform well using Go's in-built concurrency mechanisms. Scale, performance, and high availability lie at the heart of our projects, and the lessons learned throughout this book will arm you with everything you need to build world-class solutions. You will get a feel for app deployment using Docker and Google App Engine. Each project could form the basis of a start-up, which means they are directly applicable to modern software markets.

1080
Ebook

Go Programming Cookbook. Over 85 recipes to build modular, readable, and testable Golang applications across various domains - Second Edition

Aaron Torres

Go (or Golang) is a statically typed programming language developed at Google. Known for its vast standard library, it also provides features such as garbage collection, type safety, dynamic-typing capabilities, and additional built-in types. This book will serve as a reference while implementing Go features to build your own applications.This Go cookbook helps you put into practice the advanced concepts and libraries that Golang offers. The recipes in the book follow best practices such as documentation, testing, and vendoring with Go modules, as well as performing clean abstractions using interfaces. You'll learn how code works and the common pitfalls to watch out for. The book covers basic type and error handling, and then moves on to explore applications, such as websites, command-line tools, and filesystems, that interact with users. You'll even get to grips with parallelism, distributed systems, and performance tuning.By the end of the book, you'll be able to use open source code and concepts in Go programming to build enterprise-class applications without any hassle.