Jakiś czas temu w pracy miałam ciekawy przypadek. Mianowicie – losowo wywalał się jeden z testów. Powodem był NullReferenceException w logice. Żeby dojść do problemu, trzeba było przeanalizować trochę kodu, w którym był użyty Parallel.ForEach() i lista obiektów. Gdzie był błąd i jak go naprawiłam? O tym we wpisie.
Sztuka programowania 1685 dni, 6 godzin, 5 minut temu 172 źrodło rozwiń
Często pracując z Typescriptem przychodzi moment, w którym należy sobie zadać pytanie – chcę użyć null czy undefined? Czasami może nam się wydawać, że jest to obojętne – ale jednak różnica jest.
Sztuka programowania 2077 dni, 5 godzin, 50 minut temu 100 źrodło rozwiń
Option Pattern – czyli co zamiast nulla Używając typów wartościowych możemy sobie pozwolić na null’a (int?, string?). Co w przypadku gdy stworzymy własną klasę w której pod jedną z właściwości trzymamy własny typ który czasami może być nullem? Z pomocą przychodzi nam Option wzorzec
Architektura 2204 dni, 5 godzin, 41 minut temu 201 źrodło rozwiń
Wiele razy szydziłeś z „programistów” javascript. To nie język mówiłeś (no jest w tym troche racji ale zostawmy to na razie). Ale czy jako dumny C#-owiec wiesz co się stanie po wykonaniu...
Architektura 2285 dni, 5 godzin, 42 minuty temu 187 źrodło rozwiń
C#, SQL, JS i ten sam problem - referencje bez ustawionych wartości. Kilka luźnych analogii i sposobów na radzenie sobie z NullRefenceException i podobnymi zjawiskami. I na koniec o tym, jak to wygląda w świecie F#.
Sztuka programowania 2767 dni, 19 godzin, 19 minut temu 230 źrodło rozwiń
Każdy czegoś nie lubi, ja na przykład nie lubię gdy ktoś siada na moim krześle, a potem ja muszę na nim usiąść, fuj – takie ciepłe, zawsze chwilę odczekuje. Albo NULL – to ciągłe sprawdzanie czy zmienna nie jest nullem, a potem jeszcze specjalna obsługa tu i tam i jeszcze tam, a potem tam i tam niosą, się ify po całym projekcie, albo wyjątki – BLEHSposób Na szczęście na jedno i drugie jest sposób; każdemu mówię, że na moim krześle się nie siada i głośno warczę gdy ktoś łam...
Architektura 2970 dni, 2 godziny, 22 minuty temu 348 źrodło rozwiń
Ot taka ciekawostko z automappera, kto zna to niech czyta dalej, kto nie zna może zapoznać sie z...
Zacznijmy dziś od operatora nameof. Zwraca on po prostu nazwę przekazanej metody:staticvoid Main(string[] args) { string writeLine= nameof(Console.WriteLine); string testFunction = nameof(TestFunction); Console.WriteLine(writeLine); Console.WriteLine(testFunction); } privatestaticstring TestFunction(int a,double b) { returnnull; } Chyba nie ma tutaj nic nadzwyczajnego. Po prostu zwracana jest nazwa w formie string: Po co nam to? Na przykład, aby zaimplementować OnPropertyChanged:publicc...
Powiedzmy, że potrzebujemy wyciągnąć PostCode użytkownika (a po drodze mamy jeszcze Address): string postCode = person.Address.PostCode.ToString(); Nie mamy pewności czy person nie jest nullem, a następnie czy person.Address nie jest nullem, a następnie person.Address.PostCode … . Aby się zabezpieczyć przed NullReferenceException musimy napisać trochę dodatkowego kodu, jak np: ...
Unikaj przekazywania nulli. Jeśli nie będziesz ich przekazywał nie będziesz musiał sprawdzać czy ich nie masz. Prosto powiedzieć – trudniej zrobić. Proste rzeczy to przekazywanie pustych kolekcji, Null Object Pattern. Jednak to drugie może dobrze działać dla serwisów, ale już gorzej dla Value Objects. Często pojawiającym się kodem jest wyciąganie obiektów z repozytorium. va...
Sztuka programowania 3939 dni, 2 godziny, 53 minuty temu 274 źrodło rozwiń
Znam się z NULL'em od lat Oglądając materiały z Introduction to Databases, przypomniały mi się koszmary z dzieciństwa. Zdarzyło mi się wspierać jako programista bądź inżynier support'u kilka systemów używających MS SQL Server'a (każdy z nich był rozwijany przynajmniej 5 lat). Miały one kilka cech wspólnych , jedna z nich sprawiła mi sporo problemów przy rozwijaniu i utrzymywaniu tych systemów. Posiadały one dużo tabel w których definicje kolumn umożliwiały wstawianie wartości NULL. Poniższa definicja ...
Bazy danych i XML 4746 dni, 2 godziny, 1 minutę temu 297 źrodło rozwiń
Autor: Czasem tak się dzieje, że czytając swój własny kod pierwszy raz od kilku miesięcy mamy problem z jego zrozumieniem, zwłaszcza jeżeli nie komentujemy go w odpowiedni sposób. Ale nie jest to jedyna przyczyna problemu. Ostatnio analizując stare projekty doszedłem do wniosku, że istnieje w nich mnóstwo kodu zaciemniającego rzeczywistą logikę działania. Mam tu na myśli dziesiątki wyrażeń postaci if (something != null) i podobnych, które bardzo skutecznie odciągają uwagę od tego co naprawdę nas interesu...
Architektura 5388 dni, 3 godziny, 15 minut temu 149 źrodło rozwiń
NULL vs. Exception, a może alternatywa? filed in .NET, Programowanie on Aug.13, 2009 Czasem tak się dzieje, że czytając swój własny kod pierwszy raz od kilku miesięcy mamy problem z jego zrozumieniem, zwłaszcza jeżeli nie komentujemy go w odpowiedni sposób. Ale nie jest to jedyna przyczyna problemu. Ostatnio analizując stare projekty doszedłem do wniosku, że istnieje w nich mnóstwo kodu zaciemniającego rzeczywistą logikę działania. Mam tu na myśli dziesiątki wyrażeń postaci if (something != null) i podo...
Architektura 5522 dni, 23 godziny, 34 minuty temu 112 źrodło rozwiń