{"id":10485,"date":"2026-05-21T19:27:44","date_gmt":"2026-05-21T11:27:44","guid":{"rendered":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/"},"modified":"2026-05-30T15:34:11","modified_gmt":"2026-05-30T07:34:11","slug":"structuring-complexity-a-real-world-implementation-of-uml-package-architecture","status":"publish","type":"post","link":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/","title":{"rendered":"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528"},"content":{"rendered":"<h2 data-nodeid=\"5512\">\u5f15\u8a00<\/h2>\n<p data-nodeid=\"5513\">\u96a8\u8457\u8edf\u9ad4\u7cfb\u7d71\u7684\u7bc4\u570d\u8207\u5718\u968a\u898f\u6a21\u64f4\u5927\uff0c\u67b6\u69cb\u6a21\u578b\u4e0d\u53ef\u907f\u514d\u5730\u8b8a\u5f97\u96e3\u4ee5\u638c\u63a7\u3002\u5716\u8868\u8b8a\u5f97\u96dc\u4e82\uff0c\u547d\u540d\u885d\u7a81\u4e0d\u65b7\u589e\u52a0\uff0c\u6a21\u7d44\u9593\u7684\u4f9d\u8cf4\u95dc\u4fc2\u87ba\u65cb\u5f0f\u64f4\u5c55\uff0c\u5f62\u6210\u96e3\u4ee5\u7ba1\u7406\u7684\u7cfe\u7d50\u72c0\u614b\u3002\u82e5\u7f3a\u4e4f\u6709\u7d00\u5f8b\u7684\u5206\u7d44\u6a5f\u5236\uff0c\u5373\u4f7f\u662f\u6700\u6709\u7d93\u9a57\u7684\u5de5\u7a0b\u5718\u968a\u4e5f\u96e3\u4ee5\u7dad\u6301\u660e\u78ba\u7684\u754c\u9650\u3001\u5f37\u5236\u5c01\u88dd\uff0c\u6216\u9ad8\u6548\u5730\u8b93\u65b0\u6210\u54e1\u878d\u5165\u5718\u968a\u3002<\/p>\n<p class=\"\" data-nodeid=\"5514\">UML 2.0 \u5957\u4ef6\u70ba\u6b64\u6311\u6230\u63d0\u4f9b\u4e86\u6839\u672c\u6027\u7684\u89e3\u6c7a\u65b9\u6848\u3002\u5957\u4ef6\u9060\u4e0d\u6b62\u662f\u7c21\u55ae\u7684\u8996\u89ba\u8cc7\u6599\u593e\uff0c\u800c\u662f\u4f5c\u70ba\u908f\u8f2f\u5bb9\u5668\uff0c\u7528\u4f86\u7ba1\u7406\u547d\u540d\u7a7a\u9593\u3001\u53ef\u898b\u6027\u898f\u5247\u8207\u7d50\u69cb\u5c64\u6b21\u3002\u672c\u6848\u4f8b\u7814\u7a76\u63a2\u8a0e\u4e86\u4e00\u500b\u4e2d\u5927\u578b\u4f01\u696d\u5e73\u53f0\u5982\u4f55\u904b\u7528 UML 2.0 \u5957\u4ef6\u6a5f\u5236\uff0c\u5c07\u539f\u672c\u96f6\u6563\u4e14\u7dca\u5bc6\u8026\u5408\u7684\u6a21\u578b\u8f49\u5316\u70ba\u4e00\u500b\u6574\u5408\u4e14\u53ef\u7dad\u8b77\u7684\u67b6\u69cb\u85cd\u5716\u3002\u900f\u904e\u61c9\u7528\u6838\u5fc3\u5957\u4ef6\u6982\u5ff5\u3001\u95dc\u4fc2\u6620\u5c04\u8207\u81ea\u52d5\u5316\u5716\u793a\u88fd\u4f5c\u5be6\u52d9\uff0c\u5718\u968a\u5efa\u7acb\u4e86\u4e00\u5957\u53ef\u64f4\u5c55\u7684\u8a2d\u8a08\u6846\u67b6\uff0c\u8207\u73fe\u4ee3\u6a21\u7d44\u5316\u958b\u767c\u6d41\u7a0b\u5b8c\u7f8e\u5951\u5408\u3002<\/p>\n<hr class=\"\" data-nodeid=\"5515\"\/>\n<h2 class=\"\" data-nodeid=\"5516\">\u6848\u4f8b\u7814\u7a76\u80cc\u666f\uff1a\u7121\u9650\u8907\u96dc\u6027\u7684\u6311\u6230<\/h2>\n<p class=\"\" data-nodeid=\"5517\"><strong data-nodeid=\"5617\">\u7d44\u7e54\uff1a<\/strong>\u00a0OmniRetail \u7cfb\u7d71<br \/>\n<strong data-nodeid=\"5618\">\u5c08\u6848\uff1a<\/strong>\u00a0\u4e0b\u4e00\u4ee3\u4f9b\u61c9\u93c8\u8207\u76ee\u9304\u5e73\u53f0<br \/>\n<strong data-nodeid=\"5619\">\u521d\u59cb\u72c0\u614b\uff1a<\/strong><br \/>\n\u8a72\u5e73\u53f0\u7684\u67b6\u69cb\u6a21\u578b\u5728\u4e09\u5e74\u9593\u81ea\u7136\u6f14\u9032\u800c\u6210\u3002\u7cfb\u7d71\u5305\u542b\u8d85\u904e 400 \u500b\u985e\u5225\u3001\u6578\u5341\u500b\u4f7f\u7528\u6848\u4f8b\uff0c\u4ee5\u53ca\u5206\u6563\u5728\u4e0d\u540c\u7a0b\u5f0f\u5eab\u4e2d\u7684\u591a\u500b\u76f8\u4e92\u9023\u7d50\u7684\u5716\u793a\u3002\u4e3b\u8981\u75db\u9ede\u5305\u62ec\uff1a<\/p>\n<ul data-nodeid=\"5518\">\n<li data-nodeid=\"5519\">\n<p class=\"\" data-nodeid=\"5520\">\u5b50\u7cfb\u7d71\u9593\u7684\u53ef\u898b\u6027\u5931\u63a7\uff0c\u5c0e\u81f4\u610f\u5916\u7684 API \u66b4\u9732<\/p>\n<\/li>\n<li data-nodeid=\"5521\">\n<p class=\"\" data-nodeid=\"5522\">\u5728\u6574\u5408\u7b2c\u4e09\u65b9\u8a3b\u518a\u8868\u8207\u5167\u90e8\u5e33\u672c\u6642\uff0c\u983b\u7e41\u51fa\u73fe\u547d\u540d\u885d\u7a81<\/p>\n<\/li>\n<li data-nodeid=\"5523\">\n<p data-nodeid=\"5524\">\u96d9\u5411\u4f9d\u8cf4\u95dc\u4fc2\u5c0e\u81f4\u67b6\u69cb\u8026\u5408\uff0c\u4e26\u963b\u7919\u7368\u7acb\u90e8\u7f72<\/p>\n<\/li>\n<li data-nodeid=\"5525\">\n<p class=\"\" data-nodeid=\"5526\">\u5716\u793a\u7b26\u865f\u4e0d\u4e00\u81f4\uff0c\u5c0e\u81f4\u8de8\u5718\u968a\u5be9\u67e5\u5bb9\u6613\u51fa\u932f\u4e14\u8017\u6642<\/p>\n<\/li>\n<\/ul>\n<p class=\"\" data-nodeid=\"5527\"><strong data-nodeid=\"5630\">\u76ee\u6a19\uff1a<\/strong><br \/>\n\u904b\u7528 UML 2.0 \u5957\u4ef6\u539f\u5247\u91cd\u69cb\u7cfb\u7d71\u6a21\u578b\uff0c\u4ee5\u5f37\u5236\u5efa\u7acb\u660e\u78ba\u7684\u754c\u9650\uff0c\u660e\u78ba\u7ba1\u7406\u53ef\u898b\u6027\uff0c\u89e3\u6c7a\u547d\u540d\u7a7a\u9593\u885d\u7a81\uff0c\u4e26\u5efa\u7acb\u53ef\u91cd\u8907\u57f7\u884c\u3001\u4ee5\u5716\u793a\u70ba\u7a0b\u5f0f\u78bc\u7684\u67b6\u69cb\u6587\u4ef6\u5de5\u4f5c\u6d41\u7a0b\u3002<\/p>\n<hr data-nodeid=\"5528\"\/>\n<h2 class=\"\" data-nodeid=\"5529\">\u7b2c\u4e00\u968e\u6bb5\uff1a\u5efa\u7acb\u7d50\u69cb\u908a\u754c<\/h2>\n<p class=\"\" data-nodeid=\"5530\">\u67b6\u69cb\u5718\u968a\u9996\u5148\u61c9\u7528<strong data-nodeid=\"5641\">\u7368\u5360\u64c1\u6709\u898f\u5247<\/strong>\uff1a\u6bcf\u500b\u6a21\u578b\u5143\u7d20\u50c5\u88ab\u5206\u914d\u81f3\u4e00\u500b\u5957\u4ef6\u3002\u6b64\u8209\u6d88\u9664\u4e86\u6a21\u7cca\u7684\u53c3\u8003\uff0c\u4e26\u660e\u78ba\u4e86\u8cac\u4efb\u6b78\u5c6c\u3002\u4ed6\u5011\u8a8d\u77e5\u5230\uff0c\u4e00\u500b<em data-nodeid=\"5642\">\u6a21\u578b<\/em>\u672c\u8eab\u50c5\u662f\u4e00\u500b\u9802\u5c64\u5957\u4ef6\uff0c\u4f5c\u70ba\u6240\u6709\u4e0b\u5c64\u5b50\u5957\u4ef6\u7684\u6839\u5bb9\u5668\u3002<\/p>\n<p class=\"\" data-nodeid=\"5531\">\u95dc\u9375\u7684\u662f\uff0c\u5718\u968a\u5c07\u5957\u4ef6\u8996\u70ba<strong data-nodeid=\"5648\">\u6982\u5ff5\u6027\u908a\u754c<\/strong>\u800c\u975e\u5be6\u969b\u7684\u90e8\u7f72\u55ae\u5143\u3002\u96d6\u7136\u5957\u4ef6\u5f71\u97ff\u6a21\u7d44\u908a\u754c\u8207\u5efa\u69cb\u8a2d\u5b9a\uff0c\u4f46\u4e26\u672a\u5f37\u5236\u8207\u7de8\u8b6f\u5f8c\u7684\u5be6\u9ad4\u5efa\u7acb\u56b4\u683c\u7684\u4e00\u5c0d\u4e00\u5c0d\u61c9\u95dc\u4fc2\u3002\u9019\u7a2e\u5f48\u6027\u4f7f\u5f97\u908f\u8f2f\u5206\u7d44\u80fd\u7368\u7acb\u65bc\u57f7\u884c\u6642\u671f\u57fa\u790e\u67b6\u69cb\u9032\u884c\u6f14\u9032\u3002<\/p>\n<p class=\"\" data-nodeid=\"5532\">\u70ba\u7ba1\u7406\u5716\u793a\u8907\u96dc\u5ea6\uff0c\u5718\u968a\u7d71\u4e00\u63a1\u7528\u4e09\u7a2e UML 2.0 \u8996\u89ba\u7b26\u865f\uff1a<\/p>\n<ol data-nodeid=\"5533\">\n<li data-nodeid=\"5534\">\n<p class=\"\" data-nodeid=\"5535\"><strong data-nodeid=\"5654\">\u6210\u54e1\u96b1\u85cf<\/strong>\uff1a\u7528\u65bc\u9ad8\u968e\u67b6\u69cb\u5be9\u67e5\u3002\u5957\u4ef6\u540d\u7a31\u4f4d\u65bc\u8cc7\u6599\u593e\u4e2d\u592e\uff0c\u96b1\u85cf\u5167\u90e8\u7d30\u7bc0\uff0c\u4ee5\u964d\u4f4e\u8a8d\u77e5\u8ca0\u8377\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5536\">\n<p class=\"\" data-nodeid=\"5537\"><strong data-nodeid=\"5659\">\u6210\u54e1\u65bc\u5167\u90e8\u986f\u793a<\/strong>: \u5728\u5b50\u7cfb\u7d71\u8a2d\u8a08\u6703\u8b70\u671f\u9593\u90e8\u7f72\u3002\u5957\u4ef6\u540d\u7a31\u4f4d\u65bc\u4e0a\u65b9\u6a19\u7c64\u4e2d\uff0c\u5305\u542b\u7684\u5143\u7d20\u5247\u5217\u5728\u8cc7\u6599\u593e\u5167\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5538\">\n<p class=\"\" data-nodeid=\"5539\"><strong data-nodeid=\"5664\">\u5916\u90e8\u986f\u793a\u6210\u54e1<\/strong>: \u7559\u4f5c\u4f9d\u8cf4\u5206\u6790\u4e4b\u7528\u3002\u5143\u7d20\u7e6a\u88fd\u5728\u8cc7\u6599\u593e\u5916\u90e8\uff0c\u900f\u904e\u5c01\u9589\u6846\u5167\u7684\u5be6\u7dda\u9023\u63a5\uff0c\u4ee5\u5f37\u8abf\u8de8\u5957\u4ef6\u4e92\u52d5\u3002<\/p>\n<\/li>\n<\/ol>\n<hr class=\"\" data-nodeid=\"5540\"\/>\n<h2 class=\"\" data-nodeid=\"5541\">\u7b2c\u4e8c\u968e\u6bb5\uff1a\u63a7\u5236\u53ef\u898b\u6027\u8207\u7ba1\u7406\u4f9d\u8cf4<\/h2>\n<p data-nodeid=\"5542\">\u5728\u7d50\u69cb\u6027\u5bb9\u5668\u5230\u4f4d\u5f8c\uff0c\u5718\u968a\u4f7f\u7528UML\u53ef\u898b\u6027\u6a19\u8a18\u5f37\u5236\u57f7\u884c\u56b4\u683c\u7684\u5b58\u53d6\u63a7\u5236\uff1a<\/p>\n<ul data-nodeid=\"5543\">\n<li data-nodeid=\"5544\">\n<p data-nodeid=\"5545\"><strong data-nodeid=\"5675\">\u516c\u958b (<code data-backticks=\"1\" data-nodeid=\"5671\">+<\/code>)<\/strong>: \u61c9\u7528\u65bc\u6709\u610f\u70ba\u4e4b\u66b4\u9732\u4ee5\u9032\u884c\u8de8\u5957\u4ef6\u4e92\u52d5\u7684\u5143\u7d20\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5546\">\n<p data-nodeid=\"5547\"><strong data-nodeid=\"5682\">\u79c1\u6709 (<code data-backticks=\"1\" data-nodeid=\"5678\">-<\/code>)<\/strong>: \u9650\u65bc\u5957\u4ef6\u5167\u90e8\u4f7f\u7528\uff0c\u4fdd\u8b77\u5be6\u4f5c\u7d30\u7bc0\u514d\u65bc\u5916\u90e8\u4f7f\u7528\u8005\u63a5\u89f8\u3002<\/p>\n<\/li>\n<\/ul>\n<p data-nodeid=\"5548\">\u70ba\u7ba1\u7406\u8de8\u5957\u4ef6\u901a\u8a0a\uff0c\u5718\u968a\u4ee5\u660e\u78ba\u7684\u3001\u5177\u6a23\u5f0f\u7684\u4f9d\u8cf4\u95dc\u4fc2\u53d6\u4ee3\u96a8\u610f\u7684\u53c3\u8003\uff1a<\/p>\n<h3 data-nodeid=\"5549\">\u5143\u7d20\u532f\u5165 vs. \u5143\u7d20\u5b58\u53d6<\/h3>\n<p data-nodeid=\"5550\">\u7576\u00a0<code data-backticks=\"1\" data-nodeid=\"5686\">Web\u61c9\u7528\u7a0b\u5f0f\u5f15\u64ce<\/code>\u00a0\u9700\u8981\u76ee\u9304\u8cc7\u6599\u6642\uff0c\u5718\u968a\u4f7f\u7528\u4e86\u00a0<strong data-nodeid=\"5702\"><code data-backticks=\"1\" data-nodeid=\"5689\">\u00ab\u532f\u5165\u00bb<\/code>\u00a0(\u516c\u958b\u532f\u5165)<\/strong>\u00a0\u95dc\u4fc2\u3002\u9019\u6703\u5c07\u516c\u958b\u5143\u7d20\u5982\u00a0<code data-backticks=\"1\" data-nodeid=\"5693\">+Book<\/code>\u00a0\u548c\u00a0<code data-backticks=\"1\" data-nodeid=\"5695\">+Author<\/code>\u00a0\u5f15\u5165\u5230Web\u5c64\uff0c\u81ea\u52d5\u5411\u4e0b\u6e38\u4f7f\u7528\u8005\u516c\u958b\u3002\u76f8\u53cd\u5730\uff0c\u5b89\u5168\u5de5\u5177\u5247\u900f\u904e\u00a0<strong data-nodeid=\"5703\"><code data-backticks=\"1\" data-nodeid=\"5698\">\u00ab\u5b58\u53d6\u00bb<\/code>\u00a0(\u79c1\u6709\u5b58\u53d6)<\/strong>\uff0c\u5141\u8a31Web\u5f15\u64ce\u4f7f\u7528\u4fdd\u96aa\u5eab\u9a57\u8b49\u4f8b\u7a0b\uff0c\u800c\u7121\u9700\u5c07\u5176\u91cd\u65b0\u532f\u51fa\u81f3\u516c\u958b\u4ecb\u9762\u3002<\/p>\n<h3 data-nodeid=\"5551\">\u5957\u4ef6\u532f\u5165<\/h3>\n<p data-nodeid=\"5552\">\u5718\u968a\u4e26\u672a\u9010\u4e00\u532f\u5165\u55ae\u500b\u5143\u7d20\uff0c\u800c\u662f\u5229\u7528\u00a0<strong data-nodeid=\"5712\">\u5957\u4ef6\u532f\u5165<\/strong>\u5728\u5b50\u7cfb\u7d71\u5c64\u7d1a\u3002\u55ae\u4e00<code data-backticks=\"1\" data-nodeid=\"5710\">\u00ab\u532f\u5165\u00bb<\/code>\u5169\u500b\u5957\u4ef6\u8cc7\u6599\u593e\u4e4b\u9593\u7684\u76f8\u4f9d\u6027\u7dda\u689d\uff0c\u8b93\u532f\u5165\u7684\u5957\u4ef6\u80fd\u5c07\u76ee\u6a19\u5957\u4ef6\u7684\u6240\u6709\u516c\u958b\u5167\u5bb9\u8996\u70ba\u672c\u5730\u5ba3\u544a\uff0c\u5927\u5e45\u6e1b\u5c11\u5716\u8868\u96dc\u4e82\u3002<\/p>\n<hr data-nodeid=\"5553\"\/>\n<h2 data-nodeid=\"5554\">\u7b2c\u4e09\u968e\u6bb5\uff1a\u89e3\u6c7a\u547d\u540d\u7a7a\u9593\u885d\u7a81\u8207\u64f4\u5c55\u6846\u67b6<\/h2>\n<p data-nodeid=\"5555\">\u6574\u5408\u671f\u9593\uff0c\u5718\u968a\u9047\u5230\u7d93\u5178\u7684\u547d\u540d\u7a7a\u9593\u885d\u7a81\uff1a\u5169\u500b\u7cfb\u7d71\u7684<code data-backticks=\"1\" data-nodeid=\"5717\">\u5eab\u5b58\u5206\u9304<\/code>\u8207<code data-backticks=\"1\" data-nodeid=\"5719\">\u51fa\u7248\u5546\u8a3b\u518a\u8868<\/code>\u90fd\u5305\u542b\u4e00\u500b\u540d\u70ba<code data-backticks=\"1\" data-nodeid=\"5721\">\u66f8\u7c4d<\/code>.<\/p>\n<p data-nodeid=\"5556\">\u70ba\u4e86\u7dad\u6301\u6a21\u578b\u5b8c\u6574\u6027\uff0c\u4ed6\u5011\u6700\u521d\u63a1\u7528\u4e86<strong data-nodeid=\"5736\">\u5225\u540d<\/strong>\uff0c\u5c07\u5916\u90e8<code data-backticks=\"1\" data-nodeid=\"5728\">\u8a3b\u518a\u8868::\u66f8\u7c4d<\/code>\u5c0d\u61c9\u5230\u672c\u5730\u5225\u540d\uff08<code data-backticks=\"1\" data-nodeid=\"5730\">\u8a3b\u518a\u8868\u66f8\u7c4d<\/code>\uff09\u65bc\u5206\u9304\u5957\u4ef6\u5167\u3002\u96d6\u7136\u529f\u80fd\u4e0a\u6b63\u78ba\uff0c\u4f46\u5718\u968a\u610f\u8b58\u5230\u904e\u5ea6\u4f7f\u7528\u5225\u540d\u6703\u964d\u4f4e\u5716\u8868\u53ef\u8b80\u6027\u3002\u4f9d\u7167\u67b6\u69cb\u6307\u5f15\uff0c\u4ed6\u5011\u6700\u7d42\u9078\u64c7\u76f4\u63a5<strong data-nodeid=\"5737\">\u91cd\u65b0\u547d\u540d<\/strong>\u885d\u7a81\u7684\u985e\u5225\uff0c\u4ee5\u78ba\u4fdd\u9577\u671f\u6e05\u6670\u6027\uff0c\u800c\u975e\u77ed\u671f\u4fbf\u5229\u3002<\/p>\n<p data-nodeid=\"5557\">\u70ba\u4e86\u64f4\u5c55\u6846\u67b6\uff0c\u5718\u968a\u5229\u7528\u4e86<strong data-nodeid=\"5747\">\u5957\u4ef6\u5408\u4f75\uff08<code data-backticks=\"1\" data-nodeid=\"5741\">\u00ab\u5408\u4f75\u00bb<\/code>)<\/strong>\u3002\u9019\u4f7f\u5f97\u57fa\u790e\u57fa\u790e\u8a2d\u65bd\u5957\u4ef6\u80fd\u8de8\u591a\u500b\u67b6\u69cb\u5c64\u7d1a\u5438\u6536\u4e26\u64f4\u5c55\u76ee\u6a19\u5957\u4ef6\u7684\u5167\u5bb9\u3002\u8207\u91cd\u8907\u7d50\u69cb\u7279\u5fb5\u4e0d\u540c\uff0c\u5408\u4f75\u6307\u4ee4\u5728\u5957\u4ef6\u5c64\u7d1a\u7c21\u5316\u4e86\u985e\u4f3c\u7e7c\u627f\u7684\u884c\u70ba\uff0c\u964d\u4f4e\u7dad\u8b77\u8ca0\u64d4\uff0c\u4e26\u78ba\u4fdd\u57fa\u7dda\u5b9a\u7fa9\u7684\u4e00\u81f4\u6027\u3002<\/p>\n<hr data-nodeid=\"5558\"\/>\n<h2 data-nodeid=\"5559\">\u7b2c\u56db\u968e\u6bb5\uff1a\u4f7f\u7528 PlantUML \u81ea\u52d5\u5316\u6587\u4ef6\u7522\u751f<\/h2>\n<p data-nodeid=\"5560\">\u70ba\u4e86\u5f37\u5236\u4e00\u81f4\u6027\u4e26\u5be6\u73fe\u7248\u672c\u63a7\u5236\u7684\u67b6\u69cb\u5716\uff0c\u5718\u968a\u63a1\u7528 PlantUML \u4f5c\u70ba\u5176\u5716\u5f62\u5373\u7a0b\u5f0f\u78bc\u7684\u6a19\u6e96\u3002\u4ee5\u4e0b\u5be6\u4f5c\u5df2\u76f4\u63a5\u6574\u5408\u81f3\u5176 CI\/CD \u7ba1\u9053\u4e2d\uff0c\u4ee5\u9032\u884c\u81ea\u52d5\u5316\u6a21\u578b\u9a57\u8b49\uff1a<\/p>\n<h3 data-nodeid=\"5561\">\u60c5\u5883 A\uff1a\u7d50\u69cb\u6846\u67b6\uff08\u5957\u4ef6\u532f\u5165\u3001\u5b58\u53d6\u8207\u53ef\u898b\u6027\uff09<\/h3>\n<p id=\"nNTTmBa\"><img alt=\"\" class=\"alignnone size-full wp-image-24689\" decoding=\"async\" height=\"528\" loading=\"lazy\" sizes=\"auto, (max-width: 1126px) 100vw, 1126px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png 1126w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1-300x141.png 300w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1-1030x483.png 1030w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1-768x360.png 768w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1-150x70.png 150w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1-400x188.png 400w\" width=\"1126\"\/><\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">PlantUML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com#plantuml:TLF1Rjim3BqRy3yGkQn1sm3RCIY2PiKsxB2jMDRjBCkSBKIM195k4Wpzedt2RlsoqRATECDwCIJoaNplqRebLf7RnkOPROqBAge6Y0yMvHkDxbCMVpAmXsYgcg4q4JKRx_8ipzYmO3TjGGTYR60TTMrOycr4kBXNUgigXAzeLLT1jGaqx-fUmUi5ZEcTuHgCOunEMMYmAJ0IM2CTopmB0sfsfrXPNvscpK0HZD6Rc_VUbXXNA_YLPm3QAYAONRxrVfk0tQ5F0LmQAjmIDgBHLKCeIPd6dgPjrYtNFgP6_N6IlBuNgwJedQkCmuGvY-JPKw_vpKaprNwd5Ga6S3yerruyS4pGfhZinfKgba07nse_SU875h0EmHgTR8N9O4bjC3vYVCcG1yAuGIAfImMJ-y3pE6Q3kes63_11CUxK8U6FmHVwVrUjvRiQTU_wwNfqOVetm2SLWeYbF3inNonMnxKkuVctQOAF_Fmdpvnd115iZTjsCqStFoR4SgBUUYsEeiKcEPe8AWU42A4jnBbJxYBz8rSmx7YUm4NByFdBDmZHF8fwsOsCS3t-VD_pHPwXAw7ZrWayrt6qgnEYj1Qd_oja6BDEYAcGbd1Y-aZwQkHOUabBDuXuZVlW2O5hUOZoN8rmzJidYp5ToJyqR-KYh_il\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u5728 VPasCode \u4e2d\u7de8\u8f2f PlantUML<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">PlantUML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:TLFVRz9G57vlql_XXXSVfYJwk2nakkYp2L6Vk-w6DPIMjCLaCKlSe08170Rf9ZQBCnkGiG6J3HrWbknVaNClVU9VyBP5ViJjfRdttE-SyttVELtL3K4p4Z6Pv_IefCG5JOWXtTYICVjgakW_mSygPDgmro7MDHG_yHpF6PB1C71Uf9q-lReWXrrIouq76JZP7_QxphuzlDaT3x8kz05w74IGDw7O0BFc9EiaKuJI4QsaV33FnGKnAaGm2j2lJIUVcbOD8457Qu8Xo6e4hQoyKEKDh8L2w1tF8IJAWgwZmD8pLOrwGFVWFo6q9EdhoZ8ACmrAP1BoAC_7jkVBF4qOcwhc5VAFSu-FNZ8hMD9p9I8fsCCiH7XksnVw98Y6ls_evpgfVo4zQtHwI3fbk2ZJunuSMqmwCm2QrtT9VuFN4KbdMIuCogJqqUl2Wc6ilSNQVUfVwLWBOrsNLCLBcBjFI4qRG3CBPjsn3foTaeSDOp6XISRMVRLV2mdPMDl4ec_lx3gLwuyPsWL6dETcP8F1q7Hio-Ys8SNYgcRSzdbEKGsCL0N9aX9rM_asGBu5vibuK9cLO1OH-mpiDfX9UlaDUU2zrgYQ0_FCiN9-c2sSD_-7Q38_R-KG6y87cZfYtbCxnr9eROVOJ7sIzM8fY-DaAN_Ux_8SLZQGIy-LjYXbQfIhHH15vkzTMYPTpWzWprhGug_4hCm_xla9rU6l0h6Jq4w3sNNI1MArIUNIiN_Gg-eeVJhgDTnzQNudcIvjjFxZkiekx2_z2m00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\" data-nodeid=\"5562\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nskinparam style strictuml\r\n\u5de6\u5230\u53f3\u65b9\u5411\r\n\r\ntitle \u5b50\u7cfb\u7d71\u67b6\u69cb\uff08\u5957\u4ef6\u95dc\u4fc2\uff09\r\n\r\n' 1. \u5305\u542b\u5167\u90e8\u6210\u54e1\u7684\u5957\u4ef6\r\npackage \"\u76ee\u9304\u5b50\u7cfb\u7d71\" as Catalog &lt;&lt;Folder&gt;&gt; {\r\n  class \"+Book\" as Book {\r\n    +isbn: String\r\n    +title: String\r\n  }\r\n  class \"+Author\" as Author\r\n  class \"-PricingEngine\" as PricingEngine\r\n}\r\n\r\n' 2. \u4f7f\u7528\u6a19\u6e96\u8a9e\u6cd5\u5c55\u793a\u5916\u90e8\u5167\u5bb9\u7684\u5957\u4ef6\r\npackage \"Web \u61c9\u7528\u5f15\u64ce\" as WebServer &lt;&lt;Folder&gt;&gt; {\r\n  class \"UserSession\" as UserSession\r\n}\r\n\r\npackage \"\u5b89\u5168\u9598\u9053\" as Security &lt;&lt;Folder&gt;&gt; {\r\n  class \"VaultCheck\" as VaultCheck\r\n}\r\n\r\n' \u95dc\u4fc2\u5c0d\u61c9\r\nWebServer ..&gt; Catalog : \u00abimport\u00bb\r\nnote on link\r\n  \u5957\u4ef6\u532f\u5165\uff1aWebServer \u7684\u672c\u5730\u5143\u7d20 \r\n  \u53ef\u898b\u516c\u958b\u5143\u7d20\uff08+Book, +Author\uff09\r\n  \u4f46\u7121\u6cd5\u770b\u898b\u79c1\u6709\u5143\u4ef6\uff08-PricingEngine\uff09\u3002\r\nend note\r\n\r\nWebServer ..&gt; Security : \u00abaccess\u00bb\r\nnote on link\r\n  \u79c1\u6709\u5b58\u53d6\uff1aWebServer \u4f7f\u7528 Security \u5143\u7d20\uff0c\r\n  \u4f46\u4e0d\u6703\u5c07\u5176\u91cd\u65b0\u66b4\u9732\u7d66\u81ea\u8eab\u7684\u5ba2\u6236\u7aef\u3002\r\nend note\r\n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:TLFVRz9G57vlql_XXXSVfYJwk2nakkYp2L6Vk-w6DPIMjCLaCKlSe08170Rf9ZQBCnkGiG6J3HrWbknVaNClVU9VyBP5ViJjfRdttE-SyttVELtL3K4p4Z6Pv_IefCG5JOWXtTYICVjgakW_mSygPDgmro7MDHG_yHpF6PB1C71Uf9q-lReWXrrIouq76JZP7_QxphuzlDaT3x8kz05w74IGDw7O0BFc9EiaKuJI4QsaV33FnGKnAaGm2j2lJIUVcbOD8457Qu8Xo6e4hQoyKEKDh8L2w1tF8IJAWgwZmD8pLOrwGFVWFo6q9EdhoZ8ACmrAP1BoAC_7jkVBF4qOcwhc5VAFSu-FNZ8hMD9p9I8fsCCiH7XksnVw98Y6ls_evpgfVo4zQtHwI3fbk2ZJunuSMqmwCm2QrtT9VuFN4KbdMIuCogJqqUl2Wc6ilSNQVUfVwLWBOrsNLCLBcBjFI4qRG3CBPjsn3foTaeSDOp6XISRMVRLV2mdPMDl4ec_lx3gLwuyPsWL6dETcP8F1q7Hio-Ys8SNYgcRSzdbEKGsCL0N9aX9rM_asGBu5vibuK9cLO1OH-mpiDfX9UlaDUU2zrgYQ0_FCiN9-c2sSD_-7Q38_R-KG6y87cZfYtbCxnr9eROVOJ7sIzM8fY-DaAN_Ux_8SLZQGIy-LjYXbQfIhHH15vkzTMYPTpWzWprhGug_4hCm_xla9rU6l0h6Jq4w3sNNI1MArIUNIiN_Gg-eeVJhgDTnzQNudcIvjjFxZkiekx2_z2m00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com#plantuml:TLF1Rjim3BqRy3yGkQn1sm3RCIY2PiKsxB2jMDRjBCkSBKIM195k4Wpzedt2RlsoqRATECDwCIJoaNplqRebLf7RnkOPROqBAge6Y0yMvHkDxbCMVpAmXsYgcg4q4JKRx_8ipzYmO3TjGGTYR60TTMrOycr4kBXNUgigXAzeLLT1jGaqx-fUmUi5ZEcTuHgCOunEMMYmAJ0IM2CTopmB0sfsfrXPNvscpK0HZD6Rc_VUbXXNA_YLPm3QAYAONRxrVfk0tQ5F0LmQAjmIDgBHLKCeIPd6dgPjrYtNFgP6_N6IlBuNgwJedQkCmuGvY-JPKw_vpKaprNwd5Ga6S3yerruyS4pGfhZinfKgba07nse_SU875h0EmHgTR8N9O4bjC3vYVCcG1yAuGIAfImMJ-y3pE6Q3kes63_11CUxK8U6FmHVwVrUjvRiQTU_wwNfqOVetm2SLWeYbF3inNonMnxKkuVctQOAF_Fmdpvnd115iZTjsCqStFoR4SgBUUYsEeiKcEPe8AWU42A4jnBbJxYBz8rSmx7YUm4NByFdBDmZHF8fwsOsCS3t-VD_pHPwXAw7ZrWayrt6qgnEYj1Qd_oja6BDEYAcGbd1Y-aZwQkHOUabBDuXuZVlW2O5hUOZoN8rmzJidYp5ToJyqR-KYh_il\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u5728 VPasCode \u4e2d\u7de8\u8f2f PlantUML<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<h3 data-nodeid=\"5563\">\u60c5\u5883 B\uff1a\u89e3\u6c7a\u547d\u540d\u7a7a\u9593\u885d\u7a81\uff08\u4f7f\u7528\u5225\u540d\u7684\u5143\u7d20\u532f\u5165\uff09<\/h3>\n<p id=\"TcuEGSo\"><img alt=\"\" class=\"alignnone size-full wp-image-24690\" decoding=\"async\" height=\"611\" loading=\"lazy\" sizes=\"auto, (max-width: 569px) 100vw, 569px\" src=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeaff9262e.png\" srcset=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeaff9262e.png 569w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeaff9262e-279x300.png 279w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeaff9262e-140x150.png 140w, https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeaff9262e-400x430.png 400w\" width=\"569\"\/><\/p>\n<div class=\"vpascode-viewer-container vpascode-fancy-active\">\n<div class=\"vpascode-header\">\n<span class=\"vpascode-lang-label\">PlantUML<\/span><br \/>\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com#plantuml:XPB1IWCn48Rl2_iEGoyUr88UIrrgeSA25B5NBzFDT3Sqcop9REjI-aG-WhS-cSbc5Li4Bo6J-PFldv_C7AFbjbPfuhPIDsYn1iUT8hzQMSHMch1aVxHGL9DcoEl6M8Qzv0gMM1CyAeakw1eijbWIZ7AzyqfZEtWcKP8T0RfX2zFfar62R9R18Kq02eNEmMXkp3RAJ84gLB4DSBr7IvLf7Ssncy3AEzDbQ1tJv7Y6VMdNIhhAGrwfb7w4hd_nk_WNlNXdilg2NYgpHfMlvik_s5UGQo5tKhIeBXDgdHS3wXWG54PlPDbQP6bqcWnnZCVPENS2fm_PFt3wVDC7xEy-_0mHD3rP6oPWqu3P3D46NxbsKlZpIZeOSha1YhuSMDfu99j9aDwDlqU_pMBgFWD7308PW-3U2tvZUs6SZGJGOFhi4ca1mLWmEFE5_q1V\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 8px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u5728 VPasCode \u4e2d\u7de8\u8f2f PlantUML<\/span><br \/>\n<\/a>\n<\/div>\n<div class=\"vpascode-code-wrapper\">\n            <div class=\"vpascode-viewer-container vpascode-fancy-active\">\r\n                                <div class=\"vpascode-header\">\r\n                    <span class=\"vpascode-lang-label\">PlantUML<\/span>\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:XP9FIm916CRl2tw75oyT8g6EOOi81K5qg4ymwRGjhZlBxaH9147vBpReO5RY8IDfeJJB2D4YwBCuk-kfhz2Cgv4HT1bcvdrcVi_xpCGiYaowdTP2afLITGEPA0qMpMYOZwQQ24eXYQgKR_NVthsImqvFFEUH5UfYKZbYsKFl-OhP3onR5r839L98mH1ctJlMk62TjjTw3mEoO0Kd5Mn2DBf4j2GsPHdsGX90GaEM1U4u8Qb0HX984wkW332zWqoyHROj74UPULZdndH5bFP3qluaCj_rYWLsblET7iiT-pLdUECQLbJUJkPVzE8knQR-YwveP0Dfo-lnrR_OK-DKXdduJeCrAuE39xzcitAptpcOZ6SKGIGYJxBcuUDEJHl4f1yzVGzfAZUpyErRI8OmdL0Cb1X0DaTf2YkiwhYD6rO_x_TUMFRsyzKEeAwTTr-AdwyL8PgDZFkSaS6jthDgos_dlT8r7ztofP3CSSbFv50QE1VlV5CU73gJPx2U1E59U8ln1VyjNm00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 8px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n                                <div class=\"vpascode-code-wrapper\">\r\n                    <pre class=\"lang-plantuml\" data-nodeid=\"5564\"><code class=\"language-plantuml\" data-language=\"plantuml\" class=\"language-plantuml\">@startuml\r\nskinparam style strictuml\r\n\r\ntitle \u4f7f\u7528\u540d\u7a31\u5225\u540d\u7684\u5143\u7d20\u532f\u5165\r\n\r\npackage \"\u5eab\u5b58\u5e33\u7c3f\" as Ledger &lt;&lt;Folder&gt;&gt; {\r\n  class \"Book\" as LocalBook {\r\n    +warehouseBay: String\r\n  }\r\n}\r\n\r\npackage \"\u51fa\u7248\u5546\u8a3b\u518a\u8868\" as Registry &lt;&lt;Folder&gt;&gt; {\r\n  class \"Book\" as ExternalBook {\r\n    +globalISBN: String\r\n  }\r\n}\r\n\r\n' \u4f7f\u7528\u5225\u540d\u8a2d\u5b9a\u9032\u884c\u55ae\u4e00\u5143\u7d20\u532f\u5165\r\nLedger ..&gt; ExternalBook : \u00abimport\u00bbn{alias = RegistryBook}\r\n\r\nnote top of Ledger\r\n  \u5728\u6b64\u5957\u4ef6\u5167\uff0c\u5143\u7d20\u6307\u6d89\uff1a\r\n  1. \"Book\" -&gt; \u672c\u5730\u8cc7\u7522\u8cc7\u6599\r\n  2. \"RegistryBook\" -&gt; \u532f\u5165\u7684\u5916\u90e8\u8cc7\u7522\u8cc7\u6599\r\nend note\r\n\r\n@enduml\r\n<\/code><\/pre>                <\/div>\r\n                <div class=\"vpascode-actions\">\r\n                    <a href=\"https:\/\/www.vpascode.com#plantuml:XP9FIm916CRl2tw75oyT8g6EOOi81K5qg4ymwRGjhZlBxaH9147vBpReO5RY8IDfeJJB2D4YwBCuk-kfhz2Cgv4HT1bcvdrcVi_xpCGiYaowdTP2afLITGEPA0qMpMYOZwQQ24eXYQgKR_NVthsImqvFFEUH5UfYKZbYsKFl-OhP3onR5r839L98mH1ctJlMk62TjjTw3mEoO0Kd5Mn2DBf4j2GsPHdsGX90GaEM1U4u8Qb0HX984wkW332zWqoyHROj74UPULZdndH5bFP3qluaCj_rYWLsblET7iiT-pLdUECQLbJUJkPVzE8knQR-YwveP0Dfo-lnrR_OK-DKXdduJeCrAuE39xzcitAptpcOZ6SKGIGYJxBcuUDEJHl4f1yzVGzfAZUpyErRI8OmdL0Cb1X0DaTf2YkiwhYD6rO_x_TUMFRsyzKEeAwTTr-AdwyL8PgDZFkSaS6jthDgos_dlT8r7ztofP3CSSbFv50QE1VlV5CU73gJPx2U1E59U8ln1VyjNm00\" \r\n                       target=\"_blank\" \r\n                       rel=\"noopener noreferrer\" \r\n                       class=\"vpascode-fancy-btn\">\r\n                        <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\" style=\"margin-right: 6px;\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg>\r\n                        <span>Edit PlantUML in VPasCode<\/span>\r\n                    <\/a>\r\n                <\/div>\r\n            <\/div>\r\n            \n<\/p><\/div>\n<div class=\"vpascode-actions\">\n<a class=\"vpascode-fancy-btn\" href=\"https:\/\/www.vpascode.com#plantuml:XPB1IWCn48Rl2_iEGoyUr88UIrrgeSA25B5NBzFDT3Sqcop9REjI-aG-WhS-cSbc5Li4Bo6J-PFldv_C7AFbjbPfuhPIDsYn1iUT8hzQMSHMch1aVxHGL9DcoEl6M8Qzv0gMM1CyAeakw1eijbWIZ7AzyqfZEtWcKP8T0RfX2zFfar62R9R18Kq02eNEmMXkp3RAJ84gLB4DSBr7IvLf7Ssncy3AEzDbQ1tJv7Y6VMdNIhhAGrwfb7w4hd_nk_WNlNXdilg2NYgpHfMlvik_s5UGQo5tKhIeBXDgdHS3wXWG54PlPDbQP6bqcWnnZCVPENS2fm_PFt3wVDC7xEy-_0mHD3rP6oPWqu3P3D46NxbsKlZpIZeOSha1YhuSMDfu99j9aDwDlqU_pMBgFWD7308PW-3U2tvZUs6SZGJGOFhi4ca1mLWmEFE5_q1V\" rel=\"noopener noreferrer\" target=\"_blank\"><br \/>\n<svg fill=\"none\" height=\"14\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2.5\" style=\"margin-right: 6px;\" viewbox=\"0 0 24 24\" width=\"14\"><path d=\"M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7\"><\/path><path d=\"M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z\"><\/path><\/svg><br \/>\n<span>\u5728 VPasCode \u4e2d\u7de8\u8f2f PlantUML<\/span><br \/>\n<\/a>\n<\/div>\n<\/div>\n<hr data-nodeid=\"5565\"\/>\n<h2 data-nodeid=\"5566\">\u67b6\u69cb\u6307\u5357\u8207\u7d93\u9a57\u6559\u8a13<\/h2>\n<p data-nodeid=\"5567\">\u5728\u91cd\u69cb\u904e\u7a0b\u4e2d\uff0c\u56db\u9805\u6838\u5fc3\u539f\u5247\u6d6e\u73fe\uff0c\u5c0d\u7dad\u6301\u5957\u4ef6\u67b6\u69cb\u5065\u5eb7\u81f3\u95dc\u91cd\u8981\uff1a<\/p>\n<ol data-nodeid=\"5568\">\n<li data-nodeid=\"5569\">\n<p data-nodeid=\"5570\"><strong data-nodeid=\"5760\">\u7dad\u6301\u7dca\u5bc6\u7684\u7fa4\u7d44\u7d50\u69cb<\/strong>\uff1a\u5957\u4ef6\u540d\u7a31\u4fdd\u6301\u7c21\u77ed\u4e14\u8a9e\u7fa9\u660e\u78ba\u3002\u6bcf\u500b\u5957\u4ef6\u90fd\u6574\u5408\u4e86\u5171\u4eab\u7dca\u5bc6\u6982\u5ff5\u9818\u57df\u7684\u5143\u7d20\uff08\u4f8b\u5982\uff0c\u7279\u5b9a\u4f7f\u7528\u60c5\u5883\u7fa4\u7d44\u3001\u5c40\u90e8\u529f\u80fd\u5b50\u7cfb\u7d71\u6216\u6709\u754c\u4e0a\u4e0b\u6587\uff09\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5571\">\n<p data-nodeid=\"5572\"><strong data-nodeid=\"5767\">\u512a\u5148\u91cd\u547d\u540d\u800c\u975e\u4f7f\u7528\u5225\u540d<\/strong>\uff1a\u96d6\u7136<code data-backticks=\"1\" data-nodeid=\"5765\">{alias = ...}<\/code>\u53ef\u89e3\u6c7a\u7acb\u5373\u7684\u885d\u7a81\uff0c\u4f46\u6703\u589e\u52a0\u8a8d\u77e5\u8ca0\u64d4\u3002\u5718\u968a\u5efa\u7acb\u4e86\u4e00\u9805\u653f\u7b56\uff1a\u5728\u8a2d\u8a08\u968e\u6bb5\u5c31\u91cd\u547d\u540d\u885d\u7a81\u7684\u5143\u7d20\uff0c\u800c\u975e\u5728\u751f\u7522\u5716\u8868\u4e2d\u4f9d\u8cf4\u5225\u540d\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5573\">\n<p data-nodeid=\"5574\"><strong data-nodeid=\"5778\">\u5f37\u5236\u55ae\u5411\u5c64\u7d1a\u7d50\u69cb<\/strong>\uff1a\u5faa\u74b0\u4f9d\u8cf4\uff08<code data-backticks=\"1\" data-nodeid=\"5772\">\u5957\u4ef6 A \u2192 \u5957\u4ef6 B \u2192 \u5957\u4ef6 A<\/code>\uff09\u88ab\u7cfb\u7d71\u6027\u5730\u6d88\u9664\u3002\u6240\u6709<code data-backticks=\"1\" data-nodeid=\"5774\">\u00abimport\u00bb<\/code>\u548c<code data-backticks=\"1\" data-nodeid=\"5776\">\u00abaccess\u00bb<\/code>\u95dc\u4fc2\u5747\u6cbf\u55ae\u4e00\u67b6\u69cb\u65b9\u5411\u6d41\u52d5\uff0c\u78ba\u4fdd\u5c64\u7d1a\u5b8c\u6574\u6027\u4e26\u652f\u63f4\u7368\u7acb\u90e8\u7f72\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5575\">\n<p data-nodeid=\"5576\"><strong data-nodeid=\"5783\">\u512a\u5316 PlantUML \u6392\u7248\u4ee5\u63d0\u5347\u53ef\u8b80\u6027<\/strong>:<\/p>\n<ul data-nodeid=\"5577\">\n<li data-nodeid=\"5578\">\n<p data-nodeid=\"5579\"><code data-backticks=\"1\" data-nodeid=\"5784\">skinparam style strictuml<\/code>\u78ba\u4fdd\u56b4\u683c\u7b26\u5408 UML \u6a19\u6e96\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5580\">\n<p data-nodeid=\"5581\">\u5d4c\u5957\u7684\u5167\u806f\u5957\u4ef6\u660e\u78ba\u5730\u5448\u73fe\u4e86\u5305\u542b\u908a\u754c\u3002<\/p>\n<\/li>\n<li data-nodeid=\"5582\">\n<p data-nodeid=\"5583\">\u65b9\u5411\u6027\u7bad\u982d\uff08<code data-backticks=\"1\" data-nodeid=\"5788\">-\u4e0a-&gt;<\/code>,\u00a0<code data-backticks=\"1\" data-nodeid=\"5790\">-\u53f3-&gt;<\/code>) \u5f37\u5236\u57f7\u884c\u6e05\u6670\u7684\u81ea\u4e0a\u800c\u4e0b\u7684\u6d41\u7a0b\uff0c\u5c07\u5be6\u7528\u7a0b\u5f0f\u5305\u7f6e\u65bc\u9ad8\u968e\u5ba2\u6236\u4e4b\u4e0b\u3002<\/p>\n<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n<hr data-nodeid=\"5584\"\/>\n<h2 data-nodeid=\"5585\">\u7d50\u8ad6<\/h2>\n<p data-nodeid=\"5586\">UML 2.0 \u7a0b\u5f0f\u5305\u6a5f\u5236\u7684\u5be6\u65bd\uff0c\u5c07 OmniRetail \u7684\u67b6\u69cb\u6a21\u578b\u5f9e\u4e00\u500b\u96f6\u6563\u4e14\u7dca\u5bc6\u8026\u5408\u7684\u55ae\u9ad4\u7cfb\u7d71\uff0c\u8f49\u8b8a\u70ba\u7d50\u69cb\u6e05\u6670\u3001\u53ef\u7dad\u8b77\u7684\u85cd\u5716\u3002\u900f\u904e\u5c07\u7a0b\u5f0f\u5305\u8996\u70ba\u6982\u5ff5\u6027\u5bb9\u5668\uff0c\u5f37\u5236\u57f7\u884c\u56b4\u683c\u7684\u53ef\u898b\u6027\u898f\u5247\uff0c\u4e26\u5229\u7528\u660e\u78ba\u7684\u95dc\u4fc2\u6a19\u8a18\uff0c\u5718\u968a\u9054\u6210\u4e86\u6e05\u6670\u7684\u547d\u540d\u7a7a\u9593\u9694\u96e2\uff0c\u964d\u4f4e\u4e86\u610f\u5916\u8026\u5408\uff0c\u4e26\u7c21\u5316\u4e86\u8de8\u5718\u968a\u7684\u5354\u4f5c\u3002<\/p>\n<p class=\"\" data-nodeid=\"5587\">\u66f4\u91cd\u8981\u7684\u662f\uff0c\u900f\u904e PlantUML \u5be6\u73fe\u5716\u5f62\u5373\u7a0b\u5f0f\u78bc\u7684\u8f49\u8b8a\uff0c\u4f7f\u67b6\u69cb\u6cbb\u7406\u5236\u5ea6\u5316\uff0c\u78ba\u4fdd\u7a0b\u5f0f\u5305\u7684\u908a\u754c\u59cb\u7d42\u6e05\u6670\u53ef\u898b\u3001\u7248\u672c\u5316\u4e26\u6301\u7e8c\u9a57\u8b49\u3002\u96a8\u8457\u7cfb\u7d71\u6301\u7e8c\u8b8a\u5f97\u66f4\u70ba\u8907\u96dc\uff0c\u6709\u7d00\u5f8b\u7684\u7a0b\u5f0f\u5305\u67b6\u69cb\u5c07\u59cb\u7d42\u4e0d\u53ef\u6216\u7f3a\u3002\u9019\u4e0d\u50c5\u50c5\u662f\u4e00\u7a2e\u7e6a\u5716\u898f\u7bc4\uff0c\u66f4\u662f\u64f4\u5c55\u8a2d\u8a08\u6e05\u6670\u5ea6\u3001\u652f\u63f4\u6a21\u7d44\u5316\u958b\u767c\uff0c\u4e26\u70ba\u4f01\u696d\u8edf\u9ad4\u751f\u614b\u7cfb\u7d71\u505a\u597d\u672a\u4f86\u6e96\u5099\u7684\u57fa\u790e\u7b56\u7565\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5f15\u8a00 \u96a8\u8457\u8edf\u9ad4\u7cfb\u7d71\u7684\u7bc4\u570d\u8207\u5718\u968a\u898f\u6a21\u64f4\u5927\uff0c\u67b6\u69cb\u6a21\u578b\u4e0d\u53ef\u907f\u514d\u5730\u8b8a\u5f97\u96e3\u4ee5\u638c\u63a7\u3002\u5716\u8868\u8b8a\u5f97\u96dc\u4e82\uff0c\u547d\u540d\u885d\u7a81\u4e0d\u65b7\u589e\u52a0\uff0c\u6a21\u7d44\u9593 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[36],"tags":[],"class_list":["post-10485","post","type-post","status-publish","format-standard","hentry","category-uml","loop-entry","clr"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.3 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/\" \/>\n<meta property=\"og:locale\" content=\"zh_TW\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2\" \/>\n<meta property=\"og:description\" content=\"\u5f15\u8a00 \u96a8\u8457\u8edf\u9ad4\u7cfb\u7d71\u7684\u7bc4\u570d\u8207\u5718\u968a\u898f\u6a21\u64f4\u5927\uff0c\u67b6\u69cb\u6a21\u578b\u4e0d\u53ef\u907f\u514d\u5730\u8b8a\u5f97\u96e3\u4ee5\u638c\u63a7\u3002\u5716\u8868\u8b8a\u5f97\u96dc\u4e82\uff0c\u547d\u540d\u885d\u7a81\u4e0d\u65b7\u589e\u52a0\uff0c\u6a21\u7d44\u9593 [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/\" \/>\n<meta property=\"og:site_name\" content=\"Visual Paradigm \u535a\u5ba2\" \/>\n<meta property=\"article:published_time\" content=\"2026-05-21T11:27:44+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-05-30T07:34:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png\" \/>\n<meta name=\"author\" content=\"Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u4f5c\u8005:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u9810\u4f30\u95b1\u8b80\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 \u5206\u9418\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/\",\"url\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/\",\"name\":\"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2\",\"isPartOf\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png\",\"datePublished\":\"2026-05-21T11:27:44+00:00\",\"dateModified\":\"2026-05-30T07:34:11+00:00\",\"author\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#breadcrumb\"},\"inLanguage\":\"zh-TW\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage\",\"url\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png\",\"contentUrl\":\"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/blog.visual-paradigm.com\/tw\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/#website\",\"url\":\"https:\/\/blog.visual-paradigm.com\/tw\/\",\"name\":\"Visual Paradigm \u535a\u5ba2\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.visual-paradigm.com\/tw\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-TW\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/a649c442f11a53040710ddec750926c6\",\"name\":\"Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-TW\",\"@id\":\"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g\",\"caption\":\"Admin\"},\"url\":\"https:\/\/blog.visual-paradigm.com\/tw\/author\/vpadminuser\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/","og_locale":"zh_TW","og_type":"article","og_title":"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2","og_description":"\u5f15\u8a00 \u96a8\u8457\u8edf\u9ad4\u7cfb\u7d71\u7684\u7bc4\u570d\u8207\u5718\u968a\u898f\u6a21\u64f4\u5927\uff0c\u67b6\u69cb\u6a21\u578b\u4e0d\u53ef\u907f\u514d\u5730\u8b8a\u5f97\u96e3\u4ee5\u638c\u63a7\u3002\u5716\u8868\u8b8a\u5f97\u96dc\u4e82\uff0c\u547d\u540d\u885d\u7a81\u4e0d\u65b7\u589e\u52a0\uff0c\u6a21\u7d44\u9593 [&hellip;]","og_url":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/","og_site_name":"Visual Paradigm \u535a\u5ba2","article_published_time":"2026-05-21T11:27:44+00:00","article_modified_time":"2026-05-30T07:34:11+00:00","og_image":[{"url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png","type":"","width":"","height":""}],"author":"Admin","twitter_card":"summary_large_image","twitter_misc":{"\u4f5c\u8005:":"Admin","\u9810\u4f30\u95b1\u8b80\u6642\u9593":"5 \u5206\u9418"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/","url":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/","name":"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528 - Visual Paradigm \u535a\u5ba2","isPartOf":{"@id":"https:\/\/blog.visual-paradigm.com\/tw\/#website"},"primaryImageOfPage":{"@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage"},"image":{"@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage"},"thumbnailUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png","datePublished":"2026-05-21T11:27:44+00:00","dateModified":"2026-05-30T07:34:11+00:00","author":{"@id":"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/a649c442f11a53040710ddec750926c6"},"breadcrumb":{"@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#breadcrumb"},"inLanguage":"zh-TW","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/"]}]},{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#primaryimage","url":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png","contentUrl":"https:\/\/blog.visual-paradigm.com\/wp-content\/uploads\/2026\/05\/img_6a0eeab5b8ea1.png"},{"@type":"BreadcrumbList","@id":"https:\/\/blog.visual-paradigm.com\/tw\/structuring-complexity-a-real-world-implementation-of-uml-package-architecture\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/blog.visual-paradigm.com\/tw\/"},{"@type":"ListItem","position":2,"name":"\u7d50\u69cb\u5316\u8907\u96dc\u6027\uff1aUML \u5957\u4ef6\u67b6\u69cb\u7684\u5be6\u969b\u61c9\u7528"}]},{"@type":"WebSite","@id":"https:\/\/blog.visual-paradigm.com\/tw\/#website","url":"https:\/\/blog.visual-paradigm.com\/tw\/","name":"Visual Paradigm \u535a\u5ba2","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.visual-paradigm.com\/tw\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-TW"},{"@type":"Person","@id":"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/a649c442f11a53040710ddec750926c6","name":"Admin","image":{"@type":"ImageObject","inLanguage":"zh-TW","@id":"https:\/\/blog.visual-paradigm.com\/tw\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/6b756c36f5e9132f6067fb4d22bef2e3?s=96&d=mm&r=g","caption":"Admin"},"url":"https:\/\/blog.visual-paradigm.com\/tw\/author\/vpadminuser\/"}]}},"modified_by":"Admin","_links":{"self":[{"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/posts\/10485","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/comments?post=10485"}],"version-history":[{"count":0,"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/posts\/10485\/revisions"}],"wp:attachment":[{"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/media?parent=10485"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/categories?post=10485"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.visual-paradigm.com\/tw\/wp-json\/wp\/v2\/tags?post=10485"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}