دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 4 نویسندگان: Steven F. Lott, Dusty Phillips سری: ISBN (شابک) : 1801077266, 9781801077262 ناشر: Packt Publishing سال نشر: 2021 تعداد صفحات: 715 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 7 مگابایت
در صورت تبدیل فایل کتاب Python Object-Oriented Programming: Build robust and maintainable object-oriented Python applications and libraries به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب برنامه نویسی شی گرا پایتون: ایجاد برنامه ها و کتابخانه های قوی و قابل نگهداری شی گرا نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
راهنمای جامع برای کاوش در پایتون مدرن از طریق ساختارهای داده، الگوهای طراحی و تکنیکهای موثر شی گرا
برنامه نویسی شی گرا پایتون، ویرایش چهارم عمیقاً به جنبه های مختلف OOP، پایتون به عنوان یک زبان OOP، رایج و الگوهای طراحی پیشرفته و دستکاری داده ها و آزمایش سیستم های OOP پیچیده تر. این مفاهیم با تمرینهای پایان باز، و همچنین یک مطالعه موردی در دنیای واقعی در پایان هر فصل، که به تازگی برای این نسخه نوشته شده است، ادغام میشوند. همه کدهای نمونه اکنون با نحو Python 3.9+ سازگار هستند و برای سهولت یادگیری با نکات نوع به روز شده اند.
استیون و داستی یک تور دوستانه و جامع از مفاهیم مهم OOP، مانند وراثت، ترکیب، ارائه می کنند. و چند شکلی، و توضیح دهید که چگونه آنها با کلاس ها و ساختارهای داده پایتون کار می کنند تا طراحی خوب را تسهیل کنند. نمودارهای کلاس UML به طور سخاوتمندانه در سراسر متن برای درک روابط کلاس استفاده می شوند. فراتر از تمرکز کتاب بر OOP، نگاهی عمیق به مدیریت استثناهای پایتون و نحوه تلاقی برنامهنویسی کاربردی با OOP دارد. نه یک، بلکه دو سیستم تست خودکار بسیار قدرتمند unittest و pytest در این کتاب معرفی شده اند. فصل آخر بحث مفصلی در مورد اکوسیستم برنامه نویسی همزمان پایتون ارائه می دهد.
در پایان کتاب، شما درک کاملی از نحوه تفکر و اعمال اصول شی گرا با استفاده از نحو پایتون خواهید داشت و قادر خواهید بود. برای ایجاد مطمئن برنامه های قوی و قابل اعتماد.
اگر در تکنیکهای برنامهنویسی شی گرا تازه کار هستید، یا شما مهارت های اولیه پایتون را دارید و می خواهید یاد بگیرید که چگونه و چه زمانی اصول OOP را به درستی در پایتون به کار ببرید، این کتاب برای شماست. علاوه بر این، اگر یک برنامه نویس شی گرا هستید که از زبان های دیگر می آیید یا به دنبال یک پا در دنیای جدید پایتون هستید، این کتاب را به عنوان یک مقدمه مفید برای پایتون خواهید یافت. حداقل تجربه قبلی با پایتون ضروری است.
A comprehensive guide to exploring modern Python through data structures, design patterns, and effective object-oriented techniques
Python Object-Oriented Programming, Fourth Edition dives deep into the various aspects of OOP, Python as an OOP language, common and advanced design patterns, and hands-on data manipulation and testing of more complex OOP systems. These concepts are consolidated by open-ended exercises, as well as a real-world case study at the end of every chapter, newly written for this edition. All example code is now compatible with Python 3.9+ syntax and has been updated with type hints for ease of learning.
Steven and Dusty provide a friendly, comprehensive tour of important OOP concepts, such as inheritance, composition, and polymorphism, and explain how they work together with Python's classes and data structures to facilitate good design. UML class diagrams are generously used throughout the text for you to understand class relationships. Beyond the book's focus on OOP, it features an in-depth look at Python's exception handling and how functional programming intersects with OOP. Not one, but two very powerful automated testing systems, unittest and pytest, are introduced in this book. The final chapter provides a detailed discussion of Python's concurrent programming ecosystem.
By the end of the book, you will have a thorough understanding of how to think about and apply object-oriented principles using Python syntax and be able to confidently create robust and reliable programs.
If you are new to object-oriented programming techniques, or if you have basic Python skills and wish to learn how and when to correctly apply OOP principles in Python, this is the book for you. Moreover, if you are an object-oriented programmer coming from other languages or seeking a leg up in the new world of Python, you will find this book a useful introduction to Python. Minimal previous experience with Python is necessary.
Cover Copyright Contributors Table of Contents Preface Chapter 1: Object-Oriented Design Introducing object-oriented Objects and classes Specifying attributes and behaviors Data describes object state Behaviors are actions Hiding details and creating the public interface Composition Inheritance Inheritance provides abstraction Multiple inheritance Case study Introduction and problem overview Context view Logical view Process view Development view Physical view Conclusion Recall Exercises Summary Chapter 2: Objects in Python Introducing type hints Type checking Creating Python classes Adding attributes Making it do something Talking to yourself More arguments Initializing the object Type hints and defaults Explaining yourself with docstrings Modules and packages Organizing modules Absolute imports Relative imports Packages as a whole Organizing our code in modules Who can access my data? Third-party libraries Case study Logical view Samples and their states Sample state transitions Class responsibilities The TrainingData class Recall Exercises Summary Chapter 3: When Objects Are Alike Basic inheritance Extending built-ins Overriding and super Multiple inheritance The diamond problem Different sets of arguments Polymorphism Case study Logical view Another distance Recall Exercises Summary Chapter 4: Expecting the Unexpected Raising exceptions Raising an exception The effects of an exception Handling exceptions The exception hierarchy Defining our own exceptions Exceptions aren't exceptional Case study Context view Processing view What can go wrong? Bad behavior Creating samples from CSV files Validating enumerated values Reading CSV files Don't repeat yourself Recall Exercises Summary Chapter 5: When to Use Object-Oriented Programming Treat objects as objects Adding behaviors to class data with properties Properties in detail Decorators – another way to create properties Deciding when to use properties Manager objects Removing duplicate code In practice Case study Input validation Input partitioning The sample class hierarchy The purpose enumeration Property setters Repeated if statements Recall Exercises Summary Chapter 6: Abstract Base Classes and Operator Overloading Creating an abstract base class The ABCs of collections Abstract base classes and type hints The collections.abc module Creating your own abstract base class Demystifying the magic Operator overloading Extending built-ins Metaclasses Case study Extending the list class with two sublists A shuffling strategy for partitioning An incremental strategy for partitioning Recall Exercises Summary Chapter 7: Python Data Structures Empty objects Tuples and named tuples Named tuples via typing.NamedTuple Dataclasses Dictionaries Dictionary use cases Using defaultdict Counter Lists Sorting lists Sets Three types of queues Case study Logical model Frozen dataclasses NamedTuple classes Conclusion Recall Exercises Summary Chapter 8: The Intersection of Object-Oriented and Functional Programming Python built-in functions The len() function The reversed() function The enumerate() function An alternative to method overloading Default values for parameters Additional details on defaults Variable argument lists Unpacking arguments Functions are objects, too Function objects and callbacks Using functions to patch a class Callable objects File I/O Placing it in context Case study Processing overview Splitting the data Rethinking classification The partition() function One-pass partitioning Recall Exercises Summary Chapter 9: Strings, Serialization, and File Paths Strings String manipulation String formatting Escaping braces f-strings can contain Python code Making it look right Custom formatters The format() method Strings are Unicode Decoding bytes to text Encoding text to bytes Mutable byte strings Regular expressions Matching patterns Matching a selection of characters Escaping characters Repeating patterns of characters Grouping patterns together Parsing information with regular expressions Other features of the re module Making regular expressions efficient Filesystem paths Serializing objects Customizing pickles Serializing objects using JSON Case study CSV format designs CSV dictionary reader CSV list reader JSON serialization Newline-delimited JSON JSON validation Recall Exercises Summary Chapter 10: The Iterator Pattern Design patterns in brief Iterators The iterator protocol Comprehensions List comprehensions Set and dictionary comprehensions Generator expressions Generator functions Yield items from another iterable Generator stacks Case study The Set Builder background Multiple partitions Testing The essential k-NN algorithm k-NN using the bisect module k-NN using the heapq module Conclusion Recall Exercises Summary Chapter 11: Common Design Patterns The Decorator pattern A Decorator example Decorators in Python The Observer pattern An Observer example The Strategy pattern A Strategy example Strategy in Python The Command pattern A Command example The State pattern A State example State versus Strategy The Singleton pattern Singleton implementation Case study Recall Exercises Summary Chapter 12: Advanced Design Patterns The Adapter pattern An Adapter example The Façade pattern A Façade example The Flyweight pattern A Flyweight example in Python Multiple messages in a buffer Memory optimization via Python's __slots__ The Abstract Factory pattern An Abstract Factory example Abstract Factories in Python The Composite pattern A Composite example The Template pattern A Template example Case study Recall Exercises Summary Chapter 13: Testing Object-Oriented Programs Why test? Test-driven development Testing objectives Testing patterns Unit testing with unittest Unit testing with pytest pytest's setup and teardown functions pytest fixtures for setup and teardown More sophisticated fixtures Skipping tests with pytest Imitating objects using Mocks Additional patching techniques The sentinel object How much testing is enough? Testing and development Case study Unit testing the distance classes Unit testing the Hyperparameter class Recall Exercises Summary Chapter 14: Concurrency Background on concurrent processing Threads The many problems with threads Shared memory The global interpreter lock Thread overhead Multiprocessing Multiprocessing pools Queues The problems with multiprocessing Futures AsyncIO AsyncIO in action Reading an AsyncIO future AsyncIO for networking Design considerations A log writing demonstration AsyncIO clients The dining philosophers benchmark Case study Recall Exercises Summary Packt Page Other Books You May Enjoy Index