Programista 9/2015 (40)
Programista 9/2015 (40)
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.
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ł.
Nadchodzi rewolucja
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.
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.
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.
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.
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.
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.
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.
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).
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.
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.
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ę.