摘要: 创建Django项目 + 安装Django + 创建Django项目 + 进入website项目目录 + 目录结构如下 + 创建一个应用app1 + 进入app1应用目录 + 目录结构如下 + 在每一个web应用目录下创建static目录存放css, js, image等静态文件 + 创建templ 阅读全文
posted @ 2019-02-15 20:38 gogogo11 阅读(159) 评论(0) 推荐(0)
摘要: 5. core核心模块 + 核心模块会通过compiler模块提供的调用compiler的功能, 将用户的输入转为VM直接的输入 + 编译模块用来编译, 而核心模块用来执行 + 在core.h文件中 + 在core.c文件中(在core.c中实现内部类的方法, 并定义bindMethod的函数并定到 阅读全文
posted @ 2019-02-15 14:53 gogogo11 阅读(993) 评论(0) 推荐(0)
摘要: 3. 内置对象 list对象 range对象 map对象 thread对象 算法 + hashObj, 主要是从对象中提取出数字或者字符串进行hash即可 阅读全文
posted @ 2019-02-15 14:52 gogogo11 阅读(182) 评论(0) 推荐(0)
摘要: 4 编译2 编译 1. 编译阶段主要就是生成指令, 打一个比方, 现在有一个项目, 领导为了完成这个计划, 将这个计划按照几个步骤划分(就是指令), 领导就是用这些指令指定了计划的运行流程, 但是项目具体怎么落实是交给员工的, 员工得到了这个指令, 怎么执行就让员工自己来完成, 比如, BUY\_F 阅读全文
posted @ 2019-02-15 14:52 gogogo11 阅读(157) 评论(0) 推荐(0)
摘要: 4. 编译 + 创建compiler目录, 也就是我们C语言项目的compiler模块, 该模块与使用该脚本语言的用户是最亲近的了, 因为编译就是一个桥梁, 将 用户输入的文本 转换为 内部调用 , 在VM内部, 我们通过Value统一操作对象, ObjHeader实现多态等功能, 对于Value和 阅读全文
posted @ 2019-02-15 14:51 gogogo11 阅读(286) 评论(0) 推荐(0)
摘要: 2. 面向对象的脚本语言的类的实现 只要是一个对象就要有一个ObjHeader结构体, 该结构体位于该对象的开头 ObjHeader结构 Value结构体(Value不是对象, 他在脚本语言层面是一个引用, 因为没有类型, 但是在C语言中需要Value保存属性) Class类对象结构体 在构建出上述 阅读全文
posted @ 2019-02-15 14:50 gogogo11 阅读(1012) 评论(0) 推荐(0)
摘要: 1. 词法分析器 函数 + skip\_one\_line: 跳过一行, 会在skip\_comment中注释为//的时候调用 + skip\_comment: // 和 / / + skip\_blanks: 跳过空白行, 会在skip\_comment处理完注释之后调用, 同时在get\_nex 阅读全文
posted @ 2019-02-15 14:48 gogogo11 阅读(1613) 评论(0) 推荐(0)