julia-pro
Maîtriser le développement Julia 1.10+
Les développeurs Julia ont besoin de conseils d'experts sur les fonctionnalités modernes de Julia, l'optimisation des performances et les pratiques de production. Cette compétence fournit une expertise complète dans le développement Julia 1.10+ incluant le dispatch multiple, la gestion de packages, le calcul scientifique et le code numérique haute performance.
تنزيل ZIP المهارة
رفع في Claude
اذهب إلى Settings → Capabilities → Skills → Upload skill
فعّل وابدأ الاستخدام
اختبرها
استخدام "julia-pro". How do I create a custom array type in Julia that supports broadcasting?
النتيجة المتوقعة:
To create a custom array type with broadcasting support, you need to define your struct as a subtype of AbstractArray and implement the required interface methods. Here's how:
1. Define your custom array type with eltype and dimensions
2. Implement size() and getindex() methods
3. Optionally implement Broadcast.broadcastable() for optimized broadcasting
The key is maintaining type stability throughout your implementations for optimal performance.
استخدام "julia-pro". What's the best way to optimize this numerical loop for better performance?
النتيجة المتوقعة:
For numerical loop optimization in Julia, consider these approaches:
1. Use @inbounds to skip bounds checking
2. Apply @simd for SIMD vectorization
3. Preallocate arrays to avoid allocations
4. Use view() instead of slicing to avoid copies
5. Check type stability with @code_warntype
Always benchmark with BenchmarkTools.jl before and after optimizations.
التدقيق الأمني
آمنPrompt-only skill containing only a SKILL.md file with no executable code. Static analysis scanned 0 files (0 lines) and detected 0 potential security issues. The skill is a pure prompt-based Julia expert that provides guidance and best practices without executing any code. No suspicious patterns or risk factors detected. Safe for publication.
درجة الجودة
ماذا يمكنك بناءه
Apprendre le développement moderne Julia
Commencez avec Julia 1.10+ en comprenant les fonctionnalités modernes, les bonnes pratiques et la configuration de projet appropriée avec Pkg.jl
Optimiser le code critique pour la performance
Recevez des conseils d'experts sur le profilage, l'analyse de stabilité des types et les techniques d'optimisation pour les applications numériques
Développer des packages Julia de production
Créer des packages Julia prêts à publier avec une structure appropriée, documentation, tests et pipelines CI/CD
جرّب هذه الموجهات
Comment faire [tâche spécifique] dans Julia 1.10+ ? Veuillez expliquer avec un exemple simple.
Ma fonction Julia [décrire la fonction] est lente. Veuillez analyser et suggérer des optimisations pour une meilleure performance.
Concevoir une hiérarchie de types à dispatch multiple pour [domaine]. Inclure les types abstraits, les types concrets et des méthodes d'exemple.
Créer une structure de package Julia complète pour [nom du package]. Inclure la configuration de Project.toml, les fichiers src, la structure de test et le plan de documentation.
أفضل الممارسات
- Prioriser la stabilité des types dans toutes les fonctions - utiliser @code_warntype pour vérifier
- Utiliser les structs immuables par défaut sauf si la mutation est spécifiquement requise
- Formater le code de manière cohérente avec JuliaFormatter.jl en utilisant BlueStyle
تجنب
- Éviter le piracy de types - ne pas définir de méthodes pour les types que vous ne possédez pas
- Éviter d'utiliser des variables globales dans le code critique pour la performance
- Éviter les allocations inutiles dans les boucles chaudes