FreeOZ论坛

标题: 跟不起微软啦,跟我我想骂人 [打印本页]

作者: xblues    时间: 1-12-2008 18:24
提示: 作者被禁止或删除, 无法发言 标题: 跟不起微软啦,跟我我想骂人
从VS2000开始跟微软,一直跟了这么多年,经常有力不从心的感觉。

从体感觉微软最擅长的就是忽悠开发人员,当微软开始一项新技术的时候,攻势猛烈,把这项新技术吹得天花乱坠。从技术大会,到主要微软将才的博客,再到一批顶尖的跟风的开发者(比如我)。强烈的攻势让你觉得不用这个新技术,你就落伍了。大批开发人员跟进 ,微软抛出一两个快速演示方案,拖拖控件一套CRUD就完成了!把大家看得口水直流。拿到自己的实际项目中,才意识到实际应用不是演示,实际情况需要作为管调整的地方多得很,光是拖拖控件的解决方案只能骗小孩子和开发人员。于是开始找文档,发来发去竟然发现到处都是未完成,或者待完成的漏洞。帮助文档也是连篇累牍一大片,就是不说关键的重点的。根本找不到有用的开发文档。新技术迟迟不见正式版,最后居然发现,微软早已经又推出了另外一套新方案,重复攻势,开发人员再次跟进。可是普通开发人员不是微软那些专门研究新技术的,普通开发人员是需要解决实际问题的,编写不出实际代码,就赚不到钱。微软的开发人员自己玩新花样,有微软付钱,我们技术人员跟了,谁为我们埋单?

最近一个感触是对 LINQ to SQL 的跟进。我目前的一个项目在使用这个 LINQ to SQL, 的确比原来的DataSet访问方式先进又快捷,可是对于把一个自定义类的更新写回数据库这个看似简单的问题,我找遍了网络,找不到解决方案。大家都说的模棱两可,具体是用 Attach方法,找了一些文档以后发现近几个月居然没人提这个了,难道大家都用好了?怎么不分享一下呢?还是大家有扑向另外的及技术了。突然发现LINQ to Entity Framework已经随着.net3.5 sp1 发布了,去LINQ to Entity Framework的team blog,发现开发经理说话绕来绕去的,结果居然是: LINQ to SQL is dead!原来现在大家又开始玩什么LINQ to Entity啦,那我就找相关的 LINQ to Entity的文档吧,在asp.net上很容易找到了微软的两个骗人的快速演示。

  有.net的高手么?进来交流一下,帮帮我。实在不行,我就转别的公司的技术啦。我对微软够忠诚的了,实在是万不得已,受不了啦。
作者: xblues    时间: 1-12-2008 18:29
提示: 作者被禁止或删除, 无法发言 建立数据库。
用 LINQ to SQL 建立映射。
代码中讲类实例化,对实体类增加或者删除实际需要的属性。(这一步是应实际需要而增加的)
用LINQ to Object 对这个类进行增删改查。
把对类进行的修改写回数据库。

  我先这个现在都没有找到合理的解决方案。
作者: xblues    时间: 1-12-2008 19:34
提示: 作者被禁止或删除, 无法发言 标题: 预知我所云,请看EF的team blog的用户回复
http://blogs.msdn.com/adonet/archive/2008/10/31/clarifying-the-message-on-l2s-futures.aspx#comments

LINQ to SQL had BETTER continue to exist and be developed. Microsoft cannot promote a new technology one year and just dump it the next, and move on because they are working on something better.

I've just spent six months redesigning our line-of-business application to use LINQ to SQL instead of our own homebrew ORM. That represents a lot of time and effort and money.

While moving to LINQ to Entities would be less painful, who is to say LINQ to Entities is going to be here next year when the new 'flavour of the year' comes along?

Get your act together Microsoft - developers make big bets on your technologies and WE NEED TO RELY ON WHAT YOU SAY

作者: wukong    时间: 1-12-2008 19:57
何必非用新技术呢,能实现开发目的就行,无论什么方法,用自己最熟悉的
作者: uni    时间: 1-12-2008 22:16
发现我好土,现在还在用VC 6.0 + ODBC 来访问数据库。
作者: xblues    时间: 1-12-2008 22:20
提示: 作者被禁止或删除, 无法发言 标题: 回复 #4 wukong 的帖子
看是搞什么开发的啦,传统开发就如LS一样,10年也可以不更新一次。
我搞WEB前端开发,2年以上的技术都是老技术了,更新换代快。
作者: frankiehuang    时间: 1-12-2008 22:23
用不用新技术,还得看老板吧。
不过有些行业是不喜欢新技术的--例如金融。cobol还在用呢。
作者: coredump    时间: 1-12-2008 22:45
在国内工作过的公司,系统前两年才刚从汇编和FORTRAN折腾到C
作者: boskey    时间: 1-12-2008 22:45
python,php, ruby....这些不都挺好的吗? 干嘛非要在微软一家技术里面打转呢?呵呵
作者: xblues    时间: 1-12-2008 23:16
提示: 作者被禁止或删除, 无法发言 标题: 回复 #9 boskey 的帖子
因为我就只会微软的技术,别的都不熟练。
作者: coredump    时间: 1-12-2008 23:27
标题: 回复 #10 xblues 的帖子
你这样很适合OZ的技术潮流,这边很追捧微软的技术
作者: lertoo    时间: 2-12-2008 00:00
看来SP1出来再用的原则还没有过时哦。
这些方法可能有祝你解决问题:在MSDN上发问;直接问微软的开发人员;反编译assembly看源代码。
作者: xblues    时间: 2-12-2008 00:06
提示: 作者被禁止或删除, 无法发言 我们移民过去那么多IT人员,计算是搞.net的人不多,也不可能没有啊。为什么上FreeOZ的搞.net的人就那么少呢?
否则我们也可以在此交流交流啊,不交流,发发牢骚也行啊。
作者: ubuntuhk    时间: 2-12-2008 00:35
。NET是啥?我至今也没搞懂
作者: chubbycat    时间: 2-12-2008 04:21
That's why  I am stick with Unix, not many changes for last 30 years
作者: GateW    时间: 2-12-2008 08:34
我现在越来越少地使用微软的控件,持久化层也写的越来越简单,正向和反向工程都是工具生成,架构都是那几种成型的。新东西,我没见别人使的好之前不碰。人的精力是有限的,新东西要隔代学...
作者: yuba    时间: 2-12-2008 09:26
没见过白乌鸦
作者: Tux    时间: 2-12-2008 10:13
2000年的时候学.NET framework,还买了一跟原版的Jeffrey Richter的applied .NET framework programming,看了1/6就没兴趣看下去了。 C#还可以,和Java的语法很象,VS.NET也比较好用。那时候.NET这个平台,很臃肿,性能也很差,而且1.1的和1.0的还有兼容问题,火冒三丈。到现在还是一样,1.0/1.1/2.0/3.0/3.5,兼容性都成问题,无语。

.NET是一个platform,理解正确么?

好在第二年开始玩Linux,发现另外一片天,从此一直在*NIX + JAVA领域,对微软系的技术再没任何兴趣。

[ 本帖最后由 terryandtaotao 于 2-12-2008 10:15 编辑 ]
作者: ingeer    时间: 2-12-2008 10:38
有人發工資就好了, 管他是什麼技術

搭車同問: 啥是 '點奈特‘啊? 還有那個’甲娃‘是啥? 有大波波娃否?
作者: aud    时间: 2-12-2008 10:49
别发牢骚啦。

无论是软件还是硬件,都不要跟随新技术太近。我的建议是要看准了,跳跃性地跟。就是说用第一、第三、第五代技术,而不是第一、二、三、四、五。

大一点的公司都不会浪费钱在没有太大意义的升级上。我们公司现在还是Office 2000,升级需要IT部门的全面测试。我好不容易说服了我们的IT给我SQL Server 2005。

参加了两次Microsoft user group,第一次他们演示LINQ,我就没看好这产品,效率不高,维护复杂。第二次的现场调查,好像只有我一个人还在用VS2005,他们都是VS2008了。目前我只用.NET最基本的东西,为的是追求最好的效率。我希望我的用户在点击一个按钮的时候,等待时间最长不超过1秒。70%以上的report等待时间不超过3秒。
作者: 青山    时间: 2-12-2008 12:27
FORTRAN? 敬仰啊。
搞这个的,多数都是前辈了。
你们做什么东西啊?数控机床?

原帖由 coredump 于 1-12-2008 22:45 发表
在国内工作过的公司,系统前两年才刚从汇编和FORTRAN折腾到C

作者: 青山    时间: 2-12-2008 12:28
我很赞同。我觉得编程语言其实并不重要。
除非老板要求,或者实在旧有的平台不能胜任,
否则还是用最熟的比较好。


原帖由 aud 于 2-12-2008 10:49 发表
别发牢骚啦。

无论是软件还是硬件,都不要跟随新技术太近。我的建议是要看准了,跳跃性地跟。就是说用第一、第三、第五代技术,而不是第一、二、三、四、五。

大一点的公司都不会浪费钱在没有太大意义的升级上 ...

作者: coredump    时间: 2-12-2008 14:04
原帖由 青山 于 2-12-2008 11:27 发表
FORTRAN? 敬仰啊。
搞这个的,多数都是前辈了。
你们做什么东西啊?数控机床?



钢铁制造,生产实时控制。FORTRAN现在还有很大比例在用,2002年才改造掉最后一个用西门子汇编做的系统,现在里面不少老工程师还在质疑C的性能和可靠性不太行,固执地守着FORTRAN
作者: someonehappy    时间: 2-12-2008 14:38
以前上班的时候,用什么大的平台技术,都是领导或者用户说了算的,如果他们都无所谓,那么我们技术人员就自己决定,只要能完成任务就行了。

而且不少时候用新技术,大多是因为商业原因,而不是技术原因,追潮流罢了。

不过这种所谓的新技术,大多是大方向的选择,如果是针对最终用户的系统开发,用户一般不会要求使用某些细节技术的,他们也不懂,也不关心这个。

如果我自己做决定细节用什么技术实现,我喜欢先做例子把关键的功能都走一边,确定可行以后才正式开始用它。要不然弄到一半卡死了,就麻烦大了。
作者: 青山    时间: 2-12-2008 14:41
这些老先生估计是70-80年代入行的吧?

原帖由 coredump 于 2-12-2008 14:04 发表


钢铁制造,生产实时控制。FORTRAN现在还有很大比例在用,2002年才改造掉最后一个用西门子汇编做的系统,现在里面不少老工程师还在质疑C的性能和可靠性不太行,固执地守着FORTRAN

作者: coredump    时间: 2-12-2008 15:13
标题: 回复 #25 青山 的帖子
嗯, 有些是从搞两弹一星那里退下来的
作者: aud    时间: 2-12-2008 15:25
标题: 回复 #1 xblues 的帖子
你可以随便转吗?估计你是自己在学习吧。不过我觉得还是有应用需求的时候学东西比较快,要不然很快就全都忘记了。
作者: aud    时间: 2-12-2008 15:28
标题: 回复 #5 uni 的帖子
我们这里有无数的Excel 2000 + VBA
作者: dawnny    时间: 2-12-2008 16:08
是的,我很赞同LZ的说法
我不是高手,我来OZ,也就是今年6月,所有的招聘广告都说要C# 3。5,要会LINQ
我在国内用的是2。0,当时就蒙了,这里版本更新如此的快啊
但最近发现很多广告都没写 3。5了
用微软的东西就是累
作者: maaboo    时间: 2-12-2008 16:46
对于.Net的认识,只限于游戏的人,飘过……

(好多游戏提示安装.Net 2.0,不然不能运行,只知道这么多……
作者: Tux    时间: 2-12-2008 18:44
原帖由 maaboo 于 2-12-2008 16:46 发表
对于.Net的认识,只限于游戏的人,飘过……

(好多游戏提示安装.Net 2.0,不然不能运行,只知道这么多……


很多软件也是,简直就像强奸。好在Vista以上的系统似乎之内Framework 2.0^ 无语
作者: beysup    时间: 3-12-2008 13:45
对技术的追求已经没有以前的那份热情了
作者: lertoo    时间: 3-12-2008 23:27
如果没有不断地推陈出新,怎能立于不败之地呢?而跟风的如果能拿到比其它高的工资呢?

Delphi曾经够辉煌吧?想想看Borland是怎么没落的吧。如果.NET是Borland推出的,而且是跨平台的。软件开发世界将重新演绎。
作者: ubuntuhk    时间: 4-12-2008 03:03
标题: 回复 #33 lertoo 的帖子
Borland、netscape的没落是因为它太依赖它的竞争对手所构建的OS了
作者: bigwangjun    时间: 4-12-2008 03:24
深深的同情ing,
建议,把贴贴到微软的网站,
另外,弱弱的提个建议,能否来个.net 扫盲课
作者: Tux    时间: 4-12-2008 09:47
Borland的Delphi 2004还是2005年的时候发布过Kylix,Delphi for Linux,不过救不了一个将死的公司了。

JBuilder也是Borland的一个传奇阿...
作者: yuba    时间: 4-12-2008 10:19
标题: 回复 #36 terryandtaotao 的帖子
2001年
作者: goldensun    时间: 7-12-2008 00:06
Linq to Object 是可以用的,如果你实在喜欢Linq, 比如你有一个复杂的Array,用Linq 就可以很容易查找到你想要的部分,相当于Linq帮你把一些算法完成掉了

Linq to SQL 是不应该拿来用的,实际上就是在你的应用程序和数据库之间增加一个传递层,我觉得这是毫无意义的, 会带来无穷的麻烦。当然,我讨厌Linq to SQL, 所以也就没有玩过了。

.Net 3.5 本身就是 .Net 2.0, 附加了一些东西而已。
作者: shiya    时间: 7-12-2008 00:38
建议你还是用存贮过程来实现吧,这样的性能是最好的,用entity和其他的方法只是微软为了新手上手方便推出的,如果并发多的话,性能肯定达不到要求.
作者: procoder    时间: 18-12-2008 16:39
原帖由 lertoo 于 3-12-2008 23:27 发表
如果没有不断地推陈出新,怎能立于不败之地呢?而跟风的如果能拿到比其它高的工资呢?

Delphi曾经够辉煌吧?想想看Borland是怎么没落的吧。如果.NET是Borland推出的,而且是跨平台的。软件开发世界将重新演绎。

我觉得borland做不了这件事,否则Anders Hejlsberg在borland的时候就把.net实现了。平台依赖公司去推广。
作者: procoder    时间: 18-12-2008 16:43
我就是从mainframe, hpux, solarix, aix, windows native 到.net,现在做wince了,越做越小,但是很喜欢.net。
作者: bigwood    时间: 18-12-2008 16:55
我尝试过entity framework 和dynamic data 感觉不怎么好,感觉大量的用reflection,动态的调用object的属性,用熟了的话,写代码很省事,但是效率要差很多。毕竟中间很多overhead去parse object的xml 信息。

还有asp.net 的 mvc 很讨厌,把以前asp.net的编程概念全部颠覆了,微软这帮人吃饱了饭没事情干,成天瞎忽悠。

个人感觉真的要提高系统的效率,还是要深入到数据库的设计和优化上去,毕竟代码大多数只是调一下一个存储过程。很鄙视linq to sql, 把c# 代码优化成 sql query? 有这个必要吗?无非是增加很多over head。
作者: lertoo    时间: 19-12-2008 19:22
很多时候性能并不是最重要的。productivity 和maintainabiltiy一样重要。想想一个Senior developer一周的薪水,差不多可以买台server了。

LINQ to SQL不是真的死了。ADO.NET Entity Framework对它还有支持。不过微软是否对它提供进一步的升级依赖于广大用户的反馈。
作者: lwnxx    时间: 22-12-2008 16:08
哈哈,转到Java吧,Java Persistence API都标准化了,Hibernate早已成熟,
Spring也全面开花,Lucene全文检索超级强大。。。

最重要的是:他们都是基于标准的!不是基于M$的。

看看我们公司基于J2EE的项目:http://www.101tutor.com

试试主页里面的搜索功能(后台有几十G的数据,不光在数据库里),看看它的搜索效率。

看看.net是否能实现这样的效率。




欢迎光临 FreeOZ论坛 (https://www.freeoz.org/ibbs/) Powered by Discuz! X3.2