Re: Win 2000

Autor: Radoslaw Sokol (rsokol_at_iname.com)
Data: Tue 06 Jun 2000 - 17:10:38 MET DST


Hi,

Jacek Osiecki wrote:
>
> >a) co rozumiesz przez "lokalizację programu po ludzku"?
>
> Rozumiem przez to lokalizację całkiem niezależną od plików wykonywalnych.

A czemu? Czy to jest jedyne słuszne rozwiązanie?

> I "dzięki" temu np. muszą być wydawane osobne servicepack-i do różnych
> wersji językowych! Po pierwsze opóźnienie, po drugie trzeba ciągnąć dużo
> więcej danych.

Po pierwsze, to nie MS wymyślił taki sposób przechowywania zasobów
programów. Autorem tego rozwiązania jest Apple -- wyrocznia w sprawie
interfejsów graficznych. W Applach się to sprawdziło, to MS zwinął to
rozwiązanie do swojego systemu. BTW wtedy był to niesamowity krok
naprzód w ułatwieniu lokalizacji programów (w porównaniu do DOSa,
gdzie 90% programów miało wszystkie komunikaty w kodzie jako stałe
stringi).

Po drugie, zasoby można rekompilować w gotowym EXEcu. Gdyby więc
tylko Microsoftowi się chciało, to ServicePacki mogłyby wyciągać
zasoby z istniejących wersji programów, podmieniać EXEki i na
nowo wpisywać zasoby.

Po trzecie, zazwyczaj zmianom w kodzie towarzyszą zmiany w zasobach
(dochodzą nowe komunikaty, zmienia się wygląd okien), więc i tak
trzeba wszystko podmieniać.

Po czwarte, zasoby można spokojnie umieścić w osobnym DLLu (tak
jest na przykład w MS Office) i wtedy masz dokładnie takie coś,
jak sobie życzysz.

> Gdyby Microsoft robił tę lokalizację po ludzku, to w katalogu windows byłby
> katalog z plikami lokalizującymi programy - tak samo, jak to jest robione
> pod unixami.

Oczywiście -- rozwiązanie zastosowane w Unixach jest najlepsze i
najbardziej dopracowane, bo ma ileśtam naście lat.

Podobne rozwiązanie masz właśnie w Windows, tylko musisz chcieć
je wykorzystać i kompilować zasoby do osobnego pliku. A że nikomu
się nie chce i wkompilowują je do pliku EXE lub wręcz nie robią
zasobów tylko umieszczają w kodzie... Zabronisz?

> 1. Lokalizacja programu jest prostsza do wykonania, więc można ją zrobić
> szybciej.

Akurat. Edytor zasobów uniezależnia zasoby od kodu, więc nie wiem
na czym to uproszczenie miałoby polegać. Pisałeś kiedyś program
pod Windows?

> 2. Nie trzeba mieć dostępu do źródeł programu, więc można lokalizację
> zlecić nawet jakiejś małej firmie - znowu przyspieszenie.

Dokładnie tak samo jest w Windows -- zasoby są niezależne od
kodu, edytorem można je dowolnie zmieniać w dowolnym zakresie,
o ile ma się do tego prawa (autorskie).

> 3. Nie trzeba lokalizować absolutnie wszystkiego - w najgorszym razie, jeśli
> jest gdzieś nieprzetłumaczony tekst, to będzie on po angielsku.

I tak samo jest w Windows.

> 4. Jeśli ktoś posiada odpowiednie pliki zasobów z odpowiednich wersji
> językowych, to może sobie lokalizację zmieniać nawet w locie.

W Windows jeżeli program jest napisany dobrze, też tak można.
W gorszym przypadku zostają jedynie lokale przewidziane przez
autora.

> Niestety, "dzięki" microsoftowemu sposobowi myślenia mamy sytuację taką, jak
> teraz - czyli totalny burdel, programy działające tylko pod angielską czy
> chińską wersją windows itp.

Za pozwoleniem -- chrzanisz :)

-- 
|"""""""""""""""""""""""""""""""""""""""""""""""""""""""|
| Radosław Sokół  |  http://www.magsoft.com.pl/~rsokol/ |
|  UIN:39350879   |  ftp://sokol.magsoft.com.pl/        |
\................... WinNT FAQ: http://nt.faq.net.pl/ ../


To archiwum zostało wygenerowane przez hypermail 2.1.7 : Tue 18 May 2004 - 20:13:15 MET DST