Skip to content

Commit 94cdd93

Browse files
committed
preprint 2
1 parent 441f2e9 commit 94cdd93

File tree

4 files changed

+46
-13
lines changed

4 files changed

+46
-13
lines changed

print/deploy.sh

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
2+
#!/bin/bash
3+
set -e # exit when any command fails
4+
# asciidoctor Livro.adoc -o index.html
5+
6+
scp $1 [email protected]:/home/dh_kqh7yy/pythonfluente.com/
7+
# rsync -avz --delete ../vol1/pyfl-vol1-pre1.pdf [email protected]:~/pythonfluente.com/2/
8+
9+
# open https://pythonfluente.com/2/

vol1/Prefacio.adoc

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
:part-caption: Parte
1010
:sectnums!:
1111

12-
[dedication]
1312
__Para Marta, com todo o meu amor.__
1413

1514
[[preface]]
@@ -123,17 +122,19 @@ do <<ch_dataclass>>,
123122
que discutem padrões para sequências, padrões para mapeamentos e padrões para instâncias de classes.
124123
O último capítulo deste volume é sobre o ciclo de vida dos objetos: criação, referências, mutabilidade e coleta de lixo (_garbage collection_).
125124

126-
{pa_func_obj} (capítulos 7-10):: Lá falamos sobre funções como objetos de primeira classe na linguagem: o significado disso, como isso afeta alguns padrões de projetos populares e como aproveitar as clausuras para implementar decoradores de função. Também são vistos aqui o conceito geral de invocáveis no Python, atributos de função, introspecção, anotação de parâmetros e a nova declaração `nonlocal` no Python 3. O _{ch_type_hints_def}_
127-
introduz esse tópico importante e relativamente novo em Python.
125+
{pa_func_obj_a} (capítulos 7-8):: Aqui explicamos o que significa ter funções como objetos de primeira classe na linguagem
126+
Também são vistos aqui o conceito geral de invocáveis no Python e anotação de parâmetros com _type hints_ no {ch_type_hints_def}.
128127

129128
===== {vo_func_cls}
130129

130+
{pa_func_obj_b} (capítulos 9-10):: Lá desvendamos o conceito de _closure_, a instrução `nonlocal`, e as aplicações destes conceitos na construção de decoradores. Outro tema é o uso de funções de primeira classe para simplificar muito a implementação de alguns padrões de projeto conhecidos.
131+
131132
{pa_cls_proto} (capítulos 11-16):: Agora o foco se volta para a criação "manual" de classes—em contraste com o uso de fábricas de classe vistas no <<ch_dataclass>>.
132133
Como qualquer linguagem orientada a objetos, Python tem seu conjunto particular de recursos que podem ou não estar presentes na linguagem na qual você ou eu aprendemos programação baseada em classes. Os capítulos explicam como criar suas próprias coleções, classes base abstratas (ABCs) e protocolos, bem como as formas de lidar com herança múltipla e como implementar a sobrecarga de operadores, quando fizer sentido. O _{ch_more_types}_ continua a conversa sobre dicas de tipo.
133134

134135
===== {vo_ctrl_meta}
135136

136-
{pa_ctrl_flow} (capítulos 17-21):: Nesta parte estudadis as instruções da linguagem e as bibliotecas que vão além do controle de fluxo tradicional
137+
{pa_ctrl_flow} (capítulos 17-21):: Nesta parte estudamos as instruções da linguagem e as bibliotecas que vão além do controle de fluxo tradicional
137138
(condicionais, laços e sub-rotinas). Começamos com os geradores, visitamos a seguir os gerenciadores de contexto e as corrotinas, incluindo a desafiadora mas poderosa sintaxe do `yield from`. O _{ch_with_match}_ inclui um exemplo significativo, usando _pattern matching_ em um interpretador de linguagem simples mas funcional. O _{ch_concurrency_models}_ é novo, apresentando uma visão geral das alternativas para processamento concorrente e paralelo no Python, suas limitações, e como a arquitetura de software permite ao Python operar na escala da Web. Reescrevi o capítulo sobre _programação assíncrona_, para enfatizar os recursos centrais da linguagem—por exemplo, `await`, `async def`, `async for` e `async with`, e mostrar como eles são usados com _asyncio_ e outros frameworks.
138139

139140
{pa_metaprog} (capítulos 22-24):: Essa parte começa com uma revisão de técnicas para criação de classes com atributos criados dinamicamente para lidar com dados semi-estruturados, tal como conjuntos de dados JSON. A seguir tratamos do mecanismo familiar das propriedades, antes de mergulhar no funcionamento do acesso a atributos de objetos no Python em um nível mais baixo, usando descritores. A relação entre funções, métodos e descritores é explicada. Ao longo daquele volume, a implementação passo a passo de uma biblioteca de validação de campos revela questões sutis, levando às ferramentas avançadas do capítulo final: decoradores de classes e metaclasses.
Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
// Substituições para referências cruzadas a partir do volume I
22

33
// Vol.1
4-
:vo_data_str: Volume 1—Estruturas de dados
4+
:vo_data_str: Volume 1: dados + funções
55
// Parte I
66
:pa_data: Parte I—Estruturas de dados
77
:ch_data_model: Cap. 1—O modelo de dados de Python
@@ -11,11 +11,12 @@
1111
:ch_dataclass: Cap. 5—Fábricas de classes de dados
1212
:ch_refs_mut_mem: Cap. 6—Referências, mutabilidade, e memória
1313
// Parte II
14-
:pa_func_obj: Parte II—Funções como objetos
14+
:pa_func_obj_a: Parte IIa—Funções como objetos
1515
:ch_func_objects: Cap. 7—Funções como objetos de primeira classe
1616
:ch_type_hints_def: Cap. 8—Dicas de tipo em funções
1717
// Vol.2
18-
:vo_func_cls: Volume 2—Decoradores, classes e protocolos
18+
:pa_func_obj_b: Parte IIb—Funções como objetos
19+
:vo_func_cls: Volume 2: classes + protocolos
1920
:ch_closure_decorator: Cap. 9—Decoradores e Clausuras (vol. 2)
2021
:ch_design_patterns: Cap. 10—Padrões de projetos com funções de primeira classe (vol. 2)
2122
// Parte III
@@ -27,7 +28,7 @@
2728
:ch_more_types: Cap. 15—Mais dicas de tipo (vol. 2)
2829
:ch_op_overload: Cap. 16—Sobrecarga de operadores (vol. 2)
2930
// Vol.3
30-
:vo_ctrl_meta: Volume 3—Concorrência e metaprogramação
31+
:vo_ctrl_meta: Volume 3: controle + metaprogramação
3132
// Parte IV
3233
:pa_ctrl_flow: Parte IV—Controle de fluxo
3334
:ch_generators: Cap. 17—Iteradores, geradores e corrotinas clássicas (vol. 3)

vol1/vol1.adoc

Lines changed: 27 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
= Python Fluente: dados e funções
1+
= Python Fluente: 2ª edição, volume 1&#x3a; dados e funções
22
:doctype: book
33
:media: prepress
44
:hide-uri-scheme:
@@ -12,13 +12,35 @@
1212
:sectnumlevels: 4
1313
:sectlinks:
1414
:data-uri:
15-
:toc: left
15+
:toc: macro
1616
:toclevels: 2
1717
:!chapter-signifier:
18-
:front-cover-image: image:xilo_calango_tc_flat.png[fit=cover]
19-
2018
include::../print/attrib-print-pt-br.adoc[]
21-
include::xrefs-v1.adoc[]
19+
include::titulos-vol1.adoc[]
20+
21+
[colophon%notitle%nonfacing]
22+
= Colophon
23+
24+
Python Fluente, 2ª edição, volume 1: dados e funções
25+
26+
(C) 2025 Luciano Ramalho
27+
28+
Tradução autorizada de _Fluent Python Second Edition_ (O'Reilly, 2022)
29+
30+
Tradução: Paulo Candido Oliveira Filho
31+
32+
Revisão: Luciano Ramalho, com colaborações da comunidade Python
33+
34+
Capa: ???
35+
36+
Miolo: feito com Asciidoctor por Luciano Ramalho.
37+
38+
39+
40+
2ª pré-impressão
41+
42+
toc::[]
43+
2244
include::Prefacio.adoc[]
2345

2446
[[data_structures_part]]

0 commit comments

Comments
 (0)