Перед тим, як перейти до чогось нового, пропоную Вашій увазі книжечку, яка видніється зліва. Якщо в програмуванні Ви не можете відрізнить:++і; від i++;, то ця книга стане в пригоді (є переклад російською мовою). Не треба сильно лякатись слова "Xcoder", так iPhone application Ви не напишете, але деякі ази зможете відчуть.
А щоб показати, що і без Xcoder можна щось написати, наступний приклад. Наперед маю сказати, що коли я це виробляв на роботі, а мій директор побачив, то його фраза мене "убила", ні Він не кричав чи гнівався (слава Богу людина адекватна), він сказав :- "А пан знає толк в збоченні". І багато з Вас теж би так подумалиПотім в нас іде вивід та очищення всих забутих і не очищених об"єктів. б, по причині того, що зліва стоїть ноут з "Ubuntu", де я в текстовому редакторі набираю "бидло код", а з права MacBook з запущеним Xcder(ом).
А щоб показати, що і без Xcoder можна щось написати, наступний приклад. Наперед маю сказати, що коли я це виробляв на роботі, а мій директор побачив, то його фраза мене "убила", ні Він не кричав чи гнівався (слава Богу людина адекватна), він сказав :- "А пан знає толк в збоченні". І багато з Вас теж би так подумалиПотім в нас іде вивід та очищення всих забутих і не очищених об"єктів. б, по причині того, що зліва стоїть ноут з "Ubuntu", де я в текстовому редакторі набираю "бидло код", а з права MacBook з запущеним Xcder(ом).
Спочатку слід запустити SciTE, створити файл з розширенням .m потім
натиснуть F8 і вписать:
. /usr/share/GNUstep/Makefiles/GNUstep.sh
Далі вкидуємо код :
#import <Foundation/Foundation.h>
int main (int argc, const char * argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSString *foo, *bar;
foo = @"ubuntu!";
bar = [foo uppercaseString];
NSLog(@"%@ now upper %@", foo, bar);
[pool release];
return 0;
}
int main (int argc, const char * argv[])
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSString *foo, *bar;
foo = @"ubuntu!";
bar = [foo uppercaseString];
NSLog(@"%@ now upper %@", foo, bar);
[pool release];
return 0;
}
Після чого залишається тільки запустити :
gcc `gnustep-config --objc-flags` -lgnustep-base print.m -o dryk
далі буде ... Крокуєм разом і вперед на горизонті в нас об'єкт
І написати:
./dryk Розглянемо більш детелаьно деякі частини коду:
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
В цій стрічці ми створюємо певного прибиральника, який за нас прибере об"єкти, які ми забудемо або просто не очистимо.
Детальніше:
http://cocoalate.blogspot.com/2007/06/nsautoreleasepool.html
NSString *foo, *bar; - створюємо два вказівники на об"єкти типу NSString. Слід бути дуже уважним, так як ми створюємо не об"єкти а вказівники.
foo = @"ubuntu!"; - ініціалізація.
Дуже цікава наступна стрічка:
bar = [foo uppercaseString];- в правій частині ми посилаємо ОБ"ЄКТУ повідомлення (дивитись попередні статті[викликаємо метод, який треанспонує всі символи строки в символи верхнього регістру])
Потім в нас іде вивід та очищення всих забутих і не звільнених об"єктів.
===============================================================далі буде ... Крокуєм разом і вперед на горизонті в нас об'єкт
Немає коментарів:
Дописати коментар