Esse projeto tem como objetivo traduzir e disponibilizar gratuitamente em português o livro The Swift Programming Language.
Cada tópico do livro tem uma issue. Para iniciar a tradução de um tópico:
- Abra a aba issues desse repositório.
- Ordene as issues pelas mais antigas.
- Abra a issue do tópico que você deseja traduzir.
- Verifique na respectiva issue se alguém já não está traduzindo. Quando alguém pegar uma dessas
sessao/topico
para traduzir, terá o nome atribuído a issue. - Se ninguém estiver traduzindo, comente na issue avisando que irá traduzí-la e você terá seu nome atribuído a ela.
Para facilitar o processo de revisão e diminuir as inconsistências entre traduções, quem contribuir deverá seguir algumas convenções:
- Não traduzir palavras reservadas.
- Na dúvida entre traduzir ou não determinado termo, deixar o termo em inglês.
- Criar Branches no padrão
sessao/topico
e traduzir por Sessão e Tópico (textos mais internos dentro da Sessão). - Pull Requests devem ser feitos para
main
, marcando a Issue que resolvem.
A tradução deverá ser feita através de Forks, com branches nomeadas por sessão e tópico, com letras minúsculas, seguindo o seguinte padrão:
nome-da-sessao/nome-do-topico
Exemplo:
a-swift-tour/control-flow
Caso não existam tópicos para determinada sessão, a branch deve ter somente o nome da sessão:
nome-da-sessao
Os Pull Requests devem ser feitos diretamente para a branch main
, e utilizar o template do repositório específico para PRs. Lembre-se de referenciar a respectiva issue no PR. A revisão será feita avaliando a tradução em si, a coerência do texto da tradução, e a coerência com as traduções anteriores.
Existe pouco ou nenhum material gratuito, em Português, sobre Swift. Contribuindo com a tradução deste livro, você estará fomentando a literatura acerca do tema além de viabilizar o acesso de tais conteúdos a um número ainda maior de pessoas. Sem contar que, ao mesmo tempo, você estará estudando, revisando, e aprendendo recursos da linguagem que talvez você ainda não conheça.
Com esforço coletivo, conseguiremos finalizar a tradução e facilitar o aprendizado de Swift em Português.
Na tabela abaixo estão listadas algumas palavras importantes que aparecem com recorrência no livro e suas respectivas traduções para manter consistência. Se você encontrar uma palavra que acredite que deve ser incluída na tabela, submeta um pull request com a adição.
Original | Tradução |
---|---|
Tuple | Tupla |
Range | Intervalo |
To assign/assigned | atribuir/atribuído |
Bitwise | Bit a Bit |
Array | Array |
Set | Set |
Dictionary | Dicionário |
Class | Classe |
Struct | Estrutura |
Enumeration | Enumeração |
Closure | Closure |
Getter | Getter |
Setter | Setter |
Lazy Properties | Propriedades Lazy |
In-Out Parameters | Parâmetros In-Out |
Importante: Palavras que não são traduzidas devem ser marcadas no texto em itálico.
- Closures are self-contained blocks of functionality that can be passed around and used in your code. Closures in Swift are similar to blocks in C and Objective-C and to lambdas in other programming languages.
+ _Closures_ são blocos autocontidos de funcionalidade que podem ser passados e usados em seu código. _Closures_ em Swift são semelhantes a blocos em C e Objective-C e _lambdas_ em outras linguagens de programação.
Nos blocos de código somente os comentários devem ser traduzidos. Menções a palavras do código, como tipos, variáveis, e funções, devem ser marcadas com aspas simples.
let string1 = "hello"
let string2 = " there"
var welcome = string1 + string2
- // welcome now equals "hello there"
+ // 'welcome' agora é igual a "hello there"
Há um repositório arquivado com um projeto de tradução antigo que está incompleto e foi descontinuado em favor desse projeto novo que é um fork do repositório oficial com suporte ao DocC. O projeto antigo pode ser utilizado como base para a tradução mas é importante que o texto seja revisado porque pode haver diferenças no conteúdo ou a tradução pode não estar adequada às regras definidas nesse guia.