آشنایی با Namespace (قسمت دوم)

جلسه سیزدهم(قسمت دوم):  آشنایی با Namespace

برنامه نویسی #C
 

در جلسه قبل، ما با namespace آشنا شدیم. در این جلسه میخواهیم با بیشتر با این موضوع آشنا شویم. برای مشاهده جلسه قبل، بر روی لینک کلیک کنید.

میخواهیم با عبارت Using system اشنا بشویم. حتما مشاهده کرده اید که قبل از تمامی کد ها، عبارت using system نوشته شده است. در اصل، عبارت Using System، فضای نام یا Namespace اصلی برنامه میباشد. درون این Namespace، توابع زیادی وجود دارد. در آینده با توابع آشنا خواهیم شد. برای مثال، ما فهمیدیم که با دستور ()Console.WriteLine میتوانیم یک مقداری را به صورت رشته چاپ کنیم. این دستور در اصل یک تابع است. اگر از عبارت Using System در برنامه استفاده نکنیم، نه تنها از تابع ()Console.WriteLine، بلکه بسیاری از توابع دیگر در دسترس نخواهد بود. برای مثال تابع ()Console.WriteLine درون فضای نام Using System قرار دارد.

در عبارت Using System، واژه using یک کلید واژه است که در قبل از Namespace ها قرار میگیرد.  System همان namespace ما میباشد. Using system یعنی در این برنامه، از Namespace یا فضای نام System استفاده میشود.

شما زمانی که در نرم افزار Visual Studio یک پروژه جدید تحت عنوان Console App(net core) ایجاد میکنید، در همان ابتدا به صورت پیش فرض، در بالای برنامه، فضای نام Using system ایجاد میشود. اگر Namespace را در همان ابتدا، ایجاد نکنید، مجبورید قبل از ایجاد توابعی که میخواهید در برنامه استفاده کنید، عبارت System را بنویسید. این عمل سبب میشود ما هرباری که بخواهیم از یک تابع استفاده کنیم،  فضای نام System را در اول آن بنویسیم. در نتیجه، ما فضای نام Using System در همان ابتدای برنامه مینویسیم تا مجبور نباشیم هر بار قبل از ایجاد یک تابع از آن استفاده کنیم.

برای مثال به تصویر زیر توجه کنید.

در مثال زیر، مشاهده میکنید که میتوانیم با وجود فضای نام System، از یک تابع همانند ()Console.WriteLine استفاده کرد.

آشنایی با namespace در سی شارپ
 

using System;
namespace ConsoleApp
{
class Program
{
static void Main(string[] srgs)
{
Console.WriteLine(“Farkiantech”);
}
}
}

اکنون میخواهیم فضای نام System را پاک کنیم. همانطور که مشاهده میکنید با خطا مواجه میشویم. به این دلیل که تابع ()Console.WriteLine به فضای نام System دسترسی ندارد.

namespace در c shorp
 

میتوان با استفاده از عملگر نقطه ( . ) و کلید واژه System که همان فضای نام ما میباشد، Namespace را در دسترس تابع ()Console.WriteLine قرار دهیم. همانند زیر:

فضای نام در سی شارپ
 

نکته: همانطور که مشاهده میکنید، خطا رفع شد اما برفرض اگر بخواهید ۱۰ بار از یک تابع استفاده کنید، باید ۱۰ بار از فضای نام .System استفاده کنید. در نتیجه بهتر است فضای نام ها یا namespace ها در ابتدای برنامه نوشته شوند تا همیشه در دسترس برنامه باشد. در این صورت دیگر لازم نیست هر بار قبل از ایجاد یک تابع، namespace را بنویسیم.

نکته: ما Namespace های زیادی داریم که هر کدام توابع مختلفی را درون خود دارند. برای مثال ممکن است بخواهید از یک تابع استفاده کنید که در Namespace یا فضای نامی System وجود ندارد. در نتیجه باید از یک فضای نامی استفاده کنید که توابع مورد نظر شما را درون خود داشته باشد.

namespace در C#
 

بعد از ایجاد فضای نام Using System، باید از کلمه کلیدی Namespace استفاده کنیم و یک نام برای آن در نظر بگیریم. اگر ما از کلمه کلیدی Namespace استفاده نکنیم،نمیتوانیم از Namespace یا فضای نام هایی که در بالا تعریف شده است استفاده کنیم. در نتیجه بعد از ایجاد یک Namespace مانند System، از کلمه کلیدی Namespace استفاده میکنیم تا برنامه بتواند به Namespace یا فضای نام  دسترسی داشته باشد.

سپس با ایجاد یک فاصله، برای فضای نام یا Namespace یک اسم ایجاد میکنیم. توجه کنید که انتخاب نام برای Namespace الزامی میباشد. میتوانید یک نام دلخواه انتخاب کنید. برای مثال، من نام Namespace را Farkiantech میگذارم. سپس با استفاده از دو آکلاد باز و بسته { } یک بدنه برای Namespace ایجاد میکنیم

using System;
namespace Farkiantech
{
class myclass
{
static void Main()
{

}
}
}

اکنون من یک فضای نام یا Namespace دارم به نام Farkiantech، درون این Namespace یک Class دارم به نام Myclass و درون این Class، یک تابع دارم از نوع main که در جلسات اینده با Class ها و توابع آشنا خواهیم شد. تا این جلسه با مفهوم Namespace  آشنا شدیم. در قسمت بعد، بیشتر با این موضوع آشنا خواهیم شد. با ما همراه باشید.

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد.