C4 Diyagram Görüntüleyici ve Düzenleyici
- Yazarlar
- C4 Diyagram Görüntüleyici ve Düzenleyici
C4 Diyagram Görüntüleyici ve Düzenleyici: MassiveDiag Playground
MassiveDiag ile C4 Model Diyagramlamaya Giriş
MassiveDiag Playground, metin tabanlı diyagram kodlarını gerçek zamanlı olarak profesyonel sistem mimarisi görselleştirmelerine dönüştüren güçlü bir C4 diyagram görüntüleyici ve düzenleyici sunar. Bu araç, canlı C4 model düzenleyici olarak öne çıkar; yazılım mimarisi diyagramlarınızı geliştirirken anında görebilir ve ince ayar yapabilirsiniz.
İhtiyacınız ne olursa olsun:
- Web belgeleri için C4 diyagram kodunu SVG’ye çevirin
- Teknik dokümantasyon için C4 diyagram kodunu Word dosyasına aktarın
- Sunumlar için C4 model kodunu PNG’ye dönüştürün
- Resmi belgeler için C4 modelini PDF olarak dışa aktarın
MassiveDiag Playground, tüm bu işlemleri sade bir akışla sunar.
MassiveDiag’ın C4 Diyagram Düzenleyicisini Hemen Deneyin →
C4 Modeli Nedir?
C4 modeli, yazılım mimarisini katmanlı bir şekilde görselleştirmeye yarayan, Simon Brown tarafından geliştirilen bir yaklaşımdır. Yazılım sistemlerini dört düzeyde diyagramlarla standart bir biçimde belgelemenizi sağlar:
- Bağlam (Context) diyagramları – Sistemin dış dünya ile etkileşimini gösterir
- Kapsayıcı (Container) diyagramları – Teknoloji ve bileşen seviyesindeki kararları yansıtır
- Bileşen (Component) diyagramları – Her kapsayıcının içindeki mantıksal parçaları tanımlar
- Kod diyagramları – Detaylı uygulama düzeyinde görselleştirme (isteğe bağlıdır)
MassiveDiag, güçlü bir C4 model kod diyagram üreticisi olarak geliştiriciler ve yazılım mimarları için erişilebilir bir çözüm sunar.
C4 Diyagram Koduyla Başlarken
Bağlam Diyagramı Örneği
@startuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Context.puml
title Internet Bankacılık Sistemi için Sistem Bağlamı Diyagramı
Person(customer, "Banka Müşterisi", "Banka müşterisi ve bireysel hesap sahibi.")
System(banking_system, "İnternet Bankacılığı Sistemi", "Müşterilerin hesap bilgilerini görüntülemesini ve ödeme yapmasını sağlar.")
System_Ext(mail_system, "E-posta Sistemi", "Kurumsal Microsoft Exchange e-posta sistemi.")
System_Ext(mainframe, "Ana Bilgisayar Bankacılık Sistemi", "Tüm müşteri, hesap, işlem bilgilerini barındırır.")
Rel(customer, banking_system, "Kullanır")
Rel(banking_system, mail_system, "E-posta gönderir")
Rel(banking_system, mainframe, "Kullanır")
@enduml
Kapsayıcı Diyagramı Örneği
@startuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
title Internet Bankacılığı Sistemi için Kapsayıcı Diyagramı
Person(customer, "Banka Müşterisi", "Banka müşterisi ve bireysel hesap sahibi.")
System_Boundary(c1, "İnternet Bankacılığı Sistemi") {
Container(web_app, "Web Uygulaması", "Java ve Spring MVC", "Statik içerik ve tek sayfa uygulamayı sunar.")
Container(spa, "Tek Sayfa Uygulama", "JavaScript ve Angular", "Tüm bankacılık işlevlerini sağlar.")
Container(mobile_app, "Mobil Uygulama", "Xamarin", "Sınırlı bankacılık işlevleri sunar.")
Container(api, "API Uygulaması", "Java ve Spring MVC", "JSON/HTTPS ile işlevsellik sunar.")
Container(database, "Veritabanı", "Oracle", "Kullanıcı verileri, kimlik doğrulama ve günlükleri saklar.")
}
System_Ext(mainframe, "Ana Bilgisayar", "Tüm çekirdek bankacılık verilerini tutar.")
System_Ext(email, "E-posta Sistemi", "Microsoft Exchange e-posta altyapısı.")
Rel(customer, web_app, "Kullanır", "HTTPS")
Rel(customer, spa, "Kullanır", "HTTPS")
Rel(customer, mobile_app, "Kullanır")
Rel(web_app, spa, "Tarayıcıya iletir")
Rel(spa, api, "API çağrısı yapar", "JSON/HTTPS")
Rel(mobile_app, api, "API çağrısı yapar", "JSON/HTTPS")
Rel(api, database, "Okur/yazar", "JDBC")
Rel(api, mainframe, "API çağrısı yapar", "XML/HTTPS")
Rel(api, email, "E-posta gönderir")
@enduml
MassiveDiag ile C4 Diyagramları Nasıl Kullanılır?
1. C4 Model Kodunuzu Hazırlayın
Kendi C4 model kodunuzu yazabilir veya ChatGPT gibi yapay zekâ araçlarından yardım alabilirsiniz.
@startuml Basic Sample
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
Person(admin, "Yönetici", $sprite="person2", $link="https://github.com/plantuml-stdlib/C4-PlantUML/blob/master/LayoutOptions.md#hide_person_sprite-or-show_person_spritesprite")
System_Boundary(c1, "Örnek Sistem", $link="https://github.com/plantuml-stdlib/C4-PlantUML") {
Container(web_app, "Web Uygulama", "C#, ASP.NET Core 2.1 MVC", $descr="Kullanıcıların birden çok Twitter zaman çizelgesini karşılaştırmasını sağlar", $link="https://github.com/plantuml-stdlib/C4-PlantUML/blob/master/LayoutOptions.md")
}
System(twitter, "Twitter", $link="https://github.com/plantuml-stdlib/C4-PlantUML")
Rel(admin, web_app, "Kullanır", "HTTPS", $link="https://plantuml.com/link")
Rel(web_app, twitter, "Tweetleri çeker", "HTTPS", $link="https://plantuml.com/link")
@enduml
2. MassiveDiag Playground’a Kodunuzu Yapıştırın
MassiveDiag Playground'a gidin – kurulum veya üyelik gerekmez. Kodunuzu yapıştırın veya yükleyin.
3. Diyagram Türünü Seçin
Playground otomatik olarak diyagram türünü algılar, gerekirse elle “C4 PlantUML” seçebilirsiniz.
4. Diyagramınızı Oluşturun
“Create Diagram” butonuna tıklayarak kodunuzu görsel C4 diyagramına dönüştürün.
5. Düzenleyin ve İnce Ayar Yapın
Çift bölmeli arayüzü kullanarak:
- Kodu düzenleyip gerçek zamanlı olarak güncellemeleri görebilirsiniz
- Canlı SVG editörü ile görsel ayarlar yapabilirsiniz
6. Tercih Ettiğiniz Formatta Dışa Aktarın
Şu formatlarda dışa aktarabilirsiniz:
- SVG – Web kullanımı için
- PNG – Sunumlar için
- PDF – Belgeler için
- Word – Teknik dökümanlar için
- React JSX – Web bileşenleri için
İlk C4 Diyagramınızı Hemen Oluşturun →
C4 Diyagramları için Pratik Kullanım Alanları
Yazılım Mimarisi Dokümantasyonu
Farklı seviyelerde sistem tasarımını belgelemek için kullanılır:
- Bağlam diyagramları – Paydaşlar için
- Kapsayıcı diyagramlar – Geliştirme ekipleri için
- Bileşen diyagramları – Uygulama planlaması için
Teknik Belgeler
Şu amaçlarla mimari diyagramlar oluşturun:
- Sistem öneri belgeleri
- Mimari Karar Kayıtları (ADR)
- Teknik gereksinim belgeleri
Oryantasyon ve Bilgi Aktarımı
Yeni ekip üyelerine sistem hakkında genel bilgi sunmak için:
- Sistem sınırlarını ve etkileşimlerini açıklayın
- Teknoloji yığınını görselleştirin
- Bileşen görevlerini ve ilişkilerini gösterin
C4 Diyagramları ve MassiveDiag Hakkında SSS
C4, diğer diyagramlama yaklaşımlarından nasıl farklıdır?
C4, standart ve katmanlı bir mimari belgeleme yaklaşımı sunar.
C4 diyagram görüntüleyiciyi kullanmak için kod bilgisi şart mı?
Kod sözdizimine temel düzeyde aşinalık yardımcı olur ama şart değildir.
C4 diyagramlarımı başkalarıyla paylaşabilir miyim?
Evet, C4 kodunu paylaşabilir veya diyagramları dışa aktararak iş birliği yapabilirsiniz.
C4 diyagramlarını belgelerime nasıl eklerim?
- Web ve sunumlar için SVG/PNG
- Resmi belgeler için PDF/Word
Profesyonel C4 Diyagramları Oluşturun →