Jakub Florczyk - Blog o programowaniu .NET

Programista praktyczny

Month: January, 2012

31 Weeks of Windows Phone Metro Design

Arturo Toledo na swoim blogu kilka tygodni temu rozpoczął serię artykułów o projektowaniu interfejsów dla Metro na Windows Phone. Polecam każdemu kto nawet w najmniejszym stopniu bierze udział w projektowaniu / wykonywaniu aplikacji na Windows Phone. Arturo bardzo dokładnie i wnikliwie przedstawia wszystkie aspekty projektowania i tworzenia interfejsów od podstaw ideowych, poprzez wybór odpowiednich typów aż po konwersje z istniejących nośników.

Poszukiwany freelancer Android

Do mojej firmy Cubicsoft. Poszukuję programisty (freelancer) aplikacji użytkowych na platformę Android.

Wymagania:

  • bardzo dobra znajomość Java i SDK Android
  • znajomość Eclipse
  • podstawowa znajomość Photoshop (przygotowanie ikon / buttonów / ect wg wytycznych Google)
Nie poszukujemy artystów kodowania a rzemieślników, którzy umieją pisać dobre i funkcjonalne aplikację. Do obowiązków programisty będzie należało rozwijanie istniejących produktów oraz tworzenie konwersji z Windows Phone.

Portfolio (i próbkę kodu – jedna / dwie klasy) proszę wysyłać na adres biuro@cubicsoft.pl. W zgłoszeniu proszę zaproponować minimalną stawkę godzinową.

Xbox Live na Windows Phone z łyżką dzięgciu

Xbox Live na Windows Phone jest jak święty graal, jak gwiazdka w lipcu, jak wygrana kumulacji w Lotto. A może jednak nie do końca?

Każdy kto czasem zagląda w nowe gry na WP pewnie już znalazł ARMED!. Gra bardzo ciekawa, nie tylko dlatego że bardzo ładnie graficznie zrealizowana to jeszcze opiera się na bardzo dobrym pomyśle turowego RTS’a. Poza wpadką z lokalizacjami (która już jest poprawiona) i trochę upierdliwą nawigacją nie ma się do czego przyczepić no może poza tym, że nie jest to gra z Xbox Live.

Byłem tym faktem trochę zdziwiony, bo XL (Xbox Live) czasem zawiera straszne gnioty jak np Breeze – kompletnie nie ogarniam idei tej gry a po trzech ziewnięciach i jednej gwiazdce ją wywaliłem z hukiem. Ale nie na tyle zdziwiony aby szukać przyczyny. Aż przed kilkoma dniami na WMPowerUser pojawiła się notka autorów a propos braku XL:

A large reason we didn’t support Xbox Live is because of some of the technicalities of their system. If we had went with Xbox Live we wouldn’t be able to release bug fixes/updates for 2-4 weeks AFTER they’re finished due to their certification process. Not being a Live title, allows us to ship updates a couple days after they’re ready. Quickly fixing issues and releasing new content is something we value highly and wouldn’t sacrifice that for anything.

That being said, we are looking into a system that will allow you to earn achievements. (Though they won’t be for Xbox Live/Gamerscore).

Ale to nie koniec historii. Otóż okazuję się z facebook’a i z komentarzy na WMPowerUser iż tak naprawdę twórcy Armed! próbowali pokazać grę ludziom z Microsoft’u ale po wielu emailach bez odpowiedzi odpuścili temat.

Wniosek jaki z tego wynika jest taki, że MS nie ma ochoty wspierać małych producentów przez XL a tylko studia, które o zgrozo przeniosły swoje pozycję z iPhone i Android. Nie trudno wpaść na myśl, że jest to lekko ironiczna sytuacja dla Microsoft’u.

Zabawna sytuacja wynika także z samych aktualizacji gier z XL. Mam ich zainstalowanych około dziesięć od początku dostępności sklepu. W tym czasie tylko PVZ dostało aktualizację. A nieszczęsny Guitar Hero 5 nie działa od pierwszego releasu. W tym czasie Survivalcraft, ktory de facto nie jest tak długo na rynku miał już cztery aktualizację. I gdzie tu logika?

 

Użyteczne rozszerzenia 2/n!

W dzisiejszej części proste przełączanie widoczności UIElement w Silverlight:

// metoda
public static void ToggleVisibility(this UIElement uie)
{
    uie.Visibility = (uie.Visibility == Visibility.Visible ? Visibility.Collapsed : Visibility.Visible);
}

// sposób użycia
Button.ToggleVisibility();

WP7 Emulator Skin Switcher

Na blogu Geert van der Cruijsen pojawiło się ciekawe narzędzie do zmieniania skórek emulatora Windows Phone 7. Polecam każdemu komu znudził się wygląd standardowego emulatora albo potrzebuje ładniejsze zrzuty z aplikacji dla klienta.

Użyteczne rozszerzenia 1/n!

Od kiedy Microsoft wprowadził rozszerzenia (ang. extensions) do platformy .NET jestem ich wielkim fanem. Dlatego raz po raz wrzucę jakiś użyteczne rozszerzenie, które może się okazać przydatne.

W dzisiejszej części rozwiązanie bolączki nawigowania do stron w Windows Phone:

NavigationService.Navigate(new Uri("/ProductPage.xaml", UriKind.Relative));

Zawsze mnie to kuło w oczy ze względu na string w kodzie, których nie lubię. Oczywiście można definiować stałe i tym podobne cuda wianki. Albo użyć poniższego rozszerzenia:

// metoda
public static bool Navigate<T>(this NavigationService navigationService) where T : PhoneApplicationPage
{
    return navigationService.Navigate(new Uri(String.Format("/{0}.xaml", typeof(T).Name), UriKind.Relative));
}  

// sposób użycia
NavigationService.Navigate<ProductPage>();