Объектно-ориентированное программирование и классы, часть 2. Рассыльщик почты
DL
21.12.2000
Сперва немного новостей. Вышел .
From: Antonio <anton@concord.ru>
[]
[] или .
Возрадуйтесь! Теперь gd работает, даже если php поставлен как модуль апача, ну и ест-но gd знает все (gif,jpeg,png,wbmp).
Добавлен новый модуль php_printer.dll? вероятно теперь из пхп можно выводить чен-ть на печать и еще куча всего гового.
Насчет принтера не знаю, а вот gd с gif ? это хорошо!
Скачал и поставил. Ура! GD под Win32 работает! Когда у меня стоял php/4.0.2 release, я попробовал проверить работу gd. Расскомментировал extention php_gd.dll ? а php мне "unsupported or undefined function Imagecreate". После этого работать с раскомментированной строкой php_gd.dll было невозможно ? php просто повисал при выполнении любого скрипта. Теперь все работает, и это главное!
Теперь по теме.
В я описал его главные преимущества ? структура, группировка используемых вместе функций и переменных, упрощение адресации. Теперь ? о том, как можно применять объекты и классы в программах.
ООП, оно, конечно, вещь хорошая. Но где же его применять? Вот какие условия использования ООП у меня получаются:
1. Необходимо одновременная обработка нескольких переменных (например, передавать их в качестве параметров функции ? писать все переменные не много ли чести? :). То есть, переменным нужно придать некоторую структуру, ассоциацию. Чтобы функция без дополнительных указаний сразу видела, с чем ассоциирована данная переменная, и что с ней делать.
2. Подобных структур данных может быть несколько. Если использовать шаблоны, большинство методов можно использовать повторно. Когда структуры данных несколько различаются, можно использовать механизм наследования.
Описанный мною в прошлом выпуске класс CMail я использовал для рассылки новостей. Но когда количество подписчиков перевалило за 50, программа не успевала выполниться за минуту (именно такое ограничение было у провайдера). Причина ? в том, что рассылался файл с аттачментом, и каждый раз программа его кодировала в base64 и рисовала переносы строк. Класс, правда, не был предназначен для рассылки почты подписчикам. Но это так, детали...