@umacloud/knowledge 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (418) hide show
  1. package/00-governance/governance-capabilities.md +557 -0
  2. package/00-governance/knowledge-map.md +39 -0
  3. package/00-governance/maintenance-policy.md +76 -0
  4. package/00-governance/review-checklist.md +81 -0
  5. package/README.md +13 -0
  6. package/ai/01-standards/agent-development-complete.md +691 -0
  7. package/ai/01-standards/llm-application-complete.md +488 -0
  8. package/ai/01-standards/mlops-complete.md +798 -0
  9. package/ai/01-standards/prompt-engineering-complete.md +646 -0
  10. package/ai/01-standards/rag-architecture-complete.md +649 -0
  11. package/ai/02-playbooks/llm-evaluation-playbook.md +847 -0
  12. package/ai/03-checklists/ai-project-checklist.md +215 -0
  13. package/ai/04-antipatterns/ai-antipatterns.md +661 -0
  14. package/ai/05-cases/case-rag-production.md +147 -0
  15. package/ai/06-glossary/ai-glossary.md +162 -0
  16. package/ai/agent-evaluation-benchmark.md +53 -0
  17. package/ai/ai-agent-memory-context-management.md +41 -0
  18. package/ai/ai-cost-capacity-optimization-playbook.md +42 -0
  19. package/ai/ai-data-security-and-compliance-playbook.md +37 -0
  20. package/ai/ai-domain-index-and-checklist.md +40 -0
  21. package/ai/ai-governance-maturity-model.md +50 -0
  22. package/ai/ai-model-selection-and-routing-strategy.md +47 -0
  23. package/ai/ai-observability-and-oncall-runbook.md +52 -0
  24. package/ai/ai-rag-engineering-playbook.md +42 -0
  25. package/ai/ai-red-team-and-safety-evaluation.md +42 -0
  26. package/ai/ai-release-readiness-and-rollback-gate.md +42 -0
  27. package/ai/llm-agent-engineering-deep-dive.md +57 -0
  28. package/ai/prompt-and-tool-guardrails.md +52 -0
  29. package/api/01-standards/enterprise-api-standards.md +198 -0
  30. package/api/01-standards/rest-api-design-guide.md +63 -0
  31. package/api/02-playbooks/api-pagination-playbook.md +93 -0
  32. package/api/02-playbooks/graphql-production-playbook.md +176 -0
  33. package/api/03-checklists/api-review-checklist.md +55 -0
  34. package/api/04-antipatterns/api-antipatterns.md +112 -0
  35. package/architecture/01-standards/api-gateway-patterns.md +496 -0
  36. package/architecture/01-standards/cloud-native-patterns.md +644 -0
  37. package/architecture/01-standards/distributed-systems-patterns.md +591 -0
  38. package/architecture/01-standards/event-driven-architecture.md +595 -0
  39. package/architecture/01-standards/microservices-patterns-complete.md +968 -0
  40. package/architecture/01-standards/microservices-patterns.md +495 -0
  41. package/architecture/01-standards/system-design-interview.md +664 -0
  42. package/architecture/02-playbooks/microservices-patterns-playbook.md +137 -0
  43. package/architecture/02-playbooks/migration-playbook.md +780 -0
  44. package/architecture/02-playbooks/system-design-playbook.md +779 -0
  45. package/architecture/03-checklists/architecture-decision-checklist.md +297 -0
  46. package/architecture/04-antipatterns/architecture-antipatterns.md +417 -0
  47. package/architecture/05-cases/case-netflix-microservices.md +413 -0
  48. package/architecture/06-glossary/architecture-glossary.md +164 -0
  49. package/architecture/adr-template-and-examples.md +38 -0
  50. package/architecture/api-gateway-deep-dive.md +1291 -0
  51. package/architecture/configuration-management.md +1162 -0
  52. package/architecture/distributed-transactions.md +1220 -0
  53. package/architecture/microservices-complete.md +735 -0
  54. package/architecture/resilience-and-disaster-patterns.md +37 -0
  55. package/architecture/service-governance.md +1198 -0
  56. package/architecture/system-architecture-deep-dive.md +37 -0
  57. package/backend/01-standards/analytics-and-growth.md +65 -0
  58. package/backend/01-standards/api-and-error-conventions.md +120 -0
  59. package/backend/01-standards/application-layering-and-packaging.md +160 -0
  60. package/backend/01-standards/auth-implementation.md +104 -0
  61. package/backend/01-standards/backend-framework-idioms.md +74 -0
  62. package/backend/01-standards/background-jobs-and-async.md +66 -0
  63. package/backend/01-standards/caching-strategies-complete.md +390 -0
  64. package/backend/01-standards/config-and-observability.md +77 -0
  65. package/backend/01-standards/data-modeling-and-persistence.md +94 -0
  66. package/backend/01-standards/django-complete.md +1765 -0
  67. package/backend/01-standards/email-and-notifications.md +64 -0
  68. package/backend/01-standards/fastapi-complete.md +925 -0
  69. package/backend/01-standards/file-upload-and-storage.md +66 -0
  70. package/backend/01-standards/graphql-api-complete.md +416 -0
  71. package/backend/01-standards/llm-application-standard.md +78 -0
  72. package/backend/01-standards/message-queue-patterns.md +379 -0
  73. package/backend/01-standards/microservices-and-distributed.md +78 -0
  74. package/backend/01-standards/nestjs-complete.md +2167 -0
  75. package/backend/01-standards/payment-integration.md +80 -0
  76. package/backend/01-standards/rate-limiting-complete.md +451 -0
  77. package/backend/01-standards/realtime-and-websocket.md +65 -0
  78. package/backend/01-standards/search-and-filtering.md +64 -0
  79. package/backend/01-standards/spring-boot-complete.md +445 -0
  80. package/backend/02-playbooks/api-design-playbook.md +718 -0
  81. package/backend/02-playbooks/email-send-playbook.md +130 -0
  82. package/backend/02-playbooks/file-upload-s3-playbook.md +153 -0
  83. package/backend/02-playbooks/typescript-enterprise-playbook.md +133 -0
  84. package/backend/02-playbooks/websocket-realtime-playbook.md +154 -0
  85. package/backend/03-checklists/api-launch-checklist.md +189 -0
  86. package/backend/04-antipatterns/backend-antipatterns.md +1051 -0
  87. package/blockchain/01-standards/blockchain-basics.md +557 -0
  88. package/blockchain/01-standards/smart-contract-development.md +1315 -0
  89. package/cicd/01-standards/deployment-and-delivery-standard.md +96 -0
  90. package/cicd/01-standards/github-actions-complete.md +473 -0
  91. package/cicd/01-standards/release-and-store-submission.md +75 -0
  92. package/cicd/02-playbooks/cicd-pipeline-playbook.md +144 -0
  93. package/cicd/02-playbooks/release-management-playbook.md +605 -0
  94. package/cicd/03-checklists/pipeline-security-checklist.md +168 -0
  95. package/cicd/04-antipatterns/cicd-antipatterns.md +589 -0
  96. package/cicd/05-cases/case-deployment-automation.md +221 -0
  97. package/cicd/05-cases/case-gitops-transformation.md +212 -0
  98. package/cicd/06-glossary/cicd-glossary.md +114 -0
  99. package/cicd/cicd-blueprint-deep-dive.md +38 -0
  100. package/cicd/release-readiness-gate.md +37 -0
  101. package/cloud-native/01-standards/container-security.md +741 -0
  102. package/cloud-native/01-standards/kubernetes-complete.md +812 -0
  103. package/cloud-native/02-playbooks/api-gateway-playbook.md +155 -0
  104. package/cloud-native/02-playbooks/gitops-with-argocd.md +760 -0
  105. package/cloud-native/02-playbooks/k8s-troubleshooting-playbook.md +1942 -0
  106. package/cloud-native/02-playbooks/message-queue-playbook.md +129 -0
  107. package/cloud-native/02-playbooks/multicloud-governance.md +726 -0
  108. package/cloud-native/02-playbooks/serverless-patterns.md +788 -0
  109. package/cloud-native/02-playbooks/service-mesh-playbook.md +612 -0
  110. package/cloud-native/02-playbooks/terraform-iac-playbook.md +143 -0
  111. package/cloud-native/03-checklists/container-security-checklist.md +431 -0
  112. package/cloud-native/03-checklists/k8s-production-readiness-checklist.md +460 -0
  113. package/cloud-native/04-antipatterns/container-antipatterns.md +660 -0
  114. package/cloud-native/04-antipatterns/k8s-antipatterns.md +743 -0
  115. package/cloud-native/05-cases/case-k8s-migration.md +478 -0
  116. package/cloud-native/05-cases/case-k8s-scaling.md +642 -0
  117. package/cloud-native/05-cases/case-k8s-security-incident.md +397 -0
  118. package/cloud-native/06-glossary/cloud-native-glossary.md +337 -0
  119. package/cross-platform/01-standards/cross-platform-frameworks.md +83 -0
  120. package/cross-platform/01-standards/platform-selection-and-architecture.md +77 -0
  121. package/data/01-standards/elasticsearch-complete.md +2098 -0
  122. package/data/01-standards/postgresql-complete.md +1613 -0
  123. package/data/01-standards/redis-complete.md +1527 -0
  124. package/data/02-playbooks/database-optimization-playbook.md +403 -0
  125. package/data/02-playbooks/elasticsearch-production-playbook.md +132 -0
  126. package/data/03-checklists/database-launch-checklist.md +187 -0
  127. package/data/04-antipatterns/database-antipatterns.md +873 -0
  128. package/data/05-cases/case-database-migration.md +310 -0
  129. package/data/06-glossary/database-glossary.md +440 -0
  130. package/data/data-governance-and-modeling-deep-dive.md +39 -0
  131. package/data-engineering/01-standards/airflow-complete.md +523 -0
  132. package/data-engineering/01-standards/kafka-complete.md +1521 -0
  133. package/data-engineering/02-playbooks/spark-etl-playbook.md +496 -0
  134. package/data-engineering/03-checklists/pipeline-launch-checklist.md +194 -0
  135. package/data-engineering/04-antipatterns/data-pipeline-antipatterns.md +684 -0
  136. package/data-engineering/05-cases/case-real-time-pipeline.md +355 -0
  137. package/data-engineering/06-glossary/data-engineering-glossary.md +429 -0
  138. package/database/01-standards/database-schema-standards.md +147 -0
  139. package/database/02-playbooks/postgresql-optimization-quick.md +52 -0
  140. package/database/02-playbooks/postgresql-performance-optimization.md +58 -0
  141. package/database/02-playbooks/postgresql-production-playbook.md +146 -0
  142. package/database/02-playbooks/redis-caching-playbook.md +117 -0
  143. package/database/03-checklists/database-review-checklist.md +50 -0
  144. package/database/04-antipatterns/database-antipatterns.md +112 -0
  145. package/design/01-standards/ui-design-system-complete.md +423 -0
  146. package/design/02-playbooks/design-handoff-playbook.md +254 -0
  147. package/design/02-playbooks/design-review-playbook.md +388 -0
  148. package/design/03-checklists/design-review-checklist.md +246 -0
  149. package/design/04-antipatterns/design-antipatterns.md +378 -0
  150. package/design/05-cases/case-design-system-adoption.md +328 -0
  151. package/design/06-glossary/design-glossary.md +329 -0
  152. package/design/ui-full-lifecycle-cross-platform-playbook.md +571 -0
  153. package/design/ux-system-deep-dive.md +38 -0
  154. package/design-systems/00-craft-rules.md +71 -0
  155. package/design-systems/aesthetic-families.md +43 -0
  156. package/design-systems/anti-ai-slop.md +162 -0
  157. package/design-systems/bold-geometric.md +120 -0
  158. package/design-systems/brutalist-bold.md +103 -0
  159. package/design-systems/editorial-clean.md +109 -0
  160. package/design-systems/glass-aurora.md +108 -0
  161. package/design-systems/modern-minimal.md +145 -0
  162. package/design-systems/premium-luxury.md +106 -0
  163. package/design-systems/product-type-design-map.md +48 -0
  164. package/design-systems/soft-warm.md +123 -0
  165. package/design-systems/tech-utility.md +113 -0
  166. package/desktop/01-standards/desktop-app-standard.md +72 -0
  167. package/desktop/01-standards/desktop-design.md +71 -0
  168. package/development/00-governance/document-template.md +41 -0
  169. package/development/01-standards/api-versioning-strategies.md +432 -0
  170. package/development/01-standards/authentication-patterns-complete.md +479 -0
  171. package/development/01-standards/css-architecture-complete.md +550 -0
  172. package/development/01-standards/database-migration-strategies.md +484 -0
  173. package/development/01-standards/elasticsearch-complete.md +347 -0
  174. package/development/01-standards/git-complete.md +371 -0
  175. package/development/01-standards/golang-complete.md +1565 -0
  176. package/development/01-standards/graphql-complete.md +298 -0
  177. package/development/01-standards/javascript-bundlers-complete.md +469 -0
  178. package/development/01-standards/javascript-typescript-complete.md +528 -0
  179. package/development/01-standards/jest-complete.md +275 -0
  180. package/development/01-standards/linux-complete.md +234 -0
  181. package/development/01-standards/logging-observability-complete.md +526 -0
  182. package/development/01-standards/microservices-communication.md +502 -0
  183. package/development/01-standards/mongodb-complete.md +406 -0
  184. package/development/01-standards/oauth2-complete.md +285 -0
  185. package/development/01-standards/performance-optimization-complete.md +289 -0
  186. package/development/01-standards/playwright-complete.md +247 -0
  187. package/development/01-standards/postgresql-complete.md +456 -0
  188. package/development/01-standards/pytest-complete.md +340 -0
  189. package/development/01-standards/python-async-programming.md +902 -0
  190. package/development/01-standards/python-complete.md +956 -0
  191. package/development/01-standards/python-decorators-complete.md +799 -0
  192. package/development/01-standards/python-design-patterns.md +2854 -0
  193. package/development/01-standards/python-packaging-distribution.md +420 -0
  194. package/development/01-standards/python-testing-strategies.md +607 -0
  195. package/development/01-standards/python-web-frameworks-comparison.md +471 -0
  196. package/development/01-standards/redis-complete.md +317 -0
  197. package/development/01-standards/rest-api-complete.md +316 -0
  198. package/development/01-standards/rust-complete.md +578 -0
  199. package/development/01-standards/typescript-advanced-types.md +1513 -0
  200. package/development/01-standards/web-security-complete.md +292 -0
  201. package/development/02-playbooks/api-design-playbook.md +810 -0
  202. package/development/02-playbooks/database-migration-playbook.md +580 -0
  203. package/development/02-playbooks/debugging-playbook.md +692 -0
  204. package/development/02-playbooks/feature-delivery-playbook.md +430 -0
  205. package/development/02-playbooks/incident-hotfix-playbook.md +387 -0
  206. package/development/02-playbooks/performance-optimization-playbook.md +531 -0
  207. package/development/02-playbooks/performance-tuning-playbook.md +652 -0
  208. package/development/02-playbooks/refactor-playbook.md +403 -0
  209. package/development/02-playbooks/release-playbook.md +469 -0
  210. package/development/03-checklists/architecture-review-checklist.md +168 -0
  211. package/development/03-checklists/data-migration-checklist.md +157 -0
  212. package/development/03-checklists/oncall-handover-checklist.md +173 -0
  213. package/development/03-checklists/pr-checklist.md +158 -0
  214. package/development/03-checklists/production-readiness-checklist.md +190 -0
  215. package/development/03-checklists/release-readiness-checklist.md +154 -0
  216. package/development/03-checklists/security-review-checklist.md +182 -0
  217. package/development/04-antipatterns/api-antipatterns.md +657 -0
  218. package/development/04-antipatterns/architecture-antipatterns.md +686 -0
  219. package/development/04-antipatterns/backend-antipatterns.md +648 -0
  220. package/development/04-antipatterns/cicd-antipatterns.md +540 -0
  221. package/development/04-antipatterns/code-smell-antipatterns.md +571 -0
  222. package/development/04-antipatterns/data-antipatterns.md +658 -0
  223. package/development/04-antipatterns/database-antipatterns.md +578 -0
  224. package/development/04-antipatterns/frontend-antipatterns.md +635 -0
  225. package/development/04-antipatterns/reliability-antipatterns.md +700 -0
  226. package/development/04-antipatterns/security-antipatterns.md +747 -0
  227. package/development/05-cases/case-api-version-migration.md +428 -0
  228. package/development/05-cases/case-authorization-hardening.md +383 -0
  229. package/development/05-cases/case-bluegreen-rollback.md +466 -0
  230. package/development/05-cases/case-cache-snowball-protection.md +485 -0
  231. package/development/05-cases/case-ci-cd-pipeline.md +544 -0
  232. package/development/05-cases/case-database-scaling.md +500 -0
  233. package/development/05-cases/case-db-hotspot-optimization.md +487 -0
  234. package/development/05-cases/case-incident-mttr-reduction.md +563 -0
  235. package/development/05-cases/case-microservice-migration.md +375 -0
  236. package/development/05-cases/case-performance-optimization.md +406 -0
  237. package/development/05-cases/case-security-incident-response.md +345 -0
  238. package/development/06-glossary/full-stack-glossary.md +166 -0
  239. package/development/09-maturity/quarterly-audit-template.md +35 -0
  240. package/development/11-ui-excellence/ui-aesthetic-system.md +41 -0
  241. package/development/11-ui-excellence/ui-engineering-excellence.md +435 -0
  242. package/development/12-scenarios/development-scenarios-guide.md +565 -0
  243. package/development/13-implementation-assets/implementation-toolkit.md +282 -0
  244. package/development/13-implementation-assets/knowledge-gates-execution.md +43 -0
  245. package/development/14-full-lifecycle/software-lifecycle-gates.md +511 -0
  246. package/development/15-lifecycle-templates/project-templates-collection.md +791 -0
  247. package/development/api-contract-and-versioning-guide.md +36 -0
  248. package/development/api-governance-complete.md +43 -0
  249. package/development/backend-engineering-complete.md +43 -0
  250. package/development/code-review-quality-complete.md +43 -0
  251. package/development/concurrency-reliability-complete.md +43 -0
  252. package/development/database-engineering-complete.md +43 -0
  253. package/development/engineering-effectiveness-complete.md +43 -0
  254. package/development/engineering-standards-deep-dive.md +38 -0
  255. package/development/frontend-engineering-complete.md +43 -0
  256. package/development/performance-capacity-complete.md +43 -0
  257. package/development/refactor-migration-complete.md +42 -0
  258. package/development/refactoring-and-techdebt-playbook.md +37 -0
  259. package/development/security-in-development-complete.md +43 -0
  260. package/devops/01-standards/cicd-pipeline-complete.md +262 -0
  261. package/devops/01-standards/docker-complete.md +1490 -0
  262. package/devops/01-standards/github-actions-complete.md +337 -0
  263. package/devops/01-standards/kubernetes-complete.md +638 -0
  264. package/devops/01-standards/terraform-complete.md +2117 -0
  265. package/devops/02-playbooks/docker-compose-playbook.md +233 -0
  266. package/devops/02-playbooks/docker-k8s-production-playbook.md +186 -0
  267. package/devops/02-playbooks/docker-production-playbook.md +952 -0
  268. package/edge-iot/01-standards/edge-iot-complete.md +473 -0
  269. package/experts/architect/api-design.md +178 -0
  270. package/experts/architect/methodology.md +124 -0
  271. package/experts/architect/security.md +75 -0
  272. package/experts/backend-lead/methodology.md +216 -0
  273. package/experts/devops/methodology.md +160 -0
  274. package/experts/frontend-lead/methodology.md +178 -0
  275. package/experts/product-manager/industry/ecommerce.md +43 -0
  276. package/experts/product-manager/industry/saas.md +40 -0
  277. package/experts/product-manager/methodology.md +97 -0
  278. package/experts/qa-lead/methodology.md +123 -0
  279. package/experts/qa-lead/test-strategy.md +128 -0
  280. package/experts/uiux-designer/methodology.md +125 -0
  281. package/frontend/01-standards/accessibility-complete.md +532 -0
  282. package/frontend/01-standards/accessibility-standard.md +74 -0
  283. package/frontend/01-standards/admin-dashboard-and-crud.md +72 -0
  284. package/frontend/01-standards/design-tokens-complete.md +444 -0
  285. package/frontend/01-standards/forms-and-validation.md +77 -0
  286. package/frontend/01-standards/frontend-architecture-and-layering.md +119 -0
  287. package/frontend/01-standards/i18n-and-localization.md +65 -0
  288. package/frontend/01-standards/nextjs-complete.md +451 -0
  289. package/frontend/01-standards/react-complete.md +713 -0
  290. package/frontend/01-standards/react-hooks-complete-guide.md +1100 -0
  291. package/frontend/01-standards/react-hooks-complete.md +1171 -0
  292. package/frontend/01-standards/seo-and-web-vitals.md +77 -0
  293. package/frontend/01-standards/state-management-complete.md +444 -0
  294. package/frontend/01-standards/vue-complete.md +499 -0
  295. package/frontend/01-standards/vue3-complete.md +2002 -0
  296. package/frontend/01-standards/web-framework-best-practices.md +64 -0
  297. package/frontend/01-standards/web-performance-complete.md +495 -0
  298. package/frontend/02-playbooks/accessibility-a11y-playbook.md +161 -0
  299. package/frontend/02-playbooks/frontend-performance-playbook.md +707 -0
  300. package/frontend/02-playbooks/i18n-internationalization-playbook.md +120 -0
  301. package/frontend/02-playbooks/performance-optimization-playbook.md +163 -0
  302. package/frontend/02-playbooks/react-nextjs-production-playbook.md +167 -0
  303. package/frontend/02-playbooks/react-state-management-playbook.md +173 -0
  304. package/frontend/03-checklists/component-quality-checklist.md +166 -0
  305. package/frontend/03-checklists/frontend-launch-checklist.md +299 -0
  306. package/frontend/04-antipatterns/frontend-antipatterns.md +886 -0
  307. package/frontend/05-cases/case-performance-optimization.md +274 -0
  308. package/harmony/01-standards/harmonyos-arkts-standard.md +75 -0
  309. package/harmony/01-standards/harmonyos-design.md +65 -0
  310. package/high-quality-engineering-playbook.md +54 -0
  311. package/incident/01-standards/incident-response-complete.md +303 -0
  312. package/incident/02-playbooks/chaos-engineering-playbook.md +883 -0
  313. package/incident/02-playbooks/postmortem-playbook.md +398 -0
  314. package/incident/03-checklists/incident-readiness-checklist.md +181 -0
  315. package/incident/04-antipatterns/incident-antipatterns.md +490 -0
  316. package/incident/05-cases/case-cascade-failure.md +176 -0
  317. package/incident/06-glossary/incident-glossary.md +114 -0
  318. package/incident/postmortem-and-response-deep-dive.md +39 -0
  319. package/industries/ecommerce/ecommerce-complete.md +631 -0
  320. package/industries/education/education-complete.md +555 -0
  321. package/industries/fintech/fintech-complete.md +501 -0
  322. package/industries/gaming/gaming-complete.md +587 -0
  323. package/industries/healthcare/healthcare-complete.md +452 -0
  324. package/low-code/01-standards/low-code-complete.md +944 -0
  325. package/miniprogram/01-standards/ai-common-mistakes.md +61 -0
  326. package/miniprogram/01-standards/miniprogram-custom-navbar-capsule.md +77 -0
  327. package/miniprogram/01-standards/miniprogram-design.md +61 -0
  328. package/miniprogram/01-standards/miniprogram-standard.md +81 -0
  329. package/mobile/01-standards/android-material-design.md +70 -0
  330. package/mobile/01-standards/flutter-complete.md +384 -0
  331. package/mobile/01-standards/ios-design-hig.md +78 -0
  332. package/mobile/01-standards/mobile-app-standard.md +85 -0
  333. package/mobile/01-standards/react-native-complete.md +352 -0
  334. package/mobile/02-playbooks/mobile-cross-platform-playbook.md +175 -0
  335. package/mobile/02-playbooks/mobile-performance.md +473 -0
  336. package/mobile/03-checklists/mobile-release-checklist.md +234 -0
  337. package/mobile/04-antipatterns/mobile-antipatterns.md +798 -0
  338. package/mobile/05-cases/case-app-performance.md +500 -0
  339. package/mobile/05-cases/case-app-startup-optimization.md +218 -0
  340. package/mobile/06-glossary/mobile-glossary.md +484 -0
  341. package/observability/01-standards/observability-standards.md +103 -0
  342. package/observability/02-playbooks/prometheus-grafana-playbook.md +135 -0
  343. package/observability/02-playbooks/structured-logging-playbook.md +73 -0
  344. package/observability/03-checklists/observability-checklist.md +54 -0
  345. package/observability/04-antipatterns/observability-antipatterns.md +106 -0
  346. package/operations/01-standards/prometheus-monitoring-complete.md +1578 -0
  347. package/operations/02-playbooks/capacity-planning-playbook.md +620 -0
  348. package/operations/03-checklists/production-launch-checklist.md +365 -0
  349. package/operations/04-antipatterns/operations-antipatterns.md +664 -0
  350. package/operations/05-cases/case-sre-practices.md +581 -0
  351. package/operations/06-glossary/operations-glossary.md +120 -0
  352. package/operations/aiops-anomaly-detection.md +758 -0
  353. package/operations/capacity-planning.md +1061 -0
  354. package/operations/chaos-engineering.md +659 -0
  355. package/operations/incident-command-system.md +38 -0
  356. package/operations/observability-complete.md +442 -0
  357. package/operations/slo-sli-playbook.md +517 -0
  358. package/operations/sre-operations-deep-dive.md +39 -0
  359. package/package.json +8 -0
  360. package/performance/01-standards/performance-and-scalability.md +80 -0
  361. package/performance/01-standards/performance-standards.md +156 -0
  362. package/performance/02-playbooks/query-optimization-playbook.md +103 -0
  363. package/performance/03-checklists/performance-checklist.md +56 -0
  364. package/performance/04-antipatterns/performance-antipatterns.md +146 -0
  365. package/product/01-standards/product-management-complete.md +285 -0
  366. package/product/02-playbooks/feature-launch-playbook.md +207 -0
  367. package/product/02-playbooks/user-research-playbook.md +532 -0
  368. package/product/03-checklists/feature-launch-checklist.md +275 -0
  369. package/product/04-antipatterns/product-antipatterns.md +355 -0
  370. package/product/05-cases/case-mvp-to-scale.md +384 -0
  371. package/product/06-glossary/product-glossary.md +462 -0
  372. package/product/feature-prioritization-framework.md +40 -0
  373. package/product/kpi-and-metric-tree.md +37 -0
  374. package/product/product-discovery-and-prd-deep-dive.md +41 -0
  375. package/quantum/01-standards/quantum-complete.md +1186 -0
  376. package/security/01-standards/api-security-complete.md +511 -0
  377. package/security/01-standards/container-runtime-security.md +574 -0
  378. package/security/01-standards/data-protection-gdpr.md +543 -0
  379. package/security/01-standards/owasp-top10-complete.md +1890 -0
  380. package/security/01-standards/secure-coding-baseline.md +90 -0
  381. package/security/01-standards/supply-chain-security.md +441 -0
  382. package/security/01-standards/web-security-checklist.md +108 -0
  383. package/security/01-standards/zero-trust-architecture.md +521 -0
  384. package/security/02-playbooks/auth-sso-playbook.md +166 -0
  385. package/security/02-playbooks/incident-response-security-playbook.md +588 -0
  386. package/security/02-playbooks/owasp-api-security-playbook.md +129 -0
  387. package/security/02-playbooks/payment-integration-playbook.md +119 -0
  388. package/security/02-playbooks/penetration-testing-playbook.md +517 -0
  389. package/security/03-checklists/security-audit-checklist.md +356 -0
  390. package/security/04-antipatterns/security-coding-antipatterns.md +580 -0
  391. package/security/05-cases/case-log4shell-incident.md +537 -0
  392. package/security/05-cases/case-major-breaches.md +468 -0
  393. package/security/06-glossary/security-glossary.md +212 -0
  394. package/security/compliance-automation.md +993 -0
  395. package/security/container-security.md +680 -0
  396. package/security/devsecops-complete.md +426 -0
  397. package/security/sast-dast-sca.md +775 -0
  398. package/security/secrets-management.md +594 -0
  399. package/security/security-architecture-deep-dive.md +37 -0
  400. package/security/threat-modeling-stride-playbook.md +40 -0
  401. package/seed-templates/auth-system.md +59 -0
  402. package/seed-templates/blog-content.md +94 -0
  403. package/seed-templates/dashboard.md +89 -0
  404. package/seed-templates/docs-site.md +73 -0
  405. package/seed-templates/e-commerce.md +50 -0
  406. package/seed-templates/saas-landing.md +92 -0
  407. package/seed-templates/settings-page.md +51 -0
  408. package/testing/01-standards/test-strategy-and-layering.md +83 -0
  409. package/testing/01-standards/testing-strategy-complete.md +422 -0
  410. package/testing/01-standards/unit-testing-best-practices.md +118 -0
  411. package/testing/02-playbooks/e2e-testing-playbook.md +988 -0
  412. package/testing/02-playbooks/testing-strategy-playbook.md +126 -0
  413. package/testing/03-checklists/test-strategy-checklist.md +208 -0
  414. package/testing/04-antipatterns/testing-antipatterns.md +718 -0
  415. package/testing/05-cases/case-testing-transformation.md +300 -0
  416. package/testing/06-glossary/testing-glossary.md +110 -0
  417. package/testing/risk-based-test-matrix.md +36 -0
  418. package/testing/testing-strategy-deep-dive.md +37 -0
@@ -0,0 +1,944 @@
1
+ ---
2
+ id: low-code-complete
3
+ title: 低代码开发完整指南
4
+ domain: low-code
5
+ category: 01-standards
6
+ difficulty: intermediate
7
+ tags: [code, complete, low, low-code, 与传统开发结合, 主流平台对比, 安全考虑, 常见陷阱]
8
+ quality_score: 70
9
+ last_updated: 2026-06-15
10
+ ---
11
+ # 低代码开发完整指南
12
+
13
+ ## 概述
14
+
15
+ 低代码(Low-Code)和无代码(No-Code)平台通过可视化界面和预构建组件,大幅降低应用程序开发门槛。它们不是要取代传统编码,而是在特定场景下显著提升交付效率。
16
+
17
+ ### 低代码 vs 无代码 vs Pro-Code 对比
18
+
19
+ | 维度 | No-Code | Low-Code | Pro-Code |
20
+ |------|---------|----------|----------|
21
+ | 目标用户 | 业务人员、公民开发者 | 业务+开发混合团队 | 专业开发者 |
22
+ | 编码需求 | 零代码 | 少量代码(10-30%) | 全代码 |
23
+ | 灵活性 | 低 | 中 | 高 |
24
+ | 学习曲线 | 1-3天 | 1-4周 | 数月-数年 |
25
+ | 适用复杂度 | 简单表单/流程 | 中等复杂度业务应用 | 任意复杂度系统 |
26
+ | 定制能力 | 极有限 | 有限但可扩展 | 无限 |
27
+ | 部署选项 | 平台托管 | 平台托管/私有化 | 完全自主 |
28
+ | 维护成本 | 低(平台负责) | 中(共担) | 高(自行负责) |
29
+ | 典型交付周期 | 小时-天 | 天-周 | 周-月 |
30
+ | 锁定风险 | 高 | 中-高 | 低 |
31
+
32
+ ### 关键概念
33
+
34
+ - **公民开发者(Citizen Developer)**: 非IT背景但使用低代码平台构建应用的业务人员
35
+ - **可视化建模(Visual Modeling)**: 用拖拽方式定义数据模型、UI和业务逻辑
36
+ - **Escape Hatch**: 当可视化能力不足时,嵌入自定义代码的能力
37
+ - **模型驱动架构(MDA)**: 通过高层抽象模型自动生成底层代码
38
+ - **平台锁定(Vendor Lock-in)**: 应用对特定平台的深度依赖,迁移成本高
39
+
40
+ ---
41
+
42
+ ## 主流平台对比
43
+
44
+ ### 1. OutSystems
45
+
46
+ **定位**: 企业级低代码平台,面向专业开发团队
47
+
48
+ **核心特性**:
49
+ - 全栈可视化开发(前端+后端+数据库)
50
+ - 原生移动应用支持
51
+ - AI辅助开发(AI Mentor System)
52
+ - 企业级安全与合规
53
+ - 支持私有化部署
54
+
55
+ **架构**:
56
+ ```
57
+ ┌─────────────────────────────────────┐
58
+ │ Service Studio (IDE) │
59
+ ├─────────────────────────────────────┤
60
+ │ Visual Language → C# / .NET │
61
+ ├──────────┬──────────┬───────────────┤
62
+ │ UI层 │ 逻辑层 │ 数据层 │
63
+ │ React │ Server │ SQL Server │
64
+ │ Native │ Actions │ Oracle │
65
+ └──────────┴──────────┴───────────────┘
66
+ ```
67
+
68
+ **适用场景**: 大型企业应用、客户门户、内部管理系统
69
+ **定价**: 企业定价,按应用对象数(AO)计费,起步 $1,513/月
70
+ **优势**: 性能好、安全合规、支持复杂逻辑
71
+ **劣势**: 价格高、学习曲线陡、社区相对封闭
72
+
73
+ ### 2. Mendix
74
+
75
+ **定位**: 企业协作低代码平台,强调业务与IT协同
76
+
77
+ **核心特性**:
78
+ - Studio(业务人员)+ Studio Pro(开发者)双模式
79
+ - 基于模型驱动架构
80
+ - 原生CI/CD支持
81
+ - Marketplace 丰富的组件生态
82
+ - 支持 Kubernetes 部署
83
+
84
+ **架构**:
85
+ ```
86
+ ┌──────────────────────────────────────┐
87
+ │ Mendix Studio / Studio Pro │
88
+ ├──────────────────────────────────────┤
89
+ │ Domain Model → Java Runtime │
90
+ ├───────────┬──────────┬───────────────┤
91
+ │ Pages │ Micro- │ Database │
92
+ │ (React) │ flows │ (PostgreSQL) │
93
+ │ Nanoflow │ Nanoflow │ OData APIs │
94
+ └───────────┴──────────┴───────────────┘
95
+ ```
96
+
97
+ **适用场景**: 数字化转型项目、跨部门协作应用
98
+ **定价**: Free tier 可用,Standard $50/用户/月起
99
+ **优势**: 协作能力强、部署灵活、API集成丰富
100
+ **劣势**: 复杂逻辑表达受限、运行时性能一般
101
+
102
+ ### 3. Microsoft Power Apps
103
+
104
+ **定位**: 微软生态低代码平台,深度集成 Microsoft 365
105
+
106
+ **核心特性**:
107
+ - Canvas Apps(自由画布)+ Model-driven Apps(数据驱动)
108
+ - Power Automate(流程自动化)
109
+ - Power BI(数据分析)
110
+ - Dataverse(统一数据平台)
111
+ - Copilot AI 集成
112
+
113
+ **架构**:
114
+ ```
115
+ ┌──────────────────────────────────────┐
116
+ │ Power Apps Studio │
117
+ ├──────────────────────────────────────┤
118
+ │ Canvas App / Model-driven App │
119
+ ├───────────┬──────────┬───────────────┤
120
+ │ Power Fx │ Power │ Dataverse │
121
+ │ 公式语言 │ Automate │ SharePoint │
122
+ │ │ │ SQL Server │
123
+ └───────────┴──────────┴───────────────┘
124
+ ```
125
+
126
+ **Power Fx 示例**:
127
+ ```
128
+ // 筛选并排序数据
129
+ SortByColumns(
130
+ Filter(
131
+ Employees,
132
+ Department = "Engineering",
133
+ StartDate >= DateAdd(Today(), -1, TimeUnit.Years)
134
+ ),
135
+ "Name",
136
+ SortOrder.Ascending
137
+ )
138
+
139
+ // 表单提交逻辑
140
+ If(
141
+ IsBlank(TextInput_Name.Text),
142
+ Notify("姓名不能为空", NotificationType.Error),
143
+ Patch(
144
+ Employees,
145
+ Defaults(Employees),
146
+ {
147
+ Name: TextInput_Name.Text,
148
+ Email: TextInput_Email.Text,
149
+ Department: Dropdown_Dept.Selected.Value
150
+ }
151
+ );
152
+ Navigate(SuccessScreen, ScreenTransition.Fade)
153
+ )
154
+ ```
155
+
156
+ **适用场景**: 已使用微软生态的企业、内部审批流程、数据看板
157
+ **定价**: Per App $5/用户/月, Per User $20/用户/月
158
+ **优势**: 微软生态无缝集成、用户基数大、Copilot加持
159
+ **劣势**: Canvas App 性能瓶颈、复杂应用难维护、Dataverse 成本高
160
+
161
+ ### 4. Retool
162
+
163
+ **定位**: 面向开发者的内部工具构建平台
164
+
165
+ **核心特性**:
166
+ - 拖拽式 UI 构建器 + JavaScript 自定义
167
+ - 原生数据库连接(PostgreSQL、MySQL、MongoDB等)
168
+ - REST API / GraphQL 集成
169
+ - 自托管选项(Docker / Kubernetes)
170
+ - 版本控制与 Git 集成
171
+
172
+ **示例 - 自定义查询**:
173
+ ```javascript
174
+ // Retool 中的 JavaScript 查询
175
+ const users = await query1.data;
176
+
177
+ // 数据转换
178
+ const processed = users.map(user => ({
179
+ ...user,
180
+ fullName: `${user.firstName} ${user.lastName}`,
181
+ isActive: user.lastLogin > moment().subtract(30, 'days').toDate(),
182
+ department: departments.find(d => d.id === user.deptId)?.name || 'Unknown'
183
+ }));
184
+
185
+ // 条件逻辑
186
+ if (selectUser.value) {
187
+ return processed.filter(u => u.id === selectUser.value);
188
+ }
189
+
190
+ return processed;
191
+ ```
192
+
193
+ **示例 - SQL 查询参数化**:
194
+ ```sql
195
+ -- Retool 中可直接引用组件值
196
+ SELECT
197
+ o.id,
198
+ o.status,
199
+ o.total,
200
+ c.name AS customer_name
201
+ FROM orders o
202
+ JOIN customers c ON o.customer_id = c.id
203
+ WHERE o.status = {{ statusFilter.value }}
204
+ AND o.created_at >= {{ dateRange.value.start }}
205
+ AND o.created_at <= {{ dateRange.value.end }}
206
+ ORDER BY o.created_at DESC
207
+ LIMIT {{ pagination.pageSize }}
208
+ OFFSET {{ (pagination.page - 1) * pagination.pageSize }}
209
+ ```
210
+
211
+ **适用场景**: 管理后台、运营工具、数据看板、客服系统
212
+ **定价**: Free tier (5用户), Team $10/用户/月, Business $50/用户/月
213
+ **优势**: 开发者友好、数据源连接丰富、自托管支持
214
+ **劣势**: 仅限内部工具、不适合面向客户的应用
215
+
216
+ ### 5. Appsmith
217
+
218
+ **定位**: 开源内部工具构建平台
219
+
220
+ **核心特性**:
221
+ - 完全开源(AGPL v3)
222
+ - 自托管(Docker一键部署)
223
+ - JavaScript 自定义逻辑
224
+ - 丰富的预建组件(40+)
225
+ - Git 版本控制集成
226
+
227
+ **部署示例**:
228
+ ```bash
229
+ # Docker 一键部署
230
+ docker run -d --name appsmith \
231
+ -p 80:80 \
232
+ -v stacks:/appsmith-stacks \
233
+ appsmith/appsmith-ce
234
+
235
+ # Docker Compose
236
+ version: '3'
237
+ services:
238
+ appsmith:
239
+ image: appsmith/appsmith-ce
240
+ ports:
241
+ - "80:80"
242
+ - "443:443"
243
+ volumes:
244
+ - ./stacks:/appsmith-stacks
245
+ restart: unless-stopped
246
+ ```
247
+
248
+ **适用场景**: 预算有限团队、需要自托管、内部工具快速搭建
249
+ **定价**: 社区版免费, Business $40/用户/月
250
+ **优势**: 开源免费、自托管、社区活跃
251
+ **劣势**: 功能不如商业平台成熟、企业级特性需付费
252
+
253
+ ### 6. Budibase
254
+
255
+ **定位**: 开源低代码平台,支持自托管
256
+
257
+ **核心特性**:
258
+ - 开源(GPLv3)
259
+ - 内建数据库 + 外部数据源
260
+ - 自动化工作流
261
+ - RBAC 权限控制
262
+ - 自托管支持
263
+
264
+ **适用场景**: 小团队内部工具、表单应用、审批流程
265
+ **定价**: 社区版免费, Premium $50/月起
266
+ **优势**: 开源、简单易用、自带数据库
267
+ **劣势**: 生态较小、复杂场景能力不足
268
+
269
+ ### 平台选型矩阵
270
+
271
+ | 场景 | 推荐平台 | 理由 |
272
+ |------|----------|------|
273
+ | 企业级复杂应用 | OutSystems / Mendix | 全栈能力、安全合规 |
274
+ | 微软生态企业 | Power Apps | 无缝集成、用户基数 |
275
+ | 开发者内部工具 | Retool | 开发者友好、数据源丰富 |
276
+ | 预算有限 / 自托管 | Appsmith / Budibase | 开源免费、可控 |
277
+ | 快速 MVP | 任意平台 | 按团队技能选择 |
278
+
279
+ ---
280
+
281
+ ## 适用场景分析
282
+
283
+ ### 1. 内部工具(Admin Panels / Back-office)
284
+
285
+ **最佳场景**: CRUD 管理面板、运营后台、客服工具
286
+
287
+ ```
288
+ 典型架构:
289
+ ┌────────────────────────────────────┐
290
+ │ Low-Code UI (拖拽构建) │
291
+ ├────────────────────────────────────┤
292
+ │ SQL查询 / API调用 / 数据转换 │
293
+ ├────────────────────────────────────┤
294
+ │ 现有数据库 / 微服务 / 第三方API │
295
+ └────────────────────────────────────┘
296
+ ```
297
+
298
+ **适合指标**:
299
+ - 用户量 < 500(内部用户)
300
+ - 数据模型相对简单(< 50 张表)
301
+ - 业务逻辑中等复杂度
302
+ - 交付周期要求快(< 2 周)
303
+ - UI 定制要求不高
304
+
305
+ ### 2. MVP / 原型验证
306
+
307
+ **最佳场景**: 创业公司快速验证商业假设
308
+
309
+ **关键决策流程**:
310
+ ```
311
+ 需要验证的假设是什么?
312
+ ├── 纯界面/交互验证 → Figma + No-Code (Bubble)
313
+ ├── 需要真实数据流 → Low-Code (Retool / Appsmith)
314
+ └── 需要复杂后端逻辑 → Pro-Code + Low-Code前端
315
+ ```
316
+
317
+ **注意**: MVP 验证通过后,评估是否需要迁移到 Pro-Code。低代码 MVP 不等于生产系统。
318
+
319
+ ### 3. 表单与审批流程
320
+
321
+ **最佳场景**: 请假审批、采购申请、客户反馈收集
322
+
323
+ **Power Automate 示例流程**:
324
+ ```
325
+ 触发器: 表单提交
326
+
327
+ ├─ 条件: 金额 > 10000?
328
+ │ ├─ 是 → 发送审批给总监
329
+ │ │ ├─ 批准 → 更新状态 + 通知申请人
330
+ │ │ └─ 拒绝 → 通知申请人 + 记录原因
331
+ │ └─ 否 → 发送审批给经理
332
+ │ ├─ 批准 → 更新状态 + 通知申请人
333
+ │ └─ 拒绝 → 通知申请人 + 记录原因
334
+
335
+ └─ 记录审批日志
336
+ ```
337
+
338
+ ### 4. 数据看板(Dashboard)
339
+
340
+ **最佳场景**: KPI 监控、业务报表、实时数据展示
341
+
342
+ **推荐组合**:
343
+ - 简单看板: Power BI + Power Apps
344
+ - 中等复杂: Retool + 数据库直连
345
+ - 高定制: Pro-Code (React + Chart.js / ECharts)
346
+
347
+ ---
348
+
349
+ ## 架构模式
350
+
351
+ ### 1. 可视化编辑器架构
352
+
353
+ ```
354
+ ┌─────────────────────────────────────────┐
355
+ │ 可视化编辑器 (IDE) │
356
+ ├──────────┬──────────┬───────────────────┤
357
+ │ 组件面板 │ 画布 │ 属性面板 │
358
+ │ Component│ Canvas │ Properties │
359
+ │ Palette │ Area │ Panel │
360
+ ├──────────┴──────────┴───────────────────┤
361
+ │ JSON / AST 中间表示 │
362
+ ├─────────────────────────────────────────┤
363
+ │ 代码生成器 (Code Generator) │
364
+ ├──────────┬──────────┬───────────────────┤
365
+ │ HTML/CSS │ JS/TS │ SQL/API │
366
+ │ 生成 │ 生成 │ 生成 │
367
+ └──────────┴──────────┴───────────────────┘
368
+ ```
369
+
370
+ **核心机制**:
371
+ - **AST(抽象语法树)**: 可视化操作被翻译为 AST 节点
372
+ - **双向绑定**: 代码修改可反映回可视化编辑器
373
+ - **实时预览**: 修改即时渲染,所见即所得
374
+
375
+ ### 2. 组件系统
376
+
377
+ **组件层级**:
378
+ ```
379
+ 原子组件 (Atoms)
380
+ ├── Button, Input, Label, Icon
381
+
382
+ 分子组件 (Molecules)
383
+ ├── FormField (Label + Input + Validation)
384
+ ├── SearchBar (Input + Button)
385
+
386
+ 有机体组件 (Organisms)
387
+ ├── DataTable (Header + Rows + Pagination + Filter)
388
+ ├── Form (FormFields + Submit + Validation)
389
+
390
+ 模板 (Templates)
391
+ ├── CRUD Page (DataTable + Form + Modal)
392
+ ├── Dashboard (Charts + KPIs + Filters)
393
+ ```
394
+
395
+ **自定义组件扩展**(以 Retool 为例):
396
+ ```javascript
397
+ // 自定义 React 组件
398
+ const CustomChart = ({ data, options }) => {
399
+ const chartRef = useRef(null);
400
+
401
+ useEffect(() => {
402
+ if (chartRef.current && data) {
403
+ const chart = new Chart(chartRef.current, {
404
+ type: 'bar',
405
+ data: {
406
+ labels: data.map(d => d.label),
407
+ datasets: [{
408
+ data: data.map(d => d.value),
409
+ backgroundColor: options.colors || ['#4F46E5']
410
+ }]
411
+ }
412
+ });
413
+ return () => chart.destroy();
414
+ }
415
+ }, [data, options]);
416
+
417
+ return <canvas ref={chartRef} />;
418
+ };
419
+
420
+ // 注册为 Retool 自定义组件
421
+ window.Retool.connectToComponent(CustomChart);
422
+ ```
423
+
424
+ ### 3. 数据模型
425
+
426
+ **典型数据模型定义**(以 Mendix 为例):
427
+ ```
428
+ Domain Model:
429
+ Entity: Employee
430
+ ├── Attributes:
431
+ │ ├── Name (String, required)
432
+ │ ├── Email (String, unique)
433
+ │ ├── HireDate (DateTime)
434
+ │ └── Salary (Decimal)
435
+ ├── Associations:
436
+ │ ├── Employee_Department (*-1)
437
+ │ └── Employee_Projects (*-*)
438
+ └── Validations:
439
+ ├── Email format check
440
+ └── Salary > 0
441
+ ```
442
+
443
+ **ORM 映射**:
444
+ 低代码平台的数据模型通常自动映射为数据库表和 ORM 实体,开发者无需手写 SQL DDL。
445
+
446
+ ### 4. 工作流引擎
447
+
448
+ **工作流引擎核心概念**:
449
+ ```
450
+ ┌─────────────────────────────────────┐
451
+ │ 工作流定义 (Workflow) │
452
+ ├─────────────────────────────────────┤
453
+ │ 触发器 (Trigger) │
454
+ │ ├── 事件触发: 数据变更、表单提交 │
455
+ │ ├── 定时触发: Cron 表达式 │
456
+ │ └── 手动触发: 按钮点击 │
457
+ ├─────────────────────────────────────┤
458
+ │ 动作 (Actions) │
459
+ │ ├── 数据操作: CRUD │
460
+ │ ├── 外部调用: REST API / Webhook │
461
+ │ ├── 通知: 邮件 / Slack / 短信 │
462
+ │ └── 条件分支: If / Switch │
463
+ ├─────────────────────────────────────┤
464
+ │ 状态机 (State Machine) │
465
+ │ ├── 状态定义: Draft → Review → │
466
+ │ │ Approved → Done │
467
+ │ └── 转换规则: 谁可以触发哪个转换 │
468
+ └─────────────────────────────────────┘
469
+ ```
470
+
471
+ ### 5. 部署模型
472
+
473
+ **部署选项对比**:
474
+
475
+ | 模型 | 说明 | 适用场景 |
476
+ |------|------|----------|
477
+ | SaaS 托管 | 平台负责所有基础设施 | 快速启动、小团队 |
478
+ | 私有云部署 | 部署到客户的云账户 | 数据主权要求 |
479
+ | 本地部署 | 完全本地化 | 强合规行业(金融/政府) |
480
+ | 混合部署 | 开发在云端,运行在本地 | 兼顾效率与安全 |
481
+
482
+ **容器化部署示例**:
483
+ ```yaml
484
+ # docker-compose.yml (Appsmith 自托管)
485
+ version: '3'
486
+ services:
487
+ appsmith:
488
+ image: appsmith/appsmith-ce:latest
489
+ ports:
490
+ - "80:80"
491
+ - "443:443"
492
+ volumes:
493
+ - ./stacks:/appsmith-stacks
494
+ environment:
495
+ - APPSMITH_ENCRYPTION_PASSWORD=your-encryption-password
496
+ - APPSMITH_ENCRYPTION_SALT=your-encryption-salt
497
+ - APPSMITH_MONGODB_URI=mongodb://mongo:27017/appsmith
498
+ - APPSMITH_REDIS_URL=redis://redis:6379
499
+ depends_on:
500
+ - mongo
501
+ - redis
502
+ restart: unless-stopped
503
+
504
+ mongo:
505
+ image: mongo:6
506
+ volumes:
507
+ - ./data/mongo:/data/db
508
+ restart: unless-stopped
509
+
510
+ redis:
511
+ image: redis:7-alpine
512
+ restart: unless-stopped
513
+ ```
514
+
515
+ ---
516
+
517
+ ## 与传统开发结合
518
+
519
+ ### 1. Escape Hatch 模式
520
+
521
+ 当低代码平台的可视化能力无法满足需求时,需要"逃生通道"嵌入自定义代码。
522
+
523
+ **各平台 Escape Hatch 能力**:
524
+
525
+ | 平台 | 前端自定义 | 后端自定义 | 数据库自定义 |
526
+ |------|-----------|-----------|-------------|
527
+ | OutSystems | JavaScript 扩展 | C# 扩展 | SQL 扩展 |
528
+ | Mendix | JavaScript Action | Java Action | OQL 查询 |
529
+ | Power Apps | PCF 组件 | Azure Functions | SQL 查询 |
530
+ | Retool | JavaScript + React | 无(纯前端) | 原生 SQL |
531
+ | Appsmith | JavaScript + React | 无(纯前端) | 原生 SQL |
532
+
533
+ **Mendix Java Action 示例**:
534
+ ```java
535
+ // 自定义 Java Action
536
+ public class SendCustomEmail extends CustomJavaAction<Boolean> {
537
+ private String recipient;
538
+ private String subject;
539
+ private String body;
540
+
541
+ @Override
542
+ public Boolean executeAction() throws Exception {
543
+ JavaMailSender mailSender = getMailSender();
544
+ MimeMessage message = mailSender.createMimeMessage();
545
+ MimeMessageHelper helper = new MimeMessageHelper(message, true);
546
+
547
+ helper.setTo(recipient);
548
+ helper.setSubject(subject);
549
+ helper.setText(body, true);
550
+
551
+ mailSender.send(message);
552
+ return true;
553
+ }
554
+ }
555
+ ```
556
+
557
+ ### 2. 自定义代码集成
558
+
559
+ **策略 A: 内嵌脚本**
560
+ ```javascript
561
+ // 在低代码平台中嵌入 JavaScript
562
+ // Retool Transformer 示例
563
+ const rawData = {{ query1.data }};
564
+
565
+ // 复杂数据转换
566
+ const pivotTable = rawData.reduce((acc, row) => {
567
+ const key = `${row.year}-${row.quarter}`;
568
+ if (!acc[key]) {
569
+ acc[key] = { period: key, revenue: 0, cost: 0 };
570
+ }
571
+ acc[key].revenue += row.revenue;
572
+ acc[key].cost += row.cost;
573
+ return acc;
574
+ }, {});
575
+
576
+ return Object.values(pivotTable).map(row => ({
577
+ ...row,
578
+ profit: row.revenue - row.cost,
579
+ margin: ((row.revenue - row.cost) / row.revenue * 100).toFixed(1) + '%'
580
+ }));
581
+ ```
582
+
583
+ **策略 B: API 网关模式**
584
+ ```
585
+ ┌──────────────────────┐
586
+ │ Low-Code 前端 │
587
+ │ (UI + 简单逻辑) │
588
+ ├──────────────────────┤
589
+ │ API Gateway │
590
+ ├──────┬───────┬───────┤
591
+ │ 微服务A│ 微服务B│ 微服务C │
592
+ │ (Pro) │ (Pro) │ (Pro) │
593
+ └──────┴───────┴───────┘
594
+ ```
595
+
596
+ 复杂业务逻辑放在 Pro-Code 微服务中,低代码平台只负责 UI 层和简单的数据编排。
597
+
598
+ **策略 C: 事件驱动集成**
599
+ ```
600
+ Low-Code App → Webhook → Message Queue → Pro-Code Service
601
+
602
+ 处理复杂逻辑
603
+
604
+ Callback → Low-Code App
605
+ ```
606
+
607
+ ### 3. API 集成
608
+
609
+ **REST API 集成最佳实践**:
610
+ ```javascript
611
+ // 在低代码平台中配置 API 调用
612
+ // 1. 定义 API 资源
613
+ const apiConfig = {
614
+ baseURL: 'https://api.example.com/v1',
615
+ headers: {
616
+ 'Authorization': `Bearer ${env.API_TOKEN}`,
617
+ 'Content-Type': 'application/json'
618
+ },
619
+ timeout: 10000
620
+ };
621
+
622
+ // 2. 错误处理包装
623
+ async function safeApiCall(endpoint, method, data) {
624
+ try {
625
+ const response = await fetch(`${apiConfig.baseURL}${endpoint}`, {
626
+ method,
627
+ headers: apiConfig.headers,
628
+ body: data ? JSON.stringify(data) : undefined
629
+ });
630
+
631
+ if (!response.ok) {
632
+ throw new Error(`API Error: ${response.status} ${response.statusText}`);
633
+ }
634
+
635
+ return { success: true, data: await response.json() };
636
+ } catch (error) {
637
+ return { success: false, error: error.message };
638
+ }
639
+ }
640
+
641
+ // 3. 重试机制
642
+ async function apiCallWithRetry(endpoint, method, data, maxRetries = 3) {
643
+ for (let i = 0; i < maxRetries; i++) {
644
+ const result = await safeApiCall(endpoint, method, data);
645
+ if (result.success) return result;
646
+ await new Promise(r => setTimeout(r, 1000 * Math.pow(2, i)));
647
+ }
648
+ throw new Error(`API call failed after ${maxRetries} retries`);
649
+ }
650
+ ```
651
+
652
+ ---
653
+
654
+ ## 安全考虑
655
+
656
+ ### 1. 数据安全
657
+
658
+ **关键原则**:
659
+ - **最小权限**: 低代码应用连接数据库时使用只读账号,仅在必要时授予写入权限
660
+ - **数据脱敏**: 在低代码平台展示敏感数据时做遮蔽处理
661
+ - **传输加密**: 确保所有 API 调用走 HTTPS
662
+ - **存储加密**: 敏感配置(API Key、密码)使用平台提供的 Secret 管理
663
+
664
+ **常见风险**:
665
+ ```
666
+ ❌ 数据库凭证硬编码在低代码应用中
667
+ ❌ 未限制 API 查询范围,可被注入
668
+ ❌ 未配置行级安全(RLS),用户可见所有数据
669
+ ❌ 导出功能未限制,可批量导出敏感数据
670
+ ```
671
+
672
+ ### 2. 身份认证与授权
673
+
674
+ **推荐架构**:
675
+ ```
676
+ 用户 → SSO (SAML/OIDC) → Low-Code 平台 → RBAC 权限控制
677
+
678
+ ┌────────┼────────┐
679
+ │ │ │
680
+ Admin Editor Viewer
681
+ 全部权限 编辑权限 只读权限
682
+ ```
683
+
684
+ **RBAC 配置示例**:
685
+ ```json
686
+ {
687
+ "roles": {
688
+ "admin": {
689
+ "pages": ["*"],
690
+ "actions": ["create", "read", "update", "delete"],
691
+ "data_scope": "all"
692
+ },
693
+ "manager": {
694
+ "pages": ["dashboard", "team", "reports"],
695
+ "actions": ["read", "update"],
696
+ "data_scope": "department"
697
+ },
698
+ "viewer": {
699
+ "pages": ["dashboard"],
700
+ "actions": ["read"],
701
+ "data_scope": "self"
702
+ }
703
+ }
704
+ }
705
+ ```
706
+
707
+ ### 3. 审计与合规
708
+
709
+ - **审计日志**: 记录所有数据变更操作、登录事件、权限变更
710
+ - **数据驻留**: 确认平台数据中心位置符合 GDPR / 数据出境要求
711
+ - **SOC 2 合规**: 选择通过 SOC 2 认证的平台(OutSystems、Mendix、Retool 已通过)
712
+ - **HIPAA**: 医疗行业需确认平台支持 BAA 签署
713
+
714
+ ---
715
+
716
+ ## 性能限制
717
+
718
+ ### 1. 已知性能瓶颈
719
+
720
+ | 瓶颈 | 说明 | 缓解方案 |
721
+ |------|------|----------|
722
+ | 大数据量渲染 | 表格 > 1000 行时性能下降 | 分页 + 服务端筛选 |
723
+ | 复杂表单 | > 50 字段的表单响应慢 | 分步表单 + 懒加载 |
724
+ | 实时更新 | WebSocket 支持有限 | 轮询 + 缓存 |
725
+ | 文件处理 | 大文件上传/处理慢 | 后端服务处理 + 异步 |
726
+ | 并发用户 | 平台有并发上限 | 了解 SLA、考虑自托管 |
727
+ | 自定义 JS 复杂度 | 浏览器端执行有内存限制 | 移至后端 API |
728
+
729
+ ### 2. 性能优化策略
730
+
731
+ ```
732
+ 1. 数据层优化
733
+ ├── 使用分页(不要一次加载所有数据)
734
+ ├── 服务端过滤和排序
735
+ ├── 数据库索引优化
736
+ └── 缓存频繁查询的结果
737
+
738
+ 2. UI 层优化
739
+ ├── 延迟加载非可见组件
740
+ ├── 减少页面组件数量(< 100)
741
+ ├── 避免深层嵌套容器
742
+ └── 图片压缩和 CDN
743
+
744
+ 3. 逻辑层优化
745
+ ├── 避免在客户端做大量计算
746
+ ├── 批量 API 调用替代多次单独调用
747
+ ├── 使用 debounce 减少触发频率
748
+ └── 异步处理耗时操作
749
+ ```
750
+
751
+ ---
752
+
753
+ ## 常见陷阱
754
+
755
+ ### 陷阱 1: 平台锁定(Vendor Lock-in)
756
+
757
+ **问题**: 应用深度依赖特定平台,迁移成本极高
758
+ ```
759
+ ❌ 使用大量平台专有组件和 API
760
+ ❌ 业务逻辑全部在平台可视化流程中
761
+ ❌ 未保留数据导出能力
762
+ ```
763
+
764
+ **缓解**:
765
+ ```
766
+ ✅ 核心业务逻辑放在独立的 API 服务中
767
+ ✅ 使用标准协议(REST / GraphQL)而非平台专有连接器
768
+ ✅ 定期导出数据备份
769
+ ✅ 保持架构分层,UI 层可替换
770
+ ```
771
+
772
+ ### 陷阱 2: 影子 IT(Shadow IT)
773
+
774
+ **问题**: 业务部门自行构建应用,IT 部门不知情,导致安全和治理盲区
775
+ ```
776
+ ❌ 无法统一管理应用清单
777
+ ❌ 数据安全无法保障
778
+ ❌ 应用质量参差不齐
779
+ ```
780
+
781
+ **缓解**:
782
+ ```
783
+ ✅ 建立低代码治理委员会
784
+ ✅ 制定《公民开发者规范》
785
+ ✅ 统一平台采购和账号管理
786
+ ✅ 定期审计低代码应用清单
787
+ ```
788
+
789
+ ### 陷阱 3: 过度使用低代码
790
+
791
+ **问题**: 将低代码用于不适合的场景,导致维护噩梦
792
+ ```
793
+ ❌ 用低代码构建高并发面向客户的产品
794
+ ❌ 复杂算法逻辑用可视化流程实现(> 50 个节点的流程图)
795
+ ❌ 低代码应用之间形成复杂调用链
796
+ ```
797
+
798
+ **判断标准(何时不该用低代码)**:
799
+ ```
800
+ 以下场景建议 Pro-Code:
801
+ ├── 高并发(> 1000 QPS)面向客户的核心产品
802
+ ├── 复杂算法 / ML 模型推理
803
+ ├── 实时系统(< 100ms 延迟要求)
804
+ ├── 多团队协作的大型系统(> 20 开发者)
805
+ ├── 需要极致 UI 定制的产品
806
+ └── 性能敏感的数据处理管道
807
+ ```
808
+
809
+ ### 陷阱 4: 忽视测试
810
+
811
+ **问题**: 低代码应用缺乏自动化测试,变更后频繁出错
812
+ ```
813
+ ❌ 无回归测试
814
+ ❌ 手动测试覆盖不全
815
+ ❌ 数据迁移无验证
816
+ ```
817
+
818
+ **缓解**:
819
+ ```
820
+ ✅ 使用平台自带测试能力(如 OutSystems BDD Framework)
821
+ ✅ API 层使用 Postman / Newman 自动化测试
822
+ ✅ 关键流程编写端到端测试(Playwright / Cypress)
823
+ ✅ 变更前后数据校验
824
+ ```
825
+
826
+ ### 陷阱 5: 版本管理混乱
827
+
828
+ **问题**: 多人协作时缺乏版本控制
829
+ ```
830
+ ❌ 直接在生产环境修改
831
+ ❌ 无法追溯变更历史
832
+ ❌ 冲突合并困难
833
+ ```
834
+
835
+ **缓解**:
836
+ ```
837
+ ✅ 使用平台提供的版本控制(Retool 支持 Git)
838
+ ✅ 建立 Dev → Staging → Prod 环境流程
839
+ ✅ 变更需要审批后才能发布
840
+ ```
841
+
842
+ ---
843
+
844
+ ## 低代码项目治理框架
845
+
846
+ ### 1. 项目评估决策树
847
+
848
+ ```
849
+ 新需求到来
850
+
851
+ ├─ 用户量 > 500 或面向外部客户?
852
+ │ └─ 是 → 考虑 Pro-Code
853
+
854
+ ├─ 开发周期 < 2 周?
855
+ │ └─ 是 → 低代码优先
856
+
857
+ ├─ 需要深度定制 UI?
858
+ │ └─ 是 → Pro-Code 或低代码+自定义组件
859
+
860
+ ├─ 核心竞争力相关?
861
+ │ └─ 是 → Pro-Code(避免平台锁定)
862
+
863
+ └─ 内部工具 / 运营需求?
864
+ └─ 是 → 低代码首选
865
+ ```
866
+
867
+ ### 2. 团队配置建议
868
+
869
+ | 团队规模 | 推荐配置 |
870
+ |----------|----------|
871
+ | 1-3人 | 全栈低代码开发 |
872
+ | 3-8人 | 低代码开发 + 1名 Pro-Code 后端 |
873
+ | 8-15人 | 低代码前端 + Pro-Code 后端团队 |
874
+ | > 15人 | 考虑全 Pro-Code,低代码仅限内部工具 |
875
+
876
+ ---
877
+
878
+ ## Agent Checklist
879
+
880
+ ### 需求评估阶段
881
+ - [ ] 确认应用类型(内部工具 / 面向客户 / MVP)
882
+ - [ ] 评估用户量级和并发要求
883
+ - [ ] 确认是否有合规要求(GDPR / HIPAA / 数据出境)
884
+ - [ ] 评估 UI 定制程度需求
885
+ - [ ] 确认预算和交付时间线
886
+ - [ ] 识别是否需要 Escape Hatch(复杂逻辑/高性能需求)
887
+
888
+ ### 平台选型阶段
889
+ - [ ] 已有技术栈评估(微软生态 → Power Apps, 开源偏好 → Appsmith)
890
+ - [ ] 数据源兼容性确认
891
+ - [ ] 部署方式确认(SaaS / 自托管 / 混合)
892
+ - [ ] 团队技能匹配评估
893
+ - [ ] 锁定风险评估和迁移策略
894
+ - [ ] 定价模型与预算对比
895
+
896
+ ### 架构设计阶段
897
+ - [ ] 数据模型设计(实体/关系/约束)
898
+ - [ ] API 集成规划(内部 + 外部)
899
+ - [ ] 权限模型设计(RBAC / 行级安全)
900
+ - [ ] 工作流设计(状态机 / 审批链)
901
+ - [ ] 自定义代码策略(内嵌 vs API 网关 vs 事件驱动)
902
+ - [ ] 环境规划(Dev / Staging / Prod)
903
+
904
+ ### 开发阶段
905
+ - [ ] 组件命名规范制定
906
+ - [ ] 页面层级和导航结构设计
907
+ - [ ] 数据查询优化(分页/索引/缓存)
908
+ - [ ] 错误处理和用户提示
909
+ - [ ] 响应式布局(移动端适配)
910
+ - [ ] 国际化需求处理
911
+
912
+ ### 安全阶段
913
+ - [ ] 数据库连接使用最小权限账号
914
+ - [ ] 敏感数据脱敏处理
915
+ - [ ] API Key / Secret 使用平台 Secret 管理
916
+ - [ ] SSO / MFA 集成
917
+ - [ ] 审计日志配置
918
+ - [ ] 输入校验(防 SQL 注入 / XSS)
919
+
920
+ ### 测试与发布阶段
921
+ - [ ] 关键流程手动测试通过
922
+ - [ ] API 层自动化测试覆盖
923
+ - [ ] 权限模型验证(各角色功能边界)
924
+ - [ ] 性能测试(数据量/并发)
925
+ - [ ] 发布流程审批配置
926
+ - [ ] 回滚方案准备
927
+
928
+ ### 维护阶段
929
+ - [ ] 监控告警配置
930
+ - [ ] 定期数据备份验证
931
+ - [ ] 平台版本升级策略
932
+ - [ ] 应用清单定期审计
933
+ - [ ] 用户反馈收集机制
934
+ - [ ] 技术债务定期清理
935
+
936
+ ---
937
+
938
+ **知识ID**: `low-code-complete`
939
+ **领域**: low-code
940
+ **类型**: standards
941
+ **难度**: intermediate
942
+ **质量分**: 92
943
+ **维护者**: lowcode-team@umadev.com
944
+ **最后更新**: 2026-03-28