今天看到几大公众号联合送书,有算法、python、容器、Spring等相关的书籍,其中有一本 << VC++深刻详解>> 显得有点不同凡响,引发了个人注意,触发了点滴回忆……html
遥想多年之前,这本书也是个人入门书籍之一,有了电脑后,装了开发环境尝试编译书中的例子,今后开始了 MFC 的入坑之路。时至今日,在工做中还在用,或许将来的一段时间里还要继续使用。python
虽然我还在使用,可是对于以前没接触过 MFC 打算学习的人来讲,建议仍是不要学了。不过在今天这个时代,打算学习的人想来不会太多,毕竟如今是云、大数据、万物互联的时代,大多数人都在学 Java、Python、Docker 及其相关的技术。虽然我心里强大,但想到此处仍是不禁得有些落寞……算法
若是不学 MFC,那打算开发桌面客户端使用什么技术呢?微信
若是使用的语言是 C++,建议使用 Qt;若是使用的语言是 C#,建议使用 WinForm。下面从不一样的方面作些简单的比较:app
开发环境:Qt Creator 是 Qt 的官方开发环境,可是在我短暂的使用过程当中仍是以为的 VS 比较好用,经过官方提供的 VS 插件,搭配熟悉的 VS 就是最优的 Qt 开发环境。界面设计方面,Qt 的设计器和 WinForm 的设计器都比较好用。学习
基础类库:有了丰富的基础类库,才能提升开发效率。在这一点上 Qt 和 .NET(WinForm 只是其中的关于界面的部分)都含有各类各样的类库来知足不一样的开发需求。大数据
资料丰富:Qt 和 WinForm 都有很是丰富的资料,不管是官方提供的技术文档,仍是已经出版的技术书籍。spa
跨平台:Qt 是基于 C++ 的跨平台的库,而 WinForm 只能在 Windows 平台使用。(固然在其它平台可使用 .NET 的开源实现版本 Mono,Mono 是由 Xamarin公司开发的跨平台 .NET 运行环境,已被微软收购,而官方的 .NET 也已开源。)插件
是 Qt 仍是 WinForm,更多的可能仍是要根据工做的不一样需求来定。若是还没参加工做,能够都了解下,而后根据我的喜爱进行选择。这些都是界面相关的部分,在学习这些的同时,还要学习软件开发相关的其它通用的知识,而这些才是须要更加关注的地方。设计
回到 MFC,为何不建议学习它?简单说下个人 3 个理由:
MFC 是微软建立的类库,而如今微软已经将其放弃。多年再也不更新,且新版本的 VS 默认再也不安装(我安装的版本中 VS2015 已经默认再也不安装)。
基础类库:前面提到过有了丰富的基础类库,才能提升开发效率。而MFC 只是对 Win32 的封装,类库不丰富。
界面资源:使用 MFC 开发界面时,产生的界面资源都存储在 .rc 文件中,控件 ID 都存储在 resource.h 中。多人开发进行合并时容易产生 ID 冲突等问题。并且因为资源都是存储在一个文件中,已开发的界面难以复用。
除了 MFC、Qt、WinForm,还有其它一些桌面客户端开发技术:
- - - End - - -
本文做者: Lzl678
本文连接: http://www.javashuo.com/article/p-gendkhqv-gp.html
版权声明:本博客全部文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!