该文章写给一味贬低 .net 没有发展空间的人,不对Java与.net的前途作评价。

田忌赛马说(原著及注释)

史记卷六十五 孙子吴起列传第五

齐(1)使者如梁,孙膑以刑徒(2)阴见,说(3)齐使。齐使以为奇,窃载与之齐。齐将田忌(4)善而客待之。忌数与齐诸公子驰逐(5)重射。孙子(6)见其马足不甚相远,马有上、中、下辈(7)。于是孙子谓田忌曰:“君弟(8)重射,臣能令君胜。”田忌信然之,与王及诸公子逐射(9)千金。及临质(10),孙子曰:“今以君之下驷(11)与彼上驷,取君上驷与彼中驷,取君中驷与彼下驷。”既驰三辈毕,而田忌一不胜而再胜,卒得王千金。于是忌进孙子于威王。威王问兵法(12),遂以为师(13)。

【注释】(1)“齐”,此时的齐已非姜齐而为田齐,在位者为齐威王。“梁”,即大梁,在今河南开封西北,魏惠王三十一年(公元前三三九年)自安邑(在今山西夏县西北)徙都至此,从此魏亦称梁,但此时魏尚未称梁。(2)“刑徒”,因犯罪而被判罚服劳役的人。(3)“说”,音shuì,以言辞打动人。 (4)“田忌”,齐之宗族,威王时任为将,荐孙膑于威王。(5)“驰逐”,用马车竞赛;“重射”,设重金赌胜。(6)“孙子”,古代孙武和孙膑皆称孙子,此指孙膑。(7)“辈”,等。(8)“弟”,同第,是“但”的意思。(9)“逐射”,即上“驰逐重射”;“千金”,金是古代的货币单位,秦以一镒(音 yì,重二十四两)为一金,战国时期的金可能与之接近。千金是很大的数目。(10)“临质”,箭靶叫质,临质本指临射,这里指比赛即将开始。(11) “驷”,音sì,驾车的四马。这里是劝田忌选择自己三套乘马中的下等对对方的上等,上等对对方的中等,中等对对方的下等。(12)银雀山汉简《孙膑兵法》有(《见威王》)、《威王问》等篇。(13)“师”,军师。

田忌赛马的故事很早就听过了,估计没有不知道的了吧。

但是,今天看的第32集,里面说了个田忌赛马的一个应用例子,感觉特别深刻。

以自己的强项去跟敌人的弱项去拼,这是一个谁都能说得出的道理。

.net很多人都认为诸多原因不能胜任大项目,只能做小项目,而Java因为这样才是企业级应用的王者,其实这里不是在重演着田忌赛马的故事吗,大项目是上驷,中项目是中驷,小项目是下驷,呵呵,以这个作为比喻吧,(也许大家都会说不恰当)大家必须知道世界上项目有大就有小,大企业也有小项目的啊,怎么能说.net就没有立足之地呢。我相信很多都会承认,J2EE的开发成本是相当大的,这里不是说钱,而是时间精力,或者说成是人力,而对于中小项目来说,要的就是多,快,好,省,这个估计大家都能认同的,对于这种需求谁不想用.net做开发呢。这里顺便插句,项目只会越做越大的,估计做开发的朋友,都会会有这样的经历,头头总是说XX功能不足,YY功能要增强,而对于多余的功能总是说,留着吧,以后万一要用呢. 你愿意为了扩大系统而将原来的代码丢弃,重新用Java 从写一次吗?

有人鄙视 .net 的控件,觉得这个东西就是个拖累速度的东西,没有技术含量的东西。我这里只是想问

1。我们要重新发明轮子吗

2。在没有比冒泡排序法更优秀的排序算法出现之前,冒泡排序法不是最优秀的排序算法吗。

答案是显而易见,就以GridView来说吧,分页,排序,等等操作,不借助控件来做,自己还要到处Copy代码,弄得表现层的代码一堆一堆那么多。难道这就是很优美的解决方案吗。

当别人想知道怎么提高Java程序的性能时,其中最卑鄙的一种回答是,购买更好的硬件.

当有人论及Java 性能优于 .net 时,我先不去管具体的差距有多少,我们只是想想,差距能达到1个数量级这么大吗?或者说性能方面的就算不等式 C>Java>.net 成立,会达到以下哪一种情况呢

A .  C > > > > >Java> > > > > >.net

B .  C >Java > > > > > .net

C .  C > > > > >Java> .net

答案明显是C了, 前段时间看了关于Ruby On Rails 的压力分析,大家要知道Ruby 是动态语言, 那真是比Java 和 .net 还要慢一个数量级的啊,结果尚且可以接受,何况Java 和 .net 呢。

说了那么多,差点离题了,如果认为Java在速度是战胜 .net 的其中一点的话,是站不住脚的,毕竟不是什么东西都要像实时系统那样争分夺秒的。

题外话:

对于有些人问及JSP和Asp.net 哪个更加好学,我的答案是JSP,为什么呢?(有不同意见的先看下去)

就语言来说Java 和 C# 哪个更简单,肯定是Java,看看C# 带入了多少东西

如果大家有空的话,就用SDK+Notepad 写一段Java 和 C# 的程序,我想你肯定会说Java简单,前提是两种语言你都要用过。

但是,为什么很多人都喜欢用C# 呢,因为IDE的缘故啊

其实IDE为我们作了很多东西,例如Framework 1.1 中,你要新建一个WebForm,就要附带三个文件,如果仅用Notepad一个一个弄,非累死你不可。

在这方面我认为.net之所以能发展这么快,VS.net 帮了很大的忙,请问哪位做项目是纯 SDK+ Notepad 的呢?

呵呵,顺便庆祝一下,这是第一篇用这个超简单个人文章系统写成的文章

田忌赛马 java,从田忌赛马看Java与.net相关推荐

  1. Cay S.Horstmann:从Java新特性看Java的未来

    6月11日,由国内Java技术传播领军机构机械工业出版社华章分社与培生教育集团联合发起的[Java核心技术大会2022]盛大召开!8个专场.24个主题演讲,从6月11日起至6月18日连续8天在线直播, ...

  2. 【2022最新Java面试宝典】—— Java虚拟机(JVM)面试题(51道含答案)

    目录 一.Java内存模型 1. 我们开发人员编写的Java代码是怎么让电脑认识的 2. 为什么说java是跨平台语言 3. Jdk和Jre和JVM的区别 4. 说一下 JVM由那些部分组成,运行流程 ...

  3. 从内存溢出看Java 环境中的内存结构

    作为有个java程序员,我想大家对下面出现的这几个场景并不陌生,倍感亲切,深恶痛绝,抓心挠肝,一定会回过头来问为什么为什么为什么会这样,嘿嘿,让我们看一下我们日常在开发过程中接触内存溢出的异常: Ex ...

  4. java 插入排序_看动画学算法之:排序-插入排序

    简介 插入排序就是将要排序的元素插入到已经排序的数组中,从而形成一个新的排好序的数组. 这个算法就叫做插入排序. 插入排序的例子 同样的,假如我们有一个数组:29,10,14,37,20,25,44, ...

  5. java初学者必看——J2SE小结

    2019独角兽企业重金招聘Python工程师标准>>> J2se看完了,没有及时进行总结,现在总结起来,有些费力,总觉得少点什么. 一直在期待着java的学习,现在也算是对java一 ...

  6. 一个简单的例子看java线程机制

    一个简单的例子看java线程机制 作者: zyf0808 发表日期: 2006-03-26 11:20 文章属性: 原创 复制链接 import java.util.*; public class T ...

  7. 粗浅看 java反射机制

    Java 反射是 Java 被视为动态(或准动态)语言的一个关键性质.这个机制允许程序在运 行时透过 Reflection APIs 取得任何一个已知名称的class 的内部信息,包括其 modifi ...

  8. 从构造函数看java.io

    package java.io; interface有Closeable.Flushable abstract class 有InputStream.OutputStream.Reader.Write ...

  9. 高薪Java工程师必看的书籍

    Java作为企业级应用开发的首选,深受互联网大厂的青睐.对于求职找工作的朋友来说,Java可能仍然是后端工程师的优选,虽然Python热度不断上升,但是Java作为老牌语言,在企业中的地位依旧稳固,它 ...

  10. java速学_5分钟快速入门Java,不看真的可惜了

    你好,世界! 源代码组织方式 Java程序由package+class组成,package对应目录的相对路径,class对应文件,如 关于class有如下几点规则: 文件的名字必须和class的名字一 ...

最新文章

  1. Linux下高并发socket最大连接数所受的各种限制
  2. 大志非才不就,大才非学不成—我的博文资源汇总
  3. 一、静态工厂的第四个优点是返回对象的类可以根据输入参数的不同而不同。...
  4. UVA10020(最小区间覆盖)
  5. django_4数据库3——admin
  6. JTS基本概念和使用
  7. oracle的存储设置默认参数,oracle初始化参数设置
  8. jQuery UI基础 学习笔记
  9. 通过Repository Manager 1.3来管理戴尔驱动程序更新
  10. java线程入门到精通_JAVA入门到精通6.1-Java线程的概念
  11. AcWing 854. Floyd求最短路(模板)
  12. 详解Linux防火墙iptables禁IP与解封IP常用命令
  13. C# ObjectCache、OutputCache缓存
  14. java 解析xml saxreader_Java中使用DOM和SAX解析XML文件的方法示例
  15. 66个求职应聘技巧性问答(六)
  16. 2017先给自己定一个小目标,比方说先挣一个亿
  17. 椭圆曲线密码体制算法C语言,椭圆曲线密码的C语言设计与实现
  18. 开关电源LLC谐振变换器的工作原理
  19. Python4班平均成绩统计_重磅!长春12所热门高中高考成绩全部“亮相”!你看好谁?!...
  20. sqlserver linux版本查询,sqlserver 各版本信息

热门文章

  1. python怎么加逗号_Python 逗号的巧用
  2. js获取上周、本周、上月、本月、第一天和最后一天
  3. (干货分享)如何下载网站上的视频
  4. SPIR-V 研究:编译器基本原理(一)
  5. MacOS brew 仓库URL源替换方法
  6. 阅读文献Performance Gains in V2X Experiments Using Distributed Simulation in the Veins Framework
  7. Sybase在线手册
  8. java jsp 跳转_JSP页面跳转的五种方法
  9. 从C到C++___类继承(五)多重继承
  10. go浏览器java_GO浏览器JAVAWP版下载_GO浏览器JAVA2016最新版_GO浏览器JAVA1.2.2-华军软件园...