随笔分类 - 基础知识
摘要:关于HashMap以对象作为Key的实现及踩坑 1 场景 今天遇到了这样一串代码 对于画圈的部分,看起来很奇怪,我一开始想改为: result.get(groupPath).add(indexes); groupPath.addMeasurements(exactPath.getMeasuremen
阅读全文
摘要:查询处理 1 概述 1.1 基本步骤 语法分析与翻译 优化 执行 1.2 查询 一个查询,一般都会有多种计算结果的方法。 例如,select salary from instructor where salary<75000; 可以被翻译为以下任意一个关系代数表达式 要全面说明如何执行一个查询,有以
阅读全文
摘要:防御式编程 防御式编程 为什么要防御式编程 编写大多数情况下都能用(可用)的代码很容易。但是提供意外输入会崩溃 正确的代码绝不会崩溃。但所有可能输入集合很大,难以测试;并非所有正确的代码都是优秀的代码,可能逻辑难以理解,并几乎无法维护 优秀的代码是健壮的、高效的、当然也是正确的。即便面对不常见输入,
阅读全文
摘要:面向对象设计原则 目标:开闭原则 指导:最小知识原则 基础:单一职责原则、可变性封装原则 实现:依赖倒转原则、合成复用原则、里氏代换原则、接口隔离原则 单一职责原则SRP Single Responsibility Principle 定义:一个对象应该只包含一个单一的职责,并且该职责被完整地封装在
阅读全文
摘要:设计模式概述 索引 我的一些笔记 面向对象设计原则 设计模式总结:创建型模式 设计模式总结:行为型模式 设计模式总结:结构型模式 值得参考的网站 http://c.biancheng.net/design_pattern/ https://design-patterns.readthedocs.io
阅读全文
摘要:表驱动(直接访问、索引访问、阶梯访问) 表驱动是一种编程模式(scheme),将复杂的逻辑从代码中独立出来,便于单独维护 直接访问表 Direct Access 通过索引值(下标)直接从表中找到对应的条目 案例 案例1:(一维查找:即可以代替一层的if结构或者switch结构): 比如你要查找1--
阅读全文
摘要:行为型模式 行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承
阅读全文
摘要:结构型模式 结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 类模式 (类)适配器模式 对象模式 (对象)适配器模式 桥接模式 组合模式 装饰模式 外观模式 享元模式 代理模式 代理(Proxy)
阅读全文
摘要:创建型模式 类模式 工厂方法模式 对象模式 抽象工厂模式 建造者模式 原型模式 单例模式 单例(Singleton)模式:某个类只能生成一个实例,该类提供了一个全局访问点供外部获取该实例,其拓展是有限多例模式。 原型(Prototype)模式:将一个对象作为原型,通过对其进行复制而克隆出多个和原型类
阅读全文
摘要:MIT 6.830 LAB3 Query Optimization查询优化器 2021/04/12-2021/04/17 前言 课程地址:http://db.lcs.mit.edu/6.830/sched.php 代码:https://github.com/MIT-DB-Class/simple-d
阅读全文
摘要:MIT 6.830 LAB2 DBOperator 2021/04/01-2021/04/05 前言 课程地址:http://db.lcs.mit.edu/6.830/sched.php 代码:https://github.com/MIT-DB-Class/simple-db-hw 讲义:https
阅读全文
摘要:MIT 6.830 课程地址:http://db.lcs.mit.edu/6.830/sched.php 代码:https://github.com/MIT-DB-Class/simple-db-hw 讲义:https://github.com/MIT-DB-Class/course-info-20
阅读全文
摘要:MIT 6.830 LAB1 SimpleDB 2021/03/30-2021/03/31 前言 课程地址:http://db.lcs.mit.edu/6.830/sched.php 代码:https://github.com/MIT-DB-Class/simple-db-hw 讲义:https:/
阅读全文
摘要:什么是ACID、CAP与BASE ACID 事务是由一组SQL语句组成的逻辑处理单元,事务具有4属性,通常称为事务的ACID属性。 原子性(Actomicity):事务是一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。 一致性(Consistent):在事务开始和完成时,数据都必须保
阅读全文
摘要:1 基本概念 Definition (语法制导定义 (Syntax-Directed Definition; SDD)) SDD 是一个上下文无关文法和属性及规则的结合。 Definition (语法制导的翻译方案 (Syntax-Directed Translation Scheme; SDT))
阅读全文
摘要:1 FIRST&FOLLOW 1.1 FIRST集合 First(α) 是可从 α 推导得到的句型的首终结符号的集合 计算FIRST(X)集合算法: 计算每个符号X的First(X)集合 计算每个符号串 α 的 First(α) 集合 1.2 FOLLOW集合 Follow(A) 是可能在某些句型中
阅读全文
摘要:正则表达式 1 基本概念 1.1 正则 正则表达式是语法,正则语言是语义 def(正则表达式): 给定字母表 Σ, Σ 上的正则表达式由且仅由以下规则定义: ϵ 是正则表达式; ∀a ∈ Σ, a 是正则表达式; 如果 r 是正则表达式, 则 (r) 是正则表达式; 如果 r 与 s 是正则表达式,
阅读全文
摘要:第6章 并发程序设计 6.1 并发进程 6.1.1 顺序程序设计 一个进程在处理器上的执行顺序是严格按顺序的 不但指一个程序模块内部,也指两个程序模块之间 特点: 程序执行的顺序性 程序环境的封闭性 执行结果的确定性 计算过程的可再现性 6.1.2 进程的并发性 程序的并发性指一组进程的执行在时间上
阅读全文
摘要:第5章 文件管理 5.1 文件的概念 文件是由信息按一定的结构方式组成,可持久化保存的抽象机制,由于它必定存储在某种设备上,故也可以认为文件是设备的一种抽象 由文件名所标识,用户可以按名访问 文件名和扩展名 文件分类 按用途可分成:系统文件、库文件、用户文件 按保护级别可分成:只读文件、读写文件、不
阅读全文
摘要:第4章 设备管理 4.1 设备管理概述 I/O设备又称为外围设备或外部设备,简称外设 I/O操作:内存和I/O设备之间的信息传送操作 分类 按信息传输方向划分 输入设备:将外界信息输入计算机 例如:键盘,鼠标,扫描仪等 输出设备:将计算结果输出 例如:显示器,打印机等 输入输出设备:既可以输入信息,
阅读全文

浙公网安备 33010602011771号