20070810

Cocoa development wishlist

Garbage collection
Objective-C 2.0 has it. About time, if you ask me. The older convention of allocation/releasing, plus the complexities of writing accessor methods was boilerplate which had to go away. Any language, which aims at a reasonable productivity, in this age needs to support this. Debugging segfaults is for the 80s.

Syntax
I want syntactic sugar. I need syntactic sugar. I like ruby and python's capabilities to work with arrays and dictionaries as a part of the core language. If I want to concatenate two strings I should not have to type 20 characters. Yes, there are other solutions: macros, inline functions, and maybe other things. But they are all side-stepping the problem: while C is fast, it's a 30 year old language. Oh, actually, it is close to 45: Dennis Richie invented in for the second implementation of the UNIX. 

UI Helper app(s)
Right now creation of a custom widget in Cocoa requires quite a bit of trial and error effort: drawing bezier paths based on guessed coordinates is not fun. Guess coordinates, place, re-compile. You can invent shortcuts: place text fields in the nib for coordinates, to allow your experimental view to re-draw itself based on these inputs. It still is a kludge. Or maybe I am not in tune with the latest approaches in the cocoa world (quite possible since I do not actively develop at this time). 
I think there is a need for an application on the Macintosh that will allow developers to "draw" out their custom widgets. While the widgets are drawn, it should be possible define the separate components of each widget and to specify which components are static, and which components can be moved via different events (mouse clicks, mouse drags, keyboard key presses). At the end of this process the app will spit out the code required to implement the designed widget. I have searched on the web and I have not found anything close to this that fits the bill. I think this will be a nice decent-sized project.

No comments: