一.switch 支持string了,挺好。) g* R1 m T7 C) C, u
二.多个异常同时处理,不太明白。 * h+ K/ z. v! D5 ]4 n, I+ a. R是下面形式? $ S4 i, B1 h( Rtry { " F4 N" w D/ i3 Z: F...% q, c" Q) a0 M6 k8 z
} 8 k: ]1 @; {% \& M7 Y9 c' D( Ncatch (XxxxException A, YyyyException B, ZzzzException C) { : y l" D* M9 l7 F9 E* {....6 t0 v5 m h! {5 R4 F) B
}1 `: D& v, G* a
}/ b9 F# Q9 d' p
第三个同感,可有可无。。。
其实吧,我最近在想.net和java平台的区别到底是什么。每次做一个基于java平台的系统,最先面对的问题就是架构。开源的,商业的,山寨的,根据预算规模和项目级别先挑一个。而.net只有一个问题就是用还是不用。多则惑,少则灵。选择太多也不好,而且java人员的技术背景也是五花八门。 . C$ z$ v! `! a$ a, L! W0 _我以为.net的优势在于时间快,人员素质整齐。虽然单一,但是熟练度也高,学习曲线不是那么陡峭。适合中小项目的开发,不过受平台限制,一般也就仅限于此。; b E5 ^+ p. H- \, u3 e: e3 L. u
而java的优势在于空间。能够在各种平台灵活部署,甚至各种平台间形成集群,这个好像别的还真不行。只是流派太多,如果一直使用开源框架,上手别的分支还好。可是如果一开始就使用的山寨的封装框架,可能换个环境就不知所措了。。。大型的政府或银行机构的项目至少我见到过的多是java的系统。还有一些老的系统是C的,都处于维护期。 . i. s- e5 ~- x( p2 B. k" O9 u不过java或者其他的新语言发展的确实比较快,很多新概念都是首先提出来的。如果是用来学习和研究,再好不过了。+ v( \7 P S9 A/ f6 o8 B
至于语言本身倒是差别不大,区别在于用途。每次我想给自己做个什么小东西自己用的时候,面对java都有无所适从的感觉。。。
回复 明月回春 的帖子 . j* N* N+ F$ E( I " y( l3 O' T( n; w% P# D嘿嘿,探讨一下哈。3 m- O/ a; e3 y( h
% e2 g; L: Y; H6 e* }4 B. l+ B. l0 j其实Java和C#的设计理念相当不同,早先的后者只是前者的微软抄袭版本,但是后来则完全不同了,微软加进去了很多很奇怪的特性,例如在语言级别提供数据访问能力,而该类功能传统上是由类库或者函数库来提供的。也就是说,微软的设计理念出了问题,它违反了语言的基本设施应该尽可能简练,而附加的功能通过类库或者函数库来提供这一原则。! A) t1 R3 c) L4 E9 j
8 }5 O6 D2 [9 i5 M. E' AJava和.Net的本质区别在于思想,前者是自由民主、自由竞争那套,它来自于unix世界,而后者则是唯一可用的官方资源,这里咱们不涉及政治而只论技术。其结果就是前者有大量的可替代选择,也就是第三方类库,而后者则基本没有。对于技术人来说,其实只要你掌握了思想,那些可替代资源的掌握以及选择都不困难;但是如果连选择都没有的话,有些事情就很难作了。 8 M" D; V% H; j; g, K 9 a1 V1 d' N' V9 ^) y" Y2 j至于开源,其实那只是个神话,它的主要用处是方便偷东西,对于客户化和修复错误用处并不大,因为适应曲线和regression test都是问题。
Qt/C++ 1 S8 ~2 f% ]+ b2 O- f/ m. y6 j) O: q) Y) J+ n
Qt framework extends C++ with its meta-language and provides reflection ability of member/method reference and query by name for Qt objects with QMetaObject class, which contains meta-information about the Qt objects.
Objective-C is a reflective, object-oriented programming language that adds Smalltalk-style messaging to the C programming language.
5 s& @2 N# {& l; |澄清一点,Linq和Linq to Sql不是同一个东西。3 c4 |; [# i( F4 }
Linq是.NET引入的一种新的语言特性,是一种类似于sql的集合操作语法。Linq是个有意义的尝试,有了它对集合操作的coding效率大大提高了。Linq可以操作所有集合类型(例如System.Collections命名空间下的所有集合类),除了Linq to Sql之外,还有Linq to Xml, Linq to Dataset等等。 * B4 Z/ ?$ w5 T5 K4 y3 s6 Y, }" z" R. o
Linq to Sql是架构在Linq上的一层对数据库访问的支持。对数据库的访问还是通过API来做的。微软停止的是API的开发,Linq的语言特性是保留的。