首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

设计模式在C语言中的应用–nginx源码

市面上的“设计模式“书籍文章,皆针对Java/C++/C#等面向对象语言,似乎离开了面向对象的种种特性,设计模式就无法实现,没有用武之地了。 是这样吗?...然而,存在即合理,C语言直到今日仍然在大型软件工程中担纲主角,其种种设计方法其实与我们通常见到的设计模式本质是相同的。...例如nginx这个纯C语言写就的的高性能WEB服务器,就有许多地方使用到了市面书籍提到的设计模式。下面通过nginx源码来看看C语言是怎么做的。...由于UML本就是针对OO语言的,所以以上我画的类图都比较牵强,什么是继承?什么是聚合?在C语言中,往往都是通过几个函数指针,或者void*指针实现各种封装和多态。...当然以上只是一家之言,不必当真,如果对nginx源码有研究的话,欢迎各位拍砖。

2.1K40
您找到你想要的搜索结果了吗?
是的
没有找到

Kafka Consumer源码

带着这样的疑问,最近把Kafka Consumer部分的源码读了一遍,因为: Kafka应该是业界最著名的一个开源MQ了(RocketMQ最初也是参考了Kafka去实现的) 希望通过Kafka源码能找到一些定义...MQ接口的想法 但是在读完Kafka Consumer部分的源码后稍稍有一些失望,因为它并没有给我代码我想要的,反而在读完后觉得接口设计和源码实现上相对于Kafka的盛名有一些名不副实的感觉。...(源码时光看完这部分接口我就已经晕了) 上面的方法大致可以分为四类: 订阅相关:subscribe、unsubscribe 消费相关:assign、poll、commit 元数据相关:搜索、设置、获取...Consumer部分的包组织和我自己源码使对它的整理: ?...右边是Kafka源码Consumer部分的包结构,所有的类分了两块,内部的在internals中。右边是自己源码时根据各个模块对Consumer的类进行划分。

85420

源码-Koa

Koa是基于 Node.js 平台的下一代 web 开发框架,它的源码可以看这里,本章通过源码来简绍一下Koa是怎么实现的。 核心代码 Koa的核心代码只有4个文件,如图。...application源码 为了方便查看application的核心逻辑,下面是我去掉了部分非核心代码的application源码: const onFinished = require('on-finished...koa-compose源码 在讲述源码之前我们先看看koa-compose中间件是怎么使用的。...2个中间件开始 第3个中间件开始 第3个中间件结束 第2个中间件结束 第1个中间件结束 处理完成了 koa-compose把多个中间件合并成一个函数,通过await next()来调用下一个中间件,其源码如下...context源码 context是对上下文对象的封装,具体代码如下: const util = require('util') const createError = require('http-errors

5310

364道C语言训练(题目+源码

尽管如此,小林还是很后悔,当初上大一的时候没有好好学习C语言,以至于后期学数据结构、Java、Python很难。...不少人问我,学习C语言到底有没有用,这里小林想说的是,不学C语言当然可以,但是你要知道就算是很火、很热门的Python也是用C语言编写的。...中国几乎所有的大学,研究生考试都要考数据结构,但是学数据结构,要是不懂C语言,那就是扯淡。如果,你想继续深造考研,请学好C语言。...大家应该都知道蓝桥杯和ACM吧(程序设计大赛),虽然说用其他高级语言做题也可以,但是用C语言来做题是最简单的。 读者也可以上网搜一搜,全球的编程语言排行榜前三,哪一次没有C语言。...小林这里每天写文章,都要花上1个小时,甚至更多,所以练习题的源码,小林就不免费发布了,毕竟小编也要生活。 源代码示例 ?

1.2K3029
领券