REKLAMA

Tworzymy wydajny kod w C++

Magazyn można zamówić w prenumeracie przez formularz na stronie: http://www.programistamag.pl/infosite/register

Programista 4/2013 (11) - Spis treści:

JĘZYKI PROGRAMOWANIA

Pisanie wydajnego kodu C++

Choć języki wysokiego poziomu – skryptowe, interpretowane czy wykonywane w wirtualnej maszynie – mają wiele zalet i są najlepszym wyborem w licznych zastosowaniach, to niekiedy potrzebujemy napisać kod jak najbardziej wydajny. Do tego nie wystarczy zastosować język natywny taki jak C++. Dopiero pewna dawka wiedzy i znajomość dobrych praktyk pozwoli wycisnąć ze sprzętu maksimum mocy obliczeniowej.

Adam Sawicki

Wprowadzenie do języka C# i platformy .NET (część 7)

W siódmej i ostatniej części kursu „Wprowadzenie do języka C# i platform y .NET” przedstawimy podstawowe zasady związane z komunikacją z bazami danych oraz zaprezentujemy podstawy tworzenia interfejsu graficznego w naszych aplikacjach.

Przemysław Krygier

PROGRAMOWANIE GIER

Gry Indie – droga niezależnego twórcy

Pierwsze kroki w świecie gier dla systemu Android

Czyli chcesz tworzyć gry. Twój powód nie jest istotny - może podobają Ci się istnieące już gry, patrzysz na projektowanie jako środek wyrazu albo może masz niesamowity pomysł, który musi ujrzeć światło dzienne. Jedyne, co jest Ci potrzebne, to zapał i kreatywność. Jednakże zatrudnienie się w dużym studiu tworzącym gry jest często bardzo trudne. W biznesie tym stabilność zatrudnienia nie jest pewna, a 60-godzinne tygodnie pracy wcale nie są takie ekscytujące. Bycie niewielkim trybikiem w gigantycznej firmie, który pracuje nad tak niesamowitymi zadaniami jak ekran ekwipunku czy interaktywny drewniany wychodek, prawdopodobnie nie są szczytem twoich marzeń. Odpowiedzią może być tworzenie gier Indie.

 Andrzej Jóźwiak (Mobica)

PROGRAMOWANIE URZĄDZEN MOBILNYCH

Poznaj ASP.NET MVC 4

Walidacja danych na stronie

Walidacja danych jest niezwykle ważnym tematem, jeżeli mówimy o aplikacjach przeznaczonych dla większej liczby użytkowników. Musimy być pewni, że nasza strona otrzymuje dane zarówno poprawne w kwestii formatu, jak i poprawne logicznie. Jest to istotny element naszego rozwiązania, ponieważ niepoprawne dane mogę wywoływać błędy zarówno na poziomie zapisu danych, jak i potem podczas ponownego wykorzystywania ich.

Karol Rogowski

PROGRAMOWANIE BAZ DANYCH

Wprowadzenie do projektowania hurtowni danych

 Wymiary

Jest takie wspaniałe opowiadanie Henrego Kuttnera „Tubylerczykom spełły fajle”. Dwójka dzieci dzięki zdobytemu przypadkiem zestawowi zabawek pochodzącemu z innej planety unika powszechnego dla Ziemian „uwarunkowania Euklidesem” i rozpoczyna życie w innym wymiarze. Podobne uwarunkowanie intelektualne odczuł na własnej skórze każdy z nas, gdy z „normalnego” systemu dziesiętnego trzeba było przestawić się na system dwójkowy, ósemkowy czy szesnastkowy. Trzeba sporego doświadczenia, by nie tylko zrozumieć, lecz także poczuć, że dwójka, ósemka czy szesnastka jest tak samo „okrągłą” liczbą jak dobra, stara dziesiątka.

Agnieszka Chodkowska-Gyurics

ALGORYTMIKA

Kompresja danych

Programy kompresujące dane mają swoje początki w czasach, gdy zarówno przestrzeń dyskowa, jak i transfer danych były stosunkowo drogie. Ograniczenie rozmiaru danego pliku o kilkanaście procent powodowało równoważną redukcję kosztów, więc na rynku szybko zaczęły pojawiać się programy, które umożliwiały realizację takiego zadania. Z czasem pojawiły się nowe potrzeby – masowo przesyłane przez Internet multimedia wymusiły powstanie kolejnej kategorii algorytmów, potrafiących poradzić sobie z trudno kompresowalnymi danymi, jakimi są obrazy, dźwięk i filmy. Współcześnie kompresja danych jest wszechobecna – do tego stopnia, że mechanizmy kompresujące pliki, katalogi, czy nawet całe partycje wbudowane są w każdy system operacyjny. Spróbujmy przyjrzeć się bliżej algorytmice, która stoi za tym ciekawym zagadnieniem.

Wojciech Sura

INŻYNIERIA OPROGRAMOWANIA

Jak tworzyć testowalny kod?

Aplikacje sterowane zdarzeniami – Event Broker

Jak uniezależnić moduły aplikacji między sobą? Jak odświeżyć poszczególne elementy interfejsu użytkownika bez wprowadzania zbędnego couplingu? Jak wysłać email czy sms w reakcji na zatwierdzenie rezerwacji?

Michał Mac

AGILE

Teoria Scrum – czyli czysta praktyka

„W dzisiejszym pędzącym, niezwykle konkurencyjnym świecie komercyjnego wytwarzania nowych produktów, szybkość i elastyczność są najbardziej istotne. Firmy coraz częściej zdają sobie sprawę, że stare, sekwencyjne podejście do wytwarzania nowych produktów po prostu nie przynosi efektów. Zamiast tego, firmy w Japonii i Stanach Zjednoczonych używają holistycznej metody – tak jak w rugby, gdzie piłka jest ciągle podawana w zespole, kiedy ten pokonuje pole gry jako jednostka.”

Krystian Kaczor

ZARZĄDZANIE PROJEKTAMI

Czy IT potrzebuje umiejętności „miękkich”?

Co powinien właściwie umieć architekt, programista lub tester? Na język cisną się technologie, frameworki, metodyki i inne narzędzia z branży IT i Informatyki. Ale czy to wystarczy?

Z całą pewnością dobrze stać się wysokiej klasy, certyfikowanym specjalistą od Spring Framework, standardu JSF, JPA, serwera baz Oracle, Javy, mieć studia wyższe za sobą oraz znać każdy najdrobniejszy detal techniczny tych narzędzi. Ale czy to wystarczy? Nie. Projekt potrzebuje czegoś więcej niż tylko czystej techniki na stanowiskach wykonawczych.

Łukasz Lechert

LABORATORIUM BOTTEGA

Receptury projektowe – niezbędnik początkującego architekta

4C – Zwinne podejście do odkrywania i dokumentowania architektury

W jaki sposób dokumentować architekturę systemu? Z jednej strony tak, aby zawrzeć wszystkie potrzebne informacje, z drugiej zaś, aby nie przeładować dokumentacji szczegółami, które czynią ją bezużyteczną. W artykule zostanie przedstawione jedno z podejść do dokumentowania architektury na 4 poziomach: Context, Containers, Components, Classes.

Sławomir Sobótka

LABORATORIUM MACOPEDIA

Poznaj TYPO3 CMS. Podłączanie szablonu

W poprzednim numerze wprowadziliśmy naszych czytelników do systemu CMS TYPO3. W tym wydaniu pokażemy, jak podłączyć szablon HTML do systemu i wyświetlić prostą stronę internetową. Przy okazji wprowadzimy w TypoScript oraz zaprezentujemy inne ciekawe elementy TYPO3.

Tomasz Grzemski

KLUB LIDERA IT

Miary efektywności w pracy zespołu programistycznego

Co trzeba wiedzieć, kiedy wprowadza się miary?

Marzeniem każdego lidera jest posiadanie kilku niezawodnych wskaźników, wspartych pięknymi wizualizacjami, dzięki którym łatwo będzie stwierdzić, jak efektywny jest jego zespół, kto jest bardzo dobry, a kto jest daleko w tyle za resztą zespołu, kogo nagrodzić premią, a komu przykładnie pogrozić palcem. Miary związane z efektywnością zespołu to przydatne narzędzie, jednak jest kilka rzeczy, które powinieneś wziąć pod uwagę, zanim zaczniesz je stosować.

Michał Bartyzel, Mariusz Sieraczkiewicz

WYDARZENIE

Relacja z Agile Dev Practices 2013

W dniach 4-7 marca odbyła się w Poczdamie konferencja Agile Dev Practices 2013, w której miałem okazję wystąpić zww prezentacją „Life Coaching Techniques on Agile Projects”. Organizatorem była firma Diaz & Hilterscheid znana z konferencji Agile Test Practices oraz czasopism Testing Experience i Agile Record.

Krystian Kaczor

KLUB DOBREJ KSIĄŻKI

Nowoczesne projektowanie w C++

Rafał Kocisz

 

 

wych technologii obrazu.

KLUB DOBREJ KSIĄŻKI

Perełki programowania gier
Rafał Kocisz