کتاب های برچسب Programming Languages
تاریخ: 1399/07/01 22:41
توسط: MotoMan
امتیاز: ۲

تا حالا شده که زمان زیادی را برای کد نویسی یک الگوریتم اشتباه هدر داده باشید؟ از ساختمان داده ای استفاده کنید که بسیار پیچیده باشد؟ برنامه ای را تست کرده باشید اما یک مشکل واضح را از قلم انداخته باشید؟ یک روز را صرف جستجوی باگی کرده باشید که باید در عرض پنج دقیقه آن را پیدا می‌کردید؟ لازم است که برنامه سه برابر سریعتر اجرا شود و از حافظه‌ی کمتری استفاده کند؟ تلاش کرده اید که برنامه ای را از یک workstation به یک PC منتقل کنید یا بالعکس؟ سعی کرده اید تغییر ناچیزی در برنامه شخص دیگری ایجاد کنید؟ دوباره برنامه ای را باز نویسی کرده اید زیرا نمی‌توانستید آن را درک کنید؟

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

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

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

تعداد بازدید: ۲۸۰۹
دیدگاه ها: ۰
تاریخ: 1399/06/20 18:51
توسط: MotoMan
امتیاز: ۱
برچسب ها: Programming Languages |Coding |

کامپیوتر مانند ویولن است. می‌توانید تصور کنید که یک تازه کار ابتدا یک دستگاه گرامافون و سپس یک ویولن را امتحان کند؛ در مورد دومی خواهد گفت که افتضاح است. این استدلالی است که ما از انسان گرایان و اکثر دانشمندان علوم کامپیوترمان شنیده ایم. آنها می‌گویند، برنامه‌های کامپیوتری برای اهداف بخصوصی خوب هستند، اما انعطاف پذیر نیستند. هیچ یک از ویولن‌ها یا ماشین‌های تحریر هم اینگونه نیستند، تا زمانی که نحوه استفاده از آن را یاد بگیرید.
کتاب Structure and Interpretation of Computer Programs، در دهه گذشته تاثیر چشمگیری در برنامه‌ی آموزشی علوم کامپیوتر داشته است. ویرایش دوم کتاب «ساختار و تفسیر برنامه‌های کامپیوتری» که مورد بازنگری قرار گرفته است، شامل تغییراتی در متن کتاب است. پیاده سازی‌های جدیدی از اکثر سیستم‌های اصلی برنامه نویسی در این کتاب وجود دارد، از جمله مفسر‌ها و کامپایلر ها؛ و نویسندگان تغییرات کوچک زیادی را در این کتاب گنجانده اند که منعکس کننده تجربه آنها در تدریس دوره‌ها در MIT از زمان ویرایش اول کتاب است. در این کتاب زمینه جدیدی معرفی شده است که بر نقش اصلی بازی شده توسط رویکرد‌های مختلف در برخورد با زمان در مدل‌های محاسباتی تاکید دارد: اشیا با وضعیت، برنامه نویسی همزمان، برنامه نویسی تابعی، ارزیابی به تاخیر افتاده و برنامه نویسی غیر قطعی. علاوه بر این، تمامی برنامه‌ها باز نویسی شده اند تا در تمامی پیاده سازی‌های Schema که به استاندارد IEEE پایبند هستند، اجرا شوند.

 

تعداد بازدید: ۲۶۹۹
دیدگاه ها: ۰
تاریخ: 1398/12/27 14:20
توسط: MotoMan
امتیاز: ۱
برچسب ها: Programming Languages |

ویرایش دوازدهم کتاب Concepts of Programming Languages، با بحث در مورد مسائل طراحی ساختار‌های مختلف زبان‌های برنامه نویسی، بررسی گزینه‌های طراحی برای این ساختار‌ها در برخی از رایج‌ترین زبان‌ها و مقایسه انتقادی گزینه‌های طراحی، مفاهیم اساسی زبان‌های برنامه نویسی را توضیح می‌دهد.

هرگونه مطالعه جدی در مورد زبان‌های برنامه نویسی، نیاز به بررسی برخی از مباحث مرتبط دارد؛ از جمله روش‌های رسمی توصیف نحو و معانی زبان‌های برنامه نویسی که در فصل 3 ارائه شده است. همچنین باید تکنیک‌های پیاده سازی ساختارهای مختلف زبانی در نظر گرفته شود ازجمله تجزیه و تحلیل لغوی و نحو که در فصل 4 مورد بحث قرار می‌گیرد و پیاده سازی پیوند زیر برنامه که در فصل 10 پوشش داده شده است. همچنین پیاده سازی برخی از دیگر ساختار‌های زبانی در دیگر بخش‌های مختلف کتاب بحث شده است.

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

 

تعداد بازدید: ۲۲۰۶
دیدگاه ها: ۰
تاریخ: 1398/07/04 18:33
توسط: MotoMan
امتیاز: ۱
برچسب ها: Programming Languages |Coding |

کتاب مفاهیم در زبان‌های برنامه نویسی، مفاهیم اصلی در برنامه نویسی مورد استفاده در زبان‌های برنامه نویسی مدرن مثل تابع ها، نوع ها، مدیریت حافظه و کنترل را توضیح داده است. این کتاب در ارائه جامع و مقایسه زبانهای مهم برنامه نویسی شی گرا بی نظیر است. فصل‌های جداگانه ای، تاریخچه اشیا، Simula و Smalltalk و زبان‌های مهم سی پلاس پلاس و جاوا را مورد بررسی قرار داده اند. در این کتاب، مباحث بنیادی مانند محاسبات لامبدا و denotational semantics، را به شکلی آسان و غیر رسمی و با تمرکز بر بینشهای اصلی ارائه شده توسط این نظریه‌ها ارائه می‌دهد.

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

تعداد بازدید: ۳۰۶۵
دیدگاه ها: ۰
تاریخ: 1398/04/20 20:02
توسط: MotoMan
امتیاز: ۱

برنامه نویسی کامپیوتر انتزاعی نیست و برنامه‌ها بر روی یک ماشین اجرا می‌شوند. دانستن این که کامپیوتر‌ها چگونه کار می‌کنند و برنامه‌ها به چه شکل بر روی آن‌ها اجرا می‌شوند، برای این که برنامه نویس بهتری شوید، ضروری است. همچنین درک تکنولوژی‌های پایه می‌تواند به شما کمک کند تا وقتی که چیزی درست کار نمی‌کند از آن سر در آورید.

کتاب Secret Life of Program یا Foundations of Computer Programming سابق، شکاف‌های موجود در آموزش کامپیوتر را با نشان دادن آن چه در پشت صحنه برنامه نویسی در سطح ماشین رخ می‌دهد، پر می‌کند. خوانندگان این کتاب یاد می‌گیرند که نرم افزار وقتی که بر روی سخت افزار اجرا می‌شود چگونه رفتار می‌کند؛ چگونه برنامه‌ها داده‌ها را در حافظه دستکاری می‌کنند؛ چگونه کامپیوتر‌ها زبان‌ها را پردازش می‌کنند و این که مرورگرهای وب چگونه کار می‌کنند. در این کتاب همچنین یاد خواهید گرفت که چگونه برنامه‌های کارآمد بنویسید و مبانی امنیت کامپیوتر و ملاحظاتی که هنگام کد نویسی باید در ذهن داشته باشید را رعایت کنید.

تعداد بازدید: ۳۰۵۷
دیدگاه ها: ۰
تاریخ: 1392/10/08 07:22
توسط: MotoMan
امتیاز: ۱۱

Test-driven, test-first, and test-early development practices are helping thousands of software development organizations improve their software. Now, in Quality Code: Software Testing Principles, Practices, and Patterns, Stephen Vance builds on all that’s been learned about test-driven development, helping you achieve unprecedented levels of first-time quality. Using real-world code examples, this guide introduces patterns, principles, and more than two dozen detailed techniques for testing any software system more fully, effectively, and painlessly. Vance presents a conceptual framework to help you focus your efforts and design recommendations for improving testability across the software lifecycle, and also provides hands-on guidance to simplify testing of the full spectrum of code constructs. You’ll learn how to choose the best testing techniques for every situation, from the most common scenarios to threading. Two complete case studies put it all together, walking you through testing a brand-new Java application and an untested “legacy” JavaScript jQuery plugin. Whether you’re developing cutting-edge code for a new start-up, or maintaining an unruly old system, this guide will help you deliver exactly what you need: quality code.

تعداد بازدید: ۷۷۸۶
دیدگاه ها: ۰
تاریخ: 1392/10/03 22:07
توسط: MotoMan
امتیاز: ۲
برچسب ها: Programming Languages |

یک زبان برنامه نویسی یک زبان مصنوعی است که برای بیان محاسباتی که توسط یک ماشین (مخصوصا رایانه) قابل انجام است، طراحی شده‌است.زبان‌های برنامه نویسی برای ایجاد برنامه‌هایی به کار می‌روند که رفتار یک ماشین را مشخص می‌کنند، الگوریتم دقیق را بیان می‌کنند، و یا روشی برای ارتباط انسانند. بسیاری از زبان‌های برنامه نویسی تعدادی قالب از ویژگی‌های نوشته شده دستوری(syntax) و معناشناسی (semantics) دارند، چرا که رایانه‌ها دستورات دقیقا مشخص نیاز دارند. برخی توسط سند خصوصیات (specification document) تعیین شده‌اند. (برای مثال یک استاندارد ISO)، در حالی که برخی دیگر دارای پیاده سازی غالبی می‌باشند.(مانند Perl) اولین زبان برنامه نویسی به قبل از اختراع رایانه باز می‌گردد، و برای هدایت رفتار ماشین‌هایی مانند دستگاه‌های نساجی اتوماتیک و نوازنده‌های پیانو به کار می‌رفت. هزاران زبان برنامه نویسی خلق شده‌اند، بیشتر در زمینهٔ رایانه، زمینه‌ای که هر ساله بسیاری دیگر ایجاد می‌شوند.

این جزوه تایپ شده درس طراحی و پیاده سازی زبان‌های برنامه سازی است و مدرس این درس نیز استاد آرمان علاء در دانشگاه آزاد نجف آباد  است.

تعداد بازدید: ۳۰۰۳
دیدگاه ها: ۱
تاریخ: 1392/07/28 07:39
توسط: MotoMan
امتیاز: ۹
برچسب ها: Programming Languages |

یک زبان برنامه نویسی یک زبان مصنوعی است که برای بیان محاسباتی که توسط یک ماشین (مخصوصا رایانه) قابل انجام است، طراحی شده‌است.زبان‌های برنامه نویسی برای ایجاد برنامه‌هایی به کار می‌روند که رفتار یک ماشین را مشخص می‌کنند، الگوریتم دقیق را بیان می‌کنند، و یا روشی برای ارتباط انسانند. بسیاری از زبان‌های برنامه نویسی تعدادی قالب از ویژگی‌های نوشته شده دستوری(syntax) و معناشناسی (semantics) دارند، چرا که رایانه‌ها دستورات دقیقا مشخص نیاز دارند. برخی توسط سند خصوصیات (specification document) تعیین شده‌اند. (برای مثال یک استاندارد ISO)، در حالی که برخی دیگر دارای پیاده سازی غالبی می‌باشند.(مانند Perl) اولین زبان برنامه نویسی به قبل از اختراع رایانه باز می‌گردد، و برای هدایت رفتار ماشین‌هایی مانند دستگاه‌های نساجی اتوماتیک و نوازنده‌های پیانو به کار می‌رفت. هزاران زبان برنامه نویسی خلق شده‌اند، بیشتر در زمینهٔ رایانه، زمینه‌ای که هر ساله بسیاری دیگر ایجاد می‌شوند.

این جزوه تایپ شده درس طراحی و پیاده سازی زبان‌های برنامه سازی است و مدرس این درس نیز استاد دکتر نور اله در موسسه پارسه است.

تعداد بازدید: ۱۳۲۴۵
دیدگاه ها: ۵
تاریخ: 1392/07/27 21:36
توسط: MotoMan
امتیاز: ۹
برچسب ها: Programming Languages |

در این جزوه تلاش شده است تمام سرفصلهای درس پوشش داده شود. ذکر این نکته مهم، ضروری است که این جزوه جهت کمک به دانشجویان در جهت کاهش یادداشت برداری، ترسیم شکلها ، مثالها در هنگام تدریس بوده است. بنابر این در کنار این جزوه ،هر دانشجو مطابق با ذوق و سلیقه خود جزوه ای دست نویس، حاوی یادداشت -هایی به منظور تکمیل و تفهیم مطالب این جزوه ، خواهد داشت.  

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

تعداد بازدید: ۷۸۳۳
دیدگاه ها: ۴
loading...

لطفا منتظر بمانید...