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...
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...
C# liczy sobie około dwudziestu lat. Jest niestrudzenie rozwijany i doskonalony przez Microsoft, a dzięki swojej wszechstronności znajduje zastosowanie w wielu dziedzinach: pisaniu gier komputerowych, tworzeniu skalowalnych i niezawodnych aplikacji internetowych oraz aplikacji mobilnych, a nawet niskopoziomowym programowaniu komponentów większych systemów. Twórcy C# postawili na obiektowość, ścisłą kontrolę typów, a przede wszystkim na prostotę w s...
Rola architekta oprogramowania się zmienia. Dziś jest on odpowiedzialny za wiele spraw, zarówno technicznych, jak i tych wynikających ze specyfiki organizacji, której ma służyć aplikacja. Co więcej, rola architekta nie kończy się na podjęciu decyzji projektowych na początku pracy. Nowoczesne style architektoniczne, takie jak mikrousługi, umożliwiają przyrostowe wprowadzanie zmian, co jednak wymusza ciągłe wypracowywanie kompromisów z innymi kwestiami. Obs...
Python wydaje się językiem idealnym: ma intuicyjną składnię, jest przyjemny w używaniu, umożliwia tworzenie wydajnego, elastycznego kodu. Przy tym jest wyjątkowo wszechstronny, a stosowanie go w przeróżnych celach ułatwiają liczne biblioteki tworzone przez pasjonatów. To jednak nie zmienia faktu, że aby stać się profesjonalnym programistą Pythona, trzeba nauczyć się tworzyć kod godny profesjonalisty: działający bez błędów, czysty, czytelny i łatwy w utrzy...
Python nie jest językiem idealnym, jednak przybywa programistów, którzy uważają go za bliski ideału. Wyróżnia się prostotą i wszechstronnością. Jest wdzięcznym narzędziem do badania danych i tworzenia systemów sztucznej inteligencji, uwielbiają go analitycy, ekonomiści i naukowcy. Może posłużyć do tworzenia stron WWW czy aplikacji specjalnego przeznaczenia. Python należy do najbardziej spójnych i czytelnych języków programowania. Jest...
Programiści lubią Pythona. Ujmuje ich wyrazistość, zwięzłość i interaktywność kodu, a także bogata kolekcja narzędzi i bibliotek. Zalety te są uzupełniane przez rozwój innych technologii, zwiększającą się dostępność coraz szybszego sprzętu oraz rosnącą przepustowość internetu. Z kolei to wszystko wiąże się z powstawaniem niewyobrażalnych ilości danych, które trzeba magazynować i efektywnie przetwarzać. Większość innowacji w świecie informatyki koncentruje się wo...
Warto nauczyć się programowania! Poza stworzeniem sobie możliwości znalezienia ciekawej i dobrze płatnej pracy czy pasjonującego hobby umiejętność programowania bywa niezwykle przydatna w rozwiązywaniu różnych problemów. Paleta języków programowania i narzędzi programistycznych jest niezwykle szeroka i praktycznie każdy znajdzie coś dla siebie. Zanim to jednak nastąpi, trzeba zdobyć trochę wiedzy i umiejętności. Ale bez obaw! W nauce programowania najtrud...
Opanuj Pythona od strony praktycznej! Poznaj konstrukcje języka Python Naucz się stosować je w praktyce Wykorzystaj standardowe biblioteki Rozwiąż 139 zadań i sprawdź swoje rozwiązania Python to bardzo popularny, wydajny i elastyczny język programowania ogólnego przeznaczenia, którego prosta, czytelna i zwięzła składnia zdobyła uznanie rzesz programistów na całym świecie. Duże możliwości, przenośność kodu, możliwość pisania skryptów - wszys...
Komputery kwantowe nie są już tylko urządzeniami teoretycznymi. Nie są też futurystycznym monstrum, obcą maszyną, która zamieni całe istniejące oprogramowanie w jakąś jego niezrozumiałą alternatywę. Komputery kwantowe (QPU) staną się raczej radykalnym rozszerzeniem możliwości współczesnej informatyki, które pozwoli nam rozwiązać problemy dotychczas nierozwiązywalne. Istnieją ważne zadania, z którymi QPU potrafią sobie świetnie poradzić, a któ...
Kubernetes jest czymś więcej niż platformą do orkiestracji kontenerów. W ciągu zaledwie kilku lat stał się najpopularniejszym i najbogatszym narzędziem do tworzenia, wdrażania i utrzymywania aplikacji w chmurze. Tak radykalna zmiana sposobu funkcjonowania systemów informatycznych wymaga przemodelowania podejścia i stylu pracy zespołów programistycznych. Jeśli jednak wypróbujesz Kubernetesa, przekonasz się, że bardzo upraszcza on tworzenie, wdrażani...
Poznaj platformę .NET od praktycznej strony! Projektuj rozwiązania, które zdobędą serca klientów Implementuj je zgodnie z najlepszymi wzorcami Testuj aplikacje przy użyciu właściwych narzędzi .NET stanowi jedną z najpopularniejszych platform do tworzenia i uruchamiania rozmaitych aplikacji, które można pisać w jednym z wielu wspieranych przez nią języków. Framework ten przez lata dojrzał i wzbogacił o wiele przydatnych możliwości, któ...
Projektanci Kotlina postawili na pragmatyzm. Oznacza to, że do dziś wszystkie decyzje związane z rozwojem języka są podejmowane z uwzględnieniem potrzeb biznesowych: produktywności, skalowalności, prostej konserwacji, niezawodności i wydajności. Od początku szczególną uwagę zwraca się również na bezpieczeństwo, czytelność, wielokrotne używanie kodu, łatwość użycia narzędzi i możliwości współdziałania z innymi językami. Bardzo ważna okazała się też wydajno...
Drogi Czytelniku, właśnie trzymasz w rękach nowe wydanie książki zaliczanej do klasyki literatury informatycznej. Napisana przez autorów języka ANSI C w najlepszy możliwy sposób przedstawia arkana tego języka. A co można powiedzieć o samym języku? To też klasyka. To język wymagający systematyczności i skupienia, ale dający w zamian wiele możliwości i świetne wyniki. To najczęściej nauczany język programowania - jego znajomość stanowi znakomity fundament do pozna...
Projektowanie usług oraz projektowanie wrażeń użytkownika nie dotyczy tylko oprogramowania. Narzędzia i techniki, jakie oferuje, można wykorzystać w praktycznym funkcjonowaniu właściwie każdej organizacji, której zależy na lepszym działaniu na rzecz klientów, obywateli czy własnych pracowników. Są bezcenne przy łączeniu silosów operacyjnych i doskonaleniu wewnętrznej współpracy w organizacji - dzięki wdrożeniu zasad projektowania usług można...
Poznaj czysty JavaScript JavaScript jest niezwykle uniwersalnym językiem programowania. Idealnie sprawdza się na przykład w projektowaniu wszelkiego rodzaju aplikacji internetowych - od działających pod przeglądarkami, przez te pisane na urządzenia mobilne, po aplikacje, które obsługują smart TV i inne inteligentne urządzenia domowe. W związku z tym wokół JavaScriptu powstał cały ekosystem narzędzi wspomagających i rozszerzających możliwości tego języka. Wystar...
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).