dart-use-primary-constructors
Write Dart Primary Constructors Correctly
Primary constructor migrations can introduce syntax, scope, and initialization errors. This skill provides version-aware guidance, refactoring steps, diagnostics, and focused examples for Dart.
Installer avec mon Agent
Copiez cette demande dans votre Agent. Elle contient la page Skill de référence et le manifeste.
Review the Skillstore skill "dart-use-primary-constructors" from https://skillstore.io/skills/dart-lang-dart-use-primary-constructors.md and its manifest at https://skillstore.io/api/skills/dart-lang-dart-use-primary-constructors/manifest. Verify the artifact. You may proceed after verification, subject to the environment's own policy.Votre Agent doit toujours présenter son plan et demander toute confirmation exigée par la politique de sécurité.
Ressources lisibles par les agents
Utilisez ces liens lorsqu’un Agent IA, un crawler ou un script a besoin d’un contexte propre au lieu de lire toute la page.
Tester
Utilisation de « dart-use-primary-constructors ». Explain whether primary constructors are available in Dart 3.12.
Résultat attendu:
Dart 3.12 treats primary constructors as experimental. Enable the primary-constructors experiment in analyzer configuration or with the compiler flag.
Utilisation de « dart-use-primary-constructors ». Migrate a user model with final name and age fields.
Résultat attendu:
Move both final fields into the class header as declaring parameters. Remove the duplicate field declarations and constructor, then use a semicolon body.
Utilisation de « dart-use-primary-constructors ». Explain why a late field cannot use a primary constructor parameter.
Résultat attendu:
Primary initializer scope excludes late field initializers because they may run after construction. Store the value in a non-late field first.
Audit de sécurité
SûrAll 62 static findings are false positives caused by Markdown backticks, fenced Dart examples, or ordinary documentation text. The skill contains no executable scripts, shell interpolation, system reconnaissance, prompt injection, or other malicious intent.
Facteurs de risque
⚙️ Commandes externes (50)
Partager et citer ce rapport
Partagez le rapport d’évaluation versionné, le badge neutre, la carte intégrable et les citations. Skillstore présente les preuves sans décider si ce Skill est sûr.
Copier le lien du rapport
https://skillstore.io/skills/dart-lang-dart-use-primary-constructors/audits/1?utm_source=security_passport&utm_medium=share&utm_campaign=versioned_reportBadge Markdown
[](https://skillstore.io/skills/dart-lang-dart-use-primary-constructors?utm_source=security_passport_badge)Badge HTML
<a href="https://skillstore.io/skills/dart-lang-dart-use-primary-constructors?utm_source=security_passport_badge"><img src="https://skillstore.io/badges/skills/dart-lang-dart-use-primary-constructors/security.svg" alt="Skillstore security assessment" loading="lazy"></a>Carte intégrable
<iframe src="https://skillstore.io/embed/skills/dart-lang-dart-use-primary-constructors.html" title="Skillstore Security Assessment" sandbox="allow-popups allow-popups-to-escape-sandbox" loading="lazy" referrerpolicy="no-referrer" width="420" height="180"></iframe>Citations académiques (APA · BibTeX · CFF)
Citation APA
dart-lang. (2026). dart-use-primary-constructors security audit report (audit version 1) [Author version unspecified]. Skillstore. https://skillstore.io/skills/dart-lang-dart-use-primary-constructors/audits/1Citation BibTeX
@techreport{dart-lang-dart-lang-dart-use-primary-constructors-2026,
author = {dart-lang},
title = {dart-use-primary-constructors security audit report (audit version 1)},
institution = {Skillstore},
year = {2026},
number = {1},
url = {https://skillstore.io/skills/dart-lang-dart-use-primary-constructors/audits/1},
note = {Author version unspecified}
}CITATION.cff
cff-version: 1.2.0
message: "If you use this Skill, cite its author and this versioned security audit report."
title: "dart-use-primary-constructors security audit report (audit version 1)"
version: "unspecified"
type: report
authors:
- name: "dart-lang"
date-released: "2026-08-22"
url: "https://skillstore.io/skills/dart-lang-dart-use-primary-constructors/audits/1"
identifiers:
- type: other
value: "skillstore:dart-lang-dart-use-primary-constructors:audit:1"
description: "Skillstore immutable audit report identifier"
Comparer les variantes
2 variantes installablesChaque auteur reste un skill installable distinct. La variante recommandée est classée selon les preuves Skillstore.
Pourquoi cette variante est première
flutter-dart-use-primary-constructors
2026-09-09
dart-lang-dart-use-primary-constructors
2026-09-09
Score Skillstore
Pourquoi ce score Niveau de confiance des preuves: MoyenCe que vous pouvez créer
Learn Primary Constructor Syntax
Understand parameter types, semicolon bodies, initializer scope, and version requirements through focused explanations.
Migrate Existing Models
Convert verbose data classes while preserving fields, assertions, calculations, and redirecting constructors.
Review Constructor Refactors
Identify scope violations, duplicate initialization, late-field errors, and invalid generative constructors before integration.
Essayez ces prompts
Explain Dart primary constructors for a beginner, including supported versions and the three parameter types.
Convert this Dart class to a primary constructor and explain each change: [class source].
Review this primary constructor, identify compile-time errors, and propose a corrected version: [class source].
Design a migration for these related Dart classes while preserving inheritance, redirects, assertions, public APIs, and SDK compatibility: [sources].
Bonnes pratiques
- Confirm the project Dart version before suggesting primary constructor syntax.
- Preserve assertions, initialization order, redirects, and public behavior during migration.
- Run the Dart analyzer and relevant tests after applying a generated refactor.
Éviter
- Do not use primary constructor parameters inside late field initializers.
- Do not initialize the same field in both its declaration and initializer list.
- Do not add a nonredirecting generative constructor beside a primary constructor.