REKLAMA

Programista 9/2015 (40) – C++17 – nadchodzi rewolucja – spis treści

Zapraszamy do zamówienia magazynu w prenumeracie. Miesięcznik jest dostępny w formie papierowej, PDF, EPUB i MOBI.

   21553b1463fe06a0335a17beec2dbc53

Wraz z prenumeratą możesz też otrzymać w prezencie trzy dowolne wydania archiwalne. Wybierz swoje wydania archiwalne "Programisty": http://programistamag.pl/magazyny/

Numer ten będzie dostępny w Empikach od 22 października.

BIBLIOTEKI I NARZĘDZIA

C++ Core Guidelines: nowy rozdział w historii języka C++? (więcej o tym artykule >>tutaj<<)

W historii większości mainstreamowych języków programowania zdarzają się punkty zwrotne. Są one najczęściej związane z udostępnieniem kolejnych wersji języka, czasem z odkryciem jakichś nowych technik jego używania. Niniejszy tekst opisuje zdarzenie w najnowszej historii języka C++, które – być może – jest właśnie takim punktem zwrotnym. A najciekawsze jest to, że na to, czy tak się stanie, możesz wpłynąć właśnie Ty – osobiście! Zaintrygowany? Jeśli tak, to zapraszam do lektury.

Rafał Kocisz

SpecBDD z wykorzystaniem narzędzia PHPSpec

BDD jest techniką tworzenia oprogramowania polegającą na pisaniu funkcjonalności w sposób ciągłego powtarzania kroków – pisania testu, kodu oraz jego refaktoryzacji. W przeciwieństwie do TDD posługujemy się zupełnie innym językiem opisującym zachowania. BDD może być użyte na poziomie StoryBDD i SpecBDD. Historie opisują domenę, zaś specyfikacja skupia się na tym, jak napisać kod, aby działał zgodnie z oczekiwaniami. Ten drugi poziom przybliży niniejszy artykuł.

Andrzej Lewandowski

JĘZYKI PROGRAMOWANIA

C++17. Nadchodzi rewolucja (więcej o tym artykule >>tutaj<<)

Czy język C++ wymiera? Nic bardziej mylnego! Po rewolucyjnych zmianach, które wprowadziła wersja C++11, oraz ulepszeniach z C++14 nadszedł czas na C++17 – nadchodzący standard, który w dużym stopniu odmieni język i spowoduje, że stanie się jeszcze bardziej atrakcyjny.

Sławomir Zborowski

PROGRAMOWANIE SYSTEMÓW OSADZONYCH

IPCore – koncepcja mikrokontrolera ubrana w słowa

Czy projektowanie i fizyczne wykonanie własnego układu elektronicznego w krzemie brzmi jak magia? Istnieje rozwiązanie, które omija fizyczne wykonanie sprzętu, a równocześnie pozwala uzyskać dokładnie tę samą funkcjonalność – taki układ można stworzyć „słowem”. Z pomocą przychodzą języki HDL oraz technika FPGA.

Zyta Racia

PROGRAMOWANIE APLIKACJI WEBOWYCH

ECMAScript 6 – standard przyszłości (więcej o tym artykule >>tutaj<<)

Programiści długo musieli czekać na kolejny krok rozwojowy języka JavaScript. Po kolejnych próbach stworzenia nowego, lepszego standardu członkowie ECMA International doszli do porozumienia i w połowie 2015 roku oficjalnie zamknęli standard nowej wersji języka ECMAScript. Tym samym developerzy otrzymali narzędzie, które będzie w przyszłości podstawą każdej aplikacji webowej, a biorąc pod uwagę nadchodzący Internet Rzeczy, ECMAScript 6 i jego następne wersje będą dosłownie otaczać każdego z nas. Z tego powodu warto już teraz poznać nowe funkcjonalności standardu przyszłości.

Grzegorz Dąbrowski

PROGRAMOWANIE RÓWNOLEGŁE I ROZPROSZONE

Cilk – trzy słowa kluczowe dla programowania równoległego

Gdy powiemy, że Cilk to kolejne rozszerzenie językowe, które pozwala na programowanie równoległe, łatwo będzie przejść nad tym do porządku dziennego, gdyż ilość różnych pakietów, bibliotek wspomagających programowanie równoległe jest tak duża, iż można by pominąć to kolejne rozwiązanie. Jednak Cilk jest dość interesujący ze względu na fakt, że jest to rozszerzenie języka C/C++. A najnowsze wydania GCC w wersji 5.x wspierają już pełną wersję Cilk Plus. Co najważniejsze, sam Cilk to tylko kilka nowych elementów językowych, które bardzo dobrze komponują się z programami pisanymi w C oraz C++. Choćby z tego powodu warto spojrzeć, co oferuje Cilk, i sprawdzić, czy przyda się nam w codziennej pracy. Mała liczba podstawowych pojęć pozwala na dość pełną prezentację technologii Cilk, nawet w tym krótkim artykule.

Marek Sawerwain

INŻYNIERIA OPROGRAMOWANIA

C++: zagmatwane wyjątki

W niniejszym artykule nie będziemy próbować odpowiedzieć na pytanie, czy używać wyjątków i w jaki sposób. Spróbujemy natomiast pokazać, dlaczego odpowiedź na to pytanie nie jest jednoznaczna.

Grzegorz Kokot

PYTHON HAS POWER

Proces grupowy w Zespole Developerskim z perspektywy Scrum Mastera i Product Ownera

Jeżeli chcesz współpracować w dobrze zorganizowanym i efektywnym zespole, musi on najpierw przejść przez tzw. proces grupowy, dzięki czemu stanie się czymś więcej niż tylko zbiorem jednostek. W niniejszym artykule opowiemy historię pewnego zespołu scrumowego, zaznaczając, czego spodziewać się w każdej z faz procesu oraz jak przyspieszać przejście do kolejnych etapów.

Marta Kossowska, Łukasz Aziukiewicz

BEZPIECZEŃSTWO

Czym jest audyt bezpieczeństwa aplikacji webowych?

Co roku słyszymy o spektakularnych atakach na systemy IT– niedawno, we wrześniu 2015 roku, ujawniono wyciek danych 15 milionów klientów T-Mobile USA, w październiku z kolei upubliczniono prawie 15 GB danych pochodzących z włamania do popularnego amerykańskiego serwisu Patreon. Znane są też ogromne wycieki danych z LinkedIn, Steam czy Blizzard. Co ciekawe, znaczna liczba tego typu spektakularnych naruszeń bezpieczeństwa następuje w wyniku wykorzystania błędów aplikacyjnych. Dużo włamań pozostaje jednak nieujawnionych – ofiary nie chcą się tym chwalić bądź po prostu nie wiedzą o naruszeniu bezpieczeństwa.

Michał Sajdak

PRAWO

Mechanizm odwróconego podatku VAT przy urządzeniach mobilnych

1 lipca 2015 r. weszła w życie ustawa z dnia 9 kwietnia 2015 r. o zmianie ustawy o podatku od towarów i usług oraz ustawy – Prawo zamówień publicznych (Dz.U. z 2015 r., poz. 605).

Kamil Stolarski, Konrad Majewski

STREFA CTF

CSAW CTF Qualification Round 2015 – Rhinoxorus

CSAW CTF to najpopularniejsze na świecie zawody Capture The Flag skierowane głównie dla początkujących. Organizowane są przez studentów Instytutu Politechnicznego Uniwersytetu Nowojorskiego i są częścią corocznych dni otwartych poświęconych bezpieczeństwu informatycznemu (Cyber Security Awareness Week). Nagrodą w kwalifikacjach (współfinansowaną również przez rząd Stanów Zjednoczonych) dla 15 najlepszych zespołów studenckich (niestety tylko tych z USA bądź Kanady) jest udział, przelot i zakwaterowanie podczas finałów w Nowym Jorku. Podczas tegorocznych kwalifikacji aż 8 drużyn zdobyło maksymalną ilość punktów, w tym najlepszy polski zespół – Dragon Sector.

Jarosław "msm" Jedynak, Mateusz "Rev" Szymaniec

KLUB LIDERA IT

Jak przekonać klienta do swoich pomysłów?

To jedno z najczęstszych pytań, które pojawiają się podczas naszej pracy z zespołami. W artykule poznasz skuteczną technikę do proponowania klientowi rozwiązań, które uważasz za lepsze niż te przez niego sugerowane. Zastanowimy się również, czy rzeczywiście o przekonywanie chodzi.

Michał Bartyzel, Mariusz Sieraczkiewicz

PLANETA IT

„Inicjacja” czy „inicjalizacja”

Słowa inicjacja i inicjalizacja wzbudzają wiele kontrowersji, choć wciąż trudno znaleźć szczegółowe opracowanie na ten temat. W artykule tym próbuję zapełnić właśnie tę lukę.

Łukasz Piwko

KLUB DOBREJ KSIĄŻKI

Agile. Przewodnik po zwinnych metodykach programowania

Rafał Kocisz