微信小程序菜谱查询点评系统:毕设全流程开发指南
1. 为什么选这个题目毕设选题背后的价值判断每年到了毕设选题的季节总有一批同学在题库里翻来翻去最后把目光停在这个题目上基于微信小程序的菜谱查询点评系统。坦白说这个题目第一眼看上去并不惊艳不像人脸识别、推荐算法那样听起来有科技感但它恰恰是我见过最适合用来完成毕设、同时又能真正学到东西的题目类型之一。先说它为什么值得选。核心原因是这个题目的功能边界非常清晰数据模型足够典型技术栈又正好踩在主流路线上。菜谱查询本质上是信息检索点评互动本质上是用户生成内容两者加起来就是一套标准的内容型应用骨架。你在做这个系统的过程中会接触到的用户登录、列表展示、关键词搜索、详情页跳转、评论提交与展示、收藏功能这些几乎是所有互联网产品都会用到的通用能力。做完它你带走的不是某个刁钻算法的经验而是一整套能迁移到任何业务系统的开发思路。与同类型的毕设题目横向对比一下会看得更清楚。市面上常见的题目可以分成几类题目类型技术难度功能完整度答辩可讲性对找工作的帮助图书管理系统低中比较平淡偏弱电商购物小程序中高较好较强菜谱查询点评系统中高好较强基于推荐算法的电影系统高中好较强但易翻车人脸识别门禁系统高低偏重算法取决于深度电商小程序虽然也很完整但业务复杂度高容易把时间耗在订单状态机、支付回调这类环节上算法类题目听着高级但如果只是调库调包答辩时反而容易被问穿。菜谱查询点评系统卡在中间既有足够的业务纵深可以展开讲又不会复杂到让一个人在三五个月内做不完。对Java方向的同学来说它还能自然地把Spring Boot、MyBatis、MySQL、微信小程序这些主流技能点串起来一举多得。更深一层看这类题目考察的是把需求转化为系统的能力。用户要查菜谱你要设计查询逻辑用户要点评你要设计审核机制用户要看到别人的点评你要处理展示排序。每一步都对应明确的需求分析、数据库设计和接口开发工作这正是毕业设计应该体现的能力。我在带学弟学妹做类似项目时反复强调过一句话毕设不是用来炫技的而是用来证明你具备独立完成一个完整系统开发能力的。从这个角度看这个题目几乎是量身定做。2. 系统整体设计小程序端与Java后端的分工边界定下题目之后第一件事不是写代码而是把系统的功能边界划清楚。很多人上来就建工程结果做到一半发现模块互相纠缠改一处崩三处。先画清楚前后端各自的责任范围后面写起来会顺很多。2.1 功能模块划分与核心用例菜谱查询点评系统从用户视角拆开主要包含这几个功能点浏览菜谱列表、按关键词搜索、查看菜谱详情、发布点评、查看点评列表、收藏菜谱、个人中心。管理员端还需要有菜品管理和点评管理用来处理内容上线和信息维护。我用用例图的方式梳理过一遍核心参与者有两个普通用户和管理员。普通用户的核心操作是查菜谱和写点评这两个动作构成了系统的主链路。菜谱列表需要支持分类筛选和分页加载搜索需要支持菜名和食材关键词的模糊匹配详情页要展示材料清单、步骤描述和已有用户的点评内容。点评功能则需要登录态校验只有登录用户能够发布点评未登录用户只允许浏览。管理员的功能相对简单但很重要菜品信息的新增、上下架、编辑以及点评内容的管理。在实际项目中管理员端不一定要做独立的Web页面很多同学选择直接在数据库中维护但从系统完整性角度做一个简易管理接口会更像样答辩时也更有说头。2.2 技术栈选型为什么是Java Spring Boot 微信小程序技术上我强烈建议采用Spring Boot作为后端框架搭配MyBatis或MyBatis-Plus操作数据库前端使用微信小程序原生框架。这套组合在高校毕设中非常成熟资料多、问题几乎都能搜到解决方案更重要的是它符合当前国内中小型项目的真实技术形态。选Spring Boot而不是Spring MVC的传统XML配置方式是因为Boot把大量的配置自动化了让你把精力集中在业务逻辑上。Spring Boot内置Tomcat打包成jar直接跑部署成本低这对最后写部署文档和答辩演示都友好。MyBatis-Plus则简化了单表CRUD操作内置分页插件写菜谱列表的分页查询只需要几行代码不用手写一堆重复的Mapper XML。数据库用MySQL是必然选择存储结构清晰、事务支持可靠点评功能里某道菜的平均评分这种聚合查询在MySQL里写起来也直接。小程序端使用原生开发不需要引入额外的跨端框架。原因很简单原生框架的学习曲线平缓页面逻辑直观编译调试链路最短。对于毕设这种时间有限的项目稳定比什么都重要。2.3 项目结构规划与数据库表设计项目结构采用经典的分层架构controller层接收请求、service层处理业务逻辑、mapper层与数据库交互、entity层承载数据对象。小程序端单独建项目按照页面维度组织目录。前后端分离通过HTTP接口通信这种结构在答辩时最容易讲清楚。数据库方面的设计是整个系统的地基我建议至少规划五张核心表用户表、菜品分类表、菜品信息表、点评表、收藏表。这里给出实际建表时的核心字段参考用户表重点存微信登录后的openid和用户基本信息菜品表要包含名称、分类ID、主料、辅料、步骤说明、封面图URL、浏览量点评表要关联用户ID和菜品ID包含评分、评论内容、点赞数、创建时间收藏表记录用户与菜品的收藏关系注意加唯一索引防止重复收藏。在设计菜品表时有一个容易被忽略的点步骤说明字段的数据类型。很多同学习惯用varchar但一道菜的烹饪步骤少则五六行、多则十几行varchar长度很容易不够建议直接用text类型。类似的还有点评内容字段也建议用text而不是varchar(255)。这两个看起来很小的选择能在后期省掉不少改表麻烦。另外一个容易被问到的设计细节是为什么点评表要把评分单独拆出来而不是塞在点评内容字段里因为评分是结构化数据后续要统计某道菜的平均分、按评分排序如果混在文本里这些查询全都要做字符串解析性能差不说代码也写着难受。数据库设计的基本原则就是字段要有明确的语义一个字段只存一个维度的信息。3. 菜谱查询功能的核心实现搜索不只是like %xx%菜谱查询是整个系统的门面功能用户打开小程序第一件事就是找菜。这一部分实现得好不好直接决定使用体验。很多参考代码里搜索功能就是一两条like查询但真实做下来有几个地方值得仔细设计。3.1 关键词匹配策略与分类推荐逻辑先看搜索。用户输入的搜索词可能是菜名比如红烧肉可能是食材比如土豆也可能是菜系比如川菜。为了一次搜索能覆盖所有可能查询条件需要做多字段匹配而不是只匹配菜名。我在实际项目中使用的Service层逻辑大致是这样Override public PageResultDishVO searchDishes(String keyword, Integer categoryId, int page, int size) { LambdaQueryWrapperDish wrapper new LambdaQueryWrapper(); if (StringUtils.hasText(keyword)) { wrapper.and(w - w .like(Dish::getName, keyword) .or().like(Dish::getMainIngredient, keyword) .or().like(Dish::getCategoryName, keyword) ); } if (categoryId ! null) { wrapper.eq(Dish::getCategoryId, categoryId); } wrapper.orderByDesc(Dish::getViewCount); PageDish dishPage dishMapper.selectPage(new Page(page, size), wrapper); return convertToPageResult(dishPage); }这段代码的思路是关键词只要命中菜名、主料或分类名就算匹配成功。分类筛选用等值匹配搜索用模糊匹配两者可以组合。排序默认按浏览量倒序这样热门菜品会排在前面不需要引入复杂的推荐算法也能给用户相对合理的展示顺序。搜索之外还有一块值得做分类浏览。家常菜汤羹凉菜烘焙这种分类标签相当实用小程序首页做一个分类入口点进去直接按分类拉取列表。分类页面的查询条件就是categoryId加上分页就可以了。这样整套查询功能就有了两个入口按关键词搜、按分类逛覆盖了用户找菜谱的两种典型路径。分页是列表查询绕不开的话题。小程序端的滚动加载模式适合用页码来分页每次请求传page和size后端返回值里面带上total和pages两个字段小程序端根据hasMore判断是否继续加载。MyBatis-Plus的分页插件配置一次之后所有分页查询都是selectPage搞定代码非常统一维护起来很舒服。3.2 详情页浏览量统计与数据更新策略菜品详情页除了展示详细信息还有一个不起眼但很加分的功能点浏览量统计。每次用户打开详情页浏览量加一。这个操作如果写死在查询逻辑里每次打开详情都要执行一次update语句对性能不友好。我当时采用的办法是把浏览量加一操作放在详情接口中查询完成后单独执行一次update虽然多花了一次数据库交互但对于毕设级别的并发量完全够用。答辩时如果有人问高并发下怎么做你可以回答用Redis的incr做异步计数属于加分回答。详情页还有一类特殊数据处理步骤描述是多行文本在小程序端展示时要注意换行符显示。MySQL里的text字段如果存的是带\n的纯文本小程序端的组件默认不会自动换行需要在渲染前用CSS样式white-space: pre-line处理否则用户看到的就是一大坨挤在一起的文字。这个坑很容易被忽略但一个小细节就能让页面专业度提升不少。从整体来看查询模块的设计原则是够用、清晰、可解释。接口统一定义返回格式状态码、消息、数据前端只需要处理一种结构省去大量繁琐的异常分支逻辑。我用的统一返回结构是{ code: 200, message: success, data: { records: [], total: 50, page: 1, size: 10 } }code表示业务状态200代表成功非200时message给出错误提示前端直接根据code做判断展示。这种风格在真实公司项目里也很常见写出来既规范又好看。4. 点评互动模块开发评分、评论与用户体系点评互动是让这个系统区别于普通菜谱查询工具的关键功能。它把系统从单向的信息展示变成了双向的社区互动也把用户从消费者变成了贡献者。这一模块涉及用户体系、数据写入、权限校验三块内容是综合度最高的部分。4.1 点评数据模型与发布流程点评表的核心字段上面已经提过这里重点说它的写入链路。发布点评的接口需要接收三个信息菜品ID、评分1到5分、评论内容。用户信息不从前端传而是从token里解析。因为如果允许前端传用户ID任何人伪造一个请求就可以冒充他人发评论这是身份认证上非常典型的漏洞。完整的发布流程是小程序端获取用户登录凭证后端调用微信接口换取openid系统根据openid找到用户签发一个token返回给小程序端。后续每次发布点评小程序端在请求头里带上这个token后端校验token后从其中解析出用户ID再写入点评记录。这样用户ID永远不会暴露在前端请求参数中。评分组件的实现要稍微提一下。小程序端我用了一个简单的星标评分组件五颗星用户点击第几颗星就是几分。这个交互看起来简单实现时要注意touch事件的坐标计算获取点击位置相对于评分区域的横向偏移除以每颗星的宽度判断落在第几颗星上。做的时候要处理边界情况比如点击最左边缘应该是1分而不是0分。发布点评的Service层代码有两个关键点一个是事务处理一个是评分统计。写入点评记录和更新菜品的评分均值、点评数量这两个操作必须在一个事务里完成否则会出现点评写了但评分没更新的数据不一致问题。Spring Boot中用Transactional注解标注Service方法即可但要注意注解只能放在public方法上且要通过代理对象调用才生效自己内部直接调用是不走事务的。这个细节不少同学栽过跟头。4.2 内容管理与敏感信息过滤的取舍有了点评功能就必然要考虑内容管理的问题。毕设项目虽然不用上完整的内容安全平台但至少要有一个基本的处理策略。我的做法是两层第一层在发布接口里做基础校验评论内容不能为空、长度不超过500字第二层做一个敏感词过滤的简单实现在Service层对评论内容进行检查。敏感词过滤可以自己维护一个敏感词列表用遍历的方式检查是否包含某个词也可以引入开源的工具类。毕设阶段不需要做太复杂的DFA算法一个简单实现配合注释说明即可。答辩时这段反而能成为亮点你能主动谈到内容安全说明你考虑问题有产品思维。点评列表的展示也有设计空间。按时间倒序是最基础的做法但用户通常更想看高质量点评所以我在查询时加了一个排序参数默认按时间倒序也可以按点赞数倒序。这个小功能看似不起眼但在答辩演示时你可以讲这个系统支持按照不同维度排序点评结果一句话就能体现出你的设计考虑。收藏功能从数据模型上看比较简单但有一个接口细节值得提一下判断当前用户是否已收藏这道菜。这个查询需要同时传入用户ID和菜品ID查收藏表是否存在记录。由于我在建表时加了唯一索引user_id, dish_id这个查询还能顺便利用索引加速同时防止同一用户对同一道菜重复收藏。小程序端的收藏按钮要做成两态切换点击后调用收藏或取消接口接口里通过是否存在记录来决定执行插入还是删除。5. 微信小程序端的页面设计与接口对接实践小程序端是用户直接面对的部分做得顺不顺手直接影响演示效果。这一节讲我在实际开发中对页面结构、组件使用和接口联调的一些经验重点说容易出问题的地方。5.1 首页信息架构与推荐位设计首页是整个小程序的门面我采用的布局是顶部搜索框 分类导航 推荐菜谱列表。搜索框是假按钮点击跳转到搜索页分类导航是一排横向滚动的图标按钮推荐列表用卡片形式展示菜品图和名称。这个布局最大的好处是信息层级清晰用户一眼就知道这个App能干什么。推荐菜谱列表的加载是典型的分页场景。小程序端的onReachBottom事件触发加载下一页配合setData把新数据追加到列表尾部。这里要注意一个性能细节setData的数据量要控制避免一次性渲染过多图片导致页面卡顿。更稳妥的做法是做图片懒加载列表项的image组件加上lazy-load属性让图片在接近视口时才加载。首页接口调用有一个容易踩的坑页面刚打开时onLoad方法里发起请求如果网络慢用户会看到白屏或者空列表。我的习惯是页面数据请求加上loading状态用wx.showLoading显示加载中的提示数据回来后再wx.hideLoading。数据量大时还可以做骨架屏但毕设阶段loading提示已经足够。5.2 搜索页与详情页的交互细节搜索页的核心交互是防抖。用户每输入一个字就发一次请求对后端压力大体验也未必好。我用的是一个简单防抖利用setTimeout延迟300毫秒用户停止输入300毫秒后才真正发起搜索请求。同时要注意用户可能快速清空输入框这时要取消上一次的定时器避免发出无效请求。详情页的数据结构比列表复杂包含基本信息、材料清单、步骤、点评列表四部分。页面渲染时要注意数据从接口返回后一次性setData不要拆成多次请求多次渲染那样会给用户页面在跳的不稳定感觉。详情页还有一个需要处理的场景从分享链接进入。微信小程序支持自定义分享卡片分享出去的链接带有菜谱ID参数用户点进来时页面需要根据参数重新拉取详情。这个功能在onLoad(options)中通过options.id获取参数和正常进入的逻辑统一处理即可。接口联调阶段最容易出问题的不是业务逻辑而是request封装。我在项目里单独封装了一个request.js统一设置baseUrl、请求头、超时时间和响应拦截。在请求头里统一加上token字段这样所有接口只需关注业务参数。封装之后开发效率能提升一个档次也不需要每个页面重复写一堆样板代码。值得一提的还有环境配置问题。本地开发时request的baseUrl指向本机调试地址微信开发者工具需要勾选不校验合法域名。但真机预览时请求地址必须是HTTPS且已经在微信公众平台配置过域名白名单。很多同学在自己电脑上跑得通一上真机就白屏基本都是这个原因。我的建议是把baseUrl单独放在一个config.js文件里注释写清楚两种环境各自的配置方式和注意事项。6. 毕设开发中常见的踩坑点排查链路与解决方案做这个系统的过程中我遇到了不少问题挑三个最有代表性的写出来。这些问题在网络上几乎都能搜到但搜到的答案往往只给结果不给过程我这里把完整的排查思路也讲清楚希望大家不只是抄答案而是理解定位问题的思路。6.1 小程序登录态失效从偶现报错到token过期机制第一个问题是登录态失效。项目的表现是用户用着用着发布点评或者收藏时突然提示登录已过期请重新登录然后再点一次又能正常操作。一开始我以为是网络抖动后来发现是有规律的每次隔一段时间后第一次操作必然报错。排查过程中我先检查了前端逻辑看token是不是在请求头里确认没有漏传。然后去后端看日志发现报的是401也就是token校验不通过。继续查token的签发和验证逻辑才注意到我在签发token时设置的过期时间是2小时而前端是永久保存token的。问题根因清楚了吗并没有因为隔一段时间第一次操作报错、再点一次成功这个现象说明第二次操作其实用的是新token为什么第二次就成功了呢继续排查才发现前端有一个统一处理401的逻辑收到401代码后会自动重新走一遍微信登录流程拿到新token后重发刚才失败的请求。所以第一次操作带着旧token过去被拒前端自动换新token并重试第二次操作自然就成功了。解决方案其实很简单在token即将过期时主动刷新或者把过期时间放宽到7天。我选了后者并在签发token时缓存了一份openid到用户表中即便token过期用户重新登录也能通过openid找到原有账号数据不会出现登录一次就变成新用户的尴尬情况。这个问题的教训是遇到偶现问题不要只盯着单次请求看要结合前端的重试逻辑和后端的校验策略一起分析。6.2 图片加载失败与域名白名单配置第二个问题很典型列表页的菜品图片一部分显示正常一部分显示为默认占位图。我看了一下控制台报的是图片下载失败或者url不是合法域名。第一反应是检查图片链接格式发现没问题再检查数据库中存的图片地址也没问题但我自己的编辑后台上传的图片用的是本机地址另外一些图片是从别的地方截取的链接。问题就在这里微信小程序对图片域名有严格限制只有配置在downloadFile合法域名列表里的服务器图片才能正常加载。这个问题的标准解法是所有图片统一上传到后端服务器或云存储拿到服务器返回的URL后再存入数据库前端只展示这些URL。自己开发时可以用开发者工具不校验合法域名选项跳过校验但真机预览就没法跳过必须在公众平台配置。所以在设计阶段就要想清楚图片存储方案不能临时从外站扒图片链接。我当时重构了图片存储逻辑写了一个统一的文件上传接口接收小程序端上传的临时文件保存到服务器指定目录并返回访问路径一劳永逸。6.3 数据库连接池连接不够用第三个问题出现的时机很有意思功能都做完了联调测试时用微信开发者工具连续操作多个页面突然发现接口响应特别慢后台日志报数据库连接获取超时。我先去检查数据库服务状态正常手动执行SQL正常再回来看报错日志明确写着HikariPool - Connection is not available, request timed out指向数据库连接池资源耗尽。这个问题的根因是我在全局只有一个数据源配置连接池默认最大连接数是10。小程序端的请求虽然是串行触发的但我的一次页面加载里会并发调用好几个接口每个接口各自占一个连接再加上本地还有其他服务也连同一个数据库10个连接很快就被占满了。解决办法是按需调整连接池参数最大连接数从10调到50最小空闲连接数保持5连接超时时间从30秒降到5秒这样设置完毕再跑压测脚本连续请求200次响应稳定了。排查这类问题的经验是先看报错关键字connection is not available基本指向连接池问题不用先从业务代码入手。反过来也一样业务代码有问题时不要先怀疑连接池。按报错信息分层定位能省大量时间。7. 答辩准备与项目扩展方向系统做完不代表结束答辩才是毕业设计的最后一关。很多同学系统做得不错但答辩三五分钟就被问住了问题大多出在只做了代码没理清设计思路上。这里分享几个我总结的答辩高频问题和应对思路。7.1 答辩高频问题与应对策略第一个必问题为什么选择微信小程序而不是App或Web端回答思路是小程序无需安装、即用即走、有微信生态的传播优势适合菜谱这种轻量工具型应用同时小程序开发门槛低便于独立完成全栈开发。如果能补充一句小程序端配合Java后端是当前中小型项目的常见组合说明我对主流开发模式有了解观感会更好。第二个问题数据库为什么这样设计不要只说为了存数据要从三范式、业务需求、查询性能角度讲。比如点评表和菜品表分离、评分单独建字段是为了支持聚合查询收藏表加唯一索引是为了防止重复数据。把每个设计决策背后的为什么讲清楚比列出十张表更让老师信服。第三个容易被问的是系统有哪些安全性考虑可以从用户密码不落库微信登录无需密码、token鉴权、参数校验、敏感词过滤几个方面讲。哪怕实现得比较简单只要逻辑自洽老师也认。第四个问题通常在演示环节出现如果用户量大了怎么办不用慌这是开放题。可以从数据库加索引优化查询、Redis缓存热门菜谱、图片迁移云存储、Nginx做静态资源分离这几个方向回答说清楚现阶段是毕设规模但我了解生产环境下的优化方向即可。7.2 从毕设到产品可选的进阶扩展方向如果做完基础功能还有精力或者想拿这个项目去丰富简历有几个扩展方向性价比很高。第一个是给菜品加周排行和新手推荐标签结合点评数据做简单热度计算展示时多一个亮点模块第二个是把管理员端做完善支持在Web页面上管理菜品和点评做成真正的前后端分离项目第三个是把图片存到对象存储、加上CDN虽然毕设不需要但写进项目文档里至少说明你有生产意识。我自己做这个项目时一个很深的体会是毕设不只是为了毕业它是你第一次完整地走一遍需求分析 - 系统设计 - 编码实现 - 测试部署 - 文档答辩全流程的机会。这套流程走下来你对软件工程的理解会从课本上的概念变成肌肉记忆。哪怕题目再普通只要认真做完、讲清楚它就是一份合格的作品。如果你也选了这道题目我的建议是先花两三天把数据库表和接口文档定下来再开始写代码。接口先行、页面后面比一边写接口一边写页面高效得多。遇到问题不要憋着优先从报错信息入手按链路一层层排查。做完之后多让身边同学用一用收集反馈、修修细节这些小修小补反而会让你的系统看起来成熟很多。

相关新闻

用Agent重构网络变更:像L4自动驾驶一样实现自动回滚与灰度发布

用Agent重构网络变更:像L4自动驾驶一样实现自动回滚与灰度发布

深夜的变更窗口,网络工程师盯着屏幕,手心冒汗。一条命令敲下去,要么顺顺当当收工,要么全网路由震荡、业务面报障。这种“搏心跳”的状态,干过网络的人多少都经历过。我做了十几年网络运维,从命令行时代一路…

2026/10/17 7:51:14 阅读更多 →
CocosCreator2.4.3 AssetBundle热更新实战:大厅+子游戏方案解析

CocosCreator2.4.3 AssetBundle热更新实战:大厅+子游戏方案解析

做这行的人大概都经历过那种时刻:应用商店里挂着旧版本,运营已经在群里被用户追着问“为什么还不更新”,而代码仓库里那个导致闪退的坑早就填完了。如果项目正好锁在 CocosCreator 2.4.3,又想要“大厅子游戏”这种常见的玩法框架&…

2026/10/17 7:51:14 阅读更多 →
Python潜在语义分析实战:用LSA解决同义词检索难题

Python潜在语义分析实战:用LSA解决同义词检索难题

1. 为什么搜“Python潜在语义分析”:一个让我头皮发麻的检索事故先讲个真事。三年多前我做了一个小型的内部文档检索系统,数据量不大,也就几千份技术方案和合同文本。最初我偷懒,直接拿 TF-IDF 向量化之后套余弦相似度。上线第一天…

2026/10/17 7:51:14 阅读更多 →

最新新闻

储能电池被动均衡方案设计:MP2642GR-Z与PIC18F4550实战

储能电池被动均衡方案设计:MP2642GR-Z与PIC18F4550实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 9:49:46 阅读更多 →
两节串联锂电池被动均衡方案:MP2642GR-Z与STM32F401RB实战

两节串联锂电池被动均衡方案:MP2642GR-Z与STM32F401RB实战

1. 为什么串联电池组的均衡不是"可选功能"而是"生存刚需"两节串联的锂电池放在储能柜或者备用电源机箱里,很多人第一反应是"才两节,能有多大差异"。我最早接触这类项目时也这么想,直到实测数据摆在面前&#x…

2026/10/17 9:49:46 阅读更多 →
蓝桥杯备赛练习3.3阶段:如何科学安排刷题节奏与知识点优先级

蓝桥杯备赛练习3.3阶段:如何科学安排刷题节奏与知识点优先级

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 9:49:46 阅读更多 →
从博弈论到人际策略:纳什均衡、囚徒困境与以牙还牙的实战应用

从博弈论到人际策略:纳什均衡、囚徒困境与以牙还牙的实战应用

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/17 9:49:46 阅读更多 →
开源代码审查方案:从机制到实践的完整落地指南

开源代码审查方案:从机制到实践的完整落地指南

做Code Review这些年,我越来越觉得,大多数团队不是不想做好代码审查,而是被一堆杂事拖垮了。拉分支、盯CI、等人review、处理冲突、口头说了又不记得……这一套流程走下来,真正花在“看代码”上的精力可能连三成都不到。所以当我看…

2026/10/17 9:49:46 阅读更多 →
Termexo v0.9.0体验:AI编程CLI的安装、状态监控与Diff审查实战

Termexo v0.9.0体验:AI编程CLI的安装、状态监控与Diff审查实战

我在过去半年里,陆陆续续在本地开发环境里接入了三款AI编程CLI,从最早折腾Codex安装到后来用上Claude Code,再到把Gemini CLI加进日常工作流。本来觉得差不多了,结果看到Termexo v0.9.0发布的时候,还是没忍住又试了一把…

2026/10/17 9:48:45 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →