ویژگیهای کلیدی
محاسبه، پروفایلبندی و تسریع برنامههای پایتون با استفاده از ابزارهای بهینهسازی
مقیاسبندی برنامهها برای چندین پردازنده با برنامهنویسی همزمان
ساخت برنامهها قوی و قابل استفادهی مجدد با استفاده از الگوهای طراحی موثر
شرح کتاب
قابلیتهای قدرتمند پایتون برای پیادهسازی برنامههای قوی و کارآمد، آن را به یکی از پرطرفدارترین زبانهای برنامهنویسی تبدیل کرده است.
در این کتاب، ابزارهایی را بررسی خواهید کرد که به شما امکان میدهند عملکرد را بهبود بخشیده و برنامههای پایتون خود را به سطح بالاتری ببرید.
این کتاب با بررسی کتابخانههای داخلی و خارجی که وظایف را در چرخه توسعه، مانند سنجش، پروفایلبندی و بهینهسازی، ساده میکنند، آغاز میشود. سپس با استفاده از ابزارهای تخصصی مانند کتابخانهها و کامپایلرهای اختصاصی برای افزایش عملکرد خود در وظایف محاسباتی، از جمله آموزش مدلهای یادگیری ماشین، آشنا خواهید شد.
این کتاب، همزمانی، یک راه حل اصلی برای کارآمدتر و مقیاسپذیرتر کردن برنامهها، و تکنیکهای مختلف برنامهنویسی همزمان مانند چندنخی، چندپردازشی و برنامهنویسی ناهمزمان را پوشش میدهد.
همچنین مشکلات رایجی که باعث رفتار نامطلوب در برنامههای همزمان میشوند را درک خواهید کرد.
در نهایت، با طیف گستردهای از الگوهای طراحی، از جمله الگوهای خلقی، ساختاری و رفتاری، کار خواهید کرد که شما را قادر میسازد تا با چالشهای پیچیده طراحی و معماری مقابله کنید و برنامههای خود را قویتر و قابل نگهداریتر کنید.
در پایان کتاب، شما با طیف گستردهای از قابلیتهای پیشرفته در پایتون آشنا خواهید شد و به دانش عملی لازم برای به کارگیری آنها در موارد استفاده خود مجهز خواهید شد.
آنچه خواهید آموخت
نوشتن کد عددی کارآمد با NumPy، pandas و Xarray
استفاده از Cython و Numba برای دستیابی به عملکرد بومی
یافتن گلوگاهها در کد پایتون خود با استفاده از profilers
بهینهسازی مدلهای یادگیری ماشین خود با JAX
پیادهسازی برنامههای چندنخی، چندپردازشی و غیرهمزمان
حل مشکلات رایج در برنامهنویسی همزمان، مانند بنبستها
مقابله با چالشهای معماری با الگوهای طراحی
این کتاب برای چه کسانی مناسب است؟
این کتاب برای برنامهنویسان پایتون سطح متوسط تا باتجربه است که به دنبال افزایش مقیاس برنامههای خود به شیوهای سیستماتیک و قوی هستند. برنامهنویسان با پیشینههای مختلف، از جمله مهندسان نرمافزار، برنامهنویسان علمی و معماران نرمافزار، این کتاب را مفید خواهند یافت.
فهرست مطالب
معیاریابی و پروفایلینگ
بهینهسازیهای خالص پایتون
عملیات سریع آرایه با NumPy و Pandas
عملکرد C با Cython
بررسی کامپایلرها
تفاضلگیری خودکار و جبر خطی شتابیافته برای یادگیری ماشین
پیادهسازی همزمانی
پردازش موازی
درخواستهای همزمان وب
پردازش همزمان تصویر
ساخت کانالهای ارتباطی با asyncio
بنبستها
گرسنگی
شرایط رقابتی
قفل مفسر سراسری
الگوی کارخانه
الگوی سازنده
سایر الگوهای آفرینشی
الگوی آداپتور
الگوی دکوراتور
الگوی پل
الگوی نما
سایر الگوهای ساختاری
الگوی زنجیره مسئولیت
الگوی فرمان
الگوی ناظر






























