Класс MailTool

klass mailtool Сценарии на стороне клиента

В примере 13.22 представлена реализация суперкласса, общего для всех остальных классов в пакете. Отчасти такая организация предусмотрена с целью поддержки возможности расширения. В настоящее время эта возможность используется, только чтобы включать и выключать вывод трассировочных сообщений (в некоторых клиентах, таких как веб-приложения, может быть нежелательным, чтобы в стандартный поток вывода выводился бы посторонний текст). Подклассы, подмешивающие «немую» версию, лишаются возможности вывода.

Пример 13.22. PP4E\Internet\Email\mailtools\mailTool.py

############################################################################ общие суперклассы: используются для включения и отключения вывода трассировочных сообщений

############################################################################

class MailTool: # суперкласс всех инструментов

# электронной почты

def trace(self, message): # переопределите, чтобы запретить
print(message) # или выводить в файл журнала

class SilentMailTool: # для подмешивания, а не наследования

def trace(self, message):

pass

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий