As far as I know, the first one you have to release when you are done, and the second one you don't. Why would you use the first initialization over the second?

```
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"title", @"text", nil];

```

And

```
NSMutableDictionary *dictionary = [NSMutableDictionary dictionaryWithObjectsAndKeys:@"title", @"text", nil];

```