Projektowanie oprogramowania obiektowego nie jest łatwe, a przy założeniu, że powinno ono nadawać się do wielokrotnego użytku, staje się naprawdę skomplikowane. Aby stworzyć dobry projekt, najlepiej skorzystać ze sprawdzonych i efektywnych rozwiązań, które wcześniej były już stosowane. W tej książce znajdziesz właśnie najlepsze doświadczenia z obszaru programowania obiektowego, zapisane w formie wzorców projektowych gotowych do natychmiastowego użycia!W książce „Wzorce projek...
Dobrą opinię Linux zawdzięcza takim zaletom jak otwarte źródła, różnorodność dystrybucji, elastyczność i wszechstronność. Dziś większość platform przetwarzania w chmurze opiera się na systemach linuksowych. Dlatego każdy, kto chce efektywnie pracować w powstających centrach danych, powinien dobrze go poznać. Niezależnie od tego Linux wciąż świetnie się sprawdza w środowiskach sieciowych lub jako serwer WWW. Ceni się go w pracy biurowej czy jako wygodny, kompleksowy warsztat p...
Jak dobrze jest wiedzieć i umieć!Człowiek uczy się całe życie. Najpierw, we wczesnym dzieciństwie, opanowuje trudną sztukę chodzenia i komunikacji z innymi, a także uczy się, co jest bezpieczne, a czego nie należy robić, bo może być dla niego zagrożeniem. Mały człowiek musi przyswoić wiele różnych umiejętności. Musi ― ale też chce, bo dzieci z natury uczą się chętnie.Potem człowiek rośnie i idzie do szkołyNauka w szkole nie zawsze idzie sprawnie. Szczególnie jeśli na opanowan...
Czy przyszło Ci kiedyś do głowy, że matematyka może być interesująca i pomocna? Dzięki niej lepiej zrozumiesz wiele zagadnień współczesnego świata. Matematyczne umiejętności pomogą Ci w pracy i życiu codziennym, znacząco podniosą też Twoje kwalifikacje zawodowe. Matematyka jest wszędzie, bez niej niemożliwe byłoby programowanie, szacowanie ryzyka, działanie urządzeń medycznych, budowanie domów czy skuteczne łapanie przestępców. Zaprzyjaźnij się z nią!Autorka tej książki, dr B...
Autodesk Inventor Professional to jeden z dwóch najpopularniejszych systemów CAD w swojej klasie. Uzupełnia go rozwiązanie PLM typu cloud computing - Fusion 360.Jeśli chcesz szybko rozpocząć samodzielne projektowanie za pomocą tych systemów w polskiej lub angielskiej wersji językowej albo bez problemów zaliczyć kolokwium z Inventora, sięgnij po tę książkę!Podstawy metodyki projektowania to więcej niż wprowadzenie do zagadnienia. Książka zawiera metodycznie poprawne i zweryfik...
Mijają lata, dorastają kolejne pokolenia programistów, a Java wciąż zachwyca swoimi możliwościami. Jest językiem równocześnie nowoczesnym, dojrzałym i... eleganckim. Twórcy Javy od jej pierwszego wydania starali się wdrażać awangardowe rozwiązania, pamiętając równocześnie o niezawodności i bezpieczeństwie kodu. Java wciąż pozostaje ulubionym narzędziem profesjonalistów tworzących aplikacje internetowe. Przy czym jej możliwości są o wiele większe. Aby jednak w przyszłości osią...
Przekonaj się, jak fascynująca jest kryptografia!Poznaj historię rozwoju kryptografiiOpanuj jej matematyczne podstawyRozpracuj najważniejsze algorytmy kryptograficzneDowiedz się, jak zastosować je w praktyceKryptografia to dziedzina nauki, której sedno stanowią sposoby bezpiecznego przekazywania informacji. Jest ona niemal tak stara, jak nasza cywilizacja, a dziś rozwija się w sposób niezwykle dynamiczny. Gdy tylko narodziły się pierwsze metody zapisu i komunikowania się, poj...
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 problemy. Sztuczna inteligencja uja...
C# jest wyjątkowo udanym dziełem Microsoftu - konsekwentnie rozwijanym, dojrzałym i wyjątkowo wszechstronnym obiektowym językiem programowania. Wersja C# 9.0 została dostosowana do współpracy ze środowiskiem uruchomieniowym Microsoft .NET 5. Język ten pozwala programistom na uzyskiwanie imponującej efektywności - dzięki prostocie, ekspresywności kodu i wydajności działania. Jednak nawet profesjonaliści, którym zależy na sprawnej pracy, potrzebują niekiedy poręcznej ściągawki....
W pewnym uproszczeniu łańcuch bloków (blockchain) jest rozproszoną bazą danych, która utrzymuje stale rosnącą liczbę rekordów danych zabezpieczonych kryptograficznie przed manipulacją i próbą naruszenia integralności. Może posłużyć jako rozproszona księga rachunkowa. Technologia ta cieszy się dużym zainteresowaniem, a niektórzy entuzjaści nazywają ją nawet przełomową. Aby zrozumieć, do czego łańcuch bloków może się przydać, poprawnie ocenić uzasadnienie biznesowe startupów wy...
Framework Ansible jest potężnym narzędziem służącym do automatyzacji wdrożeń oprogramowania i zarządzania jego konfiguracjami. Oferuje proste i bardzo przydatne funkcje przeznaczone do automatyzacji wielowarstwowych środowisk za pomocą komunikacji niewymagającej agenta. Przydaje się także do obsługi ciągłej integracji i wdrażania oprogramowania (CI/CD) bez żadnego przestoju. Może służyć do różnych celów: przygotowania infrastruktury jako kodu, wdrożeń aplikacji czy automatyza...
Dzięki kryptografii możemy w dużym stopniu zabezpieczyć swoje dane. Z szyfrowaną komunikacją wiążą się jednak kontrowersje i sprzeczności interesów. Przestępcy, ale również rządy, policja i służby wywiadowcze dążą do uzyskania możliwości wglądu we wszystkie formy komunikacji. Świat toczy wojnę o to, co można zaszyfrować, co powinno być zaszyfrowane i kto powinien dysponować kluczem pozwalającym odczytać zaszyfrowane wiadomości należące do innej osoby. W tej sytuacji zrozumien...
Mało kto lubi matematykę, zwłaszcza algebrę czy analizę matematyczną. Wydaje się trudna i niezrozumiała. Bardzo łatwo popełnić błędy podczas rozwiązywania równań różniczkowych czy całek. Jeśli jednak powierzysz najtrudniejszą i najżmudniejszą część obliczeń komputerowi, szybko się przekonasz, że to fascynująca dziedzina wiedzy. Docenisz też jej przydatność w różnych dziedzinach! Programy, które ułatwią Ci rozwiązywanie problemów matematycznych, łatwo napiszesz samodzielnie, w...
Mathcad to wszechstronny program komputerowy do przeprowadzania obliczeń matematycznych i wizualizacji ich wyników. Jego możliwości i elastyczność sprawiły, że narzędzie zdobyło rzeszę wiernych użytkowników oraz znalazło szereg zastosowań w różnych dziedzinach nauki i techniki. Jak każde złożone oprogramowanie, Mathcad wymaga nauki, a tę najlepiej prowadzić na praktycznych przykładach.Książka zawiera 30 ciekawych, obszernych zadań, z których każde jest poświęcone innemu probl...
Uczenie głębokie zmienia oblicze wielu branż. Ta rewolucja już się zaczęła, jednak potencjał AI i sieci neuronowych jest znacznie większy. Korzystamy więc dziś z osiągnięć komputerowej analizy obrazu i języka naturalnego, wspierania badań naukowych czy budowania skutecznych strategii biznesowych - wchodzimy do świata, który do niedawna był dostępny głównie dla naukowców. W konsekwencji trudno o źródła wiedzy, które równocześnie byłyby przystępne dla zwykłych programistów i mi...
Chyba nikt nie mógł przewidzieć, że komputer i Internet tak szybko staną się nieodłącznymi towarzyszami naszego codziennego życia. Czy tego chcemy, czy nie, nadszedł moment, aby się z nimi zaprzyjaźnić. W przeciwnym razie nadal będziemy tracić mnóstwo czasu na czekanie w kolejkach i "analogowe" załatwianie spraw, z których wielu w ogóle nie uda nam się pchnąć do przodu. Dlaczego? Ponieważ coraz więcej firm i instytucji komunikuje się z klientami wyłącznie przez Internet. Pona...
Język C# cechują dojrzałość, prostota i nowoczesność. Służy on do wielu celów: do tworzenia aplikacji sieciowych, aplikacji działających w chmurze, oprogramowania dla urządzeń mobilnych i internetu rzeczy. Choć pozwala na pisanie kodu bezpiecznego, przejrzystego, wydajnego i prostego w konserwacji, zdarzają się przypadki, gdy jest on tak fatalnej jakości, że uzyskanie właściwej skalowalności i wydajności oprogramowania staje się niemożliwe. W takim wypadku trzeba zidentyfikow...
Grono entuzjastów sztucznej inteligencji stale rośnie. Jest już bowiem jasne, że stanowi ona dostępną metodę zmiany świata na lepsze. Pełnymi garściami ze zdobyczy AI czerpią naukowcy, analitycy danych, przedsiębiorcy i menedżerowie, a nawet politycy i ekonomiści. Jej możliwości wydają się dziś nieograniczone - aby je wykorzystać, wystarczy zdobyć gruntowną wiedzę i dobrze zrozumieć podstawy sztucznej inteligencji. Na pierwszy rzut oka nie są to trudne zadania. Choćby ze wzgl...
Metody statystyczne są kluczowym narzędziem w data science, mimo to niewielu analityków danych zdobyło wykształcenie w ich zakresie. Może im to utrudniać uzyskiwanie dobrych efektów. Zrozumienie praktycznych zasad statystyki okazuje się ważne również dla programistów R i Pythona, którzy tworzą rozwiązania dla data science. Kursy podstaw statystyki rzadko jednak uwzględniają tę perspektywę, a większość podręczników do statystyki w ogóle nie zajmuje się narzędziami wywodzącymi ...
Python to obecnie jeden z najpopularniejszych języków programowania, a jego znajomość zapewnia zatrudnienie w największych firmach i przy najciekawszych projektach w branży informatycznej. Szerokie możliwości, duża elastyczność i wszechstronność, przejrzystość i zwięzłość składni, czytelność i klarowność kodu, rozbudowany pakiet bibliotek standardowych, niemal nieograniczone zastosowanie w różnych dziedzinach nauki i biznesu - wszystko to sprawia, że język ten z pewnością utr...
Jakość została zdefiniowana już w starożytności. Platon określał ją jako pewien stopień doskonałości. I tu nic się nie zmieniło ― im bliższy ideału produkt, tym wyższa jego jakość. Problem w tym, że każdy postrzega ów ideał nieco inaczej. Na gruncie programistycznym wysoka jakość może oznaczać co innego dla project managera, a co innego dla developera odpowiedzialnego za warstwę frontendu. Jeszcze inaczej do tematu podejdzie klient. W dużym projekcie, nad którym pracuje wiele...
Angular jest frameworkiem napisanym w języku TypeScript. Służy do tworzenia złożonych, nowoczesnych i wydajnych aplikacji działających po stronie klienta. Jest rozwijany przez Google i cieszy się dużym uznaniem projektantów aplikacji: ułatwia tworzenie poprawnego, czystego kodu, umożliwia bezproblemowe testowanie, a praca programisty z tym frameworkiem jest przyjemna, efektywna i satysfakcjonująca. Aby w pełni wykorzystać możliwości Angulara, koniecznie trzeba się zapoznać z ...
Komputer jest wszechstronnym narzędziem, które szybko i dokładnie wykona wiele pracochłonnych zadań. Wystarczy przekazać mu instrukcje w zrozumiałym dla niego języku. Takim jak Python, który jest łatwy do nauczenia się, pozwala pisać wyrazisty, zwięzły kod i stwarza imponujące możliwości dzięki niezliczonej liczbie rozszerzeń i bibliotek. Tymczasem wciąż wiele osób wykonuje żmudne i męczące zadania ręcznie: pracując z arkuszem kalkulacyjnym, plikami albo pocztą e-mail. Czas t...
CodeIgniter to niewielki, lecz potężny framework, który ułatwia tworzenie aplikacji zarówno początkującym, jak i zaawansowanym programistom PHP. Dzięki implementacji wzorca model-view-controller wspiera podział kodu na warstwy odpowiedzialne za operacje związane z zarządzaniem danymi, wyświetlanie strony oraz obsługę logiki biznesowej, co upraszcza nie tylko pisanie, lecz również utrzymywanie i rozwój wykorzystujących go aplikacji.Szerokie możliwości, doskonała wydajność, zna...