Scala jest językiem programowania ogólnego przeznaczenia, który łączy cechy języków funkcyjnych i obiektowych. Jego twórcy postawili sobie za cel skalowalność napisanych w nim aplikacji - stąd wzięła się nazwa Scala. Scala jest oparta na wirtualnej maszynie Javy, umożliwia programowanie funkcyjne i oferuje bogaty wybór typów. Dzięki tym cechom można tworzyć kod mniej podatny na występowanie błędów w trakcie działania programu. ...
Jeśli sądzisz, że elektronika to dziedzina nieprzyjazna i wyjątkowo trudna do zrozumienia - jesteś w błędzie! Pokonaj uprzedzenia i spróbuj zapoznać się z nią w praktyczny sposób, łącząc różne elementy, tworząc własne płytki i własnoręcznie je programując. Prędko się przekonasz, że trudno o bardziej interesujące i wciągające hobby. Pasja ta ma zresztą praktyczne odniesienie do rzeczywistości - za pomocą stosunkowo niedrogich elementów i narzędzi mo...
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...
I Ty możesz zostać architektem! Zasady projektowania architektonicznego Narzędzia pracy współczesnego architekta Współpraca z klientem i proces projektowy Architektura otacza nas zewsząd i w niemałym stopniu wpływa na nasze codzienne życie. I chociaż większość społeczeństwa czuje się w pełni uprawniona do wygłaszania na jej temat krytycznych sądów, mamy o tej dziedzinie dość mgliste pojęcie. Bo czy naprawdę znamy przebieg procesu projektowania arch...
Adobe After Effects CC służy do tworzenia kompozycji, animacji i efektów specjalnych. Umożliwia korzystanie z warstw na wiele rozmaitych sposobów, dołączanie wyrafinowanych efektów wizualnych oraz dźwiękowych, a także animowanie obiektów i efektów specjalnych. Jest ulubionym narzędziem wykorzystywanym przez montażystów, twórców filmów, projektantów stron internetowych i ekspertów od efektów specjalnych do cyfrowego udoskonalania filmów, jak również do cyfrowej postprodukcji f...
Ostatnia z dwunastu zasad Manifestu Agile mówi o retrospektywach. W myśl tej reguły zespół programistów odbywa regularne spotkania, na których analizuje efekty pracy nad projektem, myśli nad możliwymi zmianami i odpowiednio dopasowuje działania. Retrospektywa po każdej iteracji projektu pozwala na niezwykle skuteczne optymalizowanie pracy zespołu - przeprowadzona odpowiednio gwarantuje, że zebrane wnioski i opinie członków grupy przyczyniają...
Być może słowo „bitcoin” kojarzy Ci się z niezwykle skomplikowanym i niebezpiecznym półświatkiem cyberprzestępców. Możliwe, że widzisz w rozwoju tej kryptowaluty szansę ucieczki przed pazernością bankierów. A może po prostu chcesz dokładniej dowiedzieć się, czym jest ta technologia, jakie może mieć wkrótce znaczenie dla nowoczesnych firm i jak ją wykorzystać we własnych aplikacjach. Warto! Zdecentralizowana waluta bitcoin, choć wciąż je...
C# jest uważany za flagowy projekt firmy Microsoft. Język ten charakteryzuje się niezwykłą elastycznością i wszechstronnością. Udostępnia wysokopoziomowe abstrakcje, takie jak wyrażenia, zapytania i kontynuacje asynchroniczne, ale też pozwala na korzystanie z mechanizmów niskopoziomowych. W efekcie dzięki takim konstrukcjom, jak własne typy wartościowe programisty czy opcjonalne wskaźniki, można znacząco zwiększyć wydajność aplikacji. Wersja 7.0 jest kolejną poważną ak...
Automatyzacja zarządzania konfiguracją i proste instalowanie systemów Zarządzanie konfiguracją oprogramowania w systemach sieciowych jest niebanalnym zadaniem. Nawet zwykła aktualizacja czy wdrożenie nowego oprogramowania mogą się skończyć katastrofą, zwłaszcza w przypadku serwerów pracujących pod kontrolą systemów Linux czy Unix. Konieczność pilnowania ustawień w wielu różnych plikach konfiguracyjnych, z których każdy służy innemu elemento...
Przez długi czas uważano, że architektura oprogramowania powinna powstać przed rozpoczęciem pisania kodu i pozostać niezmieniona aż do zakończenia projektu. Pojawienie się zwinnych metod tworzenia oprogramowania spowodowało, że taką koncepcję zaczęto podawać w wątpliwość. Niektórzy nawet kwestionowali potrzebę tworzenia architektury, gdyż utrudniała reakcję na zmiany wymagań. Istnieje jednak inne podejście do architektury, zgodnie z którym jest ona ściśle powiąz...
Arduino jest bardzo prostym komputerem, który można wykorzystać w najróżniejszych gadżetach wykonywanych w zaciszu własnego domu. Potrafi komunikować się z komputerem, posiada także złącza służące do podłączania zewnętrznych elementów elektronicznych, takich jak silniki, przekaźniki, fotodiody, diody laserowe, głośniki, mikrofony itp. Oprogramowanie służące do programowania Arduino jest łatwe w użyciu i jest dostępne za darmo na platformy Windows, Mac i L...
Cała wiedza w jednym miejscu!_x005F_x000D_ _x005F_x000D_ Nie pamiętasz jakiegoś algorytmu? Nie wiesz, jaką strukturę danych należy zastosować? Nie masz pojęcia, jak wyznaczyć złożoność obliczeniową algorytmu? Nie martw się, Twoje problemy należą już do przeszłości!_x005F_x000D_ _x005F_x000D_ Tablice informatyczne. Algorytmy pozwolą Ci szybko odnaleźć i przypomnieć sobie podstawowe zagadnienia dotyczące algorytmów i ich zastosowania. Będą doskonałą ściągą na wykładach l...
Tablice języka C — zawsze przy komputerze!_x005F_x000D_ _x005F_x000D_ Tablice informatyczne języka C to ściąga, którą każdy programista powinien mieć zawsze w zasięgu ręki. W końcu trudno zapamiętać wszystkie komendy i metody przeprowadzania operacji, zwłaszcza jeśli nie używa się ich na co dzień. Tutaj znajdziesz informacje o instrukcjach, komentarzach, kompilowaniu programu, a także przechowywaniu i przetwarzaniu danych. Przypomnisz sobie, jak wprowadzać dane i...
Pojęcia, techniki i narzędzia służące do tworzenia systemów inteligentnych_x005F_x000D_ _x005F_x000D_ W ciągu ostatnich lat uczenie maszynowe stało się sercem wielu nowoczesnych produktów, takich jak zaawansowane techniki wyszukiwania w przeglądarkach, rozpoznawanie mowy w smartfonach czy proponowanie treści w zależności od indywidualnych preferencji użytkownika. Być może niedługo taki system inteligentny zastąpi Cię za kierownicą samochodu. Uczenie głębokie wpr...
Zdobądź pracę marzeń - zostań programistą Unity!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Poznaj środowisko pracy_x005F_x000D_ Naucz się tworzyć sceny_x005F_x000D_ Buduj ciekawe projekty_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Unity to zintegrowane środowisko umożliwiające tworzenie trójwymiarowych i dwuwymiarowych gier oraz różnego rodzaju interaktywnych treści, takich jak wizualizacje i animacje komputerowe. Wieloplatformowość rozwiązania, prostota używani...
Debugging Teams. Przez współpracę do lepszej produktywności Programiści i inżynierowie oprogramowania spędzają mnóstwo czasu na zgłębianiu tajników algorytmów, kodu czy technik budowy aplikacji. Bardzo mało uwagi poświęcają jednak takim zagadnieniom, jak komunikacja, skuteczna praca w zespole czy prowadzenie wspólnych projektów. Tymczasem programowanie jest jednym z zadań, które realizuje się w grupie. Oznacza to, że spos&oacu...
Docker to platforma oparta na otwartym kodzie źródłowym. Jest dziś uważany za najważniejsze narzędzie do rozwijania aplikacji rozproszonych. Umożliwia przyspieszenie prac nad oprogramowaniem, ale również jego konfiguracją, wdrożeniem i dostarczeniem do klienta. Docker pozwala na skalowanie infrastruktury aplikacji w czasie rzeczywistym i poprawę wykorzystania zasobów. Technologia Dockera ułatwia budowę aplikacji dobrze przemyślanych, przetwarzających dane...
Kali Linux jest dystrybucją BackTrack systemu Linux służącą do zaawansowanego badania zabezpieczeń systemów teleinformatycznych, również poprzez testy penetracyjne. Naturalnie, praca pentestera wiąże się również z przeprowadzaniem rozpoznania, skanowaniem w poszukiwaniu słabych stron zabezpieczeń, wykorzystywaniem exploitów, omijaniem zabezpieczeń i późniejszą eksploracją skompromitowanych systemów. W ten sposób diagnozuje się ...
Dobry programista powinien tworzyć udane aplikacje, pisać poprawny kod i znać kilka uznanych języków programowania. Jeśli spełnia te kryteria, na pewno zdobędzie pracę marzeń. Przynajmniej tak sądzi wiele osób, które postanowiły rozpocząć karierę w tym zawodzie. Prawda jest jednak taka, że udana kariera musi zostać przemyślana i zaplanowana, a poza wiedzą techniczną koniecznie trzeba rozwijać w sobie tak zwane kompetencje miękkie. W ten sposób możn...
Informatyczna rewolucja dosięgła również systemy bazodanowe. Przez długi czas administrator bazy danych interesował się głównie wewnętrznymi mechanizmami bazy, optymalizacją zapytań czy analizą podsystemów składowania danych. Z kolei oprogramowaniem stron, infrastrukturą czy usługami sieciowymi zajmowali się zupełnie inni ludzie, pracujący w odmienny sposób. Nowe technologie wymuszają jednak zmianę sposobu pracy i myślenia. Trzeba położyć nacisk na...
C# to nowoczesny język programowania, który został od podstaw zaprojektowany jako obiektowy. Ta dojrzała technologia jest często wybierana przez twórców oprogramowania, również tego służącego do pokonywania zabezpieczeń systemów. Dzięki temu, że platforma .NET jest oprogramowaniem open source, w C# można pisać kod, który bez problemu będzie działał w każdym systemie operacyjnym. Co prawda język ten jest prosty i łatwy do nauczenia się...
Twórz doskonałe GUI z wykorzystaniem JavaFX! Przykłady zgodne z Java 10! Naucz się wykorzystywać w praktyce platformę JavaFX Dowiedz się, jak osiągać konkretne efekty Poznaj rozwiązania najczęstszych problemów JavaFX to platforma umożliwiająca proste tworzenie atrakcyjnych interfejsów użytkownika dla aplikacji budowanych w języku Java. Wsparcie wzorca projektowego MVC, obsługa XML-a oraz formatowanie kontrolek za pomocą arkuszy stylów CSS -...
Nauka programowania? Ze Scratchem to nic trudnego! Nudzą Cię już gry komputerowe i zwykłe przeglądanie internetu? Uważasz, że stać Cię na więcej? Masz ochotę zaskoczyć kolegów z klasy? A może po prostu... chcesz nauczyć się programować? Jeśli tak, to dobrze trafiłeś! Scratch to doskonałe narzędzie, dzięki któremu młodzi pasjonaci na całym świecie bez trudu poznają tajniki programowania komputerów od podstaw. Scratch ułatwia rozpoczęcie nauki i umożliwia...
Testuj swój kod profesjonalnie — pisz testy jednostkowe!_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Poznaj niezbędne narzędzia_x005F_x000D_ Twórz testy jednostkowe_x005F_x000D_ Korzystaj z technik TDD i TAD_x005F_x000D_ _x005F_x000D_ _x005F_x000D_ Jednym z największych wyzwań współczesnej inżynierii oprogramowania jest zapewnienie właściwej jakości tworzonych produktów, którą można osiągnąć w dużej mierze dzięki odpowiedniej weryfikac...