- 主题:自 Petzold 以来,微软再也没有过连贯的 GUI 策略
好像除了我们这些老人家。
也没人在乎这些事了吧。
win32GUI 编程真的还在人干吗?
【 在 Jacqueline 的大作中提到: 】
: Jeffrey Snover, glm5翻译
: [upload=1][/upload]
--
修改:hgoldfish FROM 222.79.179.*
FROM 222.79.179.*
全都可以笼统归结为大公司病呗。但apple的软件架构的演进好像没这么夸张。
跟Charles Petzold没啥关系,他只是个布道者吧,win32 api又不是他拍板设计的
--
FROM 123.114.7.*
话说,现在 win/linux 下,java swt 对比之下好像也不差。
以前入门难度比较高的问题,现在有 AI 也方便很多。
swing 自绘中文不好看的问题不知道解决了没有。
以前觉得 idea, netbean 笨重。如今跟 vscode 这些 js 的比起来简直眉清目秀。
【 在 z16166 的大作中提到: 】
: 全都可以笼统归结为大公司病呗。但apple的软件架构的演进好像没这么夸张。
: 跟Charles Petzold没啥关系,他只是个布道者吧,win32 api又不是他拍板设计的
--
修改:hgoldfish FROM 222.79.179.*
FROM 222.79.179.*
electron挺好的
【 在 Jacqueline 的大作中提到: 】
: Jeffrey Snover, glm5翻译
: [upload=1][/upload]
--
FROM 114.253.254.*
微软的GUI的使命在完成win32的窗口之后就已经完成
后续各种推进都属于框架级的改进,而非基础设施级别的改进
从这种意义上来说,windows团队坚持c/c++路线是毫无问题的
包括安卓真正意义上的底层也还是100%纯c/c++, SDK只是用java封装了个壳
微软的后续GUI框架设计的方向都走偏了,过于注重现代性,并且极其封闭,忽视了图形应用对底层要求复杂且深入,从功能上讲不能替代原来的win32图形
微软这种GUI框架的变更,更像是由于移动平台不断的吞噬,不断推出应对的商业策略, 微软到现在也没有意识到这些东西的问题到底在哪, 它只知道作为一个商人不停地推windows版本, 推新东西,没有意识到开发者需要的是一个稳定的开放的可扩展的东西,而不是多么现代多么优雅
【 在 Jacqueline 的大作中提到: 】
: Jeffrey Snover, glm5翻译
: [upload=1][/upload]
--
FROM 111.194.200.*
Win32完成个鬼。纯GDI的图形就不行,所以才有GDI+、Direct2D/DirectWrite
微软失败就失败在:它每一次试图引入“现代性”时,都要顺便塞进去一套封闭的生态系统(强推 C#、强推 UWP 商店、强推某种特定的架构),直接剥夺了 C/C++ 开发者对底层的控制力。
开发者真正想要的是:
1、底层渲染: 抛弃 GDI,全面拥抱 GPU 硬件加速(类似 Direct2D、Vulkan 或 Metal)。
2、API 接口: 保持像 Win32 那样纯粹的 C/C++ 接口,没有厚重的运行时(Runtime),不强绑定特定的语言(如 C#)或沙盒机制。
3、UI 描述: 引入现代的布局系统(如 Flexbox)和声明式语法,但不破坏底层的透明度。
【 在 iwantfly 的大作中提到: 】
: 微软的GUI的使命在完成win32的窗口之后就已经完成
: 后续各种推进都属于框架级的改进,而非基础设施级别的改进
: 从这种意义上来说,windows团队坚持c/c++路线是毫无问题的
: ...................
--
FROM 123.114.7.*
说的很有道理
但是你说的目标,win32+自己使用库就能全部做到
而wpf/uwp/winui能做到吗, 他们不能使用第三方库吗, c#不能调用c++吗
wpf/c#调用c++库就能实现轻松集成opengl/vulkan吗
它的根本问题在于封死了底层的可扩展性, 从而无法与c++竞争
总结起来我认为商业上的失败是主因, 技术上的偏向是次因, GUI方面的专业图形领域生态完全无法进行迁移
【 在 z16166 的大作中提到: 】
: Win32完成个鬼。纯GDI的图形就不行,所以才有GDI+、Direct2D/DirectWrite
: 微软失败就失败在:它每一次试图引入“现代性”时,都要顺便塞进去一套封闭的生态系统(强推 C#、强推 UWP 商店、强推某种特定的架构),直接剥夺了 C/C++ 开发者对底层的控制力。
: 开发者真正想要的是:
: ...................
--
FROM 111.194.200.*
我不知道你这个帖子是要表达啥
自己调用库去实现的结果,就是“那我还要你微软干毛用,全靠我自己手搓一套”,那就是抛弃微软推的框架啊,最终就是倒向Qt、Electron、GPU自绘这种。
1、WinForms,不是directx的。C/C++被排斥在外。
2、WPF,用C#调用C++的directx接口,但就是只给C#用。C/C++被排斥在外。
3、Direct2D,只有画线、画字、画渐变之类的,不包含控件库。
4、UWP,搞个沙盒,C/C++ native被排斥在外。
5、WinUI3,终于醒悟了,但人早都走光了。这年头谁还专门针对windows写软件,而不尽可能写跨平台的,那不傻吗。
【 在 iwantfly 的大作中提到: 】
: 说的很有道理
: 但是你说的目标,win32+自己使用库就能全部做到
: 而wpf/uwp/winui能做到吗, 他们不能使用第三方库吗, c#不能调用c++吗
: ...................
--
FROM 123.114.7.*
RAD Studio(Delphi、C++Builder)、Lazarus可以有
【 在 Jacqueline 的大作中提到: 】
: Jeffrey Snover, glm5翻译
:

[upload=1][/upload]
--
FROM 218.108.223.*