Pour les débutants, les petits projets open source sont plus faciles à comprendre et à apprendre. Alors, quels petits projets open source valent la peine d'être étudiés actuellement ? Cet article recueille et organise quelques excellents petits projets recommandés par des internautes sur Zhihu. Le code fait généralement moins de 5 000 lignes. Si vous êtes intéressé, jetez-y un coup d'œil~

1, SeaJS
Sea.js est un framework de chargement de modules JavaScript qui suit la spécification CommonJS, permettant le développement modulaire et les mécanismes de chargement pour JavaScript. Sea.js vise une écriture et une organisation de code simples et naturelles, et son code est très épuré.
2, Koa
Koa est le framework web de nouvelle génération pour Node.js. Conçu par l'équipe Express. Il vise à fournir une base plus petite, plus expressive et plus fiable pour développer des applications web et des API.
3, pssh
pssh fournit une version parallèle des outils OpenSSH, particulièrement adaptée au contrôle de situations où un grand nombre de machines doivent être connectées, y compris des versions parallèles des commandes ssh, scp, rsync et kill. Ce projet est écrit en Python, avec un code clair et concis et des structures de données bien définies. Après l'avoir lu, vous ne pourrez qu'en faire l'éloge.
4, grep-at-point
Lorsque vous écrivez du code, vous devez parfois vérifier où une fonction/classe/variable est utilisée. Ce projet est écrit en Emacs Lisp et peut rechercher le mot sous le curseur actuel dans tous les fichiers ayant des extensions spécifiées dans le répertoire du projet.
5, compile-make
Ce projet répond au besoin de compilation en un clic dans Emacs. Il recherche un Makefile dans le répertoire du projet et exécute la commande make pour compiler. Langage : Emacs Lisp ; lignes de code : 19.
6, sigslot
Une implémentation multiplateforme très épurée de signal/slot. Le code source compte plus de 2 000 lignes, mais plus de la moitié est du code d'adaptation de template à différents nombres de paramètres, avec moins de 1 000 lignes de véritable substance.
Anatomie du code source de Gtalk : introduction à sigslot
7, UCOS
uC/OS II (Micro Control Operation System Two) est un noyau multitâche temps réel préemptif, évolutif et basé sur ROM, avec une grande portabilité. Il est particulièrement adapté aux microprocesseurs et aux contrôleurs, et c'est un système d'exploitation temps réel (RTOS) dont les performances sont comparables à celles de nombreux systèmes d'exploitation commerciaux.
8, SQLite
SQLite est un système de gestion de base de données relationnelle conforme à ACID. Il est contenu dans une bibliothèque C relativement petite. C'est un projet du domaine public établi par D. Richard Hipp. SQLite peut aussi être utilisé comme base de données de bureau.
9, thttpd
thttpd est un serveur HTTP petit, simple, portable, rapide et sécurisé.
10, Serveur Web Boa
Boa est un petit serveur web qui peut être utilisé sur plusieurs plateformes et qui est relativement courant dans les systèmes embarqués.
11, C4
Un compilateur C implémenté avec 4 fonctions, environ 500 lignes. Il est globalement assez complet et peut se compiler lui-même.
12, GLib
GLib est un paquet de développement contenant de nombreux programmes C utiles, tels que des arbres, des hachages, des listes, etc. GLib faisait auparavant partie de la boîte à outils GTK, mais est maintenant un projet indépendant.
13, tj/co
Moins de 300 lignes, utilisé pour améliorer la syntaxe des rappels asynchrones de Node.js.
14, shadowsocks
Shadowsocks est un logiciel proxy SOCKS léger basé sur Python (ceux qui l'utilisent le savent).
15, aosabook
Ceci est la suite de l'excellent livre aosabook : le code source de « 500 Lines or Less ». Le code de chaque chapitre ne dépasse pas 500 lignes, mettant en œuvre de « grands systèmes » tels que des serveurs web, des robots d'exploration, de l'OCR, etc. Chaque chapitre est réalisé par un expert d'un domaine différent. En regardant la liste des auteurs, on peut parler d'un panthéon du domaine logiciel.
Source de l'article : http://code.csdn.net/news/2822568