View previous topic :: View next topic |
Author |
Message |
SPo0n Tux's lil' helper

Joined: 03 May 2003 Posts: 85 Location: England
|
Posted: Mon Jun 30, 2003 8:58 am Post subject: Ideal first project |
|
|
I want to learn C++, but not dive right in at the deep end. What's an ideal first project for me, in order to learn the most fundamental stuff? I've got a C++ book and done some excersises from it, but i don't think i'm learning as much as i would by doing some sort of application or game. |
|
Back to top |
|
 |
Braempje l33t


Joined: 31 Jan 2003 Posts: 748
|
|
Back to top |
|
 |
barran Tux's lil' helper

Joined: 14 Jan 2003 Posts: 142 Location: Århus, DK
|
Posted: Mon Jun 30, 2003 11:02 am Post subject: |
|
|
You could program a simple browser.
That way you learn about things like sockets, parsing and gui |
|
Back to top |
|
 |
puggy Bodhisattva


Joined: 28 Feb 2003 Posts: 1992 Location: Oxford, UK
|
Posted: Mon Jun 30, 2003 1:40 pm Post subject: |
|
|
Creating some sort of simulation is a good starting point. Things like creating a virtual video store while boring does get you designing in an object orientated fashion and you can try and use abstract base classes, inheritance and everything properly. Getting object orientated coding straight in your mind is a good first step. Then perhaps attempt to make a GUI for your program.
Then you can get on with the serious coding.  _________________ Where there's open source , there's a way. |
|
Back to top |
|
 |
GuidoJ Guru


Joined: 24 Dec 2002 Posts: 444 Location: Netherlands
|
Posted: Mon Jun 30, 2003 4:05 pm Post subject: |
|
|
This reminds me of a project I had to do in school: an elevator simulator/controller. The essential problem is very simple, but it can be extended in many ways.
There is a 10 story building with 3 elevators. Each elevator can contain up to 8 people and they can stop on all floors. The bottom floor has one button to call an elevator to go up. The top floor has one button to go down. Each of the floors in between have two buttons for going either up or down.
Your program wil have to simulate the elevators and the people that use them. You can make this as simple (text based) or extravagant (even 3D) as you wish. As long as you can show where an elevator is, where the people are (inside an elevator or waiting on a floor) and how many people are at each position.
Of course you will also have to write a controller for the elevators. The controller will have to react on the buttons pressed on the floors and inside the elevator. Again you can make this as simple or as difficult as you wish. The design must be such that you can plug in different kinds of strategies and try them out. You also need to simulate the people. They can be generated outside the building and they can only enter (and exit) they building on the bottom floor.
Three major issues are:
- data model
- lift strategy
- user interface
This project is easily divided into pieces so that you can write the app together with a couple of friends. You can also write multiple user interfaces or strategies. If you do this with friends, make sure that each of implements a strategy, so that you can try them and find out which is best. You can vary the number of floor or elevators and other external conditions once you have something that works.
Have fun! |
|
Back to top |
|
 |
GuidoJ Guru


Joined: 24 Dec 2002 Posts: 444 Location: Netherlands
|
Posted: Mon Jun 30, 2003 4:05 pm Post subject: |
|
|
This reminds me of a project I had to do in school: an elevator simulator/controller. The essential problem is very simple, but it can be extended in many ways.
There is a 10 story building with 3 elevators. Each elevator can contain up to 8 people and they can stop on all floors. The bottom floor has one button to call an elevator to go up. The top floor has one button to go down. Each of the floors in between have two buttons for going either up or down.
Your program wil have to simulate the elevators and the people that use them. You can make this as simple (text based) or extravagant (even 3D) as you wish. As long as you can show where an elevator is, where the people are (inside an elevator or waiting on a floor) and how many people are at each position.
Of course you will also have to write a controller for the elevators. The controller will have to react on the buttons pressed on the floors and inside the elevator. Again you can make this as simple or as difficult as you wish. The design must be such that you can plug in different kinds of strategies and try them out. You also need to simulate the people. They can be generated outside the building and they can only enter (and exit) they building on the bottom floor.
Three major issues are:
- data model
- lift strategy
- user interface
This project is easily divided into pieces so that you can write the app together with a couple of friends. You can also write multiple user interfaces or strategies. If you do this with friends, make sure that each of implements a strategy, so that you can try them and find out which is best. You can vary the number of floor or elevators and other external conditions once you have something that works.
Have fun! |
|
Back to top |
|
 |
|