You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
4.8 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{
"cells": [
{
"cell_type": "markdown",
"id": "2c780f7c",
"metadata": {},
"source": [
"# Углубленный Python #\n",
"\n",
"В этом блоке мы более подробно познакомимся с тем, как работают классы в Python. Узнаем, как создавать свои классы, которые поддерживают стандартные протоколы и методы. Научимся отлаживать и тестировать свои программы."
]
},
{
"cell_type": "markdown",
"id": "356f5954",
"metadata": {},
"source": [
"## Задачи обучения ##\n",
"\n",
"- Изучить углубленные особенности объектно-ориентированной модели в Python.\n",
"- Научиться искать и исправлять ошибки в программе на Python.\n",
"- Освоить тестирование программ на Python."
]
},
{
"cell_type": "markdown",
"id": "33438bb7",
"metadata": {},
"source": [
"## Оглавление ##"
]
},
{
"cell_type": "markdown",
"id": "90a1e5ab",
"metadata": {},
"source": [
"### Особые методы классов ###\n",
"\n",
"- [Магические методы](1.%20Особые%20методы%20классов/Магические%20методы.ipynb)\n",
"- [Итераторы](1.%20Особые%20методы%20классов/Итераторы.ipynb)\n",
"- [Контекстные менеджеры](1.%20Особые%20методы%20классов/Контекстные%20менеджеры.ipynb)\n",
"- [Документация](1.%20Особые%20методы%20классов/Документация.ipynb)\n",
"- [Тест по методам](1.%20Особые%20методы%20классов/Тест%20по%20методам.ipynb)\n",
"- [Файл с магическими методами](1.%20Особые%20методы%20классов/Файл%20с%20магическими%20методами.ipynb)"
]
},
{
"cell_type": "markdown",
"id": "e8f133e3",
"metadata": {},
"source": [
"### Механизм работы классов ###\n",
"\n",
"- [Дескрипторы](2.%20Механизм%20работы%20классов/Дескрипторы.ipynb)\n",
"- [Метаклассы](2.%20Механизм%20работы%20классов/Метаклассы.ipynb)\n",
"- [Документация](2.%20Механизм%20работы%20классов/Документация.ipynb)\n",
"- [Дескриптор с комиссией](2.%20Механизм%20работы%20классов/Дескриптор%20с%20комиссией.ipynb)"
]
},
{
"cell_type": "markdown",
"id": "480a600c",
"metadata": {},
"source": [
"### Отладка и тестирование ###\n",
"\n",
"- [Отладка](3.%20Отладка%20и%20тестирование/Отладка.ipynb)\n",
"- [Тестирование](3.%20Отладка%20и%20тестирование/Тестирование.ipynb)\n",
"- [Документация](3.%20Отладка%20и%20тестирование/Документация.ipynb)\n",
"- [Тест по блоку](3.%20Отладка%20и%20тестирование/Тест%20по%20блоку.ipynb)"
]
},
{
"cell_type": "markdown",
"id": "c14185e2",
"metadata": {},
"source": [
"Закончился четвертый блок нашего курса. Мы с вами разобрали как на самом деле работают классы в Python'е, как реализована объектно-ориентированная парадигма в языке. Мы с вами узнали, что такое дескрипторы, метаклассы, как создавать собственные контекстные менеджеры, итераторы, как определять классы с переопределенным поведением. В следующем блоке вы познакомитесь с асинхронным и многопоточным программированием в Python'е. [Далее...](../5.%20Многопоточное%20и%20асинхронное%20программирование/Readme.ipynb)"
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.8"
}
},
"nbformat": 4,
"nbformat_minor": 5
}