如何创建一个 Windows 桌面应用程序?

版权声明:本文为博主原创文章,欢迎转载,转载请注明出处。 https://blog.csdn.net/lemon4869/article/details/82468764

工具:Visual Studio 2017 Community
  在大学期间,不过学习 C/C++ 还是 Java,每次写的程序都是控制台黑框框,有时候想设计一个可视化的应用程序却不知从何下手,大学里面的课程也没有 Windows 程序设计相关,有点苦恼。本文就这个问题分享一下创建 Windows 桌面应用程序的两种途径。
  创建 Windows 桌面程序有多种技术,但是哪种比较适合自己呢?在我的大学课程中,没有关于 Windows 程序设计的课程。但由于机缘巧合,接触到了 MFC,对 Windows 桌面编程有了了解。我还使用过 Java 创建 Windows 应用程序,当时使用的 IDE 是 Eclipse,在Eclipse 中装相应的 Windows 插件,也可以创建 Windows 可视化桌面应用程序。但是今天,主要分享一下微软官方推荐的创建 Windows 桌面程序的技术。
  本文指的 Windows 桌面程序是指传统的桌面程序,比如 Word,Excel,PowerPoint,Photoshop等。近几年,微软一直在推他的新技术——通用桌面程序。这种程序编写好之后可以运行在 Windows 电脑、平板、手机上。不过 Windows Phone 已经凉了,微软爸爸已经抛弃了它。


1、 选择 C++ 和 Win 32 API 来开发 Windows 桌面应用程序,使用语言是 C/C++;

  C ++在各种平台(Windows和非Windows)上提供一流的开发体验,而不依赖于.NET等高级运行时环境。这使得C ++成为便携式应用程序的首选语言,当这些运行时不可用或对某些目标平台来说太重量级时。
  使用C ++和Win32 API可以通过更严格地控制目标平台来实现最高级别的性能和效率,而不是.NET运行时允许的。但是,对应用程序的执行进行如此高级别的控制需要更加谨慎和关注才能正确运行,并为运行时性能交换开发效率。
  以下是C ++提供的一些亮点,可帮助您构建高性能应用程序。
 硬件级优化,包括严格控制资源分配,对象生存期,数据布局,对齐,字节打包等。
 通过内部函数访问面向性能的指令集,如SSE和AVX。
 使用模板进行高效,类型安全的通用编程。
 高效安全的容器和算法。
 DirectX特别是Direct3D和DirectCompute。
 C ++ AMP

2、 选择 .Net 来开发 Windows 桌面应用程序,使用语言有 C#,C++,F#,VB。

  .NET在桌面,Windows Phone和Windows应用商店中提供一致的一流开发体验。它提供更高级别的编码和生产力。.NET允许您在桌面上继续开发基础应用程序并添加令人兴奋的新体验,同时使用您现有的技能并在设备之间重用代码。如果您希望在任何设备上创建更加量身定制,适合平台的体验,Visual Studio行业合作伙伴(VSIP)提供的解决方案可以在非Windows设备上重用C#技能和代码。
  除了您期望的功能(如文件/流和网络通信)之外,以下是.NET提供的一些重点,可以使构建应用程序非常高效:
 运行时生产力和安全性,如自动内存管理,类型安全,异常处理和线程管理
 GUI技术见下文
 丰富的集合数据类型
 数据建模(ADO,LINQ,WCF数据服务)
 语言集成查询(LINQ)
 日期和时间库
 序列化
 网页服务
 安全和加密
 并行编程库

结论

您可能对C ++或C#/ Visual Basic具有强烈的亲和力,这可能决定您选择编写桌面应用程序的方式。使用.NET / C#(或Visual Basic)进行高级编码,提高工作效率,丰富框架和服务,支持现代客户体验,跨平台维护资产(Windows应用商店应用,Windows Phone应用,Windows桌面应用等) )。当您需要实现最高级别的性能,明确地管理资源或内存布局,访问硬件级优化机会,当您希望应用程序可移植到没有平台时,可以将本机C ++用于游戏和其他图形密集型应用程序.NET运行时,或者更容易利用存在的免费可用的高质量C和C ++库。
以上引用资料来源:https://docs.microsoft.com/zh-cn/windows/desktop/choose-your-technology


接下来用 Visual Studio 2017 Community 进行实战。
1、演练:创建传统的Windows桌面应用程序(C ++)
https://docs.microsoft.com/zh-cn/cpp/windows/walkthrough-creating-windows-desktop-applications-cpp?view=vs-2017
完成效果图:
这里写图片描述
2、使用 C# 创建图片查看器
https://docs.microsoft.com/zh-cn/visualstudio/ide/tutorial-1-create-a-picture-viewer?view=vs-2017
完成效果图:
这里写图片描述

公众号:蓝冰软件实验室

猜你喜欢

转载自blog.csdn.net/lemon4869/article/details/82468764