Ocena zadania rekrutacyjnego

Ocena zadania rekrutacyjnego

Wątek przeniesiony 2020-04-06 16:56 z C# i .NET przez cerrato.

Michał Warmuz
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 253
0

Cześć. Ostatnio aplikowałem do firmy. Dostałem zdanie i je wykonałem tak:
https://dev.azure.com/SelfWorkCorp/_git/Task
Kurcze dzisiaj dostałem feedback zwrotny o takie tresci:

Kod poukładany na wielu warstwach, ale chyba przesadnie, bo nie działa tu transakcyjność operacji. Przykładowo przy tworzeniu firmy każdy pracownik jest w pętli INSERT-owany i commitowany. Wyrażenie do wyszukiwania jest budowane w dziwny sposób (wszędzie "true" na sztywno).

Wiecie jak moge to poprawić te błedy bo chciałbym już ich nie popełniać a kurcze nic mi nie przychodzi do głowy jak to poprawić oraz widzicie jeszcze jakies dodatkowe błedy ? :)

Kokoniłaj
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 190
0

Możesz napisać jakie były wymagania dot. utworzenia tej aplikacji?

semicolon
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 114
1

Sposób pisania kodu dobieraj do potrzeb. Ta aplikacja jest mała i prawdopodobnie nie wymagała takich podziałów.

Ja akurat nie pracuje z C# i ten projekt ciężko mi się czytało, nonstop trzeba skakać, a tak naprawdę większość kodu dałoby się zmieścić do 2-3 plików.

Co do transakcji to one nie obejmują wszystkich operacji razem. Dla przykładu jeśli dodasz firmę, a w między czasie wyskoczy Ci jakiś błąd przy pracownikach to powstanie Ci w bazie taki niespójny byt (bo część pracowników jest, a części nie ma). Transakcje pozwalają Ci działać z myślą wszystko albo nic.

Co do insertów to pomyśl o bulk insert (ze względu na wydajność).

somekind
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
2

Czy to jest po prostu csharpowa wersja tego: https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition ?

somekind
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Wrocław
1

@Michał Warmuz: chyba lepiej jeśli będziemy w postach dyskutować.

Czy to źle, że ma tyle warstw? To zależy. Jeśli zadaniem było przygotuj szkielet systemu enterprise, to nie. Jeśli zadaniem był prosty crud, to jest to over-engineering.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.