我曾見過UML在過去幾年中提到過幾個地方,但從未有過令人信服的理由在目前的工作中使用它。花時間和精力去學習它有什麼價值嗎? (我是Ruby on Rails開發人員。)學習UML有什麼價值嗎?
編輯:我還在尋找關於UML如何在您的項目中發揮作用的故事,以便讓我瞭解如何使用它。
我曾見過UML在過去幾年中提到過幾個地方,但從未有過令人信服的理由在目前的工作中使用它。花時間和精力去學習它有什麼價值嗎? (我是Ruby on Rails開發人員。)學習UML有什麼價值嗎?
編輯:我還在尋找關於UML如何在您的項目中發揮作用的故事,以便讓我瞭解如何使用它。
是的。這是系統分析和設計的國際標準方法。從最初的分析階段到項目生命週期,UML提供了一個關於去哪裏以及如何到達的良好路線圖。一些好處:
您是否認爲如果不瞭解UML,可以成爲一名優秀的開發人員?我已經編寫了幾年,並試圖成長爲程序員,並試圖弄清程序員如何思考。我從來沒有讀過任何程序員說他們使用UML,但我在項目管理上下文中讀了很多。 – picardo 2010-09-21 08:17:55
UML將擴大您在架構層面的理解。如果您在開始編碼之前確定關鍵組件及其關係,您將能夠設計出高效的代碼。 – 2010-09-21 08:25:23
@picardo - 是的,你可以成爲一名優秀的開發人員。瞭解UML並能夠將代碼映射到它(反之亦然)使您能夠向架構學習。我並不是說UML讓你成爲架構師,但它讓你開始思考。 – 2010-09-21 08:26:34
沒有,節省您的時間,交流思想,不學習它。如果你是一個編碼人員並且獨自工作,並且是一個非常小心的人,你可以完全忽略UML。
但是,如果您與其他人一起工作並且想要分享您工作的結果,UML是一種統一語言,即使非技術客戶也理解(在某個級別上)的通用語言。
即使是獨立的編碼員也應該學習UML,除非你獨自一人坐在與外界無關的房間裏:-) – 2010-09-21 08:16:58
我認爲這是一個兩維度的尺度問題:問題的大小和團隊的規模。
當設計達到一定的尺寸時,圖表變得有兩種用處:首先,它們可以幫助您推理設計問題。其次他們幫助您將設計傳達給其他詩人。
因此,如果團隊說20或30,它確實有助於有一些清晰的整體設計文件。我個人使用的UML大概是每年四到五次,但是當我需要它的時候,我真的需要它。確定你自己的標準圖表技術確實更好。有了很好的工具,它非常輕鬆。
我會說我只使用UML,類圖和偶爾的協作圖的一小部分。
是和否。
是,學習基礎知識。快速瀏覽different diagram types等,並有一個大概的想法。當有人吹噓UML時,這將有助於消除你的猶豫。
否,如果您的工作不需要使用UML,則不一定需要知道UML才能編寫出好的應用程序。如果你需要在白板上討論一些東西,只需畫幾圈。那會做。
它只幫助我製作文件給管理層,讓他們留下一點印象。除此之外,我只找到deployment diagrams有點用處,就這些。
如果您將UML看作是一種純粹的圖形化語言,那麼您只需考慮它的一小部分。您應該將UML看作模型驅動架構框架的主要語言,該架構在Eclipse中很好地實現。 在Eclipse中,UML(正確)被認爲是平臺獨立語言,具有由MOF(ECORE在Eclipse中)定義的實體語法和由UML規範(http://www.omg.org/spec/UML)定義的語義。 在Eclipse中,OMG爲Model To Text和Model to Model轉換規範定義了兩種主要語言,分別是MOFM2T(Eclipse中的ACCELEO)和QVT。 另外Eclipse提供了一個對象約束語言(OCL)的實現,它被QVT和MOFM2T用來評估模型上的查詢。所有這一切意味着您可以使用Eclipse插件的形式輕鬆定義您自己的模型到文本和模型到模型的轉換,從而將您的UML模型轉換爲您需要的任何模型。 現在我用它自動生成數以千計的LOC,文檔和測試,並獲得令人印象深刻的投資回報。 但是我知道大多數人甚至不知道UML是一種語言,但認爲它只是一些小圖片。
看這一段簡單的例子鏈接
http://lowcoupling.com/post/46522537374/the-model-driven-architecture
http://lowcoupling.com/post/47800863669/qvt-in-place-transformations
http://lowcoupling.com/post/47347056110/models-to-text-transformations-with-mofm2t-and-acceleo
不可能有一個正確回答這個問題,建議將其刪除或編輯它,並勾選「社區維基「。 Re *「我還在尋找關於UML如何改變項目的故事,以便讓我瞭解如何使用它。」* StackOverflow [不是討論站點](http:// stackoverflow。 COM /常見問題),你可能會更好張貼到一個。 – 2010-09-21 08:13:09
好的。我把它變成了一個社區wiki。 – picardo 2010-09-21 08:20:20