در زبانهای برنامهنویسی، شناسهها «Identifiers» یکی از عناصر کلیدی هستند که برای نامگذاری اجزای مختلف برنامه مانند کلاسها «Classes»، متدها «methods»، متغیرها «variables» و برچسبها «tags» استفاده میشوند. این نامها توسط برنامهنویس تعریف میشوند و نقش مهمی در خوانایی و سازماندهی کد دارند. در این مقاله از سری مقالات آموزشی پی استور، به بررسی شناسه ها در سی شارپ #C سپس قوانین، محدودیتها و نحوه استفاده از آنها بررسی خواهد شد.
مقدمه
زبان برنامهنویسی سیشارپ #C یکی از زبانهای پرکاربرد در دنیای نرمافزار است که توسط مایکروسافت «Microsoft» توسعه داده شده و از ویژگیهای قوی و متنوعی برخوردار است. زبان #C بهعنوان یکی از زبانهای برنامهنویسی قدرتمند و پرکاربرد، قوانین و اصول خاصی برای تعریف شناسهها دارد که رعایت آنها برای جلوگیری از خطاهای زمان کامپایل ضروری است.
شناسه ها در سی شارپ چیست؟
شناسه «Identifier» نامی است که در برنامهنویسی برای شناسایی اجزای مختلف برنامه استفاده میشود. این اجزا میتوانند شامل کلاسها، متدها، متغیرها، برچسبها و سایر عناصر تعریفشده توسط کاربر باشند. شناسهها در واقع ابزارهایی هستند که برنامهنویسان با استفاده از آنها میتوانند به اجزای مختلف کد دسترسی داشته باشند و آنها را مدیریت کنند.
شناسه ها در سی شارپ بهعنوان نامهایی برای شناسایی انواع مختلف دادهها و عناصر برنامهنویسی استفاده میشوند. به عبارت سادهتر، شناسهها نمایانگر موجودیتهایی مانند متغیرها، توابع، کلاسها و فضاهای نام «namespaces» هستند.
مثال
public class Pstore { static public void Main () { int x; } }
در اینجا تعداد کل شناسه های موجود در مثال بالا ۳ است و نام این شناسه ها عبارتند از:
- Pstore: نام کلاس
- Main: نام روش
- x: نام متغیر
شناسهها میتوانند نامهای کوتاه (مانند x و y) یا نامهای توصیفیتر (مانند age، sum، totalVolume) باشند.
توجه: توصیه میشود از نامهای توصیفی استفاده شود تا کدی قابل فهم و قابل نگهداری ایجاد شود.
قوانین تعریف شناسه ها در سی شارپ #C
در زبان #C برای تعریف یک شناسه معتبر، قوانینی خاص وجود دارد که باید به دقت رعایت شوند. در صورتی که این قوانین رعایت نشوند، در زمان کامپایل با خطا مواجه خواهیم شد. این قوانین به شرح زیر هستند:
- شروع با یک حرف یا زیرخط: برای تعریف شناسهها، تنها کاراکترهای الفبایی (A-Z، a-z)، علامت زیرخط (_) مجاز هستند. به عنوان مثال، pstore@ یک شناسه معتبر نیست زیرا شامل علامت خاص @ است. شناسهها نمیتوانند با عدد شروع شوند
- استفاده از حروف، اعداد و زیرخط: بعد از حرف اول، میتوان از هر ترکیبی از حروف، اعداد (۰-۹) و زیرخط (_) استفاده کرد. به عبارت دیگر، در سایر بخشهای شناسه میتوان از اعداد هم استفاده کرد، بهشرطی که شناسه با عدد شروع نشود. برای مثال 1_pstore123 ,pstore یک شناسه معتبر است ولی 123pstore یک شناسه معتبر نیست.
- عدم استفاده از کلمات کلیدی زبان: شناسهها نمیتوانند بهعنوان کلمات کلیدی استفاده شوند، در سیشارپ، کلمات کلیدی مانند class ,int ,public و سایر کلمات رزرو شده نمیتوانند بهعنوان شناسه استفاده شوند. برای استفاده از این کلمات، میتوانید از پیشوند @ استفاده کنید. برای مثال می توانید از int, @class@ به عنوان شناسه استفاده کنید ولی int ,class یک شناسه نادرست است.
- شناسههای #C از کاراکترهای یونیکد پشتیبانی میکنند.
- حساسیت به حروف بزرگ و کوچک: شناسههای #C به حروف بزرگ و کوچک حساس هستند. به این معنا که Variable و variable دو شناسه متفاوت محسوب میشوند.
- شناسههای #C نمیتوانند بیش از ۵۱۲ کاراکتر داشته باشند.
- شناسهها نباید شامل فاصلههای خالی باشند.
- شناسهها نباید شامل دو زیرخط متوالی (__) در نام خود باشند، زیرا چنین شناسههایی برای پیادهسازی سیستم رزرو شدهاند.
مثال
// Simple C# program to illustrate identifiers using System; class Pstore { // Main Method static public void Main() { // variable int a = 10; int b = 39; int c; // simple addition c = a + b; Console.WriteLine("The sum of two number is: {0}", c); } }
خروجی
The sum of two number is: 49
جدول زیر شناسهها و کلمات کلیدی موجود در مثال بالا را نشان میدهد:
شناسه ها | کلمات کلیدی |
Pstore | using |
Main | public |
a | static |
b | void |
c | int |
مشکلات رایج در استفاده از شناسه ها در سی شارپ
استفاده از کلمات کلیدی بهعنوان شناسه: یکی از مشکلات رایج در برنامهنویسی، استفاده از کلمات کلیدی بهعنوان شناسه است. برای جلوگیری از این مشکل، میتوان از پیشوند @ استفاده کرد.
استفاده از نامهای غیرمعمول یا گیجکننده: استفاده از نامهایی که معنای روشنی ندارند یا طولانی و پیچیده هستند، میتواند به فهم کد آسیب بزند.
عدم رعایت حساسیت به حروف بزرگ و کوچک: اگرچه سیشارپ به حروف حساس است، اما گاهی اوقات ممکن است در استفاده از شناسهها به این موضوع توجه نکنیم و باعث بروز خطا شود.
نتیجهگیری
شناسهها «Identifiers» نقش حیاتی در سازماندهی و شفافیت کد در زبان #C دارند. رعایت قوانین و محدودیتهای تعریفشده برای شناسهها، نه تنها از بروز خطاهای زمان کامپایل جلوگیری میکند، بلکه به خوانایی و نگهداری بهتر کد نیز کمک میکند. از انتخاب نامهای توصیفی و معنادار گرفته تا رعایت حساسیت به حروف بزرگ و کوچک و استفاده صحیح از کاراکترها، تمامی این اصول در بهبود کیفیت کدنویسی تاثیرگذار هستند. آگاهی از این قوانین و بهکارگیری صحیح آنها، برنامهنویسان را قادر میسازد تا کدی تمیز، حرفهای و قابل فهم ایجاد کنند.
سلام ممنون از مطالب مفیدی که در اختیار ما قرار دادید
سلام، مقاله خیلی خوب و کامل بود.
توضیحات مقاله کاملاً واضح بود. خیلی به من کمک کرد تا خطاهایی که قبلاً به خاطر نامگذاری بد داشتم رو برطرف کنم. ممنون