对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 SD卡创建文件和文件夹失败
原文:Android SD卡创建文件和文件夹失败 功能需要,尝试在本地sd卡上创建文件和文件夹的时候,报错,程序崩溃. 一般情况下,是忘记给予sd卡的读写权限.但是这里面权限已经给了,还是报错. 在网 ...
- MFC对话框屏蔽Enter和ESC键
MFC对话框屏蔽Enter和ESC键参考:http://www.docin.com/p-122354833.html 方法一重载PreTranslateMessage函数 BOOL CXXDlg::P ...
- python手记(9)
本博客所有内容是原创,未经书面许可,严禁任何形式的转 http://blog.csdn.net/u010255642 tab #!/usr/bin/env python # example noteb ...
- a中国天气网pi(json格式)
http://m.weather.com.cn/data/101050101.html 此接口的回报格式例如以下 { "weatherinfo": { "city&quo ...
- css组件规范
7月份研究了下 写了下总结. 笔记地址
- JavaScript之<script>标签简介
向html页面中插入JavaScrpt的主要方法,就是使用<script>元素,下面是Html 4.01为<script>定义的6个属性. 1.async:可选表示应该立即下载 ...
- CentOS 6.2图形界面自定义开启终端快捷键
菜单: System->Preferences->Keyboard Shortcuts 在Desktop分类下找到"Run a terminal" 点击Run a te ...
- js 下拉框效果
<script type="text/javascript"> window.onload = function () { ]; ]; var aLi = oSub.g ...
- 最新版SDWebImage的使用
我之前写过一篇博客,介绍缓存处理的三种方式,其中最难,最麻烦,最占内存资源的还是图片缓存,最近做的项目有大量的图片处理,还是采用了SDWebImage来处理,但是发现之前封装好的代码报错了.研究发现, ...
- WP8.1开发系列之隐藏顶部状态栏
StatusBar statusbar = StatusBar.GetForCurrentView(); await statusbar.HideAsync(); 只能在后台代码中实现,前台xaml不 ...