Dobry webdeveloper to wszechstronny webdeveloper. Nie może poprzestawać na znajomości jednego języka i umiejętności korzystania z jednej, konkretnej technologii. Co więcej, rozpowszechnianie się jednostronicowych aplikacji internetowych (ang. Single Page Application, SPA) zaciera wyraźną do niedawna różnicę między pracą programisty back-endu a obowiązkami programisty front-endu. Programiści back-endu muszą dziś poznawać narzędzia do niedawna uznawane za typowe w przybo...
C# jest jednym z lepiej dopracowanych języków programowania. Cechują go dojrzałość, prostota, nowoczesność i bezpieczeństwo. Został od podstaw zaprojektowany jako obiektowy. Stanowi integralną część platformy Microsoft .NET Framework. Jest ulubionym narzędziem profesjonalnych programistów, którym zależy na pisaniu kodu bezpiecznego, przejrzystego, wydajnego i prostego w konserwacji. W wersji 7.0 tego języka pojawiły się nowe usprawnienia, dzięki któ...
W świecie programistów aplikacji panuje kult wydajności: najważniejsze są szybkość i efektywność działania kodu. Dostrajanie elementów dużych aplikacji staje się wirtuozerią: wymaga eliminowania wąskich gardeł, optymalizacji kodu, pilnowania każdego bitu pamięci. Niewielkie braki w rozwiązaniach w przypadku rozbudowanych systemów przeradzają się w wielkie problemy. Dla programisty oznacza to, że jeśli chce pracować na prawdziwie profesjonalnym poziomie, m...
W skrócie uczenie maszynowe polega na wyodrębnianiu informacji z surowych danych i budowie modelu, który służy do przetwarzania kolejnych surowych danych. Technologia ta od kilku lat intensywnie się rozwija, a w miarę wzrostu jej możliwości rosną również zainteresowanie i oczekiwania architektów i użytkowników. Niektórzy widzą w głębokim uczeniu poważne zagrożenie, jednak obietnice, jakie daje ten rodzaj sztucznej inteligencji, są fas...
C# jest uważany za flagowy projekt firmy Microsoft. Język ten charakteryzuje się niezwykłą elastycznością i wszechstronnością. Udostępnia wysokopoziomowe abstrakcje, takie jak wyrażenia, zapytania i kontynuacje asynchroniczne, ale też pozwala na korzystanie z mechanizmów niskopoziomowych. W efekcie dzięki takim konstrukcjom, jak własne typy wartościowe programisty czy opcjonalne wskaźniki, można znacząco zwiększyć wydajność aplikacji. Wersja 7.0 jest kolejną poważną ak...
Docker to platforma oparta na otwartym kodzie źródłowym. Jest dziś uważany za najważniejsze narzędzie do rozwijania aplikacji rozproszonych. Umożliwia przyspieszenie prac nad oprogramowaniem, ale również jego konfiguracją, wdrożeniem i dostarczeniem do klienta. Docker pozwala na skalowanie infrastruktury aplikacji w czasie rzeczywistym i poprawę wykorzystania zasobów. Technologia Dockera ułatwia budowę aplikacji dobrze przemyślanych, przetwarzających dane...
Wzorce i najlepsze praktyki rozwoju łatwego w utrzymaniu oprogramowania w C++17_x005F_x000D_ _x005F_x000D_ Język C++ jest wszechstronnym, potężnym językiem programowania, który ma bardzo różne zastosowania. To klasyczne, wciąż udoskonalane i unowocześniane narzędzie. Problemem jednak jest to, że programiści piszący w C++ dość często mają złe nawyki. Nie przestrzegają zasad manifestu Software Craftsmanship, stosują okropną składnię, całkowicie ignorują podstawowe...
C++ pozwala zarówno na tworzenie interfejsów wysokiego poziomu, jak i na pisanie kodu działającego na niskim poziomie. Sprawdza się, gdy trzeba zapewnić wysoką wydajność i niskie obciążenie. Język ten jest konsekwentnie rozwijany: kolejne jego specyfikacje, C++14 i C++17, przyniosły wiele znakomitych udoskonaleń. Aby w pełni wykorzystać ten potencjał, należy korzystać z C++ łącznie z biblioteką STL. Jest to standardowa biblioteka języka, dzięki której C++...
C# 7.0. Leksykon kieszonkowy_x005F_x000D_ _x005F_x000D_ C# od dawna jest dojrzałym, uniwersalnym i efektywnym językiem programowania, dzięki któremu można sprawnie pisać kod bezpieczny, przejrzysty i wydajny. Założeniami, które przyświecały twórcom C#, jest obiektowość i kontrola typów, jednak przede wszystkim język ten ma być prosty w stosowaniu. Mimo to nawet tak świetne narzędzie, jak C# w wersji 7.0, jest jeszcze wygodniejsze w pracy, jeśli pro...
Powszechnie uważa się, że C# jest świetnym językiem ogólnego zastosowania, który nadaje się do tworzenia każdego rodzaju oprogramowania - od serwisów internetowych poprzez aplikacje biznesowe aż po gry. Oprogramowanie takie działa na komputerach biurkowych, serwerach, urządzeniach mobilnych, a także na specjalizowanych systemach do gier. Z kolei .NET Core pozwala na tworzenie rozwiązań serwerowych w chmurze oraz na pracę z urządzeniami wirtualnej lub rozs...
C# - idealny pośrednik między Tobą a komputerem!_x005F_x000D_ _x005F_x000D_ Wśród wielu obiektowych języków programowania C# zajmuje miejsce szczególne. Ma przejrzystą strukturę, jasne zasady i jest wciąż rozwijany. Nie znajdziesz wygodniejszego narzędzia programistycznego dla platformy .NET. C# sprawdza się w najróżniejszych projektach, a jego zalety sprawiają, że jest to język niezwykle popularny. Jeśli znasz podstawy tego języka, ale nie czujesz...
Framework ASP.NET Core 2.0 stanowi odpowiedź Microsoftu na potrzeby programistów, które z kolei zmieniają się wraz z rynkiem IT. Klienci wymagają od aplikacji zgodności z różnymi standardami, wysokiej efektywności i skalowalności, a czas wyprodukowania i wdrożenia nowego rozwiązania ma być jak najkrótszy. Do takiej pracy potrzeba narzędzi o odpowiedniej produktywności, rozszerzalności i elastyczności. Dzięki uwzględnieniu tych wyśrubowanych kryteri...
Pierwsze linie kodu powstawały pół wieku temu. Komputery, na które tworzono te programy, w bardzo niewielkim stopniu przypominały współczesne maszyny. Niezależnie od upływu lat, postępu technologii i powstawania wymyślnych narzędzi, języków programowania czy frameworków pewne zasady tworzenia kodu pozostają niezmienne. Są takie same jak w czasie, gdy Alan Turing pisał pierwszy kod maszynowy w 1946 roku. Respektowanie tych zasad to warunek, ż...
Od czasu swojej premiery w 2013 r. Docker cieszy się rosnącym zainteresowaniem. Liczba deweloperów korzystających z tej platformy rośnie lawinowo. Docker zmienił sposób projektowania i wdrażania aplikacji, włączając w to również aplikacje sieciowe. Ma duże możliwości i łączy w sobie prostotę wdrażania aplikacji z prostotą administrowania. Pozwala na rozwiązywanie problemów, z którymi borykają się zespoły programistów i administrator&o...
Współczesne ogromne zbiory danych zawierają odpowiedzi na prawie każde pytanie. Równocześnie nauka o danych jest dziedziną, która cokolwiek onieśmiela. Znajduje się gdzieś pomiędzy subtelnymi umiejętnościami hakerskimi, twardą wiedzą z matematyki i statystyki a merytoryczną znajomością zagadnień z danej branży. Co więcej, dziedzina ta niezwykle dynamicznie się rozwija. Trud włożony w naukę o danych niewątpliwie się jednak opłaca: biegły analityk danych mo...
Framework Angular 2 jest dziś uważany za jeden z najwydajniejszych sposobów rozwijania średnich i dużych aplikacji internetowych. Te aplikacje działają bez problemu niezależnie od platformy. Separacja kodu interfejsu od logiki aplikacji, prosta modularyzacja aplikacji, bezproblemowe przetwarzanie danych asynchronicznych, bogaty zestaw narzędzi i ogromne ułatwienia podczas projektowania interfejsu użytkownika - to tylko kilka z wielu zalet Angulara. Nawet jednak tak świ...
Od poprzedniego wydania tej książki minęło parę lat, a kariera Androida wciąż jest dynamiczna! Kompleksowość, otwarty kod źródłowy, modułowa architektura, znakomita elastyczność - to wszystko sprawia, że lawinowo rośnie rzesza ludzi, którzy wybierają właśnie tę platformę. Liczbę urządzeń pracujących pod kontrolą Androida podaje się w miliardach, a najpewniej będzie ich o wiele więcej. To nie tylko telefony, komputery czy tablety, ale także telewizory, inteligent...
Framework ASP.NET Core MVC 2 powstał jako alternatywa ASP.NET Web Forms. Microsoft zbudował tę platformę całkowicie od podstaw. Dzięki zastosowaniu nowoczesnej architektury model - widok - kontroler programiści otrzymali narzędzie do szybszego tworzenia doskonalszego kodu. Łatwo się przekonać, że ten framework powstał wskutek kompletnej zmiany podejścia do technologii sieciowych: ASP.NET Core MVC 2 jest w pełni niezależny od platformy sprzętowej, a zastosowany wysoko produkty...
Na naszych oczach dokonuje się przełom: technologie wykorzystujące rozmaite formy sztucznej inteligencji zaczynają się pojawiać w różnych branżach. Niektórzy nawet nie zdają sobie sprawy, jak często i jak powszechnie stosuje się algorytmy uczenia głębokiego. Możliwości w tym zakresie stale rosną. Wzrasta też zapotrzebowanie na inżynierów, którzy swobodnie operują wiedzą o uczeniu głębokim i są w stanie zaimplementować potrzebne algorytmy w konkretn...
Framework ASP.NET Core odzwierciedla zmianę podejścia do technologii strony klienta: niezależność od platformy sprzętowej, łatwiejsze prowadzenie testów jednostkowych i rozbudowa tworzonych systemów. Kolejna wersja frameworka odzwierciedla dalszą ewolucję koncepcji: od aplikacji, które miały być reaktywne i responsywne, do progresywnej realizacji zadań. Również technologia strony serwera poczyniła postępy w zakresie stabilności i wydajności pracy, ...
Tworzenie nowoczesnych stron internetowych wymaga opanowania trzech kluczowych technologii: HTML, JavaScript i CSS. CSS jest zaskakująco potężnym językiem, który ułatwia nadanie atrakcyjnego wyglądu stronie, a równocześnie pozwala na zapewnienie jej responsywności. Niezależnie od tego kod CSS należy tworzyć tak, aby był odpowiednio zorganizowany, czytelny i łatwy w utrzymaniu. Pomocna w osiągnięciu tego celu jest refaktoryzacja — technika polegająca na prz...
Docker został zaprezentowany światu w marcu 2013 roku i praktycznie od początku wzbudza zaskakujące zainteresowanie. Narzędzie to pozwala na proste zarządzanie procesem tworzenia określonego elementu aplikacji, wdrażania go na dużą skalę w dowolnym środowisku oraz usprawniania przepływu pracy. Ma przy tym duże możliwości i łączy w sobie prostotę wdrażania aplikacji z prostotą administrowania. Jednym słowem, Docker jest niezwykle użytecznym narzędziem!_x005F_x000D_ _x005F_x000...
W świecie, w którym potężne ilości informacji bombardują ludzi ze wszystkich stron, organizacje stają przed bardzo poważnym wyzwaniem: muszą znaleźć sposób, aby dotrzeć ze swoim przekazem do odbiorcy, zyskać jego uwagę i spowodować, aby zrozumiał i zapamiętał prezentowane treści. Dodatkowym problemem jest różnorodność kanałów interakcji oraz urządzeń — utrzymanie zrozumiałości i spójności przekazu staje się jeszcze trudniejsze. W takim...
Najnowsza specyfikacja języka JavaScript — ECMAScript 6 — jest najważniejszym uaktualnieniem w dotychczasowej historii tego języka. Jej Zrozumienie specyfikacji ECMAScript 6 ma kluczowe znaczenie dla wszystkich programistów JavaScript. Tworzy ona solidny fundament i to właśnie na nim będą budowane wszystkie aplikacje JavaScriptu w przyszłości._x005F_x000D_ _x005F_x000D_ Oto podręcznik przeznaczony dla średnio zaawansowanych i zaawansowanych programist&oacut...