Delphi → Пример - Абстрактная фабрика на Delphi
abstract, шаблоны проектирования, Delphi
Этот шаблон идеален там, где вы хотите изолировать свое приложение от реализации конкретных классов. Например, если вы хотите наложить VCL Delphi на общий уровень VCL для 16 и 32-битных приложений, вы можете начать с абстрактной фабрики в качестве базы.
Пример …
ЧитатьШаблоны проектирования → Порождающие шаблоны проектирования - Объектный пул
шаблоны проектирования, object, pool
Цели
Объхктный пул может значительно повысить производительность; он наиболее эффективен в ситуациях, когда стоимость инициализации экземпляра класса высока, а скорость создания экземпляра класса высока, при этом количество экземпляров, используемых в любой момент времени, невелико.
Проблематика
Пулы объектов (иначе называемые пулами …
ЧитатьJava → Пример - Абстрактная фабрика на Java
Классы Абстрактных фабрик часто реализуются с помощью фабричных методов, но они также могут быть реализованы с использованием Prototype. Абстрактная фабрика может хранить набор прототипов, из которых можно клонировать и возвращать объекты.
- Factory Method: создание через наследование.
- Prototype: создание через делегирование. …
PHP → Пример - Абстрактная фабрика на PHP
Пример шаблона проектирования Абстрактная фабрика на PHP
Читать<?php /* * Abstract Factory classes */ abstract class DB_Abstraction_Factory { protected $settings = array(); protected function __construct() { $this->settings = Settings::getInstance(); } abstract public function createInstance(); } class DB_Abstraction_Factory_ADODB extends DB_Abstraction_Factory { …
Шаблоны проектирования → Порождающие шаблоны проектирования - Фабричный метод
шаблоны проектирования, abstract, cpp
Цели
- Определяем интерфейс для создания объекта, но пусть подклассы решают, какой класс следует создавать. Фабричный метод позволяет создать экземпляр класса для подклассов.
- Определение «виртуального» конструктора.
- Оператор new является вредным.
Проблематика
Структура проекта должна стандартизировать архитектурную модель для целого ряда приложений, …
ЧитатьEVILEG → Добавление первоначальной поддержки фотографий и фотоальбомов
Выходные не прошли даром. За пару дней удалось написать достаточно функциональную поддержку загрузки фотографий через WYSIWYG редактор сайта. О чём хотелось бы подробнее сообщить пользователям сайта в виде статьи.
Цели
Написанием собственного WYSIWYG редактора преследую на данный момент несколько целей. …
ЧитатьШаблоны проектирования → Порождающие шаблоны проектирования - Строитель
Builder, шаблоны проектирования, Строитель
Причины
- Отделение построения сложного объекта от его представления, чтобы тот же процесс построения мог создавать разные представления.
- Разборка сложного представления, создание одной цели из нескольких вариаций.
Проблематика
Отделение алгоритма интерпретации объекта (например, парсинг документа) от механизма сохранения готового состояния объекта. …
ЧитатьPython → Пример - Абстрактная фабрика на Python
abstract, factory, abc, python
Пример абстрактной фабрики на языке программирования Python
Читать""" Предоставление интерфейса для создания семейств связанных или зависимых объектов без указания их конкретных классов. """ import abc class AbstractFactory(metaclass=abc.ABCMeta): """ Объявление интерфейса для методов, которые создают объекты. """ @abc.abstractmethod def create_product_a(self): pass …
C++ → Пример - Абстрактная фабрика на C++
cpp, шаблоны проектирования, abstract, new
Обсуждение. «Подумайте о создании объектов как о фабрике, которая порождает эти самые объекты».
Здесь мы назначаем обязанности создания объектов фабричному объекту, а затем используем функции наследования и виртуальные члены для предоставления возможности «виртуального конструктора». Таким образом, существуют два аспекта. Клиент …
ЧитатьШаблоны проектирования → Порождающие шаблоны проектирования - Абстрактная фабрика
шаблоны проектирования, абстрактная, abstract, new, фабрика
Причины
- Предоставление интерфейса для создания семейств связанных или зависимых объектов без указания их конкретных классов.
- Иерархия, которая инкапсулирует: множество возможных «платформ» и построение набора «продуктов».
- Оператор new считается вредным.
Проблематика
Если приложение должно быть портативным, ему необходимо инкапсулировать все зависимости …
ЧитатьLinux → Bash скрипт для создания и скачивания дампа базы данных и медиа файлов с удаленного сервера
В процессе разработки сайта на Django пришлось начать разбираться с Bash скриптами, чтобы автоматизировать рутинные задачи. Например, создание и скачивание дампа базы данных с сайта, а также резервирования медиа файлов.
Будем считать, что что Вы уже имеет доступ к серверу …
ЧитатьLinux → Подсчёт количества коммитов по авторам в Git
Just for fun.
Чем могут меряться программисты? Конечно, своими коммитами, хотя бы их количеством в Git репозитории.
Для этого можно использовать команду git shortlog, которая суммирует вывод git log, предоставляя более краткий вывод.
Опции
У данной команды есть несколько опций, …
Читать- Akiv Doros
- 11 ноября 2024 г. 14:58
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:50баллов,
- Очки рейтинга-4
- molni99
- 26 октября 2024 г. 1:37
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:80баллов,
- Очки рейтинга4
- molni99
- 26 октября 2024 г. 1:29
C++ - Тест 004. Указатели, Массивы и Циклы
- Результат:20баллов,
- Очки рейтинга-10