Programiści uwielbiają brać udział w nowych projektach, być świadkami ewolucji kodu, mieć wpływ na wybór narzędzi i projektować ich architekturę. Niestety, w ogromnej większości przypadków muszą pracować z kodem mającym wiele lat i pisanym przez wiele osób. Jak sobie poradzić w takim środowisku? Jak dobrać techniki pracy do gotowego kodu? Na te i wiele innych podobnych pytań odpowiada ten wyjątkowy podręcznik.Dzięki niemu dowiesz się, jak wprowadzać zmiany w zastanym kodzie, ...
Domain-driven design, czyli projektowanie dziedzinowe, w skrócie DDD, jest zbiorem praktyk tworzenia architektury oprogramowania z uwzględnieniem dziedziny biznesu i jej problemów. W ten sposób logika biznesowa staje się sercem aplikacji. Wielu architektów jednak nie radzi sobie ze złożonością tworzonego oprogramowania. Nauczenie się zasad i wzorców DDD, przyswojenie technik dekompozycji dużego systemu, modelowania i projektowania integracji komponentów jest sposobem na zbudo...
Większość dzieciaków interesuje się fascynującym światem urządzeń elektrycznych. Obserwują, jak działa żarówka, zdalnie sterowany samochód czy odtwarzacz muzyki. Kiedy mały odkrywca postanawia sprawdzić, co one kryją w środku, często ofiarą tej niepohamowanej ciekawości pada jakiś gadżet. Warto pokazać najmłodszym, że elektronika najwięcej radości (i wiedzy!) daje wtedy, gdy zbuduje się coś własnymi rękoma! Właśnie konstruowanie coraz to bardziej skomplikowanych obwodów jest ...
Python to wyjątkowo praktyczny język programowania, idealnie nadający się do szybkiego rozwiązywania niecodziennych problemów, z którymi często borykają się koderzy. Nie wymusza on stosowania jednego stylu programowania, co pozwala na dużo większą elastyczność w trakcie pisania kodu. Umożliwia programowanie obiektowe, strukturalne i funkcyjne, a ponadto udostępnia zaawansowane mechanizmy zarządzania pamięcią, zapewnia dynamiczne sprawdzanie typów oraz czytelną składnię. Te ws...
W złożonej rzeczywistości myślenie systemowe jest kluczowym narzędziem pozwalającym odnieść się do licznych wyzwań: gospodarczych, ekologicznych, politycznych czy społecznych. Tylko w ten sposób w codziennych wiadomościach można dostrzec przejawy trendów, a w trendach - przejawy struktury. Zrozumienie tych procesów pozwala nie tylko na łatwiejszą egzystencję w świecie złożonych systemów, ale także na podejmowanie racjonalnych decyzji biznesowych czy politycznych. Bez myślenia...
Współczesny świat w dużej mierze przeniósł się do wnętrza komputerów. Nie chodzi tylko o internet, ale także o bazy danych najrozmaitszych firm i urzędów, programy do obsługi maszyn i sprzętów AGD, skomplikowane systemy logistyczne, magazynowe, handlowe i wszelkie inne. Bez odpowiedniego oprogramowania żaden z tych elementów rzeczywistości nie będzie właściwie działał, a to może być przyczyną małych kłopotów lub wielkich zagrożeń. Jednak stworzenie takiego oprogramowania nie ...
Tworzenie skomplikowanych systemów informatycznych wymaga nowego podejścia. Dotychczas stosowane metody przestają się sprawdzać i generują mnóstwo problemów. Odpowiedzią na nie jest DomainDriven Design, w skrócie DDD. W tym podejściu szczególny nacisk kładzie się na tworzenie obiektów dokładnie odzwierciedlających zachowanie ich odpowiedników istniejących w rzeczywistości. Dzięki temu projektowanie systemu można powierzyć ekspertom z danej branży, którzy niekoniecznie muszą b...
Rozwój technologii i dostęp do danych finansowych stały się ogromnym ułatwieniem w korzystaniu z globalnych rynków finansowych. Jeśli zechcesz, możesz szybko zacząć przygodę na przykład z handlem algorytmicznym. Wystarczy, że masz niewielkie pojęcie o matematyce, programowaniu i ekonomii. Niestety, nieliczne programy nauczania o finansach integrują ze sobą te trzy dziedziny. Tymczasem koncepcje matematyczne wspaniale ułatwiają zrozumienie pojęć z zakresu inżynierii finansowej...
Systemy oparte na uczeniu maszynowym są coraz bardziej wyrafinowane. Spośród wielu narzędzi służących do implementacji algorytmów uczenia maszynowego najpopularniejszy okazał się Python wraz z jego bibliotekami. Znajomość tych narzędzi umożliwia sprawne tworzenie systemów uczących się, jednak uzyskanie spektakularnych wyników wymaga doświadczenia i wprawy. Konieczne są więc ćwiczenia i praktyka w samodzielnym rozwiązywaniu problemów.To trzecie wydanie popularnego podręcznika,...
Robotyka jest bardzo ciekawą dziedziną inżynierii o ogromnym znaczeniu praktycznym. Wymaga znajomości kilku dyscyplin wiedzy, takich jak algorytmika, matematyka czy mechanika. Równocześnie roboty oddziałują na wyobraźnię i są przedmiotem zainteresowania uczniów na każdym poziomie edukacji, od przedszkolnego po uniwersytecki. O ile jednak początkowe zapoznawanie się z robotami polega głównie na zabawie i eksperymentach, o tyle poważniejsze studiowanie robotyki oznacza konieczn...
Dawny Linux był niezawodny w działaniu, ale nie miał efektownego wyglądu i wymagał mozolnej konfiguracji, aby dostosować go do potrzeb użytkowników. Trzeba było znać wiele poleceń, skryptów i plików konfiguracyjnych. Zarządzanie systemem i siecią kosztowało sporo ręcznej pracy. Dzisiejszy Linux jest o wiele łatwiejszy w użytkowaniu. Poszczególne elementy zostały zmienione i usprawnione bez utraty tego, z czego Linux słynął od dawna: niezawodności, wydajności i bezpieczeństwa....
Rozbudowane projekty wymagają zaangażowania zespołu programistów. By ich współpraca była efektywna, niezbędny jest system kontroli wersji, taki jak Git. Umożliwia on tworzenie historii projektu, zarządzanie jego wersjami, przeglądanie wszystkich zmian, a także przywracanie pliku do dowolnej wcześniejszej wersji. Repozytoria Gita można przechowywać w GitHubie - w ten sposób bez ponoszenia dodatkowych opłat udostępnia się kod innym osobom. Korzystanie z Gita i GitHuba nie jest ...
JavaScript i jego następca, TypeScript, od lat są ulubionymi językami programowania zawodowców. Mogą oni korzystać z całej gamy wspaniałych narzędzi i frameworków, takich jak React, Node.js czy też Redux, Express i GraphQL. Dają one możliwość pisania całych aplikacji, zarówno części klienckich, jak i serwerowych, w jednym języku. Programiści coraz częściej doceniają korzyści, jakie płyną z tworzenia rozwiązań obejmujących pełny stos technologiczny. Jest to o wiele efektywniej...
Osobom znającym JavaScript ten praktyczny przewodnik szybko pozwoli na przyspieszenie działania struktury Angular w celu tworzenia wydajnych, opartych na sieci aplikacji na komputery osobiste i urządzenia mobilne. Wersja ta, wstępnie znana jako Angular 2, jest napisaną od nowa platformą autorstwa tego samego zespołu, który tworzył AngularJS. Programiści znający poprzednią wersję także ocenią tę książkę jako wartościowe źródło informacji.Autor książki, Shyam Seshadri, prowadzi...
Excel 2021 PL. Kurs to podstawowe narzędzie pracy w nowoczesnych biurach rachunkowych, przedsiębiorstwach przemysłowych i instytucjach naukowych. Program umożliwia gromadzenie, porządkowanie, formatowanie i przetwarzanie rozmaitych danych. Pozwala na wykonywanie złożonych obliczeń i symulacji, a także atrakcyjną prezentację ich wyników, wreszcie - wygodną automatyzację powtarzalnych działań. Niezależnie od tego, co chcesz zrobić z liczbami, Excel z pewnością ułatwi i przyspie...
Wydawałoby się, że język C najlepsze lata ma już za sobą. Opracowano w końcu mnóstwo łatwych w użyciu i efektywnych wysokopoziomowych języków programowania. W rzeczywistości język C wciąż okazuje się niezastąpiony do tak ważnych celów, jak programowanie sterowników, systemów operacyjnych, kart graficznych, a także niewielkich mikrokontrolerów o ograniczonych zasobach. Właśnie teraz, w czasach burzliwego rozwoju internetu rzeczy, język C udowadnia swoją przydatność. Wystarczy ...
Z internetu korzystamy codziennie do różnych celów. Odnajdujemy potrzebne informacje, używamy go do pracy, nauki, rozrywki i kontaktów z innymi. Musimy też unikać zagrożeń i przestrzegać zasad cyberbezpieczeństwa. Ale czy na pewno wiesz, jak działa internet, kto nim zarządza, kto go cenzuruje i w jaki sposób przepływają w nim informacje? Nawet jeśli nie lubisz zagadnień technicznych i nie wiesz dokładnie, czym są algorytmy, wiedza o tych podstawach jest dla Ciebie wyjątkowo w...
Czy wiesz, czym się zajmuje programista? To ktoś, kto, używając swojego umysłu i odpowiedniego języka programowania, rozwiązuje rozmaite problemy. Programista to taki współczesny superbohater. Przychodzi, siada do komputera, szybko przebiega palcami po klawiaturze i proszę ― działa. Oczywiście, to pewne uproszczenie, ale... Brzmi ciekawie? Słusznie. Bo praca programisty, kodera, developera jest ciekawa. I fajna. I daje dużo satysfakcji. A najlepsze jest to: podstaw programowa...
Jeśli nie mieszkasz w jaskini na końcu świata, komputery prawdopodobnie opanowały już niemal każdy obszar Twojego życia. Otaczają Cię dosłownie ze wszystkich stron i pomagają w wielu codziennych czynnościach. Z pewnością używasz ich do komunikacji, rozrywki, pracy i nauki, robisz za ich pomocą zakupy i planujesz wakacje. Dzięki komputerom Twoja codzienność jest prostsza i przyjemniejsza... do czasu, gdy musisz coś załatwić z kimś, kto odpowiada za ich programowanie. W tym mom...
Analiza danych sprawia, że dzięki ich dużym i mniejszym kolekcjom uzyskujemy wartościową wiedzę, która pozwala na podejmowanie najlepszych decyzji. Dzieje się to poprzez odkrywanie wzorców lub trendów. Obecnie Python udostępnia przeznaczone specjalnie do tego celu narzędzia i biblioteki. Możemy więc łatwo korzystać z wyrafinowanych technik wydobywania wiedzy z danych. Aby jednak osiągnąć zamierzone efekty, trzeba dobrze poznać zarówno metodologię analizy danych, jak i zasady ...
Już jako nastolatek swoimi umiejętnościami zastraszył całą Amerykę. Z czasem stał się najsłynniejszym hakerem świata i wrogiem publicznym numer jeden - okrzyknięty przez media groźnym cyberprzestępcą, gorliwie ścigany przez FBI, w końcu podstępem namierzony, osaczony i spektakularnie ujęty... Uzbrojony w klawiaturę został uznany za groźnego dla społeczeństwa - wyrokiem sądu na wiele lat pozbawiono go dostępu do komputera, internetu i telefonów komórkowych. Życiorys Kevina Mit...
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 - wszystko to sprawia, że Python znajduje zastosowanie w najróżniejszych dziedzinach i wspiera rozwój wielu popularnych serwisów internetowych. Bez wątpienia warto się go nauczyć!Jeśli chcesz poznać ten język, jesteś na dobrej d...
Wybór systemu operacyjnego, pod którym będzie pracował Twój komputer, w istocie sprowadza się do wyboru między standardowym produktem giganta z Redmond a niezawodnym, darmowym, fantastycznie elastycznym Linuksem. Ten ostatni system może stać się dla Ciebie niezastąpionym środowiskiem pracy, ale najpierw warto go trochę oswoić, a przede wszystkim nauczyć się z nim dogadywać — nie tylko z poziomu interfejsu graficznego, lecz także z poziomu linii poleceń. Ta wiedza pozwoli Ci b...
Rozczarowany klient, który doświadczył negatywnych wrażeń podczas korzystania z produktu, następnym razem wybierze inną ofertę. To zrozumiała reakcja. Z punktu widzenia dostawcy produktu istotniejsze są przyczyny tych negatywnych wrażeń. Okazuje się, że problem ten często wymyka się świadomości osób odpowiedzialnych za produkt. Tymczasem uchwycenie wrażeń klientów za pomocą ich zarejestrowanych zachowań może się stać podstawą do zaplanowania i przeprowadzenia konkretnych zmia...
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).