Skip to content
This repository has been archived by the owner on May 26, 2020. It is now read-only.

Commit

Permalink
Revisao e correcoes de traducao
Browse files Browse the repository at this point in the history
  • Loading branch information
giovanigenerali committed Nov 21, 2010
1 parent c4528e2 commit 695d3ce
Show file tree
Hide file tree
Showing 8 changed files with 61 additions and 61 deletions.
32 changes: 16 additions & 16 deletions code-organization.xml
Expand Up @@ -21,7 +21,7 @@
<title>Conceitos Chave</title>

<para>Antes de irmos para os padrões de organização de código, é importante
entender alguns conceitos que são comuns a todos bons padrões de de organização
entender alguns conceitos que são comuns a todos bons padrões de organização
de código.</para>

<itemizedlist>
Expand All @@ -48,13 +48,13 @@
<para>Unidades de funcionalidade devem ser <link
xlink:href="http://en.wikipedia.org/wiki/Loose_coupling">fracamente
acopladas</link> — uma unidade de funcionalidade deve conseguir existir
por si só, e comunicação entre unidades devem ser manipuladas através
por si só, e a comunicação entre unidades devem ser manipuladas através
de um sistema de mensagens, como eventos customizados ou pub/sub. Evite
comunicação direta entre unidades de funcionalidade sempre que possível.</para>
</listitem>

<listitem>
<para>Unidades de funcionalidade devem ser divididas em pequenos médodos
<para>Unidades de funcionalidade devem ser divididas em pequenos métodos
que fazem exatamente uma só coisa. Se seus métodos são maiores que algumas
linhas, você deve considerar uma refatoração.</para>
</listitem>
Expand Down Expand Up @@ -117,15 +117,15 @@ myFeature.readSettings(); // loga { foo : 'bar' }
<para>O literal objeto acima é simplesmente um objeto associado a uma
variável. O objeto tem uma propriedade e vários métodos. Todas as propriedades
e métodos são públicas, então qualquer parte da sua aplicação pode ver
as as propriedades e chamar métodos no objeto. Enquanto há um método
as propriedades e chamar métodos no objeto. Enquanto há um método
init. não há nada requerendo que ele seja chamado antes do objeto
estar funcional. </para>

<para>Como aplicaríamos este padrão no código com jQuery? Vamos dizer
que nós temos este código escrito no estilo tradicional do jQuery:</para>

<programlisting>// carrega algum conteúdo ao clicar num item da lista
// utilizando o ID do item da lista e esconde conteúdo
// utilizando o ID do item da lista e esconde o conteúdo
// em itens de lista similares
$(document).ready(function() {
$('#myFeature li')
Expand All @@ -148,13 +148,13 @@ $(document).ready(function() {
<para>Se isso for extender nossa aplicação, deixar como está pode ser
legal. Por outro lado, se esse for um pedaço de uma aplicação maior,
nós temos que manter esta funcionalidade separada da funcionalidade
não relacionada. Talvez nós ainda queiramos mover a URL pra fora do
não relacionada. Talvez nós ainda queiramos mover a URL para fora do
código e dentro de uma área de configuração. Por último, nós talvez
precisaremos quebrar o encadeamento de métodos para ficar mais fácil
modificar pedaços de funcionalidade depois. </para>

<example>
<title>Usando um literal de objeto para uma feature do jQuery</title>
<title>Usando um literal de objeto numa funcionalidade do jQuery</title>

<programlisting>var myFeature = {
init : function(settings) {
Expand Down Expand Up @@ -300,7 +300,7 @@ feature.sayPrivateThing();
por causa que ambas foram definidas no mesmo escopo de sayPrivateThing.</para>

<para>Este padrão é poderoso pois, da mesma forma que você pode obter
dos nomes de variáveis, ele pode dar a você variáveis privadas e funções
os nomes de variáveis, ele pode dar a você variáveis privadas e funções
enquanto expõe uma API limitada consistindo das propriedades retornadas
dos objetos e métodos.</para>

Expand Down Expand Up @@ -380,15 +380,15 @@ feature.sayPrivateThing();
e usada com permissão do autor do RequireJS, James Burke.</para>
</note>

<para>Quando um projeto alcança um determinado tamanho, gerenciar modulos
<para>Quando um projeto alcança um determinado tamanho, gerenciar módulos
de scripts começa a ficar complicado. Você precisa ter certeza da seqüência
correta dos scripts e você começa a pensar seriamente em combinar scripts em
um único arquivo, para que somente uma ou um número pequeno de requisições
sejam feitas para carregar os scripts. Você pode também carregar código assim
que necessário, depois que a página carregar. </para>

<para>O RequireJS é uma ferramenta para gerenciamento de dependências feita pelo
James Burke e pode lhe ajudar a gerenciar módulos de scripts, carrega-los na
James Burke e pode lhe ajudar a gerenciar módulos de scripts, carregá-los na
ordem correta e tornar fácil a combinação de scripts mais tarde através de
uma ferramenta própria de otimização, sem necessidade de alterar seu código
de marcação. Ele também lhe fornece um meio fácil de carregar os scripts depois
Expand Down Expand Up @@ -477,7 +477,7 @@ feature.sayPrivateThing();
<section>
<title>Criando módulos reusáveis com RequireJS</title>

<para>RequireJS torna fácil a dafinição de módulos reusáveis via
<para>RequireJS torna fácil a definição de módulos reusáveis via
<code>require.def()</code>. Um módulo RequireJS pode ter dependências que
podem ser usadas para definir um módulo e um módulo RequireJS pode retornar
um valor - um objeto, uma função, o que for - que pode ser consumido por
Expand All @@ -501,7 +501,7 @@ feature.sayPrivateThing();
<para>Este exemplo seria melhor armazenado no arquivo my/simpleshirt.js.
</para>

<para>Se seu módulo possui dependências, você pode especifica-las como
<para>Se seu módulo possui dependências, você pode especificá-las como
segundo argumento para <code>require.def()</code> (como um array) e então
passar uma função como terceiro argumento. A função será chamada para definir
o módulo quando todas as dependências tiverem sido carregadas.
Expand Down Expand Up @@ -539,7 +539,7 @@ my/shirt.js</programlisting>
<para>A função que define <code>my/shirt</code> não é chamada até
que os módulos <code>my/cart</code> e <code>my/inventory</code> sejam
carregados, e a função recebe os módulos como argumentos
<code>cart</code> e <code>inventory</code>. A ordem que dos argumentos
<code>cart</code> e <code>inventory</code>. A ordem dos argumentos
da função precisam combinar com a ordem em que as dependências foram
requiridas no array de dependências. O objeto retornado pela chamada da
função define o módulo <code>my/shirt</code>. Por definir os módulos
Expand Down Expand Up @@ -598,7 +598,7 @@ webapp/scripts/jquery.beta.js</programlisting>
appDir: "../",
baseUrl: "scripts/",
dir: "../../webapp-build",
//Comente a linha de otimização se você quer
//Comente a linha de otimização (optimize) se você quer
//o código minificado pelo Compilador Closure Compiler utilizando
//o modo de otimização "simple"
optimize: "none",
Expand All @@ -612,7 +612,7 @@ webapp/scripts/jquery.beta.js</programlisting>
</example>

<para>Para usar a ferramenta de build, você precisa do Java6 instalado. O
Compilador Closure é usado para o passo de minificação do JavaScirpt
Compilador Closure é usado para o passo de minificação do JavaScript
(se <code>optimize:
"none"</code> estiver comentado), e requer o Java 6. </para>

Expand Down Expand Up @@ -663,7 +663,7 @@ myPortlet.$element.appendTo('body');</programlisting>

<programlisting>myPortlet.open(); // força o estado aberto
myPortlet.close(); // força o estado fechado
myPortlet.toggle(); // inverte o estado open/close
myPortlet.toggle(); // inverte o estado aberto/fechado
myPortlet.refresh(); // atualiza o conteúdo
myPortlet.destroy(); // remove o portlet da página
myPortlet.setSource('data/html/onions.html');
Expand Down
22 changes: 11 additions & 11 deletions custom-events.xml
Expand Up @@ -23,7 +23,7 @@
satisfazer bem suas necessidades. Acontece que eventos customizados oferecem
um jeito completamente novo de pensar sobre JavaScript orientado a eventos.
Ao invés de focar no elemento que dispara uma ação, eventos customizados
colocam o holoforte no elemento em ação. Isso traz muitos benefícios,
colocam o holoforte no elemento em ação. Isso traz muitos benefícios,
incluindo:</para>

<itemizedlist>
Expand Down Expand Up @@ -276,7 +276,7 @@ $(document).trigger('myCustomEvent', [ 'bim', 'baz' ]);</programlisting>
<term>populate</term>

<listitem>
<para>Recebe os dados retornados em JSON e usa-os para para
<para>Recebe os dados retornados em JSON e usa-os para
alimentar o container.</para>
</listitem>
</varlistentry>
Expand All @@ -286,9 +286,9 @@ $(document).trigger('myCustomEvent', [ 'bim', 'baz' ]);</programlisting>

<listitem>
<para>Remove o container da página depois que o usuário efetua
a requisição para faze-lo. A verificação pode ser ignorada
se true for passado como segundo argumento do manipulador de
eventos. O evento remove também remove o termo associado com o
a requisição para fazê-lo. A verificação pode ser ignorada
se <code>true</code> for passado como segundo argumento do manipulador de
eventos. O evento remove também o termo associado com o
container de resultados do objeto global contendo o termo de
busca.</para>
</listitem>
Expand All @@ -298,7 +298,7 @@ $(document).trigger('myCustomEvent', [ 'bim', 'baz' ]);</programlisting>
<term>collapse</term>

<listitem>
<para>Adiciona a classe collapsed ao container, que esconderá
<para>Adiciona a classe <code>collapsed</code> ao container, que esconderá
os resultados via CSS. Ele também irá mudar o botão “Collapse”
do container em um botão “Expand”.</para>
</listitem>
Expand All @@ -308,14 +308,14 @@ $(document).trigger('myCustomEvent', [ 'bim', 'baz' ]);</programlisting>
<term>expand</term>

<listitem>
<para>Remove a classe collapsed do container. Ele também irá
<para>Remove a classe <code>collapsed</code> do container. Ele também irá
mudar o botão “Expand” em um botão “Collapse”.</para>
</listitem>
</varlistentry>
</variablelist>

<para>O plugin é responsável por adicionar os botões de ação ao container.
Ele vinvula cada evento de clique à cada item da lista de ações e usa
Ele vincúla cada evento de clique à cada item da lista de ações e usa
a classe do item de lista para determinar qual evento customizado será
disparado no container de resultados correspondente. </para>

Expand Down Expand Up @@ -345,7 +345,7 @@ $(document).trigger('myCustomEvent', [ 'bim', 'baz' ]);</programlisting>
// evento ele irá disparar no painel de resultados.
$a.find('li').click(function() {
// passa o li que foi clicado para a função
// para que o mesmo possa manipulado se necessário
// para que o mesmo possa ser manipulado se necessário
$results.trigger($(this).attr('class'), [ $(this) ]);
});
});
Expand Down Expand Up @@ -504,7 +504,7 @@ $.fn.twitterResult.events = {

<para>Vamos começar ligando nossa caixa de texto e o botão “Load Trending
Terms”. Para a caixa de texto, nós iremos capturar o termo que foi
digitado e iremos passa-lo para o evento <code>getResults</code> do
digitado e iremos passá-lo para o evento <code>getResults</code> do
container do Twitter. O evento <code>getTrends</code> será disparado
ao clicarmos no botão “Load Trending Terms”: </para>

Expand All @@ -520,7 +520,7 @@ $('#get_trends').click(function() {

<para>Nós podemos remover, contrair, expandir e atualizar todos os
resultados se adicionarmos alguns botões com IDs apropriados, assim
como mostrado abaixo. Perceba como nós estamos passando o valor true
como mostrado abaixo. Perceba como nós estamos passando o valor <code>true</code>
para o manipulador de evento como seu segundo argumento, dizendo ao
mesmo que que nós não queremos verificar a remoção de containers
individuais. </para>
Expand Down
4 changes: 2 additions & 2 deletions exercises.xml
Expand Up @@ -18,7 +18,7 @@
<para>Em alguns casos, você precisará consultar a documentação do jQuery
para poder completar um exercício, dado que nós não cobrimos todas as informações
relevantes na aula. Isto é por praticidade; a biblioteca jQuery é grande
e aprender a encontrar respostas na documentação é uma parte importe do
e aprender a encontrar respostas na documentação é uma parte importante do
processo.</para>

<para>Aqui vão algumas sugestões para combater estes problemas:</para>
Expand All @@ -40,7 +40,7 @@
<listitem>
<para>Por último, descubra o que você precisa fazer com os elementos
para resolver o problmea. Pode ser útil escrever comentários explicando
o que você vai fazer antes de você escrever código para faze-lo.</para>
o que você vai fazer antes de você escrever código para fazê-lo.</para>
</listitem>
</itemizedlist>

Expand Down
6 changes: 3 additions & 3 deletions getting-started.xml
Expand Up @@ -30,7 +30,7 @@
<para>O código que iremos usar neste livro está <link
xlink:href="http://github.com/rmurphey/jqfundamentals">num repositório do
Github</link>. Você pode baixar um arquivo .zip ou .tar contendo o código
e então descompacta-lo para usar no seu servidor. Se você souber usar o git,
e então descompactá-lo para usar no seu servidor. Se você souber usar o git,
você será bem vindo para clonar ou 'forkar' o repositório.</para>
</section>

Expand Down Expand Up @@ -138,7 +138,7 @@ console.log('olah');
</itemizedlist>

<para>Outros métodos para console estão disponíveis, apesar deles terem
uma diferença em cada browser. Os consoles também tem a habilidade de
uma diferença em cada navegador. Os consoles também tem a habilidade de
setar breakpoints e observar expressões no seu código para propósitos
de debug.</para>

Expand Down Expand Up @@ -193,7 +193,7 @@ console.log('olah');
<para>Métodos que podem ser chamados em objetos jQuery serão referenciados
como <code>$.fn.methodName</code>. Métodos que existem no namespace do
jQuery mas não podem ser chamados em objetos jQuery serão referidos como
<code>$.methodName</code>. Se não fizer muito sentido pra você, não preocupe
<code>$.methodName</code>. Se não fizer muito sentido para você, não se preocupe
- ficará mais claro à medida que você avançar no livro.
</para>

Expand Down
10 changes: 5 additions & 5 deletions javascript-basics.xml
Expand Up @@ -177,7 +177,7 @@ var bar = baz || createBar();</programlisting>

<para>Este estilo é elegante e agradevelmente curto; por isso, pode
ser difícil ler, especialmente por iniciantes. Eu o mostro aqui para
que você possa reconhece-lo no código que você lê, mas eu não recomendo
que você possa reconhecê-lo no código que você lê, mas eu não recomendo
o uso até que você esteja extremamente confortável com o que isto
significa e como você espera que se comporte.</para>
</note>
Expand All @@ -186,7 +186,7 @@ var bar = baz || createBar();</programlisting>
<section>
<title>Operadores de comparação</title>

<para>Operadores de comparação premite testar quando valores são
<para>Operadores de comparação permite testar quando valores são
equivalentes ou quando são idênticos.</para>

<example>
Expand Down Expand Up @@ -296,7 +296,7 @@ undefined; // seja cuidadoso -- undefined pode ser redefinido!</programlisting>
<title>O operador ternário</title>

<programlisting>// seta foo pra 1 se bar for verdadeiro;
// senão, seta foo pra 0
// senão, seta foo para 0
var foo = bar ? 1 : 0;</programlisting>
</example>

Expand Down Expand Up @@ -948,7 +948,7 @@ greeting();</programlisting>
<title>Uma função anônima auto-executável</title>

<programlisting>(function(){
var foo = 'Hello world';
var foo = 'Olá mundo';
})();


Expand Down Expand Up @@ -1160,7 +1160,7 @@ bim(); // bim não está definido fora da função anônima,
nós vimos como as funções têm acesso para modificar valores de variáveis. O mesmo
tipo de comportamento existe com funções definidas dentro de laços -- a função
"vê" a mudança no valor da variável mesmo depois que a função foi definida, resultando
em todos os cliques alertando 4.</para>
em todos os cliques alertando 5.</para>

<example>
<title>Como bloquear no valor de <code>i</code>?</title>
Expand Down

0 comments on commit 695d3ce

Please sign in to comment.