zoukankan      html  css  js  c++  java
  • Winform应用和Web应用的比较

    比较WinForm应用和Web应用[整理]
    2007-08-17 23:55

    1、UI的布局能力

    HTML具有完善的布局能力,包括能够基于文本流进行布局,包括各种段落、图片,段落中文字的左中右对齐,段首的缩进,行间距,避头尾字符;HTML的表格具有极强的布局功能,可以将UI分割成不同比例的部分,可以按照比例缩放;HTML元素的位置和尺寸,不但可以是像素也可以是百分比;矢量图可以通过VML来实现,任何元素作为位图输出之前,可以通过滤镜变换。

    WinForm主要是以GDI在窗口上输出,理论上没有什么实现不了的。当然,要想实现成HTML的能力是不现实的。GDI的优势就是快,省去了解析HTML的开销。

    2、定制Control的能力

    在浏览器中可以定制HTC,WinForm中可以定制WinForm,并有大量第三方Control。

    DHTML有非常完备的DOM模型,各种对象的属性、方法、事件非常完备。可惜,通常在页面上只能通过脚本语言进行操作。
    WinForm中Control的对象模型也不错,但是,主要原因是没有HTML的完整的对象模型,目前,都是窗口控件,没有无窗口控件。

    Web开发的问题在与客户端没有完善的开发环境和开发语言,只能用脚本。
    而WinForm的开发有强类型的语言支持,有完整的类库,可以编写自己的控件库。WinForm程序由于客户端有.net framework,我们可以使用任意.net framework的数据类型,如dataset,我们可以实现数据绑定,然后,仅仅将变化的数据提交给服务器。

    3、和服务器的通讯能力

    Web应用中的提交方式(Form提交、XmlHttp等)不同,会引出状态问题;

    WinForm则不存在这种问题,而且WinForm可以和服务器保持连接状态,在有些应用中很有用,如大数据量分页查询。WinForm也可以实现与服务器的事件通讯机制,这对于一个data entry为主的应用,中间和服务器有若干次交互,WinForm程序更有优势。(WinForm可以运用非常多的手段与服务器进行通讯,如WebService、Remoting、Http、Socket....)

    我们可以得出一个结论,以展现为主的程序用HTML进行界面表现更好,而以数据录入有关,且和服务器交互频繁的程序,用WinForm程序应该较好。
    最关键的是,使用Web开发,开发人员需要掌握两套体系。

    4、认证和本地访问权限


    Web应用的认证方式由服务器设置,客户端是通过浏览器实现的。
    WinForm程序作为客户端,可以使用各种方式来提供认证信息。


    Web应用中,程序能控制什么,一切由浏览器设置,例如,自动登陆还是密码认证,而WinForm程序可以自己制定需要什么帐户登陆,选用哪一种认证方式。
    Web应用本地访问权限比较简单和笼统,分为internet,local intranet, trusted sites和restricted sites,所能进行的控制比较简单。基本上不能涉及到对资源本身的访问权限,如文件系统网络访问。

    (以上根据微软电子课堂相关内容整理)



  • 相关阅读:
    Jupsh_flutter Android 收不到消息 / 排查不出请根据第 9 点说明提供信息
    angular表单 Dom获取表单值以及双向数据绑定
    angular中的组件以及组件中的模板合成
    Flutter开发的app进行设备判断是Ios还是android
    Java的封装
    GCD编程 之 略微提高篇
    多线程基础(六)GCD基础
    我遇到的CocoaPods的问题(也许后期会解决,持续更新)
    iOS之通过PaintCode快速实现交互动画的最方便方法 未解问题
    多线程基础(五)NSThread线程通信
  • 原文地址:https://www.cnblogs.com/lvfeilong/p/fdfa.html
Copyright © 2011-2022 走看看