OOP344 Student Resources
- 1 Quick Link
- 2 Standards
- 3 Webpages
- 4 SVN
- 5 Creating Projects in Visual Studio for Console Applications
- 6 The Basics of IRC
- 7 Linked List Explained
- 8 Practice Questions/Solutions
This page will serve as a hub for all OOP344 students to create wiki pages related to the course for the purpose of aiding their fellow students. Got a handy trick that makes programming easier? Feel free to build a page about it and link it here for all your classmates to use!
To add a new page, simply put a link at the top of the page and a section below with a link and short description of what the page is about. Simple enough?
https://cs.senecac.on.ca/~btp300 <-- the degree version of oop344. Good for an indepth look at the material. Includes Workshops and Walkthroughs
https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/ <-- Notes only up to Oct 28, 2009. Includes past tests
svn://zenit.senecac.on.ca/oop344 <-- Up to Date Notes shown in all lectures
What is SVN? Subversion or SVN is a control system where it allows you to properly organize and manage files and directories and the changes to them over time. SVN allows you to recover older versions of your data, or examine the history of how your data changed. In this regard, many people think of a version control system as a sort of “time machine”. 
- Tortoise in 5 - This page is dedicated to those poor souls that have to use SVN but don't have time to read through chapter upon chapter about it just to be able to participate in assignment 2.
- RabbitVCS - RabbitVCS is a Linux alternative to TortoiseSVN. This page will help describe how to install and use RabbitVCS.
- RapidSVN - Another SVN client for Linux - a very simple and straight-forward SVN client.
The best way to learn SVN is to experiment it, we programmers, love to explore. Though Seneca already provides us SVN hosting, there are other free SVN hosting out there that you can use and experiment around (since you might not want to mess around with your team's account if you don't know what you're doing). One of the best SVN hosts out there is probably Google Code Hosting because it has many cool features such as web presentation of syntax highlighted sources, diff, wiki and more (which you can do also within a client program) of sources and it does show what SVNs are truly for: ease.
Here's a few SVN hosts:
- Google Code Hosting - create account here
- Bounty Source
- And more, ranging from free to paid hosting.
NOTE: Seneca already provides us SVN hosting (SVN login and pass), all of our work academic work should be all there.
Creating Projects in Visual Studio for Console Applications
Visual Studio is available for download from ACS
To create a new project for console applications:
- From the File menu, select New > Project
- Select Project Type as Visual C++ > Win32
- Select template Win32 Console Application
- Assign project name and choose local directory
- Uncheck the box Create directory for solution
- In the wizard, click on Application Settings
- Application type of Console application should be selected
- Check the box beside Empty project
In "Solution Explorer", add new item to Header Files or Source Files.
The Basics of IRC
IRC is also known as Internet Relay Chat. The principal of it is essentially to provide accessible chat rooms for people over the internet over multiple operating systems.
To be able to connect and interact with IRC, one must first have an IRC client of some sort. There is a wide variety of different IRC clients on all platforms. Here is a list of just a few:
- Chatzilla (Add-on for Firefox)
- mIRC (Windows)
- HydraIRC (Windows)
- Colloquy (MacOS)
- xIRC (MacOS)
- Babbel (Windows/MacOS)
- XChat (Windows/Linux)
- irssi (Windows/MacOS/Linux)
Once installed and running, you will have such options as connecting to various servers. We're particularly interested in the one which the seneca chatroom is located.
||Connects your client to an IRC server. In this case, it is the freenode server|
||Join #seneca channel|
||Change your nickname|
||Leave #seneca channel|
||Another fancy (more elegant) way of leaving|
||Open a private chat with someone|
See this for more advanced (and fun) IRC commands that works at Freenode.
Protecting your Nickname
Once connected to the server, it is a good idea to register your nick, otherwise someone can impersonate you and steal your nick -- Forcing you to change your name again.
To register, one uses the following command:
/msg nickserv REGISTER foo firstname.lastname@example.org
This will associate your account with the e-mail email@example.com, as well as have your password be foo.
To identify yourself, you do a similar command:
/msg nickserv IDENTIFY foo
If someone has taken your registered nick, or you have a zombie in the channel (Where you drop connection but you still appear in the channel), there is a command to fix that.
NOTE: Stick with
GHOST for now, as
RECOVER is becoming more obsolete.
Seneca @ Freenode
Freenode is an IRC server/network. It is the largest free and open source software-focused IRC network.
Seneca's official IRC channels such as #seneca, #seneca-social, #seneca-oop344 and more are all at Freenode.
How To Log IRC Conversations on mIRC
To log conversations on mIRC, you need to :
- Right click on the channel on the Switchbar (The bar with the channel names on it)
- Select Logging
- Select On
To view a logged conversation:
- Click on Tools
- Click on Log Files...
- Find you log file and double click it
Linked List Explained
If you don't really understand how linked lists work or why we should even use them then this page is made for you!
Another Linked List Tutorial
This is another tutorial for linked lists that will walk you through how to program one.