During the first quarter, the main work I have done in my independent computer science is building the main frame of the program. I have learned a lot about building a database and the basic steps to lead to map out a program.
I have spent a lot time over the summer designing the database. It took me a long time to decide what should be set up as objects and which should be set up as simple variables. Here are some basic steps I followed:
1. How many aspect does this “thing” has. If it has more than a couple aspects like an event, then this should be set up as an object.
2. How will this thing play in the program. If part of its value will be involved in some calculation, this should be set up as an object. For example, weekend would be an example for this. There are only 3 parameters under the object weekend, but the calculation involved in the class weekend is very complicated. Therefore, it is set up as an object.
3. Things that are not set up as objects：Teachers, event type, time, time zone….
Those things are not set up as objects because there is only 1 or 2 parameters inside them and there is no complicated calculation involved within them.
Then I learned how to plan the structure of program.
Most programs today has 3 layers, interface, backstage, database. Interfaces deals with users, backstage is the link between interfaces and databases. Database is where all the information are stored. Essentially, what all program does is that they take input from its user. They deal with the information in some way that’s required by the program, and store them in the database.
Managing a long project is something I have never done before. I think it’s really important to keep planning as things goes on. Having a plan doesn’t mean that is the final call, but it does help coder to outline the code in a much more organized way. It also avoids the need to rewrite codes if they do not satisfy the demands.
To make this a more successful project, I need to work on the detail. Since I have finished the structure, now it’s time to just filling in the detail that’s being missing on each interface including the drop down box for selecting teachers. It would be essential for me to follow T. Paul for a week or so after the program is finished to see what could still be improved.