Istnieją dwie strategie rozwiązywania problemów wydajnościowych aplikacji w Javie. Z jednej strony można wykorzystać potężne komputery i przydzielić JVM ogromne zasoby pamięci, z drugiej - w czasach ekspansji rozwiązań opartych na chmurach obliczeniowych nowe znaczenie zyskują małe, jednoprocesorowe komputery. Firmy takie jak Oracle czy Amazon udostępniają tanie serwery, na których można uruchamiać proste aplikacje. Łatwo się przekonać, jak ważne jest właściwe z...
Express i Node stały się kluczowymi narzędziami do tworzenia dynamicznych, wielostronicowych i hybrydowych aplikacji internetowych. Dzięki nim można dowolnie kształtować architekturę swojej aplikacji. Projektowanie za pomocą Node jest bardzo atrakcyjnym rozwiązaniem dla programistów, którzy doceniają dostępność i elastyczność języka JavaScript. W rzeczy samej, JavaScript ewoluował z techniki prostego ozdabiania stron internetowych, aby stać się dojrzałym, wszech...
Kariera Kotlina nabrała rozpędu, gdy w 2017 roku na konferencji Google ogłoszono go jednym z oficjalnie wspieranych języków programowania aplikacji dla Androida. Jest lubiany za zwartą składnię, elastyczność i ścisłą integrację z kodem Javy. Oczywiście odpowiada też kryteriom nowoczesnego i innowacyjnego języka programowania. Jest bardzo dobrym wyborem dla każdego, kto chce się stać profesjonalnym programistą, ale też osoby programujące hobbystycznie będą zadowolone z ...
Systemy informatyczne oparte na chmurze stały się atrakcyjną alternatywą dla standardowej infrastruktury. Wymusiły jednak radykalne zmiany w praktykach tworzenia, wdrażania i utrzymywania aplikacji. Dziś uwaga profesjonalistów skupiona jest na Kubernetes, który w ciągu zaledwie kilku lat stał się faktycznym standardem wdrażania natywnej chmury. Aby tworzone aplikacje funkcjonowały wydajnie, bezawaryjnie i niezawodnie, warto wdrożyć i stosować wzorce i najlepsze ...
Ostatnia dekada zmieniła oblicze IT. Kluczowego znaczenia nabrały big data, a chmura i automatyzacja rozpowszechniły się wszędzie tam, gdzie mowa o efektywności. Inżynierowie muszą wykorzystywać zalety systemów linuksowych w codziennej praktyce, aby zapewnić należyty poziom automatyzacji swoich zadań. Do tych celów świetnie nadaje się Python. Język ten zdobywa coraz większe uznanie z uwagi na jego wszechstronność, jak również wydajność, przenaszalność i b...
C++ - mierz wysoko! C++ to jeden z najpopularniejszych i najpotężniejszych języków programowania. Stanowi punkt wyjścia dla wielu innych języków, które odziedziczyły po nim składnię i liczne możliwości, dzięki czemu można śmiało stwierdzić, że znajomość C++ otwiera drzwi do świata nowoczesnego programowania i jest podstawą na wymagającym rynku pracy w branży informatycznej. Czasy się zmieniają, lecz to C++ jest wciąż wybierany wszędzie tam, gdzie liczą s...
C# to obiektowy język programowania ogólnego przeznaczenia z kontrolą typów. Jest dojrzały, wyjątkowo wszechstronny i prosty w stosowaniu, dzięki czemu stał się ulubionym językiem profesjonalistów. Jego twórcy chcieli przede wszystkim zapewnić programistom jak największą efektywność, co znalazło odzwierciedlenie w prostocie języka, ekspresywności kodu i wydajności działania. Wersja C# 8.0 została dostosowana do współpracy ze środowiskiem uru...
Uczenie głębokie (ang. deep learning) zyskuje ostatnio ogromną popularność. Jest to ściśle związane z coraz częstszym zastosowaniem sieci neuronowych w przeróżnych branżach i dziedzinach. W konsekwencji inżynierowie oprogramowania, specjaliści do spraw przetwarzania danych czy osoby w praktyce zajmujące się uczeniem maszynowym muszą zdobyć solidną wiedzę o tych zagadnieniach. Przede wszystkim trzeba dogłębnie zrozumieć podstawy uczenia głębokiego. Dopiero po uzyskaniu ...
JavaScript dojrzał i stał się pełnowartościowym językiem programowania. Jest wszechstronny, elastyczny i pozwala na tworzenie znakomitego kodu, jednak uzyskiwanie naprawdę dobrych efektów wymaga sporych umiejętności. Z tego powodu warto zainteresować się TypeScriptem, który w porównaniu z JavaScriptem o wiele lepiej spisuje się jako język programowania profesjonalnych aplikacji internetowych. Ich projektant, programujący w TypeScripcie, może przy tym łatw...
Poznaj Javę w praktyce Java to nowoczesny, współbieżny, obiektowy język programowania, który zdobył uznanie tysięcy programistów na całym świecie. Ogromne możliwości, niezależność od platformy, niezawodność i bezpieczeństwo, a także łatwość tworzenia i przejrzystość kodu powodują, że Java od lat cieszy się niesłabnącą popularnością, na programistów posługujących się tym językiem zaś czekają setki atrakcyjnych ofert pracy. Java znajduje zastosowani...
Burzliwy rozwój obiektowości nastąpił w połowie lat 90. wraz z upowszechnieniem się takich języków jak C++ czy Smalltalk. Obecnie programowanie zorientowane obiektowo wciąż jest jednym z najważniejszych paradygmatów projektowania. Łatwo zauważyć, że większość nowoczesnych języków programowania i technologii sieciowych opiera się na technikach obiektowych. Nieco trudniej jest dostrzec, że mimo szybkiego ewoluowania technik i języków programis...
Język R jest potężnym narzędziem używanym w statystyce, przetwarzaniu grafiki i programowaniu statystycznym; stanowi konkurencję dla komercyjnych systemów do obliczeń tego rodzaju. Zawiera wszystkie narzędzia, których potrzebują statystycy. Równocześnie jest to specyficzny język, przez co jego użytkowanie może sprawiać problemy. Zarówno proste, jak i złożone zadania są łatwe do wykonania, jeśli tylko wiadomo, w jaki sposób je zrobić. Jeżeli ...
Przybornik narzędziowy webmastera zmienia się bardzo szybko. Technologie, które parę lat temu były ciekawym eksperymentem, dziś są powszechnie stosowane. Responsywność stron internetowych stała się oczywistością. Modele Flexbox i Grid zrewolucjonizowały tworzenie układów stron internetowych. Zmieniły się używane formaty grafik, wzrosła też znacząco liczba narzędzi, które należałoby poznać. Naturalnie, wciąż można wskazać aspekty projektowania, któr...
W ostatnich latach JavaScript stał się pełnoprawnym i pełnowartościowym językiem programowania. Jest wszechstronny, elastyczny i pozwala na tworzenie znakomitego kodu. Uzyskanie dobrych efektów wymaga jednak od programisty sporych umiejętności. Wyjątkowo przydatnym rozwiązaniem okazują się frameworki, które ułatwiają pisanie nawet bardzo złożonych aplikacji. Na szczególną uwagę zasługuje React - popularny framework do tworzenia dynamicznych aplikacji w Ja...
Kubernetes jest standardową platformą rozproszonych aplikacji chmurowych. Pozwala na budowanie i wdrażanie niezawodnych, wydajnych i skalowalnych aplikacji. Jednak przebudowa klasycznej infrastruktury IT na rozwiązania chmurowe, aby mogła być przeprowadzona bez dużych utrudnień pracy firmy, wymaga przygotowania i odpowiedzi na kilka ważnych pytań. W tym wyczerpującym i praktycznym przewodniku opisano, jak działają kontenery Kubernetes, jak je budować i nimi zarządzać oraz ja...
Język Go, zwany także golangiem, został opracowany w firmie Google i zaprezentowany światu w 2009 roku. Zaprojektowano go pod kątem wydajności przetwarzania sieciowego i wieloprocesorowego. Autorzy chcieli, aby łączył łatwość pisania aplikacji z wydajnością języków kompilowanych. Podobnie jak JavaScript czy Python, Go jest językiem, który można szybko zrozumieć, a dzięki temu bezzwłocznie zacząć tworzyć funkcjonalny kod. Niemniej, aby zyskać uznanie potencjalneg...
Język C# wciąż cechuje prostota, przy czym jego możliwości rosną z każdą wersją. Od początku jest rozwijany z konsekwencją, a każda nowa funkcjonalność idealnie integruje się z resztą języka. W efekcie C# jest dojrzały, nowoczesny, wszechstronny i bezpieczny. Stanowi integralną część platformy Microsoft .NET Framework. Profesjonalni programiści, którzy dbają o wysoką jakość tworzonego kodu, uważają C# i .NET za swoje ulubione narzędzie pracy. Wersja 8.0 tego języka spr...
Angular jest znakomitym frameworkiem wybieranym przez programistów, którym zależy na szybkiej, wydajnej i satysfakcjonującej pracy. Umożliwia sprawne tworzenie zarówno lekkich klientów internetowych, jak i w pełni funkcjonalnych aplikacji. Angular pozwala na wykorzystywanie TypeScriptu, który w porównaniu z JavaScriptem o wiele lepiej spisuje się jako język programowania profesjonalnych aplikacji internetowych. Ten framework zapewnia ...
Data science jest interdyscyplinarną dziedziną naukową łączącą osiągnięcia uczenia maszynowego, statystyki i eksploracji danych. Umożliwia wydobywanie nowej wiedzy z istniejących danych poprzez stosowanie odpowiednich algorytmów i analizy statystycznej. Stworzono dotąd wiele algorytmów tej kategorii i wciąż powstają nowe. Stanowią one podstawę konstruowania modeli umożliwiających wyodrębnianie określonych informacji z danych odzwierciedlających zjawiska zachodzą...
Aby surowe dane przekuć w gotową do wykorzystania wiedzę, potrzebna jest umiejętność ich analizy, przekształcania i niekiedy również wizualizacji. Nagrodą za włożony w to wysiłek jest lepsze rozumienie różnych złożonych zagadnień z wielu dziedzin wiedzy. Co więcej, znajomość procesów programowego przetwarzania danych pozwala na szybkie wykrywanie i opisywanie wzorców danych, praktycznie niemożliwych do dostrzeżenia innymi technikami. Dla wielu bada...
Minikomputer Onion Omega 2 jest jedną z ciekawszych propozycji na rynku małych urządzeń jednopłytkowych (SBC). Został opracowany do zastosowań w internecie rzeczy. Działa pod kontrolą jednej z odmian Linuksa, systemu OpenWrt. Ma niewielkie rozmiary (43x26x10 mm), jego procesor MIPS pracuje z częstotliwością 580 MHz, może obsłużyć pamięć RAM do 256 MB i czytnik kart SD. Radzi sobie z kilkoma różnymi protokołami łączności, dzięki czemu bez trudu można go podłączyć do zwy...
CSS służy do opisywania sposobu prezentowania treści internetowych wyświetlanych na ekranach, na potrzeby druku czy syntezatorów mowy. Jest obsługiwany przez wszystkie przeglądarki i urządzenia takie jak smartfony, komputery, gry wideo, telewizory, zegarki, kioski multimedialne czy konsole samochodowe. CSS pozwala zwiększyć wygodę użytkownika, przyspieszyć proces projektowania, uniknąć potencjalnych błędów, a także urozmaicić i ożywić aplikacje. Język ten wciąż ...
C++ powstał w 1979 roku. Od tej pory cały czas się rozwija. Mimo że wymaga od programisty pewnej dyscypliny i staranności w pracy, jest chętnie wykorzystywany, daje bowiem ogromne możliwości i cechuje się elastycznością. W języku tym zaimplementowano mechanizmy programowania obiektowego. Opanowanie C++ nie tylko pozwala programistom tworzyć aplikacje dla praktycznie wszystkich platform, komputerów, serwerów i urządzeń mobilnych, ale również ułatwia naukę ...
Język C jest szybki, potężny i... zupełnie niepociągający. Zmusza do programowania na niskim poziomie, za to daje bezpośredni dostęp do sprzętu, między innymi do stosów i rejestrów procesora. Jest językiem wieloplatformowym, jednak przenoszenie kodu wykonywalnego między różnymi maszynami stanowi wyzwanie. C nie pozwala chodzić na skróty i zmusza do dogłębnego zrozumienia zagadnienia, nad którym się pracuje. To wszystko sprawia, że uzyskanie ...
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.