Skip to content
huangjianxiong edited this page Nov 20, 2018 · 2 revisions

欢迎访问SOUI Wiki ٩(๑>◡<๑)۶

前言

在Windows平台上开发客户端产品是一个非常痛苦的过程,特别是还要用C++的时候。 尽管很多语言很多方法都可以开发Windows桌面程序,目前国内流行的客户端产品都是C++开发的,比如QQ,YY语音,迅雷等。 快速,稳定是我认为的应用软件开发框架最基本的要求,对于UI还有两个要求就是界面美观,配置灵活。 C++语言满足了快速的要求,传统的客户端软件开发框架如MFC,WTL等满足了稳定的要求。然而界面美观,配置灵活是MFC,WTL这样的开发框架所不能满足的。 腾讯是做客户端发家的,他们的UI经验积累非常好,有自己专门的UI框架;迅雷有一个专业的团队开发自己的UI框架;然而大多数公司只希望有一个能够快速完成项目开发的UI库来使用,它们没有专业的团队来维护UI库。国企有钱任性,所以成就了UIPower:一个商业化的DirectUI库(具体怎么样不好说,优点在于有人给你服务),一般的小公司没有谁愿意当这个冤大头。这就是Duilib这样一个简单到简陋的UI库(请原谅我这样说)为什么这样流行的原因(百度一下Duilib就知道它有多少人在用)。 Duilib基本满足了界面美观 ,配置灵活的需求,然而由于框架本身的限制,要实现复杂的效果将不可避免的遇到各种坑。好在Duilib代码量很少,随便一个有经验的UI开发工程师都能够相对容易的使用并修改它,所以在一般的应用中使用并不会有太大的问题,这也应该是为什么会有那么多的Duilib变种的原因:每一个使用它的公司或者个人都会有一份独一无二的副本。 其实上面我还漏了说QT, QT在国外有专业的团队维护,文档也很好,但至少有两个缺点:1、它是跨平台的,跨平台即是优点,也是缺点,为了实现跨平台,很多时候需要做出取舍,就算抽象的100%的完美,它也不可避免的带来体积庞大;2、代码量太大,普通人很难驾驭:就算是看懂都不容易,更别说修改了,这样的结果就是一旦在使用中遇到问题你唯一的选择就是提交BUG给QT开发小组等待补丁(要知道不存在没有BUG的产品)。

SOUI是什么?

SOUI是一套和Duilib类似的开源C++ UI开发框架。它的祖宗是金山卫士开源版本中使用的UI库Bkwin,之后由启程软件(也就是我了)开发维护升级为Duiengine,最后历经多次重构改名为SOUI,寓意“瘦UI”,“UI, just so so!”。使用MIT开源协议,公司、个人兼可免费作用,只需要发布时带上SOUI的license。

SOUI界面效果

WIKI 导航

SOUI 概述
使用教程

﹊﹊﹊﹊﹊﹊﹊﹊﹊﹊
This wiki is created by [SOUI Team]

Clone this wiki locally