1. Podstawy implementacji oprogramowania

Zadanie 1

Dla poniższej klasy napisz odpowiadający jej kod w wybranym języku programowania. Zastosuj konwencje nazewnicze właściwe dla wybranego przez siebie języka. Opisz zastosowane konwencje nazewnicze. W razie potrzeby wykonaj inżynierię odwrotną, czyli dokonaj aktualizacji klasy na diagramie.

Zadanie 2

Stwórz model klas odpowiadający poniższemu szkieletowi kodu.

public class CTabelaStudentow {
  
private int liczbaStudentowNaLiscie;
   private CTabelaSymboli translacja;
   public void pokazStudenta(int nr) {}
   void zbudujTabeleTranslacji(XListaStudentow lis) {}
   private void ustalLiczbeStudentow(XListaStudentow lis) {}
   public void kasuj() {}
}
 
public class CTabelaSymboli {
   public void dodaj(int numer, long numer) {}
   public long podajId(int numer) {}
}

Zadanie 3

Dla poniższego diagramu sekwencji napisz w wybranym języku programowania kod klas „CIndex” oraz „CRejestrowanieOperacji”.


 

Zadanie 4

Stwórz diagram sekwencji odpowiadający poniższemu fragmentowi kodu.

public class COknoListyStudiujacych {
   IPrzegladanieListyStudentow przegladanieListyStudentow;
 
   void przyciskPokazStudenta(int idStudenta) {
        przegladanieListyStudentow.pokazStudenta(idStudenta);
   }
}

Zadanie 5

Przedstaw ciąg poleceń (etapów) dla systemu kontroli wersji w celu wprowadzenia nowego kodu do głównej gałęzi repozytorium.

Zadanie 6

Mamy zadany kod z głównej gałęzi oraz nowy kod. Podaj treść kodu po złączeniu.

public class CStudent {
  
private long id;
   public XStudent podajStudenta(long idStudenta) {
        XStudent srud = new XStudent(idStudenta);
        SELECT(stud);
        return stud;
   }
}


public class CStudent {

   private long id;
   private CRejestracjaStudenta rejestracjaStudenta;
   public short zmienOstatniaRejestracje(char status) {
        return rejestracjaStudenta.zmienOstatnia(status);
   }
  
}