Modern Python Application Development In Practice!
Last updated 12/2018
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.44 GB | Duration: 12h 12m
Last updated 12/2018
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 4.44 GB | Duration: 12h 12m
A practical guide to creating your own unique program using modern Python!
What you'll learn
Run and execute Python both from the command line and from within the IDE.
Explore generators and itertools and get an introduction to creating your own functions classes and modules.
Create your own Django templates for your Python web API and learn to use template filters and tags.
Manage code quality in order to find potential errors early in the development cycle.
Explore the tools and formats to distribute packages, command-line, GUI and web applications.
Locate root causes by benchmarking and profiling your application.
Organize your code better using Object Oriented Programming.
Requirements
Basic knowledge of Python programming and its features will be useful.
Description
Over the years, Python has turned out to be a boon for developers and it is very powerful, can run everywhere, and offers flexibility! With the growing demand for full-stack developers, it is important to learn how you can combine the powers of Python with other libraries to create amazing applications. To further your software development career, you need to understand why and how Python executes your code so that you can create clean code that compiles in time. This Course unleashes the power of Python's functionalities to create compelling applications!This comprehensive 4-in-1 course follows a step-by-step approach taking you through the tools of Modern Python to build your Python application from scratch! To begin with, you’ll learn generators and itertools and get an introduction to creating your own functions classes and modules. Create your own Django templates for your Python web API and learn to use template filters and tags. Explore the tools and formats to distribute packages, command-line, GUI and web applications. Finally, you’ll tackle Python performance problems and speed up your apps with parallelism, concurrent execution, and OOP! Towards the end of this course, you'll learn Python like a professional to build REST APIs & powerful apps using modern Python!Contents and OverviewThis training program includes 4 complete courses, carefully chosen to give you the most comprehensive training possible.The first course, Getting Started with Modern Python, covers creating your own unique program using modern Python. In this course, you will start by setting up your development environment, including downloading Python and setting up your IDE (PyCharm); you'll then be introduced to Python lists and list comprehensions. The course will then show you what a generator is and why you might want to use one. Further on, you will be introduced to functions and decorators, and see how you can use them. You will then learn how to create a very simple, single-file Python program, and how to execute it both from the command line and from within the IDE. You'll also get a very brief introduction to debugging. By the end of the course, you'll have learned how to manipulate strings, parsing and printing them.The second course, Building REST APIs with Python, covers building REST APIs with Python. With the growing demand for full-stack developers, it is important to learn how you can combine the powers of Python with other libraries to create amazing applications. Django has basic front-end support but we show how complex operations can be performed at the front-end. We show you how to unleash the power of Python's Rest API and other functionalities to create compelling applications powered by ReactJS. We will be using a production-level database such as Postgres. Delving into key aspects such as code reusability, deployment and maintaining your application, we discuss production server configuration and bundle technologies with Python to provide an end-to-end web development solution.The third course, Tips, Tricks, and Techniques for Python Application Development, covers building powerful & efficient applications with Python. The course starts by dealing with performance issues and learning how to tackle them in an application. Distributing an application with Python is not easy but you will learn ways to distribute applications developed using Python along with GUIs, web applications, and more. Further, you will learn to test your application at different levels and use modern software at the development stage. You will also learn to expand productivity using standard and third-party tools. Finally, you will learn to protect your code quality from potential errors and detect any problem at an early stage, to prevent any issues later. By the end, of course, you will have learned many tips and tricks while developing an application with Python; you'll excel at this and avoid encountering major problems as a developer. So, grab this course and take your applications to the next level!The fourth course, Troubleshooting Python Application Development, covers quick fixes for your Python application development problems. This course takes you through a structured journey of performance problems that your application is likely to encounter, and presents both the intuition and the solution to these issues. You'll get things done, without a lengthy detour into how Python is implemented or computational theory. Quickly detect which lines of code are causing problems, and fix them quickly without going through 300 pages of unnecessary detail.By the end of the course, you'll learn Python like a professional to build REST APIs & powerful apps using modern Python!About the AuthorsPaul Oliver is the Principal Software Architect at Vosaic. Vosaic helps its users unlock insights with the video for education and simulations. Vosaic is closely aligned with Hudl, which is the premier video platform for sports. Before taking on the role at Vosaic, he worked as a software developer and architect in the banking and criminal justice industries. Throughout his career, he's been passionate about building well-architected software solutions with the security of primary importance. He's architected several applications in the cloud using Microsoft Azure, Amazon Web Services, and Heroku. He received his BSc in Computer Engineering from the University of Nebraska-Lincoln and his Masters of Business Administration degree from Creighton University.Praveen Kumar Sreeram works as a Solution Architect at PennyWise Solutions (an Ogilvy and Mather Company). He has over 12 years' experience in the field of development, analysis, design, and delivery of applications of various technologies, including custom web development using ASP.NET and MVC to building mobile apps using the cross-platform technology Xamarin for domains such as insurance, telecom, and wireless expense management. He has twice been recognized as a Most Valuable Professional by one of the leading social community websites, CSharpCorner, for his contributions toward writing articles and helping community members, mostly on Microsoft Azure. He is highly focused on learning about technology. Omkar Dusane is a software developer based in Mumbai, India. He has designed and developed many software products for startups. He is a food enthusiast and a Node.js lover and was a senior Microsoft Student Partner who represented India at Microsoft Global Student Partner Summit in 2016. He is currently Product Engineer at Kennect Solutions Pvt. Ltd. Mumbai and is responsible for business execution and intelligence tools for various industries. He encourages serverless technologies and has an eye for scalability of new web technologies.
Overview
Section 1: Getting Started with Modern Python
Lecture 1 The Course Overview
Lecture 2 Setting Up Your Development Environment
Lecture 3 Writing Your First Python Program
Lecture 4 Writing Your Second Python Program
Lecture 5 Debugging Your Second Python Program
Lecture 6 Printing and Formatting Strings
Lecture 7 Parsing Simple Strings
Lecture 8 Working with the Re Module
Lecture 9 Working with Dates
Lecture 10 Ensuring Data Integrity and Security
Lecture 11 Working with Files, and File-like Interfaces
Lecture 12 Introduction to Lists and for Loops
Lecture 13 Working with List Comprehensions
Lecture 14 Filtering Data in List Comprehensions
Lecture 15 Some Problems with List Comprehensions
Lecture 16 Working with Generators
Lecture 17 Going to Infinity and Beyond with Itertools
Lecture 18 Introduction to Functions
Lecture 19 Various Concepts of Functions
Lecture 20 Exploring Function Decorators
Lecture 21 Document Code and Verify Code Correctness
Lecture 22 Classes, Modules – When and Why to Use Them?
Section 2: Building REST APIs with Python
Lecture 23 The Course Overview
Lecture 24 The Bigger Picture
Lecture 25 Your Development Environment
Lecture 26 Installing PostgreSQL
Lecture 27 Django Projects and Apps
Lecture 28 Using the Django Development Environment
Lecture 29 MVC and MVT Framework
Lecture 30 Creating and Working with Models
Lecture 31 Migrations and Database Queries
Lecture 32 Writing Our First View
Lecture 33 Routing and HTTP Methods
Lecture 34 Using Templates
Lecture 35 Testing
Lecture 36 Exploring RESTful APIs
Lecture 37 Writing a Simple Hello World API
Lecture 38 Exploring the DRF
Lecture 39 Serializing Models
Lecture 40 Refactoring Our API with the DRF
Lecture 41 Generic Django REST Framework Views
Lecture 42 Extra Viewset Actions and Routers
Lecture 43 Testing the API
Section 3: Tips, Tricks, and Techniques for Python Application Development
Lecture 44 The Course Overview
Lecture 45 Identifying Bottlenecks
Lecture 46 Speeding Up I/O-bound Tasks
Lecture 47 Speeding Up CPU-bound Tasks
Lecture 48 Move Time-critical Tasks to C/C++ Libraries
Lecture 49 Alternative Python Runtimes
Lecture 50 Setuptools
Lecture 51 Source Distribution and Wheels
Lecture 52 Standalone Executables
Lecture 53 Docker
Lecture 54 Unit Testing and Coverage
Lecture 55 Complex Tests and Coverage
Lecture 56 Python Test Driven Development
Lecture 57 Integration Testing
Lecture 58 Python Behavior Driven Development
Lecture 59 Managing Python Environments Efficiently
Lecture 60 Python Package Management
Lecture 61 Debugging and Navigating Python Bytecode
Lecture 62 Prototyping Using the Python Shell and Jupyter
Lecture 63 Linting
Lecture 64 Static Code Analysis
Lecture 65 Type Checking
Section 4: Troubleshooting Python Application Development
Lecture 66 The Course Overview
Lecture 67 Measuring Time Between Two Lines of Code with timeit
Lecture 68 Figuring out Where Time Is Spent with the Profile Module
Lecture 69 More Precise Time Tracking with cProfile
Lecture 70 Looking at Memory Consumption with memory_profiler
Lecture 71 Reduce Execution Time and Memory Consumption with __slots__
Lecture 72 Use Tuples Instead of Lists When Your Data Does Not Change
Lecture 73 Save on Memory Consumption with Generators Instead of Lists
Lecture 74 When to Use Lists Instead of Generators
Lecture 75 Leveraging Itertools to Create Generator Pipelines
Lecture 76 The Problem with Using Lists to Perform Vector Calculations
Lecture 77 Using NumPy’s Arrays for More Powerful Vector Representations
Lecture 78 Rewriting Our Problem with NumPy to Speed It up 40x
Lecture 79 Fast MapReduce with NumPy Broadcasting
Lecture 80 Optimize All Calculations in One Go with numexpr
Lecture 81 The Problem of Serially Executing Web Scraping Calls
Lecture 82 Simple Asynchronous Programming with coroutines and gevent
Lecture 83 Event-Driven Concurrency with Tornado
Lecture 84 Concurrency and Futures with asyncio
Lecture 85 Getting Started with Parallel Programming
Lecture 86 Doubling the Speed of Your List Processing with Tuples
Lecture 87 Easily Speed up a Group of Processes with Pool
Lecture 88 Stop Processes from Interfering with Each Other with Locks
Lecture 89 Logging What Happens When You Have Many Processes
Lecture 90 Stop Modifying the Wrong Object Instance with Correct Object Cloning
Lecture 91 Speed Up Your OOP with namedtuples
Lecture 92 Reduce Getters and Setters with Static Methods and Properties
Lecture 93 Comparing Two Different Objects
Lecture 94 Improve Readability with Abstract Base Classes in Python
Software & full-stack developers who want to learn Python and become Python developers by building fully functioning applications!