วิธีที่ดีที่สุดในการสร้าง UML จากภายใน Emacs


19

มีพวงของการเป็นตัวเลือกที่บูรณาการระหว่าง Emacs และ UML เครื่องมือเช่นorg-mode's plantumlฝังเป็นplantumlโหมดที่สำคัญฯลฯ แน่นอนฉันจะลองพวกเขาออก แต่ฉันสงสัยว่าสิ่งที่คนอื่นใช้สำหรับเวิร์กโฟลว์ UML?

การฝังไว้ในเอกสารอื่นอย่างที่org-modeทำนั้นเป็นความคิดที่ดีหรือเอาท์พุท uml ที่สร้างขึ้นในบัฟเฟอร์อื่นที่อัปเดตสดแล้วก็ดีเช่นกัน ฉันแน่ใจว่าผู้คนที่นั่นมีฟังก์ชั่นเอลลิสสุดน่ารักที่จะทำให้สิ่งนี้เป็นแบบอัตโนมัติ!


1
ค่อนข้างช้าไปงานเลี้ยง แต่คำถามนี้เพิ่งได้รับแรงกระแทกจากคำตอบบางอย่าง คุณสามารถตั้งคำถามให้แยกออกจากกันและให้ความสำคัญกับปัญหาได้มากกว่านี้หรือไม่? ตอนนี้ "สิ่งที่คนอื่นใช้" จะขอคำตอบจากความคิดเห็นที่แตกต่างกันมากมายและการตอบคำถามประเภทนี้ไม่เหมาะกับเว็บไซต์นี้
ด่าน

สวัสดี @Dan ฉันไม่ได้คัดค้านการแก้ไขคำถาม (ซึ่งคุณบอกว่าเป็นเรื่องเก่า) แต่คนที่ระบุว่าสิ่งที่พวกเขาใช้นั้นเป็นความจริงไม่ใช่ความคิดเห็น (แม้ว่าความคิดเห็นของพวกเขาจะเกี่ยวข้องกับการตัดสินใจว่าจะใช้) ตัวอย่างเช่นคุณคิดว่าควรถามว่า "โมดูลใดบ้างที่พร้อมใช้งานในการสร้าง UML และคุณสมบัติที่สำคัญ" ฉันไม่สามารถถาม "ฉันจะสร้าง UML จากภายใน Emacs ได้อย่างไร" เนื่องจากตามที่ระบุไว้ฉันได้ทราบคำตอบที่เป็นไปได้หลายข้อสำหรับคำถามนั้น แต่ฉันต้องการปรับปรุงตัวเลือกปัจจุบันของฉัน
Mark Aufflick

@Dan ยังมีคำตอบใดบ้างที่ทำให้เกิดปัญหานี้? ล่าสุดที่ฉันเห็นคือ Dec '14 หรือ upvotes ชนหัวข้อยัง?
Mark Aufflick

คำตอบ:


20

ไม่แน่ใจว่าคุณต้องการแปลง UML จาก / เป็นซอร์สโค้ดเป็นต้น แต่ถ้าคุณต้องการสร้างและบำรุงรักษาด้วยมือให้ใช้plantumlหิน!

ตัวอย่าง Plantuml อย่างง่ายของแผนภาพลำดับ:

Bob -> Alice : hello

แสดงผลลัพธ์ของตัวอย่าง plantuml อย่างง่าย

ฉันกำลังประสบความสำเร็จในการใช้org-babelด้วยplantuml(และ gnuplot และ ditaa และ ... ) แผนภาพ ฯลฯ ธิเช่นเสน่ห์เมื่อตั้งค่าและการแสดงผล HTML เกินไปดูน่ากลัวเมื่อคุณใช้คนใดคนหนึ่งของorg-modeแผ่นสไตล์ออกมี

ดูเพิ่มเติมการสร้าง Emacsของ Zeekat สำหรับฉันเกี่ยวกับวิธีการตั้งค่าorg-babelและสารพัด Emacs อื่น ๆ อีกมากมาย

จากนั้นก็มีจุดของกราฟวิซซึ่งฉันกำลังจะตรวจสอบและในขณะที่ไม่เฉพาะเจาะจงกับ UML ก็สามารถใช้ใน Emacsเพื่อทำไดอะแกรม UMLy

ตัวอย่างจุดง่าย ๆ :

graph graphname { 
                a -- b; 
                b -- c;
                b -- d;
                d -- a;
        }

แสดงผลลัพธ์ของตัวอย่างจุดง่าย ๆ

และในขณะที่เราอยู่ที่นี่แม้ว่าจะไม่เกี่ยวข้องกับ UML เลยorg-babel-gnuplotแสดงวิธีการใช้gnuplot ที่หลากหลายมากใน Emacs


7

wsd-modeฉันเพิ่งจะเสียงดังตุ๊ดฮอร์นของตัวเองและกล่าวถึง นอกจากนี้ยังมีการสนับสนุนบางส่วนorg-babelซึ่งหมายความว่าคุณสามารถฝัง UML ของคุณในเอกสารโหมดองค์กรและส่งออกผลลัพธ์ไปยังเอกสาร HTML ที่ถูกต้องหรือคล้ายกัน

เมื่อเปรียบเทียบกับplantuml-modeการสนับสนุนสำหรับการเน้นไวยากรณ์และการเยื้องเป็นสิ่งที่เหนือกว่าอย่างชัดเจนและเป็นกลาง นอกจากนี้ยังรวมอย่างสวยงามด้วยและflycheckcompany-mode

หากคุณคิดว่าสิ่งที่ "เล็ก" เหล่านั้นสำคัญwsd-modeอาจเหมาะสำหรับคุณ

แตกต่างจากplantuml-modeมันไม่ได้ขึ้นอยู่กับ Java หรือไบนารีอื่น ๆ แต่แทนที่จะใช้เว็บเซอร์ SaaS เพื่อสร้างไดอะแกรม

สิ่งนี้ทำให้การใช้งานแบบ plug-and-play และพกพามากขึ้นและสำหรับใครบางคนนี่อาจเป็นแบบที่ดีกว่า แต่การจับก็คือคุณต้องออนไลน์เพื่อให้มันทำงานได้



3

[คำเตือน] การพึ่งพาเมาส์

artist-mode+ เกี่ยวกับditaaอะไร

artist-mode- ลิ้นชักใช้เมาส์ในสไตล์ ASCII เช่นMonodrawแบบอะนาล็อกที่เรียบง่ายสำหรับ macOS เมื่อออกจากเรามีไฟล์ข้อความในกราฟ ASCII

ditaa - สามารถแปลงไฟล์ข้อความ ur เป็นรูปภาพ / html เป็นต้น

มันมีประโยชน์สำหรับการเริ่มใช้ emacs สำหรับการสร้าง UML แต่วิธีนี้ใช้เมาส์อย่างแรง อย่างไรก็ตามฉันเกลียดเมาส์เหมือนผู้ใช้ emacs ส่วนใหญ่และฉันใช้plantUMLในโหมด org มันเป็นเครื่องมือที่มีประโยชน์และเป็นมิตรกับแป้นพิมพ์สำหรับสไตล์ใด ๆ

ตัวอย่าง usecase

Artis โหมด

ditaa


แล้วพวกเขาล่ะ? โปรดแสดงความสัมพันธ์กับคำถาม มิฉะนั้นความเสี่ยงนี้จะถูกลบเป็น "คำตอบสำหรับลิงก์เท่านั้น" ขอบคุณ.
ดึง

@ ดึงฉันไม่รู้วิธีแสดงในรูปแบบ SO ฉันแค่เพิ่มตัวอย่างวิดีโอที่ก่อตั้งขึ้นใน youtube
Bimawa

โปรดอธิบายสิ่งที่คุณคิดว่าสิ่งเหล่านี้มีให้เพื่อตอบคำถาม
ดึง

@ ดึงโปรดตรวจสอบฉันอีกครั้ง
Bimawa

ตกลงขอบคุณที่ใช้ความพยายาม ฉันหวังว่ามันจะชัดเจนสำหรับผู้อ่านบางคน
ดึง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.