闲来无聊,正好小组人员讨论到桌面的开发,那把笔者接触的WIndows平台下的几个主要的发展过程聊一聊. 主要从概述,参考资料,图书等几个方面说起. 所有的界面开发都会涉及如下的几个方面的内容: v 控件 [Contrrols Widget]及验证 v 绑定:数据绑定到控件和控件的内容反馈回数据 v 布局系统: v 模式和支撑:和服务的通讯,MVC MVP MVVM等模式 史前期->WIN16 这个主要是Windows3.x的时代,这个时代笔者接触的不是很多,当年也主要是使用体验了.当年买了很多的…
第0.1节 HTML5和桌面软件开发的碰撞 当我们谈论桌面软件开发技术的时候,你会想到什么?如果不对技术本身进行更为深入的探讨,在我的世界里,有这么多技术概念可以被罗列出来(请原谅我本质上是一个Windows程序员的事实). 操作系统 API.操作系统发展到今日,几乎桌面应用的所有功能,都是基于系统API构建的.调用API和语言及技术无关,哪怕是使用汇编.例如(代码来源于网络,本地重新编译): ;我的第一个win32汇编程序 ;一个经典的hello world !程序 ;>>>>&…
开发大型GUI界面程序MFC当仁不让,但如果是开发图形应用程序,并不需要大规模界面控件,没有必要链接庞大的MFC库,直接使用platform sdk会很麻烦,这时ATL中的关于Windows的封装就是最好的选择 ATL的窗口架构是这样的—— [两个底层封装类] CWindow 窗口句柄和API封装类 只封装了hWnd窗口句柄和与之有关的WinAPI,CWindow和hWnd可以方便地进行转换. CMessageMap 消息映射接口 该基类有一个待实现的函数ProcessWindowMessage…
转载:https://www.cnblogs.com/tekkaman/archive/2011/04/20/2022650.html 上文分析了ATL.MFC CString的设计和实现,我们不禁会疑问,为什么ATL和MFC的CString头文件要搅在一起? 上文的分析有些杂乱,我们通过一张图来更加清晰的观察,如下: 上图中,用圈圈住的头文件表示ATL头文件,没被圈的代表MFC头文件.另外,在头文件旁边字符,表示各个头文件中实现的类. 现在让我们仔细观看,整个貌似平衡的设计中,其实有着很多的不…
写在前面 有过Win32编程经验的朋友都知道,使用Windows提供的API开发桌面应用是相当繁琐的,创建一个功能简单能接收并处理消息的窗口至少也得几百行代码.创建一个可视化的窗口一般要以下几个步骤: 第一步:定义入口函数WinMain 第二步:注册窗口类,在这一步你可以指定窗口类的菜单.光标.窗口过程函数等属性. 第三步:定义窗口过程函数. 第四步:创建窗口.显示窗口.更新窗口. 第五步:消息循环. 虽然这些步骤向导会为我们完成,但是由于windows系统是基于消息的,而且消息种类繁多,我们不…
有时候想写个几十kb的小程序,MFC实在是太大了,Win32有时又太麻烦,怎么办呢?用ATL写会更方便和轻量级一些 ATL和MFC不同的是,ATL并没有强制性封装WinMain函数,仅封装了WndProc,所以使用ATL写Windows程序有很高的自由度 ATL的窗口架构是这样的—— [两个底层封装类] CWindow 窗口句柄和API封装类 只封装了hWnd窗口句柄和与之有关的WinAPI,CWindow和hWnd可以方便地进行转换. CMessageMap 消息映射接口 该基类有一个待实现的…
原文地址:http://johnnyfee.github.io/csharp/2013/12/21/cef-glue/ 前言 如果你想使用WEB技术来开发桌面客户端,并且是想使用的语言也是C#时,那请耐心往下看.使用WEB技术开发桌面客户端的核心其实就是使用一个能够独立运行WEB前端的组件,如WinForm中的WebBrowser,Android平台的WebView,以及Qt提供的WebView,等等.对于桌面客户端开发而言,使用WebBrowser空间依赖于客户端安装的IE浏览器版本,而且IE…
研究Web桌面应用开发有一段时间了,总结了Web桌面应用开发的一些主流方式. 一.前端Style 这种方式的就是直接实现一个Web程序,再封装一个浏览器展示,相当粗暴和有效.著名的框架就是Electron和NW.js了. 代表应用程序是atom. 一般是基于node.js.也有其它语言的. 各种前端框架的拥趸是这种Style的狂热粉丝.这里就不放Demo了.贴段代码就可以感受到它的霸气侧漏. app.on('ready', function() { // 创建浏览器窗口. mainWindow…
1> Mac OS X平台下的桌面软件是由什么编程语言处理 答: 由Objective-C, swift编程语言处理 2> Mac OS X平台下的桌面软件是由什么框架构建 答: 由Cocoa库/框架构成 3> Mac OS X平台下的系统特性是什么 答: 系统特性是很多的, 我们需要几本专业的书籍来学习: <深入解析Mac OS X & iOS操作系统> <Objective-C高级编程(iOS与OS X多线程和内存管理)> <Cocoa编程开发者…
先看到了NW.js(应该是前身node-webkit的缩写? 觉得该起个更讲究的名字, 如果是NorthWest之意的话, logo(见下)里的指南针好像也没指着西北啊)和Electron的比较文章: Why I prefer NW.js over Electron? (2018 comparison) 之后在看NW.js创始者(Wang WenRui)的推时不意发现微信小程序用了此框架. 也许与它对老系统如Windows XP的支持有关. 必须体验一下! 下面完成与中文编程:中文代码示例之El…