From Open Source@Seneca
Please help make this page resourceful for all BTP300 students to use! (Dr. Chris Szalwinski, Fall 2012)
Object-Oriented Software Development I - C++
This course continues the study of object-oriented programming, which started with BTP200. It covers the details of the C++ language at the intermediate level.
- Course Description and Learning Outcomes
- External Links
- Instructor: Dr. Peter Liu (Fall 2012)
- Collaboration is a growing trend in today's practice of software development. You may visit Wikipedia to read about Ward Cunningham and collaboration in agile software development. IBM has developed a wiki-based product for corporate learning. During this semester, you will use a wiki to learn how to collaborate with your fellow classmates when you are building up your C++ programming skills in this course. The students will take an active role in creating useful contents. The professor will play the role of an observer and a facilitator.
- You will be better prepared to enter the IT workforce and pursue courses on open source software development such as OSD600 or DPS908.
- You are expected to use this wiki when you start working on the course project as a team. In order to develop professional presentation skills, please pay attention to clarity of expression and spelling errors.
- Guidelines of Community Practice
- The key element in fostering a spirit of collaboration is that everyone is a contributor to the learning community. We will respect each other and interact with each other in a professional way. You will discover your artistic potentials when you use your favorite formats and styles in creating wiki pages.
- Week 3 (Fall 2013)
- THEME OF THIS WEEK: SENECA IS COOL AND THE POSSIBILITIES ARE ENDLESS! (posted by the newly famous Jodie Carleton)
- Week 11? (Fall 2013)
- Check out this Link for some help on Linked Lists! (posted by Jake Deacon) Linked Lists 1 Linked Lists 2
- Practice for Test 1
- Practice for Test 2
- Preparation for Final Exam
- Looking into the Future - Parallel Programming
- Looking into the Future - Big Data Analytics
The Course Project
When you work on the BTP300 assignments, you will tackle complex programming problems under demanding due dates. You can support each other by posting your questions, answers and comments on the following links. You should try your best to resolve a programming issue within your team first before you post it up here. Please do your own homework before you ask for help or clarification. Take a look at Eclipse Community Forums and see how Eclipse developers and users conduct Q & A. Note: DO NOT POST general C++/C programming questions here.
- Evaluation Scheme of Assignment 2 
- How to setup SVN
- SVN Branches for Assignment 2 (Alek)
- Merging From Your Branch Into the Trunk
- Step by Step Instructions (Alek)
- archive - A2 R0.1 (Fall 2012)
- archive - A2 R0.2 (Fall 2012)
- archive - A2 R0.3 (Fall 2012)
Midterms Q & A
Learning C++/C Programming
You may develop your research skills by creating useful topics and contents here.
- Iterators in C++ 
- Virtual Destructors and Inheritance
- C++/C Q & A on stackoverlfow
- C/C++ FAQ
- C++ Documentation 
- How does the compilation, linking process work?
- Visual C++, Borland C++, and other compilers in one IDE
- If you like to test compiling your codes with different compilers but don't border to install and run them individually, some IDEs are quite handy. E.g. Code::Blocks  (Other IDEs many also have this function). You can choose a specific compiler for each build in the IDE itself.
- Is sizeof in C++ evaluated at compilation time or run time? 
- ptrdiff_t is supposed to be used when doing pointer subtraction. But in this example,(demo program "pointerSubtraction.cpp" on matrix.senecac.on.ca) an int will work just fine storing the subtraction result. Reason: (Yiqi Liu)
- The Function Pointer Tutorials 
- Function pointer (Wikipedia) 
- C++ Vector class template 
- C++ List class template (examples) 
Workshops Q & A
- How To edit Wiki pages
- How To edit Wiki Cheatsheet
- Subversion (SVN)
- Download Page of TortoiseSVN
- TortoiseSVN Documentation
- SVN book at red-bean.com or download the PDF from here.
- IRC Tutorial
- AnkhSVN - Free Visual Studio SVN Integration Alternative To VisualSVN