*Xcode Project Entry 3* Times Tables Quiz - Part 1
OK, I am not sure if this is going to go anywhere! This entry was going to initially be a brief sojourn from Angela's excellent course - to see if I can get the ViewController option for the different difficulty levels of the F1Quiz. Having had a look over it, that app is too finicky, too fiddly to pick back up again. So a much better idea - a new app! This is a chance to put things into practice. I am going to stay well away from APIs, Cocoapods, JSON etc. and just focus on something simple - something educational. A times table app!
*Screen replaced by the way - seems all shiny and new!
Start Time - 19:13
So the idea of this is just to map out what I need to make a Times Tables app. Now, there are many, many out there so the idea here is not to try anything original at all - just to see if I can create something from scratch that has all the main facets required.
Best place to start - a 'to do' list! It makes sense to do this for MVC - mapping out the main elements before even creating an Xcode file. In fact, all I am doing for this very, very brief entry today is making the list so I know where this is going and what is required.
Model
Times Tables facts stored to be generated somewhere
Possible randomisation at this stage too
View
Timer - countdown from e.g. 60 seconds
Question - randomised tables
Text box to put in answer
Message to say right or wrong
Question number
Score
Time is up - score and message etc.
Controller
Labels connected to display only - timer, question, message, question number
Actions - options to start over, where to put in answer or to submit answer possibly
Functions to generate questions - randomised
Pop up to be generated and come up at the end of the time
Main Menu screen - could potentially be used for difficulty setting e.g. easy - 1, 2, 5 and 10 only; medium - including 3, 4, 6 and 9; difficult - all
Potential pickers used - to either select a times table or difficulty level - something to think about
OK, so that is plenty! Here's the plan for what I now need to do -
Tomorrow I will get at least the first few of those done - aim to get up to the times table generator coded done. That is realistic!
So just to make it clear, this is not to replace working at the Angela course. No, this is just a brief detour to see if a) I can make something and b) if I can utilise things that I have learned AND c) try out anything with segues or pickers or anything else from the Clima app. It may only take several entries, or it could be a week or so from now until I've done that. Either way, I WILL be going back to Angela's course as there is where I have learned the most. However, putting things into practice does help to make big conceptual leaps and consolidation of what the code actually means. It will be fun to make something, try it out and see if it can be workable and fun. Once I've made it, I can tweak it for adding/subtracting/division; in fact, that can all be within the same app!
Finish Time - 19:25 (12 minutes total)
So a very, very brief entry to introduce what I am going to be focusing on next. It could be that the next entry is an hour or so. It doesn't matter - it's good to break up the course content with a project and something to work on from scratch!
*Screen replaced by the way - seems all shiny and new!
Start Time - 19:13
So the idea of this is just to map out what I need to make a Times Tables app. Now, there are many, many out there so the idea here is not to try anything original at all - just to see if I can create something from scratch that has all the main facets required.
Best place to start - a 'to do' list! It makes sense to do this for MVC - mapping out the main elements before even creating an Xcode file. In fact, all I am doing for this very, very brief entry today is making the list so I know where this is going and what is required.
Model
Times Tables facts stored to be generated somewhere
Possible randomisation at this stage too
View
Timer - countdown from e.g. 60 seconds
Question - randomised tables
Text box to put in answer
Message to say right or wrong
Question number
Score
Time is up - score and message etc.
Controller
Labels connected to display only - timer, question, message, question number
Actions - options to start over, where to put in answer or to submit answer possibly
Functions to generate questions - randomised
Pop up to be generated and come up at the end of the time
Main Menu screen - could potentially be used for difficulty setting e.g. easy - 1, 2, 5 and 10 only; medium - including 3, 4, 6 and 9; difficult - all
Potential pickers used - to either select a times table or difficulty level - something to think about
OK, so that is plenty! Here's the plan for what I now need to do -
- Create a new project on Xcode
- On main view controller, set up main labels and colours etc.
- Get the labels all connected up
- Get times table generator coded
- Have the questions appear on the question label
- Have the text box for answers to be put in (use HowManyLetters to help)
- Have timer (again use HowManyLetters!)
- Experiment with other ViewController screen - use Clima for Segues.
- On other ViewController screen, have options using pickers to scroll through selections
Tomorrow I will get at least the first few of those done - aim to get up to the times table generator coded done. That is realistic!
So just to make it clear, this is not to replace working at the Angela course. No, this is just a brief detour to see if a) I can make something and b) if I can utilise things that I have learned AND c) try out anything with segues or pickers or anything else from the Clima app. It may only take several entries, or it could be a week or so from now until I've done that. Either way, I WILL be going back to Angela's course as there is where I have learned the most. However, putting things into practice does help to make big conceptual leaps and consolidation of what the code actually means. It will be fun to make something, try it out and see if it can be workable and fun. Once I've made it, I can tweak it for adding/subtracting/division; in fact, that can all be within the same app!
Finish Time - 19:25 (12 minutes total)
So a very, very brief entry to introduce what I am going to be focusing on next. It could be that the next entry is an hour or so. It doesn't matter - it's good to break up the course content with a project and something to work on from scratch!
Comments
Post a Comment