جاوا اسکریپت زبانی تکرشتهای است، به این معنا که تنها یک کار را در یک زمان میتواند انجام دهد. این ویژگی میتواند منجر به مشکلاتی در مدیریت عملیات ناهمگام (asynchronous operations) شود؛ عملیاتی که زمانبر هستند و نمیتوانند فوراً نتیجه را برگردانند، مانند درخواستهای شبکه، دسترسی به پایگاه داده، یا خواندن و نوشتن فایل. در گذشته، برای مدیریت اینگونه عملیات از Callback و Promise استفاده میشد. اما با معرفی async و await در ES2017، جاوا اسکریپت ابزارهای قدرتمندتری برای نوشتن کدهای ناهمگام به روشی خواناتر و مشابه کدهای همگام (synchronous) فراهم کرد.
معرفی ابزار valgrind برای شناسایی نشت حافظه
مقدمه
نشت حافظه یکی از مشکلات رایج و پنهان در برنامهنویسی است که میتواند منجر به کاهش کارایی، ناپایداری و حتی از کار افتادن کامل برنامه شود. در زبانهای برنامهنویسی مانند C و C++ که مدیریت حافظه به عهده برنامهنویس است، احتمال وقوع نشت حافظه به مراتب بیشتر است. ابزارهای مختلفی برای شناسایی و رفع این مشکل توسعه یافتهاند که یکی از قدرتمندترین و پرکاربردترین آنها، Valgrind است.
ساخت بازی Bricks با PyGame
مقدمه
بازی Bricks، که با نامهایی مانند Breakout یا Arkanoid نیز شناخته میشود، یک بازی کلاسیک آرکید است که هدف اصلی در آن شکستن تمام آجرها در بالای صفحه با استفاده از یک توپ و یک پدل (تخته) است. پدل توسط بازیکن کنترل میشود تا توپ را به سمت بالا برگرداند و از افتادن آن به پایین صفحه جلوگیری کند. ساخت این بازی با استفاده از کتابخانه PyGame در پایتون یک پروژه عالی برای یادگیری مفاهیم پایه توسعه بازیهای دوبعدی است. در این مقاله به صورت جامع به مراحل و مفاهیم کلیدی برای ساخت این بازی میپردازیم.
کلمات کلیدی auto و decltype در C++
کلمات کلیدی auto و decltype در C++ ابزارهای قدرتمندی برای استنتاج نوع در زمان کامپایل هستند. این ویژگیها، که از C++11 به بعد معرفی شدهاند، به برنامهنویسان کمک میکنند تا کدهای انعطافپذیرتر و قابل نگهداریتری بنویسند.
مقدمهای بر بازی سازی با کتابخانه PyGame
صنعت بازیهای ویدیویی یکی از پویاترین و جذابترین حوزههای فناوری است که هر روز شاهد نوآوریها و خلاقیتهای بیشماری در آن هستیم. برای بسیاری از علاقهمندان به این حوزه، رویای ساخت بازیهای خودشان همواره در ذهنشان وجود داشته است. خوشبختانه، با ظهور کتابخانهها و ابزارهای مختلف، ورود به دنیای بازیسازی دیگر نیازمند دانش تخصصی و پیچیده در سطح موتورهای بازی تجاری نیست.
یکی از بهترین گزینهها برای شروع یادگیری بازیسازی، به ویژه برای کسانی که با زبان برنامهنویسی پایتون آشنا هستند، کتابخانه قدرتمند و در عین حال سادهی PyGame است. PyGame مجموعهای از ماژولهای پایتون است که برای ساخت بازیهای دو بعدی طراحی شده و امکاناتی نظیر مدیریت پنجره، دریافت ورودی کاربر، رسم اشکال و تصاویر، پخش صدا و موسیقی، و مدیریت برخورد اشیاء را در اختیار توسعهدهندگان قرار میدهد.
این مقاله به عنوان یک مقدمه جامع، شما را با مفاهیم و اصول اولیه بازیسازی با استفاده از کتابخانه PyGame آشنا خواهد کرد. ما در این مسیر، از نصب و راهاندازی کتابخانه گرفته تا پیادهسازی عناصر اساسی یک بازی ساده، قدم به قدم پیش خواهیم رفت.
بسط لیست، چندتایی یا دیکشنری و استفاده از آنها به عنوان ورودی توابع در پایتون
بسیاری اوقات پیش میآید که ما قصد فراخوانی تابعی را داریم و ورودیهای این تابع در یک لیست، چندتایی یا دیکشنری قرار دارند. ابتداییترین کار ممکن جداکردن تک تک عناصر و دادن آنها به عنوان ورودی به تابع است. ولی میتوان با استفاده از عملگرهای * و ** کار را سادهتر کرد. در این نوشته با نحوه استفاده از این عملگرها آشنا خواهیم شد.
ادامه خواندن “بسط لیست، چندتایی یا دیکشنری و استفاده از آنها به عنوان ورودی توابع در پایتون”
توابع ابتدایی مربوط به آمار در numpy
در این نوشته با توابع ابتدایی مربوط به آمار آشنا خواهیم شد. این توابع عبارت اند از حداقل، حداکثر، متوسط، انحراف معیار، واریانس، همبستگی متقابل، کووارینس و غیره. کتابخانه numpy در زبان برنامهنویسی پایتون این توابع را در اختیار ما قرار داده است.
دستورات where و argwhere در پایتون
در این نوشته به معرفی دو دستور where و argwhere از کتابخانه numpy پرداخته خواهد شد. این دو دستور اگر درست و به جا استفاده شوند میتوانند موجب خوانایی کدها شده و سرعت برنامهنویسی ما را نیز افزایش دهند. با مثالها گوناگون نحوه استفاده از این دو تابع توصیف خواهد شد.
رسم نمودار دایرهای تو در تو در پایتون با استفاده از کتابخانه matplotlib
در بسیاری از وظایف بازنمایی دادهها، نیازمند نمایش اطلاعات استخراج شده توسط نمودارهای دایرهای هستیم. این نوع نمودارها که از محبوبترین و با سابقهترین روشهای بازنمایی دادهها هستند به آسانی توسط زبان برنامه نویسی پایتون و کتابخانه matplotlib قابل رسم میباشند. در این نوشته به دنبال آموزش ویرایش تو در تو نمودارهای دایرهای هستیم. در نمودارهای دایرهای معمولا ما کلاسها یا عنوانهای مختلفی داریم که هر کدام سهم مشخصی از چیزی را به خود اختصاص داده اند و این سهم مشخص گستردگی زاویه قطاع اختصاص داده شده به کلاس یا عنوان را مشخص مینماید. در نمودار دایرهای تو در تو علاوه بر کلاسها ما زیر کلاسهایی را نیز داریم که هر کدام سهمی از کلاس رده بالایی خود را دارند. با ما همراه باشید.
ادامه خواندن “رسم نمودار دایرهای تو در تو در پایتون با استفاده از کتابخانه matplotlib”