Praca Inżynierska – Podsumowanie

Niedawno skończyłem pisać moją pracę inżynierską. W związku z tym postanowiłem zrobić podsumowanie procesu jej pisania. Co się udało, co się nie udało, co następnym razem zrobiłbym lepiej.

Tematem mojej pracy jest „Generator dla środowiska C# na podstawie schematów blokowych”.
Głównym celem mojej pracy było rozszerzenie aplikacji napisanej przez innego studenta. Dodając generator dla języka C#, nowe bloki oraz mechanizm obliczania złożoności obliczeniowej. Poza samy rozbudowaniem miałem przeprowadzić szereg testów potwierdzających poprawność implementacji.

Na samym początku sądziłem, że program został napisany bardzo ładnie, szczerze mówiąc nie rozumiałem co się w środku dzieje. Tak pozostało do momentu przystąpienia do implementowania. W międzyczasie uczyłem się WPF, aby podołać w implementacji mojej części funkcjonalności. Kiedy tylko usiadałem do pisania, zobaczyłem że aplikacja była napisana może i ładnie, ale dla osoby, która nie widziała prawidłowo zaimplementowanego wzorca MVVM. Wiadomo, że nie można wszystkiego włożyć do ViewModelu, ale ich tam było naprawdę mało. Przez co niektóre funkcjonalności były powielane wielokrotnie.

Łatwo krytykuję się osobę, której się nie zna i nie zna jej przeszłości i doświadczenia z programowaniem w WPF. Rozwijanie aplikacji, która została zaprojektowana w sposób utrudniający jej rozwijanie jest naprawdę słabym pomysłem. Jeżeli miałbym w przyszłości pisać kolejną pracę inżynierską na pewno zaoszczędził bym sobie kłopotu i zdecydował się na implementację nowego rozwiązania. Nie mogę powiedzieć, że się przepracowałem pisząc tą pracę, lecz brakowało mi zapału wiedząc że będę musiał męczyć się z aplikacją. Według mnie dalsze jej rozwijanie jest bezcelowe.

Podsumowując

Koniec końców moja część pracy została napisana i zaimplementowana prawidłowo. Co pokazują doświadczenia przeprowadzone w pracy. Niestety nie można tego powiedzieć o współgraniu aplikacji z obydwoma językami programowania.

Doprowadzenie całej aplikacji do poprawnego działania i walidowania stworzonych schematów skutkowałoby przepisaniem całej logiki aplikacji, a nie o tym była moja praca inżynierska. Niestety wyniki pokazały, że można generować algorytm w jednym języku albo drugim. Przez niedociągnięcia dotyczące zarządzania zmiennymi i ich typami.

Jedyną rzeczą, którą znacząco bym zmodyfikował podczas następnego pisania, to sposób zabrania się za pisanie samej pracy. Przystąpiłem do tego trochę chaotycznie, nie zaplanowałem wszystkiego tak szczegółowo jakbym tego chciał. Dobry plan to klucz do sukcesu.

Leave a Reply

Translate »