Bir mermaid sıralama diyagramı nasıl yazılır

Bir sıralama diyagramı kimin kime, hangi sırayla konuştuğunu gösterir. Mermaid'de yazması yaklaşık sesli anlatmak kadar sürer, bu yüzden bir kod tabanında en uzun süre hayatta kalan diyagram türüdür. Aşağıdakilerin hepsi editöre kopyala-yapıştıra hazırdır.

Minimum gereklilik

Önce diyagram türünü bildirin, sonra mesaj başına bir satır yazın. Katılımcılar ilk anıldıkları sırayla, ilk anılmalarında oluşturulur.

sequenceDiagram
  User->>API: POST /orders
  API->>DB: INSERT order
  DB-->>API: order id
  API-->>User: 201 Created

İlk anılma sırası yerine belirli bir soldan sağa sıra istediğinizde katılımcıları participant User ile açıkça bildirin.

Ok türleri

SözdizimiAnlamı
A->>B: textİstek — düz çizgi, dolu ok ucu
A-->>B: textYanıt — kesik çizgi, dolu ok ucu
A->B: textDüz çizgi, açık ok ucu
A-)B: textAsenkron mesaj — açık ok ucu, yanıt beklenmez
A-xB: textBaşarısız olan veya düşen mesaj

Korunmaya değer kural: çağrı için düz çizgi, dönüş için kesik çizgi. Böylece okuyucu tek bir etiket okumadan bir isteği bir yanıttan ayırt edebilir.

Katılımcılar ve takma adlar

sequenceDiagram
  participant U as Browser
  participant A as API gateway
  participant S as Order service
  U->>A: GET /orders
  A->>S: list(userId)
  S-->>A: orders
  A-->>U: 200 OK

Bir çöp adam figürü çizmek için participant yerine actor U as Browser kullanın — bir kimlik doğrulama akışının sol kenarındaki insan için buna değer.

Aktivasyon çubukları

Aktivasyon çubukları bir katılımcının ne kadar süre meşgul olduğunu gösterir. Ya activate/deactivate ile açıkça işaretleyin ya da oklara + ve - ekleyin, ki bu daha kısadır ve dengesi bozulması daha zordur.

sequenceDiagram
  User->>+API: POST /pay
  API->>+Bank: charge
  Bank-->>-API: authorised
  API-->>-User: receipt

Döngüler, koşullar ve paralel işler

sequenceDiagram
  User->>API: POST /import
  loop every row
    API->>DB: upsert row
  end
  alt all rows valid
    API-->>User: 200 OK
  else some failed
    API-->>User: 422 with errors
  end
  par notify
    API->>Email: send summary
  and audit
    API->>Log: write entry
  end
  • loop <label> … end — tekrar.
  • alt <label> … else <label> … end — birbirini dışlayan dallar.
  • opt <label> … end — hiç gerçekleşmeyebilecek bir dal.
  • par <label> … and <label> … end — aynı anda gerçekleşen şeyler.
  • critical / break — kesintiye uğramaması gereken bir bölüm ve erken bir çıkış.

Notlar

sequenceDiagram
  User->>API: POST /login
  Note right of API: Rate limited<br>5 per minute
  API-->>User: token
  Note over User,API: Token is valid for 30 days

Note over A,B iki katılımcıyı kapsar ve etkileşimin taraflarından birine değil, etkileşimin kendisine ait bir kısıtlama için doğru yerdir.

Tam bir örnek

sequenceDiagram
  actor U as User
  participant A as App
  participant P as Provider
  U->>+A: Click "Sign in"
  A-->>-U: Redirect to provider
  U->>+P: Authorise
  P-->>-U: Redirect back with code
  U->>+A: GET /callback?code=…
  A->>+P: Exchange code for token
  P-->>-A: access token
  Note right of A: Session cookie set here
  A-->>-U: Signed in
Uçtan uca OAuth girişi.

Bu diyagramı düzenleyin

Kod sekmesine yapıştırın ve bir satırı değiştirin — yazarken önizleme yeniden çizilir.

Sıkça sorulanlar

Mesajları nasıl numaralandırırım?

sequenceDiagram'dan hemen sonraki satıra autonumber yazın. Her mesaj daha sonra sıralı bir numara alır, bu da bir diyagramı inceleme yorumlarında tartışmayı çok daha kolay hale getirir.

Bir katılımcı kendine mesaj gönderebilir mi?

Evet — her iki tarafa da aynı adı yazın: API->>API: retry. Mermaid döngüyü aynı yaşam çizgisine geri çizer.

Bir katılımcının yok edildiğini nasıl gösteririm?

Onu sonlandıran mesajdan önce destroy <name> kullanın, ya da en üstte değil diyagramın ortasında görünmesi için create participant <name> kullanın.

Bir sıralama diyagramını görsel tuvalde düzenleyebilir miyim?

Görsel tuval akış şemalarını düzenler. Sıralama diyagramları kod sekmesinde yazılır, önizlemede canlı olarak render edilirler — ki bir sıralama diyagramı esasen bir satır listesi olduğu için bu genellikle zaten daha hızlıdır.

Daha fazla rehber

  1. Mermaid sözdizimi kopya kağıdı

    Düğüm şekilleri, oklar, alt grafikler ve stil tek sayfada — artı mermaid'in render ettiği her diyagram türünden çalışan bir örnek.

Editörü açın. Ücretsiz — kayıt yok.

Boş bir tuval, bir kod sekmesi ve her dışa aktarma seçeneği — ücretsiz, tarayıcınızda, şimdi.