8 d6 k) U/ J9 n) g4 i/ @$ J6 R 我一定程度上同意 恶魔吹着笛子来 的说法, + M' T9 l5 L1 f) N! |) Y$ Y/ l
0 v8 g' H: i, }% ]6 q) {( v! M/ B ]
毕竟VC开发速度是比较慢的, & f0 T6 p' C' s4 S. {) y6 z $ o; o2 [! e9 p! X 而且硬件速度的大规模提升也为使用JAVA开辟了道路, 2 u$ \8 e9 ?8 E
8 v- J a' i2 r( q# f9 A# G
不过microsoft.net的目的是一定程度上改变MS的经营性质,和开发关系不是很大,但 ( t' N6 Z6 S2 B7 z# n' b( A {' W, K
是MS的一贯方针都是在平台上为开发人员提供方便, & q7 w3 `8 _/ I7 ~2 T. w5 O + }/ p0 P3 S* e1 [* ]( Y; ^ 所以C#是为了.net服务的。 6 x* q6 K9 i9 E, n! g # V" \6 C( W" {6 K ) U) B, c- N6 v, p J9 N8 q 此外我想我没有精力再搞个c#help.net了。:-P 9 Z; e. j$ ^( `( y# v5 b
6 ^8 S! a( A8 k3 r3 [. R- h 果子 来自 http:// : ) C6 ?, ^# @ V- z5 J+ r+ O( N % b$ ]! s/ W) t6 P( H" c. T% I1 i "恶魔吹着笛子来"是比较“前卫”的一类程序员。我就听业界的人多次说过JAVA也是 9 F1 {' u- Q, E9 ?6 E
/ _. m7 R5 _ P/ { $ b' W/ q% |; w% i! x
个吹得很响的东西,但实际如何,大家都看得见。至于认为C/C++开发工具(VC, $ O4 C; G0 @9 V4 K
+ T$ J h" [: e9 ?8 Y. n: [( e
BCB等)会在一两年内退出市场,就是无稽之谈了。 - l7 m) Q; _. F" X3 E5 B
t) G- A+ w* v& v' |8 Q3 M
Wesley 来自 http:// : * w' G& L+ j7 e5 h- O4 U
, r% b' _. N% Q7 C! c 恶魔吹着笛子来,你的观点很有启发性。能不能写一篇或推荐一篇剖析、比较Java开 $ k2 a2 E' n2 T. D发工具的文章?比如Visual J++, JBuilder,以及Symantec和IBM的对应工具。(可能和 & e3 `" k p3 K+ L' `
本站的初衷有些不合^o^) ' X2 z5 `) w& Z9 A& E/ }. w6 |
" S; m; T/ L/ ^# x( ^ LeoCN 来自 http:// : 6 b) Z: T1 z4 a- I. i% G 9 G. @& a- M0 N7 v4 Z
It's not a time for us to determine which language will more better! . F; R& S, I& y$ [+ a" P7 a9 k7 v - k- ^* a4 @. i$ f5 l
in factly,In China,too many corporation just writting some codes for 3 N3 t0 w) D# ^0 \4 @. F; G
! H K: a' O+ @) Y( n
enterprise's MIS,OA,ERP or other application.It do not need so speed + m5 N0 a- n* w4 E' |' y& p
9 {! f. U c0 s) Y+ S6 o2 O' V+ S
and do not need so good original code. just want more data,more easy and m ' u2 H4 g0 o8 Q# W! a, b
ore quickly. , e( e T' v- Y' p
- j p( F7 H: e, O' F. T so c++ is not a choice in such enviroment. and u know,many codes we write - T! b* e4 A+ I$ f2 j/ f) M/ H
today will be useless.and there r so many easy tools such as VB " c8 f4 U0 k6 T3 w4 R4 c 7 y/ r/ A5 R* R8 x" V) {; J0 g for windows designer, Developer/2000 or PB for database,Domino Designer fo 2 D8 I6 r. B5 [9 \' V7 yr OA application,why c++??? 3 w0 _' V9 X, }' Y
R$ l w' z Y: m. S6 o# ]8 K
in DOS mode. i like Turbo c2.0, with it and MASM i can do everything. # V. w7 C' D0 n 1 I6 O7 w5 y) X ^( I5 v* ? but now i hate c++, it has waste my time! my corporation do not need : R& q g% U- n. m6 D9 @
) \3 W- B o% v6 j4 `9 ^
c++,just need java,xml,php,pb,vb,delphi,developer/2000,domino designer etc ( q: C. R V* A! B( t7 a. + s6 ^7 G* F# U8 _5 w. M - Z! a( Y/ Z7 W& L$ `( Z so, a tool is just a tool,if the advantages in some aspect of the tool " c# l/ l( d% ]* ], N
, D% f( J/ a* g) | u needed. it's will be a good tool for u. others it can bring u unfortunat / p2 F) y( ^1 o, R ?
ly! ! s: ^9 L# C9 F3 n+ }1 c
& x, X' J. o, R" x8 n* E 恶魔吹着笛子来 来自 : 5 [: `7 j" X7 |& V% n; ]) l ' ^% o: |/ Q* b 果子,国内的Java应用不到10%基本上是ms的天下.这些可能是由于中国软件业规模太小 7 g; f& p6 m( h; \: G: H的缘故.而在国外40%的商务系统的开发都是Java,c/c++不到10%.譬如BEA公司一个有3个 ( ~0 b7 J3 A, A& ?java程序员创立的公司开发了第一个基于J2EE的Application Server---weblogic.BEA公 6 x! Y+ x0 X" }+ m) b司依靠weblogic在短短4年里成为世界第四大软件公司仅次于CA公司.可见JAVA的功能是 . B) j2 T. P+ ^
如何的强大.微软的.NET的负责人说,你们想要知道.NET是什么样子,那就去看看JAVA.JA . ~% X/ I2 i0 S" aVA是什么样子.NET就是什么样子. # H3 a; K& D- q/ W- z
( L- Y! t9 X6 Q- q
2 n, V9 }3 Q- j) R7 i 7 y6 o6 r$ T% h/ M0 S" t4 P
恶魔吹着笛子来 来自 http:// : 0 B E" g' O: a
4 t3 |' b8 \1 Z NET and C# Questions with Jeffrey Richter - r7 Y& U5 V9 x ?$ v# E
7 j- [2 c- c+ M2 K6 @: ~ In the weeks after Microsoft made a huge splash in the development communi / z5 o, l2 ?0 Z! E, ~6 {* C
ty with their .NET and C# announcments at the July 2000 PDC, Jeffrey Richter 7 L1 J$ T( m" a* B6 r* W- z; N
accepted our request to field 20 questions from our readers about these new $ L/ R, G! h1 }; H2 d technologies. As many of you already know, Jeffrey is a cofounder of Wintel + Q/ e e v9 L" P
lect, a company that specializes in Windows & Microsoft.Net training and deb ' m) b# q8 P7 X& k6 i) Hugging. Jeff is also a consultant at Microsoft working on the Microsoft.NET 8 X4 x0 K9 y" a4 B# g: f6 jCommon Runtime Language (CLR) team in which C# and Visual Basic 7 applicatio % F2 b/ U( a* ?: ~9 t6 m
ns operate. Below are the 20 most popular questions that were sent in and Je 0 S- r1 e3 g) y7 X$ c. F, T) W
ffrey's responses. 2 [' p# J2 R8 D6 r m. a
7 ~, _+ V, `0 ]4 y
For Visual C++ developers everywhere still trying to get a handle on all t * N% Y2 d M/ U( [/ Mhis: Thanks Jeff!! 7 e" e5 q6 G* W" U5 A& p( g
3 P8 R( i" Q) d" S. o 6 n! [- N" w$ X' X7 T Question #1 Is .NET a runtime service or a development platform? ' w& l, U1 K" X+ g # p0 z) A, k& W' y" g0 g8 p: d# I
Answer It's both and actually a lot more. Microsoft .NET is a company-wide - p6 Z( n/ Z1 S9 @+ d6 k initiative. It includes a new way of delivering software and services to bu ( j* D& b& b& g4 Dsinesses and consumers. A part of Microsoft.NET is the .NET Frameworks. The 0 q0 t2 [/ j8 w* h3 R; ]1 {
frameworks is the first part of the MS.NET initiate to ship and it was given 3 T* N- P+ ?: a/ \1 ^0 O
out to attendees at the PDC in July. The .NET frameworks consists of two pa 5 b- R9 j- T7 X# W- W! n
rts: the .NET common language runtime and the .NET class library. These two ( f) \' @4 R4 Y0 ccomponents are packaged together into the .NET Frameworks SDK which will be # ?6 ]5 I: K6 y4 l. A) M
available for free download from Microsoft's MSDN web site later this month. 3 L* g" _. C/ Z# {
In addition, the SDK also includes command-line compilers for C#, C++, JScr 6 H) r# B+ l/ m7 S% w/ N
ipt, and VB. You use these compilers to build applications and components. T 8 x I& p2 g/ P' k- I8 `
hese components require the runtime to execute so this is a development plat 5 }" m$ D4 l( s& ~* Z
form. When Visual Studio.NET ships, it will include the .NET SDK and a GUI e 7 y: _8 P" b; p# ?7 w( Fditor, wizards, tools, and a slew of other things. However, Visual Studio.NE " o- [& I3 [* C# R7 T/ g$ vT is NOT required to build .NET applications. + ~/ J F4 q5 i2 p0 f; |: U' m3 X
, E! M# B0 d8 v9 U% b
1 Q0 O A" B# [+ w# ]
Question #2 How likely it is for C# to become a general-purpose (meaning: ( f N. i' ?3 _: m( @8 P. tnot MS-specific) language and if so, have any other vendors committed to pro . e2 v7 X" ~% O* q6 Dviding compilers on any non-Windows platforms? 5 O9 y! @1 z8 [
9 L- E5 B& _, a' w" n$ H4 t$ r5 Z
Answer It's hard to answer this right now. I have been programming in C# a + A6 R. |7 @& \( O, k3 o5 y1 ylmost exclusively for about the past year and I love it. It only took me a f 7 }+ Q) H5 v6 m0 }+ ]$ }, R) @
ew days to learn most of it since it is very similar to C++. It was designed : K1 B- O0 ]' k( k% {( e: V
to compliment the common language runtime and I think that it's unlikely to 8 [/ ~; s, t9 E( Q
gain much momentum if decoupled from the runtime. However, you never know. : q+ k+ \! ]; f7 W
Microsoft is submitting C# to the ECMA standards body so any company will ea 2 \- F% ]& c: j8 S1 Q
sily be able to produce their own C# compiler however, without a runtime, th 8 V% |) T$ y }% X
e compiler itself is not that useful. I'm not aware of any companies current ! |, b# z# `3 F' c2 ~+ ?
ly working on their own C# compiler. Certainly, porting the runtime to anoth 4 E8 t* o. o- e7 P* Y8 Z
er OS is no small undertaking. 2 x! I' U1 C: ` 0 n! P) S/ v, j% @0 G 3 ~: q/ [2 N, q% U4 n$ O5 o
Question #3 Can you tell us specific practical problems that C# can fix be / J4 y2 J+ n6 A- p1 f! e; Z
tter than Java? ; S( n: W7 F2 ?0 Z
) {" d& t3 J3 E7 x6 t! Y9 g! F3 M2 r$ } Answer I must be honest with you: I have never programmed in Java. I know 4 u% c* D* K1 |5 ^
what C# offers the C/C++ programmer: simpler syntax, components that seamles * ~# V' |$ h% ^; psly fit together, type safety, and so on. Other people should be able to add ) d, T! Z. b' i: R+ Dress the C# <-> Java comparison. $ d/ V8 V s9 S- d( S: k& L2 o 9 Y& c# f+ D: z
. ~6 b+ G' r. a: c, I `. _; I
Question #4 Will ADO+ be the preferred and most efficient method to access 1 u; ?- j6 {$ q$ q databases from C# or will it have it own (or .NET) class wrappers for the O 1 `2 g; N- k* H8 \& [
LEDB API? ( V: H/ F) I+ w- ^ 8 Z% w2 H! }/ d
Answer The .NET class library includes a System.Data namespace with many t , t0 o6 W5 g0 B3 s$ Aypes for database access. These wrappers will be the best (and most efficien : F, P5 U" g# h$ N7 \% X8 x* X7 E! x8 Y
t) way for a C# programmer to access data. & V$ Z1 t/ G- g- G: H 4 ^1 b9 W0 v8 Z8 t( v) q. N
, `. h' Z, o4 V2 A9 u/ e Question #5 Can C# be used to develop Windows applications or is it soley & m9 o: z) V; E4 z7 m* ~5 kused for developing distributed applications? & b; g; e3 M. i7 e- W
, l+ E y9 }) c2 p' g
Answer C# can absolutely be used to develop classic-style Windows applicat ; ^ f. a. \9 \# P" n- F9 nions. Actually, this is more a function of the runtime, not the language. So * {7 N( r$ ~/ T% E# M, the runtime supports console apps, GUI applications, NT Service applicatio - [, v6 ]7 j- G& u
ns, simple components which can be used in applications, web pages and so on " f* H v9 Y+ J7 q' g5 E/ A( ^
. You can't write a device driver but that's about all I can think of that t 5 j8 y9 f; d1 Z1 `he runtime doesn't support. 9 k9 n, Q3 C* o9 p, M
/ g: P* V' S5 I; f: v2 b
( g1 \ D+ R" X" J( D+ J# Y" z+ N Question #6 What is the C# relationship to WinForms? 9 w6 {" ?0 i+ `5 p2 P 9 e+ f' M' v/ G, ?1 }
Answer Win Forms is a set of classes in the .NET class library that wrap W 0 X5 n/ u" p# i# S( |5 E
in32 windows, brushes, pens, etc. Any language targeting the runtime (includ % t! i( u: p" L& F; Y5 V7 }
ing C#) can construct instances of these types and manipulate them. This is : l) K$ n6 h% D3 G
how you would create an app like Notepad, Calc, or Wordpad. I know that Win + p$ k1 J; @7 |/ k; s% XForms has similarity to J++'s WFC library but I also know that there have be + O4 u- {4 t1 Pen some major changes. ' w' a9 m( V* x6 a0 K* B& F/ l
) y4 f! C* |8 t$ ]; `8 a
) R: ]3 z" j* }5 N4 S/ h G Question #7 Rumor has it that the C# language has been submitted to the EC ( N2 a e* ^. \9 x
MA for ratification. Is this true and what impact do you see that having on + n4 K6 L. K( t# h% X
other companies adopting it as a general language (such as C and C++)? + x+ s6 {; ~( ?) y* s9 E! { ) n3 |- C) {1 r) u: A: w
Answer Yes, it is true. I pretty much answered this in question 2. n7 ~9 A, l+ C! q; N4 {
' b. N% X5 B% x0 ^8 ?" x 0 A( A9 P1 d0 `8 x0 _ Question #8 Which will be the role of ATL and COM in the new .NET technolo 5 D s5 V" ` n% J- c( a% r5 mgies? * v; {; O% \1 ]0 u- W' O
* t# c+ ?& W( x
Answer The .NET frameworks offers a replacement for many existing librarie % x4 J8 O8 q7 Y: E8 l# m i! }4 E
s, like ATL, MFC, C runtime library, standard template library and so on. .N ' R. A. Q& L2 w3 M9 }5 q
ET programming is significantly easier than using any of these older technol ' o0 q6 U' ?) `* L& t. I2 o
ogies. For this reason, I suspect many developers will move away from using 7 [9 X k$ a- I" T+ r( l/ c! h4 Rthe older technologies. The older technologies can buy you performance howev 8 Q5 x6 }$ M7 e/ c% }- k
er; so, some people that are very concerned about this will stick with what' a1 v! [6 U" c. Es around. As for COM, developing components with .NET is orders of magnitude 5 H: i* P1 a; q6 J
easier and the interoperation between components pretty much happens for fr % k5 _* t9 \+ F1 y4 E3 d G
ee. Again performance may be an issue for some. And, for the time being COM+ ( ]% U7 i( w6 e5 c7 u5 o3 E services, like transactions, are not being offered directly to .NET code. Y : y9 }* ]+ S5 f/ I
ou can still access these COM+ services but .NET code must incur an interope 3 x: c+ D$ \% b" u6 c8 T- h% J/ Jrability transition, which translates to a performance hit. & G: Q2 b' q3 ^% d
0 { O5 Z- h8 o: L$ }- L h1 O7 H9 c9 `
% K4 l4 k4 y$ _: ~ c Question #9 Why was the templates feature not carried over from C++ to C#? 6 A1 e! i5 X9 p' ~
?6 G: S+ t% C
) `1 z; w% |' g" {9 G Answer Again, this is more of a runtime issue than a C# issue. First, temp ' M+ [9 o2 h, a4 r1 c0 Mlates are difficult to implement and Microsoft choose not to do the work for # B; ?+ g k% x# J3 F9 P m; P
Version 1 of the product. They may do templates or something similar in fut - r0 t! m! m1 ?8 h5 B! q" g
ure versions. Second, since the runtime is a multi-language runtime, introdu & ` w' j( T' n& Y9 f
cing templates means that all languages targeting the runtime would be requi , z8 i; a8 t) ered to support templates in some form. There are a lot of issues here that n 1 C" _0 W8 o4 Q
eed to be carefully considered. 6 N( E+ ~1 U. \* m7 b7 C
" B5 a% l- b: y! i
' j9 v" e, H- t& o- O7 F) S% i
Question #10 Will C# replace the pseudo keywords that clutter ATL COM code $ D% J8 p' n& t- g( X0 e
with real keywords? Examples: OLE_COLOR, BOOL, VARIANT_BOOL, and DISPID_XXX 6 R$ x( e* S4 }, X- nXXX. + k, x' E A- z1 t$ T
v! t9 [! u' R/ G0 _# R0 n% w# T
Answer Absolutely, all types have new names as provided by the .NET class 1 _' }$ a: m& F5 Q0 `4 Z# R3 e
library. % `* k1 Y \2 T1 t8 k- N( G, c$ I # g3 p! c# l* g/ n6 ] 1 I+ r* W; {& F& t
Question #11 We've seen managed extensions, but aside from that, what futu $ \( `6 {7 ^( [re does C++ have at MS and in .NET? 5 p' H: h$ _4 @$ [7 j0 Y
1 e' d# r2 l: W' M1 ~0 ?/ n) { Answer C++ is unique in that it is the only Microsoft language that allows 9 m# T& h- o% X! d3 Y. o
the developer to write managed and unmanaged code. So, I can easily see dev * u: b* C+ N& R: E- P0 y( kelopers writing in unmanaged C++ for performance-critical algorithms and the ' x3 r$ I2 |7 ~9 Z4 j( h& xn using managed C++ for type-safety and component interoperability. I'm sure 5 o3 l$ E( S; g( U Microsoft will keep C++ going for years to come: device drivers need it, Wi 5 j4 X4 B3 E# L/ _) m* ?$ t* R& Wndows is built with it, SQL Server< Exchange, and other BackOffice products ( X8 m+ G" n! Twill probably use C++ for a long, long time. . C1 J* R+ t/ p& c8 u 1 Y( p5 r- F& c& a- q L' v7 } 1 W+ l$ B5 D& V1 Q7 s+ \( z9 | Question #12 If .NET supports ActiveX/COM, how will security be assured if - H( e# ], ?* A! C0 H a C# application runs from within a browser? , I0 Y& e; n. l% d- u8 _2 j
: T1 a3 d& ^' e3 z* u
Answer The .NET runtime offers code access security, which allows an admin 3 O1 Z+ G2 x. f0 E" xistrator/user to configure security based on code identify. By default, any - _9 e4 r5 M& N/ o% acode downloaded via the Internet or intranet is untrusted and will not be ab $ [" x m& P# V; @le to access files and other resources. In fact, when I build a console appl * u& N- v+ Y# d$ ^# ^8 v, Nication and run it from a network share, I get an exception when it tries to 1 C/ i' k8 L+ X4 Y access certain resources. If I copy the same file to a local disk directory : \4 Z3 ^' ~4 ]/ r$ G; c! o
and run it, it runs fine. Code access security is integrated with the runti 1 ^) I o% l+ t) i2 D9 Z- j: ~4 H& b
me and is too deep a subject to cover here. , Y5 ~5 z3 w( |) J8 X0 S6 |. S 8 i% Z0 f8 M1 R2 }: }7 F 4 o* E3 h" k6 V6 P+ j
Question #13 With regards to the .NET runtime, do I need it on the machine 8 R) d6 r ^/ r d) U: V! Z6 D0 h that I deploy C# apps on? . ]1 K3 Y9 ~0 H3 A
7 o" X% W- [ [- S8 O7 n+ D2 j Answer Yes. All managed apps need a manager; the runtime is the manager. M 2 B* x7 O& _3 |& Q" V2 ricrosoft will eventually package the runtime so that it is freely redistribu . q# n! I5 ]9 H7 T/ M
ted. For now, end-users will have to install the full .NET SDK from MSDN web ' R3 t6 n2 t" M9 E0 d# d
site (when available). This is similar to how VB developer must ship the VB * c3 d H1 H6 |6 \; x$ W3 k
runtime today. " E! `0 A! a; g9 X8 S$ X7 [& D t * l9 S8 u/ | P7 }6 n
3 w' {$ W1 N+ Y/ }8 b Question #14 There has been mention of being able to derive C# classes fro $ M" a9 b3 }1 K+ W5 D& i
m VB classes. Is this true and where can we see an example of how to do this 1 F) ^3 P) r3 k8 Z* X' j2 V9 v; h2 y? 4 d7 _: D; F- A: ^( ^! t; t 3 m- v+ J5 O4 {; J0 Q Answer This is true. In fact, any language that targets the runtime can de & b$ e* t( V: `* [4 krive from any type created in another language. Also, the Visual Studio debu 6 J+ K1 F. C, _9 }
gger fully supports debugging across languages. Each entry in the call stack - s# `0 V/ ?; O( v) P! Y" V
window shows the function on the stack and the language that the function w ( \/ m. ]# S* v$ G' c
as written in. This is very cool and got a round of spontaneous applause whe " U, k. n1 n% w/ ]' e
n shown at the PDC. There are samples in the .NET SDK that demonstrate how t 7 ^8 W B" o- _! o8 F* k8 ^* S6 t6 l5 I
o do this. It's really quite simple. Actually it just happens, there is noth G& s, F L& ~% X+ @
ing for you to do. You can also throw exception across language boundaries a 3 C. H$ v. B8 t* C/ j
s well for error handling. 3 u: y+ b1 J, ?. v9 f1 L 4 p' C) S2 V& |0 i2 I( \. m : e* V: t5 q; [4 L$ h
Question #15 Can I derive a C# class from a C++ class? If so, how? @9 [4 ^5 w- ?2 T+ z2 f$ _, h8 { * n" M5 K1 z4 T1 q Answer Same as the answer above: Any managed language can inherit from a t & h4 b6 M4 F" l. {. Rype in another other managed language. If you use native C++, then you can't ! V/ |5 t# F, Q g do this, however. r$ f) F: X+ }$ t% y' b6 I
/ I8 ]7 {7 t6 {
& O- i# n4 _. l# l
Question #16 Will the new version of MFC have the option of working in a m 6 O* J$ u% r- j- G( G
anaged environment? ' C7 E. W J9 v3 j - P: h" w+ A; U9 @' l; ~ Answer I haven't been tracking the new version of MFC but I'm pretty sure % K) A5 O8 p, l, h1 W
the answer is no. MFC is all unmanaged just like it has always been. For man 2 n5 V9 r5 m' W4 H/ m( ]1 j
aged applications, Win Forms is the window manager that people should use. / N8 R9 a3 X! o0 C- g 6 `" H C- L: I0 b : M7 v4 e) \! L5 O5 z$ `6 C. C1 p
Question #17 If the new version of MFC will operate in a managed environme * l/ L6 A* o2 E/ z
nt, will it have the option of building desktop Win32 apps and not needing . }8 g$ R! t2 i% H7 ~' A' zNET runtime support? 7 U' m: R" b* |9 o
# [. j" y7 ^# ^; j9 ]9 b
Answer I'm pretty sure MFC is unmanaged and will never require the runtime 6 T* \& {7 u6 B
. $ i/ Q+ O J: {2 d & g; c7 G* D% O& D# p1 T( r
; m5 U4 f4 r1 G; G# T# x
Question #18 Stroustrup has been quoted as saying "I have not expressed a " k5 Q4 _, |! X6 Q6 Y; Ptechnical opinion on C#, and I don't plan to do so. C# is yet another propri ' T& c- O( X2 v* R. M( O9 x
etary language specialized for Microsoft's Windows system." Do you agree or : `8 O8 B, [8 a' Edo you think C# is more of a generic language open to other platforms? . d/ \, M( m4 P" e3 f9 O
- t1 |% P. n# z& L Answer C# is a language designed for the common language runtime; not Wind * V: p9 T' {- z! e( n3 sows. The CLR can be ported to other operating system like Linux and Solaris ; G! y$ x8 B0 \: m0 p0 L4 Aand if the CLR is there, then C# will probably be there as well. In the gran . p9 J: T! r" w: l, q4 S
d scheme of things, C# is not that important or interesting. It is a syntax 6 Q5 d' o, U7 C
checker that spits out intermediate language consumable by the runtime. You 6 Q, A' I& ]7 F5 V( X" r
can love C# or hate C# - your choice. I happen to love it and think is the b & L5 Z: Y/ g* N1 _
est programming language for the types of applications I write. 5 \5 Z H4 Y& f, ]1 @0 Q& [& m# f& j- A # w( F' f1 i/ B: A& `% m $ f# j$ \2 I( G Question #19 I heard a rumor that VB7 will allow static linking of the run & t7 ^, I$ I# c4 [' ~; v
time, like MFC. Is there any truth in this? If so, will C# also be able to c 6 G F! C6 G; k/ e! h a# y1 N5 h' create standalone apps? 2 o, I b) b% Q3 J/ G 9 L" w% n, l6 ~2 s9 `5 w# L
Answer This is absolutely not true. No language will able to statically li 9 O+ \. \# j1 qnk to the runtime. + s3 s; H6 {9 b $ w! q/ ]/ n O
! T9 J& G( Q* V1 n2 V7 R5 p Question #20 Does C# still use resource files? If not, what mechanism is p * {5 L% e0 Q$ G, M" T
rovided to allow for localization? . i6 }2 ~$ A, B$ t 1 ~- F) j7 ?5 `! ] Answer The .NET frameworks designers have created a new resource model. Re |+ w* ` s, N j: r. j+ m% W' Zsources can be embedded in EXE or DLL files the way Win32 resources are or r 5 Z* Y& ]' _' D( K
esources files can now be stand-alone files like a single jpg or bmp file. T & G; ^8 W" k7 ~' {1 i) W- x3 ~% U
here is also the concept of fall-back cultures. If the Swiss German resource ) j7 U$ k3 r7 n( L1 l7 b! h: w9 b5 V can't be found, the runtime looks for the German resource. If the German re 4 p% m$ ~$ X7 h/ ]; x" Zsource can't be fond, it looks for the "default" resource. Each language wil & }: k8 F+ r6 `2 K8 ]/ J* Ul typically be built and shipped as a separate assembly rather than packagin 8 w0 h. Z* r% o( ]! O8 i, Q! p
g everything up into a single file. Like code access security, a full discus ( u$ s: q# ~$ d/ V/ x. n$ n
sion of the new resource model is too much to put here. 8 b: u; o, ]$ Y& L" d: P0 |' V, y % o8 B, E* w6 A+ O0 T9 q ' ]7 x4 N( b7 U7 H, O% ^ / w- D( s V4 }5 T/ ~% I( P8 G" O
- f5 D x3 s, J! i; x wenyy 来自 <a href="http://www.vchelp.net" target="_blank" >http://www.vchelp.net</A> : 0 A! p* ]. ]8 V
8 t. D: j* V- c! K; ` n
我想应该这样说,一种新语言的出现会在一定的功能领域上替代其他的开发语言,以 4 v5 B- r- h7 r6 e/ {/ c
前的开发语言的使用范围会缩小,但不会消失。(就算是出于保护现有资源的目的) 3 }; m8 y9 B2 o& o
' }" A" L2 b3 T' ], A' Y5 Z
但没有一中语言是十全十美的, : B. l6 b6 a* `) F: n 4 o2 ~% l5 G: [; L5 V( {
JAVA,C#都不是。 ( Q! V' C) F% v) R
# ?9 W0 n; u9 G0 | . n2 K% L. I- I; ?7 M" t * \ N: A! `/ V+ q; r% ]
wenyy 来自 <a href="http://www.vchelp.net" target="_blank" >http://www.vchelp.net</A> : / o/ q$ N* T& O; h! B! o, S4 c + C+ f; g9 g2 J- {2 s: c
》》恶魔吹着笛子来 4 z7 Q" c8 k% u4 } ]2 V& f
/ U* z% P! g! b
你好, 2 C' m# v/ ^: |: K ) V" { E4 ]4 }+ Z6 U. r; P& G7 u Q, L/ c
很高兴能够与你进行讨论, # G! Z0 L/ ]' k/ k, B' R4 q5 {
, M2 |; j8 q% h0 J* U1 s! g
虽然本站名字叫做vchelp.net 7 w" L8 e: [/ W. S) j. f0 y
b& O6 H3 H( ?8 i 但我不排斥其他的开发语言,只是自己的能力有限不能将本站内容扩展到其他的语言 ' l& Q M: D) V7 z' }1 _
, ' C$ a1 a) Z a F }
8 g, f! F! ?# |8 K
但我很希望大家在本站对开发中可能遇到的问题和矛盾进行讨论,不论是关于语言还 Y* Q+ i2 v. ]8 ?0 j# Y0 k是开发方法的。 9 j/ S- e( ^2 O! }
|% f& g% H7 g; _% B 我想邀请你成为本站个人专栏的作者, 9 w/ A6 J5 ^: h/ e1 {! o* |
( D5 t# u. T1 l
你可以发表一些你关于开发的想法,就算是与VC无关也没关系。当然在时间上也没有 * L6 p6 ]" A) c9 x要求,你有时间就写写。 ! _0 X3 V- I) s. }8 O
+ P) H4 B7 z& j) S( ^ 盼复:<a href="mailtwyy_cq@21cn.com" target="_blank" >wyy_cq@21cn.com</A> / ?$ z. m2 h* y L 0 i u% J, w/ Z' C cuixue 来自 http:// : ' {5 h0 @* A, \5 ?2 p% h
# E( x% O& ]9 y" B8 V
看了各位大侠的话,觉得好像在讨论java,其实历来有两派,smth几乎天天在吵, / I7 s$ A& w. e; b u& d6 M" h
+ W% ]! |+ c2 A( k& e
喜欢java的同志到各个地方布道,连perl也不放过。呵呵。我个人觉得java先天有一 * Y% ]8 I& u- _, j0 d0 E+ ~1 S: E些劣势使得他无法取代c/c++的,他的垃圾收集只不过通过一个线程来完成,这对实时系 / q' }1 R* a7 F: U$ d# a统是来不及的,EJB的推出也说明java原来是不适合企业级开发的,没有语言是天生完美 * z2 ~0 w2 a( f: ^0 Z: L/ l) B7 o
的。java最大的困难我觉得来自microsoft的刁难,c#的推出无疑会夺走windows平台上 7 L6 l3 h3 C5 k) X. Q0 Z |+ |, Y
的java份额。java的速度也就不说了。jbuidler的速度不能够忍受阿,可是这样一个产 1 h' _' {$ k: t6 ~6 s; i0 |品就是java写的。由于个人见识不够,实在不能理解海量吞吐的 : \$ w7 t! L7 r/ j, N6 i! ^
) x. N' j% l% \; a# R7 D% P
server用java.oracle用java是实现了ejb的集成把,他的数据库engine是不是java 的 $ U# u }! l: y( `; h* k那?请大侠指点。而且当时号称8i不要操作系统,结果市场反应平平,还好 * q& h' M4 |5 e, l/ I( l: Z
. k& W$ w K5 @- E0 n- Q; W 搭上了e-commerce这班车,:) $ E* j) w, H$ F' q& k8 x
) ^* R I O; U9 a3 x# |' {- l 在说说我对vc和bcb的看法,这两样我都算粗粗用过,紫云影说得挺好的,比较公正。 : r9 A; N2 s! k& ^MFC的确稳定,ATL未免有点复杂,要不WTL就不会出来了。vcl的源码有一部分是pascal 4 a' B( L% G! ?% ~7 H, y( u% z" l写的,这点有点差,不过他的扩展性很好,用用就知道了,决不是好多人认为的vb式的 + |: h3 A* L* E2 w6 _- h
傻瓜工具。道理很简单,应为他是符合ansi标准的c/c++语言。其实vc是不够ansi的,C - z; S: J. s+ M& T7 a# H5 g
String就是不符合的,所以bcb用了 AnsiString.可惜bcb不够稳定。 ) V- H4 q6 z, C, [& }1 A7 s
4 G" \3 s s: Q2 T, _
提示太慢。帮助的问题我是这样看得,msdn不是专门给vc的,他是windows开发的指南 : [' p" J1 W% Q1 P: @,用bcb一样也很有用,是个宝贝。 ) S- r# V6 y" B
2 p' I+ L" V" ?, i% ~. }# _
好了,不说了,反正按需所取把。 + n4 m" A$ J! Y/ q; {+ S B; b 6 V1 T N/ d5 ~( k# T: v4 E" K cuixue 来自 http:// : / [2 k$ X9 \. t1 L 2 O; M" R$ o/ T0 @0 p5 }$ y4 j xml远程调用无疑是平台无关调用的一大进步,可是这也不能说corba就要消失了, u$ R0 z& n3 ?" `( N - n7 l5 [& O; _* W% D' ` xml这种标记语言虽然提供了强大的标志检索的能力,可是它本身的缺点是与以前系统 ! r1 Y: a' {$ H. q, G) o0 k9 G的兼容性,所以最近推出了xhtml以兼容以前的应用。电子商务的应用有不同的类型, % O8 `# |+ a; m% r8 M+ D ; R* I0 V2 z6 Y) b/ ?1 u 对于一般的b2c的应用,sun e1000上跑跑java或许可以,如果是银行的主机,起码 ' Y5 h# Z: w% @- ]; m* z' n" y* s ]
. @4 N9 R! z3 Y& N, O! A 1000笔每秒,java是不是可以 那?硬件的提高不是没有限度的,而且现在数据中心和 ! q: g& e! l' f: d j" z# z* @
OLAP的流行,对实时的要求更高了,实际上对于单位应用硬件资源并没有什么起色。而 , K4 l0 I; L3 a7 k( U且数据发掘的应用要求对原有资源的兼容,对于中间件而言java开发是有优势的,corb : w1 [4 Q! l) [, B% }9 _0 x7 b. {5 @a提供了对异构网络的良好支持,ejb也在向它靠,毕竟在这个年代,不可能只存在一个 1 k2 x: P2 d5 p9 Q
系统,一种语言,对自身的改造和对异构网络的支持以及原有应用的支持是每种语言都 8 |1 e+ l4 P1 g3 Q. B& Q# W/ z* P
要面对的难题。 * S) Q, @ B R1 Q% y
2 j+ T& o" T; v2 U" a7 A/ n
$ L' V# A) d" o0 z6 C2 S( g0 |% O
8 e$ }1 W) X( @3 l! k e3 {& S 杨宁 来自 http:// : : f/ G0 D$ N6 H8 }) | 5 e# ]1 ~4 H) g8 E- c$ I 世界是多样性的世界。 ) d6 q0 H1 i" {- ?, b7 S; t i/ d
. O' d2 X+ z! Q" l: T! l
不面向应用,一切都是废物。 * l: T, |' I( b2 f. S
4 ^7 S' D% |4 v; j 学好编译原理和操作系统,以不变应万变。 ' o+ B) M: ?0 l9 O5 F' d & }6 Y$ b# B8 @/ V9 ]8 k A) ^* a 人的精力有限,面面俱到等于面面难到! / P' _5 ~3 Z. w+ g! k8 e
3 F: U- P, K# m; P$ B( ], } 妖刀 来自 http:// : & A: c, D( h4 I
% k1 V" h R4 N- u' Q
我不会编一辈子程序,我需要简单,快速.我只要他好掌握,能实现功能. / K4 m2 O( ]5 C1 a- J; {8 B
! v) x' m, X: ]! h4 o 至于是专家型的C++还是傻瓜型的VB(Delphi也差不多)我不在乎. ( i) b1 j( \# | N$ d0 V8 s& W 1 g& ^* M* D3 }( B 老板也不在乎 ( y" C8 q. z1 z! _+ ]7 m5 W# i
2 T3 ?) y7 F& \! d( M5 m' t" s
TOM 来自 http:// : , P5 p+ d/ S& ^4 o- \ 6 Y2 i; \& U% {
用VC++和Delphi都各有千秋,Delphi写界面方便,大部分是写数据库程序。但写出来 % B4 u% o8 f- E& [3 H4 R
的程序太大,如果做一个组件(为HTML写的)还是用VC好,有句话很好,专业的程序员 0 ]0 e- [: i( V9 D# D4 B# y- b9 I
用VC,聪明的程序员用Delphi, # e9 |; L v* i1 F$ U, N5 S& K 3 c( w: I3 g* T+ P& [' s1 {
TOM 来自 http:// : ; e6 A7 c4 ~! K V2 B ! P8 S& Z- H2 P$ i 用VC++和Delphi都各有千秋,Delphi写界面方便,大部分是写数据库程序。但写出来 ; _9 M5 W4 C6 r+ y5 d6 `* i
的程序太大,如果做一个组件(为HTML写的)还是用VC好,有句话很好,专业的程序员 * v6 C4 r6 p0 O2 s" U; T
用VC,聪明的程序员用Delphi, . X* m3 s# M- a' B# D9 s i 4 d6 y/ M" Q3 Z6 @; c
宇服 来自 http:// : 5 H2 g+ [. @2 Q* r. W6 y
& h6 G* z! P5 C8 g
作为一个真正的程序员,不懂c/c++ 只能与非专业人士一样,改改属性来作程序罢了 : g" S# ?* L1 g/ y% a。 ( X2 |. i4 T; z9 j6 z) l
# c. q7 q) i- A8 v8 Q' N) L8 D 宇服 来自 http:// : 0 X c, g9 Z# p : a, v. p5 G+ p; \8 X. j
恶魔吹着笛子来的话太可怕了,世界可能只有java存在了????? x, \5 s8 e8 y+ z1 d3 H. c 1 b* N, ]7 a9 {" ? " o+ [. y- L; p
0 F* R7 r- H) ?4 x2 W" h2 C& k, U
wenyy 来自 <a href="http://www.vchelp.net" target="_blank" >http://www.vchelp.net</A> : ; C. T: A/ R! v/ P8 | 6 p9 [! O. n* r! M 我很同意杨宁的观点 2 t3 Q* L4 e0 D" A9 j8 K : ?, F3 C/ o2 f! }% U
》》》世界是多样性的世界。 不面向应用,一切都是废物。 ' {- ?7 K) N0 k/ q1 s