معنی computer programming

مهندسی كامپيوتر و IT
computer programming
برنامه نویسی کامپیوتر ، برنامه‌سازی رایانه‌ای
موارد مشابه با اصطلاح تخصصی انگلیسی computer programming
رایانه ؛ کامپیوتر ، کامپیوتر ، رایانه ماشینی که می تواند اطلاعات را به کمک دستورالعمل های اجرایی پردازش کند وژگی بارز یک کامپیوتر ، توانایی ذخیره سازی دستورالعمل های کامپیوتر توسط خود کامپیوتر است و با این توانایی ، بی نیاز از انسان برای نوشتن دستورالعمل جدید در هر نوبت ، عملیات بسیاری را انجام می دهد ، رایانه ، کامپیوتر ماشینی قادر به پیروی از دستورالعمل هایی برای تغییر داده ها به یک روش مطلوب و حداقل اجرای برخی از عملیات بدون دخالت انسان چنین فکر نکنید که کامپیوترها دستگاههایی تنها برای انجام عملیات حساب هستند ، اگر چه این عمل نیز یکی از وظایف کامپیوتر می باشد کامپیوترها کار ارائه و دستکاری متون ، نگاره سازی ، علایم و موسیقی ، همچنین اعداد را به عهده دارند ، تاریخچه استفاده از کامپیوتر بشر از دیر باز سرگرم اموری نظیر شمارش ‌ ، اندازه گیری و ظبط کردن اشیاء و نیز گزارش دادن اطلاعات در مورد اشیاء به همنوعان خود بوده است واژه ( اشیاء ) می تواند دلالت بر تعداد گوسفندان یک گله ، وزن یک کودک ، ابعاد یک زمین ، مدت زمان طی شده از آخرین خشکسالی یا شدت یک زمین لرزه را داشته باشد در مقابل کلمه ی Computer در دائره المعارفها نوشته شده است : محاسبه کردن ، تخمین زدن ، حساب کردن و ما Computer را به نام ماشین محاسبه گر می خوانیم کامپیوتر آخرین زنجیر از حلقه ماشین های محاسبه گر و ذخیره کننده اطلاعات می باشد البته چیزی که کامپیوتر را از دیگر ماشینهای محاسبه گر جدا کرده است ، در واقع سرعت ، دقت و اطمینان بالا در انجام کارهاست کامپیوترهای امروزی در مقیاس میلیونها عملیات در ثانیه اندازه گیری می شود هر چند ممکن است این عملیات ساده باشد ، اما ترکیب آنها به روشهای مختلف ، منجر به ظهور آرایش عظیمی از عملکردهای مفید می گردد این موضوع تقریبا تمام اتفاقی است که طی سه چهار دهه اخیر ( که معادل است با کل تاریخ کامپیوترهای تجاری ) به وقوع پیوسته است کامپیوترهای امروزی بسیار کوچکتر طراحی شده اند به طوری که به راحتی بر روی یک میز جا می گیرند چیزی که قبلا یک اتاق بزرگ را به طور کامل اشغال می کرد ، امروزه در یک جعبه کوچک جا می شود در عین حال که کامپیوترهای امروزی توانایی ذخیره اطلاعات بیشتر و سرعت بیشتر در محاسبه را دارند کامپیوتر ماشینی است که سه کار انجام میدهد : ورودی ساخت یافته را میپذیرد ، آن را بر طبق قوانین از پیش تعریف شده ای پردازش میکند ، و نتایج را به عنوان خروجی نمایش میدهد ، حسابگر الکترونی ، رایانه (کامپیوتر)
تاریخچه ی کامپیوتر - تاریخ وسایل محاسباتی مکانیکی به قرنهای قبل باز می گردد چرتکه که به وسیله حرکت مهره ها بر روی میله ها ، اطلاعات را ذخیره می کرد ، بتدایی ترین وسیله محاسباتی بود در سال 1642 میلادی آقای پاسکال ماشین برای جمع بستن ساخت که از چرخهای دندانه دار برای انتقال رقم نقلی به رقم بعدی استفاده می کرد در سال 1883 آقای کارلز بابیج مفهوم یک کامپیوتر با برنامهی ذخیره شده را ارائه داد متاسفانه ، دستگاههای مکانیکی روزگار او نمی توانست به طور قابل اعتمادی ار کند ف از این رو «موتور تحلیلی » هرگز تکمیل نشد بعدها دستگاه مهم دیگری برای پردازش داده به نام کارت پانچ ( کارت سوراخ شده ) توسط هرمان هالریث ساخته شد تا به اداره سر شماری آمریکا کمک کند که سرشماری 1980 را جدول بندی کند ( نگاه کنید به punched card ) ENIAC ) نخستین کامپیتوتر دیجیتالی الکترونیکی ، اختصار کلمات زیر است electronic numerical integrator calculator این کامپیوتر در سال 1946 در ارتش آمریکا به کار می فت درسال 1945 آقای جان ون نیومن مفهوم جدیدی از کامپیوتر با برنامه ی ذخیره شده را ارائه داد که در آن حافظه ی کامپیوتری می توانست هم داده و هم برنامه را ذخیره کند همزمان ، از طریق ساخت مولفه های الکترونیکی قابل اعتمادتر ، پیشرفتهای عمده ای انجام شد ENICA کامپیوتر بسیار بزرگی بود که با لامپهای خلا ساخته شده بود اختراع ترانزیستور در اواخر دهه ی 40 ساخت کامپیوترهای کوچکتری را ممکن ساخت که به خنک سازی کمتری نیاز داشتند پیشرفتها در مدارات مجتمع ادامه یافت این مدارها در اواخر دهه ی 50 ساخته شدند و موجب کوچک سازی هر چه بیشتر کامپیوتر ها شدند در اواسط دهه ی 70 پیشرفت مهمی روی داد و نخستین ریز کامپیوتر ساخته شد قبل از آن ، کامپیوتر ها بزرگ و گران بودند ف اما در حال حاضر ریز کامپیوتر ها چنان کوچک و ارزان قیمت اند که شرکتهای کوچک و افراد می توانند آنها را بخرند هسته ی اصلی ریز کامچیوتر تراشه ی ریز پردازنده ی آن است 80486 یا pentium تراشه ی ریز پردازنده هایی هستند که تمام واحد پردازش مرکزی را روی کی کریستال سیلیکان جای داده اند با پیدایش ریز کامپیوتر های قدرت مند و ارزان قیمت ، کامپیوتر کاربرد خانگی پیدا کرد
معماری کامپیوتر طراحی و ساختار داخلی کامپیوتر ، کامپیوتر ماشینی است که می تواند دستورالعمل ها را ذخیره کرده و اجرا کند ، از این رو ، این ماشین دو قسمت اصلی دارد ، ( حافظه ) و ( واحد پردازش مرکزی ( CPU ) که از طریق مجموعه ای از اتصالات الکتریکی موازی به نام گذرگاه ( BUS ) با یکدیگر ارتباط برقرار می کنند گذرگاه نیز به دستگاههای ورودی - خروجی ، مانند صفحه نمایش ، صفحه کلید و دیسک گردان ها متصل است cpu وقت خود را به بیرون کشیدن دستورالعمل ها از حافظه و انجام آنها می گویند صرف می کند هر دستورالعملی الگویی از بیت ها است ( 1 ، 0 های دودویی که به وسیله ی سیگنالهای خاموش و روشن بیان می شوند ) وقتی دستورالعمل ها به CPU می رسند CPU باید آن را رمز گشایی کرده ( تشخیص دهد ) و واحد عملیاتی شامل جمع کننده ها ضرب کننده ها ، مدارهای مقایسه ی الگوهای بیتی و است تمام این واحد ها از مدارهای منطقی ساخته شده اند برای نمونه ، نگاه کنید به cpu binaryaddition دارای ثباتهایی برای نگهداری داده است مثلاً برای جمع دو عدد cpu دو عدد را از خافظه بازیابی کدره و درون ثباتها قرار می دهد ، جمع انجام داده ف نتیجه را در ثبات دیگر می گذارد ، و در آخر آن را مجدداً به حافظه بر می گرداند در کامپیوترهای امروزی ، cpu یک مدار مجتمع واحد به نام ریز پردازنده است هر محل در حافظه آدرسی دارد آدرس ، یک الگوی بیتی ( عدد دودویی ) است که محل مورد نظر را معین می کند برای بازیابی انباشته های حافظه 011000011 cpu الگوی بیتی 011000011 را روی بخش آدرس گذارگاه قرار می دهد ، خط خواندن حافظه را فعال می کند و تا زمان مشخصی منتظر می ماند ، حافظه ، محتویات آن مکان را روی بخش داده ِ کارگاه قرار می دهد تا cpu بتواند آن را بخواند برای قرار دادن داده در حافظه ، cpu آدرس و داده را روی گذرگاه گذاشته و خط نوشتن حافظه را فعال می کند بعضی از کامپیوتر خطوط خواند ورودی و نوشتن ورودی نیز دارند که مانند خطوط به کار رقته برای دسترسی به حافظه است خطوط خواندن یا نوشتن مدخلها ( پورت ها ) برای دسترسی به دستگاههای ورودی / خروجی به ار می رود اثر کامپیوتر ها از نوعی معماری ( ون نیومن ) استفاده می کنند که به معنای ذخیره ی برنامه ها و داده در یک نوع حافظه است برخی از ریز کنترل کننده ها از معماری ( هاروارد ) با حافظه های جداگانه برای برنامه و داده استفاده می کنند ( زیرا ) برنامه ها همیشه rom نگهداری می شود اما داده باید قابل تغییر باشد برنامه نویس ها معمولاً دستورالعملهای cpu را نمی نویسند ، بلکه ، برنامه ها را به زبانی سطح بالا ، مانند c,BASIC یا پاسکال می نویسند ، و از یک کامپایلر برای ترجمه برنامه ها به زبان اسمبلی نوشته شود ، که به این ترتیب به صورتی مستقیم تر به زبان ماشین ترجمه می شود ، معماری کامپیوتری ، معماری رایانه ، معماری طرح و مشخصات کلی سیستم رایانه که نشان دهنده بخشهای عمده آن مانند حافظه و پردازشگر مرکزی و چگونگی ارتباط بین آنها باشد
اخلاق کامپیوتری - استفاده ی مسئولانه از کامپیوترها و شبکه های کامپیوتری استفاده ی نادرست از کامپیوترها بسیار کم است ، اما متأسفانه سوء قضاوت های جدی توسط افراد وجود دارد یادآوری چند نکته مهم : (1) افراد هنگام استفاده از کامپیوتر ، مسئولیت های قانونی و اخلاقی مشابهی مانند زمانهای دیگر دارند ؛ تهمت ، فریب ، اذیت و ، چه هنگام کار با کامپیوتر و یا هر زمان دیگر غلط است ، و مستوجب جریمه می شود استفاده از کامپیوتر بدون کسب اجازه ی مالک آن دزدی است ؛ خراب کردن داده ی کامپیوتری به کمک ویروس کامپیوتری نیز جرم محسوب می شود (2) کامپیوترها لزوماً از تمام اعمال نادرست جلوگیری نمی کنند کاربران ، مسئول عملکردهای خود هستند مثلاً اگر کامپیوتری به گونه ای نادرست تنظیم شود ، به طوری که افراد غیر مسئول بتوانند کلمه ی عبور از آن استفاده کنند ، این امر هرگز مجوز استفاده ی غیر مسئولانه را صادر نمی کند ، همچنان که اگر در منزل نادرست قفل شده باشد ، مجوزی برای ورود غیر مجاز نیست (3) برخی از اطلاعات ذخیره شده در کامپیوترها خصوصی هستند و نباید مورد سوء استفاده قرار گیرند ؛ رکودهای اعتبار ، رکوردهای تحصیلی و نظایر آن ، از جمله موارد اطلاعات خصوصی هستند (4) ارتباطات الکترونیکی اط نظر خصوصی بودن تضمین نمی شوند نمی دانید که نامه ی الکترونیکی شما چه مسیری را طی می کند ، یا چه کسی ممکن است نامه ی شما را در مسیر ببیند از این رو ، شماره ی کارت اعتباری یا اطلاعات محرمانه را با پست الکترونیکی ارسال نکنید ، مگر اینکه از امنیت مسیر مطمئن باشید همچنین باید بدانید که نامه ی الکترونیکی را می توان جعل کرد ؛ همچنین تضمینی نیست که قطعه ای از نامه حقیقتاً از جانب فرد یا محلی ارسال شده باشد که عنوان آن را نشان می دهد (5) کاربران باید به حق ثبت و مجوزهای نرم افزار احترام بگذارند قیمت هر قطعه از نرم افزار ، بیشتر از هزینه ی دیسک و کتابچه ی راهنماست ؛ این قیمت شامل هزینه ی توسعه ی نرم افزار نیز می شود اگر افراد بابت نرم افزار پولی نپردازند ، از نرم افزار هم خبری نیست (6) سازندگان ، برنامه نویسان و مشاوران مستقل ، مسئول مشتریان خود هستند ادعای خبرگی بیش از حد توانایی درست نیست ، فروش محول ناقص نیز نادرست است البته هیچ سازنده ی نرم افزاری ، ب طور 100% محصول خود را تضمین نمی کند ، اما باید پشتیبانی های پس از فروش را بپذیرد در گذشته بسیاری از سازندگاه ، مسئولیت کارایی محصولات خود را بر عهده نمی گرفتند ، اما امروزه جامعه ی کاربران این بی قیدی را تحمل نمی کنند ( 7) در شبکه ی اینترنت ، شما مهمان دیگران هستید هزینه ی اینترنت توسط مراکزی پرداخت می شود که پیامها را دریافت می کنند و مرکز فرستنده مسئولیتی از نظر مالی ندارد از این رو ، باید مراقب باشید که چه چزی و به چه کسی ارسال می کنید برای شناخت بیشتر جنبه های اخلاقی اتباطات کامپیوتری ، نگاه کنید به Internet ; usenet ; spamming ; spoofing ; netiquette
خانواده کامپیوتر ، [خانواده کامپیوتر] اصطلاحی در مورد گروهی از کامپیوترها که براساس یک ریز پردازنده یا مجموعه ای از ریز پردازنده های مرتبط ساخته شده و ویژگیهای طراحی مشترکی دارند به عنوان مثال ، کامپیوترهای اپل مکینتاش ، از مکینتاش اولیه گرفته تا کوآدرا ، خانواده ای هستند که شرکت اپل آنها را براساس ریز پردازنده های ‎68000 ، ‎68020 ، ‎ 68030 و ‎68040 موتورولا طراحی کرده است به همین ترتیب ، کامپیوترهای شخصی آی بی ام و مدلهای نسل دوم ‎ PS/2 را میتوان از خانواده ‎ IBM PC دانست که براساس ریز پردازنده های ‎ iAPx86 اینتل ساخته شده اند از یک نقطه نظر دیگر میتوان کامپیوترهای دارای یک ریز پردازنده مشابه را یک خانواده دانست در این صورت ، مدلهای آی بی ام و کامپیوترهای سازگار با آن که توسط کارخانجات مختلف ساخته شده اند را میتوان به عنوان بخشی از گروه بزرگ خانواده ‎ iAPx86 در نظر گرفت در حال حاضر اعضای خانواده های مختلف میکرو کامپیوترها با هم سازگار نیستند
قدرت کامپیوتر ، [قدرت کامپیوتر] توانایی کامپیوتر در انجام کارها اگر این توانایی را در تعداد دستورالعملهایی بدانیم که کامپیوتر در یک مدت زمان خاص میتواند انجام دهد ، قدرت کامپیوتر با واحد میلیون دستورالعمل در ثانیه (‎MIPS) یا میلیون عملیات نماد علمی در ثانیه (‎MFLOPS) سنجیده میشود قدرت کامپیوتر به روشهای دیگر نیز اندازه گیری میشود که به کاربرد خاص آن بستگی دارد کاربران و خریداران کامپیوتر ، قدرت آن را اغلب مقدار حافظه با دستیابی مستقیم (‎RAM) ، سرعت پردازنده ، یا تعداد بیتهایی که کامپیوتر در یک لحظه میتواند با آنها کار کند (‎8 ، ‎16 ، ‎ 32 و غیره) در نظر میگیرند دو معیار مهم دیگر را میتوان سازگاری و کار کردن اجزای کامپیوتر با هم و مناسب بودن آنها برای عملیات مربوطه ، دانست از آن جایی که کامپیوتر مجموعه ای است از بخشهای مختلف ، از یک دید میتوان گفت که قدرت آن به اندازه کند ترین یا ضعیفترین قسمتهای آن (از جمله خود کاربر) میباشد به عنوان مثال ، اگر دیسک سخت سرعت پایینی داشته باشد ، کامپیوتر هر چه قدر هم که سریع و قوی باشد ، هنگام انجام عملیات مربوطه به دیسک سخت ، تضعیف میشود نیز نگاه به ‎ access time ، ‎ benchmark ، ‎ MFLOPS ، ‎ MIPS
علوم کامپیوتر ، علوم کامپیوتر ؛ علم کامپیوتر ، علم کامپیوتر - مطالعه ی ریاضی و علمی و کارایی های احتمالی کامپیوتر علم کامپیوتر زمینه ی بسیار گسترده ای است که شامل ریاضیات محض ( نگاه کنید به helting problem , complexity theory ) ، مهندسی ( نگاه کنید به computer architecture) ، مدیریت ( نگاه کنید به software engineering ) و حتی مطالعه ی فکر بشر ( نگاه کنید به artificial intelligence) است در حقیقت متخصصان علم کامپوتر ، غالباً در هر زمینه ای که کامپیوتر کابرد داشته باشد ، فعالیت می کند امروزه علم کامپیوتر از آموزش صرف فراتر رفته است ، و حتی درک تکنولوژی آینده به کمک علم کامپیوتر امکان پذیر است ، علم رایانه ، [علم کامپیوتر] مطالعه کامپیوترها از جنبه های طراحی ، عملیات و کاربرد آنها در پردازش اطلاعات علم کامپیوتر با هر دو جنبه تئوری و عملی مهندسی ، الکترونیک ، تئوری اطلاعات ، ریاضیات ، منطق و رفتارهای بشری سرو کار دارد علم کامپیوتر از برنامه نویسی و معماری کامپیوتر گرفته تا هوش مصنوعی و روباتها را شامل میشود
حفاظت کامپیوتر - حفاظت کامپیوترها از تحریف ، خطرات فیزیکی ، و افشاس ناخواسته ی داده ظهور کامپیوترهای شخصی موجب شده است تا رکوردهای مهم تجاری یا داده ی محرمانه کمشده ، مورد دستبرد قرار گرفته ، یا سوء استفاده شود کامپیوترها را باید از انواع خطرات زیر محافظت کرد (1) خرابی ماشین به طور دوره ای از فایلهای مهم پشتیبان تهیه کنید هر دیسک گردان وسیله ای است که روزی خراب می شود و تمام داده از بین می رود (2) خطرات فیزیکی کامپیوتر را از آتش ، سیل ، و خطرات مشابه محافظت نموده ، و فایلهای پشتیبان را در محل امنی ذخیره کنید به یاد داشته باشید که ممکن است دزد ماشین را نیز ببرد ؛ تعداد رو به افزایش دزدان کامپیوتر ، به دنبال اطلاعات هستند تا تجهیزات هنگام مسافرت با کامپیوتر چمدانی ، هرگز آن را از خود دور نکنید ، بسیاری از دزدی ها در محل بازرسی فرودگاه انجام مب شود : کامپیوتر را در دست خود بگیرد و هنگام بازرسی امنیتی در فرودگاه آن را به خودتان نزدیک کنید ( 3) خطای اپراتور حذف اتفاقی اطلاعات بسیار آسان است رفع این خطر بوسیله ی نرم افزاری است که اطلاعات پاک شده را بر می گرداند ( 4) تحریف کامپیوتری آیا کسی می تواند بدون اطلاعات شما رکودهای خود را تغییر دهد ؟ به یاد داشته باشید که بسیاری از افراد چگونگی استفاده از نرم افزارهای عمومی تجاری را می دانند درصورت امکان ، از نرم افزاری استفاده می کنید که عوامل تغییر را رکورد ( چه کسی و چه وقت ) را ثبت کند و برای تغییرات غیر معمول کلمه ی عبور بخواهد (5) برنامه نویسی کینه جویانه اخیراً کسانی با نوشتن برنامه های کامپیوتری ویرانگر از طریق شبکه ی اینترنتی به گونه ای کینه ورزی نموده و در صدد خراب کردن سیستمهای دیگران بر می آیند نگاه کنید به black window ; trojan horse (6) داخل شدن به وسیله مودم یا شبکه مطمئن شوید که از تمام احتمالات اتصال به کامپیوتر خود از جای دیگر آکاهید ، و تمام مجوزهای دسترسی فایلها را بررسی نموده اید نوع سیستم عامل UNIX که برای کاربرد آزمایشگاهی طراحی شده ، اسیب پذیر است ، زیرا فاقد ابزار حفاظتی است (7) کلمات عبوری که به سادگی می توان آن را حدس زد کلمه ی عبور کامپیوتری هرگز نباید حروف اول نام و نام خانوادگی ، لقب ، نام فرزند ، روز تولید و باشد همچنین نباید از کلماتی استفاده کرد که در هر زبانی به سادگی تلفظ می شوند (8) اقدامات فرا امنیتی تلاش زیادی برای بالا بردن امنیت کامپیوتر ، به سادگی می تواند بهره وری کامپیوتر را کم کند در تحلیل نهایی ، امنیت تمام کامپیوتر ها به اعتماد پذیری انسانی وابسته است ، بر اعتماد پذیری مردم بیشتر از امنیت ماشین توجه کنید یعنی مطمئن شوید که کارمندان قابل اعتماد بوده و افراد غیر مسئول ، به ماشین دسترسی ندارند ، سپس به کاربران مسئول ، تمام مجوزهای لازم را برای انجام مؤثر کارهایشان ارائه دهید ، حفاظت کامپیوتر اقدامات امنیتی که جهت حفاظت از کامپیوتر و اطلاعات موجود در آن صورت می گیرد حفاظت کامپیوتر از نوع سیستم و حساسیت اطلاعات ، سطوح مختلفی دارد در سیستم های بزرگ یا سیستم های مربوط به امورمالی یا اطلاعات محرمانه ، حفاظت کامپیوتر یک امر کاملا تخصصی است که مهارت قانونی و فنی در آن مورد نیاز است در میکروکامپیوترها ، حفاظت شکل ساده تری دارد محافظت از داده ها را می توان باتهیه کپی پشتیبان از فایل ها و نگهداری نسخه هایی از آنها در محلهایی جداگانه ، و صحت داده ها را می توان با تعیین کلمه رمز برای فایل ها ، تعیین صفت "فقط خواندنی" برای آنها ، قفل کردن فیزیکی دیسک سخت ، ذخیره اطلاعات حساس روی فلاپی و نگهداری آنها در محلهای امن ، و نصب برنامه های محافظ در برابر ویروسها ، نأمین نمود در کامپیوتری که اشخاص زیادی با آن کار می کنند ، جنبه امنیتی را می توان با تعیین کلمه رمز برای آنها و محدودکردن دستیابی به اطلاعات حساس به افراد مجاز ، رعایت نمود
برنامه نویسی شیء گرا- نوعی روش برنامه نویسی که در آن برنامه نویس نه فقط انواع داده ها ، بلکه رویه هایی را که به طور خودکار به آنها مربوط اند نیز تعریف می کند بسیاری از زبانهای برنامه نویسی ، به برنامه نویس امکان تعریف انواع داده های جدید مانند رکوردها ، آرایه ها و فهرستهای پیوندی را می دهند (نگاه کنید به data structures ) در برنامه نویسی شی گرا ، برنامه نویس می تواند مجموعه ای از رویه ها (روشها) را با هر نوع داده ای مرتبط کند انواع داده ها با رویه های مربوط به خود ، Classes نام دارند رویه های گوناگونی که برای انواع مختلف داده ها ، کارهای گوناگونی انجام می دهند ، polymorphism نام دارند مثلاً ممکن است یک روش « ترسیم» برای دایره ها و روش دیگری برای مستطیل ها وجود داشته باشد برخی از کاربردهاهای برنامه نویسی شیء گرا شامل موارد زیر است : (1) اشیا گرافیکی : برنامه ای که خطوط ، دایره ها ، مستطیل ها و مانند آن را دستکاری می کند و می تواند یک رویه ی «رسم» و « حرکت» برای هر یک از انواع داده ها داشته باشد (2) اشیای ریاضیاتی: به جای کار با بردارها ، ماتریس ها ، یا اشیای دیگر ریاضیاتی ، برنامه نویس نه فقط مجبور است ساختارهای داده را برای این اشیا تعریف کند ، بلکه باید عملیاتی مانند جمع ، وارونه کردن ، یا یافتن یک دترمینال را نیز تعریف کند (3) دستگاههای ورودی و خروجی : ترسیم یک خط بر روی چاپگر یا پلاتر ، ممکن است با ترسیم آن بر روی صفحه نمایش تفاوت داشته باشد برنامه نویس شیء گرا روش ساده ای را تهیه می کند تا از درستی کاربرد رویه در هر دستگاه اطمینان دهد (4) شبیه سازی : در برنامه ای که جریان ترافیک را شبیه سازی می کند ، انواع گوناگونی از اشیاهایی وجود دارد که هریک برای پاسخ دادن به نورهای قرمز ، موانع جاده ، و رویه ی خاص خود را دارند ، برنامه نویس شیء گرا نیز به همین دلیل به کار می رود نخستین زبان برنامه نویسی شیء گرا ، Simula نام داشت که در سال 1967 معرفی شد (5) مؤلفه های نرم افزاری که مجدداً مورد استفاده قرار می گیرد : این زبان روش قدرتمندی را تأمین می کند تا مؤلفه هایی ساخته شود که برنامه ها از آنها به وجود آمده و به کار روند مثلاً یک برنامه نویس ممکن است از یک شیء از پیش تعریف شده ، مانند « فهرست مرتب شده » ( فهرستی که به طور خودکار ، خود را مرتب نگه میدارد) استفاده کند و نیازی به نوشتن رویه ای برای انجام کار نداشته باشد در اینجا یک نمونه ی برنامه نویسی شیء گرا به زبان توربو پاسکال ارائه می شود برنامه ای را تصور کنید که نقاط ، خطوط و دایره ها را دستکاری می کند یک نقطه شامل یک مکان و همچنین رویه ای برای نمایش آن است از این رو برنامه نویس ، یک نوع داده را به نام pointtype و به شرح زیر تعریف میکند: TYPE pointtype OBJECT X,y: INTEGER; PROCEDURE draw END ; این موضوع مانند تعریف یک رکورد است ، با این تفاوت که به یک رویه draw رجوع میکند: PROCEDURE pointtype draw ; BEGIN PutPixel (x,y, white ) END ; حالا متغیرهای نوع pointtype می توانند تعریف شوند ؛ مانند ؛ VAR a , b: pointtype ; در اینجا اشیای a و b مانند رکوردهایی هستند که یک فیلد x ,y نیز دارند ؛ x , y به نام instance variables ( متغیرهای لحظه ای ) معروف هستند همچنین a وb به رویه ی point draw نیز مربوط می شوند چگونگی استفاده از آنها چنین است : a x : 100 ; a y: 150 ; a draw ; این جمله ها در فیلدهای xو y از a مقادیر 100 و 150 را قرار می دهد و سپس رویه ی draw را که با a در ارتباط است ، می خواند ( رویه ی pointtype draw ) اکنون می خواهیم رسم دایره را انجام دهیم یک دایره مانند یک نقطه است ، با این تفاوت که علاوه بر x و y یک شعاع نیز دارد روش ترسیم دایره نیز متفاوت است می توانیم یک نوع داده به نام circletype تعریف کنیم که ویژگی های pointtype را ارث می برد ( یعنی شامل هر چیزی می شود که pointtype دارای آن است) با این تفاوت که یک متغیر لحظه ای به نام radius را اضافه کرده و روش ترسیم دیگری به کار می برد توجه داشته باشید که متغیرهای لحظه ای به اشیای مستقل و جداگانه ای مانند a,c و b متعلق اند ، اما روشها ( رویه ها ) به انواع اشیا تعلق دارند امتیاز برنامه نویسی شیءگرا این است که رویه های درست را با هر شیئی مرتبط می کند: c draw از رویه ی ترسیم دایره استفاده می کند ، زیرا شیء c یک دایره است اما a draw رویه ی ترسیم نقطه را به کار می برد ، زیا شیء a یک نقطه است محل فراخوان یکی از روشهای شیء گاهی به عنوان « ارسال یک پیام » به شیء شرح داده می شود ( مثلاً ، c draw یک پیام به c ارسال کرده و اعلام می کند که : « خودت را رسم کن!» ) تمام سیستمهای برنامه نویسی شیء گرا فقط یک رده ( کلاس ) از انواع داده ها را امکان می دهند تا از دیگری ارث ببرد ( مانند circletype و pointtype در نمونه های فوق ) برخی از این سیستمها نیز ارث بری چندگانه یا multiple inheritznce را ممکن می سازند در ارث بری چندگانه ، یک رده ( کلاس ) از انواع داده ها می تواند به صور ترکیبی از دو یا چندین کلاس موجود تعریف شود نگاه کنید به ++smalltalk ; c ، برنامه ‌نویسی مقصودگرا / شی گرا ، [برنامه نویسی موضوعی ، برنامه نویسی موجودیت گرا] با حروف اختصاری ‎ OOP ، نوعی برنامه نویسی است که در آن ، یک برنامه به عنوان مجموعه ای از موضوعات مجزا دیده میشود که هر یک حاوی مجموعه ای از ساختارهای داده ای و روالهای مرتبط با موضوعات دیگر هستند ساختارهای داده ای و روالهای یک موضوع به وسیله گروهی تعریف میشوند در برخی از زبانهای موضوعی ، موضوعات به پیغامها که وسیله اصلی ارتباطات هستند ، پاسخ میدهند زبانهای موضوعی دیگر همان مکانیسم فراخوانی رویه را حفظ میکنند نیز نگاه کنید به ‎ C++ ، ‎ object ، ‎ Objective-C
برنامه نویسی ساخت یافته ، برنامه نویسی ساختاری ، برنامه نویسی ساختار یافته ، برنامه نویسی ساخت یافته - روشی در برنامه نویسی که بر منطق ، بخش بندی ( ماجول بندی ) ، و اجتناب از به کارگیری عبارت GOTO ( که ذاتاً منبع خطاست ) تأکید دارد یکی از موانع مهم در توسعه ی نرم افزار کامپیوتری بهتر ، محدودیت توان بشر در درک برنامه هایی است که می نویسد برنامه نویسی ساخت یافته ، اسلوبی از برنامه نویسی است که برنامه ها را قابل فهم تر و کم خطاتر می سازد از آنجا که برنامه نویسی ساخت سافته ، حرکت مشهوری است ، می توان آن را به چندین روش تعریف کرد با این حال ، این روش برنامه نویسی معمولاً شامل موارد زیر است : (1) ساختار بلوکی : عبارت در برنامه باید در گروههای عملکردی سازماندهی شوند (2) اجتناب از پرشها: ( « برنامه نویسی بدون GOTO » ) به روش ریاضی می توان اثبات کرد که وقتی یک زبان ساختارهایی معادل عبارات IF-THEN و WHILE در پاسکال دارد ، نسازی به عبارت GOTO ندارد همچنین عبارتهای GOTO غالباً موجب خطای برنامه نویسی شده و برنامه نویس را گمراه می کند طرفداران برنامه نویسی ساخت یافته ، فقط تحت شرایط بسیار محدودی اجازه ی استفاده از GOTO را می دهند ( مثلاً ، سر و کار داشتن با شرایطی که کاملاً منطق برنامه را نادیده می گیرد ) (3) بخش بندی ( ماجول بندی ) : اگر دنباله ی عبارتی بدون وقفه بیش از 50 خط داشته باشد ، به دلیل فقدان زمان لازم برای فهم آن توسط انسان و پیگیری اطلاعات ، برنامه ها باید به زیر روال هایی تقسیم شوند ، حتی اگر یک زیر روال فقط یک بار احضار شود در این حالت برنامه نویس برنامه ی اصلی را به صورت یک طرح کلی می خواند و هرگز به درک بیش از یک ثفحه ی برنامه در یک زمان نیازی نخواهد داشت( برنامه نویس باید بداند که زیر روال ها چه کاری را انجام می دهند ، نه اینکه چگونه آن را انجام می دهند) این اصل گاهی « پنهان سازی اطلاعات » نامیده می شود؛ اطلاعات نامربوط باید از مسیر برنامه نویس خراج شود ، [برنامه نویسی ساختاری ، برنامه نویسی ساخت یافته] یک اصطلاح کلی برای روش برنامه نویسی خاصی که برنامه ها را با جریان و طرح واضح ، و درجه ای از ساختار واحدی یا سلسله مراتبی تهیه میکند از مزایای این روش برنامه نویسی ، سهولت در حفظ و خوانایی آن برای برنامه نویسان میباشد مقایسه کنید با ‎ ; spaghetti code نیز نگاه کنید به ‎ object-oriented programming

دیکشنری تخصصی انگلیسی به فارسی مهندسی كامپيوتر و IT بر اساس حروف الفبا

A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

دیکشنری تخصصی فارسی به انگلیسی مهندسی كامپيوتر و IT بر اساس حروف الفبا

آ | ا | ب | پ | ت | ث | ج | چ | ح | خ | د | ذ | ر | ز | ژ | س | ش | ص | ض | ط | ظ | ع | غ | ف | ق | ک | گ | ل | م | ن | و | ه | ی |
اگر این اصطلاح تخصصی مهندسی كامپيوتر و IT از انگلیسی به فارسی مفید بود آن را با دوستان خود به اشتراک بگذارید

دیکشنری تخصصی به تفکیک دپارتمان ها و رشته ها


دیکشنری تخصصی هنر

درباره دیکشنری تخصصی برساد


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

تماس با ما



Telegram: @Barsadic
وبلاگ برساد

×
می خوای مقاله ISI مهندسی كامپيوتر و IT رو برات ترجمه کنیم؟ سریع کلیک کن