Форум программистов, компьютерный форум CyberForum.ru

Тест - Objective-C

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Objective-C Указатели http://www.cyberforum.ru/objective-c/thread849140.html
Добрый день! У меня вопрос по указателям. Вот я создаю указатель на целое число. int *y;Задаю ему какое-то значение. Потом вывожу значение так: NSLog(@"%i", *y); Вот я создаю указатель на строку NSString *string; Но почему значение нужно выводить без звездочки? NSLog(@"%@", string)
Objective-C Очистка памяти Пытаюсь написать программку: основное окошко статистика по использованной памяти, набодобии как в системе мониторинга (для круговой диаграммки нужно использовать core graphics?). Очистка будет производиться с помощью команды purge, реализованной через AppleScript. Хотелось бы узнать, как получить информацию об оперативной памяти в системе? (использованная, зарезервированная,...) http://www.cyberforum.ru/objective-c/thread848820.html
Objective-C упрощенный RegexKitLite
phpRegexKitLite.h // PHPregexKitLite #import <Foundation/Foundation.h> #import "RegexKitLite.h" #ifndef phpRegexKitLite_class #define phpRegexKitLite_class
Objective-C Определение района города
Приветос всем, я вот определил точный адрес в городе и тп с помощью CLGeocoder, кто шарит, как определить название района города? (например центральный и т.п.) в гугл мап на сайте определяет район спб, как его оттуда вытащить?? в апи там про район города ничего не написано
Objective-C Учебник http://www.cyberforum.ru/objective-c/thread844779.html
Посоветуйте какую-нибудь книгу (или сайт, ну вообщем инф.) по работе с базой данных SQL?
Objective-C Положение кнопки В зависимости от положения кнопки у меня должны выполняться различные функции от нажания кнопки. Т.е. если кнопка в одном положении, то выполнится одно действие, если в другом, то другое. Я подумал создать CGRect и сравнивать координаты кнопки с ним, но не получилось: CGRect newRect = CGRectMake(0, 100, 768, 100); if (self.Button2.frame==newRect) //Действие Однако такое... подробнее

Показать сообщение отдельно
Vorona
Peace 2 all shining faces
667 / 529 / 45
Регистрация: 05.03.2010
Сообщений: 1,273
29.04.2013, 00:54     Тест
Цитата Сообщение от alexpac26 Посмотреть сообщение
2. Опишите принцип открытия-закрытия (OCP). Приведите пример

кода, удовлетворяющего OCP и пример кода, нарушающего этот

принцип.

NSString *s = @"hello world";
if (s) {
NSLog(@"%@",s);
} else {
NSLog(@"fail");
} // << ok
NSString *s = @"hello world";
if (s) {
NSLog(@"%@",s);
} else {
NSLog(@"fail");
// << нет закрытия !!!!!
обоже, скажи что ты шутишь и не будь идиотом...
прости за грубость но это уже ни в какие ворота...
слышал про SOLID разработку и 5 приципов гибкой разработки?

Принцип открытия-закрытия (OCP) гласит о том, что модули могут быть расширены, но не могут быть изменены, например статические\динамические библиотеки и т.д. можно унаследоваться или написать категории\расширения, но основной код модуля не может меняться, нарушением этого принципа будет переопределение методов модуля
как например, переопределение скрытых методов iOS SDK, чтобы внедрить какую-то свою фишку в приложение, за что, естественно, приложение не приймут в AppStore и так далее.


Цитата Сообщение от alexpac26 Посмотреть сообщение
5. Чем плох следующий код?
Engine *engine = [Engine alloc];
[engine initWithCylinders: 7];
[engine start];
длинный код верно так:
Engine *engine = [[Engine alloc] initWithCylinders: 7];
[engine start];
ну и слово engine 100500 раз повторяется
при чем тут слово engine 100500 раз повторяется??!
плох тем, что после alloc объект еще не готов к использованию, т.к. вся внутренняя инициализация просиходит в init и по ошибке можно начать работу с объектом, не инициализировав его как нужно


Цитата Сообщение от alexpac26 Посмотреть сообщение
6. Чему равен счётчик ссылок у объекта validator после выполения
следующего кода? Почему?
Validator *validator = [Validator new];
[validator retain];
Validator *validator2 = [validator copy];
[validator release];
ТруЪ программисты используют ARС
тру программисты отлично разбираются в MRR, а ARC используют чтобы меньше заморачиваться над посчетом ссылок

в итоге retain счестик объекта validator будет равен 1
Цитата Сообщение от alexpac26 Посмотреть сообщение
9. Какие есть ограничения при определении категорий, расширяющих
уже существующие классы в Objective-C?
а вот это хз
формально пока сталкивался с тем, что нельзя сделать внутри свое strong property
хотя может не так сильно сталкивался поэтому не искал решение проблемы
почему только strong??
нельзя добавить никакое проперти, а точнее - переменную
так же нельзя переопределять другие методы, но это только условность, вообще методы переопределять физически можно, но этого делать не следует, так как это вкорне меняет смысл расширения
Цитата Сообщение от alexpac26 Посмотреть сообщение
Разработчик компилятора допустил ошибку, в результате которой
метод set, генерируемый компилятором для age выглядит так :
- (void) setAgeNSNumber*)_age {
[age release];
[_age retain];
age = _age;
}
Приведите пример пользовательского кода, подверженный

этой ошибке.
должно быть так
Objective-C
1
2
3
4
5
- (void) setAge:(NSNumber*)_age { 
[_age retain];
[age release];  
age = _age; 
}
а пример, который подвержен этой ошибке прост:
self.age = self.age;
тогда мы сначала удалим объект, после чего ритейнить уже будет нечего, и бах

а вам, дорогой alexpac26, я бы посоветовал не писать подобную фигню, потому что только человека с толку сбиваете
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru