Практическая работа по "Разработке программных модулей"
Автор: Veelena • Апрель 10, 2024 • Практическая работа • 1,457 Слов (6 Страниц) • 90 Просмотры
Министерство образования и науки Челябинской области
государственное бюджетное профессиональное образовательное учреждение
«Саткинский горно-керамический колледж имени А.К.Савина»
09.02.07 Информационные системы и программирование (техник)
Практическая работа по разработке программных модулей
Отчет2
Студент: Сагандыкова Д.М. Группа:___305/1________
Работа выполнена: 28_03_.2024_._______________________________________________________
(подпись студента)
Руководитель работы: ___________________/ Жилина А.Ю/_______________
(подпись) (фамилия, инициалы) (дата)
2024
2. Цель работы, задание, вариант
Цель работы: научиться использовать порождающие шаблоны проектирования методом строитель.
- StringBuilder report: представляет объект, который должен быть создан. В данном случае все части объекта заключены в StringBuilder, который используется для построения итогового отчета.
- HtmlReportBuilder: представляет объект, который должен быть создан StringBuilder report. Он содержит методы для добавления различных элементов в отчет, таких как заголовок, разделы, изображения и код.
- HtmlReportBuilder: это конкретная реализация HtmlReportBuilder. Он создает объект StringBuilder report и определяет интерфейс для доступа к нему.
- ReportDirector: распорядитель - создает объект, используя объекты Builder
4.3. Классовая диаграмма для задачи в нотации UML.
[pic 1]
5. Результаты работы
5.1. Текст программы (только классы, реализующие шаблон проектирования и клиентский код, использующий шаблон).
// Пример строителя HTML-отчета
public class HtmlReportBuilder // Этот класс является “Строителем”. Он содержит методы для добавления различных элементов в отчет, таких как заголовок,
// разделы, изображения и код.Все эти элементы добавляются в StringBuilder,
// который используется для построения итогового отчета.
{
private StringBuilder report;
public HtmlReportBuilder()
{
this.report = new StringBuilder();
}
public void AddTitlePage(string title)
{
this.report.Append($"<h1 style=\"color: blue; text-align: center;\">{title}</h1>");
}
public void AddSection(string sectionTitle, string content)
{
this.report.Append($"<h2 style=\"color: darkred;\">{sectionTitle}</h2>");
this.report.Append($"<p style=\"text-indent: 30px;\">{content}</p>");
}
// Добавление изображения
public void AddImage(string imageUrl, string altText)
{
this.report.Append($"<img src=\"{imageUrl}\" alt=\"{altText}\" style=\"width: 100%; height: auto;\">");
}
// Добавление кода программы
public void AddCodeSnippet(string code)
{
this.report.Append($"<pre><code style=\"background-color: #f0f0f0; padding: 10px;\">{code}</code></pre>");
...