دانلود کتاب Animated Problem Solving: An Introduction to Program Design Using Video Game Development (Texts in Computer Science) (به فارسی: حل مسئله متحرک: مقدمه ای بر طراحی برنامه با استفاده از توسعه بازی های ویدیویی (متون در علوم کامپیوتر)) نوشته شده توسط «Marco T. Morazán»
اطلاعات کتاب حل مسئله متحرک: مقدمه ای بر طراحی برنامه با استفاده از توسعه بازی های ویدیویی (متون در علوم کامپیوتر)
نوع: کتاب الکترونیکی
ناشر: Springer
نویسنده: Marco T. Morazán
زبان: english
فرمت کتاب: PDF (قابل تبدیل به سایر فرمت ها)
سال انتشار: 2022
تعداد صفحه: 707 / 688
حجم فایل: 10.87 مگابایت
کد کتاب: 3030850900 , 9783030850906
نوبت چاپ: 1st ed. 2022
توضیحات کتاب حل مسئله متحرک: مقدمه ای بر طراحی برنامه با استفاده از توسعه بازی های ویدیویی (متون در علوم کامپیوتر)
این کتاب درسی درباره حل مسئله سیستماتیک و استدلال سیستماتیک با استفاده از طراحی مبتنی بر نوع است. دو تکنیک حل مسئله وجود دارد که در سراسر کتاب بر آنها تأکید شده است: تقسیم کن و غلبه کنو پالایش تکراری. Divide and Conquer فرآیندی است که در آن یک مشکل بزرگ به دو یا چند مسئله کوچکتر که حل آنها راحت تر است تقسیم می شود و سپس راه حل های قطعات کوچکتر برای ایجاد پاسخی برای مسئله ترکیب می شوند. پالایش تکراری فرآیندی است که در آن یک راه حل برای یک مشکل به تدریج بهتر می شود – مانند پیش نویس های یک مقاله. تسلط بر این تکنیک ها برای تبدیل شدن به یک حل کننده و برنامه نویس خوب ضروری است.
کتاب در پنج بخش تقسیم شده است. بخش اول بر روی اصول تمرکز دارد. با نحوه نوشتن عبارات شروع می شود و متعاقباً منجر به تصمیم گیری می شود و به عنوان مبنایی برای حل مسئله عمل می کند. سپس بخش دوم دادههای ترکیبی با اندازه محدود را معرفی میکند، در حالی که بخش سوم دادههای ترکیبی با اندازه دلخواه مانند به عنوان مثال را پوشش میدهد. لیست ها، فواصل، اعداد طبیعی و درختان دودویی. همچنین بازگشت ساختاری را معرفی میکند، یک استراتژی پردازش داده قدرتمند که از تقسیم و غلبه برای پردازش دادههایی استفاده میکند که اندازه آنها ثابت نیست. بعد، قسمت چهارم به انتزاع می پردازد و نشان می دهد که چگونه می توان تکرارها را در راه حل های مسائل حذف کرد. همچنین برنامه نویسی عمومی را معرفی می کند که انتزاع بر نوع داده های پردازش شده است. این منجر به درک این موضوع می شود که توابع داده هستند و شاید تعجب آورتر اینکه داده ها توابعی هستند، که به نوبه خود به طور طبیعی منجر به برنامه نویسی شی گرا می شود. قسمت پنجم برنامه نویسی توزیع شده را معرفی می کند، یعنی استفاده از چندین کامپیوتر برای حل یک مشکل.
این کتاب این نوید را می دهد که تا پایان آن خوانندگان یک بازی ویدئویی چند نفره را طراحی و اجرا خواهند کرد که می توانند با دوستان خود از طریق اینترنت بازی کنند. با این حال، برای رسیدن به این هدف، در مورد حل مسئله و برنامه نویسی چیزهای زیادی وجود دارد که باید ابتدا یاد بگیرید. بازی با استفاده از پالایش تکراری توسعه یافته است. خواننده گام به گام در مورد برنامه نویسی و نحوه به کارگیری دانش جدید برای توسعه نسخه های بهتری از این بازی ویدیویی می آموزد. به این ترتیب، خوانندگان روندهای مدرن را تمرین می کنند که احتمالاً در طول یک حرفه حرفه ای و فراتر از آن رایج است.
This textbook is about systematic problem solving and systematic reasoning using type-driven design. There are two problem solving techniques that are emphasized throughout the book: divide and conquer and iterative refinement. Divide and conquer is the process by which a large problem is broken into two or more smaller problems that are easier to solve and then the solutions for the smaller pieces are combined to create an answer to the problem. Iterative refinement is the process by which a solution to a problem is gradually made better–like the drafts of an essay. Mastering these techniques are essential to becoming a good problem solver and programmer.
The book is divided in five parts. Part I focuses on the basics. It starts with how to write expressions and subsequently leads to decision making and functions as the basis for problem solving. Part II then introduces compound data of finite size, while Part III covers compound data of arbitrary size like e.g. lists, intervals, natural numbers, and binary trees. It also introduces structural recursion, a powerful data-processing strategy that uses divide and conquer to process data whose size is not fixed. Next, Part IV delves into abstraction and shows how to eliminate repetitions in solutions to problems. It also introduces generic programming which is abstraction over the type of data processed. This leads to the realization that functions are data and, perhaps more surprising, that data are functions, which in turn naturally leads to object-oriented programming. Part V introduces distributed programming, i.e., using multiple computers to solve a problem.
This book promises that by the end of it readers will have designed and implemented a multiplayer video game that they can play with their friends over the internet. To achieve this, however, there is a lot about problem solving and programming that must be learned first. The game is developed using iterative refinement. The reader learns step-by-step about programming and how to apply new knowledge to develop increasingly better versions of the video game. This way, readers practice modern trends that are likely to be common throughout a professional career and beyond.

برای دریافت کد تخفیف ۲۰ درصدی این کتاب، ابتدا صفحه اینستاگرام کازرون آنلاین (@kazerun.online ) را دنبال کنید. سپس، کلمه «بلیان» را در دایرکت ارسال کنید تا کد تخفیف به شما ارسال شود.