وبلاگ بلیان

The Well-Grounded Python Developer - MEAP Version 8

معرفی کتاب «The Well-Grounded Python Developer - MEAP Version 8» نوشتهٔ Doug Farrell، منتشرشده توسط نشر Manning Publications Co. LLC در سال 2022. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است. «The Well-Grounded Python Developer - MEAP Version 8» در دستهٔ بدون دسته‌بندی قرار دارد.

All chapters 1 to 12 of 12The Well-Grounded Python Developer teaches you how to write real software in Python by building on the basic language skills you already have. Veteran developer Doug Farrell helps you see the big picture you can create out of small pieces, introducing concepts like modular construction, APIs, and the design of a basic web server. Throughout the book, you’ll practice your skills by building a blogging platform—the kind of web app that’s in high demand by modern businesses. When you’re finished, you’ll have gone from having a basic understanding of Python's syntax, grammar, and libraries to using them as the tools of a professional software developer. The Well-Grounded Python Developer MEAP V08 Copyright Welcome Brief contents Chapter 1: Becoming a Pythonista 1.1 Who is the intended audience? 1.2 Being a developer 1.2.1 Solving Problems 1.2.2 Process 1.2.3 Your Customers 1.2.4 Commitment to Learning 1.3 Reaching goals 1.3.1 Thinking like a developer 1.3.2 Building Applications 1.4 Using Python 1.4.1 Whitespace, The Final Frontier 1.4.2 Variables 1.4.3 Programming Paradigms 1.4.4 Creating Maintainable Code 1.4.5 The Language Community 1.4.6 The Developer Tooling 1.4.7 Performance Optimize your most expensive resource 1.5 Python Version to Use 1.6 Summary Chapter 2: Your Development Environment 2.1 Installing Python 2.1.1 Windows 2.1.2 Mac 2.1.3 Linux 2.2 Python Virtual Environment 2.2.1 Windows 2.2.2 Mac and Linux 2.3 Setting up Visual Studio Code 2.3.1 Installing Visual Studio Code 2.3.2 Installing Python Extension 2.3.3 Other Useful Extensions Python Docstring Generator Code Runner DotENV Better Jinja AREPL for python 2.3.4 Starting From the Command Line 2.3.5 Starting a Project 2.4 Some Advice 2.5 Summary Chapter 3: That’s a Good Name 3.1 Names 3.1.1 Naming Things 3.1.2 Naming Experiment Experiment Possible Solutions 3.2 Namespaces 3.3 Python Namespaces 3.3.1 Builtins Level 3.3.2 Module Level 3.3.3 Function Level 3.3.4 Namespace Scope 3.3.5 Namespace Experiment Experiment Possible Solution 3.4 Summary Chapter 4: Where Developers and Computers Meet 4.1 Starting a Conversations 4.1.1 A Contract Between Pieces Of Code 4.1.2 What's Passed as Input 4.1.3 What's Expected as Output Return Value Actions On The System Exceptions 4.2 Function API 4.2.1 Naming 4.2.2 Arguments Positional Arguments Keyword Arguments Argument List Keyword Argument Dictionary Arguments In General 4.2.3 Return Value 4.2.4 Single Responsibility 4.2.5 Function Length 4.2.6 Idempotentence 4.2.7 Side Effects 4.3 Documentation 4.4 Summary Chapter 5: The Object of Conversation 5.1 Object-Oriented Programming 5.1.1 Class Definition 5.1.2 Drawing With Class Properties Decorators 5.1.3 Inheritance Multiple Shapes Note 5.1.4 Polymorphism Note 5.1.5 Composition 5.2 Summary Chapter 6: Exceptional Events 6.1 Exceptions 6.2 Handling Exceptions 6.2.1 Handle An Exception If the Code Can Do Something About It 6.2.2 Allow Exceptions to Flow Upward In Your Programs 6.2.3 Informing the User 6.2.4 Never Silence an Exception Example 1 Improved 6.3 Raising An Exception 6.4 Creating Your Own Exceptions 6.5 Summary Chapter 7: Sharing With the World 7.1 Sharing Your Work 7.1.1 Web Application Advantages 7.1.2 Web Application Challenges 7.2 Servers 7.2.1 Request / Response Model 7.3 Web Servers HTTP Requests 7.4 Flask 7.4.1 Why Flask 7.4.2 Your First Web Server Connecting Routes Serving Forever Undefined Routes 7.4.3 Serving Content Dynamic Content Using A Template Language 7.4.4 More Jinja2 Features Template Inheritance Parent Template Child Template Presentation Interactivity 7.5 Running the Web Server 7.5.1 Gunicorn 7.5.2 Commercial Hosting 7.6 Summary Chapter 8: Doing it With Style 8.1 Application Styling 8.1.1 Creating Appealing Styles 8.1.2 Styling Consistency 8.1.3 Normalizing Styles 8.1.4 Responsive Design 8.2 Integrating Bootstrap 8.2.1 Bootstrap Version 8.2.2 Previous Example Now With Bootstrap! Base.html Base.css Index.html 8.3 Helping MyBlog Grow 8.3.1 The Flask app Instance Resolving The app Instance Problem MyBlog Restructuring Application Factory 8.4 Namespaces 8.4.1 Flask Blueprints 8.4.2 Add Blueprints To MyBlog The Content The Intro Package Updated MyBlog Directory App Package Changes 8.4.3 Create the About Page 8.4.4 Refactored App Instance 8.5 Navigation 8.5.1 Creating Navigation Information 8.5.2 Displaying the Navigation Information 8.5.3 MyBlog's Current Look 8.6 Application Configuration 8.6.1 Configuration Files 8.6.2 Private Information 8.7 Flask Debug Toolbar 8.7.1 FlaskDynaConf Configuring MyBlog 8.8 Logging Information 8.8.1 Configuration 8.9 Adding a favicon 8.10 Summary Chapter 9: Do I Know You? 9.1 The HTTP Protocol is Stateless 9.1.1 Sessions Flask Sessions 9.2 Remembering Someone 9.2.1 Authentication LoginManager Auth Blueprint User And Role Models 9.2.2 Logging In Flask-WTF Login Form Jinja Macros 9.3 News Flash 9.3.1 Improving the Login Form 9.4 Making New Friends Auth Blueprint 9.4.1 New User Form 9.4.2 Oh Yeah, Logging Out 9.4.3 Navigation 9.5 Confirming New Friends 9.5.1 Sending Email Emailer Confirmation Email User Confirmation Token Confirm User Handler User Confirm Token 9.6 Resetting Passwords 9.7 Profiles 9.8 Security 9.8.1 Protecting Routes 9.8.2 Authorizing Routes 9.8.3 Protecting Forms 9.9 Summary Chapter 10: Persistence Means Never Having to say Goodbye 10.1 The Other Half 10.1.1 Maintaining Information Over Time 10.2 Accessing Data 10.3 Database Systems 10.3.1 Tables 10.3.2 Relationships UUID Primary Keys One To Many Many To Many 10.3.3 Transaction Database 10.3.4 Structured Query Language: SQL Getting Data Using Relationships 10.4 SQLite As the Database 10.5 SQLAlchemy 10.5.1 Benefits 10.6 Modeling The Database 10.6.1 Defining the Classes The Database Connection Modeling The Tables 10.7 Creating and Using the Database 10.7.1 Adding Data 10.7.2 Using the Data 10.8 Summary Chapter 11: I’ve Got Something to Say 11.1 MyBlog Posts 11.1.1 Modeling the Database SQLAlchemy Post Class 11.2 Change of Direction 11.3 Content Blueprint 11.4 Displaying and Creating Posts 11.4.1 Display Handler 11.4.2 Display Template 11.5 Creating Posts 11.5.1 Creation Handler 11.5.2 Creation Form 11.5.3 Creation Template 11.6 Displaying and Editing a Post 11.6.1 Display Handler 11.6.2 Display Template 11.6.3 Update Handler 11.6.4 Update Form 11.6.5 Update Template 11.7 Displaying and Creating Comments 11.7.1 Content to Comment Hierarchy 11.7.2 Modifying the Post Class 11.7.3 Display Handler 11.7.4 Display Template 11.8 Creating Comments 11.8.1 Creation Template 11.8.2 Creation Form 11.8.3 Creation Handler 11.9 Notifying Users 11.10 Handling Site Errors Cross-Site Scripting 11.11 Summary Chapter 12: Are We There Yet? 12.1 Testing 12.1.1 Unit Testing 12.1.2 Functional Testing 12.1.3 End To End Testing 12.1.4 Integration Testing 12.1.5 Load Testing 12.1.6 Performance Testing 12.1.7 Regression Testing 12.1.8 Accessibility Testing 12.1.9 Acceptance Testing 12.2 Debugging 12.2.1 Reproducing Bugs 12.2.2 Breakpoints 12.2.3 Logging 12.2.4 Bad Results 12.2.5 Process of Elimination 12.2.6 Talk About the Problem 12.3 Source Control 12.4 Optimization 12.5 OS Environments 12.6 Cloud Computing 12.7 Containers 12.8 Databases 12.9 Languages 12.10 Networking 12.11 Collaboration 12.12 Summary If you're new to Python, it can be tough to understand when, where, and how to use all its language features. This friendly guide shows you how the Python ecosystem fits together, and grounds you in the skills you need to continue your journey to being a software developer.Summary Inside The Well-Grounded Python Developer you will discover: Building modules of functionality Creating a well-constructed web server application Integrating database access into your Python applications Refactor and decoupling systems to help scale them How to think about the big picture of your application The Well-Grounded Python Developer builds on Python skills you've learned in isolation and shows you how to unify them into a meaningful whole. It helps you understand the dizzying array of libraries and teaches important concepts, like modular construction, APIs, and the design of a basic web server. As you work through this practical guide, you'll discover how all the bits of Python link up as you build and modify a typical web server application—the kind of web app that's in high demand by modern businesses. About the technology As a new programmer, you're happy just to see your code run. A professional developer, on the other hand, needs to create software that runs reliably. It must be fast, maintainable, scalable, secure, well designed and documented, easy for others to update, and quick to ship. This book teaches you the skills you need to go from Python programmer to Python developer. About the book The Well-Grounded Python Developer shows you why Python, the world's most popular programming language, is a fantastic tool for professional development. It guides you through the most important skills, like how to name variables, functions, and classes, how to identify and write a good API, and how to use objects. You'll also learn how to deal with inevitable failures, how to make software that connects to the internet, core security practices, and many other professional-grade techniques. What's inside Create a web application Connect to a database Design programs to handle big tasks About the reader For experienced beginners who want to learn professional-level skills. About the author Doug Farrell has been a professional developer since 1983, and has worked with Python for over 20 years. Table of Contents 1 Becoming a Pythonista PART 1 - GROUNDWORK 2 That's a good name 3 The API: Let's talk 4 The object of conversation 5 Exceptional events PART 2 - FIELDWORK 6 Sharing with the internet 7 Doing it with style 8 Do I know you? Authentication 9 What can you do? Authorization 10 Persistence is good: Databases 11 I've got something to say 12 Are we there yet?
دانلود کتاب The Well-Grounded Python Developer - MEAP Version 8