Dastur tuzilishi
C# tilidagi asosiy tashkiliy tushunchalar bu dasturlar , nomlar maydoni , turlar , a'zolar va assambleyalardir . Dasturlar a'zolarni o'z ichiga olgan va nomlar bo'shliqlarida tashkil etilishi mumkin bo'lgan turlarni e'lon qiladi. Sinflar, tuzilmalar va interfeyslar turlarga misol bo'la oladi. Maydonlar, usullar, xususiyatlar va hodisalar a'zolarga misoldir. C# dasturlari kompilyatsiya qilinganda, ular jismonan yig'ilishlarga o'raladi. Assambleyalar odatda tegishli ravishda ilovalar yoki kutubxonalarni amalga oshirishiga qarab .exeyoki fayl kengaytmasiga ega ..dll
Kichik misol sifatida quyidagi kodni o'z ichiga olgan yig'ilishni ko'rib chiqing:
C#Nusxalash
using System;
namespace Acme.Collections
{
public class Stack
{
Entry _top;
public void Push(T data)
{
_top = new Entry(_top, data);
}
public T Pop()
{
if (_top == null)
{
throw new InvalidOperationException();
}
T result = _top.Data;
_top = _top.Next;
return result;
}
class Entry
{
public Entry Next { get; set; }
public T Data { get; set; }
public Entry(Entry next, T data)
{
Next = next;
Data = data;
}
}
}
}
Ushbu sinfning to'liq malakali nomi Acme.Collections.Stack. Sinf bir nechta a'zolarni o'z ichiga oladi: nomli maydon , va topdeb nomlangan ikkita usul Pushva Popismli ichki sinf Entry. EntryIsmli bir sohasi: sinf yanada uch nafar a'zo mavjud next, degan bir joy data, va bir quruvchi. StackA deb umumiy sinf. U bitta turdagi parametrga ega, Tu ishlatilganda beton turi bilan almashtiriladi.
A to'p (Filo) yig'ish - bir "so'nggi birinchi yilda" hisoblanadi. Stackning yuqori qismiga yangi elementlar qo'shiladi. Element olib tashlanganida, u stekning yuqori qismidan olib tashlanadi. Oldingi misol Stackstek uchun saqlash va xatti-harakatni belgilaydigan turni e'lon qiladi . Siz Stackushbu funksiyadan foydalanish uchun turdagi namunaga ishora qiluvchi o'zgaruvchini e'lon qilishingiz mumkin .
Assambleyalar oraliq til (IL) ko'rsatmalari ko'rinishidagi bajariladigan kodni va metama'lumotlar ko'rinishidagi ramziy ma'lumotlarni o'z ichiga oladi. Amalga oshirishdan oldin, .NET Common Language Runtime dasturining Just-In-Time (JIT) kompilyatori yig'ilishdagi IL kodini protsessorga xos kodga o'zgartiradi.
Assambleya kod va metamaʼlumotlarni oʻz ichiga olgan oʻz-oʻzini tavsiflovchi funksiya birligi boʻlgani uchun #includeC# da direktivalar va sarlavha fayllariga ehtiyoj qolmaydi . Muayyan assambleyadagi umumiy turlar va a'zolar C# dasturida dasturni kompilyatsiya qilishda ushbu assambleyaga havola qilish orqali mavjud bo'ladi. Masalan, ushbu dastur assembleydagi Acme.Collections.Stacksinfdan foydalanadi acme.dll:
C#Nusxalash
using System;
using Acme.Collections;
class Example
{
public static void Main()
{
var s = new Stack();
s.Push(1); // stack contains 1
s.Push(10); // stack contains 1, 10
s.Push(100); // stack contains 1, 10, 100
Console.WriteLine(s.Pop()); // stack contains 1, 10
Console.WriteLine(s.Pop()); // stack contains 1
Console.WriteLine(s.Pop()); // stack is empty
}
}
Ushbu dasturni kompilyatsiya qilish uchun oldingi misolda aniqlangan stek sinfini o'z ichiga olgan yig'ilishga murojaat qilishingiz kerak bo'ladi .
C# dasturlari bir nechta manba fayllarida saqlanishi mumkin. C# dasturi kompilyatsiya qilinganda, barch*******************erkin murojaat qilishi mumkin. Kontseptual tarzda, go'yo barcha manba fayllar qayta ishlashdan oldin bitta katta faylga birlashtirilgan. Oldinga deklaratsiyalar C# da hech qachon kerak emas, chunki bir nechta istisnolardan tashqari, deklaratsiya tartibi ahamiyatsiz. C# manba faylni faqat bitta umumiy turni e'lon qilish bilan cheklamaydi va manba fayl nomini manba faylda e'lon qilingan turga mos kelishini talab qilmaydi.
Ushbu turdagi keyingi maqolalar ushbu tashkiliy bloklarni tushuntiradi.
C Sharp (dasturlash tili)
Vikipediyadan, bepul ensiklopediya
Navigatsiyaga oʻtishQidiruvga oʻting
Ushbu maqolaning to'g'ri nomi C# (dasturlash tili) . Almashtirish # tufayli texnik cheklovlar .
C#
|
|
Paradigma
|
Ko'p paradigma : tuzilgan , imperativ , ob'ektga yo'naltirilgan , hodisaga asoslangan , vazifaga asoslangan , funktsional , umumiy , aks ettiruvchi , parallel
|
Oila
|
C
|
tomonidan ishlab chiqilgan
|
Anders Xeylsberg ( Microsoft )
|
Dasturchi
|
Mads Torgersen ( Microsoft )
|
|
Do'stlaringiz bilan baham: |