Lokalizacyjne dziwactwa – zaokrąglenia

Kontynuując temat „nieświadomej” lokalizacji aplikacji (porzedni wpis), postanowiłem bliżej przyjrzeć się zaokrągleniom liczb zmiennoprzecinkowych. Okazuje się, że i tu może nas spotkać niespodzianka.

W jaki sposób zaokrągla się liczby w C#? Wszystko zależy od potrzeb. Poniżej wybrane sposoby oraz ich rezultaty:

Math.Round(5.1) // 5
Math.Round(5.7) // 6
Math.Round(5.5) // 6
Math.Round(4.5) // 4
Math.Round(4.51) // 5
Math.Floor(4.9) // 4
Math.Ceiling(4.9) // 5
(int)4.9 // 4

Math.Round(4.45, 1) // 4.4
Math.Round(4.55, 1) // 4.6

Czytaj dalej

Share

Dlaczego mój program działa tylko w Polsce?! Czyli z lokalizacją na dobre i na złe

Może nie tylko w Polsce, ale na pewno nie w Stanach Zjednoczonych czy Wielkiej Brytanii. Kiedy decydujemy się na wystawienie naszej aplikacji na rynek międzynarodowy podejmujemy podstawową decyzję: czy nasza aplikacja będzie lokalizowana, czy „sztywno” anglojęzyczna. W drugim przypadku jesteśmy zwolnieni z tłumaczenia tekstów interfejsu oraz wyświetlania danych (takich jak data, czas, waluta) w formacie charakterystycznym dla danego regionu. Niestety nie możemy całkowicie zignorować kwestii lokalizowania, gdyż poskutkuje to niemałym zaskoczeniem. Na co więc należy zwrócić uwagę? Czytaj dalej

Share

Z przeglądarki na telefon? Proste!

W ostatnim czasie Microsoft uraczył programistów .NET kilkoma podobnymi technologiami. WPF, Silverlight, Silverlight for Windows Phone czy najnowsze aplikacje Metro w Windows 8. Wszystkie wymienione technologie łączy XAML z pewnymi tylko różnicami wynikającymi ze specyfiki poszczególnych platform.

Skoro mamy pewien punkt wspólny pomiędzy technologiami, dlaczego by nie spróbować przenieść już napisany program na inną platformę? Oczywiście nie zawsze to ma sens. Menedżer plików napisany w WPF jest nie do zaimplementowania w „przeglądarkowym” Silverlight, a program do przechowywania kontaktów telefonicznych z funkcją wysyłania smsów i wybierania numerów nie powinien się znaleźć poza telefonem. Niemniej jednak są przypadki, w których portowanie aplikacji jest uzasadnione.

W tym wpisie opiszę moje spostrzeżenia na przykładzie portowania gry 7Letters z Silverlight w przeglądarce na telefon z Windows Phone. Zajmę się również przeniesieniem aplikacji na Windows 8, ale o tym innym razem. Czytaj dalej

Share