Powerful Command-Line Applications in Go Build Fast and Maintainable Tools
Gespeichert in:
| 1. Verfasser: | |
|---|---|
| Format: | E-Book |
| Sprache: | Englisch |
| Veröffentlicht: |
La Vergne
Pragmatic Programmers, LLC, The
2022
|
| Ausgabe: | 1 |
| ISBN: | 168050696X, 9781680506969 |
| Online-Zugang: | Volltext |
| Tags: |
Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
|
| 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.2586694 |
| 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/eLvHCXMwtV07T8MwELZoy8DEW7yVASEWS2kefoxQlSIRlQwFdavs2EEdSEpbUH8-58RJHwyIgcVyrCRW7nPsO_vuPoSutad811MhljQUOBCuwDCUXRyYzC-e4lzKIlA4ov0-Gw55bKnFZgWdAM0ytljwyb9CDW0Atgmd_QPc9UuhAeoAOpQAO5QbGnF9WSIeG8Iz43Jsgj5EpnBkNMi7ybrLeC-vXW5M7LEa2_B6qOarWwCet7EFEE_FW5nfNS59ut4tvVoUdUpXI71mNbYJc0OX8JIjZSPddPe-Q0DrJpzdTD6wYecyp9iWqqSBGpTAPNLqdZ9fnqr_1ihRhk283tsCK4yBgWvi6KqubLKjZdc_1r5iQR_soZY2UR77aEtnB2i34rZw7FR3iG4raTqr0nRWpemMM6eXH6HXh-6g84gtqwQWMDtTiiWYnKliNFBEMsGTttShgoHMGVd-knAtQEdiSiqTaScQyrBzB65qCy-lKVz6x6iZ5Zk-QQ7nITxMfZqmSaB9wt1Agj0HSjPjSajkKXKqjxwVh9_W43a0lPLZ77eco50l6heoOZ9-6ku0nXzNx7PplQXjG2_vC-Q |
| 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 |

