
本科期间一些实验
文章平均质量分 93
数据库,操作系统,软件设计结构的一些答案解答
Echo-Nie
这里是我本科期间的笔记本,记录学习和成长
展开
-
PageRank学习以及Pycharm+Neo4j红楼梦人物关系图谱
Python实验课时,老师提到用知识图谱构建红楼梦的人物关系图,所以课后根据视频和博客的学习,初尝试用neo4j进行构建,也在学习如何用Python直接进行手撕关系图并可视化,但是目前效果不佳,后续构建好继续分享在专栏。由于大部分代码都进行了注释,所以大家可以直接拷贝代码进行学习,在此不赘述代码作用import csv# 创建与 Neo4j 数据库的连接# 打开 CSV 文件# 创建一个 CSV 读取器# 遍历 CSV 文件中的每一行# 跳过标题行,因为从第二行开始才是人物信息continue。原创 2024-04-03 15:14:23 · 2346 阅读 · 0 评论 -
深入理解软件设计原则:接口隔离与迪米特法则
用多个专门的接口,不使用单一的总接口,客户端不应该依赖它不需要的接口;一个类对另一个类的依赖,应该建立在最小接口上;如果有一个大接口,里面有很多方法,如果使用一个类实现该接口,所有的类都要实现,导致代码冗余;建立功能单一接口,不要建立特别多功能的接口;接口设计不能过大过小,适度接口。原创 2024-10-05 01:45:00 · 511 阅读 · 0 评论 -
开闭原则、里氏替换与单一职责:软件设计的核心原则
一个软件实体,类,函数,模块;对扩展。原创 2024-10-04 17:39:43 · 711 阅读 · 0 评论 -
GRASP设计原则详解:七大基本原则与纯虚构、防变异
GRASP是GeneralResponsibilityAssignmentSoftwarePrinciple,通用职责分配软件原则。核心思想是“职责分配”。某个方法要交给哪个类来实现比较合适(方法给哪个类)某个类由哪个类来创建合适(类由哪个类创建)某个类包含哪些成员和方法(类应该有哪些方法和成员)两个类交互时,采用哪种方式?某个类在某些情况下应该转变为另一个类类的哪些成员和方法可以被哪些类访问优点:信息的封装性得以维持对象充分利用自身的信息来完成任务。原创 2024-10-08 02:00:00 · 1053 阅读 · 0 评论 -
深入理解软件设计原则:依赖倒置与合成复用
高层模块不应该依赖低层模块,二者都应该依赖抽象;抽象不应该依赖细节,细节应该依赖抽象。面向接口编程而不是面向实现编程。通过抽象使用抽象类、接口让各个类or模块之间独立不影响,实现模块之间的松耦合,降低模块之间的耦合性。原创 2024-10-04 18:14:40 · 608 阅读 · 0 评论 -
strcpy和strncpy和strcat和strncat和strstr和strtok函数使用及实现
结束符的字符串,比如这里是将str2拷贝到str1中去('\0'也同时拷贝进去),strcpy返回值的类型为char。错因在于:当 *arr2为 ‘\0’,没有进入循环,没有将\0拷贝入arr1,所以无法覆盖后面多余的****在传参的时候传递的是字符串首地址,如:char* p=“hello”是将h的地址传给了p。当*arr2为'\0'时终止循环,此时已经完成了条件的执行:将\0赋给*arr1。strcpy(str1,str2),函数作用是将 把含有。观察while循环,发现代码可以继续优化:>原创 2025-03-31 15:27:34 · 7956 阅读 · 0 评论 -
操作系统头歌 —— Linux环境、文件操作、权限管理、实验练习
本关任务:修改 Linux 0.11 内核程序,将系统启动时显示的字符串由原来的变为。通过本关任务,可以熟悉 Linux 0.11 内核实验环境,掌握内核程序的编辑、编译和测试方法。原创 2024-03-28 13:16:59 · 3452 阅读 · 0 评论 -
SQL实用操作以及MySQL数据库 - 表基本操作
1.left(属性名,数字x) 表示取属性值的最左边x个字符 2.right(属性名,数字x) 表示取属性值的最右边边x个字符 3.lower(属性名) 表示将属性值的字母都变成小写 4.upper(属性名)表示将属性值的字母都变成大写 5.substring(属性名,起始位置L,长度x)取属性值起始位置L开始,长度为x的子串 6.ltrim(属性名)去除属性值最左边的空格 7.rtrim(属性名)去除属性值最右边的空格 8.len(属性名)取属性值的字符串长度 若需其他函数,可以通过网络查询用法。原创 2024-03-28 20:30:00 · 1399 阅读 · 0 评论 -
数据库头歌 - 命令行建表、查询、集合、数据统计
若R,S的属性名不同,可使用重命名使相应列名一致后进行并操作 例如:R(A,B,C) S(D,E,F) select A,B from R union select D as A, E as B from S 2.集合交操作。数据库中的数据是存放在数据库中的一张一张表。使用的表结构: Student(Sno, Sname, Ssex, Sage, Sdept) Course(Cno, Cname,Ccredit) SC(Sno, Cno, Grade)要完成本关任务,你需要掌握:如何在指定数据库中创建表。原创 2024-03-27 10:30:00 · 1821 阅读 · 0 评论 -
数据库头歌 —— 博客系统三件套 | 用户表核心表标签表
任务描述本关任务:创建博客系统数据库的用户信息表。相关知识一个博客系统会有哪些功能呢,肯定会有的是博客列表,博客详情,评论,登陆注册等等这些功能,那应该建多少张表呢?应该给这些表添加哪些字段呢?字段的约束怎么设计呢?表与表之间的关联关系应该怎样设计呢?这是你在开始本实训之前要思考的问题。博客系统数据库的整体设计如下图所示:总共涉及到五张表:用户信息表;博客信息表;博客类型表;博客评论表;博客标签表。用户信息表(t_user)ID0101编程要求。原创 2024-03-27 06:00:00 · 2419 阅读 · 0 评论 -
SQL Server头歌实验 - 触发器、视图、CRUD、简单查询、JDBC基础、存储过程、MySql数据库常用约束定义
本关任务:创建数据库。相关知识安装MySQL数据库是学习MySQL的第一步,为了完成本关任务,你需要掌握: 1.如何连接数据库;2.如何创建数据库。连接数据库mysql -u用户名 -p密码。在Educoder平台上连接数据库还需要加上一句。如下:创建数据库连接上MySQL之后就可以进行数据库的操作了。创建完数据库之后我们可以通过命令查看MySQL中已存在的数据库。编程要求在右侧命令行中连接MySQL,并创建一个名为MyDb的数据库。root123123。数据库名区分大小写。原创 2024-03-25 20:27:38 · 3657 阅读 · 0 评论