对Devexpress ASP.NET组件的一些看法
使用.net开发的应该都熟悉DevExpress这套组件,强大的功能,显著提高开发效率和提升用户体验。 不过好像大都用winform, 说起用asp.net组件来开发webform,很多人开口就说慢,不考虑使用,最后发现说慢的基本没用来开发过,更多是属于人云亦云或技术较差,就算让他们使用原生控件做的网站也会性能低下。什么东西都需要优化,除非你的程序只输出hello world,对asp.net网站的代码进行优化比winform更有必要性。当然你如果要求一个富客户端UI的性能和winform一样媲美,还想保持原生控件的性能,这是不可能的事情。毕竟像ASPxGridView这种重型控件中各种JS,CSS资源就达1.5M之多,首次加载会需要几秒的时间来加载资源到浏览器缓存。各控件间的资源重复率较高,所以如果某个控件加载过,会明显减少其他控件首次打开时的资源加载时间。
曾经碰到一个使用DevExpress开发webform的人,让我大跌眼镜的是,对于一套内置ajax的控件,他竟然还用submit来提交数据,我就问他,你用这套控件的初衷是什么,难道仅仅是因为某些功能实现起来方便,界面好看?而这样开发出的网站,又被以讹传讹的方式来进一步对其他未使用这套控件的人进行洗脑:慢。
好吧,原先我刚学习用这套控件的时候,确实也对这套控件认识粗浅,别谈优化了,学习阶段花了大量时间在搞清楚怎么实现某些功能,在经过1个项目实战后,后期又进行了代码重构和性能优化,才发觉这套控件在带来强大的功能,悦目的界面同时,性能一点也不差。局域网就不说了,即便放在外网,即使我把我的20M光纤限制为2M来进行使用,还是一如既往的流畅。当然对于某些人非要使用N年前的cpu+1G或2G的内存来跑程序,我也没办法,我只想问,你这配置跑win7顺畅不?当然他们会说,我跑xp很顺畅啊,我只能说,你算高配了,xp 512M内存就够了。 这就相当于我送你一辆跑车你非要在满街都是人的步行街跑,然后喷跑车垃圾速度一样无聊。当然要顺畅跑这套控件,也不是非要你弄个I7档次,在我的最早期i3cpu+4g内存,外网2M宽带上,已经非常流畅,当然我没有很多硬件资源去进行更多的测试得出流畅运行的最低配置.如果配合自制轻量级chrome内核浏览器,没有了被一堆乱七八糟插件占领的环境,性能还会有一定的提升。
所以大家对使用这套控件前应该有个清晰的认识,而不是人云亦云。当然我也放出一个实战项目来演示,目前这个演示放在自己的主机,更能体现真实的性能。经多次测试,如果放在虚拟主机上,则会有0.5秒-1秒的延迟。比如打开一个带有20-30个控件的界面,独立主机只需0.5秒,而虚拟主机则可能需要0.5-1秒,而打开一个带有60个左右的控件的界面,独立主机需要1秒的时间,而虚拟主机则需要1.5秒-2秒的时间。在运行N个站点ping平均值在60ms左右的虚拟主机上性能有明显的下降。当然没有哪家企业会把管理系统部署在虚拟主机上,在独立主机上大部分界面具有和winform相近的响应速度。
对Devexpress ASP.NET组件的一些看法的更多相关文章
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.2)
本文主要为大家介绍DevExpress ASP.NET Core Controls 2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.1)
本文主要为大家介绍DevExpress ASP.NET Core Controls2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- DevExpress ASP.NET v18.2新功能详解(二)
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Cont ...
- DevExpress ASP.NET v18.2新功能详解(一)
行业领先的.NET界面控件2018年第二次重大更新——DevExpress v18.2日前正式发布,本站将以连载的形式为大家介绍新版本新功能.本文将介绍了DevExpress ASP.NET Cont ...
- DevExpress ASP.NET Core Controls 2019发展蓝图(No.6)
本文主要为大家介绍DevExpress ASP.NET Core Controls 2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...
- 『Asp.Net 组件』Asp.Net 服务器组件 内嵌JS:让自己的控件动起来
代码: using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace ...
- DevExpress ASP.NET 使用经验谈(1)-XPO模型的创建
这个系列通过一些简单例子循序渐进,介绍DevExpress ASP.NET控件的使用.先来介绍一下XPO的使用,安装的DevExpress版本为DXperienceUniversal-12.2.4,使 ...
- DevExpress ASP.NET 使用经验谈(9)-Dev控件客户端事件 ClientSideEvents
上一节,已经介绍了ASPxGridView的自定义列和基本事件 ,本节接着将介绍Dev控件的客户端事件模型. 在上节示例基础上,我们增加一行菜单,使用Dev的ASPxMenu来实现,如下图所示. 图一 ...
- 『Asp.Net 组件』Asp.Net 服务器组件 内嵌图片:自己的图片控件
代码: using System; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace ...
随机推荐
- Android应用中使用自定义文字
在Android系统中可以很方便的修改字体样式.系统提供了三种样式,分别是sans,serif,monospace.可以在xml布局文件中通过 android:typeface="[sans ...
- core_cm3.c解析
CMSIS是Cortex微控制器软件接口标准(Cortex MicroController Software Interface Standard)的缩写,这个是ARM定制的一个用于Cortex-M系 ...
- openssl编译(VC6.0)
官网:http://www.openssl.org/ 得到源码: git clone https://github.com/openssl/openssl 一.用vc编译器编译: 1.下载nasm: ...
- restful_api
http://www.ruanyifeng.com/blog/2014/05/restful_api.html
- discuz函数quote
public static function quote($str, $noarray = false) { if (is_string($str)) return '\'' . addcslashe ...
- Unix/Linux环境C编程入门教程(12) openSUSECCPP以及Linux内核驱动开发环境搭建
1. openSUSE是一款优秀的linux. 2.选择默认虚拟机 3.选择稍后安装操作系统 4.选择linux opensuse 5. 选择默认虚拟机名称 6.设置处理器为双核. 7.内存设置为2 ...
- Codeforces 263E
Codeforces 263E 原题 题目描述:一个\(n \times m\)的矩阵,每格有一个数,给出一个整数\(k\),定义函数\(f(x, y)\): \[f(x, y)=\sum_{i=1} ...
- docker private registry使用
一.搭建harbor: 步骤:略 二.命令行操作: 登录:docker login docker01 tag image: tag 一个 image,名称一定要标准( registryAddress[ ...
- DLL导出函数和类 之 __declspec(dllexport)
可利用__declspec(dllexport)导出函数或类. 若要指定C类型约定导出,则需在前面加extern “C”. 若要导出函数,__declspec(dllexport) 关键字必须出现在调 ...
- SQLServer .mdf和.ldf文件
.mdf:是数据库数据文件,存放一个数据库的数据信息. .ldf:是数据库日志文件,即日常对数据库的操作的记录如(增.删.改)的文件.