是给.net框架做减法的时候了

wangao88 2009-05-22 01:46:27
加精
概述
.Net框架日渐肥胖,给采用智能客户端或C/S架构的解决方案的部署带来诸多不便,更不用说单机版软件了,本文就此展开牢骚,并试图给出解决方案。
关键字
.Net框架 减肥
正文
Net框架2.0的安装包不过22MB,到3.5竟然突飞猛进到近400MB,光这个玩意儿就得单独占一张普通光盘,虽说企业级产品在服务器端部署时不在乎多这么一张盘,但是如果要在客户端部署,你是分发光盘呢还是去网上下载呢?哪个都够呛!再看JAVA,10几年了,框架的安装包都没增加多少。

据说Windows7预装了.Net3.5SP1,可以避免安装之苦,但是Windows7要想占据主流,绝不是3、2年就能做到的,而大家都知道.Net框架的更新频率远远大于OS的更新频率,所以等Windows7占据主流的时候,.Net框架说不定都发展到6.0了,你还得安装。

windows2008出了core版,windows7据说也比vista精简了不少,为啥.Net就不能瘦瘦身呢?那个原来叫WPF/E的SilverLight,大小才不到5MB,就能实现WPF的大部分功能,而且还可以脱离.Net框架运行IL代码,可见这个瘦身在技术上是完全可行的。现在.Net客户端安装提供的那个profile虽然可以把依赖的框架的大小缩减到25MB,但这顶多算权宜之计,肯定有更好的处理方式。

总结
.Net框架安装包应该只保留一个核心功能,像什么WF、WPF、WCF、WC之类的玩意儿,统统作为plugin提供,用的着才打包进产品,不要像现在,不管用得着用不着,统统塞给你。
...全文
5683 166 打赏 收藏 转发到动态 举报
写回复
用AI写文章
166 条回复
切换为时间正序
请发表友善的回复…
发表回复
秦宇升 2011-11-11
  • 打赏
  • 举报
回复
经典 顶 但是精简后的是不是很好呢?
lhwxr 2010-07-19
  • 打赏
  • 举报
回复
有钱谁都喜欢...
cmlr_ 2010-06-29
  • 打赏
  • 举报
回复
同意,UpUp!
海会圣贤 2010-06-10
  • 打赏
  • 举报
回复
(干!我先脱了,大家随意)

slicelee 2010-05-07
  • 打赏
  • 举报
回复
3.5SP1框架大并不只是因为类库的臃肿,关键是安装包的重复建设。
例如你把3.5SP1安装包解开,会发现里面有很多安装包,2.0,2.0sp1,2.0sp2,3.0,3.0sp1,3.5,3.5sp1.........等等的32位和64位版本。
2.0有20多MB,2.0SP1又是20多MB,难道增加了新东西么?不过是重复建设打补丁。

不过这次4.0基于新的CLR,从头开始不再重复建设,不但功能比3.5sp1多,例如图表,MVC,反而安装包小了很多很多,而且还有更小的client版本。
hunanseo 2010-04-16
  • 打赏
  • 举报
回复
回帖是一种美德!
yang0000meng 2010-03-19
  • 打赏
  • 举报
回复
微软,靠他吃饭,只有顶了。。
spring20130808 2010-01-06
  • 打赏
  • 举报
回复
还没到那阶段
gbb21 2010-01-01
  • 打赏
  • 举报
回复
恭喜lz,微软已经推出了.net client profile.
kexin520 2009-12-31
  • 打赏
  • 举报
回复
up!
clairedanes 2009-12-27
  • 打赏
  • 举报
回复
很赞同 不过微软没反应 没用啊
  • 打赏
  • 举报
回复
有道理啊
kingmax54212008 2009-12-24
  • 打赏
  • 举报
回复
wupdiy 2009-12-02
  • 打赏
  • 举报
回复
同意啊~前段时间用3.5写了一个东西打算放到网上,发布一看400余M..无语了
别递烟哥不会 2009-12-02
  • 打赏
  • 举报
回复
UP
zjh222 2009-12-02
  • 打赏
  • 举报
回复
软硬联盟还是在发生作用!!!
ITDC_YiWang 2009-12-02
  • 打赏
  • 举报
回复
顶起
huangsz0 2009-12-02
  • 打赏
  • 举报
回复
不错不错,支持下
minwen369 2009-11-04
  • 打赏
  • 举报
回复
早有同感了,为了开发个项目装那么多个鸡肋
caoqing99416210 2009-10-29
  • 打赏
  • 举报
回复
统一楼主的看法
加载更多回复(139)
1.参照Windows系统提供的计算器功能,制作一个自己的计算器,至少能完成数据的加减乘除的基本功能。 2.控件的焦点以及Tab键的设置和使用 3.多个控件(按钮)事件的共享 4.键盘的事件的应用 创建主体框架:主要是对计算器的外观进行手动的设计,系统自动生成界面的主要窗口生成代码。对于每个按钮的的代码段中,分别添加事件触发的处理代码,在label标签中,显示输入的信息和显示处理后的结果。 其中标签的上面显示的是运算式子,下面是当前输入或者是结果。 数字1-9的按键的事件处理都是在label标签中分别添加相对应的数字字符,把数字当成是字符串处理。对于加减乘除四则运算按键,事件触发后的处理是在label标签中显示相应的四则运算符,是清屏label标签的,按了“=”按键才开始运算并显示结果。 程序使用时是先把整个运算的式子输入到两个计数器中,程序把这一表达式转化成字符串和double数值数组,运行四则运算函数,把字符从数组中读出,根据所选的模式进行相应的运算。 数字0-9的优先级同级,加减同级,乘除、求模同级,由于它们相互之间的优先级有别,因此为了在运算处理当中能够处理表达式当中的不同的优先级的四则运算符时,就要采用数据结构当中处理表达式的方法,对label当中的信息进行处理通过相应的模式运算得到结果。    通常地,计算机组成原理当中介绍的四则运算算法一般如下,在计算器编程当中可以从中获取可行的思想。四则运算算法的一般描述: 加法算法    首先假定两个操作数均为小数(其他情况可以看这种情况的特殊情况)。 通过界面输入获得两个操作数的值; 若两个数同号,则将两个操作数的整数部分和小数部分分别对应逐位相加,从最低位开始,若此位上的数字大于10,则向前位进1,此位减10; 若两个数字异号,则将负数放在第二个操作数内,正数放在第一个操作数内,然后将两个操作数的整数部分和小数部分分别对应逐位相减,判断结果的正负,若是整数,则要完成进位操作,若是负数则要完成借位操作; 将计算结果保存并输出。 减法算法    首先通过界面输入两个操作数,然后调用令第二个操作数取相反数,调用加法函数就可以实现减法计算。 乘法算法    乘法的算法就是简单的按照一般的乘法计算方法来进行的。考虑一般情况,两个操作数均为小数,从低位到高位,依次用第二个操作数的每一位上的数字乘以第一个操作数,然后将得出的结果调用加法函数相加即得到乘法的最后结果。 除法算法    除法算法也是按照中学学到的除法算法进行。建立如下的除法算法: 输入两个操作数; 若第二个操作数为0,则输出除数不能为0的出错信息; 若第二个操作数不是0,则将第二个操作数乘以适当的倍率使其整数化,第一个操作数也相应的变化; 从高位到低位,依次寻找每一个位置上的商值(这个值在0到9之间),直到第一个操作数的末尾; 保存并输出结果。

13,347

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET技术前瞻
社区管理员
  • .NET技术前瞻社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧