Komputer jest niezwykle wszechstronnym narzędziem, które może posłużyć do błyskawicznego wykonywania przeróżnych czynności. Dotyczy to również zadań, które zwykle zajmują mnóstwo czasu, a przy tym są męczące i nudne. Zamiast przez wiele godzin porównywać czy wprowadzać dane, lepiej dobrze zaprogramować komputer, który wykona takie zadania w ciągu kilku sekund. Aby to osiągnąć, wcale nie trzeba być profesjonalnym programistą! J...
Tworzenie aplikacji w języku TypeScript z wykorzystaniem frameworka Angular 2 jest dziś jednym z najwydajniejszych sposobów rozwijania średnich i dużych aplikacji internetowych. Takie aplikacje można bez problemu uruchamiać w każdej nowoczesnej przeglądarce, również na platformach mobilnych. Separacja kodu interfejsu od logiki aplikacji, prosta modularyzacja aplikacji, bezproblemowe przetwarzanie danych asynchronicznych, świetne narzędzia i nowoczesne komponenty...
Jak się nie pomylić, czyli potęga matematycznego myślenia Matematyka jest częścią naszego świata. Jest nieodłącznie związana z naszym sposobem myślenia i rozumienia rzeczywistości. Matematyka to nauka, której techniki i narzędzia zostały wypracowane przez setki lat sumiennej pracy i dyskusji. Dzięki niej spoglądasz na świat w głębszy, zdrowszy i bardziej wnikliwy sposób. Aby jednak choć trochę nauczyć się matematyki, trzeba ją praktykować. Wymaga to czasu i wy...
Większość programistów pracuje zgodnie z paradygmatem programowania imperatywnego, który polega na tworzeniu ciągu instrukcji zmieniających stan programu. Najpoważniejszą wadą tej metody pracy jest podatność kodu na błędy, które trudno jest później wykryć i usunąć. Alternatywą jest programowanie funkcyjne — metodyka, która kładzie największy nacisk na stałe i funkcje. Takie programowanie polega na konstruowaniu funkcji oraz na obliczan...
Rozpocznij przygodę z programowaniem dla systemu Windows! Technologia Windows Presentation Foundation firmy Microsoft to jedno z najlepszych rozwiązań do tworzenia aplikacji działających pod kontrolą systemu Windows. WPF integruje interfejs użytkownika, grafikę, multimedia i dokumenty oraz ułatwia implementację wzorców projektowych, które oddzielają warstwę logiczną od warstwy prezentacji. Dużą zaletą tej technologii jest możliwość kompozycji i adaptacji poszcz...
Java jest dojrzałym i bezpiecznym językiem programowania, który pozwala na tworzenie kodu działającego niezależnie od platformy. Jest przy tym cały czas konsekwentnie rozwijany przez firmę Oracle. Java w wersji SE 8 stała się innowacyjnym, nowoczesnym narzędziem o imponujących możliwościach. Aby w pełni wykorzystać szanse, które niesie Java SE 8, i tworzyć kod o wysokiej jakości, niezbędne jest pogłębione zrozumienie tego języka i konieczna jest gruntowna znajom...
Każdy paradygmat programowania zakłada inne podejście do rozwiązywania problemów. Mimo że podejście obiektowe wciąż jest podstawowym modelem projektowania programowania, podejście funkcyjne pozwala na uzyskanie kodu lepszej jakości: modularnego, ekspresywnego, odpornego na błędy, a przy tym zrozumiałego i łatwego w testowaniu. Szczególnie interesujące jest stosowanie w modelu funkcyjnym języka JavaScript. Chociaż jest to język obiektowy, okazuje się, że taki spo...
Książka "Opus Magnum C++11" Jerzego Grębosza zdobyła wyróżnienie w kategorii podręczników w konkursie na Najlepszą Polską Książkę Informatyczną 2018r. organizowanym przez Polskie Towarzystwo Informatyczne. "Opus magnum C++11. Programowanie w języku C++" - zestaw obejmuje 3 podręczniki. 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 opra...
Testy penetracyjne nowoczesnych serwisów. Kompendium inżynierów bezpieczeństwa_x005F_x000D_ _x005F_x000D_ Sieć stała się niebezpiecznym miejscem. Między grasującymi złoczyńcami a inżynierami bezpieczeństwa aplikacji trwa ciągły wyścig zbrojeń. Mimo to oczywiste jest, że uzyskanie stuprocentowego bezpieczeństwa jest niemożliwe. Jedną z technik zabezpieczania aplikacji są testy penetracyjne, które polegają na atakowaniu systemu różnymi metodami, aby ...
Tworzenie oprogramowania nie może być procesem powolnym. Dziś zespoły projektowe muszą cechować się elastycznością i dynamiką działania, aby odnieść sukces. Wymagania stawiane kodowi mogą wielokrotnie się zmieniać podczas projektu. Oznacza to, że wprowadzanie zmian do kodu powinno być proste i możliwie mało pracochłonne. Deweloperzy, którzy wdrożą zasady programowania zwinnego i będą przestrzegać związanych z nimi dobrych praktyk, będą w stanie sprostać tym wymaganiom....
Poznaj system AIX z bliska! Systemy operacyjne z rodziny UNIX znane są z wysokiej niezawodności i wydajności. Właśnie z tego powodu w wielu firmach są one wykorzystywane do zarządzania serwerami kluczowych aplikacji. Jednym z systemów należących do tej grupy jest AIX, który zyskał popularność dzięki bardzo dużym możliwościom wirtualizacji i konfiguracji zabezpieczeń spełniających nawet najsurowsze wymogi bezpieczeństwa. Z niniejszej książki dowiesz się, jak dz...
Modeluj, rozwiązuj problemy i wizualizuj wyniki z MATLAB-em i Simulinkiem! Wykonaj złożone obliczenia i wykresy bez programowania Poznaj składniki pakietu MATLAB, przygotuj niezawodne i łatwe w użytkowaniu programy Napisz przyjazne aplikacje App z interfejsem graficznym użytkownika Poznaj elegancję programowania obiektowo zorientowanego Wykorzystaj biblioteki Toolbox w praktyce Przeprowadź symulację procesów w Simulinku MATLAB to interaktywne środowisko przez...
Naucz się obsługiwać grafikę na wyświetlaczach kolorowych LCD! Poznaj działanie kontrolerów kolorowych LCD Odkryj sposoby wykorzystania wyświetlaczy w swoich projektach Naucz się tworzyć grafikę na kolorowe LCD Dowiedz się, jak skutecznie optymalizować swoje programy Mikrokontrolery zawojowały świat elektroniki użytkowej, dzięki czemu można je dziś znaleźć niemal w każdym zaawansowanym technicznie sprzęcie domowym czy rozrywkowym. Natomiast rosnąca dostępność i...
Aby stać się cenionym programistą, trzeba zacząć od bardzo solidnych podstaw. Python jest idealną propozycją dla osób, które chcą nauczyć się programowania. Składnia i podstawowe koncepcje programistyczne w Pythonie są dość proste do zrozumienia. Sam język ma duże możliwości zastosowania w różnych dziedzinach wiedzy. Umożliwia przy tym pisanie czytelnego i łatwego w konserwacji kodu, co jest ogromną zaletą. Trzymasz w ręku praktyczny przewodnik do nauki ...
Myśl w języku Java! Nauka programowania Zacznij myśleć jak programista! Naucz się łączyć umiejętności płynące z różnych dziedzin: matematyki, inżynierii i nauk przyrodniczych. Różnorodna wiedza ułatwi Ci pokonywanie przeszkód w pracy programisty — dzięki niej zdefiniujesz problem i sformułujesz jasne i precyzyjne rozwiązanie. Jak się okazuje, te wszystkie trudne umiejętności można sobie przyswoić, ucząc się programowania. Znajomość języka Java stan...
Go jest nowoczesnym językiem programowania rozwijanym przez firmę Google. Ostatnie zmiany sprawiły, że stał się on komfortowym narzędziem do tworzenia wydajnych aplikacji. Programiści Go mogą korzystać z wciąż rosnącego zbioru pakietów dostępnych jako open source, dzięki czemu tworzą i wdrażają oprogramowanie o znakomitej jakości. Taki kod od pierwszego dnia działa dobrze, a przy tym imponuje skalowalnością. Wbudowane mechanizmy Go, takie jak współbieżność, zape...
Zadania z programowania? Zbiór programów do napisania! Pascal, C++, JavaScript i Python — oto zbiór języków, które przećwiczysz dzięki zadaniom w tej książce. Każdy z nich ma nieco inne zastosowania, wszystkie zaś są lub będą w najbliższym czasie wykorzystywane na lekcjach informatyki i na egzaminach, a ich zastosowanie w obliczu realnych problemów może wydatnie uprościć Ci życie. Jak najłatwiej i najszybciej nauczyć się progra...
Nauka o danych jest nową, interdyscyplinarną dziedziną, funkcjonującą na pograniczu algebry liniowej, modelowania statystycznego, lingwistyki komputerowej, uczenia maszynowego oraz metod akumulacji danych. Jest przydatna między innymi dla analityków biznesowych, statystyków, architektów oprogramowania i osób zajmujących się sztuczną inteligencją. Szczególnie praktycznym narzędziem dla tych specjalistów jest język Python, który ...
Dobry interfejs użytkownika to podstawa sukcesu każdej aplikacji! Poznaj różne sposoby komunikowania się użytkownika z komputerem Dowiedz się, co w kwestii interfejsu użytkownika oferują współczesne urządzenia i programy Naucz się projektować efektowne i proste w obsłudze interfejsy użytkownika Interfejs użytkownika to wizytówka każdej aplikacji komputerowej i strony WWW, a także brama zapewniająca dostęp do ich funkcji. Nawet najlepsze, najbardzie...
Twój telefon i komputer wiedzą o Tobie prawie wszystko: gdzie i z kim jesteś, co myślisz, co mówisz i czego pragniesz. Posiadają informacje o tym, czy jesteś chory, bezrobotny i czy spodziewasz się dziecka. Historia wyszukiwań z Google’a, dane z lokalizacji i komunikatorów, aktywność w mediach społecznościowych — tam gromadzą się informacje, które często przekazujemy dobrowolnie, wierząc w zapewnienia o poufności i ochronie danych. Wier...
Odkryj możliwości programowania maszyn CNC z Edgecamem! Poznaj środowisko Edgecam i znajdujące się w nim narzędzia Naucz się przygotowywać modele do obróbki Dowiedz się, jak definiować i wybierać narzędzia oraz strategie Odkryj możliwości symulacji i wizualizacji obróbki Szybka i tania produkcja na szeroką skalę to dziś jedyna droga do zyskania przewagi konkurencyjnej na dynamicznie zmieniającym się rynku. Firmy próbują sprostać tym wymaganiom dzi...
Nauka programowania to świetny pomysł, ale musimy Cię ostrzec: programowanie wciąga! Jeśli nauczysz się porozumiewać z komputerem w jego języku, szybko zorientujesz się, że napisanie własnej gry, skryptu do złożonych obliczeń czy funkcjonalnej aplikacji do codziennego użytku daje wielką satysfakcję i sprawia mnóstwo radości. Co więcej, programowania można nauczyć się niemal w każdym wieku. Wystarczy odrobina cierpliwości i konsekwencji! Trzymasz w ręce chyba najlepszy...
Adobe Photoshop jest niemal wszechmocnym narzędziem pracy dla fotografów. Jest też wyjątkowo skomplikowany, a to z kolei jest przyczyną sporych problemów, które trudno rozwiązać nawet starym wyjadaczom. Starasz się sprawnie ukończyć ciekawy projekt, a tu nagle nie możesz znaleźć potrzebnej funkcji czy uzyskać dostępu do wybranego efektu. Przeszukujesz kolejne fragmenty rozbudowanego interfejsu, końca nie widać, a czas upływa... Brzmi znajomo? Jeśli tak, ...
Testowanie bezpieczeństwa aplikacji sieciowych wymaga staranności oraz aktualnej i praktycznej wiedzy. Bardzo dobrym narzędziem do tego celu jest Kali Linux - popularna dystrybucja BackTrack systemu Linux, służąca do wykonywania audytów bezpieczeństwa. Zawiera liczne narzędzia umożliwiające zaawansowane testowanie zabezpieczeń, w tym skuteczne testy penetracyjne i techniki inżynierii wstecznej. Pozwala na zdiagnozowanie i wykorzystanie słabych stron aplikacji, co z kol...