Отображение UML в c # - PullRequest
       15

Отображение UML в c #

0 голосов
/ 16 сентября 2010

Может кто-нибудь сказать мне, как я могу отобразить агрегацию и композицию в c #, учитывая два класса STUDENT и LECTURER.

мой вопрос может быть неясным. В качестве примера я использовал конструктор классов VS для генерации отношений Ассоциации между классами. Рассмотрим 2 класса LECTURER и STUDENT_SOCIETY.Class Designer создает следующий код. Blockquote

public class Lecturer
{
    private string Name;
    private string Specialization;

    public StudentSociety StudentSociety
    {
        get
        {

        }
        set
        {
        }
    }


}

public class StudentSociety
{
    private int Name;
    private string NoOfMembers;
}

Так же, как я могу смоделировать агрегацию и состав

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

Обычно состав является постоянным и представлен полностью состоянием одного класса в другом, в то время как агрегация включает в себя какое-то назначение или ссылку.

Итак, при условии, что лектор отвечает за количество студентов, составление будет примерно таким:

Public class Lecturer
{
    public class Student
    {
        string mName = "";
... etc.

Принимая во внимание, что агрегация может быть:

Public class Lecturer
{
    ... Some code ...
}

Public class Lecturer
{
    Student mStudent;

    public void setStudent(Student theStudent)
    {
        mStudent = theStudent
    }

... etc.

Дайте мне знать, если я получу хорошую оценку за вашу домашнюю работу ...;)

1 голос
/ 16 сентября 2010

Требуется больше информации. Хотите взять модель вашего домена и отобразить ее в диаграмме UML? Обычно это происходит по-другому (сначала на диаграмме, затем сгенерируйте модель в виде объектов кода). Для этого нет ничего встроенного в C # или «ванильную» Visual Studio; тем не менее, MS Visio (часть установок Office профессионального уровня) может переходить от диаграммы к коду и обратно и интегрируется с VS для этого. В прошлый раз, когда я работал с Visio, это был не «чистый» UML; символы диаграммы заимствованы из комбинации схем диаграмм. Тем не менее, он даст вам удобочитаемое графическое представление вашей модели, и сделанные вами изменения могут быть переизданы в виде объектов кода.

Что касается фактического определения взаимосвязи между ними, то, как правило, это многие ко многим, а объединяющий контекст для пригодного отношения один ко многим представляет собой «класс» или «раздел» «курса» или « предмет". Один курс имеет много разделов. В каждом разделе есть один преподаватель и много студентов. Один и тот же ученик может посещать несколько секций, а один и тот же учитель может преподавать несколько секций. Это означает, что и лектор, и студент могут иметь список разделов, которые они преподают / посещают (если вам нужна «двусторонняя» модель предметной области, в которой вы можете перемещаться в любом направлении вокруг графа объекта).

...