Ebooks, Audobooks and Classical Music from Liber Liber
a b c d e f g h i j k l m n o p q r s t u v w x y z





Web - Amazon

We provide Linux to the World


We support WINRAR [What is this] - [Download .exe file(s) for Windows]

CLASSICISTRANIERI HOME PAGE - YOUTUBE CHANNEL
SITEMAP
Audiobooks by Valerio Di Stefano: Single Download - Complete Download [TAR] [WIM] [ZIP] [RAR] - Alphabetical Download  [TAR] [WIM] [ZIP] [RAR] - Download Instructions

Make a donation: IBAN: IT36M0708677020000000008016 - BIC/SWIFT:  ICRAITRRU60 - VALERIO DI STEFANO or
Privacy Policy Cookie Policy Terms and Conditions
C Sharp - Wikipedia, wolna encyklopedia

C Sharp

Z Wikipedii

C Sharp (C#) jest obiektowym językiem programowania zaprojektowanym przez zespół pod kierunkiem Andersa Hejlsberga dla firmy Microsoft. Program napisany w tym języku kompilowany jest do języka CIL (Common Intermediate Language), specjalnego kodu pośredniego wykonywanego w środowisku uruchomieniowym .NET, Mono lub DotGNU.

Do uruchomienia programu napisanego w języku C# w systemie operacyjnym Microsoft Windows wymagane jest środowisko uruchomieniowe zwane .NET Framework dostępna za darmo na stronie Microsoftu.

Język C# ma wiele cech wspólnych z językami programowania C++Java.

Spis treści

[edytuj] Nazwa

Poprawny zapis C sharp
Powiększ
Poprawny zapis C sharp

Z powodów technicznych poprawny zapis nazwy jest rzadko spotykany – nawet ze strony Microsoftu. Znak sharp, czyli krzyżyknotacji muzycznej, jest zastępowany znakiem kratki (hash, #). Spowodowane jest to brakiem znaku sharp w wielu podstawowych czcionkach i stronach kodowych oraz względna trudność przy wpisywaniu go z klawiatury.

Dlatego też specyfikacja ECMA dopuszcza zapis C# jako poprawny.

[edytuj] Cechy języka

  • obiektowość z hierarchią o jednym elemencie nadrzędnym: podobnie jak w Javie, kod programu jest zbiorem klas. W przeciwieństwie do Javy jednak, w C# hierarchia dziedziczenia opiera się na istnieniu jednej klasy object (System.Object), która stanowi element nadrzędny tej hierarchii. W szczególności oznacza to, że również typy proste (int, double, itd.) są obiektami z właściwymi sobie metodami, np. int i=1; string s = i.ToString();
  • odśmiecanie pamięci: zarządzaniem pamięcią zajmuje się środowisko uruchomieniowe. Oznacza to, że nie ma konieczności ani potrzeby samodzielnego zajmowania się zwalnianiem pamięci po obiektach, które przestają być używane
  • właściwości, indeksery, delegacje, zdarzenia: język C# pozwala definiować wiele różnych elementów składowych klas, nie tylko pola czy metody.
  • refleksje i atrybuty (metaprogramowanie): w czasie pracy programu istnieje możliwość analizy struktury kodu z poziomu tego kodu. Umożliwia to tworzenie wysoce uniwersalnych mechanizmów operujących na strukturze kodu nie znanej w czasie kompilacji. Mechanizm ten wykorzystywany jest m.in. w bibliotekach ORM, narzędziach do analizy i weryfikacji kodu czy rozszerzeniach AOP. Mechanizm atrybutów został z C# zapożyczony do Javy w wersji 1.5.
  • typy ogólne (generics - dostępne od wersji .net 2.0): mechanizm zbliżony swoją ogólnością do szablonów w C++, jednak tu typ ogólny jest przenoszony do modułu binarnego i możliwy jest do wykorzystania bez konieczności posiadania kodu źródłowego (szablony w C++ to w uproszczeniu rozbudowane makrodefinicje)
  • dynamiczne tworzenie kodu: biblioteki .NET umożliwiają dynamiczne tworzenie kodu w czasie działania programu i włączanie go do kodu aktualnie wykonywanego. Możliwe jest zarówno dynamiczne tworzenie kodu wykonywalnego ze źródeł C# jak i tworzenie dynamicznych modułów w języku pośrednim (MSIL).
  • bogata biblioteka klas BCL, umożliwiająca rozwijanie aplikacji konsolowych, okienkowych (System.Windows.Forms), bazodanowych (ADO.NET), sieciowych (System.Net), w architekturze rozproszonej (WebServices) czy dynamicznych aplikacji internetowych (ASP.NET)

[edytuj] Przykładowe programy

W C# stosuje się dwa rodzaje komentarzy:

  1. // to komentarz jednoliniowy, czyli wszystkiego, co znajduje się za nim, kompilator nie bierze pod uwagę.
  2. Komentarz wielowierszowy zaczyna się od /* a kończy */. Kompilator nie bierze pod uwagę tego, co znajduje się pośrodku.

Jesli komentarz zaczyna się od /// lub /**, to jest to komentarz, w którym umieszcza się dokumentację do kodu w postaci kodu XML.

Prosty program napisany w języku C#. Po jego skompilowaniu i uruchomieniu zobaczymy napis „Hello world!”.

using System;
public class PrzykladowaKlasa
{
    public static void Main()
    {
        Console.WriteLine("Hello world!");
    }
}

Kolejny przykładowy program demonstruje technikę programowania interfejsu użytkownika. Po jego skompilowaniu i uruchomieniu system operacyjny utworzy okienko aplikacji.

using System;
using System.Windows.Forms;
public class PrzykladoweOkno : Form
{
    public static void Main()
    {
        Application.Run( new PrzykladoweOkno() );
    }
}

Przykładowe algorytmy sortowania zaimplementowane w C# znajdują się w tematach:

[edytuj] Nowości w C# 3.0

  • Słowa kluczowe "select, from, where" pozwalające na dostęp do SQL, XML, kolekcji, i innych (Language integrated query (LINQ))
  • Inicjalizatory obiektów: Klient k = new Klient(); k.Imie="Jan"; staje się Klient k = new Klient { Imie="Jan" };
  • Lambda-wyrażenia : listOfFoo.Where(delegate(Foo x) { return x.size>10;}) staje się listOfFoo.Where(x => x.size>10);
  • Typy domniemane: var x = "hello"; oznacza to samo, co string x = "hello";
  • Typy anonimowe: var x = new { Imie = "Jan" }
  • Rozszerzanie typów - dodawanie nowych metod do istniejących klas bez potrzeby ich dziedziczenia.

C# 3.0 przedstawiono na PDC 2005, wersja Preview jest dostępna na stronach MSDN.

[edytuj] Zobacz też

[edytuj] Linki zewnętrzne


Zalążek artykułu To jest tylko zalążek artykułu z dziedziny informatyki. Jeśli możesz, rozbuduj go.
Our "Network":

Project Gutenberg
https://gutenberg.classicistranieri.com

Encyclopaedia Britannica 1911
https://encyclopaediabritannica.classicistranieri.com

Librivox Audiobooks
https://librivox.classicistranieri.com

Linux Distributions
https://old.classicistranieri.com

Magnatune (MP3 Music)
https://magnatune.classicistranieri.com

Static Wikipedia (June 2008)
https://wikipedia.classicistranieri.com

Static Wikipedia (March 2008)
https://wikipedia2007.classicistranieri.com/mar2008/

Static Wikipedia (2007)
https://wikipedia2007.classicistranieri.com

Static Wikipedia (2006)
https://wikipedia2006.classicistranieri.com

Liber Liber
https://liberliber.classicistranieri.com

ZIM Files for Kiwix
https://zim.classicistranieri.com


Other Websites:

Bach - Goldberg Variations
https://www.goldbergvariations.org

Lazarillo de Tormes
https://www.lazarillodetormes.org

Madame Bovary
https://www.madamebovary.org

Il Fu Mattia Pascal
https://www.mattiapascal.it

The Voice in the Desert
https://www.thevoiceinthedesert.org

Confessione d'un amore fascista
https://www.amorefascista.it

Malinverno
https://www.malinverno.org

Debito formativo
https://www.debitoformativo.it

Adina Spire
https://www.adinaspire.com