REKLAMA

140 stron z ciekawymi artykułami dla programistów i nie tylko

Magazyn Programista 6/2013 (13) można zamówić w prenumeracie przez formularz na stronie: http://www.programistamag.pl/infosite/register

Wydanie o zwiększonej ilości stron do 140. Magazn w prenumeracie w niezmiennej cenie.

Spis treści:

BIBLIOTEKI I NARZĘDZIA:

Git - Głupi Protokolant Treści*

Co to jest Git? Do czego służy? Dlaczego mam się zdecydować właśnie na niego, a niena którąś z wielu alternatyw? Jakie są efektywne sposoby wykorzystania tego narzędzia? To tylko niektóre z pytań, na które odpowiedzi można znaleźć w artykule.

Bartosz Taudul

Programowanie aplikacji finansowych - Wprowadzenie do platformy xAPI

Temat pieniądza dotyka każdego z nas. A jeśli pieniądze, to Forex - największy oraz najbardziej dynamicznie rozwijający się rynek finansowy na świecie. Dzięki przedstawionemu w tym artykule otwartemu API finansowemu każdy ma możliwość dołączenia do społeczności traderów we własnym, domowym zaciszu.

Paweł Kozikowski, Oskar Dylewski

Google Analitics SDK v2.0 dla systemu iOS

W artykule omówione zostały informacje związane z narzędziem Google Analytics SDKv2.0 dla iOS, jak również informacje dotyczące monitorowania wybranych elementów aplikacji takich jak zdarzenia czy wyjątki. Przedstawiono również własną implementację klasy wrappera (wzbogacającego bibliotekę), ukierunkowanego na generyczne wykorzystanie w rozwijanych projektach.

Łukasz Mazur

JĘZYKI PROGRAMOWANIA

C# tips&tricks

Jak automatycznie wywołać deinicjalizację kodu? Jak generować kod? Jak debugować zdalne procesy? Jak stworzyć asynchroniczną metodę?

Michał Mac

Jedność w różnorodności. Współdzielenie kodu .NET między Windows 8 i Windows Phone 8

Współczesny .NET ma różne oblicza. Wśród implementacji Microsoft możemy wymienić pełny .NET Framework, Silverlight, .NET na Windows Phone, .NET dla aplikacji Windows Store, Xbox 360 ... Mamy także Mono i Xamarin. Jak współdzielić kod między tymi wszystkimi platformami? Obecnie .NET pozwala nam tworzyć przenośne biblioteki, nie wymagające rekompilacji. Artykuł przedstawia to zagadnienie na przykładzie ekosystemu, jaki tworzą Windows 8 i Windows Phone 8. Przy okazji omówimy także inne możliwości współdzielenia kodu między tymi platformami, w tym kwestię wywołań WinRT API.

Marcin Kruszyński

PROGRAMOWANIE SYSTEMOWE

Bliżej silikonu #1

Witamy w serii skierowanej do czytelników zaciekawionych sposobem działania systemów komputerowych od podszewki, w której skupimy się na omówieniu podstawowych, niskopoziomowych aspektów związanych z działaniem współczesnych systemów operacyjnych oraz ich współpracy z platformą sprzętową, na której są uruchamiane. W niniejszej, otwierającej części przedstawiamy uproszczoną zasadę działania procesora w trybie rzeczywistym i typowy proces uruchamiania komputerów domowych oraz pokazujemy, w jaki sposób stworzyć własny program uruchamiany w środowisku typowym dla boot loadera.

Gynvael Coldwind, Mateusz Jurczyk 

PROGRAMOWANIE APLIKACJI WEBOWYCH

Programista vs włamywacz, czyli o bezpieczeństwie aplikacji internetowych w PHP

Doświadczenia z kilkunastu ostatnich lat pokazują, że utrzymanie webaplikacji to ciężki orzech do zgryzienia. Przypuszczalnie nie ma żadnej popularnej organizacji, która nie odnotowałaby przynajmniej kilku incydentów związanych z bezpieczeństwem. Celem tego artykułu jest przedstawienie najczęściej spotykanych wpadek developerów aplikacji internetowych i co najważniejsze - właściwych metod ich unikania.

Michał Leszczyński 

Aplikacje internetowe wykorzystujące Python. Biblioteki Flup, Web2py, Django

Artykuł omawia aplikacje, w których przeglądarka WWW służy do komunikacji. Część serwerowa jest tworzona w języku Python, wykorzystując bibliotekę Flup,Web2py lub Django. Pokazano przykłady dla serwera Lighttpd. Artykuł można traktować jako wprowadzenie dla osób, które nie miały okazji tworzyć tego typu oprogramowania.

Robert Nowak

Poznaj ASP.NET MVC 4. Optymalizować czy nie optymalizować? Oto jest pytanie

Czym właściwie jest optymalizacja? A może trochę inaczej: Czym właściwie jest optymalizacja, jeżeli mówimy o niej w kontekście tworzenia stron internetowych? Można powiedzieć, że jest to zbiór podjętych przez nas akcji mających na celu poprawienie płynności działania naszej aplikacji. Oczywiście w wyniku optymalizacji nie możemy pozwolić sobie na generowanie błędów na naszej stronie czy też ucinanie jakichś funkcjonalności.

Karol Rogowski

PRZETWARZANIE RÓWNOLEGŁE I ROZPROSZONE

Wątki zarządzane w aplikacjach Windows Presentation Foundation a interfejs użytkownika

Poniższy artykuł jest drugim z serii trzech, w których omawiamy w kompletny sposób zagadnienia związane z odświeżaniem i utrzymywaniem aktywnego (nieblokującego)interfejsu użytkownika w aplikacjach korzystających z wątków roboczych.W pierwszej części omówiliśmy zagadnienia dotyczące biblioteki kontrolek WindowsForms. W tej części koncentrujemy się na problemach spotykanych podczas implementacji aplikacji wielowątkowych opartych o komponenty z biblioteki Windows Presentation Foundation

Dawid Borycki

PROGRAMOWANIE BAZ DANYCH

Wprowadzenie do projektowania hurtowni danych. Część 3 - źródła i ładowanie danych

W dwóch poprzednich częściach artykułu poświęconego tworzeniu hurtowni danych opisane zostały podstawowe zasady projektowania ich głównych obiektów - tabel wymiarów i tabel faktów. Jednak nawet najlepiej zaprojektowana hurtownia będzie bezużyteczna, dopóki nie zostanie zasilona danymi - poprawnymi i kompletnymi.

Agnieszka Chodkowska-Gyurics


PROGRAMOWANIE GIER

Lochy albo „dungeony”, czyli prototyp gry w Unity3D

Unity3D to połączenie edytora 3D wraz z rozbudowanym systemem do tworzenia skryptów w językach JavaScript, Boo, a także C#. Jeśli chcemy spróbować swoich sił w tworzeniu gry o grafice 3D czy też 2D, to Unity3D jest bardzo dobrym wyborem, szczególnie jeśli będzie to nasz pierwszy projekt tego typu.

Marek Sawerwain


PROGRAMOWANIE GRAFIKI

O Demoscenie

Świat komputerów szybko się rozwija. Dziś korzystamy z Internetu na smartfonach i tabletach oraz przechowujemy nasze dane w chmurze, a producenci sprzętu i oprogramowania dbają, aby wszystko było dla nas proste i przyjemne. Kilkadziesiąt lat temu, kiedy pierwsze komputery trafiały pod strzechy, użytkowników witał wiersz poleceń konsoli, w magazynach komputerowych ukazywały się kursy programowania, a niektórzy nawet z lutownicą majsterkowali przy swoim sprzęcie.Właśnie w tamtych czasach narodziła się demoscena.

Adam Sawicki

WYWIAD

Rozmowa z Tomaszem Laszukiem, prezesem zarządu firmy Infolan

INŻYNIERIA OPROGRAMOWANIA

Zarządzanie ryzykiem w metodykach Agile na przykładzie Scrum

Ryzyko projektowe jest jednym z podstawowych obszarów, który powinien zostać poddany wnikliwej analizie w każdym projekcie informatycznym. Kierownicy projektów podejmują działania w celu minimalizacji zagrożeń zarówno w obszarze organizacyjnym (dopasowanie osób do zadań czy ról), jak i w obszarze technologicznym (stosowanie właściwych narzędzi do zarządzania i realizacji zadań). Każda metoda zarządzania projektami definiuje oraz opisuje procesy i techniki związane z obszarem wiedzy na temat ryzyka. Obszar ten, zwany zarządzaniem ryzykiem, zajmuje się identyfikacją, analizą i reakcją na ryzyko. Procesy zarządzania ryzykiem stanowią zazwyczaj integralną część zarządzania projektem i w sposób zasadniczy, a często decydujący, wpływają na przebieg pozostałych procesów.

Bartosz Chrabski

Polimorficzne algorytmy szyfrowania

W tym artykule znajdziecie informacje o dynamicznym generowaniu unikalnych algorytmów szyfrowania, które zostaną zbudowane krok po kroku w kodzie assemblera x86.

Bartosz Wójcik

IBM® Rational® Test Automation

Ciągła integracja i wirtualizacja usług oraz aplikacji dla podniesienia jakości i obniżenia ryzyka.

Łukasz Mazur

LABORATORIUM BOTTEGA

Mapowanie relacyjno-obiektowe prawdziwych obiektów - rzecz o DDD i JPA

Stosując mapery relacyjno-obiektowe, zwykle nie zastanawiamy się nad problemami związanymi z niespójnością danych wynikającą ze stosowania Lazy Loadingu, granicą spójności obiektów podczas zapisu kaskadowego oraz pułapkami naiwnego blokowania optymistycznego. Niniejszy artykuł został osadzony w kontekście standardu Java Persistence API, jednak poruszone problemy i rozwiązania aplikują się dla każdego ORM. Artykuł nawiązuje również do Domain Driven Design, jednak przedstawione podejścia opierają się na ogólnym paradygmacie Object Oriented (i jego niezgodności z para-dygmatem relacyjnym). 

Sławomir Sobótka

KLUB LIDERA IT

Jak całkowicie odmienić sposób programowania, używając refaktoryzacji - część 2

Większość programistów wie, co to refaktoryzacja, zna zalety wynikające z jej stosowania, zna również konsekwencje zaniedbywania refaktoryzacji. Jednocześnie wielu programistów uważa, że refaktoryzacja to bardzo kosztowny proces, wymaga wysiłku i brak na nią czasu w szybko zmieniających się warunkach biznesowych. Zapraszam do drugiej części artykułu poswięconego zagadneniu refaktoryzacji.

Mariusz Sieraczkiewicz

FELIETON

Development to nie tylko kod

Development to nie tylko kod... Chociaż bardzo często o tym zapominamy, to cały proces od momentu zainicjowania projektu do samego wdrożenia na środowiskoprodukcyjne jest równie istotny. Od przygotowania tzw. inicjatywy, aż do czasu “release'u”i opieki powdrożeniowej w procesie jest wiele znaczących kroków. Samo przygotowanie i realizacja poszczególnych funkcjonalności to jedynie wisienka na torcie tworu informatycznego. Dlaczego więc programiści mają tendencję do zapominania o pracy ludzi wokół?

Mateusz Harasymczuk

KLUB DOBREJ KSIĄŻKI

Hakerzy i malarze. Wielkie idee ery komputerów

Rafał Kocisz