Générateur de classe Collection PHP typée

VérifiéSûr

Génère une classe Collection typée pour gérer des ensembles d'entités, utilisant les traits et interfaces Atournayre. Crée un fichier PHP final dans `src/Collection/` avec des méthodes comme `asList()` et les fonctionnalités fournies par les traits. Utile pour appliquer une structure cohérente et typée aux collections de votre domaine.

Spar Skills Guide Bot
DeveloppementIntermédiaire
6002/06/2026
Claude Code
#php#collection#typed-class#entity#atournayre

Recommandé pour

Notre avis

Génère une classe Collection typée pour une entité PHP, utilisant les traits et interfaces du framework Atournayre.

Points forts

  • Réduit le code boilerplate en utilisant des traits et interfaces prédéfinis
  • Assure une collection robuste avec des méthodes de comptage et de transformation
  • Intègre facilement dans un projet Atournayre

Limites

  • Nécessite le framework atournayre/framework
  • L'entité doit déjà exister dans le projet
  • Génère uniquement les fonctionnalités de base (YAGNI)
Quand l'utiliser

Utilisez cette compétence lorsque vous avez besoin d'une collection typée pour une entité dans un projet Symfony utilisant le framework Atournayre.

Quand l'éviter

Ne l'utilisez pas si vous n'utilisez pas le framework Atournayre ou si vous préférez une implémentation manuelle des collections.

Analyse de sécurité

Sûr
Score qualité85/100

The skill generates a PHP file using a template; it only reads an entity file and writes a new class, with no destructive or exfiltrating actions.

Aucun point d'attention détecté

Exemples

Generate ProductCollection
Use skill php:make-collection with EntityName=Product

name: php:make-collection description: Génère classe Collection typée avec traits Atournayre model: sonnet allowed-tools: [Bash, Read, Write, Edit, Grep, Glob] version: 1.0.0 license: MIT

PHP Make Collection Skill

Instructions à Exécuter

IMPORTANT : Exécute ce workflow étape par étape :

Description

Génère une classe Collection typée pour gérer des ensembles d'entités avec les traits et interfaces Atournayre.

Usage

Use skill php:make-collection

Variables requises

  • {EntityName} - Nom de l'entité en PascalCase (ex: Product)
  • {entityName} - Nom de l'entité en camelCase (ex: product)
  • {namespace} - Namespace du projet (défaut: App)

Dépendances

  • Entité dans src/Entity/{EntityName}.php
  • Framework atournayre/framework

Outputs

  • src/Collection/{EntityName}Collection.php

Workflow

  1. Demander le nom de l'entité (EntityName)
  2. Vérifier que l'entité existe dans src/Entity/{EntityName}.php
    • Si non : arrêter et demander de créer l'entité d'abord
  3. Générer la classe Collection depuis le template templates/Collection/
  4. Afficher le fichier créé

Patterns appliqués

  • Classe final
  • Interfaces : AsListInterface, ToArrayInterface, CountInterface, CountByInterface, AtLeastOneElementInterface, HasSeveralElementsInterface, HasNoElementInterface, HasOneElementInterface, HasXElementsInterface, LoggableInterface
  • Traits : Collection, Collection\ToArray, Collection\Countable
  • Méthode statique asList(array $collection)

References

  • Usage - Exemples d'utilisation et méthodes métier

Notes

  • Respect du principe YAGNI : pas de méthodes génériques anticipées
  • Seules les méthodes explicitement demandées doivent être ajoutées
  • Les traits fournissent déjà les fonctionnalités de base
Skills similaires