
عنوان:
Dead Simple Python
نویسنده:
Jason C. McDonald
انتشارات:
No Starch Press
تاریخ انتشار:
2022
حجم:
5.8MB
معرفی کتاب:" پایتون فوقالعاده ساده: پایتون ایدیوماتیک برای برنامهنویسان بیصبر "
نویسنده: جیسون سی. مکدونالد
مناسب برای: برنامهنویسانی که میخواهند سریع و حرفهای با پایتون کدنویسی کنند
درباره کتاب
«پایتون بینهایت ساده» یک راهنمای جامع و در عین حال عملی برای یادگیری Python است، مخصوص کسانی که میخواهند سریعتر از مسیر معمول آموزشی، وارد ساخت نرمافزارهای واقعی و در سطح production شوند. برخلاف بسیاری از منابع آموزشی پایتون که ابتدا به مفاهیم تئوریک و علوم کامپیوتر میپردازند، این کتاب مستقیماً به مهارتهایی میپردازد که شما را به یک برنامهنویس حرفهای پایتون تبدیل میکند.
آنچه خواهید آموخت
- مرور سریع سینتکس پایه و راهاندازی محیط توسعه حرفهای پایتون
- استفاده از تایپگذاری پویا (Dynamic Typing) برای نوشتن کد تمیز و انعطافپذیر
- ساختاردهی و پردازش داده با تکنیکهای پیشرفته Iteration
- طراحی کلاسها و توابع مطمئن، ماژولار و قابل تست
- کار با وراثت چندگانه و introspection برای کدنویسی شیءگرای پیشرفته
- بهینهسازی عملکرد کد با Async، همزمانی (Concurrency) و پردازش موازی (Parallelism)
- ساختاربندی حرفهای پروژه برای آمادهسازی جهت تست، انتشار و نگهداری
چرا این کتاب؟
- محتوا بر پایه تجربیات واقعی تولید نرمافزار در محیطهای صنعتی نوشته شده
- شامل مثالهای کاربردی و قابل اجرا در هر فصل
- پیشنیاز خاصی ندارد اما برای برنامهنویسان با دانش اولیه بسیار مؤثر است
- کتابی برای رفتن به فراتر از آموزشهای معمولی و رسیدن به کدنویسی حرفهای
مناسب برای چه کسانی است؟
توسعهدهندگان مبتدی تا متوسط که قصد دارند برنامههای پایتونی بسازند که قابلاتکا، توسعهپذیر، و آمادهی انتشار در محیطهای واقعی باشند. حتی اگر قبلاً با زبانهای دیگر کار کردهاید، این کتاب میتواند به شما کمک کند تا «مثل یک پایتونیست حرفهای» فکر کنید.
فهرست مطالب
- Title Page
- Copyright
- Dedication
- About the Author
- Foreword
- Acknowledgments
- Introduction
- Part I: THE PYTHON ENVIRONMENT
- Chapter 1: The Python Philosophy
- What Is Python, Exactly?
- Myths: What Python Isn’t
- Python 2 vs. Python 3
- Defining “Pythonic” Code
- The Zen of Python
- Documentation, PEPs, and You
- Who Calls the Shots?
- The Python Community
- The Pursuit of the One Obvious Way
- Wrapping Up
- Chapter 2: Your Workbench
- Installing Python
- Meet the Interpreter
- Packages and Virtual Environments
- Introducing pip
- Virtual Environments and Git
- A Few Extra Virtual Environment Tricks
- Quality Control: Static Analyzers
- Style Janitors: Autoformatting Tools
- Testing Frameworks
- An Exhibition of Code Editors
- Wrapping Up
- Chapter 3: Syntax Crash Course
- Hello, World!
- Statements and Expression
- The Importance of Whitespace
- Doing Nothing
- Comments and Docstrings
- Declaring Variables
- Mathematics
- Logic
- Strings
- Functions
- Classes and Objects
- Error Handling
- Tuples and Lists
- Loops
- Structural Pattern Matching
- Wrapping Up
- Chapter 4: Project Structure and Imports
- Setting Up the Repository
- Modules and Packages
- How import Works
- Import Dos and Don’ts
- Importing Within Your Project
- Entry Points
- The Python Module Search Path
- What Really Happens
- Wrapping Up
- Part II: ESSENTIAL STRUCTURES
- Chapter 5: Variables and Types
- Variables According to Python: Names and Values
- Assignment
- Data Types
- Scope and Garbage Collection
- The Immutable Truth
- Passing by Assignment
- Collections and References
- Coercion and Conversion
- A Note About Systems Hungarian Notation
- Terminology Review
- Wrapping Up
- Chapter 6: Functions and Lambdas
- Python Function Essentials
- Recursion
- Default Argument Values
- Keyword Arguments
- On Overloaded Functions
- Variadic Arguments
- Keyword-Only Parameters
- Nested Functions
- Closures
- Lambdas
- Decorators
- Type Hints and Function Annotations
- Wrapping Up
- Chapter 7: Objects and Classes
- Declaring a Class
- Attributes
- Scope-Naming Conventions
- Methods
- Properties
- Special Methods
- Class Decorators
- Structural Pattern Matching with Objects
- Functional Meets Object Oriented
- When to Use Classes
- Wrapping Up
- Chapter 8: Errors and Exceptions
- Exceptions in Python
- Reading Tracebacks
- Catching Exceptions: LBYL vs. EAFP
- Multiple Exceptions
- Beware the Diaper Anti-pattern
- Raising Exceptions
- Using Exceptions
- Else and Finally
- Creating Exceptions
- A Gallery of Exceptions
- Wrapping Up
- Part III: DATA AND FLOW
- Chapter 9: Collections and Iteration
- Loops
- Collections
- Unpacking Collections
- Structural Pattern Matching on Collections
- Accessing by Index or Key
- Slice Notation
- The in Operator
- Checking Collection Length
- Iteration
- Iteration Tools
- Custom Iterable Classes
- Wrapping Up
- Chapter 10: Generators and Comprehensions
- Lazy Evaluation and Eager Iterables
- Infinite Iterators
- Generators
- yield from
- Generator Expressions
- List Comprehensions
- Set Comprehensions
- Dictionary Comprehensions
- Hazards of Generator Expressions
- Simple Coroutines
- What About Async?
- Wrapping Up
- Chapter 11: Text IO and Context Managers
- Standard Input and Output
- Streams
- Context Manager Basics
- File Modes
- Reading Files
- Stream Position
- Writing Files
- Context Manager Details
- Paths
- File Formats
- Wrapping Up
- Chapter 12: Binary and Serialization
- Binary Notation and Bitwise
- Bytes Literals
- Bytes-Like Objects
- struct
- Bitwise on Bytes-Like Objects
- memoryview
- Reading and Writing Binary Files
- Serialization Techniques
- Wrapping Up
- Part IV: ADVANCED CONCEPTS
- Chapter 13: Inheritance and Mixins
- When to Use Inheritance
- Basic Inheritance in Python
- Multiple Inheritance
- Mixins
- Wrapping Up
- Chapter 14: Metaclasses and ABCs
- Metaclasses
- Type Expectations with Duck Typing
- Abstract Classes
- Virtual Subclasses
- Wrapping Up
- Chapter 15: Introspection and Generics
- Special Attributes
- Inside Object Attribute Access: The __dict__ Special Attribute
- Function Attributes
- Descriptors
- Slots
- Immutable Classes
- Single-Dispatch Generic Functions
- Using the Element Class
- Arbitrary Execution
- Wrapping Up
- Chapter 16: Asynchrony and Concurrency
- Asynchrony in Python
- The Example Scenario: Collatz Game, Synchronous Version
- Asynchrony
- Scheduling and Asynchronous Execution Flow
- Asynchronous Iteration
- Asynchronous Context Managers
- Asynchronous Generators
- Other Asynchrony Concepts
- Wrapping Up
- Chapter 17: Threading and Parallelism
- Threading
- Race Conditions
- Locks
- Deadlock, Livelock, and Starvation
- Passing Messages with Queue
- Futures with Multiple Workers
- Achieving Parallelism with Multiprocessing
- The Producer/Consumer Problem
- Wrapping Up
- Part V: BEYOND THE CODE
- Chapter 18: Packaging and Distribution
- Planning Your Packaging
- Project Structure: src or src-less
- Packaging a Distribution Package with setuptools
- Building Your Package
- Publishing on pip (Twine)
- Alternative Packaging Tools
- Distributing to End Users
- Documentation
- Wrapping Up
- Chapter 19: Debugging and Logging
- Warnings
- Logging
- Assert Statements
- The inspect Module
- Using pdb
- Using faulthandler
- Evaluating Your Program’s Security with Bandit
- Reporting Bugs to Python
- Wrapping Up
- Chapter 20: Testing and Profiling
- What About TDD?
- Test Frameworks
- The Example Project
- Testing and Project Structure
- Testing Basics
- Test Fixtures
- Flaky Tests and Conditionally Skipping Tests
- Advanced Fixtures: Mocking and Parametrizing
- Code Coverage
- Automating Testing with tox
- Benchmarking and Profiling
- Wrapping Up
- Chapter 21: The Parting of the Ways
- About the Future
- Where Do You Go from Here?
- Python Flavors
- Developing for Python
- Getting Involved with Python
- And the Road Goes Ever On . . .
- Appendix A: Special Attributes and Methods
- Special Methods
- Special Attributes
- Appendix B: Python Debugger (pdb) Commands
- Appendix: Glossary
- Index
مشخصات
نام کتاب
Dead Simple Python
نویسنده
Jason C. McDonald
انتشارات
No Starch Press
تاریخ انتشار
2022
ISBN
9781718500921
تعداد صفحات
1016
زبان
انگلیسی
فرمت
حجم
5.8MB
موضوع
Python Fundamentals