مقدمه مفهومی درباره واژه دستورات شرطی (Conditionals) به مجموعه ای از ساختارهای زبانی گفته می شود که امکان اجرای انتخابی بخش های مختلف کد را بر اساس ارزیابی شرایط فراهم می کنند. این دستورات پایه ای ترین مکانیسم برای پیاده سازی منطق تصمیم گیری در برنامه ها هستند. کاربرد واژه در برنامه نویسی یا زیرشاخه های فناوری اطلاعات دستورات شرطی در الگوریتم های مرتب سازی، پردازش داده ها، اعتبارسنجی ورودی ها، سیستم های خبره، و به طور کلی در هر جایی که نیاز به انتخاب بین مسیرهای مختلف اجرا باشد استفاده می شوند. مثال های واقعی و کاربردی در زندگی یا پروژه های IT تعیین سطح دسترسی کاربران در سیستم های احراز هویت. انتخاب الگوریتم بهینه بر اساس حجم داده ها. تغییر رفتار برنامه در محیط های مختلف (توسعه، تست، تولید). نقش واژه در توسعه نرم افزار یا معماری سیستم ها در معماری های پیچیده، دستورات شرطی می توانند مسیر اجرا را بین ماژول های مختلف هدایت کنند. در سیستم های مبتنی بر قانون (Rule-based)، این دستورات هسته اصلی سیستم را تشکیل می دهند. شروع استفاده از این واژه در تاریخچه فناوری و تکامل آن در سال های مختلف اولین دستورات شرطی در زبان ماشین به صورت پرش های شرطی پیاده سازی می شدند. با ظهور زبان های سطح بالا در دهه 1950 و 1960، ساختارهای خواناتری مانند if-then-else معرفی شدند. امروزه در زبان های مدرن، دستورات شرطی پیشرفته تر و انعطاف پذیرتر شده اند. تفکیک آن از واژگان مشابه دستورات شرطی با حلقه ها تفاوت دارند، اگرچه هر دو از شرط استفاده می کنند. همچنین با ساختارهای انتخاب (Switch/Case) که شکل خاصی از شرط هستند متفاوتند. شیوه پیاده سازی واژه در زبان های برنامه نویسی مختلف در C/Java با if/else/switch، در Python با if/elif/else، در functional languages با الگوهای تطابقی (Pattern Matching)، در shell scripting با ساختارهای test/[ ]. هر زبان شیوه خاص خود را برای پیاده سازی دستورات شرطی دارد. چالش ها یا سوءبرداشت های رایج در مورد آن دستورات شرطی تو در تو می توانند به ’’جهنم شرطی’’ منجر شوند. یک اشتباه رایج، استفاده نادرست از else if به جای switch برای شرایط چندگانه است. همچنین، برخی توسعه دهندگان تفاوت بین == و === در مقایسه های شرطی را درک نمی کنند. نتیجه گیری کاربردی برای استفاده در متون تخصصی و آموزشی تسلط بر دستورات شرطی برای هر برنامه نویسی ضروری است. استفاده مناسب از این دستورات همراه با الگوهای طراحی مناسب می تواند از پیچیدگی غیرضروری کد جلوگیری کند.