Mevcut konuşmadan DDD tarzında evrensel bir dil sözlüğü çıkarın, belirsizlikleri işaretleyin ve kanonik terimler önerilir. UBIQUITOUS_LANGUAGE.md dosyasına kaydedilir. Kullanıcı domain terimlerini tanımlamak, sözlük oluşturmak, terminolojiyi sağlamlaştırmak, evrensel dil oluşturmak veya "domain model" ya da "DDD" bahsettiğinde kullanın.
cd ~/.claude/skills
git clone https://github.com/mattpocock/skills.git skills mkdir -p ~/.claude/skills/ubiquitous-language
curl -fsSL https://raw.githubusercontent.com/mattpocock/skills/HEAD/skills/deprecated/ubiquitous-language/SKILL.md \
-o ~/.claude/skills/ubiquitous-language/SKILL.md Mevcut konuşmadan etki alanı terminolojisini çıkarın ve tutarlı bir sözlüğe dönüştürün, yerel bir dosyaya kaydedin.
UBIQUITOUS_LANGUAGE.md dosyasına yazın çalışma dizininde, aşağıdaki biçimi kullanarakBu yapıyla bir UBIQUITOUS_LANGUAGE.md dosyası yazın:
# Evrensel Dil
## Sipariş yaşam döngüsü
| Terim | Tanım | Kaçınılacak eş anlamlılar |
| ----------- | ------------------------------------------------------- | --------------------- |
| **Sipariş** | Müşterinin bir veya daha fazla öğe satın almak için yaptığı talep | Satın alma, işlem |
| **Fatura** | Teslimat sonrasında müşteriye gönderilen ödeme talebi | Hesap, ödeme talebi |
## İnsanlar
| Terim | Tanım | Kaçınılacak eş anlamlılar |
| ------------ | ------------------------------------------- | ---------------------- |
| **Müşteri** | Sipariş veren kişi veya kuruluş | İstemci, alıcı, hesap |
| **Kullanıcı** | Sistemdeki bir kimlik doğrulama kimliği | Giriş, hesap |
## İlişkiler
- Bir **Fatura** tam olarak bir **Müşteri**ye aittir
- Bir **Sipariş** bir veya daha fazla **Fatura** üretir
## Örnek diyalog
> **Dev:** "Bir **Müşteri** bir **Sipariş** verdiğinde, **Fatura**yı hemen oluşturuyor muyuz?"
> **Etki alanı uzmanı:** "Hayır — **Fatura** yalnızca bir **Yerine Getirme** onaylandıktan sonra oluşturulur. Tek bir **Sipariş** öğeler ayrı **Gönderi**lerde gönderildiyse birden fazla **Fatura** üretebilir."
> **Dev:** "Yani bir **Gönderi** gönderilmeden önce iptal edilirse, onun için **Fatura** yok mu?"
> **Etki alanı uzmanı:** "Tam olarak. **Fatura** yaşam döngüsü **Sipariş**e değil **Yerine Getirme**ye bağlıdır."
## İşaretli belirsizlikler
- "hesap" hem **Müşteri** hem de **Kullanıcı** anlamında kullanıldı — bunlar farklı kavramlardır: **Müşteri** siparişler verirken, **Kullanıcı** bir **Müşteri**yi temsil edebilecek veya etmeyebilecek bir kimlik doğrulama kimliğidir.
Dev: "Docker olmadan sync service nasıl test edebilirim?"
Etki alanı uzmanı: "Docker layer yerine filesystem layer sağlayın. Aynı Sandbox service arayüzünü uygular ancak sandbox olarak yerel bir dizin kullanır."
Dev: "Yani sync-in yine bir bundle oluşturuyor ve onu açıyor mu?"
Etki alanı uzmanı: "Tam olarak. Sync service hangi katmanla konuştuğunu bilmiyor.
execvecopyIn'i çağırıyor — filesystem layer bunları yalnızca yerel shell komutları olarak çalıştırıyor."
Aynı konuşmada tekrar çağrıldığında:
UBIQUITOUS_LANGUAGE.md dosyasını okuyunHerhangi bir yaratıcı çalışmaya başlamadan önce bunu mutlaka kullanın - feature oluştururken, component inşa ederken, functionality eklerken veya davranış değiştirirken. Kullanıcı niyetini, gereksinimleri ve tasarımı implementation öncesinde araştırır.
Uygulama tamamlandığında, tüm testler geçtiğinde ve çalışmanızı nasıl entegre edeceğinize karar vermeniz gerektiğinde kullanın - merge, PR veya cleanup seçeneklerini sunarak geliştirme sürecinin tamamlanmasını rehberlik eder.
Kod incelemesi geri bildirimi alırken, önerileri uygulamadan önce kullanın; özellikle geri bildirim belirsiz veya teknik olarak şüpheli görünüyorsa - performatif anlaşmadan veya körü körüne uygulamadan ziyade teknik titizlik ve doğrulama gerekir.
Görevleri tamamlarken, büyük özellikleri hayata geçirirken veya merge etmeden önce çalışmanın gereksinimleri karşıladığını doğrulamak için kullanın.
Yeni bir feature üzerinde çalışmaya başlarken veya implementasyon planını yürütmeden önce kullanın - native araçlar veya git worktree fallback aracılığıyla izole edilmiş bir workspace sağlar.
Herhangi bir konuşma başlatırken kullanın - skill'lerin nasıl bulunacağını ve kullanılacağını belirler, clarification soruları da dahil olmak üzere HERHANGİ bir yanıt vermeden önce skill invocation gerektirir.