GithubHelp home page GithubHelp logo

kedacoya / db_tutorial_cpp Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kcnyu/db_tutorial_cpp

0.0 0.0 0.0 71 KB

Writing a sqlite clone from scratch in C++

License: MIT License

Ruby 19.72% C++ 80.28%

db_tutorial_cpp's Introduction

如何用C++实现一个简易数据库

基于cstack/db_tutorial C语言版本

  • KCNyu
  • 2022/2/2

作为笔者写的第一个系列型教程,还是选择基于前人的教程经验以及添加一些自己个人的探索。也许有很多纰漏之处,希望大家指正。

1. 数据库是什么?

数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。使用者可以对其中的资料执行新增、选取、更新、刪除等操作。

2. SQL是什么?

SQL (Structured Query Language:结构化查询语言) 是一种特定目的程式语言,用于管理关系数据库管理系统 (RDBMS),或在关系流数据管理系统 (RDSMS) 中进行流处理。

3. 我们最终会实现什么?

前端 (front-end)

  • 分词器 (tokenizer)

  • 解析器 (parser)

  • 代码生成器 (code generator)

后端 (back-end)

  • 虚拟机 (virtual machine)

  • B树 (B-tree)

  • 分页 (pager)

  • 操作系统层接口 (os interface)

4. 我们的开发流程是什么?

测试驱动开发 (test driven development, TDD)

  • 添加测试用例
  • 运行并查看失败的用例
  • 改动代码以通过测试
  • 通过全部测试

5. 我们的单元目录结构是什么?

tutorial

  • 本单元完整代码实现 (db.cpp)
  • 本单元对应测试用例 (db_test.rb)
  • 本单元对应教程详解 (README.md)

6. 教学大纲

db_tutorial_cpp's People

Contributors

kcnyu avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.