SlideShare a Scribd company logo
INTRO TO MODULE
Michael Heron
Introduction
• Welcome to AC21002.
• It’s about C++ and Object Orientation
• And some other things.
• The focus of the module is on object oriented design and
implementation.
• C++ is a delivery language, but much of what you will be learning
about is transferable.
• We will be talking about the transferability of concepts as
part of the module content.
Module Structure
• Every Week for the first seven weeks.
• Three formal lectures.
• One lab-prep lecture
• One tutorial
• Programming with pen and paper
• You’ll love it!
• Two(ish) hours of lab time.
• Lab is booked for a four hour slot.
• I am your tour guide for the first seven weeks.
• Someone else takes over after that.
Module Assessment
• Assessment consists of:
• 5 Lab Exercises (worth 8% each)
• These will be two week exercises
• Final exam (60%)
• You get an opportunity to resit the examination.
• You do not get a chance to resit the coursework.
• Keep up with the coursework!
Course Plan
Week Rough Content (subject to change)
1 Introduction to module and C++
2 Object Orientation Principles
3 Overloading
4 The Pillars of Object Orientation
5 Abstraction and Templates
6 Additional C++ Syntax
7 Data Structures and Algorithm Design
Tools of the Trade
• We will be using the Visual Studio package for this
module.
• This is available through the MSDNAA if you need it at home.
• We are primarily working with console based applications.
• Text only
• Main GUI Programming course next year.
Lectures
• There is a lot of theory to this module.
• And a good deal of practise too.
• I can’t emphasize enough how important it is that you
attend regularly.
• There is a direct correlation between attendance and pass rates in
programming modules.
• Lecture slides will be available online.
• But lectures will cover things not on the slides.
• Because I tend to ramble…
Object Orientation: Disclaimer
• You will read many programming books that claim some
variation of the following:
• ‘Object Orientation is an easy programming technique to learn
because it matches the way people think’
• It is my experience that this is hokum.
• Object orientation is to my mind a rather difficult way of putting
together computer programs.
• However, the benefit is that it is also perhaps the most effective way yet
discovered.
Object Orientation: Disclaimer
• This problem is exacerbated by the necessities of
teaching.
• The concepts we discuss are really best suited to large and
complex programs.
• We never really give you large and complex programs to code.
• There are reasons for this, but for a big part of this module
you’re just going to have to trust us in that this stuff is all
important.
Coursework
• The coursework exercises all offer a substantial degree of
freedom.
• You are given relatively open briefs.
• One of the resources you have available to you as a
developer is your peer group.
• That means in this context, your fellow students.
• You should make good use of them where you can.
Coursework
• However, the work that you submit for the module should
be your own work.
• Discussing problems and solutions with others is fine and dandy
• Using source code from other people is not.
• In all cases, if you are making use of code that was
derived from that of a fellow student, or from the internet,
or a book, then you should comment it as so.
• Citing your sources is good practise generally, but in this module in
particular it will inoculate you against the risks of plagiarism.
Plagiarism
• To a degree, all programming is plagiarism.
• Reusability is one of the things programmers strive for.
• The University of Dundee however treats plagiarism as a
serious offence.
• At a minimum, you get zero marks for a lab exercise.
• At a maximum, you can be expelled from the university.
Plagiarism
• The labs and the tutorials are there to reinforce your
understanding of the theoretical content.
• We have to strike a balance between the realities of
programming and the requirements of the university.
• Submit your own work
• Cite any code that is not your own work.
• If in doubt, ask!
The Examination
• The examinations take place in December.
• The exam paper has four questions, and there is no choice
given in the questions you may answer.
• You are not required to memorize large chunks of code.
• You are required to be conversant with C++ syntax.
• You are required to be conversant with object oriented
principles and data structure design.
The Examination
• The key for the examination is understanding.
• We are not looking for recall, we are looking for genuine
understanding of the topics.
• Examination questions will stress understanding of
implications of concepts.
• The tutorials will be used to aid in building this
understanding.
Marking
• This module uses the university’s standard marking
scheme.
• However, there is an informal guideline you can use when
trying to work out what grade your work will gain you.
• This is only a rough measure, varying factors come into play when
the submissions are actually being graded.
Marking Guidelines
Degree Class Criteria
Fail No submission, or a submission that fails to meet the
requirements of the coursework brief.
Aim higher than this!
3rd The program meets the minimum requirements of the
coursework brief.
2:2 The program meets the full requirements of the coursework
brief.
2:1 As 2:2, plus:
demonstrates good practice and design.
1st As 2:1 plus:
shows evidence of additional reading.
Further Understanding
• Meeting the full requirements of the brief will not be enough to
attain the highest grades in this module.
• If you want A marks, you need to incorporate techniques, code
or design that has not been covered in the body of the module.
• Your submission has to ‘sparkle’
• Don’t ask me ‘What would be a cool thing to add here’
• You’re supposed to be surprising me.
Summary
• This is your module.
• I hope you find it interesting!
• It’s about C++ and Object Orientation.
• It can be heavy going, but stick in there.
• It’s me for seven weeks.
• Someone else for the three after that.
• Understanding is important
• So make sure you turn up!

More Related Content

PDF
Technical Mentoring, What works and not
PDF
How I help others to level up technical practices
PPTX
645 course overview
PDF
CS571: Introduction
PPT
Session 5 - Evaluation and Useability for elearning
PDF
Meeting the Challenges for PMP Certification using NEW approaches.
PPTX
Intelligent Uses and New Intelligences for D2L Intelligent Agents
PPTX
Workplace Simulated Courses - Course Technology Computing Conference
Technical Mentoring, What works and not
How I help others to level up technical practices
645 course overview
CS571: Introduction
Session 5 - Evaluation and Useability for elearning
Meeting the Challenges for PMP Certification using NEW approaches.
Intelligent Uses and New Intelligences for D2L Intelligent Agents
Workplace Simulated Courses - Course Technology Computing Conference

What's hot (20)

PPT
E Learning Development Process
PDF
Cad syllabus 2016 2017
PPTX
CALL and CLIL
PPTX
51 ways to reduce your out-of-class marking
PPT
Steve Cassidy 2008
PPTX
7 Ways to Use the NOT Release Conditions in Brightspace
PPTX
Get Computer Science Assignment Solving Tips
PPTX
New Intelligences for Intelligent Agents - webinar slides
PDF
Coding syllabus 2016 2017
PDF
Programming in Java: Introduction
PPTX
Teleseminar on Project Management Certification Prep September 2014
PPT
Planning Your Syllabus
PPTX
SAMR Model
PDF
14.45 sviridova
PPT
Slot01 introduction-deaktop javaapps
PPTX
VLC WebEx meeting (8/9/11)
PPTX
Creating Accessible Documents
PPTX
Learning Technology Change Management - Thomas Hawkins
PDF
Test Automation Patterns: Issues and Solutions
PPTX
Brannan edit5395 kahoot
E Learning Development Process
Cad syllabus 2016 2017
CALL and CLIL
51 ways to reduce your out-of-class marking
Steve Cassidy 2008
7 Ways to Use the NOT Release Conditions in Brightspace
Get Computer Science Assignment Solving Tips
New Intelligences for Intelligent Agents - webinar slides
Coding syllabus 2016 2017
Programming in Java: Introduction
Teleseminar on Project Management Certification Prep September 2014
Planning Your Syllabus
SAMR Model
14.45 sviridova
Slot01 introduction-deaktop javaapps
VLC WebEx meeting (8/9/11)
Creating Accessible Documents
Learning Technology Change Management - Thomas Hawkins
Test Automation Patterns: Issues and Solutions
Brannan edit5395 kahoot
Ad

Similar to 2CPP01 - Intro to Module (20)

PPTX
CS134 - 1 - Overview for CS Student.pptx
PPTX
2CPP19 - Summation
PDF
lecture1.pdf
PPTX
CS 109 Five Critical Questions
PPTX
Samefilename compressed
PPTX
Essentials for a Better ICT Student in Palestine
PPTX
Student Survey Nov 2022
PPTX
Five Important Things You Won't Find in a Course Quality Rubric - Barry Dahl
PPT
Samefilename compressed practice
KEY
Faq onlinestudents fa10
PDF
Faq onlinestudents fa10_compress
PDF
Introduction to Webdev2
PPT
Frequently Asked Questions for Online Courses at GCCCD
PPTX
Software development fundamentals
PPT
Faq onlinestudents su12
DOC
Internet & java course breakup
PDF
Faq onlinestudents fa10-compressed
PPTX
1-18-17 Agenda IT 100-50.pptx
PPTX
CPP16 - Object Design
PDF
Faq onlinestudents fa10_compressed
CS134 - 1 - Overview for CS Student.pptx
2CPP19 - Summation
lecture1.pdf
CS 109 Five Critical Questions
Samefilename compressed
Essentials for a Better ICT Student in Palestine
Student Survey Nov 2022
Five Important Things You Won't Find in a Course Quality Rubric - Barry Dahl
Samefilename compressed practice
Faq onlinestudents fa10
Faq onlinestudents fa10_compress
Introduction to Webdev2
Frequently Asked Questions for Online Courses at GCCCD
Software development fundamentals
Faq onlinestudents su12
Internet & java course breakup
Faq onlinestudents fa10-compressed
1-18-17 Agenda IT 100-50.pptx
CPP16 - Object Design
Faq onlinestudents fa10_compressed
Ad

More from Michael Heron (20)

PPTX
Meeple centred design - Board Game Accessibility
PPTX
Musings on misconduct
PDF
Accessibility Support with the ACCESS Framework
PDF
ACCESS: A Technical Framework for Adaptive Accessibility Support
PPTX
Authorship and Autership
PDF
Text parser based interaction
PPTX
SAD04 - Inheritance
PPT
GRPHICS08 - Raytracing and Radiosity
PPT
GRPHICS07 - Textures
PPT
GRPHICS06 - Shading
PPT
GRPHICS05 - Rendering (2)
PPT
GRPHICS04 - Rendering (1)
PPTX
GRPHICS03 - Graphical Representation
PPTX
GRPHICS02 - Creating 3D Graphics
PPTX
GRPHICS01 - Introduction to 3D Graphics
PPT
GRPHICS09 - Art Appreciation
PPTX
2CPP18 - Modifiers
PPTX
2CPP17 - File IO
PPT
2CPP16 - STL
PPT
2CPP15 - Templates
Meeple centred design - Board Game Accessibility
Musings on misconduct
Accessibility Support with the ACCESS Framework
ACCESS: A Technical Framework for Adaptive Accessibility Support
Authorship and Autership
Text parser based interaction
SAD04 - Inheritance
GRPHICS08 - Raytracing and Radiosity
GRPHICS07 - Textures
GRPHICS06 - Shading
GRPHICS05 - Rendering (2)
GRPHICS04 - Rendering (1)
GRPHICS03 - Graphical Representation
GRPHICS02 - Creating 3D Graphics
GRPHICS01 - Introduction to 3D Graphics
GRPHICS09 - Art Appreciation
2CPP18 - Modifiers
2CPP17 - File IO
2CPP16 - STL
2CPP15 - Templates

Recently uploaded (20)

PDF
Nekopoi APK 2025 free lastest update
PDF
wealthsignaloriginal-com-DS-text-... (1).pdf
PDF
How to Choose the Right IT Partner for Your Business in Malaysia
PDF
Wondershare Filmora 15 Crack With Activation Key [2025
PPTX
Why Generative AI is the Future of Content, Code & Creativity?
PDF
Autodesk AutoCAD Crack Free Download 2025
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PDF
Download FL Studio Crack Latest version 2025 ?
PDF
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
PDF
17 Powerful Integrations Your Next-Gen MLM Software Needs
PDF
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
PPTX
Oracle Fusion HCM Cloud Demo for Beginners
PPTX
L1 - Introduction to python Backend.pptx
PPTX
Monitoring Stack: Grafana, Loki & Promtail
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
Patient Appointment Booking in Odoo with online payment
PDF
Odoo Companies in India – Driving Business Transformation.pdf
PPTX
Reimagine Home Health with the Power of Agentic AI​
PDF
Salesforce Agentforce AI Implementation.pdf
PPTX
history of c programming in notes for students .pptx
Nekopoi APK 2025 free lastest update
wealthsignaloriginal-com-DS-text-... (1).pdf
How to Choose the Right IT Partner for Your Business in Malaysia
Wondershare Filmora 15 Crack With Activation Key [2025
Why Generative AI is the Future of Content, Code & Creativity?
Autodesk AutoCAD Crack Free Download 2025
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
Download FL Studio Crack Latest version 2025 ?
EN-Survey-Report-SAP-LeanIX-EA-Insights-2025.pdf
17 Powerful Integrations Your Next-Gen MLM Software Needs
Adobe Premiere Pro 2025 (v24.5.0.057) Crack free
Oracle Fusion HCM Cloud Demo for Beginners
L1 - Introduction to python Backend.pptx
Monitoring Stack: Grafana, Loki & Promtail
Computer Software and OS of computer science of grade 11.pptx
Patient Appointment Booking in Odoo with online payment
Odoo Companies in India – Driving Business Transformation.pdf
Reimagine Home Health with the Power of Agentic AI​
Salesforce Agentforce AI Implementation.pdf
history of c programming in notes for students .pptx

2CPP01 - Intro to Module

  • 2. Introduction • Welcome to AC21002. • It’s about C++ and Object Orientation • And some other things. • The focus of the module is on object oriented design and implementation. • C++ is a delivery language, but much of what you will be learning about is transferable. • We will be talking about the transferability of concepts as part of the module content.
  • 3. Module Structure • Every Week for the first seven weeks. • Three formal lectures. • One lab-prep lecture • One tutorial • Programming with pen and paper • You’ll love it! • Two(ish) hours of lab time. • Lab is booked for a four hour slot. • I am your tour guide for the first seven weeks. • Someone else takes over after that.
  • 4. Module Assessment • Assessment consists of: • 5 Lab Exercises (worth 8% each) • These will be two week exercises • Final exam (60%) • You get an opportunity to resit the examination. • You do not get a chance to resit the coursework. • Keep up with the coursework!
  • 5. Course Plan Week Rough Content (subject to change) 1 Introduction to module and C++ 2 Object Orientation Principles 3 Overloading 4 The Pillars of Object Orientation 5 Abstraction and Templates 6 Additional C++ Syntax 7 Data Structures and Algorithm Design
  • 6. Tools of the Trade • We will be using the Visual Studio package for this module. • This is available through the MSDNAA if you need it at home. • We are primarily working with console based applications. • Text only • Main GUI Programming course next year.
  • 7. Lectures • There is a lot of theory to this module. • And a good deal of practise too. • I can’t emphasize enough how important it is that you attend regularly. • There is a direct correlation between attendance and pass rates in programming modules. • Lecture slides will be available online. • But lectures will cover things not on the slides. • Because I tend to ramble…
  • 8. Object Orientation: Disclaimer • You will read many programming books that claim some variation of the following: • ‘Object Orientation is an easy programming technique to learn because it matches the way people think’ • It is my experience that this is hokum. • Object orientation is to my mind a rather difficult way of putting together computer programs. • However, the benefit is that it is also perhaps the most effective way yet discovered.
  • 9. Object Orientation: Disclaimer • This problem is exacerbated by the necessities of teaching. • The concepts we discuss are really best suited to large and complex programs. • We never really give you large and complex programs to code. • There are reasons for this, but for a big part of this module you’re just going to have to trust us in that this stuff is all important.
  • 10. Coursework • The coursework exercises all offer a substantial degree of freedom. • You are given relatively open briefs. • One of the resources you have available to you as a developer is your peer group. • That means in this context, your fellow students. • You should make good use of them where you can.
  • 11. Coursework • However, the work that you submit for the module should be your own work. • Discussing problems and solutions with others is fine and dandy • Using source code from other people is not. • In all cases, if you are making use of code that was derived from that of a fellow student, or from the internet, or a book, then you should comment it as so. • Citing your sources is good practise generally, but in this module in particular it will inoculate you against the risks of plagiarism.
  • 12. Plagiarism • To a degree, all programming is plagiarism. • Reusability is one of the things programmers strive for. • The University of Dundee however treats plagiarism as a serious offence. • At a minimum, you get zero marks for a lab exercise. • At a maximum, you can be expelled from the university.
  • 13. Plagiarism • The labs and the tutorials are there to reinforce your understanding of the theoretical content. • We have to strike a balance between the realities of programming and the requirements of the university. • Submit your own work • Cite any code that is not your own work. • If in doubt, ask!
  • 14. The Examination • The examinations take place in December. • The exam paper has four questions, and there is no choice given in the questions you may answer. • You are not required to memorize large chunks of code. • You are required to be conversant with C++ syntax. • You are required to be conversant with object oriented principles and data structure design.
  • 15. The Examination • The key for the examination is understanding. • We are not looking for recall, we are looking for genuine understanding of the topics. • Examination questions will stress understanding of implications of concepts. • The tutorials will be used to aid in building this understanding.
  • 16. Marking • This module uses the university’s standard marking scheme. • However, there is an informal guideline you can use when trying to work out what grade your work will gain you. • This is only a rough measure, varying factors come into play when the submissions are actually being graded.
  • 17. Marking Guidelines Degree Class Criteria Fail No submission, or a submission that fails to meet the requirements of the coursework brief. Aim higher than this! 3rd The program meets the minimum requirements of the coursework brief. 2:2 The program meets the full requirements of the coursework brief. 2:1 As 2:2, plus: demonstrates good practice and design. 1st As 2:1 plus: shows evidence of additional reading.
  • 18. Further Understanding • Meeting the full requirements of the brief will not be enough to attain the highest grades in this module. • If you want A marks, you need to incorporate techniques, code or design that has not been covered in the body of the module. • Your submission has to ‘sparkle’ • Don’t ask me ‘What would be a cool thing to add here’ • You’re supposed to be surprising me.
  • 19. Summary • This is your module. • I hope you find it interesting! • It’s about C++ and Object Orientation. • It can be heavy going, but stick in there. • It’s me for seven weeks. • Someone else for the three after that. • Understanding is important • So make sure you turn up!