Heh,
Let me give you some advice my CompSci 101 professor gave me. He said,
"There is no such thing as a simple
program."
Every program, even a small script, has hidden complexity. Something on the order of the program you wish to write is a very complex app with dozens or even hundreds of functional components. Therefore, your question has hundreds of answers implicit within it and therefore can't be answered. You might as well have asked, "how do I write a word processor?"
Okay, let's walk you through the design process.
Step 1: The description of "DJ" application is far, far to vague. You really shouldn't label the app in the design process. Instead, of thinking of the app as a type or class of app, sit down and write down a detailed list of features/functions you wish the app to have. E.g.
- It will obtain music from some source.
- It will play that music.
- It will play music in a sequence determined by the user.
- It will allow the user to easily start and stop the playing of the music.
- It will allow the user to alter the speed and direction of the play of the music.
... and so on.
Step 2: Pick the function upon which all other's depend. In this case, obtaining music. Write down what means of obtaining music you want the app to have. E.g.
- It will obtain music from the iPhone's music library.
- It will download audio files from the internet.
- It will stream music from online sites.
Note that each one of these music sources is of an entirely different source and uses entirely different code to accomplish the task.
Step 3: Pick the one source you want to start with, say "obtain music from the iPhone's music library" and then break that down into necessary steps. E.g.
- Programmatically connect to the music library.
- Identify a specific song file in the music library
- Create a reference to the song that the next step ("play the song") can use.
Step 4: Research how an iPhone app can access the music library on the iPhone. If you want to post to StackOverflow, create a terse and specific question e.g. "How can an app connect to the iPhone's music library in order to play or read the music files there?"
Then repeat as necessary down each application feature.
Remember, just because an app presents a simple and easy to use interface to the user, it does not follow that the internals of the app are themselves simple to write. For example, modifying audio output to create minor distortion effects is very complex programming even though the user may just see a slider that adjust the degree of distortion.
You've taken on a big project and you should plan accordingly.