Atrybuty w C# vs Dekoratory w TypeScript

Czas czytania ~ 150 sekund Ucząc się TypeScripta możemy dostrzec pewne podobieństwo pomiędzy dostępną tam konstrukcją dekoratorów a atrybutami z C#. Ponieważ oba języki łączy osoba pana Andersa Hejlsberga to coś musi być na rzeczy. Mimo wszystko jednak mamy tu do czynienia z dwoma zupełnie różnymi językami. Jak zatem zrealizować to, co dają atrybuty w … Continue reading Atrybuty w C# vs Dekoratory w TypeScript

Tuple w C#7 vs F# vs TypeScript

Czas czytania ~ 200 sekund Co zrobić, by funkcja mogła zwracać wiele wartości ? Można opakować te wartości w klasę lub strukturę.  W poprzednich wersjach C# mieliśmy także do dyspozycji generyczne klasy Tuple, które wystawiały propertiesy Item1, Item2, .... ItemN.  Innymi, również niezbyt wygodnymi sposobami na przekazywanie kilku wartości jako wyjścia z funkcji były na przykład parametry … Continue reading Tuple w C#7 vs F# vs TypeScript

7 zastosowań operatora nameof w C#

Czas czytania ~ 120 sekund Co prawda mamy już oficjalnie C# w wersji siódmiej, ale wróćmy jeszcze na moment do wersji 6 i przyjrzyjmy się operatorowi nameof. Niby prosty operator zamieniający symbol (klasę, metodę, property, parametr metody ...) na string odpowiadający jego nazwie. Tylko tyle i aż tyle, jeśli pomyślimy o tym w kontekście refaktoryzacji kodu. … Continue reading 7 zastosowań operatora nameof w C#

6 rzeczy, które ma F#, a brakuje ich w LINQ

Jednym z ważniejszych, o ile nie najważniejszym interfejsem w .NET jest IEnumerable<T>. LINQ i extension methods zdefiniowane właśnie na tym interfejsie pozwalają na tworzenie nawet bardzo skomplikowanych transformacji danych Oddajmy głos jednemu z autorów: I nie ma tutaj znaczenia to, co chciał przekazać w dwóch kolejnych tweetach. Teraz weźmy pod uwagę F#, język funkcyjny, a … Continue reading 6 rzeczy, które ma F#, a brakuje ich w LINQ

F# a matematyka

Czas czytania ~ 200 sekund Jest taki całkiem znany żart: Profesorowi przeciekał kran, więc wezwał hydraulika. Hydraulik przez 10 minut podłubał przy kranie i policzył 100 zł. Profesor się strasznie zdenerwował, że on, osoba wykształcona, zarabia grosze, a hydraulik za chwilę roboty policzył sobie spore pieniądze. Hydraulik na to: - Wie pan co... U nas … Continue reading F# a matematyka

Krótki wpis o pracy z nullami

Czas czytania ~ 220 sekund Dziś  bohaterem numer jeden będzie coś, za czym chyba nieszczególnie przepadamy. A właściwie przyjrzymy się różnym możliwym technikom walki z czymś w stylu Pomijając zbędne podstawy, np. takie: zerknijmy na kilka bardziej praktycznych fragmentów kodu. C# if-else Pierwsza kwestia to zagnieżdżenia. Sprawdzanie, czy coś jest null-em często prowadzi do zagnieżdżania kodu, im … Continue reading Krótki wpis o pracy z nullami

ASP.NET Core vs ataki typu XSS (OWASP Top 10 #3)

Użycie dowolnego tekstowego formatu reprezentacji danych niesie ze sobą pewne problemy. Spróbujmy zbudować plik CSV z listą filmów nie wiedząc, że jednym z nich jest Dobry, Zły i Brzydki. Spróbujmy zbudować plik JSON z tekstami piosenek, nie wiedząc, że jedną z nich jest Piano Man, gdzie jedna ze zwrotek zaczyna się słowami He says "Bill, I … Continue reading ASP.NET Core vs ataki typu XSS (OWASP Top 10 #3)

ASP.NET Core vs ataki typu XSRF (OWASP Top 10 #2)

Czas czytania ~ 150 sekund Kolejny wpis pokazujący, jak radzić sobie z atakiem z listy OWASP Top 10. Poprzednim razem analizowaliśmy przekierowania, tym razem na tapetę trafiają ataki typu Cross Site Request Forgery, czyli w skrócie CSRF lub XSRF. Ataki te mogą być często niedoceniane przez programistów, głównie ze względu na to, że wymagają stworzenia mechanizmu … Continue reading ASP.NET Core vs ataki typu XSRF (OWASP Top 10 #2)

ASP.NET Core vs ataki typu Unvalidated Redirects and Forwards (OWASP Top 10 #1)

Czas czytania ~ 180 sekund OWASP (Open Web Application Security Project) jest organizacją non-profit skupioną na poprawianiu bezpieczeństwa oprogramowania. Co kilka lat tworzą dokument OWASP Top 10 (Top Ten Most Critical Web Application Security Risks) zawierający klasyfikację najpopularniejszych ataków na aplikacje webowe wraz ze wskazówkami, jak się przed nimi bronić. ASP.NET Core posiada wiele wbudowanych mechanizmów obrony … Continue reading ASP.NET Core vs ataki typu Unvalidated Redirects and Forwards (OWASP Top 10 #1)

ASP.NET Core: View Components – kontrolki z logiką w tle

Czas czytania ~ 110 sekund Kolejną z nowości wprowadzonych w ASP.NET Core są View Components, kontrolki, które możemy osadzać w naszych widokach i dodatkowo zasilać logiką pisaną w C#. Nie ma się co oszukiwać, kontrolki server-side nie są jakimś najnowszym trendem, ale czasami coś takiego może nam się przydać. Przykładem takiej kontrolki może być fragment … Continue reading ASP.NET Core: View Components – kontrolki z logiką w tle