Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Рефакторинг Виключення дублювання коду Розробка бібліотек класів та знайомство з багатопроектними рішеннями

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 3.6.2024

Міністерство освіти та науки України

Житомирський державний технологічний університет

Кафедра ПЗОТ

Група ПІ-40

Лабораторна робота №3

Рефакторинг. Виключення дублювання коду.

Розробка бібліотек класів та знайомство з багатопроектними рішеннями

Житомир-2011г.


ТЕХНІЧНЕ ЗАВДАННЯ

Розробити дві програми для розв’язання квадратних рівнянь (, де ) з різними інтерфейсами користувача (текстовим та графічним).

1. Виключити дублювання коду програм, шляхом оформлення алгоритму розв’язання квадратного рівняння у вигляді класу та винесення його в окрему бібліотеку.

2. Клас розв’язання квадратного рівняння спроектувати таким чином, щоб його можна було використовувати у програмах з будь-яким інтерфейсом користувача.


Опис розробленої програми

Виконавши дану лабораторну роботу, я уникнув дублювання коду програми, шляхом опису алгоритму розв’язання квадратного рівняння у класі Class1.cs та винесенням його у окрему бібліотеку mylab. Була створена можливість використовувати клас розв’язання квадратного рівняння у програмах з будь-яким інтерфейсом користувача, а саме: «консольний» та «форма».

квадратний рівняння текстовий графічний інтерфейс


Код програми

//Клас, винесений в окрему бібліотеку mylab;System;System.Collections.Generic;System.Linq;System.Text;

mylab

{class SqrEquation

{double a;double b;double c;double D;double x1;double x2;void MathDiscriminant()

{= b * b - 4 * a * c;

}void MathX1()

{= (-b + Math.Sqrt(D)) / (2 * a);

}void MathX2()

{= (-b - Math.Sqrt(D)) / (2 * a); ;

}SqrEquation(double a, double b, double c)

{.a = a;.b = b;.c = c;(a == 0)new Exception("Це не квадратне рівняння!");.MathDiscriminant();.MathX1();.MathX2();

}

}

}

Інтерфейс форми

System;System.Windows.Forms;mylab;lab3

{partial class Form1 : Form

{Form1()

{();

}void Form1_Load(object sender, EventArgs e)

{

}void button1_Click(object sender, EventArgs e)

{equ = new SqrEquation(Convert.ToDouble(tbA.Text), Convert.ToDouble(tbB.Text),.ToDouble(tbC.Text));.Text = Convert.ToString(equ.x1);.Text = Convert.ToString(equ.x2);

}void textBox5_TextChanged(object sender, EventArgs e)

{

}

}

}

Консольний інтерфейс користувача

System;mylab;lab2

{Program

{void Main()

{equ = new SqrEquation

(Convert.Int32(System.Console.ReadLine()), .ToInt32(System.Console.ReadLine()),.ToInt32(System.Console.ReadLine()));.WriteLine("x1={0}; x2={1}", equ.x1, equ.x2);.Console.Read();

}

}

}


Висновок

В ході лабораторної роботи мною було розроблено 2 програми для розв’язання квадратних рівнянь з текстовим та графічним інтерфейсами користувача без дублювання їх коду.




1. темах ТГУ Александрова А
2. Тема Основные направления в теории и практике обучения иностранному языку в истории отечественной и зарубе
3. задание 2 по курсу ldquo;Макроэкономикаrdquo; Выполнил
4. Course by 2 or 4 persons ech with smll hrd bll driven with the club into series of 9 or 18 holes using s few strokes s possible
5. 1 Принципы равноправной международной торговли
6. Спелеотуризм як різновид спортивного туризму
7. ЛИТЕРАТУРНЫЙ ОБЗОР Металлорежущие станки токарной группы относятся к наиболее распространенным стан
8. ТЕМАХ {YGdYbLu}{SiGe}In 02
9. х годов ~ и это признавала официальная статистика ~ страна испытывала огромный дефицит в продовольствии тов
10. Рак желчного пузыря и внепеченочных желчных протоков
11. Курсовая работа- Виды деятельности в области туризма
12. делают живые люди то их психология неизбежно накладывает свою печать на всю политическую жизнь общества
13. тема- Потоки и запасы в макроэкономической системе народного хозяйства Исполнитель- Гатиатуллина
14. Диагностика и лечение артериальной гипертензии в детском возрасте
15. тема анализа маркетинговой информации 26
16. Митне право. Робоча навчальна програма.html
17. План-конспект урока Математическое моделирование при решении экологических задач
18. тематической подготовки учащихся ~ задача сложная и многогранная
19. Управление ценами конечных продаж
20. 201 г