allfeeds.ai

 

Cocoa Maker  

Cocoa Maker

Learn Objective-C

Author: Mr. Gecko

Cocoa Maker is a Podcast to teach you how to make applications using Cocoa that starts from the beginning to the end. We will teach you things from Memory Management to the Syntax of Cocoa it self.
Be a guest on this podcast

Language: en-us

Genres: Education, How To, Technology

Contact email: Get it

Feed URL: Get it

iTunes ID: Get it


Get all podcast data

Listen Now...

Cocoa Maker 7 - Libraries and Frameworks
Tuesday, 13 April, 2010

James (MrGeckosMedia.com), joined by, Eduardo (MegaEduX.com), and Nick, explains libraries and frameworks. 11:56 Example code from episode. Libraries Libraries included, /usr/lib/libcrypto.dylib and /usr/lib/libssl.dylib #import <Foundation/Foundation.h> #import <openssl/evp.h> int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; NSString *string = @"Hello"; OpenSSL_add_all_algorithms(); unsigned char outbuf[EVP_MAX_MD_SIZE]; unsigned int templen, inlen = [string length]; const char *input = [string UTF8String]; EVP_MD_CTX ctx; const EVP_MD *digest = EVP_md5(); if(!digest) { NSLog(@"cannot get digest with name MD5"); return 1; } EVP_MD_CTX_init(&ctx); EVP_DigestInit(&ctx,digest); if(!EVP_DigestUpdate(&ctx,input,inlen)) { NSLog(@"EVP_DigestUpdate() failed!"); EVP_MD_CTX_cleanup(&ctx); return 1; } if (!EVP_DigestFinal(&ctx, outbuf, &templen)) { NSLog(@"EVP_DigesttFinal() failed!"); EVP_MD_CTX_cleanup(&ctx); return 1; } EVP_MD_CTX_cleanup(&ctx); NSMutableString *md5 = [NSMutableString string]; for (int i=0; i<templen; i++) { [md5 appendFormat:@"%x", outbuf[i]]; } NSLog(@"MD5 of %@ is %@", string, md5); [pool drain]; return 0; } Frameworks Frameworks included, AddressBook.framework #import <Foundation/Foundation.h> #import <AddressBook/AddressBook.h> int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; ABAddressBook *addressBook = [ABAddressBook sharedAddressBook]; NSArray *people = [addressBook people]; for (int i=0; i<[people count]; i++) { ABPerson *person = [people objectAtIndex:i]; NSString *firstName = [person valueForProperty:kABFirstNameProperty]; NSString *lastName = [person valueForProperty:kABLastNameProperty]; NSString *name = nil; if (firstName!=nil) { name = firstName; if (lastName!=nil) name = [name stringByAppendingFormat:@" %@", lastName]; } if (name!=nil) NSLog(@"Person named: %@", name); } [pool drain]; return 0; } Keynote used in this Episode Keynote in PDF Format

 

We also recommend:


JM Podcast
Joel and Michael

People Talking Tech
Denny Cherry

felhandlingarna

Instructional Tech Talk
Jeff Herb

weniger ist oftmals mehr
Wolfgang Raab

Shared Insights: The Podcast from Upland BA Insight
TruStory FM

TechTea
TechTea

La Confrérie
aKuMaSai, Deltakosh, Davrous, Meulta

CISM 89.3 : Avez-vous du WIFI
CISM 89.3

What the Coin: A Crypto Podcast
Adam 'Doc' Gray

brzezinski.it - podcast technologiczny
Kamil Brzezinski

Talking Tech
Quinn