Angular jest ulubionym narzędziem programistów, którzy cenią wydajność pracy i chcą z niej czerpać pełną satysfakcję. Umożliwia tworzenie aplikacji działających na wielu platformach, w sieci WWW, na komputerach i urządzeniach mobilnych. Co więcej, pozwala na użycie języka TypeScript, który lepiej niż JavaScript nadaje się do programowania profesjonalnych aplikacji internetowych. Angular zapewnia również możliwość korzystania z wielu nowoczesnych bi...
Biznesowa analiza danych jest ważną umiejętnością, jednak większość służących do tego narzędzi informatycznych nie zapewnia wglądu w mechanizmy swojej pracy. Utrudnia to zrozumienie, na czym polega eksploracja danych. W wypadku niezbyt dużych zbiorów danych znakomitym rozwiązaniem jest program MS Excel. Udostępnia on wyspecjalizowane funkcje, dzięki którym analizę i wizualizację danych można wykonywać krok po kroku, zapoznając się z każdym etapem tego procesu. ...
Java jest dojrzałym, rozbudowanym, wszechstronnym, a przy tym starannie zaprojektowanym i bezpiecznym językiem programowania. W jego nowej, 17. wersji wprowadzono sporo usprawnień podstawowych elementów języka i interfejsów API. Wiele starych idiomów języka straciło przydatność, a nowe mechanizmy i paradygmaty pozwalają zwiększyć efektywność tworzenia kodu. Zawodowy programista musi dobrze poznać te nowości i nauczyć się z nich korzystać. Oto zaktualizow...
Amazon Web Services (AWS) zdobywa coraz większe uznanie. Platforma AWS udostępnia znakomite rozwiązania, w tym usługi obliczeniowe, magazyn danych, obsługę sieci i usług zarządzanych. Aplikacje korporacyjne wdrożone w chmurze AWS mogą być wyjątkowo odporne, skalowalne i niezawodne. Aby takie były, administrator systemu musi jednak zrozumieć koncepcje zaawansowanego zarządzania chmurą i nauczyć się wykorzystywać je w praktyce zarówno podczas wdrażania systemu, jak i zar...
PHP jest uważany za łatwy język programowania. Początkujący programiści dość szybko uruchamiają swoje pierwsze aplikacje w PHP. Nie sprzyja to jednak wyrabianiu nawyków przestrzegania dobrych praktyk. Najczęściej adepci PHP tworzą niechlujny kod, który jest trudny w utrzymaniu, a ewentualne modyfikacje czy rozbudowa aplikacji sprawiają ogromne problemy. Kolejną kwestią jest brak czytelności kodu, co praktycznie uniemożliwia pracę zespołową nad projektem. To ksi...
C to najczęściej wybierany język do programowania systemów wbudowanych. Pozwala precyzyjnie sterować kontrolerami zawierającymi system w chipie (ang. system on a chip, SOC), które wydają się być wszędzie: od telefonów przez samochody do "inteligentnych" żarówek. Poznanie języka to jednak dopiero połowa sukcesu. Musisz też wiedzieć, jakie operacje w systemie wykonuje ten język. Do zbadania, jak działa kompilator i co dzieje się za kulisam...
Rzemieślnik to osoba, która jest starannie wyszkolona, doskonale zna się na swoim fachu i czuje dumę z własnej pracy. Zawsze zachowuje właściwą dla zawodu godność i profesjonalizm. Społeczeństwo okazuje zaufanie rzemieślnikom, wierząc, że należycie dbają o wysoką jakość i postępują etycznie. Pisanie oprogramowania to też rzemiosło. I programiści, podobnie jak inni rzemieślnicy, również chcą czuć dumę i satysfakcję ze swojej pracy. Problem w tym, że świat zdaje s...
C++ należy do najpopularniejszych i najbardziej cenionych za uniwersalność języków oprogramowania - umożliwia projektowanie rozbudowanych, a zarazem intuicyjnych w obsłudze aplikacji wysokiego poziomu. Pozwala tworzyć wydajną i czytelną architekturę oprogramowania również w wypadku znacznie zaawansowanych systemów i programów. Dzięki tej książce poznasz narzędzia i rozwiązania, które ułatwiają projektowanie w języku C++ nawet najbardziej sk...
C++ wyjątkowo dobrze nadaje się do nauki jako "pierwszy poważny język programowania", a równocześnie jest znakomitym, wszechstronnym narzędziem do tworzenia nowoczesnych aplikacji. Programowanie w nim wymaga nieco wysiłku, ale pozwala zarówno szybko przyswoić najważniejsze paradygmaty informatyki, jak i wdrożyć się w pisanie kodu zgodne z dobrymi praktykami. Przy tym C++ ma cechy nowoczesnego języka programowania, a jego możliwości są poszerzane dzięki...
Wzorce projektowe powinny się znaleźć w przyborniku każdego profesjonalnego programisty. Ich zaletą jest nie tylko łatwość tworzenia kodu wielokrotnego użytku, ale także możliwość szybkiego rozwiązywania złożonych zagadnień. Osoby, które chcą rozwijać swoje umiejętności programistyczne, mogą również wykorzystać wzorce projektowe do inspirującego dochodzenia, jak można rozwiązać konkretny problem na wiele sposobów - o zróżnicowanym stopniu zaawansow...
Media bezustannie donoszą o spektakularnych wpadkach w zakresie bezpieczeństwa aplikacji. Konsekwencją udanego ataku bywają straty finansowe, kompromitacja, niekiedy zagrożenie bezpieczeństwa narodowego. Aby tego uniknąć, wszyscy zainteresowani - od architekta po użytkownika - powinni stale uaktualniać i stosować w praktyce zasady bezpieczeństwa systemów informatycznych. Jednak szczególna odpowiedzialność spoczywa na projektantach i programistach aplikacji, gdyż...
Projektant frameworka tworzy dla innych programistów. To odpowiedzialne zadanie: celem jest zapewnienie większości potrzebnych elementów, które po dostosowaniu i połączeniu mają stać się aplikacją. Dobrze zaprojektowany framework pozwala na wygodną i efektywną pracę. Jest prosty, łatwy do rozwijania i dobrze integruje się z innymi narzędziami programistycznymi, językami czy modelami aplikacji. Projektant musi więc dobrze się orientować w zasadach tworzeni...
Platforma Amazon Web Services jest uważana za największą i najdojrzalszą chmurę obliczeniową. Oferuje ponad setkę gotowych usług, praktycznie niewyczerpywalne zasoby mocy obliczeniowej, nieograniczone bezpieczne magazynowanie oraz pierwszorzędne możliwości automatyzacji. Jest przy tym nieustannie unowocześniana i udostępnia coraz to nowsze możliwości. Pozwala na tworzenie i utrzymanie aplikacji w elastyczny i niezawodny sposób. Dla wielu organizacji decyzja o migracji ...
Termin Szybsza Sieć (ang. Faster Web) powstał stosunkowo niedawno. Koncepcja ta skupia się na rozwijaniu wszystkich elementów technologii internetowych oraz interfejsu użytkownika, tak aby przyśpieszyć interakcję między klientem a serwerem oraz działanie samej aplikacji. Efektem tych optymalizacji powinna być poprawa jakości pracy systemu. Aby w pełni przyswoić ideę Szybszej Sieci, trzeba dobrze zrozumieć takie pojęcia jak wydajność, efektywność i postrzegana wydajność...
C# jest nowoczesnym i elastycznym językiem programowania. Aby w pełni skorzystać z jego zalet, trzeba płynnie posługiwać się dostępnymi w nim strukturami danych i algorytmami, pozwalają one bowiem na efektywnie organizowanie danych i mają znaczący wpływ na wydajność aplikacji. Z punktu widzenia programisty kluczowe jest ich właściwe zaimplementowanie: wybór właściwej struktury danych i związanego z nią algorytmu stanowi o jakości tworzonego kodu. Na przykład w celu wyk...
Aby aplikacje mogły spełniać oczekiwania dotyczące wydajności i szybkości działania, programista musi orientować się w typowych problemach z wykonywaniem kodu i wiedzieć, które techniki sprawdzą się w danej sytuacji. W tym celu powinien biegle posługiwać się algorytmami i strukturami danych. Wiedza ta umożliwia rozpoznawanie typowych zagrożeń i wybór najlepszych rozwiązań. Warto pamiętać, że w przypadku większości codziennych problemów z kodem istnieją ju...
W ciągu ostatnich lat radykalnie zmieniły się wymagania i oczekiwania biznesowe wobec oprogramowania. Kluczowymi wartościami są innowacyjność, szybkość i czas wejścia na rynek. Do spełnienia tych wymagań konieczne okazały się nowe architektury i modele tworzenia kodu. Metodyka ciągłego dostarczania, zwanego też CD, polega na tworzeniu w krótkich cyklach wartościowych i solidnych produktów. Funkcjonalności są dodawane w małych krokach, a oprogramowanie można wyda...
Zaprojektowanie doświadczeń użytkownika (UX) jest najłatwiejsze, jeśli do pracy i testów angażuje się... rzeczywistych userów i pozyskuje od nich informację zwrotną. Podejście lean UX łączy podstawy myślenia projektowego i programowania zwinnego. Myślenie projektowe rozszerza zakres pracy poza interfejsy i artefakty, opierając się na współpracy, iteracjach, budowaniu i empatii. Metodologie zwinne polegają na przeorientowaniu wytwarzania oprogramowania na ...
Framework ASP.NET Core 2.0 stanowi odpowiedź Microsoftu na potrzeby programistów, które z kolei zmieniają się wraz z rynkiem IT. Klienci wymagają od aplikacji zgodności z różnymi standardami, wysokiej efektywności i skalowalności, a czas wyprodukowania i wdrożenia nowego rozwiązania ma być jak najkrótszy. Do takiej pracy potrzeba narzędzi o odpowiedniej produktywności, rozszerzalności i elastyczności. Dzięki uwzględnieniu tych wyśrubowanych kryteri...
Śmiało wkraczaj w nowoczesne technologie, aby tworzyć interaktywne aplikacje internetowe! Jak zarządzać odwołaniami do strony? Jak osadzać skrypty w kontrolkach serwerowych? Jak używać narzędzia Fiddler do kontroli komunikatów? ASP.NET AJAX to nazwa stworzonego przez Microsoft rozwiązania AJAX. Odnosi się do zestawu technologii klienckich i serwerowych, które koncentrują się na ulepszaniu programowania WWW pod Visual Studio. Jest to jedna z najpopularniejszych, a równocze...