仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2863|回复: 7
打印 上一主题 下一主题

[C++基础] 来讲讲:程序员最值得存眷的10个C开源项目

[复制链接]
谁可相欹 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 11:05:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
要多动手,不要怕什么搞坏了怎么办,你不搞坏,不去动手,就永远不会有收获,既然你在linux中是自由的,那就发挥自己的权利;
 1.Webbench

  Webbench是一个在linux下利用的十分复杂的网站压测工具。它利用fork()摹拟多个客户端同时会见我们设定的URL,测试网站在压力下事情的功能,最多能够摹拟3万个并发毗连往测试网站的负载才能。Webbench利用C言语编写,代码其实太简便,源码加起来不到600行。
  下载链接:http://home.tiscali.cz/~cz210552/webbench.html
 2.Tinyhttpd

  tinyhttpd是一个超轻量型HttpServer,利用C言语开辟,全体代码只要502行(包含正文),附带一个复杂的Client,能够经由过程浏览这段代码了解一个HttpServer的实质。
  下载链接:http://sourceforge.net/projects/tinyhttpd/
 3.cJSON

  cJSON是C言语中的一个JSON编解码器,十分轻量级,C文件只要500多行,速率也十分幻想。
  cJSON也存在几个缺点,固然功效不长短常壮大,但cJSON的小身板和速率是最值得欣赏的。其代码被十分好地保护着,布局也复杂易懂,能够作为一个十分好的C言语项目举行进修。
  项目主页:http://sourceforge.net/projects/cjson/
 4.CMockery

  cmockery是google公布的用于C单位测试的一个轻量级的框架。它很玲珑,对其他开源包没有依附,对被测试代码侵进性小。cmockery的源代码行数不到3K,你浏览一下will_return和mock的源代码就一览无余了。
  次要特性:

  • 收费且开源,google供应手艺撑持;
  • 轻量级的框架,使测试加倍疾速复杂;
  • 制止利用庞大的编译器特征,对老版本的编译器来说,兼容性好;
  • 其实不强迫请求待测代码必需依附C99尺度,这一特征对很多嵌进式体系的开辟很有效
  下载链接:http://code.google.com/p/cmockery/downloads/list
 5.Libev

  libev是一个开源的事务驱动库,基于epoll,kqueue等OS供应的基本举措措施。其以高效着名,它能够将IO事务,准时器,和旌旗灯号一致起来,一致放在事务处置这一套框架下处置。基于Reactor形式,效力较高,而且代码精简(4.15版本8000多行),是进修事务驱动编程的很好的资本。
  下载链接:http://software.schmorp.de/pkg/libev.html
 6.Memcached

  Memcached是一个高功能的散布式内存工具缓存体系,用于静态Web使用以加重数据库负载。它经由过程在内存中缓存数据和工具来削减读取数据库的次数,从而供应静态数据库驱动网站的速率。Memcached基于一个存储键/值对的hashmap。Memcached-1.4.7的代码量仍是能够承受的,只要10K行摆布。
  下载地点:http://memcached.org/
 7.Lua

  Lua很棒,Lua是巴西人创造的,这些都令我不爽,可是还不至于酡颜,最多眼红。
  让我酡颜的是Lua的源代码,百分之一百的ANSIC,一点都不搀杂。在任何撑持ANSIC编译器的平台上都能够轻松编译经由过程。我试过,真是一点空话都没有。Lua的代码数目充足小,5.1.4仅仅1.5W行,往失落空缺行和正文估量能到1W行。
  下载地点:http://www.lua.org/
 8.SQLite

  SQLite是一个开源的嵌进式干系数据库,完成自包涵、零设置、撑持事件的SQL数据库引擎。其特性是高度便携、利用便利、布局松散、高效、牢靠。充足小,大抵3万行C代码,250K。
  下载地点:http://www.sqlite.org/。
 9.UNIXv6

  UNIXV6的内核源代码包含设备驱动程序在内约有1万行,这个数目的源代码,初学者是可以充实了解的。有一种说法是一团体所能了解的代码量下限为1万行,UNIXV6的内核源代码从数目上看恰好在这个局限以内。看到这里,人人是否是也有“假如只要1万行的话没准儿我也能学会”的设法呢?
  另外一方面,比来的操纵体系,比方Linux最新版的内核源代码听说凌驾了1000万行。就算不是初学者,想完整了解全体代码基础上也是不成能的。
  下载地点:http://minnie.tuhs.org/cgi-bin/utree.pl?file=V6
 10.NETBSD

  NetBSD是一个收费的,具有高度移植性的UNIX-like操纵体系,是现行可移植平台最多的操纵体系,能够在很多平台上实行,从64bitalpha服务器得手持设备和嵌进式设备。NetBSD企图的标语是:”OfcourseitrunsNetBSD”。它计划简便,代码标准,具有浩瀚先辈特征,使得它在业界和学术界广受好评。因为简便的计划和先辈的特性,使得它在临盆和研讨方面,都有出色的体现,并且它也有受利用者撑持的完全的源代码。很多程序都能够很简单地经由过程NetBSDPackagesCollection取得。
  下载地点:http://www.netbsd.org/
在学习初期,你一定会遇到很多困难,或者说各种困难,所以你最好先将你linux中的重要内容备份,因为,在你学习的过程中,很可能将系统搞废(eg:源混乱等);
蒙在股里 该用户已被删除
沙发
发表于 2015-1-18 07:47:13 | 只看该作者
事必躬行。初学者开始最爱犯得毛病就是看书不动手,尽信书不如无书(我也反对),语言和平台有关,任何平台都不是绝对支持标准。
简单生活 该用户已被删除
板凳
发表于 2015-2-2 13:40:42 | 只看该作者
关于C++与C语言的规范化问题。众所周知,C++是从C语言发展而来的,所以在C++中就不可避免的夹杂些C留下来的糟粕(使用C语言的请见谅)。
admin 该用户已被删除
地板
发表于 2015-2-7 22:25:48 | 只看该作者
但是这样的好处是很多的,用string和vector可以很早的写出很有用的程序,而不用考虑内存分配与指针问题。
飘灵儿 该用户已被删除
5#
发表于 2015-2-23 14:50:26 | 只看该作者
当然. 你有兴趣可以再学学动态语言.比如 Ruby.慢慢地. 就会提高的.多学一点东西.就会让你的思维广阔。。
乐观 该用户已被删除
6#
发表于 2015-3-7 09:43:27 | 只看该作者
慢慢得,你会发现你得问题强人基本解决不了,不是你超过他,而是你们关注领域不同,这个时候,你自己也成为强人了,嘿嘿!!
飘飘悠悠 该用户已被删除
7#
发表于 2015-3-14 22:54:58 | 只看该作者
最后一部分:算是高级一些的主题,总感觉书的这一部分翻译的不太好,读起来完全没有前面几章顺畅,像多重继承什么的,如果觉得太难理解,看的时候放一放,改天等你用到的时候,再来看看是怎么回事。
老尸 该用户已被删除
8#
发表于 2015-3-21 17:53:10 | 只看该作者
记住: 不要放了基础. 多实践. 学程序时养成好习惯. 这包括程序要写得清晰.明了.就像写作一样.
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-28 17:10

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表