Jedno z pytań I został poproszony, że mam tabeli bazy danych z następującymi kolumnamipotrzeba przemyślenia na mój wywiad pytanie - .NET, C#
pid - unique identifier
orderid - varchar(20)
documentid - int
documentpath - varchar(250)
currentLocation - varchar(250)
newlocation - varchar(250)
status - varchar(15)
muszę napisać aC# aplikację przenieść pliki z currentlocation do kolumny newlocation i status aktualizacji jako "SUCCESS" lub "FAILURE".
To była moja odpowiedź
utworzyć listę wszystkich rekordów przy użyciu LINQ
Tworzenie obiektu polecenia, które byłoby wykonać przenoszenie plików
użyciu foreach, powołać delegata przenieść pliki -
użyj endinvoke, aby uchwycić wyjątek i zaktualizować db accordin gly
Powiedziano mi, że wzorzec polecenia i delegata nie pasują do rachunku tutaj - zostałem nakłoniony do przemyślenia i wdrożenia korzystniejszego wzoru GoF.
Nie jestem pewien, czego szukał - w dzisiejszych czasach kandydaci mają wiele informacji na głowie, ponieważ zawsze mają Google'a, aby znaleźć odpowiedź i znaleźć rozwiązanie.
Szczerze mówiąc, nie widzę w ogóle, w jaki sposób stosuje się wzorce GoF. To brzmi jak trywialny 20-wierszowy program z kilkoma podprogramami używającymi ORM jak Linq do SQL lub EF i nie więcej niż 50 linii w surowym ADO.NET. – Aaronaught
Jestem z Aaronaught na tym, wydaje się zbyt proste, aby wymagać znaczący wzór GoF. Jeśli dostaniesz trochę więcej informacji, takich jak liczba rekordów, których możesz oczekiwać w bazie danych, być może będziesz w stanie wymyślić dobre decyzje. Polecenie + usuń pomysł było całkiem godnym podziwu rozwiązaniem w stylu wywiadu w tym pytaniu, czy mogę tak powiedzieć ... – LorenVS
Użyłem delegatów, ponieważ nie miałem pojęcia, ile było tam rekordów, a z delegatami mogłem pójść z ogniem i zapomnieć rutyna – uno