使用Mono平台前,请牢记产品观点(所有.Net程序员都建议知道的)

[转自http://www.cnblogs.com/mathphoenix/archive/2009/02/11/1387892.html]

使用Mono平台前,请牢记产品观点(所有.Net程序员都建议知道的)

      技术领域有很多让人深感困惑的地方,不管是架构师、设计师还是程序员,在完成任务之余,偶尔都有自责的地方:程序员在使用新技术完成任务的时候,有时会觉的自己旧技术都没有完全掌握,使用新技术有些好高骛远;设计师对于架构师所采用的新技术和程序员的学习成本表示担忧;架构师觉得自己可能没有完全了解技术细节,关心了客户,却忽略了程序员的感受。

      互联网充斥着各种技术,从十几岁编写第一个BASIC程序到现在,我的感受是:我从技术进步中获得生产力的提高,技术更新也带来了新的问题,在新技术的学习和使用过程中,技术创造了无限可能,很好,非常好,但是,大量的学习和试验时间,使得展示创造力的时间变得少之又少,伟大的创造只因技术学习而晚他人一步,非常可惜。刚开始学习BASIC时,我就想编写一个俄罗斯方块的游戏,那是已经确定了基本的矩阵旋转算法,但是,在老式游戏机上控制图形实在不容易,没弄成,我就编写了一个终端版的打字练习作为处女作。以后的日志里,来来回回几次,我都没有完成编写,感觉每天都在恶补各种知识,没有时间创造,终于有一次去朋友家,我们打赌我能不能在两个小时内编出俄罗斯方块,两个小时,确实没编出来,为了方便重用和面向对象,那个简单的程序用了我9个小时,从晚上10点一直到早晨8点,好在他一直都在睡觉,在他醒来时时,我说:“看,我赢了吧,我作弊,嘿嘿。但是C语言版的俄罗斯方块,我150行左右就能搞定,功能全面。那些都是问题的缩影,更深远的影响在后面。

     没料到博客和论坛一样充满争论,技术的团队需要讨论,但是从来都不需要争论,争论反映了参与者试图确定自己正确性,而不是用来确定对最终用户是否有益,技术是用来创造产品和改善生活的,只要做到这一点,就是成功的。对产品而言,只有有市场,就能持续生产,就能建生态圈,就能发展。我们争论和讨论的核心是集中于软件的可行新和正确性的,这是正确的,但是若是过分集中于个人观点,那么对团队无益。当谈及产品观点时,有一个广泛存在的争论就是,有时,人们认为软件设计是高科技产品,不能按常规产品一概而论,软件设计会出现各种特殊因素,要特殊对待,有时,我们坐在一起闲聊时,有人不免抱怨说:计算机太折磨人了,很对,我完全赞同,只是,不要忘记:你坐在电脑前就能实现梦想,过好生活,但是,其他行业可能没有这没好,不一定能这样--自己更多的决定自己的命运

     当我讨论为准备Mono而制作产品时,人们的反映各式各样,但是对一个平台和技术永远都不要咒骂,因为,存在即道理。微软公司,是优秀的技术托拉斯,成功的商人,有着最优秀的科学家和开发人员,可否记得MFC/ATL带给你的喜悦,可否记得DirectX,很多与计算同起同休的故事,都是跟Microsoft紧密关联的,可以说对于Windows平台而言,软件设计人员的荣耀都是跟Microsoft的战略联系在一起的。微软的传奇之处在,当你看到一款产品时,你认为他是一个应用产品,但是最后,微软总能让他成为战略平台,像OfficeSharePointVisual Studio 等等。即便在众多公司竞争愈演愈烈的今天,我从来都没有忘记windows所带了的快乐,和Windows平台所创造的可能性。世界从来都是发展的,说到底,技术也是产品。通常意义上的软件设计,是为最终用户设计产品,只要用户满意,软件就能存活;为软件设计人员设计的产品,生产者是平台销售商(像微软、SUN等等),消费者是开发人员。微软公司已经从竞争对手那里学到很多,IBM这些年依靠软件一直在不停的大把捞钱,居然放弃了自己的PC事业。对微软而言,微软公司一直从Windows销售、Office销售以及开发工具和服务等其它产品的销售赚够了钱,这些年,技术公司的收益更多的来自最终客户,这是时代的转变。Google这样的公司,取悦开发这的目的是为了更多的吸引最终客户,虽然单一客户给Google带来受益较少,但是从互联网广泛的客户和市场Google赚够了钱,不用生产信息,只需要收集、过滤和重新布局便可,这就是Google的产品,与其说Google是广告中介商,不如说Google将信息发布者变相卖给了广告商;像IBM这样的公司,关心的如何吸引大客户,如何从哪些关心事务、逻辑以及自身业务的大公司捞钱;微软关心的是如何维护生态圈,如何适应新潮流,这需要成本,并且通常只能获取间接收益,现在微软公司明显增加了最终客户的比重,更多的制作政府和企业应用软件,那是极富有前景的。过去的辉煌会积累丰富的基础,但是也成为前景的阻力。生产软件,关注客户,这就是生存之道。

      搞清楚技术工作的最终目的是什么:首先,和其他人任何行业一样,人对大的满足在于自己,因此,如果你对你的工作很满意,那么请继续;技术是为了展现你的思想,因此,如果她办不到,那么请放弃;技术是为了完成今天的任务,并且能够为明天投资,如果不能,请放弃(生存压力,请慎重);最重要的一点,不要忘记了,技术也是一份工作,辛勤工作的目的是为了享受生活,不要忘记亲近自己家人。

      可能朋友们并不反对这些话,只是,我们都未必明白其内涵,满足自己是人办事的一个基本立足点,在团队里,首先明白这些。适当处理问题,保证项目成功,软件工厂是神奇的工厂,不管你多么细心,失败的几率还是很大,小心一点,留住客户的钱,攒给BOSS。个人满足的一个重要部分,就是学习,这是一个风险点,作为个人,会比较趋于这种方式,作为BOSS,在项目成功的前提下,绝对支持,否则,就不那么确定了。技术是为了展现我们的创造力和思想,技术人员面临的事实就是,一年12个月中,我们需要3个月来学习,不管是架构师、设计师还是程序员,谁都不能例外,否则,明天,你将找不到对自己的满足:),时间紧迫,明白想拥有的和你能拥有的,在时间有限的情况下,你可否明白,在你的软件设计生涯中,能否设计一个自己满意的产品,或者是,你一直都在学习,不曾飞翔,对开发人员10年如一日,大量的应用、市场、规范、标准、数学学习,不管是基础学习、应用学习或者是对自己重新定位和确定新目标,时间总是最大的障碍,也许也是最大好朋友和教师,竞争是永无止境的。软件设计相关的人员不仅仅是生产者,也是消费者,我们消费的能力永远都赶不上技术公司生产的能力。完成任务很重要,为明天投资也很重要,不管怎样闲散,我相信软件设计师、程序员都像蜜蜂一样勤劳,因此,懒惰根本不是问题,问题是你如何为自己投资,你的最终目标是什么,不要忘记概率论的常识,诚然,你如果中了一百万的股彩票,生活会一下子变得非常好,你会因此变得很自在,但是你是否曾经因此就留恋股票的事情,你没有,因为你知道概率,你知道该做什么。同样,当我们学习技术的时候,技术诚然是越多越好,但是有时技术其实也像股票一般,很有魔力,但是,最终收益必然是有部分因素决定的,我们所学习的部分技术供养了我们,并且明天可能会有其他活法。时间是有限的,你必须明白如何投资,概率,找期望值最大的活法。如果忘记概率,那么,技术人员会认为所有的服务器更多的应该采用微软的,更多的技术人员都应该向微软靠拢,毕竟,微软的方案,总体拥有成本是多有多么有吸引力呀,你现在是否为你作为一名开发者感到骄傲,我相信,每个人都会,谁会忘记Windows带来的快乐呢。停下来,考虑一下,你是否发现微软所创造的可能为你创造了价值,Sure,第一批.Net书赫然写着:微软公司为你未来十年做好了准备......",完全没错,微软公司为自己也为生态圈做了十年准备,并且每年都有新十年

     不要批评任何人,不要批评任何公司,关注产品,关注付你钱的那些人,有些人会让你赚更多的钱,有些人会最终付你钱,让这些事情发生,打开潘多拉魔盒的神谕就是产品,不要忘记这一点。还记得软件工程给你的提示不?可靠性处理、安全性处理、可扩展性处理、兼容性处理和用户体验处理等等,种种种种,都是以产品为核心的教义,可否记得,可否做到?如果客户没有付你钱,问题在那里?客户之所以付款,是因为客户从软件中的得到了好处,生产力提高、市场的敏捷性、资源和成本的节省,我们的软件是否帮助客户做到这一点,如果做到了,下次索取更多的回报,如果没有,退回你多拿的部分。软件是抽象和难于使用的,客户有自己的最终目标,如果他没有达到,他不会付款。同样的需求说明书,可能交付不同层次的产品,问题在哪里?如果我们为客户的未来进行了投资,软件的可维护性、可靠性,这些能否让客户接受她,我们的软件是否为客户现在进行了足够的投资,软件是否可靠,软件是否易用;如果为现在进行了投资,那么未来呢?很明显,资源是有限的,如何均衡资源,如何达到双赢,永远记住客户要什么、我们想提供什么、我们能提供什么、我们该提供什么。谁是上帝,如何投资,期待什么样的回报,付出什么样的代价,实际上得到什么。今天的合作,明天的合作。生产产品时,如果忘记概率常识,那么不可能成功。在学习中,如果忘记概率常识,那么必将疲惫而死。自己想做的,自己该做的,自己能做的,如何去做。

      Windows DNA战略,到Windows .Net战略,到现在或者是未来的云战略,我们不可能驳斥Microsoft的道路,因为需求所产生的改变和革新是不能阻挡的,Microsoft是正确的,那只是微软,你得到了什么,你应该如何做,如何能适应微软的战略蓝图,还能做好自己的那部分。我一直觉得,如果想要理解微软的策略,我们需要从两头考虑,架构师心目中的微软方案和程序员心目中的微软技术。微软技术是根据用户需求改进的(也许是,也许不是,微软是这样说的),或者说更多的,微软是由竞争对手所提出的技术方案,确定自己应该如何改进技术战略,微软很少创造什么新思想,最后,却能将新思想表现的淋漓尽致,让她根据时代的发展演变和延续。架构师心目中的微软方案,很明显,是根据战略需要不时改进自己的技术战略,非常平滑,微软高层的视野依然很清晰,10年都就想到的,就知道的,就做到的,今天她做她该做的。也许,对技术的评价总是:表达不够优美,应用不够广泛。这是程序员视野中技术改进的源动力。至于设计师,那么就是根据两头发挥调节作用,对上提供可能性,对下保证可行性。微软公司从来都没有忘记产品,技术框架就是她们的产品。

       我看到有人为Restfull争论,因为表达方式就指责框架的优劣,有些太过火。如果微软有,用就好;没有,要么等,要么创造;尽最大努力发挥创造力,才是目标。

       看待产品,请关注时间段,拿一个已经用了十几年的方案、技术和最进几年的新实现相比,显然,老方法不够优美,然后因此说他失败的也太荒唐了,旧产品已经完成了自己的使命,曾经胜出竞争对手就是成功,今天的战争是后来者的故事。典型例子很多, COM/COM+/DCOM、内核结构,关于微软的基础架构优劣的问题总有说不完的话题,我表示中立,这些产品在历史赢得客户、软件生产商、硬件生产商的支持,取得了成功,那么她就是成功的,今天新竞争要用新产品。看待技术,我们过于偏执,忽略了驱动力,技术只是为了生产产品,技术本身就是不断改进的产品。

      除了微软之外,世界上还有很多成功的产品:gnuapachephp、perllinuxoracal

firefox,safaricrubypythonruby on railsNovell等等很多,关于这些产品的争论很多,有些没有必要,对微软市场也许很有必要,但是对我们没有必要。软件设计者要足够谦逊,抬头做人,低头做事,关注产品。为争论浪费时间显然不是蜜蜂族的特征,嘿嘿:)

       我想Perlpythonruby程序员可能都不会花时间做长时间的争论,因为他们的方案从全局看起来似乎不够完整。但是,我不认为客户会要求跟他不相关的技术部分面面俱到。迎合需求,做好自己该做的事情,发挥创造力,这就是成功的设计者,也是过的最好的人。

      在微软的平台下工作就要了解微软,微软提供了任何软件公司都不能提供巨型软件生态系统,进化的因素包括了框架和开发工具,微软的开发工具平台都会照顾到整生态圈,生态圈就是技术产品存在的理由,这是设计者有时难于把自己事情做好的原因之一,一个技术可以以不同的姿态在多个领域内完美运行,在她所提供的诸多功能之中,你是怎么学习,你如何选择,怎样才是最佳做法,如何扮演好自己的角色,这会比较费力,太多太复杂。有时候复杂的平台遮掩了表达意图的最佳方式,作为微软,必须这样做,作为个体,这有时是一个问题。技术框架带来的潜在优势,是否为你的发展铺平道路,是否帮你更多的解决今天的问题,让你享受劳动权利的同时,是否过的舒适,不要争论优劣了,请关注产品。

      微软的正确立场带来了无限的可能,但是永远不要忘记自己,不要忘记消费者身份,不要忘记自己生产的职责,否则就会流失最终客户,流失资金来源。微软的技术属于架构导向的,站在架构的高度架构,很好,很强大。如果站在架构的角度学习技术,那么,他将摧毁设计师和程序员的健康。由于架构决定最终产品,所以,微软采用架构,决定了微软产品平台的质量,也决定了最终客户所见到产品的质量。这个角度不太适合用来学习技术,因为太多太大了。作为最终的设计者必须明白这个差异,做好自己的事情,否则,问题很严重。    

程序员经常惭愧的一点就是:即使十几年前的技术,自己似乎都不够了解,这不是一个问题,现有技术是进化的产物,当你了解和学习现有技术的时候,其实你已经是在研读过去了,只是了解历史有利于更好的在现在掌握和应用它衍生物,明白她的弱点和优点,预知她的未来(不用参加PDC大会,不用看路线图,玩笑),他的未来就是为我们服务的,永远不用悔过,做好自己的事情就好。

     现在,也许应该说以前,当ruby程序员在炫耀ruby on rails rest 技术的内置支持时,你会怎么想,你可能会说:耶,很酷,太棒了,完了,这就是你该说的全部,你只需知道微软迟早会提供Rest的支持,并且,更重要的是,确定这是否对你项目产生风险,找到方案在现在避开他,如果你抱怨微软的缓慢,那么,很抱歉,你不适合在微软的框架下工作,微软公司首先关注生产力,其次关注创造力。最早了解技术动向(特别是互联网领域),在微软社团可能有些困难,但是通常这是好事,等晚些时间,客户刚刚意识到需要这种技术时,微软已经制造出了产品级的技术,产品、文档和示例俱全,你用的时候到了

     不管是最终产品还是技术产品,市场和用户就是存在理由。

     Mono平台提供者(Novell) 不用急急茫茫实现wpf、企业服务等等,第三方社团的产品能让她工作的很好,至少对php、本地程序员甚至是perl程序员而言,mono都能提供他们希望的社会环境(Open Source, may be partly)和技术环境(.Net, even just partly),这就是Mono的存活理由,当然还有SuseNovell。良臣当侍明主,选一个好的方案是很重要的,不要听信什么技术(语言)消亡,技术是活的不断改进的产品,技术的消亡只是因为支持公司的无能,无法跟进市场的需求改进方案和技术,跟微软肯定是跟对了。不要忘记自己的目标,软件设计者的梦想不应该是仅仅为了解和掌握最新的技术,而是制造优秀的软件,改善我们的生活。最终,回到键盘时,你的目标不会是要应用微软方案提供的所有功能,而是遵守够用就好的原则。没有这些新技术(更贴切的说是新的表达方式)前,我们就体验了近乎完美的产品,今天表达方式的进步,为产品创造了更多可能,不过,让你记住技术的,可能更多的是产品吧。

     Mono平台,对于Linux本地程序员很好,对那些使用perl的牛仔程序员也很好,对与php程序员也不错,在以网站为中心的中小规模应用,应该是没有问题。技术人员的一个重要特点就是推销,好不容易学到的东西,一定要用到项目中去,最终客户未必喜欢,我们要给客户需要的,不是“好”的技术,更多是产品,这更多在我们自己的修炼。当各种新思潮步入我们这个文明的国度是,你是否记得是什么技术帮他们达成心愿,论坛、博客、维客、博客、社交网络等等,你是觉得ASP.Net程序员的资源似乎太多了,充足的资源限制了创造力。微软给的太多,我们用的太少,我们满足的是学习,客户关心的是应用,我们的价值必须通过客户才能体现,这是基本的矛盾。IBM不用自己开发基础平台,它使用自己的数据库、自己的CASE工具、自己的开发工具以及社团的工具就能不断的捞钱,你是否知道原因:客户认为IBM生产了优秀的产品,这就是全部。关系数据库(也许更多)概念的提出来源于IBM,概念提出者不但获得了图灵奖,更多的,他们将数据的概念留给IBM,这就是生存至宝,IBM获得客户的信任,赢得了市场,取得了成功。回过来,当你向客户展示产品时,客户会不会仅仅因为你是ASP.NET程序员就给项目更高定位,客户只关心产品(这也包括成本)。微软创造了可能性,就展现了自己的价值,而你的价值只有通过你的产品才能实现,这就是生活。

       不管处于哪一个阶层,明白你的客户是谁、你能生产什么样的产品、客户需要什么样的产品、你应该生产什么样的产品,这才是软件公司的生存之道,也是软件设计者的生存之道。

       如果你选择了Mono那么,你必然加倍努力,你应该了解更多。并且从Windows .Net Mono .Net 成本是高昂的,除非能够生产更好的产品,满足你的利益取向,否则,Mono并不适合你。或许,你应该花更多的时间在.Net上,只需要更加努力并且关注产品即可。

 

0
0
(请您对文章做出评价)
« 上一篇: Mono 安装篇,为了方便Mono开发,推荐使用OpenSuse
» 下一篇: 可以在mono下运行的一个ajax web小程序,使用PostgreSQL作为数据库(期待MonoDevelop 2.0)
posted on 2009-02-11 04:32 MathPhoenix 阅读(2719) 评论(39)   编辑 收藏 网摘


评论:

#1楼 2009-02-11 06:13 | 徐少侠       
好文章哦

“耶,很酷,太棒了”,完了,这就是你该说的全部

没有任何一个技术是全能的,完美的

因此,人家有的优点,如果能立刻解决你当前的问题,那么要么进行整合,要么你自己去创造

很多技术上的进步,不一定要立刻拿来在项目里使用。

微软程序员其实可以很懒

因为等某种技术大行其道的时候,微软一定已经有一个还算有点竞争力的产品在那里等你去用了。

而之前我们只要适当得保持对新技术、新概念的发展动向时刻关注就是了

多数客户才不会管项目里面是ODBC还是ADO连接,才不会管是否面向对象了。

   回复   引用   查看     
#2楼 2009-02-11 08:28 | 轩辕[未注册用户]
写的非常深刻
   回复   引用     
#3楼 2009-02-11 08:32 | Steven Chen       
顶一下 很棒的文章
   回复   引用   查看     
#4楼 2009-02-11 08:44 | 周强       
"技术是为了完成今天的任务,并且能够为明天投资"

   回复   引用   查看     
#5楼 2009-02-11 08:45 | Joyaspx       
对技术前缘认识的很深刻啊
   回复   引用   查看     
#6楼 2009-02-11 08:49 | OS2009[未注册用户]
C#只是一个幌子
微软所有的重要软件都是用c/c++写的。
在微软眼里写C#的只不过是麻瓜而已。
微软希望的是只有他们自己用C/C++,其他的程序员都用C#,都成为麻瓜。
麻瓜有麻瓜的生存法则。
多学外语,商业知识,处世哲学, 和什么编程语言实在是没有什么关系

   回复   引用     
#7楼 2009-02-11 08:58 | 紫色永恒       
少见的长文好文啊,支持楼主的观点
ps:说到REST 果然M$立即搞了Ado.net Data Service出来

   回复   引用   查看     
#8楼 2009-02-11 09:01 | Kevin-moon       
分析的很好 GOOD
   回复   引用   查看     
#9楼 2009-02-11 09:07 | 重典       
好文章,不过文章本身和Mono没啥大关系 ,只是引出话题,最后扣了一下题
   回复   引用   查看     
#10楼 2009-02-11 09:10 | XX0054[未注册用户]
谢谢LZ分享自己的思想!
一个小建议:文章中错别字和不通顺的地方较多,有时间请予以修正。

   回复   引用     
#11楼 2009-02-11 09:15 | zffp[未注册用户]
7楼的,多学外语,商业知识,处世哲学, 和什么编程语言实在是没有什么关系

那和你说的C#和c/c++有什么关系。不要自相矛盾!

   回复   引用     
#12楼 2009-02-11 09:28 | 伯乐族人[未注册用户]
分享的真棒,收藏了,伯乐族 -- http://***
   回复   引用     
#13楼 2009-02-11 09:40 | iIMax       

“不管处于哪一个阶层,明白你的客户是谁、你能生产什么样的产品、客户需要什么样的产品、你应该生产什么样的产品,这才是软件公司的生存之道,也是软件设计者的生存之道。”

   回复   引用   查看     
#14楼 2009-02-11 09:46 | 麦子·君子兰       
太长了 上班不易看这么长的 ^_^
   回复   引用   查看     
#15楼 2009-02-11 09:48 | xjb       
写的不错
   回复   引用   查看     
#16楼 2009-02-11 09:50 | OS2009[未注册用户]
@zffp
--引用--------------------------------------------------
那和你说的C#和c/c++有什么关系。不要自相矛盾!
-------------------------------------------------------
微软的程序员用c/c++,所以不是麻瓜,理解?
连中文都看不懂,我劝你还是赶快改行吧。

   回复   引用     
#17楼 2009-02-11 10:00 | ZOK[未注册用户]
一.同意楼主的以产品为导向的说法.
二.不同意楼主关于微软Net就是微软对市场需求的反应.
三.NET这个产品发展了10年,并不怎么样,也可以说是一个失败的怪物,看看其它的产品发展了10年,绝对是有很大的占有率,虽然现在....如Delphi,Foxpro,PB...这些产品在10年期为什么作出了无数的产品,可是C#(NET)呢,现在还是纸上谈兵.如果楼主看到C#作出的如PROTEL(DLEPHI),这样吧,我给你举些Delphi发展10年期内,给人们带来的杰出产品:
比特精灵
金山毒霸
酷狗
SKYPE
速达ERP/有人说是BCB开发的
天心ERP
鼎新ERP WORKFLOW
神州数码ERP
管家婆财务软件
中易进销存
WPS office
FoxMail
WINDOWS优化大师
天网防火墙
灰鸽子是Delphi写
熊猫烧香
黑洞
流光
MySQL的前台程序--MyFront
Cool Edit
胜开进销存
域天加密软件控制端
东方快车3000
游戏--传奇
游戏--重返德军总部
韩国网游大都是用delphi开发
fastreport
FlashFXP
NetCaptor是不是Delphi做的?有可能是BCB
leechFTP
leapFTP
Anyq
SqlNavigator
Serv-U至少管理器是Delphi做的
WINRAR
华科大有个CTerm(Clever Terminal)是用Delphi编的
金税系统--现在全国所有公司的电子开票都是这东西
游戏--传奇III
游戏--QuickII
游戏--金庸在线
GLSence(著名的3D引擎)
DevC++ DevPascal都是Delphi编的
InnoSetup
一个非常强的虚拟光驱软件Alcohol 120%就是用Delphi做的
国外的工程进度管理软件P3是用delphi做的
PROTEL
ModelMaker
游戏--RO仙境传说
游戏--千年
MyBase
DataCollector
TuneUp Utilities
PE Explorer
Resource Builder
良友收藏家
网络收藏家
CodeEdit Studio
FeedDemon
UltraISO


下边是转载:

全球500强企业很多内部软件都是用Delphi写的,象IBM、HP、Bank of America等等。
欧洲航天局的罗赛塔慧星探测器的控制软件也是用Delphi写的。
就是被认为使用Delphi比较少的PC游戏也有很多是用Delphi写的:
《疯狂保龄球》、《过山车大亨》、《迷你高尔夫》、
《突袭阿瓦隆》、《奇迹时代1/2》、《侏罗纪之战》、
《文明进化史》、开放源码的《龙与地下城》等等。
说一点题外话:
有些人、尤其是使用ms工具的人,总喜欢拿ms的工具与Borland的工具比较。
其实两者之间没有多少可比性。
象Delphi、BCB、JB这种售价数千美元的、面向高端市场的开发工具所提供的功能性绝对不是ms那种桌面开发工具能比得了的。ms也就只能在IDE上比拼一下罢了。 //我相信这位朋友说的是WIN32时代
四.C#的出现给广大程序开发者又多了一种选择。微软公司对C#的定义是:“C#是一种类型安全的、现代的、简单的,由C和C++衍生出来的面向对象的编程语言,它是牢牢根植于C和C++语言之上的,并可立即被C和C++的使用者所熟悉。C#的目的就是综合 Visual Basic的高生产率和C++的行动力。”这是微软对C#的最初的定义,就是这个定义让中国许多的程序投向C#,可是发现C#+NET并不具有C++(Mfc)的行动力呀??
五.............

   回复   引用     
#18楼 2009-02-11 10:04 | JimLiu       
我给你举些Delphi发展10年期内

没错,Delphi有10年,C#有10年吗?或者看看10年后将会有何转变?
技术能总停留在历史阶段吗?

   回复   引用   查看     
#19楼 2009-02-11 10:09 | OS2009[未注册用户]
现在做C# 基本都是外包给印度和中国了。
虽然利润不高,不过也算是个出路。
不过,你偏要说捧着金饭碗, 未免太YY了

   回复   引用     
#20楼 2009-02-11 10:13 | planfore[未注册用户]
“嘿嘿。但是C语言版的俄罗斯方块,我150行左右就能搞定,功能全面。”

我对这个很好奇,能放出来,让我瞅瞅吗?

   回复   引用     
#21楼 2009-02-11 10:21 | 09'CY       
文笔很好
   回复   引用   查看     
#22楼 2009-02-11 10:49 | andy.wu       
写得很勤劳啊。很支持这一类表达自己思想的文章。

我的观点:

1. 一定要关注产品,但要做到这一点真的不容易。
2. 技术人员的确太容易关注技术本身了,但这应该不是问题,因为技术人员只是团队的一部分,虽然是很重要的一部分。

   回复   引用   查看     
#23楼 2009-02-11 11:21 | A.Z![未注册用户]
@ZOK
在2009年的今天,所列举的程序中存在的又有多少程序是delphi写的?
没有好的团队,delphi的程序代码堆积绝对是奇丑无比。
在国外越来越多的小工具是用.net写的,因为已经没有什么人抱着windows98了,大公司更是不可能。.net在开发windows应用程序在效率上比delphi高是不争的事实。花1小时可以写完的程序,绝对可以在1小时完成,因为调试非常容易。

   回复   引用     
#24楼 [ 楼主] 2009-02-11 11:46 | MathPhoenix       
@planfore
C版本的已经找不到了,那是很早的版本
过一段时间我写Mono WinForms示例的时候,会提供三个WinForms游戏,俄罗斯方块、贪吃蛇和Digger

   回复   引用   查看     
#25楼 [ 楼主] 2009-02-11 11:48 | MathPhoenix       
谢谢大家的支持,希望大家能更多交流:)
外界条件太美丽,太复杂了,保持合作,加强修炼:)

   回复   引用   查看     
#26楼 2009-02-11 11:56 | ZOK[未注册用户]
--引用--------------------------------------------------
A.Z!: @ZOK
在2009年的今天,所列举的程序中存在的又有多少程序是delphi写的?
没有好的团队,delphi的程序代码堆积绝对是奇丑无比。
在国外越来越多的小工具是用.net写的,因为已经没有什么人抱着windows98了,大公司更是不可能。.net在开发windows应用程序在效率上比delphi高是不争的事实。花1小时可以写完的程序,绝对可以在1小时完成,因为调试非常容易。
--------------------------------------------------------
就算Delphi过时了或Win98过时了,我们纵横比较一下呀,从NET出来到现在,能举出NET开发的产品与Delphi开发的类似的产品吗??

   回复   引用     
#27楼 2009-02-11 12:47 | Selfocus       
每种语言都有自己应用的领域,.Net没有和Delphi类似的产品不代表.Net不能开发这些产品。Delphi着重于桌面应用程序的开发,而.Net则着重于Web应用程序的开发。Delphi没有及时调整产品战略(CS to BS),这也是它衰退的原因之一。
   回复   引用   查看     
#28楼 2009-02-11 12:49 | 徐少侠       

就算Delphi过时了或Win98过时了,我们纵横比较一下呀,从NET出来到现在,能举出NET开发的产品与Delphi开发的类似的产品吗??
--------------------------------------------------------
拜托,当人家.net是吃素的啊?

   回复   引用   查看     
#29楼 2009-02-11 13:58 | anonymousone[未注册用户]
@ZOK
在csdn .net版恰好也看到有人在罗列这些Delphi开发的这些东西
http://topic.csdn.net/u/20090210/15/554e6209-4322-424f-8264-1916ee7ef3a7.html
下面有个回帖很有意思,第35楼
估计回复者是生气了
"你个傻逼懂不懂啊?不懂别瞎说"

对于鼓吹Delphi多nb的朋友,我想说的是,Delphi曾经辉煌,但现在早已辉煌不在。
承认这个事实吧

   回复   引用     
#30楼 2009-02-11 15:14 | aayy[未注册用户]
@ZOK
我自己原来也是搞delphi的,之前认识接触过很多搞delphi的人,所谓的牛人(原先在大富翁论坛中的牛人,里面很多都拥有5年以上delphi开发经验),我承认delphi很强大,特别是在windows开发中,个人感觉几乎没有比它更强大的了,可是不争的事实是目前很多搞delphi的人都不是做底层就是搞b/s,或者转行,现在搞windows开发的还有很多,不过似乎windows开发逐渐没落是不争的事实,原因很简单,个人认为windows开发中关键因素是ms控制了操作系统,只要他控制操作系统别人就没法和他争,因为操作系统中很多底层是它在控制,他可以改别人不能改。ms搞dotnet没有出好成果的原因我个人认为是正儿八经的b/s系统如果搞成功客户量很大,这种系统通常很大,可是大的服务器端根本不太可能用windows,window成功在个人电脑,而不是企业用户。而一般大点的服务器都用linux或者unix,dotnet不支持linux或者unix,所以他没法搞大系统,而java可以做大型的系统。微软成功在操作系统,可能他失败也会失败在操作系统上,哎,没办法的事情。个人意见,呵呵!

   回复   引用     
#31楼 2009-02-11 16:50 | basibasi       
现在做B/S比较多,我觉得在ms领域里C#中asp.net还是很不错的赛。问一下,delphi是不是主要做C/S的?
   回复   引用   查看     
#32楼 2009-02-11 17:40 | A.Z![未注册用户]
--引用--------------------------------------------------
ZOK: --引用--------------------------------------------------
A.Z!: @ZOK
在2009年的今天,所列举的程序中存在的又有多少程序是delphi写的?
没有好的团队,delphi的程序代码堆积绝对是奇丑无比。
在国外越来越多的小工具是用.net写的,因为已经没有什么人抱着windows98了,大公司更是不可能。.net在开发windows应用程序在效率上比delphi高是不争的事实。花1小时可以写完的程序,绝对可以在1小时完成,因为调试非常容易。
--------------------------------------------------------
就算Delphi过时了或Win98过时了,我们纵横比较一下呀,从NET出来到现在,能举出NET开发的产品与Delphi开发的类似的产品吗??
--------------------------------------------------------


这个列表首先需要验证,人云亦云是没有说服力的。
.net的产品可以参考ms自己的一套商业产品和工具


@aayy
在企业中VB和delphi的优势我想大家都知道。在小型软件领域,delphi曾经风靡过一段时间是一个事实。但是在delphi之上,V/C++还是很强势的作为大型工业软件的首选。
delphi转b/s不是一个好的选择,如果是c++builder的话可以比较快的上手php.
服务器没有ms的操作系统是很正常的,因为服务器厂商的立场决定ms操作系统的份额,像dell还算比较温性的。ms没有败在操作系统上,ms对待硬件厂商的策略可能欠妥。




   回复   引用     
#33楼 2009-02-11 20:43 | overgame       
“耶,很酷,太棒了”,完了,这就是全部。..............好迷茫
   回复   引用   查看     
#34楼 2009-02-11 21:05 | 炽焰惊鸿       
耶,很酷,太棒了!
加油!!!

   回复   引用   查看     
#35楼 [ 楼主] 2009-02-11 22:45 | MathPhoenix       
@overgame
不要争论,低头做事:)

   回复   引用   查看     
#36楼 2009-03-14 09:48 | Aaron Wu       
文章主题不错,道理也不错,但是感觉里面写的东西有点混乱……还是我没有理解?
   回复   引用   查看     
#37楼 [ 楼主] 2009-03-14 13:31 | MathPhoenix       
@Aaron Wu
如果要找一个什么都能做的方案,那么mono显然是不行的。甚至,如果你要找一个足够好的跨平台方案,mono也不是最好的。确定你要开发的产品,然后确定是否应该使用mono,要让客户觉得我们开发了一个好的产品,而不仅仅是运行在一个够酷的平台或使用了稀奇古怪的技术。像ruby on rails 这样的方案,虽然不是通用方案,但是作为web开发,它很不错:),像C++,作为本地程序开发,它很好,如果仅仅因为喜欢C++就非要用它来开发web方案,这不一定明智,当然也许2012年的某天,当Microsoft 的 C++ 11 发布的时候,也许C++也能很自然的开发web应用。
即使作为mono爱好者,我也不希望给其它程序员创造一个错误的概念。Mono不是最好的,你要明白。
当然,对于任何技术,只有开发出好的产品才算成功,对于我们,不论你选择什么平台,最终目标也是为了开发好的产品。什么叫做好,也许是可用性、性能、可移植性、价格、易于分发等等,我们正在使用.net即使开发产品,用什么平台,按自己需要决定就行,不是非要用mono不可,将mono强行推销给他人也是不对的。
对我自己而言,易于分发、避开法律纠纷、基础设施、数据库和平台优势,这就是我选择mono作为web开发平台的理由。
如果mono不能满足你的要求,那么它并不适合你。如果Windows Server,SQL Server,Visual Studio 这些基础设施对你和你的最终客户都不成问题(价格和平台),你不应该使用Mono。

   回复   引用   查看     
#38楼 2009-11-03 17:06 | nonebody[未注册用户]
成本和性能,是头疼的问题
windows server + iis + sql server + asp.net?
linux + apache + mysql + php?
linux + apache + mysql + python?
ubuntu + nginx + mysql + mono?

   回复   引用     
#39楼 2009-11-03 17:20 | nonebody[未注册用户]
用什么技术,看需求

用户一定要用linux平台,那windows server, iis, sql server, asp.net就没法用,就算你是这方面的大牛,手下还领导着相当可观的一群大牛,那也白搭

用户要用低成本的运营方案,那就没法推荐给用户微软的平台,太贵

用户说,钱不是问题,那什么快选什么,自己什么熟练用什么

自己想搞个网站创业,手头就1万块,选啥?咋选?

   回复   引用     
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值