| |   |
| 85 | 85 | \index{Rodando o \sq} |
| 86 | 86 | \paragraph{Rodando.} Para rodar o \sq, faça o que o seu sistema operacional espera: arraste o arquivo da imagem, cuja extensão é \emph{.}\emphind{image}, para sobre o ícone da máquina virtual; ou dê um duplo clique na imagem; ou ainda, na linha de comando, digite o nome do executável da máquina virtual seguido pelo nome do arquivo da imagem. (Quando você possui múltiplas máquinas virtuais instaladas na sua máuina, o seu sistema operacional pode não identificar corretamente a que você deseja usar; neste caso, é mais seguro arrastar e soltar a imagem sobre a máquina virtual ou usar a linha de comando.) |
| 87 | 87 | |
| 88 | | Uma vez que o \sq esteja rodando, você verá uma única janela, possivelmente contendo algumas janelas de trabalho dentro de si (veja \figref{startup}), e não é tão óbvio como proceder! Você notará que não há barra de \foreign{menu}, ou pelo menos não uma útil. Na verdade, o \sq faz uso pesado de \foreign{menus} contextuais. |
| 88 | Uma vez que o \sq esteja rodando, você verá uma única janela, possivelmente contendo alguns \foreign{workspaces} (áreas de trabalho com código ou texto simples) dentro de si (veja \figref{startup}), e não é tão óbvio como proceder! Você notará que não há barra de \foreign{menu}, ou pelo menos não uma útil. Na verdade, o \sq faz uso pesado de \foreign{menus} contextuais. |
| 89 | 89 | |
| 90 | | \dothis{Rode o \sq. Você pode fechar todas as janelas de trabalho abertas dentro do mesmo clicando no ícone de um {\sf X} no canto superior esquerdo das janelas. Você pode minimizar as janelas (de modo que possam ser maximizadas depois clicando no \raisebox{-0.2ex}{{\Large $\circ$}} no topo superior direito.} |
| 90 | \dothis{Rode o \sq. Você pode fechar todas os \foreign{workspaces} abertos dentro do mesmo clicando no ícone de um {\sf X} no canto superior esquerdo das janelas. Você pode minimizar as janelas (de modo que possam ser maximizadas depois clicando no \raisebox{-0.2ex}{{\Large $\circ$}} no topo superior direito.} |
| 91 | 91 | |
| 92 | 92 | %----------------------------------------------------------------- |
| 93 | 93 | \paragraph{Primeira interação.} |
| 94 | 94 | |
| 95 | 95 | Um bom lugar para começar é o menu principal, conhecido como \ind{\foreign{world menu}}, que você pode ver na \figref{threeButtons:red}. |
| 96 | 96 | |
| 97 | | \dothis{Clique com o \foreign{mouse} no fundo da janela principal para mostrar o \foreign{world menu}, e então escolha \menu{open \ldots \go workspace} para criar uma nova área de trabalho (\foreign{workspace}).} |
| 97 | \dothis{Clique com o \foreign{mouse} no fundo da janela principal para mostrar o \foreign{world menu}, e então escolha \menu{open \ldots \go workspace} para criar uma novo \foreign{workspace} (\foreign{workspace}).} |
| 98 | 98 | |
| 99 | 99 | \begin{figure}[tbh] |
| 100 | 100 | \centering |
| … | … | |
| 128 | 128 | |
| 129 | 129 | O \emphind{botão amarelo} é o segndo mais usado dos botões do \foreign{mouse}; é usado para chamar o \foreign{menu} contextual, isto é, um \foreign{menu} com um conjunto diferente de ações dependendo do objeto que está sendo clicado; veja a \figref{threeButtons:yellow}. |
| 130 | 130 | |
| 131 | | \dothis{Digite \ct{Time now} na janela de trabalho. |
| 131 | \dothis{Digite \ct{Time now} no \foreign{workspaces}. |
| 132 | 132 | Depois disso, clique com o botão amarelo na janela e selecione \menu{print it}.} |
| 133 | 133 | |
| 134 | 134 | Finalmente, há o \emphind{botão azul}, que é usado para ativar o ``\subind{Morphic}{halo}''. O halo é um conjunto de ícones que aparecem ao redor de um objeto selecionado e são usados para realizar operações sobre o mesmo como rotação e redimensionamento; veja a \figref{threeButtons:blue}. Se você parar o \foreign{mouse} sobre um dos ícones, você verá um dica sobre sua função. |
| 135 | 135 | |
| 136 | | \dothis{Clique com o botão azul sobre a janela de trabalho. |
| 136 | \dothis{Clique com o botão azul sobre o \foreign{workspaces}. |
| 137 | 137 | Segure o ícone \raisebox{-0.4ex}{\includegraphics[width=1em]{morphicRotate}} perto do canto inferior esquerdo e o arraste para rotacionar a janela.} |
| 138 | 138 | |
| 139 | 139 | Nós recomendamos que pessoas canhotas cnfigurem seu \foreign{mouse} para colocar o \ind{botão vermelho} no lado esquerdo do \foreign{mouse}, o \ind{botão amarelo} no lado direito, e usem uma \foreign{scroll wheel} clicável, se houver uma, para o \ind{botão azul}. Se você não possui uma \foreign{scroll wheel}, você pode acessar o halo segurando a tecla \ct{alt} ou \ct{option} enquanto clica com o \ind{botão vermelho}. Se você está usando um Mac sem um segundo botão do mouse, você pode simular um segurando a tecla \clover{} enquanto clica. Entrentanto, se você vai usar o \sq freqüentemente, recomendamos que você invista em um \foreign{mouse} mais adequado. |
| … | … | |
| 160 | 160 | O \foreign{menu} \menu{World} lhe oferece uma maneira simples de acessar muitas das ferramentas que o \sq oferece. |
| 161 | 161 | |
| 162 | 162 | \dothis{Olhe as opções oferecidas pelo \foreign{menu} \menu{world\go{}open \ldots}.} |
| 163 | | Você verá uma lista de várias das principais ferramentas em \sq, incluindo o \foreign{system browser}, a ferramenta que permite navegar entre as classes do \sq, e o \foreign{workspace}, ou seja, a janela de trabalho. |
| 163 | Você verá uma lista de várias das principais ferramentas em \sq, incluindo o \foreign{system browser}, a ferramenta que permite navegar entre as classes do \sq, e o \foreign{workspace}, ou seja, a área de trabalho. |
| 164 | 164 | Você encontrará a maioria dessas ferramentas nos capítulos adiante. |
| 165 | 165 | |
| 166 | 166 | \begin{figure}[htb] |
| … | … | |
| 230 | 230 | \end{figure} |
| 231 | 231 | |
| 232 | 232 | %================================================================= |
| 233 | | \section{Workspaces and Transcripts} |
| 233 | \section{\foreign{Workspaces} e \foreign{Transcripts}} |
| 234 | 234 | \label{sec:transcript} |
| 235 | 235 | |
| 236 | | \dothis{Close all open windows. Click on the \menu{Tools} tab at the far right of the \sq environment to open the \toolsflapind.} |
| 237 | | You will see icons for some of the key tools in \sq (\figref{tools}). |
| 238 | | Drag out a \ind{transcript} and a \ind{workspace}. |
| 236 | \dothis{Feche todas as janelas abertas. Clique na aba \menu{Tools} no canto direito do ambiente \sq e abra o \toolsflapind.} |
| 237 | Você verá os ícones para algumas das ferramentas chaves do \sq (\figref{tools}). |
| 238 | Arraste um \ind{transcript} e \ind{workspace}. |
| 239 | 239 | |
| 240 | | \dothis{Position and resize the transcript and workspace windows so that the workspace just overlaps the transcript.} |
| 241 | | You can resize windows either by dragging one of the corners, or by blue-clicking the window to bring up the morphic handles, and dragging the yellow, bottom right handle. |
| 240 | \dothis{Posicione e aumente o \foreign{transcript} e o \foreign{workspace} dentro do \sq de modo que os dois estejam visíveis e um deles se sobrepondo ligeiramente ao outro.} |
| 241 | Você pode redimensionar janelas arrastando um dos cantos, ou clicando na mesma com o botão azul para exibir os halos e escolhendo o ícone amarelo do canto inferior direito. |
| 242 | 242 | |
| 243 | | At any time only one window is active; it is in front and has its label highlighted. The mouse cursor must be in the window in which you wish to type. |
| 243 | A qualquer momento somente um janela está ativa; é a que está na frente das mais e que tem o seu nome em foco. O curso do \foreign{mouse} deve estar sobre a janela se você deseja escrever sobre a mesma. |
| 244 | 244 | |
| 245 | | The transcript is an object that is often used for logging system messages. |
| 246 | | It is a kind of ``system console''. |
| 247 | | Note that the transcript is terribly slow, so if you keep it open and write to it certain operations can become 10 times slower. |
| 248 | | In addition the transcript is not thread-safe so you may experience strange problems if multiple objects write concurrently to the transcript. |
| 245 | O \foreign{transcript} é um objeto que é geralmente usada para registrar mensagens do sistema. É uma espécie de \foreign{``console''} do sistema. Note que ele é bem lento para operações que exigem melhor reposta; se você deixá-lo aberto e escrever no mesmo, algumas operações poderão ficar até dez vezes mais lentas. Em adição, o \foreign{transcript} não é reentrante, ou seja, você pode experimentar problemas se múltiplos objetos tentarem escrever concorrentemente no mesmo. |
| 249 | 246 | |
| 250 | | Workspaces are useful for typing snippets of \st code that you would like to experiment with. |
| 251 | | You can also use workspaces simply for typing arbitrarily text that you would like to remember, such as to-do lists or instructions for anyone who will use your image. |
| 252 | | Workspaces are often used to hold documentation about a captured image, as is the case with the standard image that we downloaded earlier (see \figref{startup}). |
| 247 | \foreign{Workspaces} são bem úteis para digitar pequenos pedaços de código \sq que você deseja experimentar. |
| 248 | Você também pode usar \foreign{workspaces} simplesmente para guardar texto que gostaria de relembrar depois, como listas de coisas a fazer ou instruções para usuários de sua imagem. |
| 249 | Além disso, \foreign{workspaces} também são usados para manter documentação sobre uma imagem capturada, como no caso da imagem padrão que baixamos anteriormente (veja a \figref{startup}). |
| 253 | 250 | |
| 254 | | \dothis{Type the following text into the workspace:} |
| 251 | \dothis{Digite o seguinte texto no \foreign{workspace}:} |
| 255 | 252 | \begin{code}{} |
| 256 | 253 | Transcript show: 'hello world'; cr. |
| 257 | 254 | \end{code} |
| 258 | 255 | |
| 259 | 256 | %\begin{figure}[htb] |
| 260 | 257 | %\centerline {\includegraphics[width=0.6\textwidth]{HelloWorld}} |
| 261 | | %\caption{Overlapping windows. The workspace is active.\label{fig:helloworld}} |
| 258 | %\caption{Janelas sobrepostas. O \foreign{workspace} está ativo.\label{fig:helloworld}} |
| 262 | 259 | %\end{figure} |
| 263 | 260 | |
| 264 | | Try double-clicking in the workspace at various points in the text you have just typed. |
| 265 | | Notice how an entire word, entire string, or the whole text is selected, depending on where you click. |
| 261 | Tente dar um duplo clique no \foreign{workspace} em vários pontos do texto que você acabou de gitiar. |
| 262 | Note como a palavra toda, o contexto, ou mesmo todo o texto são selecionados dependendo de onde você clicar.. |
| 266 | 263 | |
| 267 | | \dothis{Select the text you have typed and yellow-click. |
| 268 | | Select \menu{do it (d)}.} |
| 269 | | Notice how the text ``hello world'' appears in the transcript window |
| 264 | \dothis{Selecione todo o texto que você digitou e clique com o botão amarelo. |
| 265 | Selecione o \foreign{menu} \menu{do it (d)}.} |
| 266 | Note como o texto ``hello world'' aparece no \foreign{transcript} |
| 270 | 267 | (\figref{doit}). |
| 271 | | Do it again. |
| 272 | | (The \menu{(d)} in the menu item \menu{do it (d)} tells you that the keyboard shortcut to \emph{do it} is \short{d}. More on this in the next section!) |
| 268 | Execute o código novamente. |
| 269 | (O \menu{(d)} no \foreign{menu} \menu{do it (d)} indica que o atalho de teclado que você pode usar para ativar a a opção \emph{do it} é \short{d}. Mais sobre isso na próxima seção) |
| 273 | 270 | |
| 274 | 271 | \begin{figure}[htb] |
| 275 | 272 | \ifluluelse |
| 276 | 273 | {\centerline {\includegraphics[width=\textwidth]{Doit}}} |
| 277 | 274 | {\centerline {\includegraphics[scale=0.7]{Doit}}} |
| 278 | | \caption{``Doing'' an expression\label{fig:doit}} |
| 275 | \caption{``Executando'' uma expressão\label{fig:doit}} |
| 279 | 276 | \end{figure} |
| 280 | 277 | |
| 281 | | You have just evaluated your first \st expression! |
| 282 | | You just sent the message \ct{show: 'hello world'} to the \ct{Transcript} object, followed by the message \ct{cr} (carriage return). |
| 283 | | The \ct{Transcript} then decided what to do with this message, that is, it looked up its \emph{methods} for handling \ct{show:} and \ct{cr} messages and reacted appropriately. |
| 284 | | |
| 285 | | If you talk to Smalltalkers for a while, you will quickly notice that they generally do not use expressions like ``call an operation'' or ``invoke a method'', but instead they will say ``send a message''. |
| 286 | | This reflects the idea that objects are responsible for their own actions. |
| 287 | | You never \emph{tell} an object what to do\,---\,instead you politely \emph{ask} it to do something by sending it a message. |
| 288 | | The object, not you, selects the appropriate method for responding to your message. |
| 278 | Você acabou de executar a sua primeira expressão em \st! |
| 279 | O que você fez foi enviar a mensagem \ct{show: 'hello world'} ao objeto \ct{Transcript}, seguida pela mensagem \ct{cr} (quebra de linha). |
| 280 | O \ct{Transcript} então decidiu o que fazer com a mensagem, isto é, verificou em seus \emph{métodos} como lidar com as mensagens \ct{show:} e \ct{cr} e reagiu apropriadamente. |
| 289 | 281 | |
| 282 | Se você conversar com pessoas que usam \sq regularmente, você notará rapidamente que elas não usam expressões como ``invocar uma operação'' ou ``invocar um método''; ao contrário, elas sempre dizem ``enviar uma mensagem''. |
| 283 | Isto relete a idéia que objetos são responsáveis por suas próprias ações. |
| 284 | Você nunca \emph{diz} a um objeto o que fazer; você \emph{pede} polidamente que ele faça alguma coisa enviando uma mensagem para o mesmo. |
| 285 | O objeto, não você, seleciona o método apropriado para responder a sua mensagem. |
| 290 | 286 | |
| 291 | 287 | %================================================================= |
| 292 | | \section{Keyboard shortcuts} |
| 288 | \section{Atalhos de teclado} |
| 293 | 289 | |
| 294 | | If you want to evaluate an expression, you do not always have to bring up the yellow-button menu. Instead, you can use \ind{keyboard shortcuts}. These are the parenthesized expressions in the menu. Depending on your platform, you may have to press one of the modifier keys (control, alt, command, or meta). |
| 295 | | (We will indicate these generically as \short{\emph{key}}.) |
| 290 | Você você deseja executar uma expressão, você não é obrigado a usar o \foreign{mouse} a todo momento. Ao invés disso, você pode usar \ind{atalhos de teclado}, que são as letras entre parênteses que estão ao lado dos \foreign{menus}. Dependendo da plataforma que você estiver usando, você precisará de acionar uma tecla modificadora junta com o atalho (\foreign{control}, \foreign{alt}, \foreign{command} ou \foreign{meta}). |
| 291 | (Nós indicaremos esses atalhos genericamente como \short{\emph{tecla}}.) |
| 296 | 292 | |
| 297 | | \dothis{Evaluate the expression in the workspace again, but using the keyboard shortcut: \short{d}.} |
| 298 | | \index{keyboard shortcut!do it} |
| 293 | \dothis{Execute a expressão no \foreign{workspace} novamente usando o atalho apropriado: \short{d}.} |
| 294 | \index{atalhos de teclado!do it} |
| 299 | 295 | |
| 300 | | In addition to \menu{do it}, you will have noticed \menu{print it}, \menu{inspect it} and \menu{explore it}. Let's have a quick look at each of these. |
| 296 | Em adição ao \foreign{menu} \menu{do it}, você provavelmente noto também os \foreign{menus} \menu{print it}, \menu{inspect it} e \menu{explore it}. Vamos verificar rapidamente o que cada um deles faz. |
| 301 | 297 | |
| 302 | | \dothis{Type the expression \ct{3 + 4} into the workspace. Now \menu{do it} with the keyboard shortcut.} |
| 298 | \dothis{Digite a expressão \ct{3 + 4} no \foreign{workspace}. Agora execute \menu{do it} com o atalho.} |
| 303 | 299 | |
| 304 | | Do not be surprised if you saw nothing happen! What you just did is send the message \ct{+} with argument \ct{4} to the number \ct{3}. Normally the result \ct{7} will have been computed and returned to you, but since the workspace did not know what to do with this answer, it simply threw the answer away. If you want to see the result, you should \menu{print it} instead. \menu{print it} actually compiles the expression, executes it, sends the message \ct{printString} to the result, and displays the resulting string. |
| 300 | Não fique surpreso ao ver que nada aconteceu. O que você fez foi simplesmente enviar a mensagem \ct{+} com o argumento \ct{4} para o número \ct{3}. Normalmente, o resultado \ct{7} será computador e retornado para você. Mas nesse caso, já que o \foreign{workspace} não sabe o que fazer com a resposta, ele simplesmente a ignorou. Se você deseja ver o resultado, você deve usar o \foreign{menu} \menu{print it} ao invés de \menu{do it}. O \foreign{menu} \menu{print it} compila a expressão, a executa, envia a mensagem \ct{printString} parao resultado e mostra o texto resultante no próprio local onde foi invocada. |
| 305 | 301 | |
| 306 | | \dothis{Select \ct{3+4} and \menu{print it} (\short{p}).} |
| 307 | | This time we see the result we expect (\figref{printit}). |
| 308 | | \index{keyboard shortcut!print it} |
| 302 | \dothis{Selecione \ct{3+4} e use \menu{print it} (\short{p}).} |
| 303 | Desta vez você verá o valor esperado na (\figref{printit}). |
| 304 | \index{atalhos de teclado!print it} |
| 309 | 305 | |
| 310 | 306 | \begin{figure}[htb] |
| 311 | 307 | % \centerline {\includegraphics[width=0.4\textwidth]{PrintIt}} |
| 312 | 308 | \centerline {\includegraphics[scale=0.7]{PrintIt}} |
| 313 | | \caption{``Print it'' rather than ``do it''. \label{fig:printit}} |
| 309 | \caption{``Print it'' ao invés de ``do it''. \label{fig:printit}} |
| 314 | 310 | \end{figure} |
| 315 | 311 | |
| 316 | 312 | \needlines{3} |
| … | … | |
| 314 | 314 | 3 + 4 --> 7 |
| 315 | 315 | \end{code} |
| 316 | 316 | \noindent |
| 317 | | We use the notation \ct{-->} as a convention in this book to indicate that a particular \sq expression yields a given result when you \menu{print it}. |
| 317 | Nós usamos a notação \ct{-->} como uma convenção neste livro para indicar que uma expressão \sq em particular gera aquele resultado quando você usa o \foreign{menu} \menu{print it}. |
| 318 | 318 | |
| 319 | | \dothis{Delete the highlighted text ``\ct{7}'' (\sq should have selected it for you, so you can just press the delete key). Select \ct{3+4} again and this time \menu{inspect it} (\short{i}).} |
| 319 | \dothis{Exclua o texto em foco ``\ct{7}'' (o \sq o selecione para você de modo que você possa simplesmente excluí-lo. Selecione \ct{3+4} novamente e desta vez use o \foreign{menu} \menu{inspect it} (\short{i}).} |
| 320 | 320 | \noindent |
| 321 | | Now you should see a new window, called an \emphind{inspector}, with the heading \ct{SmallInteger: 7} (\figref{inspectit}). |
| 322 | | The inspector is an extremely useful tool that will allow you to browse and interact with any object in the system. |
| 323 | | The title tells us that \ct{7} is an instance of the class \clsind{SmallInteger}. |
| 324 | | The left panel allows us to browse the instance variables of an object, the values of which are shown in the right panel. |
| 325 | | The bottom panel can be used to write expressions to send messages to the object. |
| 321 | Agora você verá uma nova janela, chamada de \emphind{inspector} (inspetor), com o cabeçalho \ct{SmallInteger: 7} (\figref{inspectit}). |
| 322 | O inspetor é uma ferramenta muito útil que permite que você acesse e interaja com qualquer objeto no sistema. |
| 323 | O título lhe diz que \ct{7} é uma instância da classe \clsind{SmallInteger}. |
| 324 | O painel esquerdo permite que você acesse as variáveis de instância do objeto, cujos valores são mostrados no painel direito. |
| 325 | O painel inferior pode ser usado para escrever expressões que serão enviadas para o objeto selecionado. |
| 326 | 326 | |
| 327 | 327 | \begin{figure}[htb] |
| 328 | 328 | \centerline {\includegraphics[scale=0.7]{InspectIt}} |
| 329 | | \caption{Inspecting an object. \label{fig:inspectit}} |
| 329 | \caption{Inspecionando um objeto. \label{fig:inspectit}} |
| 330 | 330 | \end{figure} |
| 331 | 331 | |
| 332 | | \dothis{Type \ct{self squared} in the bottom panel of the inspector on \ct{7} and \menu{print it}.} |
| 332 | \dothis{Digite \ct{self squared} no painel inferior do objeto que está exibindo \ct{7} e execute \menu{print it}.} |
| 333 | 333 | |
| 334 | 334 | \needlines{2} |
| 335 | | \dothis{Close the inspector. Type the expression \ct{Object} in a workspace and this time \menu{explore it} (\short{I}, uppercased i).} |
| 336 | | \index{keyboard shortcut!explore it} |
| 335 | \dothis{Feche o \foreign{inspector}. Digite a expressão \ct{Object} em um \foreign{workspace} e desta vez escolha a opção \menu{explore it} (\short{I}).} |
| 336 | \index{atalhos de teclado!explore it} |
| 337 | 337 | \index{explorer} |
| 338 | 338 | |
| 339 | 339 | This time you should see a window labelled \clsind{Object} containing the text |
| toggle raw diff |
--- a/PortugueseBook/QuickTour/QuickTour.tex
+++ b/PortugueseBook/QuickTour/QuickTour.tex
@@ -85,16 +85,16 @@ O arquivo \emphind{sources} e a VM podem ser somente-leitura\,---\,eles podem se
\index{Rodando o \sq}
\paragraph{Rodando.} Para rodar o \sq, faça o que o seu sistema operacional espera: arraste o arquivo da imagem, cuja extensão é \emph{.}\emphind{image}, para sobre o ícone da máquina virtual; ou dê um duplo clique na imagem; ou ainda, na linha de comando, digite o nome do executável da máquina virtual seguido pelo nome do arquivo da imagem. (Quando você possui múltiplas máquinas virtuais instaladas na sua máuina, o seu sistema operacional pode não identificar corretamente a que você deseja usar; neste caso, é mais seguro arrastar e soltar a imagem sobre a máquina virtual ou usar a linha de comando.)
-Uma vez que o \sq esteja rodando, você verá uma única janela, possivelmente contendo algumas janelas de trabalho dentro de si (veja \figref{startup}), e não é tão óbvio como proceder! Você notará que não há barra de \foreign{menu}, ou pelo menos não uma útil. Na verdade, o \sq faz uso pesado de \foreign{menus} contextuais.
+Uma vez que o \sq esteja rodando, você verá uma única janela, possivelmente contendo alguns \foreign{workspaces} (áreas de trabalho com código ou texto simples) dentro de si (veja \figref{startup}), e não é tão óbvio como proceder! Você notará que não há barra de \foreign{menu}, ou pelo menos não uma útil. Na verdade, o \sq faz uso pesado de \foreign{menus} contextuais.
-\dothis{Rode o \sq. Você pode fechar todas as janelas de trabalho abertas dentro do mesmo clicando no ícone de um {\sf X} no canto superior esquerdo das janelas. Você pode minimizar as janelas (de modo que possam ser maximizadas depois clicando no \raisebox{-0.2ex}{{\Large $\circ$}} no topo superior direito.}
+\dothis{Rode o \sq. Você pode fechar todas os \foreign{workspaces} abertos dentro do mesmo clicando no ícone de um {\sf X} no canto superior esquerdo das janelas. Você pode minimizar as janelas (de modo que possam ser maximizadas depois clicando no \raisebox{-0.2ex}{{\Large $\circ$}} no topo superior direito.}
%-----------------------------------------------------------------
\paragraph{Primeira interação.}
Um bom lugar para começar é o menu principal, conhecido como \ind{\foreign{world menu}}, que você pode ver na \figref{threeButtons:red}.
-\dothis{Clique com o \foreign{mouse} no fundo da janela principal para mostrar o \foreign{world menu}, e então escolha \menu{open \ldots \go workspace} para criar uma nova área de trabalho (\foreign{workspace}).}
+\dothis{Clique com o \foreign{mouse} no fundo da janela principal para mostrar o \foreign{world menu}, e então escolha \menu{open \ldots \go workspace} para criar uma novo \foreign{workspace} (\foreign{workspace}).}
\begin{figure}[tbh]
\centering
@@ -128,12 +128,12 @@ O \sq evita termos como ``botão esquerdo'' porque computadores diferentes possu
O \emphind{botão amarelo} é o segndo mais usado dos botões do \foreign{mouse}; é usado para chamar o \foreign{menu} contextual, isto é, um \foreign{menu} com um conjunto diferente de ações dependendo do objeto que está sendo clicado; veja a \figref{threeButtons:yellow}.
-\dothis{Digite \ct{Time now} na janela de trabalho.
+\dothis{Digite \ct{Time now} no \foreign{workspaces}.
Depois disso, clique com o botão amarelo na janela e selecione \menu{print it}.}
Finalmente, há o \emphind{botão azul}, que é usado para ativar o ``\subind{Morphic}{halo}''. O halo é um conjunto de ícones que aparecem ao redor de um objeto selecionado e são usados para realizar operações sobre o mesmo como rotação e redimensionamento; veja a \figref{threeButtons:blue}. Se você parar o \foreign{mouse} sobre um dos ícones, você verá um dica sobre sua função.
-\dothis{Clique com o botão azul sobre a janela de trabalho.
+\dothis{Clique com o botão azul sobre o \foreign{workspaces}.
Segure o ícone \raisebox{-0.4ex}{\includegraphics[width=1em]{morphicRotate}} perto do canto inferior esquerdo e o arraste para rotacionar a janela.}
Nós recomendamos que pessoas canhotas cnfigurem seu \foreign{mouse} para colocar o \ind{botão vermelho} no lado esquerdo do \foreign{mouse}, o \ind{botão amarelo} no lado direito, e usem uma \foreign{scroll wheel} clicável, se houver uma, para o \ind{botão azul}. Se você não possui uma \foreign{scroll wheel}, você pode acessar o halo segurando a tecla \ct{alt} ou \ct{option} enquanto clica com o \ind{botão vermelho}. Se você está usando um Mac sem um segundo botão do mouse, você pode simular um segurando a tecla \clover{} enquanto clica. Entrentanto, se você vai usar o \sq freqüentemente, recomendamos que você invista em um \foreign{mouse} mais adequado.
@@ -160,7 +160,7 @@ A maior parte dos \foreign{menus} do \sq não são modais, isto é, você pode d
O \foreign{menu} \menu{World} lhe oferece uma maneira simples de acessar muitas das ferramentas que o \sq oferece.
\dothis{Olhe as opções oferecidas pelo \foreign{menu} \menu{world\go{}open \ldots}.}
-Você verá uma lista de várias das principais ferramentas em \sq, incluindo o \foreign{system browser}, a ferramenta que permite navegar entre as classes do \sq, e o \foreign{workspace}, ou seja, a janela de trabalho.
+Você verá uma lista de várias das principais ferramentas em \sq, incluindo o \foreign{system browser}, a ferramenta que permite navegar entre as classes do \sq, e o \foreign{workspace}, ou seja, a área de trabalho.
Você encontrará a maioria dessas ferramentas nos capítulos adiante.
\begin{figure}[htb]
@@ -230,87 +230,83 @@ Clique no ícone rosa que contém uma cruz e o ``blob'' será destruído.
\end{figure}
%=================================================================
-\section{Workspaces and Transcripts}
+\section{\foreign{Workspaces} e \foreign{Transcripts}}
\label{sec:transcript}
-\dothis{Close all open windows. Click on the \menu{Tools} tab at the far right of the \sq environment to open the \toolsflapind.}
-You will see icons for some of the key tools in \sq (\figref{tools}).
-Drag out a \ind{transcript} and a \ind{workspace}.
+\dothis{Feche todas as janelas abertas. Clique na aba \menu{Tools} no canto direito do ambiente \sq e abra o \toolsflapind.}
+Você verá os ícones para algumas das ferramentas chaves do \sq (\figref{tools}).
+Arraste um \ind{transcript} e \ind{workspace}.
-\dothis{Position and resize the transcript and workspace windows so that the workspace just overlaps the transcript.}
-You can resize windows either by dragging one of the corners, or by blue-clicking the window to bring up the morphic handles, and dragging the yellow, bottom right handle.
+\dothis{Posicione e aumente o \foreign{transcript} e o \foreign{workspace} dentro do \sq de modo que os dois estejam visíveis e um deles se sobrepondo ligeiramente ao outro.}
+Você pode redimensionar janelas arrastando um dos cantos, ou clicando na mesma com o botão azul para exibir os halos e escolhendo o ícone amarelo do canto inferior direito.
-At any time only one window is active; it is in front and has its label highlighted. The mouse cursor must be in the window in which you wish to type.
+A qualquer momento somente um janela está ativa; é a que está na frente das mais e que tem o seu nome em foco. O curso do \foreign{mouse} deve estar sobre a janela se você deseja escrever sobre a mesma.
-The transcript is an object that is often used for logging system messages.
-It is a kind of ``system console''.
-Note that the transcript is terribly slow, so if you keep it open and write to it certain operations can become 10 times slower.
-In addition the transcript is not thread-safe so you may experience strange problems if multiple objects write concurrently to the transcript.
+O \foreign{transcript} é um objeto que é geralmente usada para registrar mensagens do sistema. É uma espécie de \foreign{``console''} do sistema. Note que ele é bem lento para operações que exigem melhor reposta; se você deixá-lo aberto e escrever no mesmo, algumas operações poderão ficar até dez vezes mais lentas. Em adição, o \foreign{transcript} não é reentrante, ou seja, você pode experimentar problemas se múltiplos objetos tentarem escrever concorrentemente no mesmo.
-Workspaces are useful for typing snippets of \st code that you would like to experiment with.
-You can also use workspaces simply for typing arbitrarily text that you would like to remember, such as to-do lists or instructions for anyone who will use your image.
-Workspaces are often used to hold documentation about a captured image, as is the case with the standard image that we downloaded earlier (see \figref{startup}).
+\foreign{Workspaces} são bem úteis para digitar pequenos pedaços de código \sq que você deseja experimentar.
+Você também pode usar \foreign{workspaces} simplesmente para guardar texto que gostaria de relembrar depois, como listas de coisas a fazer ou instruções para usuários de sua imagem.
+Além disso, \foreign{workspaces} também são usados para manter documentação sobre uma imagem capturada, como no caso da imagem padrão que baixamos anteriormente (veja a \figref{startup}).
-\dothis{Type the following text into the workspace:}
+\dothis{Digite o seguinte texto no \foreign{workspace}:}
\begin{code}{}
Transcript show: 'hello world'; cr.
\end{code}
%\begin{figure}[htb]
%\centerline {\includegraphics[width=0.6\textwidth]{HelloWorld}}
-%\caption{Overlapping windows. The workspace is active.\label{fig:helloworld}}
+%\caption{Janelas sobrepostas. O \foreign{workspace} está ativo.\label{fig:helloworld}}
%\end{figure}
-Try double-clicking in the workspace at various points in the text you have just typed.
-Notice how an entire word, entire string, or the whole text is selected, depending on where you click.
+Tente dar um duplo clique no \foreign{workspace} em vários pontos do texto que você acabou de gitiar.
+Note como a palavra toda, o contexto, ou mesmo todo o texto são selecionados dependendo de onde você clicar..
-\dothis{Select the text you have typed and yellow-click.
-Select \menu{do it (d)}.}
-Notice how the text ``hello world'' appears in the transcript window
+\dothis{Selecione todo o texto que você digitou e clique com o botão amarelo.
+Selecione o \foreign{menu} \menu{do it (d)}.}
+Note como o texto ``hello world'' aparece no \foreign{transcript}
(\figref{doit}).
-Do it again.
-(The \menu{(d)} in the menu item \menu{do it (d)} tells you that the keyboard shortcut to \emph{do it} is \short{d}. More on this in the next section!)
+Execute o código novamente.
+(O \menu{(d)} no \foreign{menu} \menu{do it (d)} indica que o atalho de teclado que você pode usar para ativar a a opção \emph{do it} é \short{d}. Mais sobre isso na próxima seção)
\begin{figure}[htb]
\ifluluelse
{\centerline {\includegraphics[width=\textwidth]{Doit}}}
{\centerline {\includegraphics[scale=0.7]{Doit}}}
-\caption{``Doing'' an expression\label{fig:doit}}
+\caption{``Executando'' uma expressão\label{fig:doit}}
\end{figure}
-You have just evaluated your first \st expression!
-You just sent the message \ct{show: 'hello world'} to the \ct{Transcript} object, followed by the message \ct{cr} (carriage return).
-The \ct{Transcript} then decided what to do with this message, that is, it looked up its \emph{methods} for handling \ct{show:} and \ct{cr} messages and reacted appropriately.
-
-If you talk to Smalltalkers for a while, you will quickly notice that they generally do not use expressions like ``call an operation'' or ``invoke a method'', but instead they will say ``send a message''.
-This reflects the idea that objects are responsible for their own actions.
-You never \emph{tell} an object what to do\,---\,instead you politely \emph{ask} it to do something by sending it a message.
-The object, not you, selects the appropriate method for responding to your message.
+Você acabou de executar a sua primeira expressão em \st!
+O que você fez foi enviar a mensagem \ct{show: 'hello world'} ao objeto \ct{Transcript}, seguida pela mensagem \ct{cr} (quebra de linha).
+O \ct{Transcript} então decidiu o que fazer com a mensagem, isto é, verificou em seus \emph{métodos} como lidar com as mensagens \ct{show:} e \ct{cr} e reagiu apropriadamente.
+Se você conversar com pessoas que usam \sq regularmente, você notará rapidamente que elas não usam expressões como ``invocar uma operação'' ou ``invocar um método''; ao contrário, elas sempre dizem ``enviar uma mensagem''.
+Isto relete a idéia que objetos são responsáveis por suas próprias ações.
+Você nunca \emph{diz} a um objeto o que fazer; você \emph{pede} polidamente que ele faça alguma coisa enviando uma mensagem para o mesmo.
+O objeto, não você, seleciona o método apropriado para responder a sua mensagem.
%=================================================================
-\section{Keyboard shortcuts}
+\section{Atalhos de teclado}
-If you want to evaluate an expression, you do not always have to bring up the yellow-button menu. Instead, you can use \ind{keyboard shortcuts}. These are the parenthesized expressions in the menu. Depending on your platform, you may have to press one of the modifier keys (control, alt, command, or meta).
-(We will indicate these generically as \short{\emph{key}}.)
+Você você deseja executar uma expressão, você não é obrigado a usar o \foreign{mouse} a todo momento. Ao invés disso, você pode usar \ind{atalhos de teclado}, que são as letras entre parênteses que estão ao lado dos \foreign{menus}. Dependendo da plataforma que você estiver usando, você precisará de acionar uma tecla modificadora junta com o atalho (\foreign{control}, \foreign{alt}, \foreign{command} ou \foreign{meta}).
+(Nós indicaremos esses atalhos genericamente como \short{\emph{tecla}}.)
-\dothis{Evaluate the expression in the workspace again, but using the keyboard shortcut: \short{d}.}
-\index{keyboard shortcut!do it}
+\dothis{Execute a expressão no \foreign{workspace} novamente usando o atalho apropriado: \short{d}.}
+\index{atalhos de teclado!do it}
-In addition to \menu{do it}, you will have noticed \menu{print it}, \menu{inspect it} and \menu{explore it}. Let's have a quick look at each of these.
+Em adição ao \foreign{menu} \menu{do it}, você provavelmente noto também os \foreign{menus} \menu{print it}, \menu{inspect it} e \menu{explore it}. Vamos verificar rapidamente o que cada um deles faz.
-\dothis{Type the expression \ct{3 + 4} into the workspace. Now \menu{do it} with the keyboard shortcut.}
+\dothis{Digite a expressão \ct{3 + 4} no \foreign{workspace}. Agora execute \menu{do it} com o atalho.}
-Do not be surprised if you saw nothing happen! What you just did is send the message \ct{+} with argument \ct{4} to the number \ct{3}. Normally the result \ct{7} will have been computed and returned to you, but since the workspace did not know what to do with this answer, it simply threw the answer away. If you want to see the result, you should \menu{print it} instead. \menu{print it} actually compiles the expression, executes it, sends the message \ct{printString} to the result, and displays the resulting string.
+Não fique surpreso ao ver que nada aconteceu. O que você fez foi simplesmente enviar a mensagem \ct{+} com o argumento \ct{4} para o número \ct{3}. Normalmente, o resultado \ct{7} será computador e retornado para você. Mas nesse caso, já que o \foreign{workspace} não sabe o que fazer com a resposta, ele simplesmente a ignorou. Se você deseja ver o resultado, você deve usar o \foreign{menu} \menu{print it} ao invés de \menu{do it}. O \foreign{menu} \menu{print it} compila a expressão, a executa, envia a mensagem \ct{printString} parao resultado e mostra o texto resultante no próprio local onde foi invocada.
-\dothis{Select \ct{3+4} and \menu{print it} (\short{p}).}
-This time we see the result we expect (\figref{printit}).
-\index{keyboard shortcut!print it}
+\dothis{Selecione \ct{3+4} e use \menu{print it} (\short{p}).}
+Desta vez você verá o valor esperado na (\figref{printit}).
+\index{atalhos de teclado!print it}
\begin{figure}[htb]
% \centerline {\includegraphics[width=0.4\textwidth]{PrintIt}}
\centerline {\includegraphics[scale=0.7]{PrintIt}}
-\caption{``Print it'' rather than ``do it''. \label{fig:printit}}
+\caption{``Print it'' ao invés de ``do it''. \label{fig:printit}}
\end{figure}
\needlines{3}
@@ -318,26 +314,26 @@ This time we see the result we expect (\figref{printit}).
3 + 4 --> 7
\end{code}
\noindent
-We use the notation \ct{-->} as a convention in this book to indicate that a particular \sq expression yields a given result when you \menu{print it}.
+Nós usamos a notação \ct{-->} como uma convenção neste livro para indicar que uma expressão \sq em particular gera aquele resultado quando você usa o \foreign{menu} \menu{print it}.
-\dothis{Delete the highlighted text ``\ct{7}'' (\sq should have selected it for you, so you can just press the delete key). Select \ct{3+4} again and this time \menu{inspect it} (\short{i}).}
+\dothis{Exclua o texto em foco ``\ct{7}'' (o \sq o selecione para você de modo que você possa simplesmente excluí-lo. Selecione \ct{3+4} novamente e desta vez use o \foreign{menu} \menu{inspect it} (\short{i}).}
\noindent
-Now you should see a new window, called an \emphind{inspector}, with the heading \ct{SmallInteger: 7} (\figref{inspectit}).
-The inspector is an extremely useful tool that will allow you to browse and interact with any object in the system.
-The title tells us that \ct{7} is an instance of the class \clsind{SmallInteger}.
-The left panel allows us to browse the instance variables of an object, the values of which are shown in the right panel.
-The bottom panel can be used to write expressions to send messages to the object.
+Agora você verá uma nova janela, chamada de \emphind{inspector} (inspetor), com o cabeçalho \ct{SmallInteger: 7} (\figref{inspectit}).
+O inspetor é uma ferramenta muito útil que permite que você acesse e interaja com qualquer objeto no sistema.
+O título lhe diz que \ct{7} é uma instância da classe \clsind{SmallInteger}.
+O painel esquerdo permite que você acesse as variáveis de instância do objeto, cujos valores são mostrados no painel direito.
+O painel inferior pode ser usado para escrever expressões que serão enviadas para o objeto selecionado.
\begin{figure}[htb]
\centerline {\includegraphics[scale=0.7]{InspectIt}}
-\caption{Inspecting an object. \label{fig:inspectit}}
+\caption{Inspecionando um objeto. \label{fig:inspectit}}
\end{figure}
-\dothis{Type \ct{self squared} in the bottom panel of the inspector on \ct{7} and \menu{print it}.}
+\dothis{Digite \ct{self squared} no painel inferior do objeto que está exibindo \ct{7} e execute \menu{print it}.}
\needlines{2}
-\dothis{Close the inspector. Type the expression \ct{Object} in a workspace and this time \menu{explore it} (\short{I}, uppercased i).}
-\index{keyboard shortcut!explore it}
+\dothis{Feche o \foreign{inspector}. Digite a expressão \ct{Object} em um \foreign{workspace} e desta vez escolha a opção \menu{explore it} (\short{I}).}
+\index{atalhos de teclado!explore it}
\index{explorer}
This time you should see a window labelled \clsind{Object} containing the text |