Programista 10/2015 (41)
Programista 10/2015 (41)
Język C# oraz platforma .NET nie są zazwyczaj wykorzystywane do implementacji algorytmów i aplikacji, wymagających szybkich obliczeń, na przykład cyfrowej analizy sygnałów lub obrazów. Jednakże uniwersalna platforma Windows, jak również Windows Runtime udostępniają interfejs programistyczny dla języka C++ Component Extensions (C++/CX), który umożliwia łączenie natywnych bibliotek i technologii C++ z kodem zarządzanym, kontrolowanym przez środowisko uruchomieniowe platformy .NET. W szczególności pozwala to na wykorzystanie natywnych bibliotek i technologii w aplikacjach dla Windows. W tym artykule przedstawię tę możliwość na przykładzie aplikacji uniwersalnej platformy Windows, której celem będzie binaryzacja map bitowych.
Dostarczając aplikację mobilną, oprócz rozwiązania, które bezbłędnie wpisze się w oczekiwania użytkownika, musimy sprawnie reagować na wszelkie błędy, jakie mogą wystąpić podczas jej działania. Jak na nie reagować? Szybko! Skąd wiedzieć, gdzie ich szukać? Tutaj z pomocą przychodzą platformy do raportowania błędów takie jak HockeyApp. Sprawne odnajdywanie przyczyny problemu i szybkie dostarczanie właściwego rozwiązania to ich główne zadanie.
W niniejszym artykule opisany zostanie język Perl 6, jednak zaprezentujemy tylko jego kilka najistotniejszych cech, ponieważ gdyby opisać wszystkie, powstałaby z tego bardziej książka. Choć artykuł jest kierowany do osób niemających dotychczas żadnej styczności z Perlem, nie będziemy w nim opisywać składni i semantyki podstawowych konstrukcji językowych; skupimy się jedynie na kwestiach, które wyróżniają go na tle innych języków programowania.
“This is the first time that our RTOS Kernel has left the earth’s gravity and been trusted with such an important mission”. Takimi oto słowami twórcy pewnego systemu powitali informację o udanym lądowaniu łazika Curiosity na Marsie. Nadszedł czas, że tak kosmiczna technologia zaczyna trafiać pod strzechy, prosto do rąk ambitnych hobbystów.
Hybrydowe aplikacje mobilne to temat wokół którego powstało dużo mitów. Jak tak naprawdę wygląda programowanie w Cordova/Phonegap w 2015 roku?
W dobie popularności usług chmurowych coraz częściej spotykamy się z sytuacją, gdy poszczególne elementy naszej infrastruktury znajdują się w różnych miejscach sieci. Jednym z takich przypadków może być sytuacja, gdy aplikacja znajduje się z publicznej chmurze, np. dostawcy aplikacji (ang. off-premises), a kontroler domeny w siedzibie klienta (ang. on-premises). Artykuł opisuje sposób, w jaki możemy wykorzystać Usługi Federacyjne Active Directory (AD FS) do bezpiecznego uwierzytelniania użytkowników w architekturach rozproszonych.
Jak zmniejszyć rozmiar pliku binarnego? Na przykład poprzez eliminację nieużywanych symboli na etapie linkowania. Będzie to wymagało zastosowania kompilacji z odpowiednim podziałem na sekcje. Wiązać się też będzie z pewnymi komplikacjami.
Podczas pracy nad oprogramowaniem oferującym GUI stajemy wobec pytania: jak testować działanie GUI? Czy będzie to monotonne klikanie, czy może pójdziemy drogą automatyzacji testów? W artykule chciałbym przedstawić narzędzie umożliwiające sprawne tworzenie automatycznych testów interfejsów użytkownika – HP UFT.
W niniejszym artykule postaram się przybliżyć, jak zacząć przygodę z tytułowym narzędziem – jak przygotować środowisko developerskie, zainstalować aplikację, napisać test oraz utworzyć podstawowy widok.
Odpowiada Andrei Alexandrescu – ekspert C++ oraz lider społeczności języka D.
5 listopada br. w kinie Nowe Horyzonty przy ulicy Kazimierza Wielkiego we Wrocławiu odbyła się konferencja CODE::DIVE, na której jako gość honorowy wystąpił Andrei Alexandrescu, jeden z czołowych ekspertów na świecie w dziedzinie rozwoju oprogramowania języka C++, współtwórca oraz lider społeczności skupionej wokół języka D, a także autor (oraz współautor) szeregu uznanych książek, między innymi Modern C++ Design: Generic Programming and Design Patterns Applied. C++ Coding Standards: 101 Rules, Guidelines, and Best Practices czy The D Programming Language. Andrei zaprezentował trzy wykłady: dwa dotyczące pisania wydajnego kodu (Writing Fast Code, Part I & II) i jeden traktujący o zaletach języka D (Three Cool Things about D). Wszystkie wspomniane prezentacje zebrały tłumy widzów. Nas też tam nie zabrakło, a co ważne – po jednym z wykładów udało nam się namówić Andrei na wywiad, którego treść przedstawiamy poniżej.
Czyli zmuszamy przeglądarkę do stosowania bezpiecznych połączeń
Czy Twoja strona jest dobrze zabezpieczona? Stosowanie protokołu HTTPS nie zawsze wystarcza, czasem trzeba posunąć się jeszcze krok dalej. Czym jest nagłówek HTTP Strict Transport Security i kiedy go stosować? Co może pójść nie tak podczas jego wdrożenia? Czy po jego wprowadzeniu Twoja strona jest już w 100% bezpieczna? Niniejszy artykuł opisuje wszystko, co zawsze chcieliście wiedzieć o HSTS, ale baliście się zapytać. W trakcie wyprawy do krainy bezpieczeństwa zabezpieczymy aplikację ASP.NET, ale zdobyta wiedza będzie przydatna dla każdego programisty.
W jednym z poprzednich wydań „Programisty” omówiliśmy problemy bezpieczeństwa, jakie mogą wystąpić w funkcjonalności uploadu plików w aplikacjach webowych. Spora część aplikacji umożliwia też wgranie własnego pliku na serwer w inny sposób, mianowicie można podać adres URL do pliku na zewnętrznym hoście, po czym zostanie on automatycznie pobrany. W tym artykule omówimy zagrożenia bezpieczeństwa, jakie mogą płynąć z takiego rozwiązania.
Repozytorium pojawiło się w języku potocznym o wiele wcześniej niż komputery czy informatyka. Słowo to wywodzi się z języka łacińskiego i oznacza uporządkowane miejsce, w którym łatwo dostępne zasoby są na wyciągnięcie ręki. Jak widać, pojęcie to nie jest potrzebne jedynie programistom. W branży developerów nie wszyscy i nie od zawsze czuli potrzebę jego użycia, nie od zawsze też korzystano z wygodnych narzędzi. Chciałbym przedstawić kilka modeli pracy z repozytorium kodu, jakie miałem okazję obserwować podczas swojej dotychczasowej przygody z programowaniem. Przechowywanie źródeł to, jak się okazuje, obszar ciągłego postępu narzędzi i metodologii pracy.
W pochodzącym z 1998 r. filmie Martina Bresta „Joe Black” (ang. „Meet Joe Black”) jeden z bohaterów (grany przez Jake’a Webera) rozmawiając z Joe Black (granym przez Brada Pitta, który w filmie tym kreuje postać śmierci), przywołuje powiedzenie, że na świecie pewne są tylko śmierć i podatki. Nie pochylając się nad pierwszym członem tego powiedzenia, warto zwrócić uwagę, iż kwestia podatków jest dużo bardziej skomplikowanym zjawiskiem niż mogłoby się wydawać na pierwszy rzut oka. Szczególne skomplikowane prawnie zagadnienia ujawniają się na styku prawa z nowoczesnymi technologiami lub zjawiskami wywołanymi postępem technologicznym.
Każdy programista, nawet jeśli nie zajmuje się tworzeniem stron internetowych, przynajmniej słyszał określenia typu „układ elastyczny”, „układ responsywny” itd. Niestety niewiele osób zastanawia się, co tak naprawdę one znaczą. W artykule tym staram się uporządkować terminologię z tego zakresu.