پاورپوینت کامل و جامع با عنوان مدیریت حافظه در زبان های برنامه سازی در 65 اسلاید

 

 

 

 

 

 

 

 

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

معنای برنامه‌نویسی رایانه در فرهنگ عامه می‌تواند به تمامی فرایند توسعه نرم‌افزار (به انگلیسی: Software Development) اطلاق گردد که شامل فعالیت‌های مختلفی همچون بررسی، توسعه، درک، طراحی الگوریتم؛ پیاده‌سازی، تست، اشکال زدایی و نگهداری نرم‌افزار‌های رایانه‌ای نیز می‌شود. همچنین برنامه‌نویس به شخصی اطلاق می‌گردد که عمل برنامه‌نویسی و توسعه نرم‌افزار را انجام می‌دهد.

برنامه‌نویسی مستلزم فعالیت‌هایی همچون تحلیل و درک مسئله است و عموماً حل چنین مسایلی منجر به ایجاد یک الگوریتم می‌شود، بازبینی نیازمندی‌های الگوریتم که شامل صحت و میزان منابع مصرفی است، پیاده‌سازی (که معمولاً به عنوان کدینگ از آن یاد می‌شود) این الگوریتم در یک زبان برنامه‌نویسی مقصد، تست کردن، اشکال زدایی، نگهداری کد منبع، پیاده‌سازی سیستم ساخت (build system) و مدیریت مصنوعات مشتق شده مانند کد ترجمه شده به زبان ماشین برنامه‌های کامپیوتری. الگوریتم اغلب تنها به شکل قابل تجزیه و تحلیل برای انسان و قابل استدلال با منطق نمایش داده می‌شود. کد منبع به یک یا چند زبان برنامه‌نویسی، مانند ویژوال بیسیک، جاوااسکریپت، اسمال‌تاک، پایتون، جاوا، سی شارپ، سی پلاس‌پلاس و سی نوشته شده‌است.

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

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

آلن داونی در کتاب " چگونه به شکل یک استاد رایانه فکر کنیم " می‌نویسد:

جزئیات در زبان‌های برنامه‌نویسی مختلف متفاوت به نظر می‌رسند ولی تعدادی از ساختارهای اساسی در همه زبان‌های برنامه‌نویسی یکسان هستند:

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

 

فهرست مطالب:

عناصري كه نياز به حافظه دارند

عملیاتی که به حافظه نیاز دارند

راهبردهاي مديريت حافظه

اهميت مديريت حافظه

مراحل مديريت حافظه

بخش هاي حافظه در زمان اجرا

ساختار حافظه زمان اجرا

انواع مديريت حافظه

مديريت حافظه ايستا

مديريت حافظه پشته

مديريت حافظه heap

انواع مديريت حافظه heap

تخصيص حافظه از heap

مديريت حافظه heap با سلول هاي طول ثابت

ساختار ليست فضاي آزاد

بازیابی حافظه

برگشت صریح

راه حل ارجاع معلق

جمع آوری حافظه مازاد

الگوريتم شمارش ارجاع

مشکلات الگوريتم شمارش ارجاع

الگوريتم نشانه گذاري و پيمايش

الگوريتم جمع آوري كپي

heap با سلول هاي طول متغير

تخصيص اوليه و استفاده مجدد

استفاده از ليست فضاي آزاد و تخصيص حافظه

بازيابي حافظه با بلوك هاي طول متغير

و...


نظرات کاربران

نظرتان را ارسال کنید

captcha

فایل های دیگر این دسته

مجوزها،گواهینامه ها و بانکهای همکار

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