10.7阅读笔记

news/2025/10/7 20:22:17/文章来源:https://www.cnblogs.com/jlr1207/p/19126367

正当我对着空白的IDE发愁“该如何开始”时,这本书的《曳光弹开发》这一章给了我明确的方向。
​​1. 曳光弹 vs. 原型—— 两种启动策略​​
这是我第一次接触这两个概念,它们解决的是不同的问题。
​​原型:用于探索和验证。​​ 书上说原型是“用完即弃”的。这让我想起学C语言时,要验证一个复杂的算法逻辑,我会先写个简单的test.c,只关注核心算法,忽略输入输出和错误处理。这就是一个​​原型​​。它的目的是​​回答特定问题​​,比如“这个排序算法在我的数据上有效吗?”。在Java里,我可以快速写一个Main类,用硬编码的数据测试一个核心类(比如Book)的行为,而不必关心UI或数据库。
​​曳光弹:用于构建真实系统。​​ 而“曳光弹”的方法酷毙了!它的目标是​​最终系统的一部分​​。想象一下,你要开发一个完整的电商网站(这目标太大了,让人无从下手)。曳光弹方法不是先花半年做数据库设计,再花半年做后端API,而是​​在第一天就让一个极简但“端到端”可用的系统跑起来​​。比如,做一个最简单的功能:“显示一件商品的信息”。这个功能需要:
前端
后端
数据库(一张简单的商品表)
当你把这个最细的链路打通,虽然功能简陋,但它是一个​​真实的、完整的​​系统骨架。之后增加用户登录、购物车等功能,就像是往这个骨架上添肉。
​​2. 我的课程设计实践:迷你图书管理系统​​
我决定用“曳光弹”方法来启动我的Java课程设计。我的“第一发曳光弹”目标是:​​实现一个通过控制台输入命令,可以“添加”一本图书并“列出”所有图书的程序。​​
这个目标虽小,但涉及了完整链路:
​​领域模型:​​ 创建Book实体类。
​​数据层:​​ 创建BookRepository接口及其内存实现InMemoryBookRepository。
​​业务逻辑:​​ 创建BookService类,包含addBook和getAllBooks方法。
​​用户界面:​​ 一个简单的控制台循环,解析用户命令。
花了一个下午,我这个“曳光弹”程序真的跑起来了!虽然它只能做两件事,但带来的​​信心提升是巨大的​​。我不再面对一个庞大的、令人焦虑的空白项目,而是有了一个可以运行、可以扩展的基础。接下来,我就可以像打靶一样,沿着这个弹道(即架构),依次实现“删除图书”、“查询图书”、“持久化到文件”等功能。
​​3. 便签的智慧—— 随时清空大脑​​
“用便签来策划”这个建议太实用了!我以前习惯把想法和待办事项都记在脑子里,结果经常忘记,或者因为事情太多而无从下手。现在,我开始用Trello这类看板工具(数字便签)来管理我的学习和项目。
我为图书管理系统创建了一个看板,包含“待办”、“进行中”、“测试中”、“完成”等列表。把“实现删除功能”、“为Book类添加ISBN属性”这样的小任务写成卡片。每完成一个,就把它拖到“完成”列,这种​​视觉化的进度​​带来了巨大的成就感,也让我能专注于当前最该做的事。
​​总结与联想:​​
这一章让我明白,​​启动项目的能力和编码能力同等重要​​。“曳光弹”方法完美解决了我的“开端焦虑症”,而“便签”则帮助我管理复杂性和保持专注。联想到多态,我意识到我的InMemoryBookRepository就是一个“曳光弹”,未来我可以很容易地创建一个FileBookRepository,利用多态在不修改业务代码的情况下替换它,这正是正交性和可撤销性的体现。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/930800.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如果你的微信支付界面出现“摇一摇”,说明你的隐私正在泄露

你刚付完款,手机自己跳出摇一摇,红包没抢着,位置先被商家锁定。这不是错觉。<ignore_js_op>微信去年悄悄上线附近优惠,四月起推得更猛。很多人第一次见,以为中毒,其实是后台把付款记录和基站信号打包,算出…

多线程和网络总结

近期Python网络编程与多线程/多进程学习复盘 一、核心知识收获 1. 多线程与多进程编程多线程应用:实现图片下载(DownloadHanlder类继承Thread,重写run方法处理下载逻辑),利用线程并行处理网络IO任务,提高下载效率…

8.RV1126-OPENCV 视频中添加LOGO - 指南

8.RV1126-OPENCV 视频中添加LOGO - 指南pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Mo…

学习记录:响应式系统、文件通知与游戏输入机制的异同

引言 在学习前端开发和系统编程的过程中,我们常常会遇到“自动响应变化”的现象:Vue/React 中数据更新后 UI 自动刷新 删除文件后文件管理器图标立即消失 游戏中按下按键角色立刻移动这些现象看似都体现了“响应式”…

虎丘做网站价格个人网页设计作业总结

目录 写在开头1.了解情感分析的概念及其在实际应用中的重要性1.1 情感分析的核心概念1.1.1 情感极性1.1.2 词汇和上下文1.1.3 情感强度1.2 实际应用中的重要性 2. 使用情感分析库进行简单的情感分析2.1 TextBlob库的基本使用和优势2.1.1 安装TextBlob库2.1.2 文本情感分析示例2…

oppoR9m刷Linux系统: 制作 scatter.txt 和 导出手机preloader

前言全局说明COM、VCOM、9008模式备份系统与基带IMEI/NVRAM/QCN 前面两篇文章,用不同方式备份,这次用 MTK 自带的 COM、VCOM 方式备份。注意:刷机,会丢失用户:照片、聊天等信息资料。请备份基带等信息。请慎重刷机…

做百科专用参考链接的网站仿站多少钱

前段时间,业务的虚机上安装了symantec Endpoint Protection(正版)&#xff0c; 发现虚机运行一段时间就会失去响应死机&#xff0c;并且有些安装symantec的虚机3389端口无法使用&#xff0c;怎么折腾都不行。最后决定卸载它。一、是否可以用停止服务和终止进程再卸载的方式卸载…

详细介绍:ASR技术(自动语音识别)深度解析

详细介绍:ASR技术(自动语音识别)深度解析pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", &quo…

1.1 采样问题 Sampling and Bandits

n臂bandits(n-armed bandits) n臂bandits(multi-armed bandit)是最简单的试错式学习形式。学习与动作选择都发生在同一个状态中,在该状态下有 \(n\) 个可用动作,每个动作对应不同的奖励分布。目标是通过试错的方…

升级下载:进阶版(二级单工序)

升级下载:进阶版(二级单工序)Posted on 2025-10-07 20:09 EXLman 阅读(0) 评论(0) 收藏 举报. 当前款式:进阶版(二级单工序) . 文件名称:PXCtwobom.dll . 升级方法:下载解压后,直接替换该文件 .

绵阳 网站建设百度官网网址

最近接触一个新的传统项目&#xff0c;在联调过程中&#xff0c;查看日志特别不方便&#xff0c;既无trackId&#xff0c;即无接口耗时&#xff0c;所以写了该博客。话不多说&#xff0c;直接上代码 1、实体类user package com.yk.domain;import lombok.Data;Data public cla…

UCB-CS70_离散数学_个人笔记:至少和至多 - Zeeh

有趣的命题 在note1中,提出了两个关于“至少”和“至多”的命题:There are at least three distinct integers x that satisfy P(x). 有 最多 三个不同的整数x这满足p(x)。对于这两个命题,可以分别用下面两个式子…

太原网站制作开发域名怎么实名认证

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 找镜像&#xff1a; docker search nexus2. 拉取镜像&#xff1a;&#xff08;我已经拉取过&#xff0c;不选择版本时&#xff0c;默认…

模板做的网站 怎么提升排名商标设计公司推荐

冒泡排序 比较相邻的元素。如果第一个比第二个大&#xff0c;就交换他们两个。对每一对相邻元素做同样的工作&#xff0c;从开始第一对到结尾的最后一对。在这一点&#xff0c;最后的元素应该会是最大的数。针对所有的元素重复以上的步骤&#xff0c;除了最后一个。持续每次对越…

10.7 NOIP 模拟赛 T2. 中心极限定理

思路 发现吃马不好维护, 考虑直接状态压缩马的存活情况, 可以做到 \(\mathcal{O} (n^2 2^m)\) 考虑进一步处理, 发现由于你的棋子不能回头, 吃掉一个马后, 最多走三步就跳出了马的范围, 所以我们可以直接把前两步的路线…

【题解】10.6 国庆中秋 提高组 热身赛

1.栅栏密码 题目传送门题目大意: 给定高度 h 和一行使用栅栏密码加密的密文字符串 s,请你输出一行明文字符串 plain。 即把明文排列成若干个 \/\/\/ 的形状,然后再逐行按从左到右的顺序取出字符,形成密文。STEP 1.…

深圳手机网站建设牛商网购物网站的排版

简介&#xff1a; 先说下什么是人脸识别系统&#xff1a;举个例子&#xff0c;公司门口有个人脸识别系统&#xff0c;员工站到门口&#xff0c;看着摄像头&#xff0c;大屏幕上会抓拍到你的人脸&#xff0c;然后和公司的员工照片库里的照片比对&#xff0c;比对成功就提示&…

深入解析:pikachu通关教程-File Inclusion

深入解析:pikachu通关教程-File Inclusion2025-10-07 20:03 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: blo…

UCB-CS70个人笔记:至少和至多 - Zeeh

有趣的命题 在note1中,提出了两个关于“至少”和“至多”的命题:There are at least three distinct integers x that satisfy P(x). 有 最多 三个不同的整数x这满足p(x)。对于这两个命题,可以分别用下面两个式子…

几个重要的偏微分方程

几个重要的偏微分方程1. 弦振动方程