سلام، هموطنان علاقمند به C#! بهعنوان ارائهدهنده سوئیچهای درجه یک، من از نزدیک متوجه شدهام که استفاده مؤثر از دستورات سوئیچ در سی شارپ چقدر مهم است. در این وبلاگ، برخی از بهترین روشها را برای استفاده از دستور سوئیچ در سی شارپ به اشتراک میگذارم، و به من اعتماد کنید، این نکات میتواند کد شما را پاکتر، کارآمدتر و نگهداری آسانتر کند.
آشنایی با اصول سوئیچ عبارت در سی شارپ
اول از همه، اجازه دهید به سرعت به این موضوع بپردازیم که عبارت switch در سی شارپ چیست. دستور سوئیچ یک دستور جریان کنترل است که به شما امکان می دهد یکی از بسیاری از بلوک های کد را برای اجرا انتخاب کنید. این یک جایگزین عالی برای یک زنجیره طولانی استاگر - دیگرعبارات، به خصوص زمانی که یک متغیر واحد را با مقادیر متعدد مقایسه می کنید.


در اینجا یک مثال ساده آورده شده است:
int day = 3; switch (day) { case 1: Console.WriteLine("Monday"); شکستن مورد 2: Console.WriteLine("سه شنبه"); شکستن مورد 3: Console.WriteLine("چهارشنبه"); شکستن پیش فرض: Console.WriteLine ("روز نامعتبر"); شکستن }
در این مثال،سوئیچبیانیه مقدار the را بررسی می کندروزمتغیر اگر مقدار 1 باشد، "دوشنبه" را چاپ می کند. اگر 2 باشد، "سه شنبه" و غیره را چاپ می کند. راپیش فرضcase زمانی اجرا می شود که هیچ یک از موارد دیگر با مقدار متغیر مطابقت نداشته باشد.
بهترین روش ها برای استفاده از بیانیه سوئیچ
1. موارد را ساده و خوانا نگه دارید
هر مورد در دستور switch باید ساده و قابل درک باشد. از قرار دادن منطق بیش از حد در یک مورد جدا خودداری کنید. اگر نیاز به انجام عملیات پیچیده دارید، بهتر است یک روش جداگانه فراخوانی کنید.
مثلا به جای این:
switch (productType) { case "Electronics": // یک دسته کامل کد برای محصولات الکترونیکی // شامل محاسبات، عملیات پایگاه داده، و غیره break; مورد "لباس": // کد طولانی مدت مشابه برای شکستن محصولات پوشاک. پیش فرض: break; }
این کار را انجام دهید:
switch (productType) { case "Electronics": HandleElectronicsProduct(); شکستن case "Clothing": HandleClothingProduct(); شکستن پیش فرض: break; } void HandleElectronicsProduct() { // تمام کدهای مربوط به محصولات الکترونیکی در اینجا قرار می گیرد } void HandleClothingProduct() { // تمام کدهای مربوط به محصولات لباس اینجا می رود }
به این ترتیب، دستور switch شما تمیز و قابل خواندن باقی می ماند و کد ماژولارتر است.
2. ازپیش فرضمورد عاقلانه
راپیش فرضcase برای رسیدگی به موقعیت هایی وجود دارد که هیچ یک از موارد دیگر با مقدار متغیر مطابقت ندارد. مهم است که از آن عاقلانه استفاده کنید. اگر انتظار دارید تمام مقادیر ممکن توسط موارد شما پوشش داده شود، می توانید از آن استفاده کنیدپیش فرضمورد برای پرتاب یک استثنا، که نشان می دهد اتفاق غیرمنتظره ای رخ داده است.
switch (وضعیت) { case "Active": // کاری برای break status فعال انجام دهید; case "Inactive": // کاری برای شکست وضعیت غیرفعال انجام دهید. پیش فرض: پرتاب جدید ArgumentException($"وضعیت غیرمنتظره: {status}"); }
این به اشکالزدایی کمک میکند و تضمین میکند که کد شما بیصدا مقادیر غیرمنتظره را نادیده نمیگیرد.
3. موارد خود را منطقی سفارش دهید
ترتیب پرونده های شما می تواند مهم باشد، به خصوص زمانی که مواردی وجود داشته باشند که احتمال وقوع آنها بیشتر از موارد دیگر است. رایج ترین موارد را در بالای دستور switch قرار دهید. این می تواند عملکرد کد شما را بهبود بخشد، زیرا کامپایلر ابتدا این موارد را بررسی می کند.
به عنوان مثال، اگر انواع مختلفی از اقدامات کاربر را در یک بازی انجام میدهید، و اکشن «حرکت» رایجترین مورد است، آن را در بالا قرار دهید:
switch (userAction) { case "Move": // Handle the move action break; case "Attack": // Handle the attack break action; case "Defend": // Handle the Defense action break; پیش فرض: break; }
4. از تطبیق الگو (C# 7.0 و جدیدتر) استفاده کنید
سی شارپ 7.0 تطبیق الگو را در عبارات سوئیچ معرفی کرد که به شما امکان میدهد نه تنها بر روی مقدار یک متغیر بلکه بر روی نوع و سایر ویژگیهای آن تطبیق دهید. این می تواند عبارات سوئیچ شما را قدرتمندتر و انعطاف پذیرتر کند.
در اینجا یک مثال است:
object obj = "سلام"; switch (obj) { case string s when s.Length > 5: Console.WriteLine($"رشته طولانی است: {s}"); شکستن رشته موردی s: Console.WriteLine($"رشته کوتاه است: {s}"); شکستن case int i: Console.WriteLine($"عدد صحیح: {i}"); شکستن پیش فرض: Console.WriteLine ("نوع شی ناشناخته"); شکستن }
تطبیق الگو می تواند زمانی که با انواع چند شکلی کار می کنید یا زمانی که نیاز به انجام اقدامات مختلف بر اساس ویژگی های یک شی دارید، واقعا مفید باشد.
چگونه سوئیچ های ما می توانند کد C# شما را تکمیل کنند
به عنوان تامین کننده سوئیچ، ما اهمیت اجزای قابل اعتماد در پروژه های شما را درک می کنیم. ماسوئیچ فشار الکترونیکینمونه ای عالی از یک سوئیچ با کیفیت بالا است که می تواند در برنامه های C# شما ادغام شود. چه روی یک سیستم کنترل صنعتی، یک پروژه اتوماسیون خانگی یا یک ابزار علمی کار کنید، سوئیچ های ما می توانند عملکرد دقیق و قابل اعتمادی را ارائه دهند.
در یک برنامه C# که یک سیستم حساس به فشار را کنترل میکند، ممکن است از یک عبارت سوئیچ برای مدیریت سطوح مختلف فشار شناساییشده توسط سوئیچ فشار الکترونیکی ما استفاده کنید. به عنوان مثال:
int pressLevel = GetPressureLevelFromSwitch(); سوئیچ (pressureLevel) { case 1: // Low Pressure, some action break; مورد 2: // فشار متوسط، یک استراحت عمل دیگر انجام دهید. مورد 3: // فشار بالا، اقدامات مناسب را انجام دهید. پیش فرض: break; }
سوئیچ های ما به گونه ای طراحی شده اند که خوانش های دقیق و ثابتی را ارائه دهند، به این معنی که کد سی شارپ شما می تواند برای تصمیم گیری دقیق به ورودی سوئیچ تکیه کند.
نتیجه گیری
استفاده موثر از دستور switch در سی شارپ می تواند کیفیت کد شما را تا حد زیادی بهبود بخشد. با پیروی از این بهترین شیوه ها، می توانید کد خود را خواناتر، قابل نگهداری و کارآمدتر کنید. و اگر در بازار سوئیچهای باکیفیت برای پروژههای خود هستید، دیگر به دنبال آن نباشید. ما اینجا هستیم تا بهترین سوئیچهایی را که میتوانند برنامههای #C شما را تکمیل کنند، در اختیار شما قرار دهیم.
اگر علاقه مند به کسب اطلاعات بیشتر در مورد سوئیچ های ما یا بحث در مورد خرید احتمالی هستید، در تماس با ما دریغ نکنید. ما همیشه خوشحالیم که به شما کمک کنیم سوئیچ مناسب برای نیازهای خود را پیدا کنید.
مراجع
- راهنمای برنامه نویسی سی شارپ، Microsoft Docs
- سی شارپ موثر: 50 روش خاص برای بهبود سی شارپ، بیل واگنر
