Академический Документы
Профессиональный Документы
Культура Документы
Теоретическая часть
Рассмотрим простое приложение по сложению двух чисел и выводу результата.
Все приложение можно написать при помощи лишь одного класса Calculate.
public Calculate() {
}
1
package com.operation;
//сложение
public class OpAdd implements Operation {
public OpAdd() {
}
//умножение
public class OpMultiply implements Operation {
public OpMultiply() {
}
import com.operation.*;
import com.resultWriter.*;
3
Итак монолитное приложение было разъединено на компоненты. Теперь мы имеем
OpAdd, OpMultiply и основной класс CalculateScreen. В главном классе мы определяем
один из Operation классов и используем его.
Если мы хотим изменить действия, то нужно просто поменять названия классов.
Все остальное поменяется автоматически (вывод информации).
Практическая часть (общая постановка и технология решения задачи работы)
Разработать модульное приложение, позволяющее вести учет ключевых объектов,
имеющих некоторый вид связи (агрегация или композиция) с двумя другими объектами,
находящимися друг с другом в такой же взаимосвязи, согласно своему варианту задания.
Реализовать в программе возможность вывода на экран следующей информации:
a) список ключевых объектов, связанных с одним из представителей первого
объекта;
b) список ключевых объектов, связанных со каждым представителем второго
объекта;
с) список ключевых объектов, связанных с одним из представителей второго
объекта.
Разберем для пример первый вариант задачи. Исходя их тематики варианта, можно
сформулировать следующее задание: разработать модульное приложение, позволяющее
вести учет студентов, обучающихся в университете, согласно следующей информации о
студентах: код студента, фамилия, имя, отчество, дата рождения, адрес, телефон,
факультет, группа.
Реализовать в программе возможность вывода на экран следующей информации:
a) список студентов заданного факультета;
b) списки студентов для каждого факультета и курса;
с) список учебной группы.
В качестве одного из вариантов реализации можно выполнить следующее
разделение на модули:
1) Классы носители информации: университет (University), группа (Group), студент
(Student).
2) Классы для обработки: добавление студентов, групп и факультетов (University),
формирование списка/списков (MakeLists), вывод на экран списка/списков (ShowLists).
3) Для запуска приложения класс Runner.
Создать для примера массив объектов с информацией о студентах.
Варианты задания
1. Информация о студентах группы.
2. Информация о владельцах автотранспорта.
3. Информация о легковых автомобилях.
4. Информация о географическом расположении городов.
5. Информация о товарах на складе.
6. Информация о выдаче литературы в библиотеке.
7. Информация об абонентах телефонной сети.
8. Информация о предприятиях.
9. Информация о магазинах.
10. Информация о программных продуктах.
11. Информация об ЭВМ.
12. Информация о факультетах ВУЗа.
13. Информация о пациентах поликлиники.
14. Информация об изделиях легкой промышленности.
15. Информация об учащихся школы.
16. Информация о книгах в библиотеке.
4
17. Информация о поставщиках товаров.
18. Информация о доходах жителей.
19. Информация о дисплеях.
20. Информация о магнитных носителях информации.
21. Информация о сотрудниках кафедры.
22. Информация о телефонах, установленных в ВУЗе.
23. Информация об аудиториях ВУЗа.
24. Информация о жителях города.
25. Информация о экзаменах в ВУЗе.
26. Информация о вступительных испытаниях в ВУЗ.
27. Информация о географическом расположении морей.