S01 Fundamental Concepts and Principles and Structure of Programming
S01 Fundamental Concepts and Principles and Structure of Programming
Computer Programming
کامپیوتر
نویسی کامپیوتر برنامه
برنامه نویسی
سرفصلها:
تعاریف ،مفاهیم و اصول کدنویسی زبانهای برنامه نویسی
عبارات و دستورالعملها
توابع
Van-Roy, P. and S. Haridi, Concepts, techniques, and models of computer programming. 2004:
MIT press.
Okasaki, C., Purely functional data structures. 1999: Cambridge University Press.
CP-14012 :Subject
:Body
نام
نام خانوادگی
نام دانشگاه
دقت
سرعت
مزایا
عدم فراموشی
انرژی سیستم عامل تکرار بدون نقص
)Operating System(OS
خالقیت معایب
برنامه کاربردی
Python / MATLAB / R
Dennis Ritchie
:Onlineتفسیر ()Interpret
در این حالت برنامه در لحظه اجرا ترجمه میشود.
PHP / MATLAB / JavaScript
C ML
Offline Online
C# , Java Intermediate Language (IL) Machine Language (ML)
❑ بلوککدیادستورها
❑ تصمیمگیریوانشعابیادستوراتانتخاب(:)Selection / Conditionبایدتصمیمبگیردکهچهزمانیچهپارامتریانتخابشود.
:forبهازاییکمجموعهمحدودازاعضاءتعدادتکرارمشخصومحدود
❑ تکرار(:foreach:)Repetitionبهازایهرعضوازمجموعهایمشخص
:whileتکرارتازمانیکهیکشرطبرقرارباشدتعدادتکرارنامشخصونامحدود
شرطمثبت
do-while
حالتهایدیگرwhile
) :until (VBبرعکس ،whileحالتیازشرطمنفیتکرارکنتازمانیکهاینشرطبرقرارنشدهاست
❖ خطایگرامری،نحوی،دستوری،نوشتاریکد(:)Syntax Errorمرتبطبازماننوشتنکدهایبرنامهوقبلازترجمهواجرامیباشد.
همهزبانهایبرنامهنویسییکساختاردستوریمشخصیدارند.بهاینساختاراصطالحاً Syntaxگفتهمیشود.
❖ خطای کامپایل ( :)Compile–time Errorهمزمان با ترجمه صورت میگیرد .در این خطا برنامه اشکال گرامری ندارد ولی نمیتواند
کامپایل شود .معموالً این ارور در زبانهای برنامه نویسی کامپایلری رخ میدهد.
در فرآیند ترجمه کد الزم است مقدماتی برای آن فراهم شود .یکی از مقدماتی که به ما مربوط است ،وجود کلیه فایلهای یک برنامه (اگر
برنامه دارای چند فایل کد است) و در دسترس بودن کتابخانههای استفاده شده در برنامه است .اگر در هنگام کامپایل کردن کد ،یک یا
چند مورد از این مقدمات فراهم نباشد ،با خطای کامپایل مواجه خواهیم شد.
❖ خطایمنطقی(:)Logical Errorدرخطایمنطقی،کدهاصحیحهستند،کامپایلبهدرستیانجاممیشودوورودیهایبرنامهنیزکامالًصحیح
وبدونایرادخواهندبود.امانتیجهکار،اشتباهاست!
ایننوعخطادرفرآینداجرایبرنامههیچمشکلیایجادنمیکند.بهایندلیلخطایمنطقیرایکباگ( )Bugنرمافزاریدرنظرمیگیریمکه
نتیجهاشتباهاست.بههمیندلیلخطرناکترینخطایبرنامهنویسیهمیننوعخطاست.
✓ خطاهای زمان اجرا و منطقی ،هر دو در هنگام اجرای برنامه ایجاد میشوند .با این تفاوت که در خطای زمان اجرا ،برنامه اجرا نمیشود و به
اصطالح برنامه هنگ میکند ولی در خطای منطقی ،برنامه اجرا میشود ولی نتیجه اشتباه است.
اشکال،حشرهBug
رفعاشکال،رفعحشرهdeBug
❑ ترتیباجرا(:)Order of Executionبرنامهمیبایستبهترتیباجراشودوتصادفینباشد.
❑ شرطوانتخاب
❑ تکرار
✓ GoToجزشرایطفوقمحسوبنمیشود،بلکهباشرطوتکرارمیتوانآنراایجادنمود.
❑ دادهعددی:دادههایعددیمیتوانندصحیح،گویایامختلطباشند.
True ❑ دادهمنطقی1
False 0
توابع ماژولهای «مستقل» از کدها هستند که یک وظیفه خاصی را انجام میدهند .تابع در برنامه نویسی معموالً دادهها را «دریافت» میکند،
روی آنها پردازش انجام میدهد و نتیجه را «باز میگرداند» .زمانی که تابع به وسیله یک زبان برنامه نویسی نوشته میشود ،در طول اجرای
برنامه ممکن است بارها اجرا یا فراخوانی شود .توابع میتوانند در داخل توابع دیگر «فراخوانی» شوند .تابع در برنامه نویسی باعث خوانایی
بیشتر کدها و سادگی آنها میشود.
مثال:ذخیرهکردناطالعاتیکدانشجو.
برنامهنویسیشیءگرا()Object-Oriented Programming
C + OOP مثالC#: