1
0
mirror of https://github.com/adambard/learnxinyminutes-docs.git synced 2025-08-09 08:16:58 +02:00

Merge pull request #1247 from JustBlah/patch-1

[objective-c/ru] New English to Russian translations, Russian auto-translated text fixed
This commit is contained in:
Andre Polykanine A.K.A. Menelion Elensúlë
2015-12-05 22:48:08 +02:00

View File

@@ -381,20 +381,21 @@ if ([myClass respondsToSelector:selectorVar]) { // Проверяет содер
NSLog(@"MyClass не содержит метод: %@", NSStringFromSelector(selectedVar)); NSLog(@"MyClass не содержит метод: %@", NSStringFromSelector(selectedVar));
} }
// Имплементируйте методы в файле МойКласс.m: // Имплементируйте методы в файле MyClass.m:
@implementation MyClass { @implementation MyClass {
long distance; // Переменная экземпляра с закрытым (private) доступом long distance; // Переменная экземпляра с закрытым (private) доступом
NSNumber height; NSNumber height;
} }
// To access a public variable from the interface file, use '_' followed by variable name: // Для доступа к public переменной, объявленной в интерфейсе, используйте '_' перед названием переменной:
_count = 5; // References "int count" from MyClass interface _count = 5; // Ссылается на "int count" из интерфейса MyClass
// Access variables defined in implementation file: // Получение доступа к переменной, объявленной в реализации происходит следующим образом:
distance = 18; // References "long distance" from MyClass implementation distance = 18; // Ссылается на "long distance" из реализации MyClass
// To use @property variable in implementation, use @synthesize to create accessor variable: // Для использования в иплементации переменной, объявленной в интерфейсе с помощью @property,
@synthesize roString = _roString; // _roString available now in @implementation // следует использовать @synthesize для создания переменной аксессора:
@synthesize roString = _roString; // Теперь _roString доступна в @implementation (реализации интерфейса)
// Called before calling any class methods or instantiating any objects // Вызывается в первую очередь, перед вызовом других медотов класса или инициализации других объектов
+ (void)initialize + (void)initialize
{ {
if (self == [MyClass class]) { if (self == [MyClass class]) {
@@ -505,10 +506,10 @@ distance = 18; // References "long distance" from MyClass implementation
@end @end
// Теперь, если мы хотели создать грузовой объект, мы должны вместо создания подкласса класса Car, как это будет // Теперь, если мы хотим создать объект Truck - грузовик, мы должны создать подкласс класса Car, что
// изменять функциональность Car чтобы вести себя подобно грузовику. Но давайте посмотрим, если мы хотим только добавить // изменит функционал Car и позволит вести себя подобно грузовику. Но что, если мы хотим только добавить
// функциональность в существующий Car. Хороший пример должен быть чистить автомобиль. Итак мы создадим // определенный функционал в уже существующий класс Car? Например - чистка автомобиля. Мы просто создадим
// категорию для добавления его очистительных методов: // категорию, которая добавит несколько методов для чистки автомобиля в класс Car:
// @interface ИмяФайла: Car+Clean.h (ИмяБазовогоКласса+ИмяКатегории.h) // @interface ИмяФайла: Car+Clean.h (ИмяБазовогоКласса+ИмяКатегории.h)
#import "Car.h" // Убедитесь в том, что базовый класс импортирован для расширения. #import "Car.h" // Убедитесь в том, что базовый класс импортирован для расширения.
@@ -794,7 +795,7 @@ MyClass *arcMyClass = [[MyClass alloc] init];
// weakVar-свойство автоматически примет значение nil, // weakVar-свойство автоматически примет значение nil,
// во избежание падения приложения // во избежание падения приложения
@property (strong) MyClass *strongVar; // 'strong' принимает право на владение @property (strong) MyClass *strongVar; // 'strong' принимает право на владение
// объектом. Гарантирует, что объект останится в памяти для использования // объектом. Гарантирует, что объект останется в памяти для использования
// Для обычных переменных (не объявленных с помощью @property), используйте // Для обычных переменных (не объявленных с помощью @property), используйте
// следующий способ: // следующий способ: