Little bit confused about library-base (aka "shoebox") app

Discussion in 'Mac Programming' started by SchodMC, Aug 12, 2013.

  1. SchodMC macrumors member

    Jul 29, 2013
    Hi guys,

    I'm new to OS X development (however, not new to development at all; I developed under Windows and Linux for a couple of years; only OS X is new to me). I developed an app that I want to change now internally, because I did a lot of first-mac-app errors, especially within the design.

    Well, I'm think about making a document based app. While reading the Apple documentation for document-based apps, I read about library-based (aka "shoebox") apps. Looking to iPhoto / iTunes, I have an idea about what an shoebox app is.

    My question is: are there some classes for those shoebox-apps like the NSDocument class is for the document-based apps? Can a NSDocument class be used for that? Or do I have to manage everything by my on if I want to create an shoebox app?

    I ask because I think about wether there is need for my App to create "multiple" documents. (I will have a sqlite Database and some assigned files for the database entries - everything will be stored inside a file package, so that the user will only see one "file"). Or if it will be enough if the app only creates one file-package (like iPhoto) so that a shoebox-app will be ok. But than I don't know how to develop a shoebox app. Don't find something like that document-based documentation from Apple for that library-based stuff.

    The other reason I want know that stuff is just for interrest. ;-)


    P.S.: Sorry for my bad english - it's not my native language...
  2. heyadrian macrumors member

    Aug 14, 2011
    the term show-box is literally a library (or better known as a framework).

    If you look at a simple Cocoa app you see:

    #import <whatever.framework.h>
    at the top..

    What that literally is, in Windows (shudder) as a 'library'.

    In Objective-C it's basically framework (the reason why I use the terms FRAMEWORK and not SHARED LIBRARY is because the App Store WILL NOT accept private libraries).

    I'd advise you start looking here for a start point:

    It gets you into the steps involved to start a framework of your own e.g. I have one which has all of the handy bits and bobs I like to use in my apps :)

Share This Page