领导终于开始考虑使用 html5 来代替 mfc 写桌面版客户端了……

2016-09-06 09:06:57 +08:00
 harry890829

公司客户端使用 mfc 编写,主要使用环境在 xp 上,所以现在还是虚拟机 xp+vc6.0 开发

现在终于说通领导开始考虑 html5 来代替 mfc 写客户端了,领导让我写一封邮件来说明 html5 和 mfc 各自的优势神马的

我觉得 mfc 一点优势都没有啊,根本被 html5 碾压啊

好吧,抱怨完了,我就想问下,怎么写邮件能够让领导赶紧拍板改成 html5 ,顺便问下 html5 的优势有些什么,我对 html5 不太熟……

20758 次点击
所在节点    问与答
129 条回复
doubleflower
2016-09-06 15:50:55 +08:00
一帮没用过 MFC 的吐槽 MFC ,连 Delphi 都被碾压了还 MFC 呢, MFC 除了做出来的东西除了小点没有任何优点
murmur
2016-09-06 16:00:45 +08:00
@xjp 越牛逼的混合应用 pc 也好 移动端也好 都是有超强的 native 壳子撑着的
印象中有人跟我说过当年腾讯用 webkit 核心干掉了大家还在用的 ie8 浏览器都屌的不行不行的了
bydmm
2016-09-06 16:37:04 +08:00
http://nwjs.io/
我倒是知道一个方案,要看你们具体的需求了
alqaz
2016-09-06 16:42:57 +08:00
Qt 可以拯救你,直接 h5,跨度太大,要么要新找人,要么调试肯定会掉各种坑, Qt 比 MFC 方便,而且比轮子都是现成的。
Chrisplus
2016-09-06 16:55:04 +08:00
孰优孰劣要看具体业务需求

你这个需求(类似于 xx 管理系统)看起来 MFC 还更合适一点
binux
2016-09-06 17:11:18 +08:00
这里一大堆人根本没搞懂桌面客户端用 HTML5 是什么意思。还兼容性,没法调用底层呢。。。
在桌面客户端用 HTML5 又不是说让你用本地浏览器打开应用,而是应用嵌入一个浏览器,使用 HTML5 绘制界面。
alqaz
2016-09-06 17:18:29 +08:00
@binux 用 h5 和 c++做界面展示层,这中间跨度难道你不觉得很大吗?
binux
2016-09-06 17:23:03 +08:00
@alqaz 什么大不大,又不是前无古人后无来者。
sgissb1
2016-09-06 17:23:39 +08:00
小伙,一看就是哥们刚出道没多久,或者两者都不是很熟悉的( mfc 或 h5 )。
我对 mfc 和 h5 也不是很熟悉,但对 mfc 熟很多,因为我是 c++(偶尔写 c )。

至于 mfc 和 h5 都是各有千秋的,没有哪个好与坏。 mfc 最大的败笔就是 M$当年为了愚化程序员计划的不周全(当年 M$有一大波愚化程序员计划,和现如今绝大部分框架可以吃遍全端:手机、平板、 PC ,有一定的异曲同工之妙。)

由于当年 M$为了简化开发,所以倒腾出一大堆东西,最为熟悉和当年最容易上手的还是 MFC 。但由于后期的臃肿,以及在 windows 下写界面代价太高,所以一部分写界面的人转了 directUI(一种概念),另一部分使用 windows api 的人转为各种库( boost 、 stl ,以及直接调用 win32 api 等)。

现如今, mfc 开发一个 demo 或者开发一个要求不高的应用还是很好用的,尤其是需要用到和底层或偏底层打交道的。
而对于崛起的 h5 来说,他只是一个标记性语言而已,和 mfc 都不是一个东西好不好?

h5 的同类型的东西是: c,c++,java,python 等(属于语言)。
h5 的开发周期也很短,只要浏览器支持,性能扛得住,很快就能做出一个用 c,c++甚至 java 需要开发很久的一个通用功能,并且在界面展现方面, h5 会比其他几种语言好得多。

正所谓小伙,当你拿 h5 和 mfc 来比较的时候,就注定你两个都不熟(或者不懂,一个是库,一个是语言)。
另外这两玩意分工也不同,如何比。或者哥几个用 mfc 的工程写个和底层打叫道,你用 h5 写个试试看?
sgissb1
2016-09-06 17:27:11 +08:00
@murmur 貌似扣扣音乐还在用 ie 的框架控件。
zhqy
2016-09-06 17:35:35 +08:00
经过一番调研,你会选用 nw.js ,然而 nw 的坑太多了。于是转战 electron , electron 真是好, api 完备模型清晰,再经历了 3 个月没日没夜的开发之后项目终于可以打包发布了,然后你发现,卧槽 electron 不支持 xp 。

呵呵呵呵呵。
wshcdr
2016-09-06 17:54:05 +08:00
MFC 和 H5 完全是两个方向,好吧。再说了 VS2015 还是继续支持 MFC 的。
Radeon
2016-09-06 17:57:30 +08:00
XP 的话,用.NET Framework 4.0 + Xamarin 就可以了
zjqzxc
2016-09-06 20:02:59 +08:00
@Radeon 全新安装的 win 7 装.NET Framework 4.0 都费劲,离线安装每次耗时都在 1 小时以上,不敢想再低版本的系统还能不能装的上。
xiaoc19
2016-09-06 21:59:09 +08:00
@zjqzxc 官网除了有在线安装包,还有离线安装包
cosven
2016-09-06 22:15:14 +08:00
一不小心就会做得卡的不要不要的
garrydzeng
2016-09-07 01:55:36 +08:00
@harry890829 去试试 electron 这个壳, visual studio code 就是基于它的,似乎做点优化性能也不是问题。 http://electron.atom.io
srlp
2016-09-07 03:42:40 +08:00
来一发 qt + qml
finian
2016-09-07 08:52:52 +08:00
12 年的时候我们用 CEF ( Chromium Embedded Framework )开发了一款桌面应用,界面用 Web 那一套技术,开发效率确实杠杠的,但是坑太多,一方面是当时 CEF 对 HTML5 的支持程度有限, V8 引擎的性能还远没有现在这么高;另一方面,基于 CEF 来封装一套桌面开发框架,在当时的技术成熟度偏低背景下,成本实在是太高了。后来项目由于种种原因胎死腹中。现在可选的框架,比较成熟的估计也就 Electron 和 NW 了吧?但 Electron 是不支持 XP 的, NW 倒是支持 XP ( NW LTS 版本),但是据说坑比 Electron 多很多。国内的有道开源了个 hex ,但是最后 commit 停留在了 14 年。

挖了个当时我们用 CEF 做的项目的一个视频:
http://v.youku.com/v_show/id_XNDcyMDAwMTAw.html?beta&from=s1.8-1-1.2&spm=0.0.0.0.yp3ozc
finian
2016-09-07 08:55:44 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/304194

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX