从本章开始假设大家都熟悉lua语法.
运行流程
在上一章节学会了如何安装cf后, 本章节就会介绍cf到运行机制与httpd的server搭建!
cf是一个非常典型的基于协程的事件驱动开发框架在封装成API后, 可以依赖事件循环执行一套稳定运行时环境.
而lua本身提供了强大的table
数据结构可以根据需要自行构建所谓的"config", 所以cf为了减少无用的依赖就没有提供额外的config文件进行配置.
cf会假设所有业务代码文件都在script
目录下, 所以建议您在script
下自行划分好文件的目录归属.
cf将所有业务编写的脚本目录命名为script
, script
目录下点main.lua
文件将会是入口文件. 这个main.lua
执行完毕之后才会真正进入事件循环.
在执行完成script/main.lua
文件后, cf则会是实际情况决定是否需要开始运行事件循环. 假设开发者仅仅想运行print("hello world")
, 那么cf将会在main.lua
执行完成后直接退出.
运行机制的问题与模块化的设计
main.lua
文件内部可以导入其它lua代码进行模块化设计, 但是有一点需要注意的是: cf框架在使用require
导入文件时, 导入的文件只能用于定义不可用于流程执行.
什么意思呢? 例如, 当你在使用创建一个httpd实例之前会先创建DB对象并且进行初始化! 这时候您可以回设计像下面的代码:
-- mydb.lua
local DB = require "DB"
local