Template: Codice e Documentazione Tecnica
Fonte: Capitolo 4 - Pilastro 1: Creare
Categoria: Produrre
Livello: Intermedio
URL: prmpt.onl/003
Quando usarlo
Per developer che vogliono accelerare la produzione di codice e documentazione mantenendo qualitĂ professionale. Perfetto per generare codice, README, API docs, e commenti strutturati.
Ideale per:
- Sviluppo di funzioni e moduli specifici
- Documentazione di API e librerie
- Code review e refactoring guidance
- Setup e configurazione di progetti
Template
Agisci come un senior developer esperto in [LINGUAGGIO/FRAMEWORK].
Io sono [LIVELLO EXPERIENCE] e sto lavorando su [TIPO PROGETTO].
Voglio [OBIETTIVO: generare codice/documentare/debuggare] per [FUNZIONALITĂ€ SPECIFICA].
Contesto tecnico:
- Stack: [tecnologie utilizzate]
- Constraints: [performance/security/scalability]
- Team: [size e skill level]
- Timeline: [deadline pressioni]
Stile code:
- Commenti esplicativi per logica complessa
- Naming conventions chiare
- Error handling robusto
- Best practices del [LINGUAGGIO]
Documentazione:
- README chiaro per setup
- Esempi di utilizzo concreti
- API documentation se applicabile
[CODICE ESISTENTE O SPECIFICHE DETTAGLIATE]
Varianti
Per API Development
Aggiungi: “Include OpenAPI/Swagger specs, error codes standardizzati, e rate limiting considerations.”
Per Code Review
Aggiungi: “Focus su security vulnerabilities, performance bottlenecks, e maintainability. Suggerisci alternative con trade-off analysis.”
Per Legacy Refactoring
Aggiungi: “Mantieni backward compatibility dove possibile. Documenta breaking changes e migration path.”
Esempio di risultato
Input: “Python function per data validation con Pydantic”
Output AI (estratto):
from typing import List, Optional
from pydantic import BaseModel, validator, Field
from datetime import datetime
class UserInput(BaseModel):
"""
User input validation model with comprehensive checks.
Ensures data quality and type safety for user registration.
"""
email: str = Field(..., description="User email address")
age: int = Field(..., ge=18, le=120, description="User age (18-120)")
interests: List[str] = Field(default=[], max_items=10)
created_at: Optional[datetime] = None
@validator('email')
def validate_email(cls, v):
"""Validate email format and domain restrictions."""
import re
if not re.match(r'^[^@]+@[^@]+\.[^@]+$', v):
raise ValueError('Invalid email format')
return v.lower()
@validator('interests')
def validate_interests(cls, v):
"""Ensure interests are non-empty and unique."""
if v:
cleaned = [item.strip() for item in v if item.strip()]
return list(set(cleaned)) # Remove duplicates
return []
def validate_user_data(data: dict) -> UserInput:
"""
Validate user input data with comprehensive error handling.
Args:
data: Raw user input dictionary
Returns:
UserInput: Validated user data model
Raises:
ValidationError: If data doesn't meet requirements
"""
try:
return UserInput(**data)
except ValidationError as e:
# Log validation errors for monitoring
logger.error(f"User validation failed: {e}")
raise
Tips per risultati migliori
- Specificity tecnica: PiĂą dettagli dai su stack e constraints, piĂą appropriate saranno le soluzioni
- Level appropriato: Specifica se il codice è per junior, senior, o mixed team
- Performance requirements: Memory, CPU, scalability requirements influenzano l’architettura
- Testing strategy: Chiedi sempre esempi di unit test per il codice generato
Template correlati
- prmpt.onl/201 - Architecture Review per decisioni strutturali
- prmpt.onl/202 - Code Review Automation
- prmpt.onl/001 - Documento Struttura per README complessi
📖 Da “Prompt Engineering: Il Nuovo Skill” di Marco Milani
đź”— Tutti i template: prmpt.onl/index
📱 Accesso rapido: [QR Code]
Ultimo aggiornamento: 24 Gennaio 2025