اصطلاح "pseudocode" به چه معناست ؟
٤ پاسخ
بیشتر بازش کنیم.
شبهکد دو جا عمدتاً استفاده میشه. یکی گفتم زمانی که بخوای یک تکه کد بنویسی و همه با هر زبانی که کار میکنن بتونن بفهمنش (چون شبهکد syntax یا همون ساختار خاص نداره). کد واقعی syntax داره. ما شبهکد مینویسیم که از syntax استفاده نکرده و دیگران رو درگیر syntax زبان خاصی نکنیم. یعنی منی که با جاوا کار میکنم، بخوام کد جاوام رو نشون یک نفر که با پایتون کار میکنه بدهم، ممکنه اون طرف جاوا بلد نباشه بخونه. ولی شبهکد رو حتماً میتونه بخونه، چون شبهکد syntax خاصی نداره. یک چیزیه شبیه کد.
دوم اینکه برنامهنویس بخواد یک کد پیچیده بنویسه. قبل از نوشتن کد پیچیده، بلااستثنا همیشه نیاز هست که کد رو اول یک جایی سازماندهیاش بکنی (چه تو ذهن، چه رو کاغذ، چه توی همون نرمافزار کد ادیتور کامپیوتر. معمولاً سازماندهی کد پیچیده توی ذهن بسیار بسیار دشواره. پس اون دو راه دیگه بیشتر استفاده میشه)، بعد بیاریش بهصورت کد بنویسیاش. چون برا کد پیچیده اولش حدوداً توی ذهن میدونی میخوای چیکار کنی، اگرچه دقیقاً ندونی.
در این حال برنامهنویس میاد کدش رو اول بهصورت "سادهتر" با استفاده از شبهکد برای خودش مینویسه تا کدش رو از ذهن پیاده کنه و سازماندهی کنه. بعدش که دید شبهکد اوکی بود، براساس شبهکدش میاد و کد اصلی رو مینویسه.
شبهکد.
یک حالت شبیه به کد زبان برنامهنویسی هست که برای سادهتر و قابل فهمتر کردن کد و بهکار میره.
مثلاً کد زیر مال زبان سیشارپ رو در نظر بگیر:
private int Sum (int a, int b)
{
return a + b;
}
کد نوشتهشده یک متود کاملاً ساده هست که دو تا int رو با هم جمع میکنه و مقدار رو برمیگردونه.
حالا من همون رو به شبهکد مینویسم:
method int (int a, int b)
returns a + b
که مشخصه که این یکی یک چیزی شبیه به کد هست. همون کد رو سادهتر کرده.
گاه برنامهنویس کد رو اول روی کاغذ مینویسه واس خودش. و روی کاغذ دلیلی نداره که هر کروشه یا هر سمیکولون رو بخوایم بذاریم. میتونیم تو وقت صرفهجویی کنیم و یک چیزی سریع بنویسیم که فقط بفهمیمش. لذا کد را رو کاغذ به شبهکد مینویسیم.
شبهکد فایدۀ دیگری هم داره بهجز سادهکردن کد. کجا؟ مثلاً جایی که بخوایم یک تکه کد رو به اشخاصی که با زبانهای برنامهنویسی مختلف کار میکنن نشون بدیم. چون زبانهای مختلف از نظر ساختار ممکنه با هم خیلی فرق کنن.
مثلاً شبهکدی که من نوشتم رو جلوی هر برنامهنویس دیگه که با یک زبان شیءگرا کار میکنه (مثلاً پایتون) بذاری، میفهمه منظور چیه. در حالی که کد زبان پایتون خیلی با کد سیشارپ فرق داره.
برای شبهکد هیچ الگوی نوشتن خاصی بهطور رسمی وجود نداره. هر جور دلمون بخواد میتونیم بنویسیم. فقط شرطش اینه که منظور توش واضح باشه.
مثلاً من همون کد رو اینجوری هم میتونم واس خودم بنویسم:
int (int a, int b)
--> a + b
این هم الان شبهکد هست.
قانون خاصی وجود نداره واس نوشتنش. گرچه روی اینترنت بعضی جاها یک اصولی رو سعی کردن گردآوری کنن براش که میتونی سرچ کنی.
نونههای بیشتری از شبهکد خواستی، وبسایت https://refactoring.guru مثالهایی برخی جاها آورده.
مثلاً:
https://refactoring.guru/design-patterns/observer
یا:
https://refactoring.guru/design-patterns/abstract-factory
توی این صفحات، یک قسمت نوشه pseudocode# که میتونی ببینی. و نیز پایین پایین صفحهاش، در قسمت code examples میتونی زبان دلخواه رو انتخاب کنی تا نمونۀ اصلی کد رو هم ببینی.
تو علوم زیستی و پزشکی کلمه سودو ب معنای مشابه استفاده میشه .....سودوساب آراکنوئید شبیه ساب. آراکنوئید(زیرعنکبوتیه)
سودو کد....شبه کد
شبه کد یک نمایش سطح بالا از یک زبان برنامه نویسی است که برای خواندن و درک آسان طراحی شده است، اما خود یک زبان برنامه نویسی واقعی نیست. اغلب برای توصیف جریان و ساختار یک برنامه قبل از نوشتن کد واقعی استفاده می شود.