Doporučení pro překlad odborných textů jazyka Python

py30.png py25.png

Úvod

Tento text vznikl na základě potřeby vytvořit jednotné české názvosloví pro překlad dokumentace jazyka Python. Dokument rovněž uvádí některé doporučení pro překladatele. Nejnovější verzi dokumentu můžete najít na stránkách http://www.py.cz .

Původním autorem tohoto textu je Jan Švec, který dal dokument na wiki a umožnil tak jeho úpravy pythonýrskou komunitou.

Popis jazyka Python

V následujícím odstavci se pokusím v pár větách popsat jazyk Python. Tuto definici můžete použít kdekoli, kde chcete Python v krátkosti charakterizovat.

Python je objektový, vysoce výkonný interpretovaný programovací jazyk. Podporuje velké množství vysokoúrovňových datových typů (řetězce, seznamy, asociativní pole ...). Již základní distribuce disponuje mnoha moduly, pomocí nichž lze řešit širokou škálu problémů (práce se sokety, službami internetu, vlákny ...). Jeho interpretr běží na mnoha platformách (Linux, Java, Macintosh, Palm OS, DOS nebo Windows). Interpret lze velice snadno rozšířit pomocí modulů napsaných v jazyku C (příp. C++). Další informace hledejte na domovských stránkách jazyka http://www.python.org nebo na stránkách české komunity programátorů a uživatelů jazyka Python http://www.py.cz .

Doporučení pro překlad dokumentace

Tato doporučení se týkají všech dokumentů, které se zmiňují o jazyce Python. Jejich dodržování je doporučováno - přináší sjednocení dokumentace a ulehčuje čtenářům studium dokumentace. Taktéž je doporučováno veškerou existující dokumentaci upravit podle těchto pravidel.

Objektové programování v Pythonu

Nedoporučuji psát, že Python je plně objektový jazyk. Jestliže se totiž v jakémkoli textu objevila tato věta, zvedla se vlna reakcí, říkající že Python má daleko do jazyků typu Smalltalk. Nicméně potřebujete-li v odborném textu vyzdvihnout možnost objektově orientovaného programování v jazyce Python, pište Python je objektový jazyk. Další přívlastky si prosím nechte pro sebe.

Jazyk dokumentačních řetězců

U programů a modulů, u nichž je třeba jen pouze teoretická šance, že je bude používat uživatel ze zahraničí doporučuji psát veškeré dokumentační řetězce v angličtině. Jestliže anglickým jazykem příliš nevládnete, je lepší najít někoho, kdo by byl ochoten těch pár kilobytů textu přeložit. Komentáře by bylo možné psát i česky (popř. slovensky) - o to důležitější je ovšem kvalita dokumentačních řetězců.

Psaní funkcí a metod

Ve všech textech, které uvádí příklady zdrojových kódů a následně vykládají jednotlivé funkce nebo metody doporučuji uvést znaky () za názvem funkce/metody. Čtenáři to umožňuje lepší orientaci mezi proměnnými. (Například: Funkce os.walk() projde celý adresářový strom ..., Metoda store() třídy MyClass uchová objekt ...)

Argumenty vs. parametry

Je možné používat oba výrazy, ovšem v rámci jednoho dokumentu, pokud je to vhodné, jednotně. Totéž platí i pro příkazy typu print (např. Příkaz print vytiskne argumenty jemu předané na standardní výstup.).

Datové typy

U slovních spojení, které obsahují slovo typ (ve významu datový typ), doporučuji explicitní uvedení slova datový (např. Sekvenční datové typy obsahují konečné množství prvků.).

Vlastní slovník

Builtin (function, module, namespace)
Interní, je možné použít také Vestavěný nebo Vnitřní.
Dictionary
V dokumentaci pro začátečníky je lepší psát Slovník, zároveň je třeba uvést další možný překlad Asociativní pole. V textech pro pokročilejší bych se spíše přikláněl k druhému výrazu.
Catching an exception
Odchycení výjimky
Default argument values
Implicitní hodnota argumentu, nebo opisem za použití sousloví Nepovinný argument
Exceptions
Výjimky
Exception throws
Výjimka se šíří
Feature
Většinou se překládá jako vlastnost (jinak také specifická vlastnost).
Generator expression
Generátorový výraz, popřípadě v konzistenci se stručným seznamem Stručný generátor
High level data types
Vysokoúrovňové datové typy, Datové typy vyšší úrovně
Immutable types
Neměnné typy
Indentation
Při prvním výskytu v textu doporučuji použít Odsazení od kraje, později lze zkrátit na Odsazení.
Keyword arguments
Keyword argumenty, dalo by se přemýšlet i o termínu Pojmenované argumenty.
Lambda functions
Anonymní lambda funkce, případně Lambda funkce
List
Seznam
List comprehension
Generátor seznamu. Předchozí verze tohoto dokumentu doporučovaly překlad Stručný seznam, který je však méně výstižný a v nových textech se doporučuje používat sousloví generátor seznamu, jež je navíc konzistentní s překladem Generator expression (Generátorový výraz).
Mapping types
Mapované typy, v některých případech by šel použít i matematický ekvivalent Zobrazení
Mutable types
Proměnné typy
Namespace
Jmenný prostor, Prostor jmen
Positional arguments
Poziční argumenty
Raising exception
Vyvolání výjimky
Raw string
Raw řetězec
Scope
Obor jmen
Sequence types
Posloupnosti, podle dřívějších verzí tohoto dokumentu i Sekvenční datové typy, zkráceně Sekvence.
Sequence unpacking
Rozklad posloupností
Slice (1) (jako způsob, kterým je možné indexovat více prvků najednou)
Indexování podposloupností případně Indexování subsekvencí, až pokud by opakované použití výše uvedených termínů nebylo vhodné, lze použít i překlad Slice konstrukce, případně Slice.
Slice (2) (jako výsledek slice konstrukce)
Řez, Podposloupnost, Subsekvence. Výjimečně také jako Slice. Je-li to nutné, použijte opisný tvar Výsledek slice konstrukce, případně Podmnožina prvků seznamu (tuple).
Statement
Vždy překládat jako Příkaz.
Tuple
Tuple, entice nebo n-tice. Například: Dvojice souřadnic (x, y) je lepší než Tuple souřadnic (x, y)).
Tuple packing
Skládání n-tic, skládání tuple
Unhandled exception
Neobsloužená výjimka

Obsáhlá debata o překladu různých pojmů --mol, Sat, 24 Aug 2013 23:43:11 +0200 reply

http://blog.nic.cz/2010/03/25/pomozte-nam-s-prekladem-knihy-dive-into-python-3/