Czytam „Learning Python” i natrafiłem na następujące: Zdefiniowane przez użytkownika wyjątki mogą również sygnalizować warunki nieerrorowe. Na przykład, procedura wyszukiwania może zostać zakodowana, aby zgłosić wyjątek, gdy zostanie znalezione dopasowanie, zamiast zwracać flagę statusu do interpretacji przez osobę dzwoniącą. Poniżej program obsługi wyjątków try / wyjątkiem / else wykonuje działanie …
Zawsze zmagam się z tym ... próbując znaleźć właściwą równowagę między próbą złapania a kodem, który nie staje się tym nieprzyzwoitym bałaganem tabulatorów, nawiasów i wyjątków, które są wyrzucane z powrotem na stos wywołań jak gorący ziemniak. Na przykład mam teraz rozwijaną aplikację, która korzysta z SQLite. Mam interfejs bazy …
Zawsze byłem przekonany, że właściwości (tj. Ich operacje ustawiania / pobierania) powinny być szybkie / natychmiastowe i bezawaryjne. Nigdy nie powinieneś próbować / łapać się za uzyskanie lub ustawienie nieruchomości. Ale patrzę na niektóre sposoby zastosowania zabezpieczeń opartych na rolach do właściwości niektórych obiektów. Na przykład właściwość Employee.Salary. Niektóre rozwiązania, …
W szczególności pytanie o domyślny konstruktor Biorąc pod uwagę, że konstruktor inicjuje wszystkie dane dla obiektu, jeśli utworzę klasę, której nie można użyć bez odpowiedniej inicjalizacji, czy nie jest tak, że domyślny konstruktor jest bezużyteczny? Rozważać: // A class for handling lines in a CSV file class CSV_Entry { private: …
Zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby skupiało się tylko na jednym problemie, edytując ten post . Zamknięte 5 lat temu . Sprawdzone wyjątki Javy zyskały złą prasę przez lata. Znamiennym znakiem jest to, że jest to …
Rozumiem, jak działają wyjątki i jak je wychwytywać i obsługiwać w języku C #, ale jak mogę symulować zdarzenia, które mogą powodować wyjątki, aby mieć pewność, że zostaną wychwycone poprawnie? Na przykład, czy można uruchomić aplikację w rodzaju stanowiska testowego, w którym można symulować problemy z siecią, problemy z bazą …
Mam kilka klas, które zajmują się walidacją wartości. Na przykład RangeValidatorklasa sprawdza, czy wartość mieści się w określonym zakresie. Każda klasa walidatora zawiera dwie metody: is_valid(value)która zwraca wartość Truelub Falsezależy od niej i ensure_valid(value)która sprawdza określoną wartość i albo nie robi nic, jeśli wartość jest poprawna, albo zgłasza określony wyjątek, …
Nie widzę dużej różnicy między obawami związanymi z obsługą wyjątków i logowaniem, że oba są problemami przekrojowymi. Co myślisz? Czy nie powinien być traktowany osobno, zamiast przeplatać się z podstawową logiką, którą implementuje metoda? EDYCJA : Próbuję powiedzieć, że moim zdaniem implementacja metody powinna zawierać tylko logikę udanej ścieżki wykonania, …
Wprowadzenie Jeśli błąd wystąpi w witrynie internetowej lub systemie, warto go oczywiście zarejestrować i wyświetlić użytkownikowi uprzejmy komunikat z kodem referencyjnym błędu. A jeśli masz wiele systemów, nie chcesz, aby te informacje były rozsypane - dobrze jest mieć jedno scentralizowane miejsce dla nich. Na najprostszym poziomie wszystko, czego potrzeba, to …
Kiedy zaczniesz pisać kod obsługi wyjątków? Kiedy zaczniesz pisać Oświadczenia rejestrujące. Aby rozwinąć to pytanie, załóżmy, że jesteśmy na platformie .NET z logowaniem log4net, ale prosimy o ogólną odpowiedź. Rozwiązanie: Projekt Windows Forms. Projekty: interfejs użytkownika, BusinessRules, DataHandlers Czy więc zajmujesz się pisaniem swoich DataHandlerów, które najpierw wykonują twoje operacje …
Mam fragment kodu, który można przedstawić jako: public class ItemService { public void DeleteItems(IEnumerable<Item> items) { // Save us from possible NullReferenceException below. if(items == null) return; foreach(var item in items) { // For the purpose of this example, lets say I have to iterate over them. // Go to …
Po pierwsze, dobrze wiem, dlaczego w C ++ nie ma konstrukcji „nareszcie”? ale długotrwała dyskusja na temat komentarza wydaje się uzasadniać osobne pytanie. Oprócz problemu, że finallyw języku C # i Javie może istnieć tylko raz (== 1) na zakres, a pojedynczy zakres może mieć wiele (== n) destrukterów C …
W kilku aplikacjach naszej firmy korzystamy z niestandardowego rejestratora. Jest dość solidny, choć w przyszłości możemy go zastąpić czymś takim jak NLog. Jednym z zadań rejestratora jest rejestrowanie wyjątków napotkanych w aplikacji. Jedną z moich obaw było to, że obsługa wyjątków w programie rejestrującym pozwala na cichą awarię. To znaczy, …
Zamknięte. To pytanie jest nie na temat . Obecnie nie przyjmuje odpowiedzi. Chcesz poprawić to pytanie? Zaktualizuj pytanie, aby było tematem dotyczącym wymiany stosów inżynierii oprogramowania. Zamknięte 5 lat temu . Myślę, że dwa główne problemy z moimi programami to struktura / organizacja kodu i obsługa błędów. Czytam Code Complete …
Mam metodę interfejsu, która stwierdza w dokumentacji, że wygeneruje określony typ wyjątku. Implementacja tej metody wykorzystuje wyjątek. Wychwytywany jest wyjątek wewnętrzny i zgłaszany jest wyjątek zgłoszony w umowie interfejsu. Oto mały przykład kodu, aby lepiej wyjaśnić. Jest napisany w PHP, ale jest dość prosty do naśladowania. // in the interface …
Używamy plików cookie i innych technologii śledzenia w celu poprawy komfortu przeglądania naszej witryny, aby wyświetlać spersonalizowane treści i ukierunkowane reklamy, analizować ruch w naszej witrynie, i zrozumieć, skąd pochodzą nasi goście.
Kontynuując, wyrażasz zgodę na korzystanie z plików cookie i innych technologii śledzenia oraz potwierdzasz, że masz co najmniej 16 lat lub zgodę rodzica lub opiekuna.