Programming with GitHub Copilot Write Better Code--Faster!
Accelerate your programming with the most popular AI coding tool on the market: GitHub Copilot In Programming with GitHub Copilot: Write Better Code -- Faster, veteran software developer and GitHub community hero Kurt Dowswell delivers an insightful and hands-on exploration of GitHub's powerful...
Autor principal: | |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Newark :
John Wiley & Sons, Ltd
2024.
|
Edición: | 1st ed |
Colección: | Tech Today Series
|
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009841204406719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright Page
- Acknowledgments
- About the Author
- Contents at a Glance
- Contents
- Introduction
- Part I Getting Started with GitHub Copilot
- Chapter 1 Get Started with GitHub Copilot
- Learn Why GitHub Copilot Matters
- Create a GitHub Account
- Acquire a GitHub Copilot License
- Install an IDE Extension
- Download Visual Studio Code
- Install the GitHub Copilot Extension
- Configure the IDE Settings for Copilot
- Install Node.js
- First Run: Test Copilot
- Get the Prerequisites
- Explore Copilot
- Conclusion
- Reference
- Chapter 2 Decoding GitHub Copilot
- Uncover the AI Behind GitHub Copilot
- Understand Security, Privacy, and Data Handling
- Message Transmission
- Data Storage
- Prompt and Suggestion Data
- User Engagement Data
- Additional Security
- Vulnerability Prevention System
- GitHub Advanced Security
- Understand Copyright Protections
- Explore the GitHub Copilot Trust Center
- Conclusion
- References
- Part II GitHub Copilot Features in Action
- Chapter 3 Exploring Code Completions
- Introducing Code Completions
- Working with Copilot Code Completions
- Prerequisites
- Naming Your File
- Top-Level Comment
- Using Meaningful Names
- Writing Specific Comments
- Referencing Open Tabs
- Discovering the Toolbar and Panel
- Detailing the Completions Toolbar
- Discover the Completions Panel
- Updating Copilot Settings
- inlineSuggestCount
- length
- listCount
- Leveraging Keyboard Shortcuts
- Focus on GitHub Copilot View
- Suggest Terminal Command
- Triggering Inline Suggestion
- Navigate to the Next Panel Suggestion
- Navigate to the Previous Panel Suggestion
- Open Completions Panel
- Conclusion
- Chapter 4 Chatting with GitHub Copilot
- Discovering Copilot Chat
- Chatting in the Sidebar
- Maximizing Conversations with the Editor View.
- Expanding Your Conversation to a New Window
- Shifting the Conversation to the Right
- Utilizing Inline Chat
- Discovering Quick Chat
- Defining Prompt Engineering with Copilot Chat
- Understanding the Basics
- Prompting for Code
- Prompting for Solutions
- Having a Single Clear Objective
- Specifying a Specific Technology
- Keeping Prompts Short
- Gaining Context in Chat
- Open Tabs Context
- Editor Context
- File Context
- Selection Context
- Commanding Your Conversation with Precision
- Querying with @workspace
- Learning with /explain
- Generating Tests with /tests
- Finding a Fix with /fix
- Scaffolding with /new
- Crafting with /newNotebook
- Engaging with @vscode
- Inquiring with /api
- Learning with @terminal
- Conclusion
- Part III Practical Applications of GitHub Copilot
- Chapter 5 Learning a New Programming Language
- Introducing Language Education with Copilot
- Setting Up Your Development Environment
- Prerequisites
- Setup Guide
- Learning the Basics
- Prerequisites
- Learning C# with Copilot
- Creating a Console Application
- Prerequisites
- Creating a C# Console Application with Copilot
- Explaining Code with Copilot
- Adding New Code
- Learning to Test
- Creating Context with Selection
- Creating Context with Tags
- Running Tests
- Conclusion
- Reference
- Chapter 6 Writing Tests with Copilot
- Establishing the Example Project
- Prerequisites
- Adding Unit Tests to Existing Code
- Driving Unit Test Creation with Comments
- Using Inline Chat to Generate Tests
- Exploring Behavior-Driven Development with Copilot
- Adding User Accounts
- Setup
- End-to-End Tests
- Conclusion
- Chapter 7 Diagnosing and Resolving Bugs
- Establishing the Example Project
- Prerequisites
- Fixing Syntax Errors
- Resolving Runtime Exceptions
- Setup
- Resolving Terminal Errors
- Conclusion.
- Chapter 8 Code Refactoring with Copilot
- Introducing Code Refactoring with Copilot
- Establishing the Example Project
- Prerequisites
- Refactoring Duplicate Code
- Adding Unit Tests
- Refactoring Duplicate Error Handling Code
- Refactoring Validators
- Adding Unit Tests
- Extracting Validation Code to Functions
- Refactoring Bad Variable Names
- Documenting and Commenting Code
- Method Documentation
- Project Documentation
- Conclusion
- Chapter 9 Enhancing Code Security
- Detailing Code Security
- Establishing the Example Project
- Prerequisites
- Exploring Code Security
- Using HTTPS
- Implementing Validation
- Conclusion
- Finding and Fixing Security Issues
- Fixing Weak Password Hashing
- Fixing SQL Injection
- Conclusion
- Chapter 10 Accelerating DevSecOps Practices
- Detailing DevSecOps
- Simplifying Containers
- Creating a Container
- Deploying a Container
- Applying Security Controls
- Automating Infrastructure as Code
- Creating IaC
- Deploying Code Using Terraform
- Applying Security Controls
- Streamlining CI/CD Pipelines
- Creating CI Pipeline
- Adding Security Scanning
- Creating CD Pipeline
- Conclusion
- Chapter 11 Enhancing Development Environments with Copilot
- Amplifying Visual Studio with Copilot
- Prerequisites
- Installing the GitHub Copilot Extension
- Exploring Code Completions
- Chatting with Copilot
- Elevating Azure Data Studio with Copilot
- Prerequisites
- Installing the GitHub Copilot Extension
- Constructing Database Schemas with Copilot
- Inserting Test Data with Copilot
- Querying with Copilot
- Boosting JetBrains IntelliJ IDEA with Copilot
- Prerequisites
- Installing the GitHub Copilot Extension
- Exploring Code Completions
- Chatting with Copilot
- Enhancing Neovim with Copilot
- Prerequisites
- Installing the GitHub Copilot Extension.
- Exploring Code Completions
- Consulting Copilot in the GitHub CLI
- Prerequisites
- Installing the GitHub Copilot Extension
- Getting Suggestions with Copilot
- Explaining Commands with Copilot
- Setting Up Aliases for Copilot
- Bash
- PowerShell
- Zsh
- References
- Conclusion
- Chapter 12 Universal Conversion with GitHub Copilot
- Translating Natural Language to Programming Languages
- Converting JavaScript Components
- Simplifying CSS Styles
- Converting Between CSS Frameworks
- Enhancing Nontyped Languages with Types
- JavaScript to Typescript
- Transitioning Between Frameworks and Libraries
- Pandas to Polars
- Express.js to Koa.js
- Converting Object-Oriented Languages
- Objective-C to Swift
- Migrating Databases
- SQL Server to PostgreSQL
- Transitioning CI/CD Platforms
- Modernizing Legacy Systems
- Modernizing a COBAL Program
- Conclusion
- Reference
- Part IV Key Insights and Advanced Use Cases for GitHub Copilot
- Chapter 13 Considering Responsible AI with GitHub Copilot
- Introducing Responsible AI
- Responsible AI Regulation
- Examining How Copilot Implements Responsible AI
- Fairness
- Reliability and Safety
- Privacy and Security
- Data Protection
- Vulnerability Prevention System
- Inclusiveness
- Transparency
- Accountability
- Further Research
- Programming with AI Responsibly
- Researching Responsible AI Principles
- Conclusion
- References
- Chapter 14 Augmenting the Software Development Life Cycle with GitHub Copilot
- Introducing the SDLC
- Requirements
- Design
- Coding
- Testing
- Deployment
- Maintenance
- Assessing the Adoption of AI in the SDLC
- Detailing Levels of AI Integration in the SDLC
- Level 0: Nonexistent
- Capabilities Demonstrated
- Level 1: Initial
- Capabilities Demonstrated
- Level 2: Managed
- Capabilities Demonstrated
- Level 3: Defined.
- Capabilities Demonstrated
- Level 4: Quantitatively Managed
- Capabilities Demonstrated
- Level 5: Optimizing
- Capabilities Demonstrated
- Summary
- Showcasing GitHub Copilot in the SDLC
- Detailing the Example Scenario
- Requirements Gathering
- Refining the Backlog
- Planning with Copilot
- Coding with Copilot
- Testing with Copilot
- Deploying with Copilot
- Addressing Concerns: AI Adoption and the Future of Work
- Conclusion
- References
- Chapter 15 Exploring Copilot Business and Enterprise
- Introducing Copilot Business and Enterprise
- Detailing Base Features
- Programming with Copilot in Your IDE
- Chatting with Copilot in Your IDE
- Leveraging Copilot in the CLI
- Highlighting Copilot Business
- Presenting Copilot Enterprise
- Chatting with Copilot in GitHub.com
- Getting Insights About a Repository
- Asking Copilot General Programming Questions
- Indexing Code Repositories to Improve Copilot's Understanding
- Detailing the Example Project
- Introducing Retrieval-Augmented Generation
- Indexing Your Repository
- Asking Repository-Specific Questions
- How Question
- Where Question
- Getting Better Answers with the Knowledge Base
- Creating a Knowledge Base
- Summary
- Leveraging Copilot Chat in Code Repository Files
- Explaining Code with Copilot
- Getting Suggested Improvements from Copilot
- Adding Context with Attach to Current Thread
- Enhancing Pull Requests with Copilot
- Discovering Pull Request Tasks
- Making a Code Change with Copilot
- Update the Basket Domain Model
- Update the Basket Service
- Update the Basket Page
- Committing to the Feature Branch
- Leveraging Copilot to Summarize Your Pull Request
- Managing GitHub Copilot
- Managing Access
- Managing Policies
- Content Exclusion
- Reviewing Audit Logs
- Looking Ahead
- Augmenting Results with Web Search Powered by Bing.
- Customizing Copilot with Fine-Tuned Models.