The open Source Library worth practicing

Source: Internet
Author: User
Tags lua sqlite
The C Open source project code worth Learning

1. Webbench
Webbench is a very simple site-testing tool that is used under Linux. It uses fork () to simulate multiple clients at the same time to access our set URL, test the site under pressure performance, can simulate up to 30,000 concurrent connections to test the load capacity of the site. Webbench use c language, the code is too concise, the source add up to less than 600 lines.
Download Link: http://home.tiscali.cz/~cz210552/webbench.html
2. tinyhttpd
TINYHTTPD is an ultra lightweight HTTP server, developed in C, with all the code only 502 lines (including annotations), with a simple client that can read this code to understand the nature of an Http server.
Download Link: http://sourceforge.net/projects/tinyhttpd/
3. Cjson
Cjson is a JSON codec in C language, very lightweight, c file only 500 lines, the speed is also very ideal. Cjson also has several weaknesses, although the function is not very strong, but Cjson's small body and speed is the most commendable. Its code is very well maintained, the structure is simple to understand, can be a very good C language project to learn.
Project home: http://sourceforge.net/projects/cjson/
4. Cmockery
Cmockery is a lightweight framework for C unit testing released by Google. It is small, not dependent on other open source packages, and less intrusive on the code being tested. Cmockery the source code line of less than 3K, you read the Will_return and mock the source of the clear at a glance.
Download Link: http://code.google.com/p/cmockery/downloads/list
5. Libev
Libev is an Open-source event-driven library based on the infrastructure provided by Epoll,kqueue and other Oss. It is famous for its high efficiency, it can unify the IO event, timer, and signal, unify in the event processing this set of framework to deal with. Based on reactor mode, high efficiency, and code streamlining (4.15 version 8,000 lines), is a good resource for learning event-driven programming.
Download Link: http://software.schmorp.de/pkg/libev.html
6. Lua
Lua is great, and Lua was invented by the Brazilian, scripting language. What makes me blush is the LUA source code, 100% ANSI C, is not doped. It can be easily compiled on any platform that supports the ANSI C compiler. I've tried, I don't have any nonsense. The LUA code is small enough to 5.1.4 only 1.5W lines, with blank lines and annotations estimated to be 1W rows.
Download Address: http://www.lua.org/
7. SQLite
SQLite is an open source embedded relational database that implements the SQL database engine for self containment, 0 configuration, and support transactions. Its features are highly portable, easy to use, compact structure, efficient and reliable. Small enough, roughly 30,000 lines C code, 250K.

Download Address: http://www.sqlite.org/


C + + Project code worthy of learning

1, MFC
The famous Microsoft Foundation Class Library (Microsoft Foundation Class). Most people who have learned VC + + should know this library. Although technically speaking, MFC is not pretty, but it builds on the Windows API, makes it easier for programmers to work, has high programming efficiency, reduces the number of code that must be written to create Windows programs, and provides the benefits of all general C + + programming, such as inheritance and encapsulation. The programs written by MFC are portable on various versions of the Windows operating system, for example, code written under Windows 3.1 can be easily ported to Windows NT or Windows 95. But there has been a growing trend in recent and official support.
2, QT
Reference site: http://www.trolltech.com
Qt is a multiplatform, Trolltech C + + graphical user interface application framework for the company. It provides the functionality that the application developer needs to build an art-level graphical user interface. QT is fully object-oriented and easily extensible, and allows true component programming. Since early 1996, Qt has entered the business world, and it has become the foundation of thousands of successful applications worldwide. Qt is also the foundation of the popular Linux desktop environment KDE, and it also supports Windows, Macintosh, unix/x11, and many other platforms.

3, Streammodule
Reference site: Http://www.omnifarious.org/StrMod
A library designed to simplify the authoring of distributed programs. Try to make it easier to write programs that handle asynchronous behavior, rather than wrap asynchronous nature with a synchronized shell.

4, Simplesocket
Reference site: http://home.hetnet.nl/~lcbokkers/simsock.htm
This class library makes it easier to write client/server programs that are based on sockets.
5, A Stream Socket API for C + +
Reference site: http://www.pcs.cnu.edu/~dgame/sockets/socketsC++/sockets.html
Another encapsulation library for the socket.

Other
LIBUV libcurl libutp jsoncpp boost zlib protobuf http-parser libevent OpenCV


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.