11.需求分析与设计
1. 为什么需要需求分析与设计?
1.1 开发前的思考
常见问题:
- 直接写代码:写着写着发现需求不清楚,要重写
- 没有规划:功能混乱,用户体验差
- 沟通不畅:开发者和用户理解不一致
生活类比:
- 没有需求分析:像盖房子不画图纸,盖到一半发现不对
- 有需求分析:先画图纸,再施工,事半功倍
常见问题:
生活类比:
在之前的章节中,我们使用CDN直接引入Vue.js,这种方式适合学习,但在实际项目中会遇到问题:
问题:
在第七章中,我们学习了Vue.js的基础组件概念。然而,在实际开发中,组件往往不是孤立存在的,它们需要相互协作、传递数据。
实际场景:
在之前的章节中,我们使用原生JavaScript实现了待办事项应用。
问题:
createElement、appendChild)原生JavaScript需要开发者手动管理数据与DOM的同步,当应用复杂度增加时,这种手动管理方式会导致代码冗余、难以维护,且容易出现状态不一致的问题。
在之前的待办事项应用中,每次刷新页面后,用户输入的数据都会丢失。这是因为原生JavaScript操作的数据仅存在于内存中,页面刷新会导致内存清空。
核心问题:
Web应用需要将数据持久化存储,以便在页面刷新或重新访问时能够恢复用户数据,提升用户体验。
在第四章中,我们学习了JavaScript的基础语法、DOM操作、事件监听和表单验证。然而,当需要处理异步操作(如网络请求、文件读取)时,传统的回调函数方式会导致代码结构复杂、难以维护。
还记得我们之前学的HTML和CSS吗?
还记得我们在第二章学的HTML吗?HTML就像是一张白纸上的文字,告诉你"这里有个标题"、"那里有段文字",但所有的文字都是黑色、同样大小、没有颜色。
Web = 万维网(World Wide Web)
它不是互联网(Internet),而是互联网上的一种服务,就像微信、QQ一样。
生活类比:
你用手机刷抖音 → 抖音App是"客户端"
你用浏览器看网页 → 浏览器是"客户端",Web是背后的信息系统