دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش:
نویسندگان: Anthony Shaw
سری:
ISBN (شابک) : 9781775093343, 9781775093350
ناشر:
سال نشر:
تعداد صفحات: 391
زبان: English
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 11 مگابایت
در صورت تبدیل فایل کتاب CPython Internals به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب CPython Internals نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
تور راهنمای خود را از طریق مترجم پایتون 3.9 دریافت کنید: عملکردهای داخلی زبان پایتون را باز کنید، مفسر پایتون را از کد منبع کامپایل کنید و در توسعه CPython شرکت کنید. آیا بخشهای خاصی از پایتون وجود دارد که به نظر جادویی میآیند؟ این کتاب مفاهیم، ایدهها و نکات فنی مفسر پایتون را به روشی قابل دسترس و عملی توضیح میدهد. هنگامی که نحوه عملکرد پایتون در سطح مفسر را مشاهده کردید، می توانید برنامه های خود را بهینه کنید و از قدرت پایتون به طور کامل استفاده کنید. در پایان کتاب شما قادر خواهید بود: • کد منبع مفسر CPython 3.9 را بخوانید و پیمایش کنید. شما عمیقاً کارکرد درونی مفاهیمی مانند فهرست ها، فرهنگ لغت ها و مولدها را درک کرده و قدردانی خواهید کرد. • تغییراتی در نحو Python ایجاد کنید و نسخه خود را از CPython از ابتدا کامپایل کنید. شما انواع داده های هسته پایتون را با قابلیت های جدید سفارشی کرده و مجموعه تست خودکار CPython را اجرا خواهید کرد. • بر قابلیت های مدیریت حافظه پایتون مسلط شوید و کد پایتون خود را با موازی و همزمانی مقیاس کنید. • کدهای C و Python را مانند یک حرفه ای واقعی اشکال زدایی کنید. عملکرد کد پایتون و زمان اجرا را نمایه و محک بزنید. • در توسعه CPython شرکت کنید و بدانید که چگونه در نسخه های آینده مفسر پایتون و کتابخانه استاندارد مشارکت کنید. چه حس خوبی خواهد داشت که به عنوان «توسعهدهنده هسته پایتون» به جامعه بازگردید؟ با این کتاب، مفاهیم مهمی را که در پشت اجزای داخلی CPython قرار دارند و نحوه کار آنها با توضیحات بصری در حین ادامه، پوشش خواهید داد. هر صفحه در کتاب به دقت با تایپوگرافی زیبا، برجسته سازی نحو برای نمونه های کد گذاشته شده است. درباره نویسنده: آنتونی شاو مشارکت کننده CPython و سخنران PyCon است. او دارای مدرک لیسانس است. در علوم کامپیوتر و بیش از 8 سال تجربه کار با پایتون. آنتونی همچنین عضو بنیاد نرم افزار پایتون و عضو بنیاد آپاچی منبع باز است.
Get your guided tour through the Python 3.9 interpreter: Unlock the inner workings of the Python language, compile the Python interpreter from source code, and participate in the development of CPython. Are there certain parts of Python that just seem like magic? This book explains the concepts, ideas, and technicalities of the Python interpreter in an approachable and hands-on fashion. Once you see how Python works at the interpreter level, you can optimize your applications and fully leverage the power of Python. By the End of the Book You’ll Be Able To: • Read and navigate the CPython 3.9 interpreter source code. You’ll deeply comprehend and appreciate the inner workings of concepts like lists, dictionaries, and generators. • Make changes to the Python syntax and compile your own version of CPython, from scratch. You’ll customize the Python core data types with new functionality and run CPython’s automated test suite. • Master Python’s memory management capabilities and scale your Python code with parallelism and concurrency. • Debug C and Python code like a true professional. Profile and benchmark the performance of your Python code and the runtime. • Participate in the development of CPython and know how to contribute to future versions of the Python interpreter and standard library. How great would it feel to give back to the community as a “Python Core Developer?” With this book you’ll cover the critical concepts behind the internals of CPython and how they work with visual explanations as you go along. Each page in the book has been carefully laid out with beautiful typography, syntax highlighting for code examples. About the Author: Anthony Shaw is a CPython contributor and a PyCon speaker. He has a B.Sc. in Computer Science and over 8 years of experience working with Python. Anthony is also a Fellow of the Python Software Foundation and member of the Open-Source Apache Foundation.
Contents Foreword Introduction How to Use This Book Bonus Material & Learning Resources Getting the CPython Source Code Setting up Your Development Environment IDE or Editor? Setting up Visual Studio Setting up Visual Studio Code Setting up JetBrains CLion Setting up Vim Conclusion Compiling CPython Compiling CPython on macOS Compiling CPython on Linux Installing a Custom Version A Quick Primer on Make CPython's Make Targets Compiling CPython on Windows Profile Guided Optimization Conclusion The Python Language and Grammar Why CPython Is Written in C and Not Python The Python Language Specification Using the Parser Generator The Parser Generator Regenerating Grammar A More Complex Example Conclusion Configuration and Input Configuration State Build Configuration Building a Module From Input Conclusion Lexing and Parsing with Syntax Trees Concrete Syntax Tree Generation The CPython Parser-Tokenizer Abstract Syntax Trees Important Terms to Remember Example: Adding an Almost Equal Comparison Operator Conclusion The Compiler Related Source Files Important Terms Instantiating a Compiler Future Flags and Compiler Flags Symbol Tables Core Compilation Process Assembly Creating a Code Object Using Instaviz to Show a Code Object Example: Implementing the ``Almost-Equal'' Operator Conclusion The Evaluation Loop Stack Frames Related Source Files Important Terms Constructing Thread State Constructing Frame Objects Frame Execution The Value Stack Example: Adding an Item to a List Conclusion Memory Management Memory Allocation in C Design of the Python Memory Management System The CPython Memory Allocator The Object and PyMem Memory Allocation Domains The Raw Memory Allocation Domain Custom Domain Allocators Custom Memory Allocation Sanitizers The PyArena Memory Arena Reference Counting Garbage Collection Conclusion Parallelism and Concurrency Models of Parallelism and Concurrency The Structure of a Process Multi-Process Parallelism Multithreading Asynchronous Programming Generators Coroutines Asynchronous Generators Subinterpreters Conclusion Objects and Types Examples in This Chapter Builtin Types Object and Variable Object Types The type Type Bool and Long Integer Type Unicode String Type Dictionary Type Conclusion The Standard Library Python Modules Python and C Modules The Test Suite Running the Test Suite on Windows Running the Test Suite on Linux/macOS Test Flags Running Specific Tests Testing Modules Test Utilities Conclusion Debugging Using the Crash Handler Compiling Debug Support Using Lldb for macOS Using Gdb Using Visual Studio Debugger Using CLion Debugger Conclusion Benchmarking, Profiling, and Tracing Using Timeit for Micro-Benchmarks Using the Python Benchmark Suite for Runtime Benchmarks Profiling Python Code with cProfile Profiling C Code with Dtrace Conclusion Conclusion Writing C Extensions for CPython Using This Knowledge to Improve Your Python Applications Using This Knowledge to Contribute to the CPython Project Keep Learning Appendix 1 : Introduction to C for Python Programmers C Preprocessor Basic C Syntax Conclusion