- 博客(21)
- 收藏
- 关注
原创 山东大学软件学院项目实训-创新实训-计科智伴(四)——个人博客(从UI优化到功能完善的蜕变之路)
距离上一篇博客已经过去了一段时间。这段时间里,"计科智伴"项目经历了一次从内到外的蜕变——从最初的页面原型搭建,到UI全面优化,再到引入状态管理、完善核心功能模块。这篇博客主要记录我在开发过程中的思考、遇到的问题以及解决思路。
2026-05-07 22:17:50
379
原创 前端手撕题学习笔记1
本文总结了前端开发中常用的核心概念与实现方法:1. 拷贝机制:对比浅拷贝(扩展运算符、Object.assign)和深拷贝(JSON方法、递归实现)的区别与实现方式;2. 性能优化:防抖(延迟执行)和节流(固定间隔执行)的实现原理及代码示例;3. 数据处理:数组扁平化的字符串转换和递归方法;4. 函数式编程:函数柯里化的参数收集机制;5. 异步处理:手写Promise类实现,包括状态管理、then链式调用及静态方法(all/race)。这些技术点涵盖了前端开发中常见的数据处理、性能优化和异步编程需求。
2026-04-30 17:49:28
42
原创 山东大学软件学院项目实训-创新实训-计科智伴(三)——个人博客(技术选型+页面搭建以及ui调整)
今天从早上9点干到晚上10点,完成了10个核心页面的开发。uni-app的开发体验比预期要好,特别是热重载速度很快。最大的收获是整理出了一套适合uni-app的代码结构,后续功能扩展会比较顺畅。遇到的几个坑:CSS变量在动态计算时需要多用:style,少用CSS自定义属性底部安全区域要同时写constant和env流式请求的enableChunked参数刚开始没生效,后来发现是后端也要支持下面重点是把接口跑通,让数据流动起来。有进展再来更新。
2026-04-24 18:55:04
261
原创 山东大学软件学院项目实训-创新实训-计科智伴(二)——个人博客(MinIO配置)
本文介绍了在项目中集成MinIO对象存储服务的全过程。首先阐述了项目需要可靠文件存储解决方案的背景,然后详细说明了MinIO的部署过程(采用Docker方式)和项目集成步骤,包括添加依赖、配置文件和工具类封装。文章重点展示了MinioUtil工具类的实现,该工具类支持桶操作、文件上传下载、目录管理等核心功能,并提供了控制器集成示例。最后总结了MinIO的高性能、易部署、API友好等优势,以及在实际接入过程中遇到的依赖冲突、权限配置等问题的解决方案。通过本次实践,成功为项目提供了可靠的文件存储能力。
2026-04-19 13:14:57
243
原创 山东大学软件学院项目实训-创新实训-计科智伴(一)——个人博客(原型设计)
为了让“计科智伴”从一个概念转化为可落地的产品,我们采用了一种结构化的设计思路,其核心可概括为:对核心学习闭环进行分层拆解,并据此规划连贯的用户旅程。这一过程确保产品的每个功能都服务于一个真实、完整的学习场景。我们的设计始于对一个高效学习过程的本质分析,并将其抽象为一个可被产品化的闭环。这个过程分为三个层次展开:1. 确立产品功能主干:定义核心学习环节我们首先剥离了学习过程中的关键阶段,以此确立产品的四大核心功能支柱:学情画像与规划:对应学习的起点,旨在帮助用户评估自身状态并设定个性化目标。智能互动与练习:
2026-04-12 15:32:29
389
原创 Three.js初尝试(初学者学习笔记)
本文系统梳理了 three.js 的基础使用流程与核心概念:从依赖引入开始,围绕 Scene(场景)、Camera(相机)、Renderer(渲染器) 三大核心对象,讲解了如何创建几何体、材质并组合成网格进行渲染;介绍了常见几何体与材质类型及其用途;通过动画渲染函数实现物体自动旋转,并结合 OrbitControls 实现鼠标交互;补充了坐标轴辅助器用于空间理解;说明了 WebGLRenderer 内部自动创建并使用 <canvas> 的机制;最后通过监听窗口 resize 事件实现画布与相机的自适应更新,
2026-01-13 14:09:13
1074
原创 山东大学操作系统课设nachos---实验四
摘要:本次实验针对Nachos文件系统的两个核心限制(固定文件大小、无时间戳)进行改进。通过重构文件头结构,替换冗余字段为时间戳记录,并实现动态扩展机制,允许文件写入时自动增长。关键技术包括:1)文件头新增时间戳接口;2)OpenFile类实现动态扇区分配;3)优化系统显示逻辑。测试验证了文件动态扩展功能及时间戳记录的有效性,显著提升了文件系统的灵活性和完整性。
2025-11-30 13:37:02
774
原创 测开基础--缺陷介绍
软件缺陷指不符合需求或导致功能失效的问题,其判定依据包括功能缺失、错误、多余功能等。缺陷产生原因涉及需求、设计、编码及系统环境各阶段。典型生命周期为新建→指派→修复→验证→关闭,常见类型涵盖功能、界面、兼容性等问题。缺陷管理流程包括测试提交、开发修改和回归测试,提交时需确保问题可重现、唯一且描述客观规范。
2025-11-24 11:41:04
314
原创 JVM学习笔记--1
本文摘要:JVM内存结构主要包括程序计数器、虚拟机栈、本地方法栈、堆和方法区。程序计数器线程私有且无内存溢出;虚拟机栈存储方法调用信息,栈内存不涉及垃圾回收;堆是最大且线程共享的内存区域,是GC主要管理对象;方法区在JDK1.8后由元空间实现,移至本地内存;StringTable优化字符串存储,直接内存提升I/O性能但需手动管理。各部分协同工作,共同支撑Java程序运行。
2025-11-21 11:36:40
576
原创 山东大学软件学院操作系统课设nachos---具有优先级的线程调度
实验2 具有优先级的线程调度(Lab2)实现的具体方法提示:List类中已有的方法可加以利用。参阅:codelab2/n2codecode/demo0/
2025-11-12 16:00:25
1150
原创 Ubuntu虚拟机如何引入共享文件夹,实现与宿主机的资源共享
摘要:本文记录了在VMware Workstation Player中设置虚拟机共享文件夹的步骤。关键操作包括:在关机状态下修改虚拟机选项开启共享文件夹功能,创建挂载目录并检查共享状态。文章强调操作时需注意字符输入准确,最终成功实现了虚拟机与主机间的文件共享功能。该方法同样适用于创建空文件夹共享,为操作系统课程设计提供了便捷的环境准备方案。
2025-11-11 09:15:23
393
原创 学习redis3
2、为了节省空间,利用String序列化器,存储key和value都用String类型,存java对象时要手动完成对象的序列化和反序列化。尽管这种序列化工具可以满足我们的需求,但是过程中为了知道对象的类型,会将class类型写入json结果中,存入Redis,增大开销,数据量大时成为问题。2.真正使用前可以配置文件,依旧是在总的配置文件里配,修改redis的那几个基本属性(这一步相当于jedis过程中搭建连接的过程)引入的pool默认就是lettuce,如果是jedis还要另外引。
2025-11-09 13:43:33
966
原创 Vue响应式底层逻辑
Proxy:拦截行为,给原始对象创建代理,对数据的操作都并非直接接触数据,而是处理代理。可以对比前辈defineProperty:拦截属性,是在原始属性上给每一个属性单独写get和set,必须知道对象有什么属性,如果新增属性和删除属性,都无法被获悉。尤其是在处理数组时能发现明显差异proxy:和处理对象没有任何区别,下标写入与length变化都能拦截,只要变都会触发setdefineProperty:只能拦截属性的变化,无法捕捉数组的,但是vue2重写了数组的get和set。
2025-11-07 18:09:20
1007
原创 山东大学编译原理实验二语法分析器
实验二语法分析器主要添加了symbol、instruction和parse三个主要模块。下面按照由底至上的顺序给出代码。
2025-11-04 09:44:27
298
原创 学习redis2
redis的java客户端主要常见的有三个:1、jedis:以redis命令作为方法名称,学习成本低但是线程不安全,多线程环境下需要基于连接池2、lettuce:基于netty实现,支持同步异步和响应式编程方式,线程安全,支持redis的哨兵模式、集群模式和管道模式。
2025-11-01 14:55:45
525
原创 leetcode11月刷题记录
第二点是指针的移动,left和right到底是直接等于mid还是,mid的基础上做加减1。最后虽然是过了但是中间改了很多小地方,总的问题就在二分查找的指针变化不明确。然后把k~k+n-1看成一个虚拟的递增数组,并且再次二分查找target。而left<=right则要检查到最后一个数,要考虑到【找不到】的情况。核心是找的目标不同,left<right用于【一定会找到】的情况。Leecode.33搜索旋转排序数组。第一个是while循环的条件,
2025-10-27 09:56:54
272
原创 山东大学编译原理实验一词法分析器
弄明白词法分析器的作用以后就像算法题了。// 测试代码return age;return 0;""";System.out.println("=== 词法分析测试 ===");System.out.println("源代码:");// 创建词法分析器实例// 执行词法分析System.out.println("\n分析结果:");
2025-10-26 16:39:36
335
原创 学习Redis
1.(数据结构) 结构化与非结构化:与SQL相比,NoSQL的结构化要求较低(非结构化),比如说文档型、图型和键值型数据结构后续也可以发生修改2.(数据关联)关联与非关联:NoSQL用的是嵌套形式没有关联,用json文档存储,可能会出现重复数据存储的情况3.(查询方式)SQL查询与非SQL:NoSQL没有固定的查询语法,SQL的语句有通用的语法4.(事务特性)关系型数据库底层会自动实现ACID,NoSQL是BASE的只是一部分满足ACID,如果对数据的安全性要求较高,则建议选择SQL。
2025-10-25 19:03:34
747
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅