Windows编程学习笔记02-Windows编程选项

API

对于程序员来说,操作系统的功能完全由API来定义。API涵盖了应用程序所能调用的全部操作系统函数,以及相关的数据类型和结构。在Windows 中,API还隐含了一种特殊的程序结构。

详情见21.WindowsAPI

可选,现在不用API也可以编程

开发语言

究竟用哪种方式编写Windows应用程序最好,其实并无一定之规。应用程序本身的特性应该是决定采用何种编程工具的最主要因素。但是无论将来你采用什么编程工具,通过了解Windows API 从而深入理解Windows的工作原理,这本身就具有很重要的意义。Windows是一个非常复杂的系统,在API之上加一层编程语言并不能消除其复杂性,最多不过是把复杂性隐藏起来而已。说不定什么时候,Windows复杂的那一面迟早会蹦出来拖你的后腿,懂得API能让你到时候更快地挣脱困境。

在基本Windows API之上的任何软件层或多或少都会限制你使用Windows的全部功能。比如,你或许发现采用Visual Basic来编写你的应用程序非常理想,但是就有那么一两项非常基本的功能Visual Basic无法支持。往往这种时候,你就非得要调用基本API。作为Windows程序员,我们的活动空间完全由API来规范,再没有什么其他方式能比直接调有API更有效、更灵活多样了。

MFC的问题尤其严重。尽管它极大地简化了某些工作(如OLE),但我经常发现自己会在某些其他功能上摔跟斗(比如让文档/视图的体系结构按照我的设想来工作)。并非像很多人一厢情愿期望的那样,MFC 始终没有能成为 Windows 编程的万灵宝药,几乎也没人认为它是一种很好的面向对象的设计模型。MFC 程序员通常受益最多的是对他们用的类定义的理解,他们总是经常不断地在查询MFC的源代码。而了解Windows APl的好处之一就是能帮助你读懂MFC源代码。

开发方式

可以混合使用平台工具或语言,比如界面和大部分不影响效率的功能是用C#实现的。非常影响效率的部分功能用c++的实现,并作为程序的动态链接库调用。甚至界面用网页实现页面,CSharp实现后台。

VisualC++

  • 可以仅使用 C 和 WindowsAPI:最经典的开发方式。更有利于理解Windows编程原理。但是开发效率偏低,学习用。

  • 可以使用 C++ 和 WindowsAPI:

  • 可以使用 C++ 和框架 比如 MFC\QT\ATL…

.NET

  • 可以仅使用C#:开发效率高,商业

Web

  • Electron:Chromium负责渲染、Node.js负责后台
    1、Web技术:Electron嵌入了Chromium和Node.js,使Web开发人员能够创建桌面应用程序。
    2、跨平台:与macOS、Windows和Linux兼容,Electron应用程序可以在所有支持的架构上的三个平台上运行。
    3、开源:Electron是一个开源项目,由OpenJS基金会和一个活跃的贡献者社区维护。
    4、原理:使用Electron的主要进程api与操作系统的接口交互。自定义应用程序窗口外观、控制应用程序菜单或通过对话框或通知提醒用户。
    5、示例项目:VSCode、Obsidian、思源笔记、Notion、Figma、Postman
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

尘旭员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值