Python for Advanced Users: Learn the Grammar of Concurrency and Parallelism Feat. Multithreading vs. Multiprocessing (Inflearn Original)
This course is designed to cover the grammar of multi-threading, multi-processing, parallelism, and concurrency based on OS knowledge in preparation for technical interviews. You will learn basic knowledge about how to increase execution efficiency with multiple resources.
This course is designed for those who know and can use basic Python grammar, targeting job seekers who want employment in Python application fields, experienced developers (engineers) preparing for career transitions, and those who want to study Python's internal principles more deeply. It is prepared to help you learn knowledge about Python concurrency, parallelism, and distributed processing. Rather than simple mechanical explanations, we proceed live with hands-on coding together.
Mastering Python Final Edition Concurrency and Parallelism, Threading and Multiprocessing Core Operating Principles and Features
Python Concurrency Programming from Explanation to Practical Example Implementation
As various open source projects utilizing Python are developing across a wide range of fields, global services are already being provided extensively in many areas. Support for concurrency technology across the overall programming domain has become a hot topic. Python also provides concurrency-related frameworks/libraries that are not lacking compared to other languages.
Many development languages that have lagged somewhat behind hardware advancements are showing vulnerabilities in processing speed, stability, and other areas during the process of building infrastructure and systems related to modern large-scale data processing.
People who develop software using Python need to learn data distribution solutions and concurrent programming that can fully utilize hardware performance to improve their skills to a certain level. This can be confirmed through the desired talent profiles of many IT companies.
Through collaborating with many developers, engineers, analysts, and other professionals in the field and conducting training, I've observed the growth of various colleagues. Some read specifications (documents) first before diving into coding without writing code directly, others use Python as a utility tool after moderate theoretical learning, and still others utilize Python while going back and forth between theory and practice... The conclusion drawn from these various patterns was that people who learn the inherent operating principles of programming languages and apply them to practice grow very rapidly. This would also be related to transitioning to desired jobs, salary increases, startup ventures, and more.
Want to become a skilled Python developer?
Learning concurrency/parallelism syntax for data processing suitable for large-scale services is absolutely necessary.
Based on the above experience, I prepared this course to deliver content that matches Python's unique grammatical features in an easy-to-read format for theoretical content and practice-based learning of concurrent programming, which is essential to cover in depth in Python and other programming languages but often feels challenging.
Python is perceived as a language with slower performance compared to other languages. We will study various features that solve performance issues by examining the internal operating principles. Prior learning of computer architecture and operating principles is also important.
Based on extensive Python development experience and both online and offline teaching experience, I planned and conducted this course. Rather than simply understanding core principles theoretically, you will naturally understand them through the coding process we do together in this class.
Course Outline
Learning Order
Environment Settings
Multithreading - Python Multithreading
Parallelism with Multiprocessing - Python Multiprocessing
Concurrency, CPU Bound vs I/O Bound - Python Concurrency and CPU, I/O Binding
Sections 0-1 of the course provide preliminary learning on concurrency and parallelism that will be covered in later parts, based on basic environment setup and simple examples of Python threading.
Through this, you will learn examples that enable multiple calculations at the same time using regular threads and CPU. Additionally, you will be able to acquire sufficient basic knowledge about operating systems.
The 2nd to 3rd sections are the main topics of this course. Through writing simple and easy-to-understand examples of parallelism and concurrency, we provide performance comparisons between multithreading and multiprocessing, as well as examples of AsyncIO that encompasses all their advantages.
Additionally, you'll learn to write Python's signature concise and simple code through the high-level abstraction package Future.
After taking this course
Whether your purpose is hobby, research, or practical development, once you have accumulated experience in Python development, it's time to study fast execution time. Through well-organized examples, I will provide you with various experiences and know-how that can minimize the time and effort required.
After the course ends, you will have deep extended knowledge of Python concurrency and parallelism, enabling you to be prepared for high-level technical interviews with skillfully scalable Python knowledge foundation that can be utilized anytime in collaboration across various fields.
Furthermore, based on Python and operating system knowledge, after acquiring knowledge about concurrency and parallel processing, you will be able to take the first step toward developing fundamental programming skills for large-scale data distributed processing and server-side large-scale services.
This is recommended for these people!
(Inflearn Original - This course is designed for those who have learned beginner and intermediate Python, or those who can use Python at that level or higher ð)
One more time!
Intermediate to Advanced Grammar Challenge! Python Beginner
Challenge Pagosu
Python Concurrency/Parallelism For those who want to utilize it
Python Stack!
Python-based technical interview job seekers in preparation
Step by step
Those who want to learn Python in depth
Try it yourself!
This lecture is
This course covers from fundamental operating system knowledge and theoretical explanations of concurrency and parallelism to hands-on practical example exercises.
Related Roadmap Inflearn Original Series: Python
#ConceptBuilding #PracticalFoundation #DataTypes This course was created with actual practical application in mind, not just a basic 'taste' of fundamentals covered in existing Python beginner courses.
#DataAnalysis #WorkAutomation Prepare by learning advanced Python syntax and package utilization through an intermediate programming course that takes you one step beyond beginner level!