Vai al contenuto

Scheda di Riferimento Amazon Q

Panoramica

Amazon Q è l'assistente di codifica AI di AWS che fornisce suggerimenti di codice intelligenti, scansione di sicurezza e funzionalità di modernizzazione delle applicazioni. Si integra con IDE popolari e servizi AWS per migliorare la produttività degli sviluppatori con raccomandazioni contestuali e generazione automatica di codice.

⚠️ Nota: Richiede un account AWS e autorizzazioni IAM appropriate. Alcune funzionalità richiedono un abbonamento a Amazon Q.

Installazione e Configurazione

Estensione VS Code

# Install Amazon Q extension from VS Code marketplace
code --install-extension AmazonWebServices.amazon-q-vscode

# Alternative: Search "Amazon Q" in Extensions tab

IDE JetBrains

# Install via JetBrains Plugin Repository
# File > Settings > Plugins > Marketplace
# Search "Amazon Q" and install

Integrazione AWS CLI

# Install AWS CLI v2
curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install

# Configure credentials
aws configure

Autenticazione

Configurazione Iniziale

# Sign in through IDE extension
# Click "Sign in to Amazon Q" in IDE
# Choose authentication method:
# - AWS Builder ID (free tier)
# - IAM Identity Center
# - AWS credentials

AWS Builder ID (Gratuito)

# Create free AWS Builder ID account
# Provides basic code suggestions
# Limited monthly usage

Livello Professionale

# Requires AWS subscription ($20/month per user)
# Advanced features including:
# - Security scanning
# - Code explanations
# - Unit test generation
# - Application modernization

Funzionalità Principali

Completamento Codice

# Automatic suggestions while typing
# Press Tab to accept suggestion
# Press Esc to dismiss suggestion

# Multi-line code generation
# Type comment describing function
# Amazon Q generates implementation

# Example:
# Type: "// Function to sort array of objects by name"
# Press Enter and Amazon Q suggests implementation

Interfaccia Chat

# Open chat panel in IDE
# Ask questions about code
# Request explanations
# Get help with debugging

# Example queries:
"Explain this function"
"How to optimize this code?"
"Write unit tests for this class"
"Convert this to TypeScript"

Scansione Sicurezza

# Automatic security vulnerability detection
# Real-time scanning while coding
# Suggestions for security fixes

# Manual security scan
# Right-click in editor
# Select "Amazon Q: Scan for security issues"

Utilizzo Riga di Comando

Amazon Q CLI (Anteprima)

# Install Amazon Q CLI
npm install -g @aws/amazon-q-cli

# Initialize in project
amazon-q init

# Ask questions
amazon-q ask "How to deploy this to AWS?"

# Generate code
amazon-q generate --prompt "Create REST API endpoint"

# Analyze code
amazon-q analyze --file src/main.js

Integrazione AWS CLI

# Use Amazon Q with AWS CLI
aws q ask "How to create S3 bucket with encryption?"

# Get help with AWS services
aws q explain ec2 describe-instances

# Troubleshoot AWS issues
aws q troubleshoot --service lambda --error "Function timeout"

Integrazione IDE

Comandi VS Code

# Command Palette (Ctrl+Shift+P)
"Amazon Q: Open Chat"
"Amazon Q: Explain Code"
"Amazon Q: Generate Unit Tests"
"Amazon Q: Optimize Code"
"Amazon Q: Security Scan"
"Amazon Q: Transform Code"

# Keyboard shortcuts
Ctrl+I          # Inline code generation
Alt+C           # Open chat
Ctrl+Shift+A    # Explain selected code

Comandi IntelliJ/PyCharm

# Tools menu
Tools > Amazon Q > Open Chat
Tools > Amazon Q > Explain Code
Tools > Amazon Q > Generate Tests

# Context menu (right-click)
"Ask Amazon Q"
"Explain with Amazon Q"
"Generate tests with Amazon Q"

Esempi di Generazione Codice

Generazione Funzione

// Type comment and let Amazon Q generate
// Function to validate email address
function validateEmail(email) {
    const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
    return emailRegex.test(email);
}

Creazione Endpoint API

# Generate Flask API endpoint
# POST endpoint to create user
@app.route('/users', methods=['POST'])
def create_user():
    data = request.get_json()
    user = User(
        name=data['name'],
        email=data['email']
    )
    db.session.add(user)
    db.session.commit()
    return jsonify({'id': user.id}), 201

Generazione Test Unitari

// Generate Jest tests for function
describe('validateEmail', () => {
    test('should return true for valid email', () => {
        expect(validateEmail('test@example.com')).toBe(true);
    });

    test('should return false for invalid email', () => {
        expect(validateEmail('invalid-email')).toBe(false);
    });
});

Modernizzazione Applicazioni

Trasformazione Codice

# Transform legacy code to modern frameworks
# Select code block
# Right-click > "Transform with Amazon Q"
# Choose target framework (React, Vue, Angular, etc.)

Migrazione Linguaggio

# Convert between programming languages
# Select code in source language
# Ask Amazon Q: "Convert this Java code to Python"
# Review and accept suggestions

Aggiornamenti Framework

Would you like me to continue with the remaining sections?```bash

Upgrade to newer framework versions

Ask Amazon Q: "Upgrade this React class component to hooks"

Get step-by-step migration guidance

## Funzionalità di Sicurezzabash

Automatic scanning for:

- SQL injection vulnerabilities

- Cross-site scripting (XSS)

- Insecure dependencies

- Hardcoded secrets

- Authentication issues

### Migliori Pratiche di Sicurezzabash

Get security recommendations

Ask Amazon Q: "How to secure this API endpoint?"

Receive suggestions for:

- Input validation

- Authentication

- Authorization

- Data encryption

### Scansione di Conformitàbash

Check code against compliance standards

OWASP Top 10

CWE (Common Weakness Enumeration)

AWS security best practices

## Funzionalità Avanzatebash

Create custom code generation prompts

Define templates for common patterns

Share prompts across team

Example custom prompt:

"Generate CRUD operations for {entity} with validation and error handling" ### Prompt Personalizzatibash

Amazon Q analyzes entire workspace

Understands project structure

Provides context-aware suggestions

Maintains consistency across files

### Contesto dell'Area di Lavorobash

Generate AWS infrastructure code

Ask: "Create Lambda function with API Gateway"

Get CloudFormation/CDK templates

Deploy directly to AWS

### Integrazione con Servizi AWSbash

Extension not working

Check AWS credentials configuration

Verify internet connection

Restart IDE

No code suggestions

Check if Amazon Q is enabled in settings

Verify file type is supported

Check subscription status

## Risoluzione dei Problemibash

Improve suggestion speed

Close unnecessary files

Reduce workspace size

Update to latest extension version

Manage suggestion frequency

Adjust settings in IDE preferences

Configure trigger delay

Set suggestion limits

### Problemi Comunibash

View Amazon Q logs

VS Code: View > Output > Amazon Q

IntelliJ: Help > Show Log in Explorer

Report issues

Use "Send Feedback" in extension

Include error logs and reproduction steps

### Ottimizzazione delle Prestazionibash

Write descriptive comments for better suggestions

Use meaningful variable names

Provide context in chat queries

Review suggestions before accepting

Test generated code thoroughly

### Debugbash

Review security scan results

Don't ignore vulnerability warnings

Validate input in generated code

Follow principle of least privilege

Regularly update dependencies

## Migliori Pratichebash

Share useful prompts with team

Establish coding standards

Review AI-generated code

Document custom configurations

Train team on effective usage

### Utilizzo Efficacebash

Features included:

- Basic code completion

- Limited chat interactions

- Security scanning (basic)

- Monthly usage limits apply

### Considerazioni sulla Sicurezzabash

Additional features:

- Advanced code generation

- Unlimited chat

- Application modernization

- Priority support

- Team management features

### Collaborazione di Teambash

Custom pricing for:

- SSO integration

- Advanced security controls

- Audit logging

- Custom model training

- Dedicated support

```## Prezzi e Limiti https://docs.aws.amazon.com/amazonq/##

Livello Gratuito (AWS Builder ID)

https://marketplace.visualstudio.com/items?itemName=AmazonWebServices.amazon-q-vscode##

Livello Professionale ($20/mese)

https://plugins.jetbrains.com/plugin/24267-amazon-q##

Funzionalità Enterprise

https://forums.aws.amazon.com/forum.jspa?forumID=293#

Risorse

Stack Overflow

Formazione

Note: I've kept technical terms like "AWS" and "Amazon Q" in their original English form, translated the general text, and maintained the markdown formatting as requested.