C Sharp
Z CHWiki
Obsah |
[editovat] Historie
Vyvinut v roce 2001 v Microsoftu Andersem Hejlsbergem jako součást iniciativity .NET. Později byl přijat jako ECMA a ISO standard. Nejpoužívanější implementací těchto standardů je Microsoft Visual C#.
[editovat] Druh jazyka
- Překládaný do jazyka virtuálního počítače CIL (Common Intermediate Language - zásobníkově orientovaný assembler, původní název MSIL - Microsoft Intermediate Language), který je při spuštění překládaný do nativního kódu.
- Objektově orientovaný, obsahuje Garbage Collector (automatická správa paměti), založen na syntaxi C++, přejímá některé vlastnosti jazyků Java a Delphi Language.
- Jazyk Microsoft Visual C# existuje v několika verzích:
- 1.0
- málo používaný, součást .NET Frameworku 1.0, vývoj ve Visual Studiu 2002
- 1.1
- "základní" verze, součást .NET Frameworku 1.1, vývoj ve Visual Studiu 2003
- 2.0
- mnoho rozšíření (např. podpora generics, anonymních metod, partial classes), součást .NET Framework 2.0, vývoj ve Visual Studiu 2005
- 3.0
- přidány zejména rysy funkcionálních jazyků (lambda výrazy, anonymní typy), LINQ (Language Integrated Query - syntaxe podobná SQL použitá k dotazům nad libovolnými kolekcemi), extension methods, součást .NET Framework 3.5, vývoj ve Visual Studiu 2008 (kódové jméno Orcas)
[editovat] Použití
- Všechny vrstvy aplikací, tedy prezentační vrstvu (typické je použití Windows Forms pro klasické aplikace a ASP.NET pro webové aplikace), logiku aplikace i přístup k datům (v jazyce C# je např. možné i psát uložené procedury pro databázi Microsoft SQL Server 2005).
- Umožňuje vývoj aplikací pro stolní počítače i mobilní zařízení (PDA, smartphones).
- Lze vložit do webové stránky UserControl (obdoba Java Appletu) - vyžaduje nainstalovaný .NET Framework u klienta.
- Používá se i pro tvorbu her - lze použít OpenGL (přes import funkcí z nativních knihoven pomocí tzv. DllImport), DirectX (wrapper nad DirectX s názvem Managed DirectX) nebo XNA (podobné jako Managed DirectX, ale umožňuje i vývoj pro herní konzoli XBOX360).
[editovat] Programy v něm napsané
Např. Notebook Hardware Control, široce používané zejména na webu.
[editovat] Přenositelnost
Lze ho použít všude, kde je dostupná nějaká implementace .NET Frameworku. V současné době Windows, PocketPC, Windows Mobile, XBOX360. Unix a MacOS (projekt Mono).
[editovat] Co nabízí
Rychlý vývoj aplikací, přehledná syntaxe, vysoká typová bezpečnost, podpora reflection (dynamické zjišťování informací o typech apod.), integrovaná podpora pro XML dokumentační systém, velké množství literatury, výborné vývojové prostředí zdarma i pro komerční použití (Microsoft Visual C# 2005 Express Edition).
[editovat] Knihovny
.NET Framework obsahuje vše potřebné pro obecnou (nespecializovanou) práci - práce se soubory, sítí, databázemi atd. .NET Framework pro mobilní zařízení a XBOX360 neobsahují některé části .NET Frameworku, příp. obsahují jen některé verze přetížených metod apod.
[editovat] Příklady
Rozšířená Hello world konzolová aplikace:
using System;
using System.Collections.Generic;
using System.Text;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
System.Console.WriteLine(string.Format("Hello world, the local time is {0}.", DateTime.Now.ToShortTimeString()));
System.Console.Read();
}
}
}
ActionScript – BASIC – C – C++ – C# – Delphi – Java – JavaScript – Pascal - Python - PHP - Ruby - SmallTalk – Visual Basic
