|
MS Visual C#
C# (see section on naming, pronunciation) is an object-oriented programming language developed by Microsoft as part of their .NET initiative, and later approved as a standard by ECMA and ISO. more...
Home
Cables, Connectors
Filers, Load Balancers
Home Networking, Cable & DSL
Hubs
KVM Switch Boxes, Cables
Mainframe, DEC, VAX, AS/400
Network Interface Cards,...
Networking, Telecom Tools
Other Networking Equipment
Print Servers, Wired
Racks, Mounts & Patch Panels
Router Components, Memory
Routers, Wired
Security, Firewall, VPN
Server Components, Memory
Servers
Software
Antivirus, Security,...
Apple, Macintosh Software
Business & Productivity
Database & Development Tools
C Languages
Borland
Macromedia
Microsoft
MS Other
MS Visual Basic
MS Visual C#
MS Visual C++
MS Visual Studio
Other C Languages
Databases
IBM
Microsoft
MS Access
MS SQL Server
Oracle
Other Databases
Other MS
Java
Borland
Macromedia
Microsoft
Other
Other Database & Development
Perl
Training & Reference
C Languages
Databases
Java
Other Training
Web Development Tools
Adobe
Macromedia
Microsoft
Other Web Development
Digital Music & Video...
Downloadable Software
Education & Reference
Games & Entertainment
Graphics, Photo & Publishing
Handheld Software
Internet Related Utilities
Kids' Software
Networking
Operating Systems
Other Software
Wholesale Lots
Software, Operating Systems
Storage Equipment, NAS, SAN
Switch Components, Memory
Switches
Telephone Systems, Telecom
UPS, Power Protection, APC
Wholesale Lots
Wireless Networking, WiFi
Workstation Components,...
Workstations, Terminals
C# has a procedural, object-oriented syntax based on C++ that includes aspects of several other programming languages (most notably Delphi and Java) with a particular emphasis on simplification (fewer symbolic requirements than C++, fewer decorative requirements than Java ).
This article describes the language as defined in the ECMA and ISO standards, and avoids description of Microsoft's implementation. For a description of Microsoft's implementation, see Microsoft Visual C#.
Language design goals
The ECMA standard lists these design goals for C#:
C# is intended to be a simple, modern, general-purpose, object-oriented programming language.;
The language, and implementations thereof, should provide support for software engineering principles such as strong type checking, array bounds checking, detection of attempts to use uninitialized variables, and automatic garbage collection. Software robustness, durability, and programmer productivity are important.;
The language is intended for use in developing software components suitable for deployment in distributed environments.;
Source code portability is very important, as is programmer portability, especially for those programmers already familiar with C and C++.;
Support for internationalization is very important.;
C# is intended to be suitable for writing applications for both hosted and embedded systems, ranging from the very large that use sophisticated operating systems, down to the very small having dedicated functions.;
Although C# applications are intended to be economical with regards to memory and processing power requirements, the language was not intended to compete directly on performance and size with C or assembly language.;
Architectural history
C#'s principal designer and lead architect at Microsoft is Anders Hejlsberg. His previous experience in programming language and framework design (Visual J++, Borland Delphi, Turbo Pascal) can be readily seen in the syntax of the C# language, as well as throughout the CLR (Common Language Runtime) core. He can be cited in interviews and technical papers as stating flaws in most major programming languages, for example, C++, Java, Delphi, Smalltalk, were what drove the fundamentals of the CLR, which, in turn, drove the design of the C# programming language itself. Some argue that C# shares roots in other languages, as purported by programming language history chart..
Language features
C# is, in some senses, the programming language which most directly reflects the underlying Common Language Infrastructure (CLI). It was designed specifically to take advantage of the features that the CLI provides. Most of C#'s intrinsic types correspond to value-types implemented by the CLI framework. However, the C# language specification does not state the code generation requirements of the compiler: that is, it does not state that a C# compiler must target a Common Language Runtime (CLR), or generate Common Intermediate Language (CIL), or generate any other specific format. Theoretically, a C# compiler could generate machine code like traditional compilers of C++ or FORTRAN. In practice, all existing C# implementations target CLI.
Read more at Wikipedia.org
|
|