Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jumping from iOS to OSX [closed]

Tags:

macos

iphone

I want to start learning to program for OSX but have only programmed for iOS.

What are the significant differences on a programming level other than hardware related issues such as memory, processing power etc.

In terms of the actual api and programming, like items to be used by the mouse and keyboard rather than the touch screen.

I would like some advice from people who have experience with this and possibly good book links or tutorial links to get started.

Thanks

like image 754
some_id Avatar asked May 06 '11 18:05

some_id


1 Answers

Let me put it this way: Don't just try to port all your stuff over to the Mac without thinking about design principles. A lot of developers are seeking to get on the Mac developer bandwagon without putting time into their apps. Simply moving apps from iOS to Mac doesn't bring forth good interfaces.

Face it, iOS is built for touchscreen, while Mac is not. Thus, simply transferring your interface over might work, but it is bad and frowned upon by many users. What I would do is just download some well-known Mac applications (demos work fine), and just study how the interface is laid out compared to iOS. There are similar concepts, but there are more differences than similarities.

The most fundamental difference is that the interface on the iPhone can only have one window, while the Mac can have unlimited windows (theoretically). Stuffing all your views into one window just doesn't cut it on the Mac. Users have come to expect multiple windows, and honestly it's a much better way to do it.

So my suggestion is to learn Cocoa from the ground up, and then think about transferring your apps over...not by simply porting it, but instead by making a completely new interface. Your model can still be used, because both platforms use Objective-C.

Platforms so similar, yet so different. :)

enter image description here

like image 132
sudo rm -rf Avatar answered Sep 23 '22 17:09

sudo rm -rf