Programowanie systemowe zwykle nie interesuje twórców aplikacji. Niemniej warunkiem jej poprawnego działania jest właśnie kod systemowy. Programowanie systemowe zapewnia między innymi działanie systemu operacyjnego, sterowników, systemu plików, kodeków, a także zarządzanie pamięcią czy obsługę sieci. Jako że dotyczy wykorzystania zasobów, każdy szczegół, każdy bajt pamięci operacyjnej i każdy cykl procesora ma znaczenie. Rust -...
Refaktoryzacja ma na celu ulepszanie istniejącego kodu. Poprawia jego strukturę, czytelność i wydajność. Prowadzona poprawnie, cechuje się zdyscyplinowaniem metody, systematycznością i konsekwencją w działaniu, a także ciągłym minimalizowaniem ryzyka wprowadzenia błędów. Niemniej refaktoryzacja jest ryzykowna. Polega na wprowadzaniu zmian do działającego kodu, co może doprowadzić do powstania trudno wykrywalnych błędów. Ryzyko wzrasta, jeśli refaktoryzacja jest ...
Python to potężny, wszechstronny, a do tego cechujący się prostotą i elastycznością język ułatwiający wydajne tworzenie czytelnego kodu. Nadaje się do bardzo różnych zastosowań, włączając w to wysoce specjalistyczne zadania, takie jak analiza danych. Python cieszy się niezwykłym wsparciem społeczności, dzięki czemu powstają nowe ciekawe narzędzia dla programistów. To wszystko sprawia, że dla twórców oprogramowania biegłe posługiwanie się Pythonem s...
React Native to framework JavaScript służący do budowania interfejsów użytkownika. Został utworzony i jest udostępniany przez Facebooka na licencji open source i od samego początku zyskał uznanie programistów. React Native pozwala bowiem na proste tworzenie w pełni funkcjonalnych aplikacji mobilnych natywnie renderowanych na iOS i Androida. Umożliwia też bezproblemowe korzystanie z zasobów platform mobilnych, takich jak kamera, lokalizacja czy pamięć loka...
Każdy, kto chce pisać gry, poza odpowiednią wiedzą teoretyczną i znakomitymi pomysłami, powinien posiadać praktyczne umiejętności korzystania z nowoczesnych narzędzi służących do tego celu. W czasach, gdy napisanie i pokazanie światu nowej gry jest poważnym projektem angażującym wielu profesjonalistów z różnych branż, projektant doświadczeń interaktywnych musi podejmować wiele istotnych decyzji na dość wczesnych etapach rozwoju gry. Ważna jest również umi...
Python jest dojrzałym, elastycznym i bardzo wszechstronnym językiem programowania. Nadaje się do budowy przeróżnych aplikacji, a także do tworzenia programów służących do bardzo specyficznych zastosowań, takich jak badania naukowe. Aby jednak w pełni wykorzystać te imponujące możliwości, musisz pisać dobry kod: przejrzysty, zwięzły, działający poprawnie. Niestety, nie jest łatwo nauczyć się dobrego programowania. To coś więcej niż przyswojenie zestawu poleceń i ...
Nie wystarczy znajomość jednego języka programowania, aby zostać programistą. W rzeczywistości trzeba opanować dość szeroki zakres pojęć i paradygmatów, a także zrozumieć zagadnienia związane z algorytmami. Trzeba być na bieżąco z nowymi technologiami i narzędziami. Należy również poznać i zacząć stosować dobre praktyki programistyczne i przyswoić sobie zasady pracy w zespole. Przede wszystkim jednak priorytetem jest sama praktyka, ponieważ wielu programist&oacu...
Tworzenie oprogramowania to wspaniała umiejętność. Zdolny programista może w zasadzie pracować w dowolnej dziedzinie. Co więcej, szalony rozwój technologii informatycznych właściwie codziennie otwiera nowe rynki i nowe nisze. Niemal wszędzie jest potrzebny procesor i oprogramowanie. I spora część tego cyfrowego torciku przypada programistom Javy. Najlepsze kąski dostają się jednak tym najlepszym, najzdolniejszym i najbardziej profesjonalnym._x005F_x000D_ _x005F_x000D_ ...
Jeśli masz już za sobą napisanie pierwszych programów w Pythonie, to już wiesz, jak bardzo wszechstronny jest ten język i że jego możliwości są imponujące. Python nadaje się do bardzo wielu zastosowań, jednak jeśli chcesz go wykorzystać w pełni, musisz wyjść poza podstawy. Efektywny programista korzysta z wiedzy wykraczającej poza znajomość struktur języka, poza tym jest zdolny do obiektywnej refleksji nad własnymi możliwościami i stara się cały czas doskonalić sw&oacu...
Analiza danych stała się samodzielną dyscypliną wiedzy interesującą specjalistów z wielu branż: analityków biznesowych, statystyków, architektów oprogramowania czy też osoby zajmujące się sztuczną inteligencją. Wydobywanie informacji ze zbiorów danych pozwala na uzyskanie wiedzy niedostępnej w inny sposób. W tym celu dane trzeba odpowiednio przygotować, oczyścić, przetworzyć i oczywiście poddać analizie. Warto również zadbać o ...
Nowoczesne oprogramowanie musi sprostać wyśrubowanym kryteriom: ma cechować się określoną niezawodnością i skalowalnością, a przy tym powinno korzystać z technologii chmury. Naturalnie powinien to być dobrze zaprojektowany system rozproszony. Dziś standardem jest korzystanie z aplikacji na wielu urządzeniach w różnych lokalizacjach. Niestety, mimo powszechności systemów rozproszonych ich projektowanie nader często przypomina coś w rodzaju czarnej magii, dostępne...
Programowania uczą się już najmłodsi w szkole podstawowej. Umiejętność kodowania będzie wkrótce jednym z wyznaczników dobrego wykształcenia. Rozwiązywanie złożonych problemów za pomocą specjalnie napisanego kodu jest dogodnym sposobem pracy nie tylko inżyniera czy informatyka, ale również biologa, fizyka czy nawet socjologa. Oznacza to, że znajomość języka programowania i choćby podstawowych zagadnień algorytmiki jest cennym uzupełnieniem warsztatu...
Algorytmy i struktury danych leżą u podstaw programowania. Zrozumienie zasad rządzących tymi zagadnieniami jest koniecznym warunkiem opracowania prawidłowej i efektywnej aplikacji. Niestety, wielu programistów uznaje tę tematykę za zbyt złożoną czy zbyt banalną i nie poświęca jej wystarczającej uwagi. Takie podejście często się mści: modne narzędzia, frameworki czy technologie deweloperskie nie zapewnią sukcesu, jeśli projektant nie przemyśli zastosowanych algorytm&oac...
Python, prosty, wszechstronny i elastyczny język programowania, nadaje się zarówno do pisania niedużych skryptów, wielkich systemów, jak i do wysoce specjalistycznych zadań, jak choćby analiza danych do celów naukowych. To ulubione narzędzie coraz liczniejszej rzeszy znakomitych programistów. Wiele osób próbuje się uczyć Pythona, jednak mimo różnorodnych podręczników i kursów nauka pisania poprawnego, wydaj...
Android jest systemem stworzonym dla urządzeń mobilnych. Pod jego kontrolą pracują smartfony, tablety, lodówki, telewizory i wszystko wskazuje na to, że internet rzeczy będzie również w dużej części androidowy. Wielu programistów widzi w tym niespotykane dotąd możliwości, jednak pisanie aplikacji dla Androida wcale nie jest łatwym zadaniem. Wielu programistów przekonało się, że sama umiejętność kodowania nie jest wystarczająca. Biegłe poruszanie si...
Jeszcze kilka lat temu programowanie zorientowane obiektowo w PHP wydawało się dość karkołomnym zagadnieniem. Upowszechnienie licznych frameworków sprawiło jednak, że coraz większa liczba programistów tworzy aplikacje WWW, pisząc kod obiektowy w PHP. Frameworki są chętnie stosowane, gdyż wydaje się, że dzięki nim nie trzeba już poświęcać czasu na rozgryzanie szczegółów działania kodu. Niestety, bardzo często okazuje się, że bez zrozumienia zasad dz...
Platforma Node.js służy do tworzenia aplikacji ogólnego przeznaczenia w języku JavaScript, które nie wymagają przeglądarki internetowej, a sam kod może działać zarówno po stronie klienta, jak i serwera. W Node.js wykorzystano szybki silnik JavaScriptu, V8. Platforma ta udostępnia stabilną bibliotekę do obsługi asynchronicznych sieciowych operacji wejścia-wyjścia. Dodatkowo programista ma do dyspozycji bogaty zestaw niezależnych modułów. Szczeg&oacu...
Do niedawna utworzenie interfejsu użytkownika było prawdziwym wyzwaniem. Interfejs musi przecież działać w przewidywalny sposób na różnych przeglądarkach i urządzeniach, musi zapewniać adekwatną obsługę wprowadzanych danych oraz umożliwiać płynne i niezawodne komunikowanie się aplikacji z użytkownikiem. Na szczęście dziś programiści mogą skupić się na działaniu aplikacji jako takiej — interfejs użytkownika można szybko, łatwo i przyjemnie zbudować za pomoc...
Sprawdź drugie wydanie tej książki >>_x005F_x000D_ _x005F_x000D_ ---_x005F_x000D_ _x005F_x000D_ Uczenie maszynowe, zajmujące się algorytmami analizującymi dane, stanowi chyba najciekawszą dziedzinę informatyki. W czasach, w których generuje się olbrzymie ilości danych, samouczące się algorytmy maszynowe stanowią wyjątkową metodę przekształcania tych danych w wiedzę. W ten sposób powstało wiele innowacyjnych technologii, a możliwości uczenia maszynowego są ...
Prawie wszystkie interfejsy cyfrowej wieży Babel!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Status quo, czyli dlaczego warto tłumaczyć oprogramowanie_x005F_x000D_ Procesy tłumaczeniowe i inne koła zębate_x005F_x000D_ Skomplikowane związki, czyli tester i programista_x005F_x000D_ O graniu i naprawianiu, czyli kilka problemów i ich proponowane rozwiązania_x005F_x000D_ _x005F_x000D_ Dawno, dawno temu, w czasach, gdy na świecie pojawiały się nieśmiało pierwsze komputery...
Twórcy Pythona niemal od początku starali się opracować wieloparadygmatowy język zorientowany na czytelność kodu i produktywność programisty. Dziś język ten jest uważany za wszechstronny i potężny, a do tego cechuje się prostotą i elastycznością. Nadaje się zarówno do pisania niedużych skryptów, jak i wielkich systemów, a także do wysoce specjalistycznych zadań, jak choćby analiza danych w celach naukowych. Mimo to pisanie kodu, który jest w...
Dziś JavaScript jest dojrzałym, wszechstronnym i potężnym językiem programowania, który świetnie się nadaje do programowania zorientowanego obiektowo. Pozwala przy tym na pisanie solidnego i efektywnego kodu. Stał się świetnym narzędziem do tworzenia bardzo złożonych, skalowalnych i łatwych w utrzymaniu aplikacji. Można zaobserwować, że JavaScript powoli nadaje kształt następnej generacji platform internetowych i serwerowych. Najnowsza specyfikacja tego języka, ES6, wp...
Swift, następca języka Objective-C, pojawił się na rynku w 2014 roku i bardzo szybko zyskuje popularność wśród programistów tworzących aplikacje dla iOS oraz macOS. Charakteryzuje się zwięzłą i przejrzystą składnią, a co więcej, pozwala na korzystanie z nowoczesnych, wysokopoziomowych struktur i cech języka, takich jak typy generyczne czy domknięcia. Jest przy tym wygodny i elastyczny, a jego nauka nie powinna sprawiać problemów nawet tym, którzy d...
Python istnieje już ponad 25 lat. Nie jest trudnym językiem i oferuje ogromne możliwości. Tworzenie dobrych programów w Pythonie wymaga jednak od programistów dużych umiejętności. Cykl rozwoju oprogramowania jest pełen pułapek nieznanych początkującym koderom. Mimo to w podręcznikach Pythona niewiele uwagi poświęca się debugowaniu i testowaniu, a przecież etapy te mają kluczowe znaczenie dla jakości kodu i funkcjonalności tworzonego oprogramowania._x005F_x000D_ ...
Ebooki to książki, których treść została zapisana w formie elektronicznej. Są nazywane również e-książkami, publikacjami elektronicznymi czy książkami elektronicznymi. Ebooki można odczytywać na komputerach i laptopach, ale są one przeznaczone głównie do czytania na urządzeniach przenośnych takich jak smartfony, tablety i przede wszystkim czytniki książek elektronicznych. Ebooki posiadające swoje pierwowzory w formie papierowej są jej odwzorowaniem. Posiadają wszystkie elementy obecne w „tradycyjnej” wersji, takie jak okładkę, ilustracje, spis treści, przypisy itp.
Niepodważalną zaletą ebooków jest to, że w odróżnieniu od drukowanej książki można w nich zmieniać rodzaj oraz wielkość czcionki, formatować tekst, a w zależności od posiadanego czytnika istnieje też możliwość wyszukiwania pojedynczych słów w tekście, dodawania zakładek i robienia notatek.
Ebooki są dostępne w wielu formatach. Najpopularniejsze z nich, będące standardem dla publikacji elektronicznych, to EPUB, MOBI i PDF.
To nowoczesny format będący standardem publikacji ebooków. Format EPUB umożliwia zmienianie wielkości fontu, co pomaga dopasować jego rozmiar do ekranu. Ebooki w tym formacie najlepiej odczytywać na urządzeniach posiadających ekran eINK (elektroniczny papier), chociaż można je odczytać także na smartfonie czy tablecie. Format EPUB jest możliwy do odczytania na komputerze, jednak do tego celu konieczne jest zainstalowanie właściwego oprogramowania.
Jest formatem ebooków wykorzystywanym przez czytniki firmy Amazon – Kindle (oraz na innych urządzeniach i programach dostępnych na rynku). Publikacje MOBI są zapisane w formacie Mobipocket, można więc pobrać je na dowolny sprzęt elektroniczny posiadający oprogramowanie umożliwiające odczytanie plików MOBI. Format ten jest oparty na języku HTML, dlatego jego wyświetlanie jest możliwe na urządzeniach mobilnych.
To format zapewniający taki sam wygląd strony jak w wersji papierowej – w tym formacie podział na strony jest sztywny. PDF służy do długoterminowego archiwizowania elektronicznych danych i może być odczytywany na większości komputerów, laptopów, smartfonów, czytników czy tabletów.