【微信使用的这六款开源代码,你用过哪一个?】昨天分享了QQ使用的开源代码,今天再看一看微信PC版使用了哪些开源软件 。
从微信的安装目录可以看到,共使用了六款开源代码,如下图:
文章插图
、CEFChromium Embedded Framework (CEF)是基于google Chromium项目的开源Web browser控件,跨平台支持windows, linux, mac平台 。除了提供C/C++接口外,也有其他语言的移植版 。因为基于Chromium,所以CEF支持Webkit & Chrome中实现的html5的特性,并且在性能上面,也比较接近Chrome 。
文章插图
、DirectUI - UI LibraryDirectUI库的作者是丹麦的 Bjarke Viksoe,如果是你是MFC开发人员,是否苦恼于MFC在界面上的难看和复杂,研究一下DirectUI的开源代码吧 。
文章插图
下载地址:
www.viksoe.dk/code/windowless1.htm
、Duilib在DirectUI - UI Library开源代码的基础上开发的非常不错的界面库,Duilib是一个windows下免费开源的界面库,遵循bsd协议,可以任意修改和免费使用(包括商业项目) 。
由于简约易扩展的设计以及稳定高效的实现被各大互联网公司普遍接受,广泛应用于包括IM、视频客户端、股票行情软件、导航软件、手机辅助软件、安全软件等多个行业的众多pc客户端软件 。
微信的界面这么好看,靠的就是此君 。
文章插图
、protobuf-lite 消息的序列和反序列化protobuf-lite 是protobuf支持库的精简版本,相对体积减小十倍;相对 protobuf 也很简单,可以很轻松的调用相关方法来完成业务消息的序列化与反序列化工作 。
文章插图
QQ也使用了该开源项目 。
、Speex 语音解码编码Speex是一套主要针对语音的开源免费,无专利保护的音频压缩格式 。
文章插图
Speex工程着力于通过提供一个可以替代高性能语音编解码来降低语音应用输入门槛。另外,相对于其它编解码器,Speex也很适合网络应用,在网络应用上有着自己独特的优势 。同时,Speex还是GNU工程的一部分,在改版的BSD协议中得到了很好的支持 。
QQ也使用了该开源项目 。
、SDLSDL(Simple DirectMedia Layer)是一个跨平台的multimedia library ,包含了对图形、声音、键盘、鼠标、操纵杆、2D图像的支持,现在已有不少游戏使用这个开发包进行开发 。
目前支持的系统有:Linux, Windows, Windows CE, BeOS, MacOS, Mac OS X, FreeBSD, NetBSD, OpenBSD, BSD/OS, Solaris, IRIX, and QNX 。
SDL 是用C语言写的,但是能很好地兼容C++语言 。并且能被其它语言绑定使用,如: Ada, C#, Eiffel, Erlang, Euphoria, Guile, Haskell, JAVA, Lisp, Lua, ML, Objective C, Pascal, Perl, php, Pike, Pliant, Python, Ruby, and Smalltalk.
SDL发布支持GNU LGPL v2.0 许可协议 。也就是说SDL可以免费用于商业应用 。
文章插图
官方地址:http://www.libsdl.org/index.php
推荐阅读
- 微服务和API之间的本质区别
- 关于微服务的几点老板关心问题
- 如何同步老婆微信聊天?
- 薄烟念bo还是念bao?
- iMac|微软尴尬了!2006年“古董级”iMac也能装Win11:正常运行无压力
- 甲状腺微粒体抗体
- 花草茶原料的制造,花草茶饮用的注意事项
- 后端开发程序员CentOS7 linux下常用的shell命令
- 常用的页面置换算法
- 现代黑客使用的10种常用技术