Zacznę od obiecanych kilku przykładów dziwnych tłumaczeń (podrzuconych przez kilka osób z kanału #z3s @
- Helion przetłumaczył "XSS" na (siedzicie?... serio, usiądźcie): "skrypty krzyżowe" *ba dum tsss*
- Z prac naukowych (tu i niżej): "fork of a project" → "projekt widelcowy"
- "router" → "traser"
- "to exploit" → "wyeksploatować"
Jeśli znacie jakieś inne zabawne tłumaczenia, plz wrzućcie w komentarze ;>
Przechodząc do listy terminów, wraz z tłumaczeniami które mi przyszły do głowy (nie zawsze dobrymi; te ku którym się skłaniam oznaczyłem boldem):
• bytecode - bajtkod, kod bajtowy
• literal - literał
• disassembler - disasembler, dezasembler
• offset - offset
• caller - "wywoływacz" brzmi bardzo źle; "funkcja-rodzic" to tłumaczenie opisowe (i nie do końca oddaje znaczenie); nie mam dobrego pomysłu
• tuple - tuple czy krotka
• breakpoint - breakpoint, punkt przerwania
• breakpoint hit (w sensie "when the breakpoint is hit, do...") - nie mam pojęcia
• false-positive - fałszywy pozytyw...? tłumaczenia ze statystyki to błąd pierwszego typu lub alfa-błąd (wg. wiki), natomiast nie słyszałem, żeby ktoś tak faktycznie mówił w IT
• whitelist - biała lista? chyba nikt tak nie mówi
• handler - brak pomysłów na dobre tłumaczenie
• callback (jako rzeczownik) - brak pomysłów
• compiled variable (rozdział o PHP) - w zasadzie mało istotne, chyba nikt tego po polsku nigdy nie tłumaczył
• wrapper - funkcja opakowująca?
• inline (szczególnie: "funkcja została zinline'owana") - inline, nie mam pojęcia ad czasownik w formie przeszłej dokonanej
• syscall - wywołanie systemowe
• brute force - brute force, metoda siłowa
• proxy - proxy
• operator/function overload - przeciążenie operatora/funkcji
• cheatsheet - tablica informatyczna, ściąga, ściągawka (termin angielski mi najbardziej pasuje)
• handle - uchwyt
• framework - no idea, termin angielski brzmi dobrze
Póki co spisałem tyle. Niektóre są proste i oczywiste (patrz: literał), ale przy innych mam nie lada zagwozdkę (np. breakpoint hit). Tak więc komentarze, sugestie, itp. będą bardzo mile widziane :)
Plan awaryjny brzmi: korzystać z angielskiego terminu lub jego bezpośrednio spolszczonej wersji.
Cheers,
EDIT: ups, #z3s jest ofc na IRCnecie, nie na freenode ;)
Comments:
l. poj. w języku polskim to "tupla", przy czym jest to raczej kojarzone z terminem psychologicznym. Krotka polskim tłumaczeniem angielskiego tuple, jednak jeśli chodzi o kojarzenie znaczenia któregokolwiek z tych słów to jest kiepsko. Nawet w angielskiej literaturze spotkałem się z zastąpieniem "tuple" przez "row" i używali tylko i wyłącznie w dalej w lekturze tego drugiego. Dlatego polski wiersz będzie lepszym wyborem imho.
tl;dr
Zamiast "tuple" proponuję wiersz (ang. row).
@disassembler
dezasembler brzmi i "wygląda" bardziej po polsku, szczególnie jeśli chodzi o formę czasownika tego wyrazu.
@breakpoint hit
Jeśli przetłumaczymy breakpoint na "punkt przerwania" to fragment "when the breakpoint is hit, do..." brzmi ładnie jako "kiedy osiągniemy punkt przerwania, wykonaj..."
@inline
Proponuję "wstawka", chociaż jako rzeczownik brzmi o wiele lepiej forma angielska, Natomiast "funkcja została wstawiona" brzmi o niebo lepiej.
Co najwyżej wprowadzaj za każdym razem nowy termin, a potem używaj go konsekwentnie (np. "użyjemy handlera (dalej handler - metoda obsługująca zdarzenie), aby..." lub coś w ten deseń.
Dzięki za input! ;)
"tuple" jako "wiersz" pasuje do baz danych, ale jako np. tuple w kontekście Pythona - czyli (a,b,[c, d],42,) - brzmi dziwnie. To powiedziawszy, "krotka" też jest raczej terminem z baz danych, ale słyszałem już ją w użyciu.
"dezasembler" - tutaj mam zagwozdkę - wiem, że to forma "poprawniejsza", ale mam wrażenie, że disasembler się używa częściej
"breakpoint hit" - "kiedy osiągniemy punkt wstrzymania" - not bad, not bad at all
"inline" - "wstawka" / "funkcja została wstawiona" - hmm... tłumaczenie nie brzmi źle, pytanie tylko czy ktoś tak faktycznie mówi (tj. dążę do tego by stosować faktycznie używane terminy); natomiast zdanie "funkcja została wstawiona" z dodatkowym wytłumaczeniem nie brzmi źle ;)
@img
Dzięki za link!
Przejrzałem ichni słownik - moje komentarze poniżej:
• bytecode - kod bajtowy
• literal - literał
• disassembler - dezasembler (chociaż tylko w złożeniu znalazłem)
• offset - (tylko jako verb, "przesunąć")
• caller - funkcja wywołująca (no tak, obviously ;>)
• tuple - spójna kolekcja (uh, uh... nope; zbyt opisowe)
• breakpoint - punkt przerwania
• breakpoint hit (w sensie "when the breakpoint is hit, do...") - (brak)
• false-positive - wynik fałszywie dodatni (nope, nie słyszałem, żeby ktokolwiek tak mówił)
• whitelist - (brak)
• handler - (tylko w złożeniach) "cośtam obsługi czegośtam" (opisowe, too long)
• callback (jako rzeczownik) - funkcja wywołania zwrotnego (nope, nie słyszałem, żeby ktoś faktycznie tak mówił)
• compiled variable (rozdział o PHP) - (brak)
• wrapper - (tylko w złożeniach) "otoka" (nope, nope, nope)
• inline (szczególnie: "funkcja została zinline'owana") - (brak; są złożenia, ale w innych znaczeniach)
• syscall - (brak)
• brute force - (w złożeniu "brute force attack") atak siłowy (to trochę by wskazywało, że "metoda siłowa" ma jakiś sens; natomiast nadal pozostaje pytanie czy ktoś tak faktycznie mówi)
• proxy - proxy (występuje w złożeniach, ale nigdzie nie jest tłumaczone - good)
• operator/function overload - przeładowanie operatora/funkcji (hmmm, nope)
• cheatsheet - (break)
• handle - dojście (nope, nope, nope)
• framework - framework (good)
@Spook
Generalnie zgoda, natomiast jeśli istnieje jakiś zwrot, który faktycznie się używa w dyskusjach w zespole / na scenie (tj. nie jest tylko martwym wpisem w słowniku), to nie ma chyba powodu, żeby tego nie użyć.
Natomiast skłaniam się ku temu co piszesz, tj. "jeśli są wątpliwości --> używam terminu angielskiego".
@Darek
Just wow ;)
literal - literał,
disassembler - deasembler,
offset - adres,
caller - funkcja wołająca,
tuple - kolekcja,
breakpoint - pułapka,
breakpoint hit - osiągnięta pułapka,
false-positive - błędna detekcja, błędne rozpoznanie
handler - obsługa, funkcja obsługująca,
callback - funkcja zwrotna,
wrapper - otoczka funkcji,
inline - funkcja wkomponowana (function is inlined into caller function) - funkcja jest wkomponowana w funkcję wołającą),
syscall - funkcja systemowa,
proxy (function, server) - pośrednik, funkcja pośrednicząca,
cheatsheet - ściągawka,
framework - bibilioteka
Zapraszam do hejtowania ;)
Ja bym raczej proponował używanie angielskich zwrotów, tudzież w przypisie przy pierwszym użyciu podać jakie zwroty mogą być polskimi odpowiednikami - z tym, że należy zaznaczyć, że są stosowane raczej rzadko.
@Gynv
false-positive - zostaw po angielsku, uważam, że to bardziej zrozumiałe niż polski odpowiednik. Podobnie zostawił bym caller lub nazwał "funkcją nadrzędną" - ale mogę się mylić (szybkie skojarzenie).
Whitelist - spotkałem się na uczelni z określeniem białej listy. Ale raczej jako wytłumaczenie koncepcji po czym wykładowca przechodził na bardziej naturalny zwrot angielski.
callback - jako rzeczownik to chyba funkcja wywołania zwrotnego - Wikipedia nie pomaga;D
Zaznaczam, że to moje subiektywne skojarzenia. Jeśli nie jesteś pewien - nie tłumacz na siłę. Należy pamiętać, że w IT i tak się rzuca terminami angielskimi i warto się do nich przyzwyczajać. Przykładowo weźmy przykład proxy. Jak mi napiszesz proxy będę wiedział od razu o co kaman. Jak napiszesz pośrednik, będę musiał się podrapać po głowie:)
@translator
framework - tu się nie zgodzę, że biblioteka. Zawsze mi się wydaje, że jest jakaś różnica między nimi, być może błędnie.
false positive - fałszywy wynik pozytywny
tuple - krotka (kolekcja funkcjonuje w innym znaczeniu)
function/operator overload - przeciążanie f-cji/operatorów (przeciążona f-cja/op)
syscall - wywolanie systemowe
inline - wklejka? ;)
caller - f-cja wolajaca (lepiej mi to brzmi)
breakpoint - pułapka
bp hit - wyzwolenie pułapki, schwytanie w pułapkie ;)
breakpoint - punkt przerwania
breakpoint hit - osiągnięcie punktu przerwania
callback - funkcja zwrotna
cheatsheet - myślę, że zależne od kontekstu
breakpoint -> breakpoint, nie słyszałem żeby ktoś używał tłumaczenia
breakpoint hit -> kiedy wykonanie programu dotrze do breakpointa
tuple -> krotka, spotykałem się wiele razy w rozmowie (głównie w świecie Pythona)
handler -> handler, nie słyszałem żeby ktoś mówił inaczej, chyba że tłumacząc początkującemu programiście - "to jest handler czyli funkcja która jest wywoływana kiedy wystąpi zdarzenie blablablabla"
callback -> callback tak samo jak handler
Generalnie wielki szacunek za dążenie do używania faktycznie używanych zwrotów a nie martwych helionizmów w stylu "tablica mieszająca" czy to co przytoczyłeś.
offset - adres, przesunięcie, offset
caller - metoda wołająca, funkcja nadrzędna
tuple - krotka
breakpoint hit - trafienie breakpointa
false-positive - błędne potwierdzenie, fałszywie dodatni (wynik, odczyn)
inline - rozwinięcie, funkcja została rozwinięta w miejscu
cheatsheet - ściągawka brzmi dobrze
offset - przesunięcie
caller - zwykle zostawiam - czasami jako "wywołujący"
breakpoint - pułapka (i tego trzeba szukać w spolszczonych debugerach:) ),
breakpoint hit - złapanie (//tutaj nastąpiło złapanie pułapki ustawionej na cośtam...)
false-positive - widziałam w jednym z artykułów jako "przedobrzenie", acz chyba najbezpieczniej będzie zostawić oryginał
handler - zazwyczaj się widzi jako "uchwyt"
callback - funkcja zwrotna (i nie chce być inaczej)
wrapper - widziałam nawet jako "opakowanie" - nie skomentuję
inline - funkcja rozwinięta, wkomponowana, "wprost" (w cudzysłowie)
syscall - funkcja systemowa, wywołanie systemowe
proxy - pośrednik
cheatsheet - ściągawka, niezbędnik (jak chociażby została nazwana ta kartka http://www.uz.zgora.pl/~jgramack/files/C_Linux/vi.pdf )
bytecode - bajtkod, kod bajtowy, kod wewnętrzny, często nawet jako "kod pośredni" w kontekście javy chociażby (choć to bardziej by było intermediate code)
disassembler - disasembler, dezasembler, chociaż i deasembler i inne potworki się zdarzały.
brute force - poza metodą siłową innego spolszczenia nie słyszałam
operator/function overload - przeciążenie/przeładowanie operatora/funkcji
framework - platforma/szablon.
offset - ołset/owset/ofset
caller - kałler/kaler/kołler
handler - handler/hendler
callback - kołlbak/kołlbek/kalbak/kolbak/kolbek/kelbek
wrapper - wrołper/wroper/wraper
inline - inlajn/anlajn
syscall - syskal/syskol/syskel
proxy - proksy/prołksy/praksy
operator - operejtor/operałtor
router - ruter/roter/rełter
IMHO wypaczyłeś tłumaczeniami znaczenia "breakpoint" i "framework"
@Gynv
Faktycznie jeśli chodzi o tuple to mówiłem w odniesieniu do baz danych. W komentarzach kilka propozycji padło, które imo są lepsze, bo tupla jest cokolwiek dziwnym stwierdzeniem.
U mnie na uczelni wykładowca używał stwierdzenia metoda siłowa/atak siłowy.
Co do inline, translator zaproponował całkiem niezły zamiennik, jednak myślę, że to jest nieco sztuczne tłumaczenie. Wykładowca u mnie używał angielskiego słowa i faktycznie odnośnie czasownika użył tego co zaproponowałem (funkcja została wklejona).
handler jako uchwyt brzmi bardzo dobrze
IMHO wypaczyłeś tłumaczeniami znaczenia "breakpoint" i "framework"
@Gynv
Faktycznie jeśli chodzi o tuple to mówiłem w odniesieniu do baz danych. W komentarzach kilka propozycji padło, które imo są lepsze, bo tupla jest cokolwiek dziwnym stwierdzeniem.
U mnie na uczelni wykładowca używał stwierdzenia metoda siłowa/atak siłowy.
Co do inline, translator zaproponował całkiem niezły zamiennik, jednak myślę, że to jest nieco sztuczne tłumaczenie. Wykładowca u mnie używał angielskiego słowa i faktycznie odnośnie czasownika użył tego co zaproponowałem (funkcja została wklejona).
handler jako uchwyt brzmi bardzo dobrze
1. "Pułapka" oznacza "breakpoint'a" odkąd pamiętam.
Niech link do wyroczni w postaci polskiej wersji dokumentu na MSDN osłodzi Twoje zaznajomienie się z terminem ;).
http://msdn.microsoft.com/pl-pl/library/cc676541.aspx
2. "Wklejenie" funkcji jest oczywiście szybsze i łatwiejsze niż "wkomponowanie", wydaje mi się jednak, że nie oddaje w pełni charakteru operacji. Wklejenie może oznaczać skopiowanie czegoś w inne miejsce zachowując formę oryginalną, natomiast funkcje inline poddawane są dalszym optymalizacjom w kontekście funkcji w które zostały one wkomponowane.
3. "Biblioteka" faktycznie klei ze sobą terminy library i framework, ale faktem jest, że i po angielsku te terminy są często mylnie wykorzystywane: np. "framework do obsługi czegoś". Powinna być to raczej "biblioteka do obsługi czegoś", ponieważ framework to pewien system na bazie którego można zbudować coś większego, a nie jedynie włączyć to do własnego projektu. To raczej framework włącza nasz projekt do siebie.
Z kolei "uchwyt" tylko jako "handle" brzmi dobrze, "handler" to już jest coś innego ;).
Zgadzam się handler jako uchwyt brzmi bardzo dobrze :)
Co do słówka disassembler to mam podobne odczucie jak Ty i zostawiłbym disasembler, pomimo iż może nie jest "najpoprawniejsze" to słyszy się je dużo częściej niż to drugie.
Pamietam jak kiedys znajomy biegal po calej firmie i szukal dokumentacji do jakiegos API po angielsku, bo firma sie wysilila i przyslala nam wersje polska i ni ch... nie dalo sie dojsc o co chodzi (ale przynajmniej byla zabawna).
inline - rozwinięcie w miejscu wywołania
cheatsheet - jak najbardziej ściąga/ściągawka
breakpoint - pułapka, dawno nie widziałem tego określenia ale też mi się wydaje, że sporo osób powinna kojarzyć takie tłumaczenie
breakpoint hit/trigger - wyzwolenie/wyzwalacz (prowokator ;)) pułapki
framework - rama robocza, platforma używana jest raczej w kontekście sprzętu lub systemu operacyjnego
offset - przesunięcie,
false-positive/false-negative - nieprawidłowy/fałszywy [wynik] pozytywny/negatywny
trace - ślad
stacktrace - ślad stosu brzmi trochę dziwnie ale wydaje mi się, że można spotkać
wrapper - coś opakowującego - np. klasa opakowująca, otoczka
handler - coś obsługujące coś - np. EventHandler - klasą obsługi zdarzeń, jedno wyrazowo najbliżej pasuje „odbiorca” albo „konsument” ale wydaje się za bardzo z czapy
I nie ma linkera (konsolidatora) na liście? :)
Overload i overwrite - IMHO tutaj ktos zrobil od poczatku "kupe" jezykowa, ktora zostaje utrwalona na studiach, przeciez mozna to bylo nazwac doslownie czyli overload - <b>przeładowanie</b> bo to zdecydywanie lepiej oddaje o co chodzi, albo pojsc nieco dalej i uzyc slowa <b>przedefiniowanie</b>
A overriding (spotkalem sie tez z overwrite) - mozna bylo przeniesc jako nadpisanie metody (bo chyba tak najlepiej oddaje o co chodzi).
Krotka - uzywalo sie na studiach, ale poza zajeciami na studiach nie slyszalem by ludzie uzywali. Najczesciej jest wiersz albo rekord.
framework nie jest biblioteka jak ktos pisal. Moze bardziej srodowisko? Bardzo czesto na frameworki testowe mowi sie ze to srodowiska testowe (nie mylic z test harness czyli jarzmem testowym)
false-positive - moze falszywe rozpoznanie, tutaj pytanie jak sie to nazywa w medycynie?
ściągawka jest ok, ew tabelka, tablica czy w jakim to formacie będzie i do czego się odniesie.
A whitelist - moze lista zaufania? :)
Swoja droga nasunal mi sie pomysl - moze sprobujesz wlasne slowa stworzyc bazujac na tym jak sie oryginaly wymawia? Np. sycall - syskal Ciekawe cyz by to przeszlo?
Handler to ogarniacz oczywiście. ;)
A tak już całkiem na serio, chyba lepiej jest używać zwrotów angielskich, jeżeli nie ma utartych polskich odpowiedników. Może zrobić do tego dodatkowy słowniczek?
To, że większość aktualnych wyjadaczy sięga najpierw po publikacje zagraniczne, to nie znaczy, że przyszłe pokolenia też muszą to robić. No, chyba, że ktoś kieruje się zasadą: "ja miałem trudno, to inni też będą mieć trudno" ;).
Ja wcale nie uważam, że miałem trudno, a wręcz łatwiej. Naprawdę dużo więcej rzetelnych materiałów powstaje w języku angielskim. Ponadto pójdź do którejkolwiek firmy IT z CV, gdzie masz wpisane język obcy angielski - z pewnością usłyszysz, że to wcale nie jest język obcy. Po co wprowadzać terminologie polskie, których nikt nie używa. Jeśli młody programista nauczy się tych terminów, będzie mu bardzo trudno odnaleźć się w środowisku, gdzie się ich nie używa. Nie lepiej ułatwić mu sprawę? Jak mówiłem książki z Helionu są uważane za mało rzetelne właśnie za takie "bezmyślne" tłumaczenie wszystkich terminów angielskich na polskie odpowiedniki i wychodzą z tego niezłe kwiatki, o czym niejedna osoba już wspomniała. Język techniczny to język angielski, nie tylko w IT - trzeba się z tym pogodzić:)
http://niebezpiecznik.pl/post/lockpicking-recenzja-kursu-otwierania-zamkow/
Po pierwsze - bardzo duże "dzięki!" dla wszystkich komentujących za propozycje i udział w dyskusji. Nawet jeśli nie wybrałem danej propozycji, to i tak bardzo cenne jest dla mnie rzucić na nią okiem (w końcu zawsze lepiej jest podjąć tzw. "poinformowaną decyzję").
Najpierw terminy:
*** bytecode
Z nowych propozycji padło "kod wewnętrzny" oraz "kod pośredni". Z tym pierwszym się chyba nigdy nie spotkałem, a ten drugi nie do końca wyraża to samo (tzn. bytecode wcale nie musi być kodem pośrednim - ale tu by można długie dyskusje przy herbacie/piwie prowadzić ;>).
Jeszcze się zastanowię, ale prawdopodobnie zostanę przy dwóch oryginalnych propozycjach - "bajtkod" i "kod bajtowy" - obie mi się nie podobają w tym samym stopniu, ale chyba są w na tyle OK, by ich używać ;)
*** literal
Tu sprawa prosta - literał.
*** disassembler
Propozycje są trzy: disasembler, dezasembler i deasembler. Przerzuciłem te terminy jeszcze przez kilka osób zajmujących się RE zawodowo, trochę powróżyłem z fusów i ostatecznie zostane przy disasembler.
*** offset
Oprócz offset padły jeszcze: adres i przesunięcie. Adres ma trochę inne znaczenie i nie zawsze jest wymienny ze słowem "offsetem" (patrz http://pl.wikipedia.org/wiki/Offset_(informatyka) - fd: spora część tego wpisu na wiki jest mojego autorstwa). Natomiast przesunięcie brzmi trochę dziwnie w niektórych kontekstach (np. "pole iAbc znajduje się na przesunięciu 4"), ale w innych można je użyć.
Decyzja: offset
*** caller
Pojawiły się "funkcja wywołująca", "funkcja wołająca", "funkcja nadrzędna", "wywołujący". Hmmm... "funkcja nadrzędna" w pewnych kontekstach jest niejednoznaczna (np. jeśli język dopuszcza funkcje zagnieżdżone, jak np. Python); przy doprecyzowaniu kontekstu (tj. "chodzi o call-stack") brzmi OK.
"Funkcja wołająca" mi osobiście nie pasuje. Call w programowaniu raczej jest "wywołaniem" niż "wołaniem".
"Wywołujący" - w niektórych kontekstach jest OK, chociaż niekoniecznie jako bezpośredni odpowiednik "callera".
Ostatecznie zostaje "funkcja wywołująca", chociaż coś mi mówi, że będę ją przeplatał z "funkcją nadrzędną" w niektórych przypadkach. Ew. jeszcze rozważę używanie angielskiego "caller".
(nie ma to jak bycie zdecydowanym ;p)
*** tuple
OK, tutaj mój błąd - nie doprecyzowałem kontekstu. Chodziło mi o "tuple" w rozumieniu Pythonowego (1,2,3,), a nie w rozumieniu wiersza z bazy danych - w tym ostatnim przypadku planuje pisać po prostu "wiersz".
Jeśli chodzi o "kolekcje", która się pojawiła tu i tam, to kolekcja jest bardzo ogólnym terminem i nie odnosi się stricte do tuple.
Padło również "tupla", która jest bezpośrednim spolszczeniem "tuple".
Generalnie chyba zostanie krotka, lub po prostu tuple pisane italiciem.
*** breakpoint
Częstym pomysłem była "pułapka" - i faktycznie kojarzę, że kiedyś tak się mówiło. Ale hmm, to chyba wyszło z mody (a przynajmniej ja dawno tego nie słyszałem).
Coś mi mówi, że zostanie breakpoint z uwagi na moje osobiste preferencje.
Co do breakpoint hit, to coś czuje, że skończy się na opisowym "kiedy nastąpi przerwanie działania na pierwszym breakpoincie", etc.
*** false-positive
Huhu, tutaj jest sporo rzeczy do wyboru. Raczej nie planuje iść w kierunku "błędu pierwszego stopnia" czy "fałszywe rozpoznanie". Chyba zostawie "false-positive", ew. bezpośrednie tłumaczenie (fałszywy pozytyw), o ile nie znajdę jakiejś informacji, że jest to bardzo nieprawidłowe.
*** whitelist
"Lista zaufania" może nie, chociaż "zaufana lista" by jakoś już brzmiała. Natomiast tak się chyba nie mówi.
Zostanę raczej przy angielskojęzyczny terminach "whitelist" i "blacklist".
*** handler
Kilka razy pojawiło się "handler"=="uchwyt" - spieszę więc ze sprostowaniem, że uchwyt to handle (bez "r" na końcu). Handler to funkcja/klasa/metoda/moduł/cokolwiek co coś obsługuje (zazwyczaj jakiś event).
Padły propozycje "funkcja/metoda/klasa obsługująca", natomiast raczej nie pójdę w tą stronę, ponieważ angielskojęzyczny termin "handler" nie wymaga precyzowania czy chodzi o funkcję, czy może o klasę, etc, a czasami jest to wygodne.
Zostanę więc przy angielskojęzycznym "handler.
*** callback
Padło "funkcja zwrotna" i "funkcja wywołania zwrotnego". Hmm, ale tak jak pisaliście - raczej się tak nie mówi. Zostanie więc callback.
*** wrapper
Padły propozycje: "otoka", "otoczka funkcji", "opakowanie", "funkcja opakowująca". Zostanę jednak przy angielskim "wrapper" ;)
*** inline
Propozycje: "wstawka" ("funkcja została wstawiona"), funkcja wkomponowana ("funkcja została wkomponowana"), "wklejka", "funkcja rozwinięta", "funkcja "wprost"", "rozwinięcie" ("funkcja została rozwinięta"), "funkcja rozwinięta", "rozwinięcie w miejscu wywołania".
Bardzo dobra propozycje (szczególnie funkcja wkomponowana brzmi fajnie). Natomiast głównym kryterium jest "czy tak się mówi", iii... chyba nigdy tego nie słyszałem. Natomiast słyszałem, że mówi się "funkcja X będzie rozwinięta" (z drugiej strony słyszałem też "pętla zostanie rozwinięta" (unrolled), więc jest pewna niejednoznaczność, chociaż łatwa do rozwiązania mając kontekst) - jest to trochę opisowe, ale w czasem się nada. Natomiast jako rzeczownik zostawię po prostu "inline".
*** syscall
"Funkcja systemowa", "wywołanie systemowe", ew po prostu "syscall". "Funkcja systemowa" jest trochę niejednoznaczna - równie dobrze może dotyczyć API systemowego jak i faktycznie syscalli. Zostanę prawdopodobnie przy "syscall" czasami wspierając się "wywołaniem systemowym".
*** brute force
Zostaje brute force, chociaż czasami będę wspomagał się "metodą siłową".
*** proxy
Prosta sprawa - zostaje proxy.
*** *.* overload
Chyba zostanę przy "przeciążeniu", głównie dlatego, że faktycznie się tego używa.
*** cheatsheet
Zostaje "ściąga" i/lub "ściągawka" z "cheatsheet" w nawiasie przy pierwszym użyciu lub jeśli to będzie bardzo istotne.
*** handle
Rzucę monetą, i albo będę zawsze pisał "handle", albo "uchwyt", albo będę mieszać obie wersje (tak, wiem, mam dziwne monety).
*** framework
Zdecydowałem się na "zręb".
...
...
...
Hehe OK OK, spokojnie. Będzie "framework" ;)
Jeśli chodzi o inne propozycje (szablon, biblioteka, platforma), to mają one inne znaczenia (translator fajnie to opisał na przykładzie biblioteka vs framework).
A teraz odpowiedzi na kilka komentarzy:
@green
Jak najbardziej będą wyjaśnienia, inne używane terminy lub tłumaczenia, ew. angielskie odpowiedniki (w przypadku polskich terminów) w nawiasie przy pierwszym wystąpieniu. Rozważam poświęcenie strony lub dwóch na słowniczek z wyjaśnieniem czemu wybrałem konkretne tłumaczenie a nie inne (tj. taki jak był w polskich tłumaczeniach Harrego Pottera).
@adam
Hehe zgoda ;)
@ged_
Hmmm, kurcze, nadal mówisz "postawić pułapkę"? Wiem, że kiedyś się tak mówiło, ale serio nie kojarzę, żeby to przetrwało.
@Tomasz Tybulewicz
Hah, świetne ;)
@GDR!
"Helionizmy", a to Ci dobre ;)
Ale mam wrażenie, że Helion nie może pełnych zasług za to sobie przypisać.
@MDobak
Uh huh ;)
Cóż, in the end lepszy źle wymówiony angielski niż brak takowego ;)
@kaapa
Huh. Mogli poprzestać na "wątkach roboczych" i by całkiem OK tłumaczenie z tego wyszło ;)
@Zzz
Rozważam ten pomysł (patrz moja odpowiedź na komentarz greena) ;)
@sebas86
Zgoda, natomiast troszkę celowo nie podałem kontekstu w większości przypadków - tj. starałem się znaleźć nie-opisowe tłumaczenia (mając kontekst bardzo łatwo pokusić się o tłumaczenie opisowe zamiast bezpośrednie). Oczywiście "tuple" aka "krotka" okazała się dobrym przykładem tego, że kontekst mogłem jednak podać ;)
Ad linker: linker będzie linker. Konsolidator mnie nigdy nie przekonywał i jeśli już tak pisałem, to tylko żeby udawać, że mi zależy na polskich terminach ;p
@WhiteLightning
Ad "overload" - zgoda. Przy czym szczerze, to i angielski termin "overload" jest niezbyt szczęśliwy. Szczerze, to mi osobiście by bardziej "specjalizacja" tam pasowała (jak w przypadku template'ów, chociaż też jakiś cichy głos w mojej głowie mówi, że to nie do końca to samo).
Co do własnych słów - he he he - kusi żeby sprawdzić, czy udało by mi się zanieczyścić kogoś język na resztę jego życia (<mroczny śmiech; grom w tle>). Ale nie, brzmi to nieetycznie ;) Jednak wolałbym aby początkujący czytelnicy poznali faktycznie użyteczne i używane terminy.
@Michał Lipek
"Ogarniasz" haha, dobre ;)
@Dracoborg
Zasada, którą się staram kierować, brzmi: "używać terminów których się używa", tj. nie tłumaczyć na siłę, ale i nie używać angielskich słów jeśli ma się równie dobry polski odpowiednik (np. "wskaźnik" zamiast "pointer").
Oczywiście powyższe i tak będzie "zbiasowane" przez moje własne preferencje ;)
@translator
Ugh, brzmi jak moja wypowiedź zlinkowana w poprzednim poście o książce (http://niebezpiecznik.pl/post/nowe-zabezpieczenie-supervisor-mode-execution-protection/#comment-36903) ;p
Oraz podziękowania za propozycje tłumaczeń dla (shoutout!):
cezar, img, translator, Dracoborg, ged_, n0 clues, GDR!, Tomek Z., piątkosia, Mafi, akuku, sebas86, WhiteLightning oraz Michała Lipka.
Pisząc kolejne fragmenty będę kontynuował spisywanie tłumaczeń, więc prędzej czy później kolejna część trafi na bloga.
Cholercia, z tym "overload" czuje, że będę miał zagwozdkę. Coś czuje, że po poświęcę z akapit w książce na wytłumaczenie się z terminu, który ostatecznie wybiorę. Problem z "przeciążeniem" jest taki, że chyba jest najpopularniejszym tłumaczeniem i faktycznie jest używane (pomimo tego, że jest niepoprawne).
Pomyślę co mogę z tym zrobić.
Kiedyś wyszperałem książeczkę z terminami informatycznymi w jakimś antykwariacie wydaną nakładem Polskiego Komitety Normalizacyjnego i sporo z przytoczonych tutaj określeń próżno tam szukać. Co prawda wydanie jest cholernie stare (1999) ale sporo z tych określeń ma jeszcze dłuższą brodę…
Co do „dziwności” brzmień pozwolę sobie powiedzieć tylko tyle, że to kwestia nie używanie i nie obcowania z tymi określeniami. Ja tam daje ukłon w stronę Helionu za chociażby próby tłumaczenia terminów, które siłą rzeczy będą brzmieć niezrozumiale i dziwnie bo nie miały nawet szans zaistnieć, a co dopiero porządnie się utrzeć w naszym środowisku. :)
• bytecode - bajtkod, kod bajtowy
• literal - literał
• disassembler - disasembler
• offset - offset
• caller - funkcja wywołująca
• tuple - no idea
• breakpoint - breakpoint
• breakpoint hit - wpaść w breakpoint :)
• false-positive - false-positive
• whitelist - whitelist
• handler - procedura/funkcja obsługi, trochę sztucznie do brzmi
• callback (jako rzeczownik) - callback, wywołanie zwrotne?
• compiled variable (rozdział o PHP) - zostaw nietłumaczone
• wrapper - funkcja opakowująca, albo zostaw oryginał, wszyscy mówią/piszą wrapper
• inline - zostaw inline
• syscall - wywołanie systemowe
• brute force - brute force, metoda siłowa
• proxy - proxy, serwer pośredniczący
• operator/function overload - przeciążenie operatora/funkcji
• cheatsheet - tablica informatyczna, ściąga
• handle - uchwyt
• framework - framework
pipeline - linorurka
• disassembler – zdecydowanie dezasembler (opcjonalnie deasembler)
• offset – przesunięcie; adres jest zbyt ogólny (por. segment+offset, czyli segment i przesunięcie [względem niego]); ktoś wspomina, że w tablicach jest sztuczne: otóż pozycja i przesunięcie pokrywają się, gdy rozpatrujemy je względem początku tablicy (pierwszego elementu); przesunięcie jest względne, pozycja bezwzględna
• caller – wywołujący (z opcjonalnym uściśleniem rodzaju, np. funkcji); callee – wywoływany (jak obok)
• tuple – zdecydowanie i krótko: krotka
• breakpoint – raczej punkt przerwania; dużo trudniejsze są „line breakpoint” lub „method breakpoint”! (wierszowy[!] punkt przerwania? a drugie? może „metodowy”? bez sensu… zatem może punkt przerwania wiersza/metody? może i lepsze, ale nadal… no to może lepiej na zasadzie „breakpoint/breakline/breakmethod”?: „punkt/wiersz/metoda przerwania”? no nadal nie do końca…!)
• breakpoint hit – hit w pozostałych znaczeniach oznacza trafienie (np. w wyszukiwaniu); ktoś trzeźwo zaproponował „osiągnięcie” — oboma rękami za
• false-positive – „fałszywy pozytyw”!?! raczej ze statystyki to błąd pierwszego typu lub alfa-błąd (wg. wiki), natomiast nie słyszałem, żeby ktoś tak faktycznie mówił w IT
• whitelist – otóż właśnie biała lista; to że nikt tak nie mówi (a szkoda), pokazał już ktoś wcześniej (cytując sposób wysławiania); na razie wszyscy tłumacz ątak
• handler – tu zdecydowanie jest trudno; „handle” to obsługa, można próbować „posługacza” (jest taki wyraz), ale nie jest on dość popularny, choć krótki — może takie tłumaczenie spowodowałoby jego odkurzenie? ogólnie „obsługa” nie wydaje się zupełnie złym pomysłem (przy czym „to support” to raczej „umożliwiać”, a nie „obsługiwać”, więc „support”… ech… ech!)
• callback (jako rzeczownik) – zwrotka: krótko i przyjemnie
• compiled variable (rozdział o PHP) – w zasadzie czemu nie zmienna kompilowana? co w tym złego mało istotne, chyba nikt tego po polsku nigdy nie tłumaczył
• wrapper – funkcja opakowująca; śmielej! :) (choć nie musi to być funkcja – może opakowanie?)
• inline (szczególnie: "funkcja została zinline'owana") – pojawiło się kilka ciekawych propozycji; wstawianie to raczej odpowiednik „insert”; sam używam „wplecenie”, „wpleciony”
• syscall – wywołanie systemowe (no chyba jedyne, choć długie)
• brute force – metoda siłowa (anglicyzm niepotrzebny!)
• proxy – pełnomocnik; lepsze niż pośrednik, bo działa w dwóch kontekstach: jako serwer i jako wzorzec projektowy
• operator/function overload – przeciążenie operatora/funkcji — tak, zdecydowanie nie przeładowanie!
• framework – ktoś wspominał „zręb”;wg mnie całkiem dobrze: proponuję jednak „zrąb”
ogólnie większość nazw angielskich pasuje bardziej, bo jesteśmy przyzwyczajeni i rozleniwieni; trochę to przykre, że programiści nie szanują swojego języka…
Add a comment: