Тайм-коды: Модули и пакеты, Библиотеки, ООП, Объекты и Классы 1:09 Модули и пакеты. Пользовательские библиотеки 1:58 проблема, которую решает модульное программирование - уменьшение сложности программы за счет декомпозиции самих имён функции. Структурирование пространства имён, функций, объектов (классов), переменных. Создается иерархическая структура проекта 9:43 иллюстрация 14:02 декомпозиция общего кода на модули (отдельные файлы). Должна быть некая логика, по какому-то принципу 16:56 направленность зависимостей. Не должно быть циклического взаимодействия модулей друг с другом 19:53 когда разбивать на модули 23:17 Пакет модулей package 26:53 механизмы структурирования программного кода 28:20 отличие фреймворка от библиотеки (пакета модулей) 30:37 импорт import 41:00 пакеты 43:22 код пример 44:14 комплексные числа complex 45:16 если появляются несколько объектов с одинаковыми именами, то просто работает последний (только один), т.к. в Питоне нет перегрузки функций 48:40 if __name__ == "__main__": # чтобы модуль запускался не автоматически main() 51:57 взаимозависимости модулей между собой, менеджеры пакетов. В Питоне - pip 54:58 модуль - это файлик с функциями, которые можно импортировать 55:19 переменная name библиотеки и главного (main) модуля 1:00:28 Объекты и классы. Объект - это переменная классового типа 1:03:37 именование класса по PEP8 1:04:42 класс - коробочка для упаковывания функций и переменных (объединение кода и данных) 1:12:14 абстрактный класс. Классовое свойство. Классовый атрибут. Экземплярный атрибут 1:15:17 у объектов одного типа могут быть разные атрибуты 1:16:10 конструктор класса def __init__(): 1:17:09 отличие классов от модулей 1:18:40 задача модульного программирования и ООП
@TheBestSurvival
3 жыл бұрын
Какой же крутой человек. Тимофей, пусть в вашей жизни все вокруг будет таким же полезным, позитивным и крутым, как вы в этих обучающих курсах!
@user-jl8wm8rq4e
2 жыл бұрын
Очень признателен вам, Тимофей, за ваш труд и старания! 👍
@user-fs8tf4ht4j
3 жыл бұрын
Вы прекрасный преподаватель!!
@Aspirin2007
3 жыл бұрын
А я? 🤔😉
@user-sw5vg3qo3h
3 жыл бұрын
Лайк, коммент для продвижения! Спасибо! Тимофей за ваши лекции
@Leju_Perju
3 жыл бұрын
"Класс - это объединение кода и данных" Это просто супер объяснение для начинающих, для понимания что это такое, вот серьезно. Спасибо
@avazart614
3 жыл бұрын
Читай "инкапсуляция", т.е. вполне нормальное определения. Только под кодом имелось ввиду ф-ции т.е. методы. а под данными члены класса.
Это когда долго долго учился и ничего не понял а потом пришёл Тимофей Фёдорович и на пальцах всё объяснил
@svitq368
2 жыл бұрын
Есть прогресс в программировании в целом за эти 9 месяцев? Интересно было бы узнать)
@maratmusafir
2 жыл бұрын
@@svitq368 оооооо! Ещё какой! print("Hello world " ) научился наконец то!
@ASM1538
3 жыл бұрын
Спасибо. Все четко и понятно
@linuxlifepage
3 жыл бұрын
Спасибо! Интересные уроки 👍👍👍
@user-tt3ub7mh1p
3 жыл бұрын
Желаю Вам побольше подписчиков за Ваш труд
@volhak4519
3 жыл бұрын
Присоединяюсь
@deffunction7657
Жыл бұрын
благодарю Вас за лекцию Тимофей
@volhak4519
3 жыл бұрын
Очень талантливый преподаватель
@vladlenmontez8568
6 ай бұрын
Никогда не понимал ООП,читал книги смотрел видосы и не помогло.Но с вами я понял всё стало на свои места
@sergeylitvinenko779
Жыл бұрын
Спасибо за доступ !
@user-qs7st3sw8c
3 жыл бұрын
Наконец-то началось то что можно назвать интересным
@SeriesWOT
3 жыл бұрын
Молодец холодец) о_О
@kirillium9332
2 жыл бұрын
Лучший.
@slava_zxz
2 ай бұрын
Угарно на самом деле, как в любой серии видео по обучению первое видео набирает несколько миллионов, а в середине-конце уже до 100к
@1kolikoli1
3 жыл бұрын
На 58:49 небольшая ошибка, имя импортированного модуля влияет, просто Тимофей импортировал один модуль 2 раза с разными именами (lib и library), но дважды обратился к модулю lib. Таким образом функция вызвалась из модуля lib и имя было "lib". Если бы он написал library.print_name() тогда бы вывелось имя "library". Просто имейте это ввиду.
@user-el1fy2ob4d
Жыл бұрын
Нет, это вы что-то путаете. Не получается так, имя всегда выдает то, какое есть у модуля исходное
@eugenesemin4082
Жыл бұрын
Никакой ошибки тут нет. Можно импортировать модуль хоть под десятью разными псевдонимами, но в результате будет создан всего один объект модуля, и все имена заданные при импорте будут ссылаться на один и тот же объект. А переменная __name__ данного объекта будет иметь имя файла модуля, никакие псевдонимы при импорте не него не влияют. Поэтому в примере в видео - создается один объект модуля lib, переменная __name__ получает значение 'lib', а на данный объект просто ссылаются два имени в том модуле, в который его импортировали, т.е. lib и library ссылаются на один и тот же объект в памяти, с одни и тем же значением переменной __name__, поэтому не важно, через какое имя вызвать функцию print_name, результат будет аналогичен.
@user_Ilya1987
10 ай бұрын
Прямо смотришь и понимаешь насколько все доспупно для понимания, постыми понятными выражениями.
@user-up2vk4bh2d
3 жыл бұрын
1:19:54 - Понятно? Агааааа, как тут не понять))))
@jamjam3337
6 ай бұрын
👍
@mantrida
3 жыл бұрын
Я бы сказал, что класс - это некий шаблон для создания объектов (экземпляров класса).
@artyshock569
2 жыл бұрын
класс - это идеальный, но абстрактный пример для его экземпляров. нумеро уно, а детки - подобия с отличиями.
@caftanfire7597
3 жыл бұрын
Я правильно понимаю, что "2020 Практика программирования на Python" и "2017-2018 Алгоритмы и структуры данных на Python 3" это разные дисциплины и смотреть их надо именно в таком порядке? Первая дисциплина преподаётся в 1 семестре, а вторая во 2 и 3 семестрах да?
@OAV2008OAV
3 жыл бұрын
Если кому интересно, Goat Says 'Meh'. Теперь ты знаешь.
@korvet348
3 жыл бұрын
А мы "загрузки" назовем множеством папок и норм)
@user-wh3jr1wf5y
3 жыл бұрын
много чего написал, комп глюканул, лень переписывать(((( коротко.... я сам Учитель музыки... смотрю с удовольствием хотя и нафиг не надо ....казалось бы...НО приемы преподнесения информации... ну я стырил и не стыдно(хы-хы-хы), и тырю, и не стыдно )))) ваши вот эти функции в нотный стан перевожу и ноты.... заколебало....хотя иногда такая у-у-у-у-уня играет из под пальцев...прикольно...на баяне, с электронным приводом(гы-ы-ы-ы-ы) соседи привыкли и даже стучали в двери когда 4 дня тишины было
@user-ul6yv9pr8e
2 жыл бұрын
получается, чтобы создать новый язык достаточно скопировать старый и поменять немного правила) буду удивлен если остальные функции будут похоже
@sacramentofwilderness6656
3 жыл бұрын
Вопрос по поводу различия классов и модулей - если я импортирую один и тот же модуль под несколькими разными именами : import mymodule as m1, import mymodule as m2, и в этом модуле есть какие-то константы - то ведь по сути я в каком-то смысле сделал два экземпляра? Ну за исключением того, что не будет кастомного конструктора. Или есть ещё тонкости?
@michaelmushers6368
3 жыл бұрын
За чем мне это пока не знаю точно, ведь есть основная работа? Но оторваться не могу, конспект накатал приличный уже. Понял для себя одно - программирование не даёт мозгу зачерстветь. Спасибо.
Пікірлер: 46