شبه کد (Pseudocode) چیست و چه کمکی به ما می‌کند؟

۴۱۴۵ بازدید
آخرین به‌روزرسانی: ۰۳ مهر ۱۴۰۲
زمان مطالعه: ۵ دقیقه
شبه کد (Pseudocode) چیست و چه کمکی به ما می‌کند؟

زمانی که برای نخستین بار شروع به یادگیری برنامه‌نویسی می‌کنیم، پیش از آن که بتوانیم نخستین اپلیکیشن خود را بسازیم، موارد زیادی برای مطالعه وجود دارند. داشتن طرز تفکر برنامه‌نویسی به ما کمک می‌کند که مسائل را به الگوریتم‌هایی که آن‌ها را حل می‌کنند بشکنیم. الگوریتم‌ها گام‌هایی هستند که کد برای حل یک مسئله با پاسخ به یک سؤال اجرا می‌کند. در این مقاله با مفهوم شبه کد (Pseudocode) آشنا خواهیم شد.

در صورتی که به‌تازگی کدنویسی را شروع کرده‌اید، شاید طرز تفکر مانند یک برنامه‌نویس برای شما دشوار باشد. ترجمه ایده‌های اپلیکیشن به کد واقعی نیاز به کمی تمرین دارد. برای این که شکاف بین آن چه که از یک اپلیکیشن می‌خواهیم و کد واقعی کمتر شود، باید از شبه کد استفاده کنیم.

شبه کد چیست؟

شبه کد یا Pseudocode یک توصیف متنی ساده از یک قطعه کد یا الگوریتم است. شبه کد به معنای کدنویسی نیست، چون هیچ اسکریپت یا فایلی وجود ندارد و از مفاهیم برنامه‌نویسی نیز استفاده نمی‌کنیم. همان طور که از نام شبه کد مشخص است، یک کد ساختگی است.

شبه کد در هیچ زبان برنامه‌نویسی نوشته نمی‌شود. شبه کد به زبان معمولی که استفاده می‌کنیم نوشته می‌شود که روشن است و درک آن آسان خواهد بود.

با این که شبه کد در یک زبان برنامه‌نویسی نوشته نمی‌شود، اما همچنان کلیدواژه‌هایی وجود دارند که برای اشاره به مفاهیم رایج کدنویسی مورد استفاده قرار می‌گیرند. این موارد با حروف بزرگ نوشته می‌شوند تا خواندشان آسان‌تر باشد.

  • START
  • INPUT
  • READ/GET
  • PRINT/DISPLAY
  • CALCULATE/DETERMINE
  • SET
  • INCREMENT/DECREMENT
  • PROGRAM
  • END

در ادامه قطعه کدی را می‌بینید که یک شبه کد برای یک برنامه است که رنگ مورد علاقه خود را در آن وارد می‌کنید و گزینه مورد نظر شما را پرینت می‌کند:

START
PROGRAM getColor
Create variable Color
Ask the user for their favorite color
READ INPUT into Color
PRINT Color
END

این الگوریتم کاملاً ساده‌ای است که در شبه کد نوشته می‌شود. هر کس می‌تواند کاری که این کد انجام می‌دهد را بخواند و درک کند. به عنوان یک کدنویس تنها کاری که باید انجام دهید این است که این مفاهیم را با استفاده از هر زبان برنامه‌نویسی که در آن کدنویسی می‌کنید حیات ببخشید. برای نمونه کد همین برنامه در جاوا اسکریپت به صورت زیر است:

1let color = window.prompt("What is your favorite color?");
2console.log(color);

این برنامه از ساختار جاوا اسکریپت برای نوشتن الگوریتم استفاده می‌کند. اگر نمی‌دانید جاوا اسکریپت چیست، درک اتفاقاتی که در کد فوق می‌افتد، ممکن است برای شما دشوار باشد. شبه کد الگوریتم را می‌نویسید و زبان‌های برنامه‌نویسی نحو آن را تعیین می‌کنند.

فایده شبه کد چیست؟

شبه کد به ما کمک می‌کند که طرح کلی اپلیکیشن را پیش از نوشتن آن مشخص بکنید. بدین ترتیب به ایجاد الگوریتم‌ها در قالبی که خواندن آن‌ها ساده‌تر از نحو کد است کمک می‌کند. زمانی که با زبان‌های برنامه‌نویسی مواجه می‌شویم، درک اتفاقی که می‌افتد بسیار دشوارتر می‌شود.

اگر با زبان جاوا اسکریپت آشنا باشید، خواندن مثال جاوا اسکریپت فوق چندان دشوار نخواهد بود، اما اگر بخواهید منطق کد را بفهمید چطور؟ کلیدواژه‌های خاصی مانند window.prompt یا console.log موارد زیادی را در مورد الگوریتم مشخص نمی‌سازند.

اصول نرم‌افزار خوب حائز اهمیت هستند. اگر می‌خواهید به عنوان یک مهندس نرم‌افزار در مصاحبه شغلی شرکت کنید افراد مصاحبه‌کننده عموماً از شما انتظار ندارند که نحو زبان‌های برنامه‌نویسی را به خاطر داشته باشید. در صورتی که پیش از کدنویسی الگوریتم‌ها و ساختارهای مورد نظر را آماده‌سازی کنید، کدهای بسیار بهتری می‌توانید بنویسید.

شیوه نوشتن شبه کد

نوشتن برنامه کامل در شبه کد نیازمند گزاره‌ها و کلیدواژه‌های زیادی است که شباهت زیادی به برنامه‌نویسی معمولی دارند. در واقع زمانی که تمرین کافی با شبه کد داشته باشید، کم‌کم بسیار شبیه به برنامه واقعی به نظر می‌رسد.

گزاره‌های شرطی

گزاره‌های شرطی برای برنامه‌نویسی حیاتی هستند. این گزاره‌ها به صورت IF یا IF/ELSE هستند که می‌توانند منطق را به کد اضافه کنند. این گزاره‌ها با استفاده از کلیدواژه‌های زیر در شبه کد نوشته می‌شوند:

  • IF
  • ELSE
  • ELSE IF
  • THEN

در ادامه برنامه‌ای با یک گزاره ساده IF/ELSE می‌بینید که در شبه کد نوشته شده است. بررسی کنید آیا می‌توانید صرفاً با خواندن شبه کد، کاری که برنامه انجام می‌دهد را درک کنید:

START
PROGRAM isOdd
Create variable Choice
Ask the user for a number
READ INPUT into Choice
IF Choice is even THEN
PRINT "No"
ELSE
PRINT "Yes"
ENDIF
END

این یک برنامه کاملاً ساده است. از کاربر یک عدد می‌گیرد و بسته به این که عدد فرد یا زوج باشد، کاری را انجام می‌دهد.

گزاره‌های تکرار

بخش اساسی دیگر در برنامه‌نویسی بحث تکرار است که به طور عمده با حلقه‌ها انجام می‌یابد. برخی حلقه‌های رایج شامل حلقه‌های for و while هستند که هر دوی آن‌ها را می‌توان با شبه کد نوشت:

START
PROGRAM forLoop
FOR 1 through 12
PRINT "Hello"
ENDFOR
END

این الگوریتم برای برنامه‌ای است که عبارت Hello را 12 بار چاپ می‌کند. حلقه‌های while نیز بسیار ساده نوشته می‌شوند:

START
PROGRAM whileLoop
Create variable Counter
SET Counter equal to 1
WHILE Counter is less than 10
Print "Hello"
INCREMENT Counter
ENDWHILE
END

الگوریتم ساده فوق نیز با استفاده از حلقه while عبارت Hello را پرینت می‌کند. هر دو مثال حلقه شروع و پایان روشنی برای تکرار دارند.

می‌توان نوع دیگری از حلقه‌ها را نیز نوشت که به حلقه‌های Do-While مشهور هستند. کلیدواژه‌های شبه کد در این حلقه‌ها متفاوت و به صورت REPEAT و UNTIL هستند:

START
PROGRAM doWhileLoop
Create variable Counter
SET Counter equal to 1
REPEAT
Print "Hello"
INCREMENT Counter
UNTIL Counter is equal to 10
END

حلقه فوق نیز همانند یک حلقه DO-While عملی را تا زمانی که معیار مشخصی برآورده شود اجرا می‌کند. زمانی که این شرط برقرار شود، از حلقه خارج خواهد شد.

تابع‌ها

تابع‌ها بهترین دوست هر برنامه‌نویسی محسوب می‌شوند. تابع‌ها شامل کدی هستند که می‌تواند بارها و بارها فراخوانی شود و در زبان‌های برنامه‌نویسی سطح بالا مورد استفاده قرار می‌گیرند. افزودن تابع به شبه کد کار بسیار آسانی است.

START
PROGRAM sampleFunction
PRINT "This is a function"
END

امکان فراخوانی تابع‌ها در شبه کد وجود دارد:

call sampleFunction

در مورد تابع‌ها نکات خاص دیگری وجود ندارد که اضافه کنیم. تابع‌ها ساده هستند و با استفاده از آن‌ها می‌توانید هر منطقی که دوست دارید را اضافه کنید.

مدیریت خطا

این که بتوانیم کدی بنویسیم که بتواند به خطاها واکنش نشان بدهد، در زمان توسعه اپلیکیشن حائز اهمیت بالایی محسوب می‌شود. بدین ترتیب می‌توان این تابع‌ها را در شبه کد نیز جای داد. امکان مدیریت خطاها و استثناها با استفاده از کلیدواژه EXCEPTION وجود دارد. در ادامه الگوریتم ساده‌ای مبینید که یک خطا را به دام می‌اندازد.

START
PROGRAM catchError
Create variable Number
Ask the user for a number
READ INPUT into Number
EXCEPTION
WHEN Number is not a number
PRINT "Error: Please pick a number"
END

کد استثنا ورودی بد وارد شده از سوی کاربر را به دام می‌اندازد. تست کردن کد برای نوشتن اپلیکیشن‌های خوب امری ضروری است. برخی از این استثناها در تست‌های ما ظاهر نخواهد شد، از این رو نوشتن آن‌ها در شبه کد و زمان طرح‌ریزی اپلیکیشن کار مناسبی است.

سخن پایانی

شبه کد به طور کامل برای این است که به کدنویس بهتری تبدیل شویم. با مطالعه این راهنما با روش نوشتن شبه کد آشنا شدید و اینک می‌دانید که این قابلیت در فرایند برنامه‌نویسی تا چه حد مهم محسوب می‌شود. یادگیری روش نوشتن شبه کد حتی در صورتی که به‌تازگی شروع به یادگیری کدنویسی کرده‌اید توصیه می‌شود.

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

==

بر اساس رای ۲۳ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
makeuseof
۳ دیدگاه برای «شبه کد (Pseudocode) چیست و چه کمکی به ما می‌کند؟»

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

سلام
ببخشید این کد هارا باید کجا بزنیم؟

شبه کد یک زبان برنامه نویسی نیست بلکه توضیحاتی درباره نحوه کار و اجرای برنامه شماست حالا برنامه شما ممکنه به هر زبانی باشه و اکثرا شبه کد را بصورت یک فایل متنی جدا می نویسند

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *