حسین احمدی
بنیانگذار توسینسو و برنامه نویس و توسعه دهنده ارشد وب

آموزش استفاده از Class Library در سی شارپ

همانطور که در مطالب قبلی گفتیم، زمانی که کدی در زبان سی شارپ کامپایل می شود، خروجی یگ اسمبلی است که شامل اطلاعاتی مانند کد IL، اطلاعات اسمبلی (Manifest) و اطلاعات Type ها (Metadata) است. به طور کلی، اسمبلی ها در دات نت به دو دسته تقسیم می شوند:

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
  1. Class Library ها: یا فایل های DLL که می توان در سایر برنامه ها از آن ها استفاده کرد
  2. Executable Files: یا فایل های اجرایی که با دوبار کلیک کردن بر روی آن ها یک برنامه اجرا شده یا اتفاقی در سیستم می افتد.

در این مطلب صحبت ما در مورد Class Library ها است. زمانی که شما برنامه ای را در زبانی مانند سی شارپ می نویسید، می توانید برنامه های خود را به پروژه های مختلف تقسیم بندی کنید که معمولاً در یک Solution یک پروژه برای قسمت اجرایی برنامه داریم و یک یا چندین پروژه داریم که از نوع Class Library هستند و از آن ها می توان در پروژه اجرایی برنامه و یا سایر پروژه ها استفاده کرد. برای ایجاد Class Library به صورت عمل می کنیم:

1. ابتدا در Visual Studio یک پروژه از نوع Console ایجاد کرده و نام آن را MyApplication می گذاریم:

img1

2. در مرحله بعدی می خواهیم یک پروژه دیگر به Solution خود اضافه کنیم. اما این پروژه از نوع Class Libary بوده و به همین دلیل قابل اجرا نیست. برای اینکار در پنجره Solution Explorer، بر روی نام Solution راست کلیک کرده و زیر منوی Add گزینه Project را انتخاب می کنیم تا پنجره Add Project نمایش داده شود:
img2

3. در پنجره Add New Project نوع Class Library را انتخاب کرده و نام آن را MyApplication.Tools بگذارید، با اینکار پروژه ای جدیدی به Solution شما اضافه می شود:
img3

4. در قدم بعدی کلاسی به صورت زیر در پروژه MyApplication.Tools ایجاد می کنیم:

namespace MyApplication.Tools
{
    public class SecurityManager
    {
        public bool AuthenticateUser(string username, string password)
        {
            // authenticate user
            return true;
        }
    }
}

به یک موضوع دقت کنید، کلیه کلاس هایی که در این پروژه ایجاد می شوند دارای Namespace ای با عنوان MyApplication.Tools هستند که دلیل این موضوع انتخاب نام پروژه با این عنوان است.

5. در قدم بعدی باید از پروژه ایجاد شده در پروژه اجرایی استفاده کنیم. برای اینکار، بر روی پروژه MyApplication راست کلیک کرده و و آیتم Reference را از منوی Add انتخاب می کنیم تا پنجره Reference Manager باز شود:
img4

6. برای اضافه کردن پروژه MyApplication.Tools به پروژه MyApplication، از سمت چپ پنجره Reference Manager گزینه Projects را انتخاب و از لیست نمایش داده شده، گزینه MyApplication.Tools را انتخاب کنید و بر روی دکمه اوکی کلیک کنید:

img5

با انجام اینکار، پروژه Tools به عنوان Reference به پروژه MyApplication اضافه شده و می توانید از کلاس SecurityManager در برنامه اجرایی استفاده کنید:

class Program
{
    static void Main(string[] args)
    {
        MyApplication.Tools.SecurityManager manager = new MyApplication.Tools.SecurityManager();
        if (manager.AuthenticateUser("username", "123"))
        {

        }
        else
        {
                
        }
    }
}

یکی از مهمترین مزیت های استفاده از Class Library ها لایه بندی نرم افزار ها و تقسیم بندی کدهاست که در مقالات جداگانه در این باره توضیح خواهیم داد. ITPRO باشید


حسین احمدی
حسین احمدی

بنیانگذار توسینسو و برنامه نویس و توسعه دهنده ارشد وب

حسین احمدی ، بنیانگذار TOSINSO ، توسعه دهنده وب و برنامه نویس ، بیش از 12 سال سابقه فعالیت حرفه ای در سطح کلان ، مشاور ، مدیر پروژه و مدرس نهادهای مالی و اعتباری ، تخصص در پلتفرم دات نت و زبان سی شارپ ، طراحی و توسعه وب ، امنیت نرم افزار ، تحلیل سیستم های اطلاعاتی و داده کاوی ...

نظرات