The deadline for the MVC assignment has been extended to tomorrow. However, I'm still struggling with it now.
My original design mixes the view and the model too much. The UIImageView frame contains the core location data of the objects, thus it is convenient to treat the view frame as a model. However, that's a bad design when models contains more sophisticated data like some physical properties. Thus I need to redesign it again, to abstract the model class from the view data. Two useful entry level delegation examples to help better understand delegation and MVC.
I feel the way how I deal with stress is really bad. Instead of trying very hard to solve the problem, I tend to spend quite too much time on stress-free tasks(like watching funny videos) to release the stress. It turns out to be a bad idea since I didn't get things done and I feel even worse afterwards. A better approach would be to split big tasks into small manageable tasks and finish the subtasks in a continuous manner. I also tend not to seek help until very late, which would become disasters. In the assignment 2, I ended up making a big mistake about the difference between mutable and immutable arrays. I didn't fix the bug until 2 days after the deadline, which results in a bad grade. Another bad thing is that I do compare myself with other people. Some year two CS students are really elite programmers. I feel discouraged when knowing that they've got almost 100%marks when I myself only get around 80%. This situation is really hard to go along with. I feel like dying...
Some good things about this week.
1. I begin to understand MVC and delegation with practical programming examples.
2. I asked questions in classes.
3. I went for an interview by Garena which is a very interesting game company in Singapore. Though it is a completely failure, I get to know that "if I'm intended to become a hardcore system software engineer, I'll need to be great in C++. Otherwise, I can deal with small apps or scripting languages but will probably not be secured a job in a good software company." I started to rethink whether I personally would love to become a hardcore engineer in a good software company or someone making small but interesting apps. For now, I still find "self-interests"the top criteria for me to choose a career.
4. I bought my parents some new clothes and a birthday cake for my father. They are coming to SG tomorrow. I'm proud that the whole trip is sponsored by me with my own savings from small projects.
5. I shared one thought with one of my friends--"If people laugh at you when you choose a certain path, after 5 or 10 years later, you are still doing that thing which you believe is right, then no one will laugh at you any more."
6. I helped some people.