对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 ...
随机推荐
- http://webhelp.esri.com/arcgisexplorer/2500/zh-CN/index.html#add_raster_data.htm
http://webhelp.esri.com/arcgisexplorer/2500/zh-CN/index.html#add_raster_data.htm
- Delphi 函数指针(三大好处:灵活,委托的本质,回调机制),还可把函数指针当参数传入
首先学习: 指向非对象(一般的)函数/过程的函数指针 Pascal 中的过程类型与C语言中的函数指针相似,为了统一说法,以下称函数指针.函数指针的声明只需要参数列表:如果是函数,再加个返回值.例如声明 ...
- 使用C#开发Metro 风格应用的路线图 -- 触屏操作
原文 http://www.cnblogs.com/icuit/archive/2012/05/01/2478312.html win8支持多点触摸技术,而我们在屏幕上所做的各种操作,也最终转换为输入 ...
- 柯南君:看大数据时代下的IT架构(4)消息队列之RabbitMQ--案例(Helloword起航)
柯南君:看大数据时代下的IT架构(4)消息队列之RabbitMQ--案例(Helloword起航) 二.起航 本章节,柯南君将从几个层面,用官网例子讲解一下RabbitMQ的实操经典程序案例,让大家重 ...
- Python-第一天
1. 基础知识 1.1 编码 python默认是ascii编码,不支持中文 在脚本顶部添加 #coding=utf-8,使python支持中文 #!/usr/bin/env python --- ...
- android开发利器--站在巨人肩膀上前行
本文主要介绍有助于android开发的三方平台和站点. 一:开发阶段 1:SVN(一个开放源码的版本号控制系统) 团队开发没有server,代码管理就没那么方便了,推荐taocode阿里开源站点,方便 ...
- k8s之scheduler
一.概述 调度器是kubernetes中独特而又重要的一个模块,独特是因为scheduler是唯一一个以plugin形式存在的组件,重要是因为kubernetes中最重要的基础单元pod的部署是通过s ...
- SQL语句一些特殊的用法
SQL语句一些特殊的用法 一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份s ...
- 通过pull解析器操作安卓的xml
通过pull解析器操作安卓的xml 例子定义了一个javabean用于存放上面解析出来的xml内容, 这个javabean为Person,代码请见本页下面备注: =================== ...
- 【asp.net】将GridView数据导出Excel
概要: 中午睡了一会,醒来的时候看到老师叫我去办公室,需求是这样的,把excel表中的每个同学,判断图片目录中是否有对应的照片(图片的名字用的学号或身份证号码) 没有对应图片的学生记录,存入自己的数据 ...