Projektant frameworka tworzy dla innych programistów. To odpowiedzialne zadanie: celem jest zapewnienie większości potrzebnych elementów, które po dostosowaniu i połączeniu mają stać się aplikacją. Dobrze zaprojektowany framework pozwala na wygodną i efektywną pracę. Jest prosty, łatwy do rozwijania i dobrze integruje się z innymi narzędziami programistycznymi, językami czy modelami aplikacji. Projektant musi więc dobrze się orientować w zasadach tworzeni...
Imponująca możliwość skalowania oraz odporność na awarie skłania organizacje do uruchamiania swoich aplikacji w natywnych środowiskach chmury. Technologia kontenerów i orkiestracji stała się ostatnio bardzo modna. Jednak nawet tak nowoczesne systemy nie są wolne od zagrożeń. Aby zapewnić wdrożeniom kontenerowym najwyższy możliwy poziom bezpieczeństwa, trzeba zrozumieć mechanizmy działania kontenerów. Jako że powstają one przez połączenie różnych funkcji j...
Uczenie maszynowe jest przyszłością naszej cywilizacji. Już dziś wywiera ogromny wpływ na nasze życie. Odmieniło kształt wielu sektorów: usług konsumenckich, inżynierii, bankowości, medycyny czy produkcji. Trudno też przewidzieć zmiany, jakie potęga sieci neuronowych przyniesie nam w nadchodzących latach. Osoby zajmujące się zawodowo uczeniem głębokim i sieciami neuronowymi mogą liczyć na ekscytujące możliwości, jednak zaawansowana matematyka i teoria stanowiące podsta...
Projektuj, twórz, eksperymentuj i... baw się świetnie!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Poznaj środowisko Unity_x005F_x000D_ Naucz się tworzyć gry_x005F_x000D_ Realizuj swoją pasję_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Unity to popularne środowisko do tworzenia gier komputerowych, które umożliwia szybkie rozpoczęcie pracy nawet zupełnie początkującym użytkownikom. Równocześnie pozwala w krótkim czasie uzyskać ciekawe efekty._x005F_x00...
SQL jest linqua franca dla profesjonalistów zajmujących się przetwarzaniem danych. To wyjątkowo dojrzałe narzędzie, z którego korzysta już kilka pokoleń inżynierów i programistów. Wydaje się jednak, że zbyt często ten język nie jest należycie wykorzystywany: wielu użytkowników posługuje się nim na co dzień, ale mało kto wychodzi poza stosunkowo proste zapytania. Tymczasem z możliwości nowoczesnego SQL mogą skorzystać nie tylko osoby zajmując...
Zapewnienie bezpieczeństwa IT jest wyjątkowo ważne. Organizacja musi pozostawać w ciągłej gotowości do wykrywania zagrożeń i reagowania na incydenty bezpieczeństwa. Przeciwnicy nieustannie się doskonalą i standardowy zestaw zabezpieczeń jakiś czas temu przestał wystarczać. Konieczne jest zbudowanie i wdrożenie kompleksowego systemu zapobiegania zagrożeniom, ich wykrywania i reagowania na nie. Podobnie jak na polu bitwy, tak i w planowaniu bezpieczeństwa IT zyskuje się przewag...
Sztuczna inteligencja i uczenie maszynowe znajdują coraz więcej zastosowań w niemal wszystkich istotnych branżach. W technologiach sieci neuronowych tkwi olbrzymi potencjał. Za rozwojem uczenia maszynowego muszą nadążać architekci i programiści: aplikacja, w której wykorzystano technologie sztucznej inteligencji, musi pasować do określonego zastosowania. Poszczególne systemy różnią się od siebie, tak samo jak różne są rozwiązywane przez nie problem...
Wzorce projektowe są bardzo przydatnym narzędziem w przyborniku programisty. Pozwalają na szybkie opracowanie złożonych zagadnień, ale można je również potraktować jako wstęp do ciekawego i inspirującego dochodzenia, jak rozwiązać konkretny problem na wiele różnych sposobów, na różnych poziomach zaawansowania technicznego i z zastosowaniem różnego rodzaju kompromisów. Takie próby jednak często prowadzą do nadinżynierii lub pows...
Każdy inżynier oprogramowania zna teoretyczne podstawy testowania. O tym, że sumienne przeprowadzenie testów ma podstawowe znaczenie dla jakości gotowego produktu, nie trzeba nikogo przekonywać. A jednak wciąż zbyt często okazuje się, że zaplanowanie, napisanie i przeprowadzenie testów jednostkowych w praktyce nie jest łatwym zadaniem. Co gorsza, niewłaściwe testy psują kod, mnożą błędy i zabierają mnóstwo cennego czasu i pieniędzy. Okazuje się, że dla uz...
Uczenie maszynowe i nauka o danych są dziś ogromnie popularne. Dziedziny te szybko się rozwijają, a poszczególne techniki uczenia maszynowego znajdują coraz więcej różnorodnych zastosowań. Wiedza, którą można uzyskać dzięki odpowiedniemu przygotowaniu danych i ich eksploracji, często jest bezcenna. Umiejętność ich analizy oraz wiedza o możliwych sposobach rozwiązywania problemów napotykanych podczas uczenia maszynowego są więc dużymi atutami i mogą...
Analiza szeregów czasowych zyskuje na znaczeniu. Wraz z postępującą digitalizacją danych służby zdrowia, rozwojem inteligentnych miast czy upowszechniającym się internetem rzeczy staje się coraz bardziej potrzebna. Obiecującym rozwiązaniem jest analiza szeregów czasowych metodami wspomaganymi uczeniem maszynowym. Techniki te umożliwiają skuteczne monitorowanie i wykorzystywanie coraz większych zbiorów danych. Być może ich zastosowanie do pracy z szeregami...
Architektura aplikacji w Pythonie. TDD, DDD i rozwój mikrousług reaktywnych Python zyskuje coraz większą popularność i jest wykorzystywany do tworzenia bardzo różnych aplikacji, jednak projektowanie dużych, niezawodnych systemów w tym języku bywa wyzwaniem. Rozwijanie złożonych systemów o wysokiej jakości wymaga zastosowania odpowiedniej architektury. Trudno w Pythonie stosować takie wysokopoziomowe wzorce projektowe jak architektura sześciokątna,...
Frameworki bardzo ułatwiają życie programistom. Pozwalają na szybkie tworzenie nawet rozbudowanych aplikacji, ale praca z frameworkiem najczęściej oznacza duże ograniczenia w doborze technologii. Wszystko jest w porządku, dopóki deweloper stosuje dokładnie te rozwiązania, które zaplanowali twórcy frameworka. Jeśli jednak zechce użyć innej bazy danych albo wykorzystać własną, autorską metodę uwierzytelniania użytkowników, może napotkać różne ...
Zacznij zarządzać produktem jak prawdziwy profesjonalista! Jak wejść w rolę kierownika produktu i na czym ona polega? Co należy wiedzieć o procesie budowania produktu? Jak poradzić sobie z wprowadzaniem go na rynek? Po czym poznać, czy produkt odniósł sukces? Rola lidera produktu jest wyjątkowa. Trzeba się wykazać szeroką gamą talentów i umiejętności. Obowiązkiem lidera jest kreowanie wizji i strategii produktu, tworzenie zespołu produktowego oraz kierow...
Wszystko, co musisz wiedzieć o jakości oprogramowania, w jednym miejscu! Poznaj rodzaje błędów Zapewnij wysoką jakość kodu Dowiedz się, jak należycie testować Twórz niezawodne oprogramowanie Czym jest jakość oprogramowania? Czy to wyłącznie miara technicznej doskonałości kodu? A może jakość to coś znacznie więcej? Czy niezawodne działanie i brak błędów świadczą o wysokiej jakości programu? Co charakteryzuje kod, który można uznać za dobry? ...
Python słusznie cieszy się stale rosnącym uznaniem programistów: jest wszechstronny i efektywny, pozwala też na tworzenie wysokiej jakości oprogramowania. Język ten ma poza tym wiele trudniejszych do uchwycenia zalet. Aby uzyskać naprawdę imponujące efekty w zakresie wydajności kodu, jego przenaszalności i bezpieczeństwa, trzeba zagłębić się w dość subtelne niuanse kodowania. Wielu programistów, choć posiada spore doświadczenie w programowaniu w innych językach,...
Poznaj język C++ od strony praktycznej C++ to bez wątpienia jeden z najpopularniejszych i najpotężniejszych języków programowania. Znajduje zastosowanie w tworzeniu systemów operacyjnych, sterowników przemysłowych, bibliotek, gier komputerowych, najrozmaitszych aplikacji desktopowych, programów bazodanowych i oprogramowania serwerowego - słowem, wszędzie tam, gdzie liczy się wydajność i niskie zużycie zasobów. Co więcej, napisane w nim prog...
Programowanie matematyki wcale nie musi być trudne! Przypomnij sobie reguły i działania matematyczne Poznaj w praktyce funkcje matematyczne JavaScriptu Zamieniaj wzory i problemy matematyczne na algorytmy Naucz się wizualizować matematykę Spójrzmy prawdzie w oczy: większość ludzi nie lubi matematyki. Co dziwne, nie jest ona również ulubioną dziedziną wiedzy wielu osób zawodowo parających się informatyką. Niejedną z nich w prawdziwy popłoch wpędza ...
Programowanie współbieżne jest ważną techniką w tworzeniu nowoczesnych rozwiązań sieciowych. Programiści Pythona często w tym celu korzystają z wątków i mechanizmu wywłaszczania. Z tym że nie jest to optymalne rozwiązanie - z uwagi na ryzyko naruszenia bezpieczeństwa. Istnieje też możliwość programowania asynchronicznego z wykorzystaniem biblioteki asyncio, która została dodana w Pythonie 3.4. Złożoność API Asyncio budzi jednak obawy programistów P...
Zaczerpnij wiedzę o C++ od samego twórcy języka! Jak zacząć pracę w zintegrowanym środowisku programistycznym? Jak profesjonalnie tworzyć programy użytkowe? Jak korzystać z biblioteki graficznego interfejsu użytkownika? Jeśli zależy Ci na tym, aby zdobyć rzetelną wiedzę i perfekcyjne umiejętności programowania z użyciem języka C++, powinieneś uczyć się od wybitnego eksperta i twórcy tego języka - Bjarne Stroustrupa, który jako pierwszy zaprojektowa...
Mimo że w 2018 roku Kubernetes zyskał reputację standardowego narzędzia do zarządzania kontenerami, wciąż należy traktować tę technologię jako znajdującą się w dość wczesnej fazie rozwoju. Możliwości tej platformy z czasem rosną i stają się coraz ciekawsze. Standardowym działaniem jest uruchamianie klastrów w Kubernetesie, jednak o wiele bardziej interesujące wydaje się samodzielne rozszerzanie tej platformy o własne kontrolery i rozbudowa API Kubernetesa w celu dostos...
Kubernetes jest platformą do orkiestracji kontenerów. Projekt ten należy dziś do najpopularniejszych i najbogatszych narzędzi w swojej klasie, stanowi także podstawę dla wielu innych platform, znanych jako systemy typu PaaS. Dzięki nim Kubernetes zyskał możliwość tworzenia aplikacji, jednak tego rodzaju narzędzia wymagają od programistów i architektów zastosowania odpowiednich wzorców projektowych. Opisują one schematy rozwiązywania problemó...
"Opus magnum C++ 11. Programowanie w języku C++. Wydanie II poprawione" – zestaw obejmuje 3 tomy. Jedno C i same plusy! Dawno, dawno temu, w głębokich latach osiemdziesiątych ubiegłego wieku pewien duński informatyk zainspirowany językiem C opracował jeden z najważniejszych, najbardziej elastycznych i do dziś niezastąpionych języków programowania - C++. Dziś ten język jest wykorzystywany do tworzenia gier komputerowych, obliczeń naukowych, techniczny...
Java jest językiem dojrzałym i jednocześnie bardzo nowoczesnym. Skupiona wokół niego społeczność cały czas dynamicznie go rozwija, sprawiając, że wszechstronność i innowacyjność Javy budzi podziw. Jest to też język idealny do nauki programowania - początkujący programiści, którzy wybierają Javę jako swój pierwszy język, w naturalny sposób nabierają dobrych nawyków, dzięki czemu później stosowanie się do najlepszych praktyk programisty...
Kategoria „Internet, komputery, informatyka” zawiera publikacje skupiające się na wszystkich zagadnieniach związanych z siecią, komputerami, programami komputerowymi czy oprogramowaniem. Książki z tej kategorii poświęcone są w głównej mierze programowaniu – znajdują się tu m.in. podręcznik „Wstęp do informatyki” Jacka Lembasa i Rafała Kawy przeznaczony dla studentów pierwszego roku kierunków informatycznych, poradnik „Sztuka dobrego programowania” Krzysztofa Jassego i Andrzeja Ziemkiewicza, w którym dobre rady znajdą zarówno początkujący, jak i zaawansowani programiści, poradnik „Java. Uniwersalne techniki programowania” pod redakcją naukową Krzysztofa Barteczki dotyczący programowania w języku Java, podręcznik „HTML. Tworzenie stron www i programów desktopowych” Rafała Strychalskiego (podzielony na 3 części: dla początkujących, średniozaawansowanych i zaawansowanych). Znajdują się tu także poradniki z innych dziedzin, jak np. e-commerce („Narzędzia Google dla e-commerce” Krzysztofa Marca), marketingu internetowego („AdWords i Analytics” Krzysztofa Marca i Tomasza Trzósły), praktyk zwinnych („W poszukiwaniu zwinności w architekturze systemów IT” Krzysztofa Bończaka”), rzeczywistości wirtualnej („Rzeczywistość wirtualna (VR) dla każdego – Aframe i HTML 5” Krzysztofa Wońka). Nie brakuje również pozycji dla dzieci, które już od małego chcą rozpocząć swoją przygodę z programowaniem w Scratchu, Pythonie czy Javie („Bawimy się, programując w Scratchu” i „Twórz własne gry komputerowe w Pythonie” Ala Sweigarta, „JavaScript dla dzieci. Programowanie na wesoło” Nicka Morgana), grafiką komputerową („Piksele, wektory i inne stwory” Alicji Żarowskiej-Mazur i Dawida Mazura), produkcją filmową („Zostań gwiazdą YouTube'a” Nicka Willoughby’ego).