Xamarin Studio na Macu – bug czy feature?

Jestem bardzo przyzwyczajona do Visual Studio i sądziłam, iż twórcy Xamarina wyjdą bardziej naprzeciw developerom o podobnych przyzwyczajeniach.
Przedstawiam zatem kolejne “urozmaicające” życie smaczki z Xamarin Studio w edycji na Maca, które całkowicie odróżniają to środowisko od VS.

1 – Opcja “Refactor -> Zmień nazwę”
Po pierwsze widać tutaj mieszankę języka polskiego z angielskim, ale o tym za chwilę. Zmieniam nazwę, potwierdzam, zmienia się w powiązanych plikach i w bieżącym, ale… ojej, zrobiłam literówkę. Odruch? Cofam. Co się okazuje? Cofnięcie działa tylko na bieżący pliku. Dla porównania w VS oczywiście odwracane są wszystkie zmiany.

2 – Opcja “Add -> New file” (tutaj już nie będzie mieszanki, bo zrezygnowałam  z używania wersji polskiej interfejsu). Wybieramy utworzenie nowej pustej klasy i w efekcie otrzymujemy klasę zadeklarowaną jako publiczna od razu z pustym konstruktorem również publicznym. Tym samym łamana jest zasada, iż elementy powinny być deklarowane z jak najmniejszym dostępem. Powinien on być rozszerzany w miarę potrzeb. Jeśli tak będziemy pisać kod, to szybko stanie się on książkowym przykładem antypatternu Object Orgy. Dlaczego Xamarin pcha nas w tym kierunku?

3 – Opcja “Refactor -> Extract local variable”.  Klikamy na jakiejś liczbie, nasza zmienna się wyodrębnia, ale zostaje ona nazwana domyślnie ‘i’. W ten sposób nie pozostawia nam wyboru nazwy. Żeby ją zmienić trzeba użyć powyższej wątpliwej opcji “Refactor->Rename (Zmień nazwę)” ewentualnie zamienić ręcznie. Co ciekawe, jeśli klikniemy na jakimś stringu, to mamy nie tylko “Extract local variable”, ale również, co właśnie dużo bardziej by się tutaj przydało, “Create Constant Field”. Dlaczego brakuje tej opcji w odniesieniu do liczb? Przecież z nich równie często zdarza się tworzyć stałe.

Jak już wspomniałam, tłumaczenie w XS jest mieszane – kiedy mam ustawiony User Interface Language na polski albo default (wtedy prawdopodobnie bierze utawienia z systemu operacyjnego). Nie ma kompletnego polskiego tłumaczenia, więc jest pół na pół. Lepiej ma się sytuacja z językami takimi jak hiszpański czy niemiecki (tylko te poza polskim sprawdziłam), ale nadal tłumaczenie jest niekompletne. Po co tracić czas na coś niedokończonego? Lista języków do wyboru jest bardzo długa, ale co z tego skoro tak “działają”.

You might also like