# Personal Project(UML Editor) [toc] ## 作業要求 1. 用 java swing 實作出 UML editor (spec 如附件) 2. project 中線的圖案形狀請符合 spec 圖中的樣子  3. 在 3/30(四) 當週的某天,會在物件導向實驗室 (B224) 進行期中 project 的 demo,屆時會公告表單讓大家預約時間 4. 請在 demo 前上傳程式碼到期中 project 繳交區 5. 期中 demo 評分標準為功能是否符合 spec,並不會評程式碼的好壞 ## Spec 規格書 ## 推薦資源 ### 影片 - [Java GUI: Full Course ☕ (FREE)](https://www.youtube.com/watch?v=Kmgo00avvEw) - [Demo 參考影片](https://www.youtube.com/watch?v=2K26x_kmf9Q) ### GitHub - https://github.com/haVincy/UML-Editor - https://github.com/IndependenceTW/UML-Editor-With-OO ### 其他 - [Java.awt.graphics 簡介](http://dns2.asia.edu.tw/~wzyang/slides/Java_net/bg2.pdf) ## Project classes ### Objects UML ![](https://i.imgur.com/vkagpzJ.png) ### Examples ```=java public class canvas { public static canvas = null; public static canvas get_canvas() { if (canvas == null) { canvas = new canvas(); } return canvas; } } public class menu_bar { public canvas canvas; public menu_bar() { canvas.get_canvas(); } } ``` #### 文字框輸入 ```java String newName = JOptionPane.showInputDialog("Rename the object", "Enter new name:"); ```