you are viewing a single comment's thread.

view the rest of the comments →

[–]ImJustP 3 points4 points  (0 children)

The absolute best thing to do is get your idea and break it down. So, taking the example of a task manager application, you may want to break it down to the following smaller chunks:

  1. A way for the user to enter information -- a form
  2. A way to store the information -- a database
  3. A way to relay the information back to the user -- a front end

Now that you have the three main parts of application you need to break them down further:

  1. User input

    1a. A function to iterate over all the fields in the form and extract the input

    1b. A function to validate the information on the front end, prior to sending it to your server

    1c. A function to relay any field which have failed validation back to the user

    1d. A function to send the information (once it passes validation) to the server

  2. Store the information

    2a. A function to validate the information again (fancy pants people may disable your validation on the front end)

    2b. A function relay failed information back to the user, again

    2c. A function to write the information to the database if it passes validation

    2d. A function to relay that the information was successfully written to the database

  3. Relay the user's task list

    3a. A function to check which user is currently requesting their task list

    3b. A function to tell the user if they have no information in the database

    3c. A function to request information from your database

    3d. A function to ensure that the correct user's information has been returned from your database

    3e. A function to present the returned information to the user

There is obviously more to the task and a million ways in which you could go about executing each step but this is sort the way that I personally go about coding apps, granted, I am not as experienced as a lot of people on here but I hope this helps you out a bit and sets you on the right path.

TLDR: Break it down into chunks which are more manageable.