Read this post in: de_DEen_USes_ESfr_FRid_IDjapl_PLpt_PTru_RUvizh_CNzh_TW

VPASCode PlantUML Playbook संदर्भ गाइड

VPASCode PlantUML Playbook से चयनित लेख सूची जिसमें UML और गैर-UML आरेख-कोड कार्यप्रणाली के लिए सिंटैक्स गाइड शामिल हैं।


PlantUML कोर और सिंटैक्स बेसिक्स

  1. PlantUML सिंटैक्स बेसिक्स: आरेख घोषणा के साथ प्लांटयूएमएल सिंटैक्स के आधारभूत तत्वों को समझें@startuml/@enduml, एंटिटी परिभाषाएं, संबंध संचालक, स्टाइलिंग निर्देश और सामान्य कीवर्ड। साफ, पढ़ने योग्य प्लांटयूएमएल स्क्रिप्ट्स को संरचित करने का तरीका सीखें जो स्वचालित रूप से पेशेवर आरेख बनाती हैं। [[34]]

  2. PlantUML उपयोग केस आरेख सिंटैक्स गाइड: प्लांटयूएमएल उपयोग केस आरेख का उपयोग करके कार्यात्मक आवश्यकताओं और एक्टर बातचीत को मॉडल करना सीखें। एक्टर, उपयोग केस, सिस्टम सीमाएं, शामिल/विस्तार संबंध और सामान्यीकरण पैटर्न को कवर करता है आवश्यकता दस्तावेजीकरण और उपयोगकर्ता कहानी मैपिंग के लिए।

  3. PlantUML क्लास आरेख सिंटैक्स गाइड: प्लांटयूएमएल क्लास आरेख का उपयोग करके स्थिर सिस्टम संरचना डिज़ाइन करें। क्लास/एट्रिब्यूट/मेथड घोषणाओं, दृश्यता संशोधक, विरासत (<|--), संघटन (*--), समावेश (o--), और संबंध संबंध ऑब्जेक्ट-ओरिएंटेड आर्किटेक्चर दस्तावेजीकरण के लिए। [[49]]

  4. PlantUML अनुक्रम आरेख सिंटैक्स गाइड: सिस्टम घटकों के बीच संदेश प्रवाह और समय संबंधी बातचीत को मॉडल करें। सहभागी घोषणाओं, समकालिक/असमकालिक संदेशों (->-->), एक्टिवेशन बार, लूप, अल्ट/एल्स ब्लॉक और API डिज़ाइन और माइक्रोसर्विस संचार आरेख के लिए सृजन/निष्क्रियता सिंटैक्स सीखें। [[51]]

  5. PlantUML गतिविधि आरेख सिंटैक्स गाइड: प्लांटयूएमएल के गतिविधि आरेख सिंटैक्स का उपयोग करके व्यापार प्रक्रियाओं और एल्गोरिदमिक वर्कफ्लो को दृश्याकृत करें। स्टार्ट/एंड नोड्स, क्रियाएं, शर्ती शाखाएं (if/then/else), लूप (repeat/while), समानांतर शाखाएँ, और प्रक्रियात्मक तर्क दस्तावेजीकरण के लिए विभाजित स्विमलेन के लिए। [[46]]

  6. PlantUML राज्य आरेख सिंटैक्स गाइड: सीमित राज्य मशीन और वस्तु जीवनचक्र संक्रमण के मॉडल के लिए। राज्य घोषणाओं, संक्रमण तीर (-->), प्रवेश/निकास क्रियाएँ, संयुक्त राज्य, और घटना-आधारित प्रणाली डिज़ाइन और व्यवहार विवरण के लिए समानांतर क्षेत्रों के लिए। [[36]]

  7. PlantUML वस्तु आरेख सिंटैक्स गाइड: एक विशिष्ट क्षण पर वस्तु के वास्तविक उदाहरणों और उनके रनटाइम संबंधों को दर्शाएँ। डिबगिंग और परीक्षण परिदृश्य दृश्यीकरण के लिए वस्तु नामकरण, विशेषता मान निर्धारण, लिंक सिंटैक्स, और उदाहरण-स्तरीय संबंधों को सीखें। [[15]]

  8. PlantUML घटक आरेख सिंटैक्स गाइड: घटकों, इंटरफेस और निर्भरताओं के साथ मॉड्यूलर सॉफ्टवेयर आर्किटेक्चर को मैप करें। घटक घोषणाओं, प्रदान की गई/आवश्यक इंटरफेस (<>), निर्भरता तीर, और माइक्रोसर्विसेज और प्लगइन-आधारित प्रणाली दस्तावेजीकरण के लिए पैकेज समूहन के लिए। [[35]]


उन्नत PlantUML आरेख प्रकार

  1. PlantUML डेप्लॉयमेंट आरेख सिंटैक्स गाइड: भौतिक बुनियादी ढांचे और रनटाइम डेप्लॉयमेंट टोपोलॉजी के मॉडल के लिए। मास्टर नोडबादलफ्रेमडेटाबेस, और कलाकृति तत्व, नेस्टेड कंटेनर सिंटैक्स, और डेवोप्स रनबुक्स और क्लाउड आर्किटेक्चर आरेखों के लिए नेटवर्क प्रोटोकॉल लेबलिंग के लिए। [[31]]

@startuml
skinparam shadowing false
skinparam defaultFontName "Arial"

' शैली परिभाषित करें
skinparam node {
BackgroundColor #F1F8FF
BorderColor #005CC5
FontColor #032F62
}

skinparam database {
BackgroundColor #FFF5E6
BorderColor #D96F00
FontColor #5C3000
}

skinparam artifact {
BackgroundColor #E6FFF1
BorderColor #008670
FontColor #004D40
}

बाएं से दाएं दिशा

' नेटवर्क क्षेत्र / नोड्स
node "सामग्री वितरण नेटवर्क" as cdn <<CDN>> {
artifact "कैश किए गए स्थिर संसाधन" as static
}

node "लोड बैलेंसर" as lb <<F5 / HAProxy>>

node "एप्लिकेशन सर्वर" as appServer <<Ubuntu Linux>> {
node "डॉकर कंटेनर" as docker {
artifact "app.war" as artifactApp
}
}

node "डेटाबेस सर्वर" as dbServer <<क्लस्टर>> {
database "उत्पादन DB" as db <<PostgreSQL>>
}

' प्रोटोकॉल लेबल के साथ संबंध
cdn --> lb : HTTP/HTTPS (पोर्ट 443)
lb --> artifactApp : HTTP (पोर्ट 8080)
artifactApp --> db : JDBC / SQL (पोर्ट 5432)

@enduml

उदाहरण: क्लासिक तीन-स्तरीय आर्किटेक्चर जो CDN, लोड बैलेंसर, नेस्टेड कलाकृति वाले एप्लिकेशन सर्वर, और प्रोटोकॉल-लेबल वाले संबंधों वाले डेटाबेस स्तर को दर्शाता है। [[1]]

@startuml

skinparam shadowing false

skinparam defaultFontName "Arial"

skinparam linetype ortho

' शैली परिभाषाएँ

skinparam rectangle {

    BackgroundColor #F4F6F9

    BorderColor #A0AAB2

    FontColor #232F3E

}

skinparam node {

    BackgroundColor #E2F3FC

    BorderColor #4A90E2

    FontColor #111111

}

skinparam database {

    BackgroundColor #FFF2E6

    BorderColor #FF9900

    FontColor #232F3E

}

' इंफ्रास्ट्रक्चर एंट्री पॉइंट

node "AWS Route 53" as dns

node "AWS एप्लिकेशन लोड बैलेंसर" as alb

dns --> alb : ट्रैफिक रूट करें

' ग्लोबल क्लाउड परिधि

rectangle "AWS क्लाउड क्षेत्र" {

   

    ' क्रॉस-AZ कुबेरनेटीज़ क्लस्टर सीमा

    rectangle "Amazon EKS क्लस्टर" as eks {

       

        ' उपलब्धता क्षेत्र 1

        rectangle "उपलब्धता क्षेत्र us-east-1a" as az1 #line.dashed {

            node "EC2 वर्कर नोड (AZ1)" as node1 {

                rectangle "फ्रंटएंड पॉड" as podWeb1 <<K8s पॉड>> {

                    artifact "Nginx कंटेनर" as containerWeb1

                }

                rectangle "बैकएंड API पॉड" as podApi1 <<K8s पॉड>> {

                    artifact "Go एप्लिकेशन कंटेनर" as containerApi1

                }

            }

        }

        ' उपलब्धता क्षेत्र 2

        rectangle "उपलब्धता क्षेत्र us-east-1b" as az2 #line.dashed {

            node "EC2 वर्कर नोड (AZ2)" as node2 {

                rectangle "फ्रंटएंड पॉड" as podWeb2 <<K8s पॉड>> {

                    artifact "Nginx कंटेनर" as containerWeb2

                }

                rectangle "बैकएंड API पॉड" as podApi2 <<K8s पॉड>> {

                    artifact "Go एप्लिकेशन कंटेनर" as containerApi2

                }

            }

        }

    }

    ' साझा डेटाबेस स्तर

    rectangle "Amazon Aurora स्टोरेज इंजन" as storage {

        database "Aurora मुख्य (लेखक)" as dbMaster

        database "Aurora प्रतिलिपि (पाठक)" as dbReplica

    }

}

' रूटिंग & ट्रैफिक मैट्रिक्स

alb --> podWeb1 : HTTP/S (पोर्ट 80/443)

alb --> podWeb2 : HTTP/S (पोर्ट 80/443)

podWeb1 --> podApi1 : gRPC (पोर्ट 50051)

podWeb2 --> podApi2 : gRPC (पोर्ट 50051)

podApi1 --> dbMaster : TCP (पोर्ट 5432)

podApi2 --> dbMaster : TCP (पोर्ट 5432)

dbMaster .right.> dbReplica : स्टोरेज स्वचालित प्रतिलिपि बनाएं

@enduml

उदाहरण: AWS उपलब्धता क्षेत्रों के माध्यम से क्लाउड-मूल एप्लिकेशन के साथ लोड बैलेंसर रूटिंग, पॉड नेस्टिंग, और साझा डेटाबेस क्लस्टर के साथ Kubernetes डेप्लॉयमेंट। [[1]]

  1. PlantUML समय आरेख सिंटैक्स गाइड: रेखीय समय रेखाओं के साथ सटीक स्थिति अवधियों और समय संबंधी सीमाओं को दृश्याकृत करें। सीखें टिकाऊ/संक्षिप्त भागीदार शैलियाँ, @समयबिंदु स्थिति निर्धारण, घड़ी तरंग आकृति उत्पादन, और <-> एम्बेडेड सिस्टम और प्रोटोकॉल विवरण के लिए सीमा अनुमान। [[30]]

@startuml
skinparam handwritten false
skinparam shadowing false
skinparam defaultFontName "Arial"

' समय आरेख का शीर्षक
title डेटा बस रजिस्टर सिंक्रोनाइजेशन समय रेखा

' आवर्ती घड़ी तरंग आकृति परिभाषित करें (अवधि 10 इकाइयाँ, उच्च 5 इकाइयाँ)
clock "सिस्टम घड़ी" के रूप में CLK अवधि 10 पल्स 5 के साथ

' डेटा बस टिकाऊ भागीदार परिभाषित करें
टिकाऊ "डेटा बस रजिस्टर" के रूप में BUS

' समय 0: रजिस्टर की प्रारंभिक स्थिति
@0
BUS खाली है

' समय 10: डेटा बस पढ़ने में स्थानांतरित होता है
@10
BUS पढ़ रहा है

' समय 20: डेटा बस लिखने में स्थानांतरित होता है
@20
BUS लिख रहा है

' समय 22: समय रेखा पर कस्टम पाठ लेबल प्रदर्शित करें
@22
note top of BUS : T_WRITE

' समय 30: डेटा बस तकनीकी बंद हो जाता है
@30
BUS तकनीकी बंद है

' समय 35: समय रेखा पर कस्टम पाठ लेबल प्रदर्शित करें
@35
note top of BUS : T_LOCK

' समय 40: डेटा बस खाली हो जाता है
@40
BUS खाली है

' स्पष्ट संख्यात्मक बिंदुओं का उपयोग करके समय सीमा अनुमान जोड़ें
@22 <-> @35 : {13 TU अवधि}

@enduml

उदाहरण: संक्षिप्त समय रेखा जो डेटा बस रजिस्टर स्थितियों (खाली → पढ़ना → लिखना → बंद) को आवर्ती सिस्टम घड़ी तरंग आकृति के साथ सिंक्रनाइज़ करती है। [[12]]

@startuml

skinparam shadowing false

skinparam defaultFontName "Arial"

' बहु-थ्रेड समय आरेख का शीर्षक

title वेब क्लाइंट और प्रमाणीकरण कर्मचारी थ्रेड सिंक्रोनाइजेशन

' टिकाऊ भागीदार शैली का उपयोग करके समय रेखाओं की घोषणा करें

टिकाऊ "वेब क्लाइंट थ्रेड" के रूप में CLIENT

टिकाऊ "प्रमाणीकरण कर्मचारी थ्रेड" के रूप में AUTH

' समय 0ms: प्रारंभिक अनागत अवस्थाएँ

@0

CLIENT अनागत है

AUTH अनागत है

' समय 10ms: क्लाइंट प्रमाणीकरण अनुरोध उत्पन्न करता है

@10

CLIENT "प्रमाणीकरण के प्रतीक्षा में" है

AUTH "प्रमाण पत्र की जांच कर रहा है"

' समय 25ms: क्लाइंट अतिरिक्त पेलोड भेजता है / प्रमाणीकरण टोकन उत्पादन शुरू करता है

@25

AUTH "JWT टोकन उत्पन्न कर रहा है"

' समय 40ms: प्रमाणीकरण टोकन उत्पादन पूरा करता है और क्लाइंट को प्रतिक्रिया देता है

@40

AUTH अनागत है

CLIENT "प्रमाणित" है

' समय 55ms: क्लाइंट डिफ़ॉल्ट अवस्था में लौटता है

@55

CLIENT अनागत है

' 30ms समय सीमा विंडो अनुमान (प्रारंभ @10 से @40 तक)

@10 <-> @40 : {30ms उत्पादन विंडो}

@enduml

उदाहरण: टिकाऊ बहु-थ्रेड समय रेखा जो वेब क्लाइंट और प्रमाणीकरण कर्मचारी अवस्थाओं को 30ms उत्पादन विंडो सीमा अनुमान के साथ मैप करती है। [[12]]

  1. PlantUML एरडी सिंटैक्स गाइड: डेटाबेस स्कीमा दस्तावेजीकरण के लिए एंटिटी-रिलेशनशिप आरेख डिज़ाइन करें। एंटिटी घोषणाओं, विशेषता प्रकार, प्राथमिक/पराम्परिक की नोटेशन और कार्डिनैलिटी संबंधों को सीखें (1|o--o{) डेटा मॉडलिंग और SQL माइग्रेशन योजना के लिए।

  2. PlantUML ArchiMate आरेख सिंटैक्स गाइड: ArchiMate निर्देशानुसार एंटरप्राइज आर्किटेक्चर परतों को मॉडल करें। व्यवसाय/एप्लिकेशन/तकनीक परत तत्वों, प्रेरणा अवधारणाओं और संबंध प्रकारों को सीखें जो रणनीतिक आईटी योजना और शासन दस्तावेजीकरण के लिए हैं।

  3. PlantUML C4 मॉडल सिंटैक्स गाइड: सॉफ्टवेयर आर्किटेक्चर दृश्यीकरण के लिए C4 मॉडल को लागू करें चार स्तरों पर: संदर्भ, कंटेनर, घटक, और कोड। मास्टर व्यक्तिप्रणालीकंटेनर, और घटक स्टेरियोटाइप्स सीमा कंटेनर और हितधारक-समर्थित आर्किटेक्चर संचार के लिए संबंध शैली के साथ।


एम्बेडेड डायग्राम्स पर नोट: VPASCode दस्तावेज़न में सभी PlantUML कोड उदाहरण ब्राउज़र में सीधे इंटरैक्टिव, संपाद्य डायग्राम के रूप में रेंडर होते हैं। ऊपर दिए गए PNG छवि लिंक उदाहरण डायग्राम के स्थिर प्रीव्यू दिखाते हैं; पूर्ण इंटरैक्टिविटी, लाइव संपादन, सिंटैक्स सत्यापन और PNG/SVG में निर्यात के लिए, प्रत्येक लेख के URL को सीधे vpascode.com/docs. [[54]]

VPasCode संपादक विशेषताएं: प्रत्येक लेख में “VPasCode में PlantUML संपादित करें” बटन शामिल हैं जो कोड उदाहरण को VPasCode के मुक्त, ब्राउज़र-आधारित संपादक में लॉन्च करते हैं—लॉगिन या स्थापना की आवश्यकता नहीं है। बदलाव तत्काल रूप से रियल-टाइम रेंडरिंग के साथ प्रीव्यू दिखाते हैं। [[54]]


संदर्भ VPASCode दस्तावेज़न से संकलित। VPasCode एक मुक्त, ऑनलाइन, ब्राउज़र-आधारित संपादक है जो PlantUML, Mermaid और Graphviz डायग्राम के लिए है जिसमें लॉगिन या स्थापना की आवश्यकता नहीं है। [[54]]

Leave a Reply