15款值得学习的小型开源项目,带

15款值得学习的小型开源项目,带你快速步入开源世界

2014-11-12 10:02

CSDN

作者
CSDN CODE


40


10510

.

开源项目
开源
Web服务器
JavaScript

对于初学者来说,小型开源项目更容易理解和学习,那么目前有哪些值得学习的小型开源项目?本文收集整理了知乎上网友推荐的一些不错的小型项目。

对于初学者来说,小型开源项目更容易理解和学习,那么目前有哪些值得学习的小型开源项目?本文收集整理了知乎上网友推荐的一些不错的小型项目,代码基本都在5000行以内,感兴趣的朋友可以研究下~ 

SeaJS
Sea.js是一个遵循CommonJS规范的JavaScript模块加载框架,可以实现JavaScript的模块化开发及加载机制。Sea.js 追求简单、自然的代码书写和组织方式,代码非常精简。

Koa

Koa 是下一代的 Node.js 的 Web 框架。由 Express 团队设计。旨在提供一个更小型、更富有表现力、更可靠的 Web 应用和
API 的开发基础。

pssh
pssh 提供了并行版本的 OpenSSH 工具,特别适合用来控制有大量机器需要连接的情况,包括并行版本的 ssh、scp、rsync 和
kill 命令。该项目是Python写的,代码清晰而简短,数据结构定义的很清楚,看了之后你会称赞的。 

grep-at-point 

在写代码的时候,有时候会需要查看某个函数/类/变量在哪些地方被使用过。该项目用emacs lisp语言写成,可实现在项目目录下,所有指定扩展名的文件中,搜索当前光标所在的单词。

compile-make  
该项目可实现emacs中一键编译的需求。在项目目录下寻找Makefile文件,并执行make命令进行编译。 语言:emacs lisp
;代码行数:19。 

sigslot
很精简的 signal slot的实现,跨平台。这个源码有2000多行,但是一大半是为了模板适配不同个数的参数的代码,干货不足1000行。
 
Gtalk源码剖析之:sigslot介绍 

UCOS
uC/OS II(Micro Control Operation System Two)是一个可以基于
ROM运行的、可裁减的、抢占式、实时多任务内核,具有高度可移植性,特别适合于微处理器和控制器,是和很多商业操作系统性能相当的实时操作系统(RTOS)。
SQLite

SQLite是遵守ACID的关联式数据库管理系统,它包含在一个相对小的C库中。它是D.RichardHipp建立的公有领域项目。SQLite亦可以作为桌面数据库使用。

thttpd

thttpd 是一个小型的、简单的、可移植的、快速以及安全的HTTP服务器。

Boa Webserver

boa是一个小型的web服务器,可以用于多种平台,在嵌入式中比较常见。

C4
4个函数实现的c编译器,大约500行。基本上已经比较完备了,可以自己编译自己。

GLib

GLib 是一个包含很多有用的 C 程序的开发包,例如树、哈希、列表等。GLib 之前是属于 GTK 工具包的一部分,现在独立出来成为单独项目。

tj/co 
不到三百行,用于改善 node 异步回调语法。 

shadowsocks

shadowsocks 是一个基于 python 的轻量级 socks 代理软件(谁用谁知道)。

aosabook

这是一本牛书aosabook的续集,500 Lines or Less的源码。里面每一章的代码不超过500行,实现了web服务器、爬虫、OCR等等“大型系统”,每一章由不同领域的大牛完成。看看作者列表,可以说是软件领域的名人堂。 

如果你还有其他小而美的项目推荐,请在评论里留言~

参考资料:

知乎:一千行以上,五千行以下有哪些值得学习的开源项目? 

知乎:一千行以下有哪些值得学习的小型开源项目?

知乎:有哪些适合学习的开源项目?

印象笔记,你的工作空间。下载印象笔记

from Gmail
via IFTTT

发表评论

电子邮件地址不会被公开。 必填项已用*标注