Powerful Command-Line Applications in Go Build Fast and Maintainable Tools

Uložené v:
Podrobná bibliografia
Hlavný autor: Gerardi, Ricardo
Médium: E-kniha
Jazyk:English
Vydavateľské údaje: La Vergne Pragmatic Programmers, LLC, The 2022
Vydanie:1
ISBN:168050696X, 9781680506969
On-line prístup:Získať plný text
Tagy: Pridať tag
Žiadne tagy, Buďte prvý, kto otaguje tento záznam!
Author Gerardi, Ricardo
Author_xml – sequence: 1
  fullname: Gerardi, Ricardo
BookMark eNo1z0tLw0AYheERL2hr_0N2ugnMfeZb1lCrEGgXIu7KXCGazsRMin_fgHV1eDYH3gW6SjmFC7QgUmOBgTF8-Q8J8uNmBgXNgDKCb9GqlE-MMdVKC8ru0OM-_4QxnvqqycejSb5uuxSq9TD0nTNTl1OpulRt8z26jqYvYXXeJXp_3rw1L3W7274267Y2lIBStQXKo9eKe2m1AUdsEN45Axo8cw6CAUy0t54LybnxlIPg2BNDo4oz2RI9_B0PY_4-hTIdgs35y4U0jaY_bJ4aqTWVc9IvUyJEmA
ContentType eBook
DEWEY 005.133
DeliveryMethod fulltext_linktorsrc
Discipline Computer Science
EISBN 1680509330
9781680509335
Edition 1
ExternalDocumentID EBC6882698
GroupedDBID 38.
AABBV
ABARN
ABMRC
ABQPQ
ADVEM
AERYV
AFOJC
AHWGJ
AJFER
ALMA_UNASSIGNED_HOLDINGS
BBABE
CZZ
EBSCA
GEOUK
ID FETCH-LOGICAL-a21977-b924fd874d6b8a9c1be5dcca989d3cc9ea9018dbd45644ad249540d1a2f7fad23
ISBN 168050696X
9781680506969
IngestDate Wed Dec 10 12:38:00 EST 2025
IsPeerReviewed false
IsScholarly false
Language English
LinkModel OpenURL
MergedId FETCHMERGED-LOGICAL-a21977-b924fd874d6b8a9c1be5dcca989d3cc9ea9018dbd45644ad249540d1a2f7fad23
OCLC 1298392310
PQID EBC6882698
PageCount 500
ParticipantIDs proquest_ebookcentral_EBC6882698
PublicationCentury 2000
PublicationDate 2022
PublicationDateYYYYMMDD 2022-01-01
PublicationDate_xml – year: 2022
  text: 2022
PublicationDecade 2020
PublicationPlace La Vergne
PublicationPlace_xml – name: La Vergne
PublicationYear 2022
Publisher Pragmatic Programmers, LLC, The
Publisher_xml – name: Pragmatic Programmers, LLC, The
SSID ssj0002878523
ssib050565414
Score 2.2584994
SourceID proquest
SourceType Publisher
Subtitle Build Fast and Maintainable Tools
TableOfContents Cover -- Table of Contents -- Foreword -- Acknowledgments -- Preface -- What's in This Book -- How to Use This Book -- About the Example Code -- Go Modules -- Online Resources -- 1. Your First Command-Line Program in Go -- Building the Basic Word Counter -- Testing the Basic Word Counter -- Adding Command-Line Flags -- Compiling Your Tool for Different Platforms -- Exercises -- Wrapping Up -- 2. Interacting with Your Users -- Organizing Your Code -- Defining the To-Do API -- Creating the Initial To-Do Command-Line Tool -- Testing the Initial CLI Implementation -- Handling Multiple Command-Line Options -- Display Command-Line Tool Usage -- Improving the List Output Format -- Increasing Flexibility with Environment Variables -- Capturing Input from STDIN -- Exercises -- Wrapping Up -- 3. Working with Files in Go -- Creating a Basic Markdown Preview Tool -- Writing Tests for the Markdown Preview Tool -- Adding Temporary Files to the Markdown Preview Tool -- Using Interfaces to Automate Tests -- Adding an Auto-Preview Feature -- Cleaning Up Temporary Files -- Improving the Markdown Preview Tool with Templates -- Exercises -- Wrapping Up -- 4. Navigating the File System -- Developing a File System Crawler -- Testing with Table-Driven Testing -- Deleting Matched Files -- Testing with the Help of Test Helpers -- Logging Deleted Files -- Archiving Files -- Exercises -- Wrapping Up -- 5. Improving the Performance of Your CLI Tools -- Developing the Initial Version of colStats -- Writing Tests for colStats -- Benchmarking Your Tool -- Profiling Your Tool -- Reducing Memory Allocation -- Tracing Your Tool -- Improving the colStats Tool to Process Files Concurrently -- Reduce Scheduling Contention -- Exercises -- Wrapping Up -- 6. Controlling Processes -- Executing External Programs -- Handling Errors -- Writing Tests for Goci -- Defining a Pipeline
Adding Another Step to the Pipeline -- Handling Output from External Programs -- Running Commands with Contexts -- Integration Tests with a Local Git Server -- Testing Commands with Mock Resources -- Handling Signals -- Exercises -- Wrapping Up -- 7. Using the Cobra CLI Framework -- Starting Your Cobra Application -- Navigating Your New Cobra Application -- Adding the First Subcommand to Your Application -- Starting the Scan Package -- Creating the Subcommands to Manage Hosts -- Testing the Manage Hosts Subcommands -- Adding the Port Scanning Functionality -- Using Viper for Configuration Management -- Generating Command Completion and Documentation -- Exercises -- Wrapping Up -- 8. Talking to REST APIs -- Developing a REST API Server -- Testing the REST API Server -- Completing the REST API Server -- Developing the Initial Client for the REST API -- Testing the Client Without Connecting to the API -- Viewing a Single Item -- Adding an Item -- Testing HTTP Requests Locally -- Completing and Deleting Items -- Executing Integration Tests -- Exercises -- Wrapping Up -- 9. Developing Interactive Terminal Tools -- Initializing the Pomodoro Application -- Storing Data with the Repository Pattern -- Testing the Pomodoro Functionality -- Building the Interface Widgets -- Organizing the Interface's Layout -- Building the Interactive Interface -- Initializing the CLI with Cobra -- Exercises -- Wrapping Up -- 10. Persisting Data in a SQL Database -- Getting Started with SQLite -- Go, SQL, and SQLite -- Persisting Data in the Database -- Testing the Repository with SQLite -- Updating the Application to Use the SQLite Repository -- Displaying a Summary to the Users -- Exercises -- Wrapping Up -- 11. Distributing Your Tool -- Starting the Notify Package -- Including OS-Specific Data -- Including OS-Specific Files in the Build -- Testing the Notify Package
Conditionally Building Your Application -- Cross-Compiling Your Application -- Compiling Your Go Application for Containers -- Distributing Your Application as Source Code -- Exercises -- Wrapping Up -- Index -- - SYMBOLS - -- - A - -- - B - -- - C - -- - D - -- - E - -- - F - -- - G - -- - H - -- - I - -- - J - -- - L - -- - M - -- - N - -- - O - -- - P - -- - Q - -- - R - -- - S - -- - T - -- - U - -- - V - -- - W - -- - X -
Title Powerful Command-Line Applications in Go
URI https://ebookcentral.proquest.com/lib/[SITE_ID]/detail.action?docID=6882698
hasFullText 1
inHoldings 1
isFullTextHit
isPrint
link http://cvtisr.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwtV07T8MwELZoy8DEW7yVASEWS03qxvYIVSkSUclQULfKiR3UgaS0BfXnc5c46YMBMTDEiq0oVu5zznf2nT9CrqWLkzqDwZu4CWVgwVMplUc9T4uEKQFaM08UDni_L4ZDGVpqsVlOJ8DTVCwWcvKvUEMbgI2ps3-Au3opNMA9gA4lwA7lhkVcVQvEQyQ8w5BjTPpQqaYBWpB3k_WQ8V5Whdxg7rEe2_R6uM1WlwA8b2MJIJyqt-J817CI6Xq39GpB0ClCjcya1-j6otlu-rLgSNk4brp73_HB6valuJl8UGTnwl1sS1VSIzXugx5p9LrPL0_lf4tGFLKJV2tb4IUJcHAxj67syh52tOz6x9yXT-iDPdIwmOWxT7ZMekB2S24Lx6q6Q3JbStNZlaazKk1nnDq97Ii8PnQHnUdqWSWoAu3MOY3A5Uy04Ez7kVAydiPT1jCQpZC6FcfSKLCRhI40nrTDlEZ2btbUrvISnkC1dUzqaZaaE-K0Y1CXhrdMwhXjyovg4lorE0eSxa4-JU75kaN889tG3I6WUj77_ZFzsrNE_YLU59NPc0m246_5eDa9smB8A20xDCg
linkProvider ProQuest Ebooks
openUrl ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Abook&rft.genre=book&rft.title=Powerful+Command-Line+Applications+in+Go&rft.au=Gerardi%2C+Ricardo&rft.date=2022-01-01&rft.pub=Pragmatic+Programmers%2C+LLC%2C+The&rft.isbn=9781680506969&rft.externalDocID=EBC6882698
thumbnail_l http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781680506969/lc.gif&client=summon&freeimage=true
thumbnail_m http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781680506969/mc.gif&client=summon&freeimage=true
thumbnail_s http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=9781680506969/sc.gif&client=summon&freeimage=true