برنامه نویسیعمومی

معرفی C#.net و کاربرد آن در طراحی سایت

#C نیز یکی از زبان های برنامه نویسی است که بر پایه ساختار زبان C و برای برنامه نویسی در محیط .Net طراحی شده است.

یک وب سایت Asp.Net معمولا از کدی که بوسیله زبان Vb.Net یا C# ( بخوانید سی شارپ) نوشته شده تشکیل یافته است. وقتی که یک وب سایت را با زبان Vb.Net یا C# می سازید، در واقع برنامه Asp.Net ای مبتنی بر آن زبان ایجاد می کنید. این مساله تفاوت اصلی میان Asp.Net با صفحات Asp قدیمی ( کلاسیک) است، زیرا در Asp.Net شما از یک زبان برنامه نویسی واقعی , مانند Vb.Net یا C# با تمام امکانات آن استفاده می کنید در حالی که در صفحات Asp تنها می توانید از یک زبان خیلی خلاصه شده مانند VB Script استفاده نمایید .

حداکثر تعداد کلمات کلیدی در #C  کمتر از ۹۰ می باشد. این زبان ساده و یادگیری آن آسان است و به زبانهایی مانند C ,C++ ,java نزدیک است. توسعه دهندگانی که یکی از این زبانها را بدانند، می توانند در مدت زمان کوتاهی به طور موثر از آن  استفاده کنند. سینتکس #C برخی پیچیدگی های C++ را ندارد و قابلیت هایی مانند  nullable value types, enumerations, delegates, anonymous methods and direct memory access را فراهم کرده، همچنین از امکانات iterators و generic methods and types نیز پشتیبانی می نماید.

C# به عنوان یک زبان برنامه نویسی، از مفاهیمی مانند encapsulation, inheritance and polymorphism نیز  پشتیبانی می کند. همه ی متغیرها و متدها توسط کلاس ها Encapsulation می شوند. یک کلاس می  تواند از سطح بالاتر خود ارث بری داشته باشد.

این زبان علاوه بر داشتن  اشیا Object Oreinted دارای عناصری توسعه یافته برای ارتباط با نرم افزارهای ویندوزی است :

اگر نیاز به محاوره با  اشیایی مانند COM یا Win32 Dll داشته باشید، می توانید این کار از طریق فرآیندی که Interop  نامیده می شود انجام دهید. این فرآیند برنامه های #C را قادر می سازد تا درست مانند برنامه های C++ عمل نمایند. C# همچنین از اشاره گرها و مفهوم  code  Unsafe  که برای دسترسی مستقیم به حافظه در مواقع بحرانی است نیز  پشتیبانی می کند.

فرآیند ایجاد و کامپایل برنامه های #C در مقایسه با C ,C++ ساده تر و انعطاف پذیر تر از Java می باشد.

هر تعداد کلاس ، رکورد ، اینترفیس و رویداد را که نیاز داشته باشید می توانید در #C تعریف کنید.

برنامه های #C بر روی .NET Framework  اجرا می شوند. کدهای نوشته شده به این زبان به یک زبان میانی یا IL تبدیل شده  و سپس با پسوند  .exe  یا .dll در یک فایل اجرایی که اسمبلی نامیده می شود ذخیره می شوند.

زمانی که یک برنامه C# اجرا می شود، اسمبلی در CLR لود می شود و بسته به اطلاعات موجود در manifest عملیات مختلفی را انجام می دهد.اگر از مرحله ی فیلتر امنیتی عبور داده شود ، CLR از JIT استفاده کرده تا کد IL را به زبان اصلی ماشین تبدیل کند.

CLR همچنین سرویس های دیگری که با  automatic garbage collection و  exception handlingو resource management مرتبط هستند را  ارائه می دهد. CLR در بعضی مواقع  به کدهای Manage  شده نیز معروف می باشد که در نهایت  به زبان ماشین تبدیل می شود.

در ادامه برخی قابلیت ها و امکانات مهم این زبان توضیح داده می شود :

Indexers :

ایندکسرها نوعی از اولویت بندی (priority )هستند که به شما اجازه می دهند با اشیا کلاس خود مانند  ارایه رفتار کنید.

Auto intellosense در web.config  :

در visual studio 2008 فایل های Configuration به صورت Intellisense  استفاده می شوند. یعنی وقتی کلمه ای را تایپ می کنید ادامه آن را به صورت اتوماتیک نمایش دهد.

کلاس TimeZoneinfo :

این کلاس مختص دات نت ۳.۵ به بعد بوده و جهت استفاده از آن باید System.Core را به References پروژه ی خود بیافزایید.

۱ ) CLR
مخفف : Common Language RunTime و به معنای محیط زمان اجرای برنامه های دات نت است.

۲) CTS
مخفف : Common Type System
معنا : نوع هایی  که در همه زبان های دات نت شناخته شده هستند و معمولا یک نام مستعار در هر زبان مجزا دارند.
مثلا System.Int32 در زبان C#‎ همان int و در زبان VB همان Integer است.
نکته:

۳) IL
مخفف : Intermediate Language
معنا : زبان واسطی که در مرحله اول کامپایل برنامه ها، تمامی کد های نوشته شده با زبان های دات نت (اعم از سی شارپ، وی بی و ..) به این زبان ترجمه می شوند و جهت سازگاری بین زبان های مختلف در دات نت استفاده می شود.

۵) VES
مخفف : Virtual Executation Systeme و  معادل CLR می باشد.
نکته: CLR متداول تر است.

۶) CLI   مخفف   Common Language Interface  است . به مجموع CLR و CTS ،  CLI می گویند.

WPF (Windows presentation Foundation) :

wpf که مخفف Windows Presentation Fundastion می باشد تکنولوژی ای است که در net.framwork عرضه شده و بر روی win vista,win sever20008,win xp service packe 2 جواب می دهد. مهمترین مساله ای که برنامه نویسان #C تحت App با آن سر و کار دارند. طراحی واسط های کاربری در مدل های برنامه نویسی است قبل از wpf همیشه بخش کد و منطق برنامه درگیر بوده و این باعث معضل در تیم های برنامه نویسی شده است به این دلیل که همیشه طراح با کدنویس درگیر است . اما با ظهور WPF این مشکل مرتفع شده است.
XAML و wpf
یکی از کاربرد های XAML در هنگام برنامه نویسی WPF می باشدکه امکانات بسیاری را فراهم می کند.هر سند XAML در WPF می تواند نگهدارنده آبجکت های WPF باشد
این آبجکت ها میتوانند در بالاترین سطح، پنجره ها باشند و یا تنها یک آبجکت خط و یا یک مستطیل طراحی شده توسط شما باشد.
wpf و SilverLight
نسخه ای دیگر از WPF وجود دارد به نام WPF/E که به نام SilverLight نیز معروف است .در واقع توسط WPF/E یا همان SilverLight می توان بسیاری از کارهایی را که با WPF قابل انجام است ( مانند اشکال دو بعدی، صدا، تصویر، انیمیشن و … ) در برنامه های تحت وب به کار برد.

Serialize :

فرآیندی برای تبدیل یک آبجکت و یا گرافی متشکل از چند آبجکت به یک حالت خطی (و جریان وار) از بایت ها برای انتقال و یا ذخیره سازی در محلی دیگر است.

انواع فرمت ها در سریالیزشین :
۱- Binary : بصورت باینری سریالایز میکند. (فشرده ترین و کاراترین حالت است)
۲- SOAP: بصورت soap سریالایز میکند. (برای ارسال در شبکه و جایی که از تحت دات نت بودن کلاینتها مطمئن نیستیم)
۳-XML  : بصورت xml سریالایز میکند. (برای ارسال تحت شبکه – مزیت : خوانایی)

برخی از موارد کاربرد سریالزیشین:
۱- کپی یک انشعاب از آبجکتها
۲- انتقال اطلاعات در شبکه
۳- نگهداری state ها و snapshot های مختلف در یک برنامه (برای موارد حساس : مثل تراکنشهای بانکی و …)

۴پیاده سازی Deep Copy و Shallow Copy

 Deserialize :

عمل برعکس سریالیزشین است؛ یعنی دوباره ساختن آبجکت از روی جریانی از بایتها .

کار کردن با کلاس EventLog :

از این کلاس معمولا جهت لاگ کردن عملیات یک برنامه استفاده می شود.

نحوه ی ساختن Connection String به روشی بسیار ساده :

برای ایجاد Connection String بدون استفاده از visual studio به روش زیر عمل می شود :

یک فایل جدید ایجاد کرده و پسوند آن را udl قرار می دهیم . با تغییر پسوند آیکن آن نیز تغییر می یابد.

با کلیک بر روی آن پنجره مشخصات Data Link باز می شود.

حال کافی است به تب Provider رفته و گزینه ی Microsoft OLE DB Provider For SQL Server را انتخاب کنید.

با کلیک بر روی دکمه Next وارد تب Connection شوید تا تمام مشخصه های ارتباطی را مشاهده نمایید.

بعد از تعریف سایر پارامترها  دکمه ی Test connection را کلیک نمایید .

حال فایل ایجاد شده را  با notepad باز کنید .

‍Connection String درون فایل ایجاد می شود اگر از User  و password برای اتصال به دیتابیس استفاده می کنید تیک گزینه ی Allow Saving Password را بزنید تا پسورد در فایل ذخیره شود.

Using Namespace :

زمانی که به دنبال استفاده از کلاسی هستید کافی است بعد از نام آن  Alt+Shift+F10 را زده و سپس Enter کرده  تا Using اضافه شود.

ساخت یک connection توسط Connectionstring موجود در فایل Configuration :

برای خواندن  ConnectionString  ی که در فایل app.config قرار دارد و ساخت یک Sqlconnection کافی است کد زیر را تایپ کنید :

SqlConnection cnn = new SqlConnection(ConfigurationManager.ConnectionStrin gs[“myConnection”].ConnectionString);

بدست آوردن میزان فضای خالی یک درایو :

 ابتدا  System.Management را به  References پروژه اضافه نمایید و سپس  دستور زیر را بنویسید :

[pre]

۱-Using System.Management

public double GetHDDFreeSpace(string drive)

{//check to see if the user provided a drive letter//if not default it to “C”if (drive == “” || drive == null){drive =

[/pre]

منبع : www.barnamenevis.org , www.w3schools.com

با کارت بانکی باشگاه ایران هاست پولتان به حسابتان باز می گردد.

همین حالا رایگان عضو شوید

مدیر بلاگ

مشخصات مدیر

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا
بستن
بستن