| |   |
| 1139 | 1139 | Once again, we recommend that you avoid the use of pool variables and pool dictionaries. |
| 1140 | 1140 | |
| 1141 | 1141 | %========================================================= |
| 1142 | | \section{Chapter summary} |
| 1142 | \section{Resumo do capítulo} |
| 1143 | 1143 | |
| 1144 | | The object model of \squeak is both simple and uniform. |
| 1145 | | Everything is an object, and pretty much everything happens by message sends. |
| 1144 | O modelos de objetos do \squeak é ao mesmo tempo simples e uniforme. |
| 1145 | Tudo é um objeto, e praticamente tudo acontece por envio de mensagens. |
| 1146 | 1146 | |
| 1147 | 1147 | \begin{itemize} |
| 1148 | | \item Everything is an object. |
| 1149 | | Primitive entities like integers are objects, but also classes are first-class objects. |
| 1150 | | |
| 1151 | | \item Every object is an instance of a class. |
| 1152 | | Classes define the structure of their instances via \emph{private} instance variables and the behaviour of their instances via \emph{public} methods. Each class is the unique instance of its metaclass. Class variables are private variables shared by the class and all the instances of the class. |
| 1153 | | Classes cannot directly access instance variables of their instances, and instances cannot access instance variables of their class. |
| 1154 | | Accessors must be defined if this is needed. |
| 1155 | | |
| 1156 | | \item Every class has a superclass. |
| 1157 | | The root of the single inheritance hierarchy is \lct{ProtoObject}. |
| 1158 | | Classes you define, however, should normally inherit from \ct{Object} or its subclasses. |
| 1159 | | There is no syntax for defining abstract classes. |
| 1160 | | An abstract class is simply a class with an abstract method\,---\,one |
| 1161 | | whose implementation consists of the expression \ct{self subclassResponsibility}. |
| 1162 | | Although \squeak supports only single inheritance, it is easy to share implementations of methods by packaging them as \emph{traits}. |
| 1163 | | |
| 1164 | | \item Everything happens by message sends. |
| 1165 | | We do not ``call methods'', we ``send messages''. |
| 1166 | | The receiver then chooses its own method for responding to the message. |
| 1167 | | |
| 1168 | | \item Method lookup follows the inheritance chain; |
| 1169 | | \self sends are dynamic and start the method lookup again in the class of the receiver, whereas |
| 1170 | | \super sends are static, and start in the superclass of class in which the \super send is written. |
| 1148 | \item Tudo é um objeto. |
| 1149 | Primitivas como inteiros são objetos, mas classes também são objetos de primeira classe. |
| 1150 | |
| 1151 | \item Todo objeto é instância de uma classe. |
| 1152 | Classes definem a estrutura de suas instâncias através de variáveis de instância \emph{privativas} e o comportamente de suas instâncias através de métodos \emph{públicos}. Cada classe é a instância única de sua meta-classe. Variáveis de classe são variáveis privativas compartilhadas pela classe e por todas as instâncias da classe. |
| 1153 | Classes não pode acessar variáveis de instância das suas instâncias diretamente e instâncias não podem acessar variáveis de instância da sua classe. |
| 1154 | Métodos de acesso devem ser definidos se forem necessários. |
| 1155 | |
| 1156 | \item Toda classe tem uma superclasse. |
| 1157 | A raiz da hierarquia de herança simples é \lct{ProtoObject}. |
| 1158 | Classes definidas pelo programador, entretanto, normalmente devem herdar de \ct{Object} ou de suas subclasses. |
| 1159 | Não existe sintaxe para definir classes abstratas. |
| 1160 | Uma classe abstrata é simplesmente uma classe com um método abstrato\,---\, um |
| 1161 | método cuja implementação consiste da expressão \ct{self subclassResponsibility}. |
| 1162 | Apesar de \squeak suportar apenas herança simples, é fácil compartilhar implementações de métodos empacotando-os como \emph{traits}. |
| 1163 | |
| 1164 | \item Tudo acontece por envio de mensagens. |
| 1165 | Nos não ``chamamos métodos'', nós ``enviamos mensagens''. |
| 1166 | O recipiente então escolhe por conta própria o método para responder à mensagem. |
| 1167 | |
| 1168 | \item A busca de métodos segue a cadeia de herança; |
| 1169 | Envios para \self são dinâmicos e iniciam a busca de método na classe do recipiente, enquanto |
| 1170 | envios para \super são estáticos e iniciam na superclasse da classe na qual o envio para \super está escrito. |
| 1171 | 1171 | |
| 1172 | | \item There are three kinds of shared variables. |
| 1173 | | Global variables are accessible everywhere in the system. |
| 1174 | | Class variables are shared between a class, its subclasses and its instances. |
| 1175 | | Pool variables are shared between a selected set of classes. |
| 1176 | | You should avoid shared variables as much as possible. |
| 1172 | \item Há três tipos de variáveis compartilhadas. |
| 1173 | Variáveis globais podem ser acessadas de qualquer lugar do sistema. |
| 1174 | Variáveis de classe são compartilhadas entre a classe, suas subclasses e suas instâncias. |
| 1175 | Variáveis de pool são compartilhadas entre um grupo definido de classes. |
| 1176 | Você deve evitar o uso de variáveis compartilhadas tanto quanto possível. |
| 1177 | 1177 | |
| 1178 | 1178 | \end{itemize} |
| 1179 | 1179 | |
| toggle raw diff |
--- a/PortugueseBook/Model/Model.tex
+++ b/PortugueseBook/Model/Model.tex
@@ -1139,41 +1139,41 @@ Text>>>testCR
Once again, we recommend that you avoid the use of pool variables and pool dictionaries.
%=========================================================
-\section{Chapter summary}
+\section{Resumo do capítulo}
-The object model of \squeak is both simple and uniform.
-Everything is an object, and pretty much everything happens by message sends.
+O modelos de objetos do \squeak é ao mesmo tempo simples e uniforme.
+Tudo é um objeto, e praticamente tudo acontece por envio de mensagens.
\begin{itemize}
- \item Everything is an object.
- Primitive entities like integers are objects, but also classes are first-class objects.
-
- \item Every object is an instance of a class.
- Classes define the structure of their instances via \emph{private} instance variables and the behaviour of their instances via \emph{public} methods. Each class is the unique instance of its metaclass. Class variables are private variables shared by the class and all the instances of the class.
- Classes cannot directly access instance variables of their instances, and instances cannot access instance variables of their class.
- Accessors must be defined if this is needed.
-
- \item Every class has a superclass.
- The root of the single inheritance hierarchy is \lct{ProtoObject}.
- Classes you define, however, should normally inherit from \ct{Object} or its subclasses.
- There is no syntax for defining abstract classes.
- An abstract class is simply a class with an abstract method\,---\,one
- whose implementation consists of the expression \ct{self subclassResponsibility}.
- Although \squeak supports only single inheritance, it is easy to share implementations of methods by packaging them as \emph{traits}.
-
- \item Everything happens by message sends.
- We do not ``call methods'', we ``send messages''.
- The receiver then chooses its own method for responding to the message.
-
- \item Method lookup follows the inheritance chain;
- \self sends are dynamic and start the method lookup again in the class of the receiver, whereas
- \super sends are static, and start in the superclass of class in which the \super send is written.
+ \item Tudo é um objeto.
+ Primitivas como inteiros são objetos, mas classes também são objetos de primeira classe.
+
+ \item Todo objeto é instância de uma classe.
+ Classes definem a estrutura de suas instâncias através de variáveis de instância \emph{privativas} e o comportamente de suas instâncias através de métodos \emph{públicos}. Cada classe é a instância única de sua meta-classe. Variáveis de classe são variáveis privativas compartilhadas pela classe e por todas as instâncias da classe.
+ Classes não pode acessar variáveis de instância das suas instâncias diretamente e instâncias não podem acessar variáveis de instância da sua classe.
+ Métodos de acesso devem ser definidos se forem necessários.
+
+ \item Toda classe tem uma superclasse.
+ A raiz da hierarquia de herança simples é \lct{ProtoObject}.
+ Classes definidas pelo programador, entretanto, normalmente devem herdar de \ct{Object} ou de suas subclasses.
+ Não existe sintaxe para definir classes abstratas.
+ Uma classe abstrata é simplesmente uma classe com um método abstrato\,---\, um
+ método cuja implementação consiste da expressão \ct{self subclassResponsibility}.
+ Apesar de \squeak suportar apenas herança simples, é fácil compartilhar implementações de métodos empacotando-os como \emph{traits}.
+
+ \item Tudo acontece por envio de mensagens.
+ Nos não ``chamamos métodos'', nós ``enviamos mensagens''.
+ O recipiente então escolhe por conta própria o método para responder à mensagem.
+
+ \item A busca de métodos segue a cadeia de herança;
+ Envios para \self são dinâmicos e iniciam a busca de método na classe do recipiente, enquanto
+ envios para \super são estáticos e iniciam na superclasse da classe na qual o envio para \super está escrito.
- \item There are three kinds of shared variables.
- Global variables are accessible everywhere in the system.
- Class variables are shared between a class, its subclasses and its instances.
- Pool variables are shared between a selected set of classes.
- You should avoid shared variables as much as possible.
+ \item Há três tipos de variáveis compartilhadas.
+ Variáveis globais podem ser acessadas de qualquer lugar do sistema.
+ Variáveis de classe são compartilhadas entre a classe, suas subclasses e suas instâncias.
+ Variáveis de pool são compartilhadas entre um grupo definido de classes.
+ Você deve evitar o uso de variáveis compartilhadas tanto quanto possível.
\end{itemize}
|