برنامه نویسی ساخت یافته

در ابتدای تاریخ برنامه نویسی زبانهای برنامه نویسی به صورت ساخت یافته نبودند و بدون انشعاب و به صورت خطی از ابتدا تا انتها اجرا میشدند .برنامه نویسی ساخت یافته (Structured Programming) روشی برای سازماندهی و کد کردن برنامه هاست . یک برنامه بزرگ به قسمتهای کوچکتر تقسیم میشودبه طوری که هر قسمت وظیفه انجام یک بخش را دارد . سه ساختار «دستور» , «حلقه» و «انتخاب» پایه و اساس برنامه های ساخت یافته را تشکیل میدهند .همه برنامه ها را میتوان با استفاده از این سه ساختار نوشت. کنترول برنامه بدون انشعاب های غیر شرطی از یک ساختار به ساختار دیگر میرود .

زبانهای سطح بالا مانند C برنامه نویسی ساخت یافته را از طریق معادل سازی نماد ها و دستوراتی مانند FOR , WHILE,.. پیاده سازی میکنند ولی زبانهای اسمبلی به طور ذاتی فاقد این ساختار ها هستند بلکه باید این ساختار ها را شبه سازی کرد .

مزایا و معایب برنامه های ساخت یافته :

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

اما از آنجا که برنامه های ساخت یافته توسط زبانهای سطح بالا نوشته میشوند نیاز به یک مرحله ترجمه اظافه نسبت به اسمبلی دارند .
برنامه های ساخت یافته کند تر اجرا میشوند چون حجم کد تولید شده توسط کامپایلر بیشتر است و حافظه بیشتری نسبت به برنامه های غیر ساخت یافته نیاز دارند .
پیگیری ساختار های تو در تو مشکل است .

به هر حال با این همه معایب جداً اساسی چون برنامه نویس ها اصولاً انسانهای تنبلی هستند بیشتر جلب مزایای برنامه نویسی ساخت یافته می شوند ! ! ! شاعر در این مواقع میگه : حسن نرو به سایه , سایه خودش می آیه .

همه مسائل برنامه نویسی را میتوان با استفاده از سه ساختار «دستور»,»حلقه»و»انتخاب» حل کرد شاید این ساختار ها ناقص به نظر برسند ولی استفاده از آنها به صورت تو در تو مشکل را حل میکند .

دستور ها :

هر دستور میتواند یک یا چند کار اساسی و مشخص را انجام دهد .همچنین میتوان از یک Block از دستورات استفاده کرد و تعداد کار های بیشتری را انجام داد . این کار ها میتواند انتساب یک مقدار به یک متغییر , محاسبه یک عبارت ریاضی یا فراخوانی یک زیرروال باشد .

حلقه ها :

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

چندین شکل برای ساختار تکرار وجود دارد مثلاً :

While Condition Do
Statement

Repeat Statement
Until Condition

 

انتخابها :

این ساختار امکان انشعاب در اجرای برنامه را میدهد و شاید جالب ترین ساختار برنامه نویسی باشد چون میتوان با استفاده از شرایط خاصی از ورودی در برنامه , قسمتی از کد هارا به اجرا در آورد و از بخش دیگری از کد صرف نظر کرد . دو روش پیاده سازی معمول به صورت IF/THEN/ELSE و SWITCH-CASE است .

دستور GoTo در اسمبلی یک پرش غیر شرطی است  و استفاده از آن ضروری است ولی در برنامه نویسی ساخت یافته با استفاده از ساختار ها میتوان از به کار بردن آن خودداری کرد اما گاهی اوقات برای Debug میتوان از آن استفاده کرد البته هم در اسمبلی و هم در زبانهای سطح بالا باید بسیار دقت کرد که استک به هم نخورد .

 

Advertisements

دربارهٔ DeltaCode

Somewhere near the sky Far away from people Far away from noise Somewhere near yourself

Posted on فوریه 21, 2011, in برنامه نویسی. Bookmark the permalink. 4 دیدگاه.

  1. توی درس طراحی پیاده سازی این مطلب رو خواهی خوند. البته تو کتابش خیلی مفصل در این مورد صحبت کرده. ممنون

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

  3. چطور داره به حالت عادی بر می گرده ؟

  4. این شماره هوشمند رو امتحان کن راحتتر میتونی وارد وبلاگ بشی : 9092303113

پاسخی بگذارید

در پایین مشخصات خود را پر کنید یا برای ورود روی شمایل‌ها کلیک نمایید:

نشان‌وارهٔ وردپرس.کام

شما در حال بیان دیدگاه با حساب کاربری WordPress.com خود هستید. بیرون رفتن / تغییر دادن )

تصویر توییتر

شما در حال بیان دیدگاه با حساب کاربری Twitter خود هستید. بیرون رفتن / تغییر دادن )

عکس فیسبوک

شما در حال بیان دیدگاه با حساب کاربری Facebook خود هستید. بیرون رفتن / تغییر دادن )

عکس گوگل+

شما در حال بیان دیدگاه با حساب کاربری Google+ خود هستید. بیرون رفتن / تغییر دادن )

درحال اتصال به %s

%d وب‌نوشت‌نویس این را دوست دارند: