MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS

Size: px
Start display at page:

Download "MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS"

Transcription

1 MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Module name Programming in C++ Module code IN2029 School Mathematics, Computer Science and Engineering Department or equivalent Department of Computing UK credits 15 ECTS 7.5 Level 5 Delivery location (partnership programmes only) MODULE SUMMARY Module outline and aims The C++ language is one of the most widely used in industry, for a wide variety of applications; home consumer (PC application) usage, finance sector, and government systems, database and scientific driven applications, internet and entertainment solutions (such as games, music players, home media devices) and the majority of the world s mobile and embedded technologies. When learning C++, it is helpful to remember that it is four languages in one: A better C, i.e., a procedural language but more type-safe than C. That is why, for example, the Linux kernel is compiled with a C++ compiler, although it is plain C code; C++ s stronger type-safety helps catch more bugs at compile time. A language for data abstraction. A language for object-orientation. A language for generic programming (using templates, as in the STL library). It is also helpful to remember that, unlike Java, C++ was meant to be as close as possible to C and as fast as possible. The latter means that one has access to low-level mechanisms and that the language provides more than one ways of doing things. Programmers choose among the alternatives based on how abstract (or how fast) they want their code to be. So, C++ can be used both for writing programs which follow all the principles of well structured object-oriented / generic-programming / data-abstraction programs and for writing programs which break almost all of the rules to get maximum speed. C++ s complexity stems from these two points: its 4-in-1 nature and the fact that it gives you absolute control of the machine, without attempting to safeguard you from a number of unsafe mechanisms, as these are usually the ones needed for low-level systems programming. This is in contrast to Java that places safety first and was partly developed to make programming safer for non-expert programmers. The complexity and power of C++ makes it difficult to write large programs without a careful introduction to some of its

2 base aspects; the early draft of the forthcoming C++ language standard (N2800= ) is 1314 pages long. The module focuses on introducing some basic aspects of the C++ language in a gradual manner so as to allow students to use it with confidence in follow-up modules (e.g., Games Development) and in their professional career. We follow a comparative approach, contrasting the features of C++ and their behaviour with those of Java, with which students are already familiar, so as to make the differences and their importance easier to understand and appreciate. The module covers the following topics (not necessarily in this order): Content outline Introduction to C++ for Java programmers. Parameter passing by value and reference. Classes in C++. Polymorphism: Method and Operator Overloading. More on I/O in C++. Polymorphism: Generic Programming. Introducing the standard template library (STL) Containers. Access to Memory: Pointers and Arrays; Container Iterators in the STL. Polymorphism: Class (Single) Inheritance and Dynamic Binding in C++. Genericity, pointers and inheritance. Multiple Inheritance. Memory management: static, stack, dynamic. Construction and destruction of objects. Implementing a container class. Program structure, separate compilation, header files. Resource management and exceptions. Pre-requisite Modules IN1007 Programming in Java Students with a mark lower than 60-65% in IN1007 may find the module to be challenging. WHAT WILL I BE EXPECTED TO ACHIEVE? On successful completion of this module, you will be expected to be able to: Knowledge and understanding: Demonstrate a good working knowledge of the core features of C++. Explain the uses and pitfalls of multiple inheritance in object-oriented languages. Choose between different memory management techniques, balancing efficiency against maintainability. Identify common design patterns appropriate to the solution of specific programming problems Explain generic typing systems.

3 Skills: Read and modify substantial well-written C++ programs. Create classes and small programs in C++ that are correct, robust and capable of being understood, reused and modified by others. Make use of various object-oriented features, including inheritance, multiple inheritance and genericity, to enhance software quality. Appreciate C++ libraries and make use of them in solving tasks. Values and attitudes: NOT STATED HOW WILL I LEARN? Teaching pattern: Teaching component Teaching type Contact Selfdirected study Placement Lectures Lecture Lab-based Tutorials Practical classes and workshops Totals Total student learning WHAT TYPES OF ASSESSMENT AND FEEDBACK CAN I EXPECT? Assessments Assessment pattern: Assessment component C++ Programming Exercises Examination Assessment type Written assignment, Programming Written exam (unseen) Weighting Minimum qualifying mark Pass/Fail? 30 N/A N/A 70 N/A N/A

4 Assessment criteria Assessment Criteria and Grade-Related Criteria for module assessments will be made available to students prior to an assessment taking place. More information will be made available from the module leader. Feedback on assessment Following an assessment, students will be given their marks and feedback in line with the Assessment Regulations and Policy. More information on the timing and type of feedback that will be provided for each assessment will be available from the module leader. Assessment Regulations The Pass mark for the module is 40%. Any minimum qualifying marks for specific assessments are listed in the table above. The weighting of the different components can also be found above. The Programme Specification contains information on what happens if you fail an assessment component or the module. INDICATIVE READING LIST Walter Savitch: Absolute C++, Addison Wesley, Bjarne Stroustrup: The C++ Programming Language, 3 rd ed, Addison Wesley, Cay Horstmann: Computing Concepts with C++ Essentials, 3 rd ed, Wiley, Walter Savitch: Problem Solving with C++, 4 th ed, Addison Wesley, Bruce Eckel: Thinking in C++, 2 nd ed. also available on-line at the author s website: The most authoritative book is Stroustrup s, since he is the author of the C++ language. For example, in the Further reading section of Absolute C++, Savitch states that if you should buy a single book on C++, Stroustrup should be your choice. Savitch also refers the reader to other, more advanced, books at certain occasions. However note that you may find Stroustrup s book difficult to understand, as it was written for professional programmers. So consult first these books in the library or a bookstore, comparing a chapter or two, to see which one you feel more comfortable with. Tools you will need for this module: g++ (C++ compiler) cpp (part of g++ - the C Pre-Processor) ld (part of g++ - the Link editor, used for producing executables and libraries) nm (extracts symbol names from a binary file, so that you can inspect its contents) c++filt (pretty-prints C++ symbol names extracted by nm) make (used for automating the compilation of programs)

5 gdb (a debugger) emacs (a very powerful editor for programmers) cvs / svn / git (programs for keeping different versions of your source code) More information about these tools can be obtained by consulting their respective manual pages and info pages - here is how you can learn more on how to use these: man man info info If you are using MS Windows, try cygwin.com for a set of Unix tools (better install the full thing, to make sure you did not miss something). A better alternative is to install Linux (e.g., Ubuntu) on a new partition of your hard drive or as a virtual machine. Exposure to Linux (and other operating systems) is paramount if you wish to become a professional programmer. Version: 2.0 Version date: September 2014 For use from: Appendix: see for the full list of JACS codes and descriptions CODES HESA Code Description Price Group 121 IT, Systems Sciences and Computer Software Engineering C JACS Code Description Percentage (%) I320 Concerned with the conversion of designs into computer instruction sets in order to satisfy the requirements of specific operational problems. 100

- Information about why the general insurance industry emerged and the benefits of insurance to society at large;

- Information about why the general insurance industry emerged and the benefits of insurance to society at large; MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Module name General Insurance Module code AS3303 School Cass Business School Department or equivalent UG Programme UK credits 15 ECTS 7.5 Level 6

More information

Chapter 3.2 C++, Java, and Scripting Languages. The major programming languages used in game development.

Chapter 3.2 C++, Java, and Scripting Languages. The major programming languages used in game development. Chapter 3.2 C++, Java, and Scripting Languages The major programming languages used in game development. C++ C used to be the most popular language for games Today, C++ is the language of choice for game

More information

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline

William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline William Paterson University of New Jersey Department of Computer Science College of Science and Health Course Outline 1. TITLE OF COURSE AND COURSE NUMBER: Object-Oriented Programming in Java, CIT 2420

More information

Internet Technologies Programming: XHTML, CSS, XML, Ajax/jQuery, Javascript, PHP, ASP.Net, MySQL, MS SQL Server.

Internet Technologies Programming: XHTML, CSS, XML, Ajax/jQuery, Javascript, PHP, ASP.Net, MySQL, MS SQL Server. MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Module name Electronic Commerce Module code IN3008 School Mathematics, Computer Science and Engineering Department or equivalent Department of Computing

More information

The aims of this module are to teach you how design and create graphics to represent data. In particular, to:

The aims of this module are to teach you how design and create graphics to represent data. In particular, to: MODULE SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Module name Data Visualization Module code IN3030 School Mathematics, Computer Science and Engineering Department or equivalent Department of Computing

More information

Programming Languages

Programming Languages Programming Languages Qing Yi Course web site: www.cs.utsa.edu/~qingyi/cs3723 cs3723 1 A little about myself Qing Yi Ph.D. Rice University, USA. Assistant Professor, Department of Computer Science Office:

More information

School of Health Sciences Department or equivalent Division of Health Services Research and Management UK credits 15 ECTS 15 Level 7

School of Health Sciences Department or equivalent Division of Health Services Research and Management UK credits 15 ECTS 15 Level 7 MODULE SPECIFICATION KEY FACTS Module name Evidence for Practice Module code NMM086 School School of Health Sciences Department or equivalent Division of Health Services Research and Management UK credits

More information

C++ INTERVIEW QUESTIONS

C++ INTERVIEW QUESTIONS C++ INTERVIEW QUESTIONS http://www.tutorialspoint.com/cplusplus/cpp_interview_questions.htm Copyright tutorialspoint.com Dear readers, these C++ Interview Questions have been designed specially to get

More information

BCS2B02: OOP Concepts and Data Structures Using C++

BCS2B02: OOP Concepts and Data Structures Using C++ SECOND SEMESTER BCS2B02: OOP Concepts and Data Structures Using C++ Course Number: 10 Contact Hours per Week: 4 (2T + 2P) Number of Credits: 2 Number of Contact Hours: 30 Hrs. Course Evaluation: Internal

More information

CMSC 10600 Fundamentals of Computer Programming II (C++)

CMSC 10600 Fundamentals of Computer Programming II (C++) CMSC 10600 Fundamentals of Computer Programming II (C++) Department of Computer Science University of Chicago Winter 2011 Quarter Dates: January 3 through March 19, 2011 Lectures: TuTh 12:00-13:20 in Ryerson

More information

Welcome to Computer Science 2604 Data Structures and File Management

Welcome to Computer Science 2604 Data Structures and File Management CS 2604 1 Welcome to Computer Science 2604 Data Structures and File Management Composition #8, Kandinsky Instructor Info and Prerequisites 2 Instructor: Email: Office: Office Hours: William D McQuain mcquain@cs.vt.edu

More information

Department of Electrical and Computer Engineering. EEL 3160 Embedded C++ and Data Structures. Tuesday & Thursday 3:00 5:00 pm

Department of Electrical and Computer Engineering. EEL 3160 Embedded C++ and Data Structures. Tuesday & Thursday 3:00 5:00 pm Department of Electrical and Computer Engineering EEL 3160 Embedded C++ and Data Structures Instructor : Dr. Herman Watson Office Hours : by appointment Monday 9:30-11:00 AM Tuesday & Thursday 3:00 5:00

More information

Introduction to Programming System Design. CSCI 455x (4 Units)

Introduction to Programming System Design. CSCI 455x (4 Units) Introduction to Programming System Design CSCI 455x (4 Units) Description This course covers programming in Java and C++. Topics include review of basic programming concepts such as control structures,

More information

CSE 452: Programming Languages. Acknowledgements. Contents. Java and its Evolution

CSE 452: Programming Languages. Acknowledgements. Contents. Java and its Evolution CSE 452: Programming Languages Java and its Evolution Acknowledgements Rajkumar Buyya 2 Contents Java Introduction Java Features How Java Differs from other OO languages Java and the World Wide Web Java

More information

Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016

Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016 Syllabus Introduction to C++ Programming and Numerical Analysis Spring 2016 lead instructor: office: web: class time: Professor Johan Walden F655 walden@haas.berkeley.edu http://www.haas.berkeley.edu/faculty/walden.html

More information

CEC225 COURSE COMPACT

CEC225 COURSE COMPACT CEC225 COURSE COMPACT Course GEC 225 Applied Computer Programming II(2 Units) Compulsory Course Duration Two hours per week for 15 weeks (30 hours) Lecturer Data Name of the lecturer: Dr. Oyelami Olufemi

More information

C Programming Review & Productivity Tools

C Programming Review & Productivity Tools Review & Productivity Tools Giovanni Agosta Piattaforme Software per la Rete Modulo 2 Outline Preliminaries 1 Preliminaries 2 Function Pointers Variadic Functions 3 Build Automation Code Versioning 4 Preliminaries

More information

How To Program A Computer

How To Program A Computer Object Oriented Software Design Introduction Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa September 23, 2010 G. Lipari (Scuola Superiore Sant Anna) OOSD September 23, 2010

More information

Course MS10975A Introduction to Programming. Length: 5 Days

Course MS10975A Introduction to Programming. Length: 5 Days 3 Riverchase Office Plaza Hoover, Alabama 35244 Phone: 205.989.4944 Fax: 855.317.2187 E-Mail: rwhitney@discoveritt.com Web: www.discoveritt.com Course MS10975A Introduction to Programming Length: 5 Days

More information

Analysis Programming

Analysis Programming Analysis Programming Remarks Please feel free to ask at any time, give helpful comments. Be aware, that the difficulty level of the various topics is not entirely constant. If things are too simple, perhaps

More information

Computing Concepts with Java Essentials

Computing Concepts with Java Essentials 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Computing Concepts with Java Essentials 3rd Edition Cay Horstmann

More information

Fundamentals of Java Programming

Fundamentals of Java Programming Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors

More information

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria OBJECT-ORIENTED DOCUMENTATION C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria Abstract Object-oriented programming improves the reusability of software

More information

Management and Leadership in Healthcare

Management and Leadership in Healthcare MODULE SPECIFICATION KEY FACTS Module name Management and Leadership in Healthcare Module code HMM022 School School of Health Sciences Department or equivalent Health Services Research and Management Division

More information

ERIKA Enterprise pre-built Virtual Machine

ERIKA Enterprise pre-built Virtual Machine ERIKA Enterprise pre-built Virtual Machine with support for Arduino, STM32, and others Version: 1.0 July 2, 2014 About Evidence S.r.l. Evidence is a company operating in the field of software for embedded

More information

Java SE 8 Programming

Java SE 8 Programming Oracle University Contact Us: 1.800.529.0165 Java SE 8 Programming Duration: 5 Days What you will learn This Java SE 8 Programming training covers the core language features and Application Programming

More information

6.088 Intro to C/C++ Day 4: Object-oriented programming in C++ Eunsuk Kang and Jean Yang

6.088 Intro to C/C++ Day 4: Object-oriented programming in C++ Eunsuk Kang and Jean Yang 6.088 Intro to C/C++ Day 4: Object-oriented programming in C++ Eunsuk Kang and Jean Yang Today s topics Why objects? Object-oriented programming (OOP) in C++ classes fields & methods objects representation

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

Introduction to Research Methods and Applied Data Analysis

Introduction to Research Methods and Applied Data Analysis MODULE SPECIFICATION KEY FACTS Module name Introduction to Research Methods and Applied Data Module code HRM001 School School of Health Sciences Department or equivalent Health Services Research and Management

More information

How To Teach C++ Data Structure Programming

How To Teach C++ Data Structure Programming UTSA EE 3223 - C++ Data Structures Syllabus Fall 2015 Part A - Course Outline Catalog Description: 3 hours credit. Review of C/C++ non-object oriented programming concepts. Object-oriented programming

More information

Building Applications Using Micro Focus COBOL

Building Applications Using Micro Focus COBOL Building Applications Using Micro Focus COBOL Abstract If you look through the Micro Focus COBOL documentation, you will see many different executable file types referenced: int, gnt, exe, dll and others.

More information

Contents. Java - An Introduction. Java Milestones. Java and its Evolution

Contents. Java - An Introduction. Java Milestones. Java and its Evolution Contents Java and its Evolution Rajkumar Buyya Grid Computing and Distributed Systems Lab Dept. of Computer Science and Software Engineering The University of Melbourne http:// www.buyya.com Java Introduction

More information

3 SOFTWARE AND PROGRAMMING LANGUAGES

3 SOFTWARE AND PROGRAMMING LANGUAGES 3 SOFTWARE AND PROGRAMMING LANGUAGES 3.1 INTRODUCTION In the previous lesson we discussed about the different parts and configurations of computer. It has been mentioned that programs or instructions have

More information

The C Programming Language course syllabus associate level

The C Programming Language course syllabus associate level TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming

More information

Mathematics, Computer Science and Engineering Department or equivalent Computer Science

Mathematics, Computer Science and Engineering Department or equivalent Computer Science PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES KEY FACTS Programme name MSc Health Informatics Award MSc School Mathematics, Computer Science and Engineering Department or equivalent Computer Science

More information

Introduction to Research Methods and Applied Data Analysis Online module

Introduction to Research Methods and Applied Data Analysis Online module MODULE SPECIFICATION KEY FACTS Module name Introduction to Methods and Applied Data Analysis Online module Module code HRM011 School School of Health Sciences Department or equivalent Health Services and

More information

Programming II. Cecotti, H. Seminars Tutorials. Independent study (including assessment)

Programming II. Cecotti, H. Seminars Tutorials. Independent study (including assessment) MODULE TITLE: MODULE CODE: Visual Programming COM321 YEAR OF REVISION: 2015/16 MODULE LEVEL: 5 CREDIT POINTS: 10 MODULE STATUS: SEMESTER: 1 LOCATION: E-LEARNING: PREREQUISITE(S): CO-REQUISITE(S): Compulsory

More information

Chapter 1 Fundamentals of Java Programming

Chapter 1 Fundamentals of Java Programming Chapter 1 Fundamentals of Java Programming Computers and Computer Programming Writing and Executing a Java Program Elements of a Java Program Features of Java Accessing the Classes and Class Members The

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

More information

Research Data Management CODING

Research Data Management CODING CODING Coding When writing software or analytical code it is important that others and your future self can understand what the code is doing. published 10 steps that they regard as the Best Practices

More information

WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER

WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER WORKSPACE WEB DEVELOPMENT & OUTSOURCING TRAINING CENTER Course Outline (2015) Basic Programming With Procedural & Object Oriented Concepts (C, C++) Training Office# Road: 11, House: 1 A, Nikunja 2, Khilkhet,

More information

CSC230 Getting Starting in C. Tyler Bletsch

CSC230 Getting Starting in C. Tyler Bletsch CSC230 Getting Starting in C Tyler Bletsch What is C? The language of UNIX Procedural language (no classes) Low-level access to memory Easy to map to machine language Not much run-time stuff needed Surprisingly

More information

DIABLO VALLEY COLLEGE CATALOG 2014-2015

DIABLO VALLEY COLLEGE CATALOG 2014-2015 COMPUTER SCIENCE COMSC The computer science department offers courses in three general areas, each targeted to serve students with specific needs: 1. General education students seeking a computer literacy

More information

1.00 Lecture 1. Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders

1.00 Lecture 1. Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders 1.00 Lecture 1 Course Overview Introduction to Java Reading for next time: Big Java: 1.1-1.7 Course information Course staff (TA, instructor names on syllabus/faq): 2 instructors, 4 TAs, 2 Lab TAs, graders

More information

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C Embedded Systems A Review of ANSI C and Considerations for Embedded C Programming Dr. Jeff Jackson Lecture 2-1 Review of ANSI C Topics Basic features of C C fundamentals Basic data types Expressions Selection

More information

Experiences with Online Programming Examinations

Experiences with Online Programming Examinations Experiences with Online Programming Examinations Monica Farrow and Peter King School of Mathematical and Computer Sciences, Heriot-Watt University, Edinburgh EH14 4AS Abstract An online programming examination

More information

Module Profile (refer to guidance notes to aid completion)

Module Profile (refer to guidance notes to aid completion) Module Profile (refer to guidance notes to aid completion) Module title PCAPM2 - Developing Learning Design: Supporting Learning Module code (assigned by Banner) EDUC 6321 CRN: (Assigned by Banner) Replacement

More information

For UCAS tariff points please refer to our website (www.bolton.ac.uk).

For UCAS tariff points please refer to our website (www.bolton.ac.uk). Programme Specification BSc (Hons) Games Programming with Foundation Awarding Institution: Teaching Institution: Division and/or Faculty/Institute: Professional accreditation The University of Bolton The

More information

School of Computer Science

School of Computer Science School of Computer Science Computer Science (CS) modules Computer Science - 1000 & 2000 Level - 2014/15 - November 2014 CS1002 Object-Oriented Programming SCOTCAT Credits: 20 SCQF Level 7 Semester: 1 10.00

More information

HPC Wales Skills Academy Course Catalogue 2015

HPC Wales Skills Academy Course Catalogue 2015 HPC Wales Skills Academy Course Catalogue 2015 Overview The HPC Wales Skills Academy provides a variety of courses and workshops aimed at building skills in High Performance Computing (HPC). Our courses

More information

A deeper look at Inline functions

A deeper look at Inline functions A deeper look at Inline functions I think it s safe to say that all Overload readers know what C++ inline functions are. When we declare a function or member function as inline we are trying to avoid the

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

Programme Specification and Curriculum Map for MSc Electronic Security and Digital Forensics

Programme Specification and Curriculum Map for MSc Electronic Security and Digital Forensics Programme Specification and Curriculum Map for MSc Electronic Security and Digital Forensics 1. Programme title Electronic Security & Digital Forensics 2. Awarding institution Middlesex University 3. Teaching

More information

1/20/2016 INTRODUCTION

1/20/2016 INTRODUCTION INTRODUCTION 1 Programming languages have common concepts that are seen in all languages This course will discuss and illustrate these common concepts: Syntax Names Types Semantics Memory Management We

More information

El Dorado Union High School District Educational Services

El Dorado Union High School District Educational Services El Dorado Union High School District Course of Study Information Page Course Title: ACE Computer Programming II (#495) Rationale: A continuum of courses, including advanced classes in technology is needed.

More information

Evolution of the Major Programming Languages

Evolution of the Major Programming Languages 142 Evolution of the Major Programming Languages Object Oriented Programming: Smalltalk Object-Oriented: It s fundamental characteristics are: Data abstraction, Inheritance and Dynamic Binding. The essence

More information

Konzepte objektorientierter Programmierung

Konzepte objektorientierter Programmierung Konzepte objektorientierter Programmierung Prof. Dr. Peter Müller Werner Dietl Software Component Technology Exercises 3: Some More OO Languages Wintersemester 04/05 Agenda for Today 2 Homework Finish

More information

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont.

Objectives. Chapter 2: Operating-System Structures. Operating System Services (Cont.) Operating System Services. Operating System Services (Cont. Objectives To describe the services an operating system provides to users, processes, and other systems To discuss the various ways of structuring an operating system Chapter 2: Operating-System Structures

More information

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries First Semester Development 1A On completion of this subject students will be able to apply basic programming and problem solving skills in a 3 rd generation object-oriented programming language (such as

More information

UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW

UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW UNDERGRADUATE COMPUTER SCIENCE EDUCATION: A NEW CURRICULUM PHILOSOPHY & OVERVIEW John C. Knight, Jane C. Prey, & Wm. A. Wulf Department of Computer Science University of Virginia Charlottesville, VA 22903

More information

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages

Chapter 1. Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705. CS-4337 Organization of Programming Languages Chapter 1 CS-4337 Organization of Programming Languages Dr. Chris Irwin Davis Email: cid021000@utdallas.edu Phone: (972) 883-3574 Office: ECSS 4.705 Chapter 1 Topics Reasons for Studying Concepts of Programming

More information

AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION

AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION AC 2007-2027: A PROCESSOR DESIGN PROJECT FOR A FIRST COURSE IN COMPUTER ORGANIZATION Michael Black, American University Manoj Franklin, University of Maryland-College Park American Society for Engineering

More information

School of Informatics Department or equivalent Department of Computer Science Programme code

School of Informatics Department or equivalent Department of Computer Science Programme code PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES KEY FACTS Programme name E-Business Systems Award MSc School School of Informatics Department or equivalent Department of Computer Science Programme code

More information

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011 University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011 Department Mission The Department of Computer Science in the College of Arts and Sciences

More information

6.S096 Lecture 1 Introduction to C

6.S096 Lecture 1 Introduction to C 6.S096 Lecture 1 Introduction to C Welcome to the Memory Jungle Andre Kessler Andre Kessler 6.S096 Lecture 1 Introduction to C 1 / 30 Outline 1 Motivation 2 Class Logistics 3 Memory Model 4 Compiling 5

More information

Programme Specification (Postgraduate) Date amended: 25 th March 2015

Programme Specification (Postgraduate) Date amended: 25 th March 2015 Programme Specification (Postgraduate) Date amended: 25 th March 2015 1. Programme Title(s): MSc/PGDip in Advanced Engineering with Management MSc in Advanced Engineering with Management and Industry Engineering

More information

Compiling Object Oriented Languages. What is an Object-Oriented Programming Language? Implementation: Dynamic Binding

Compiling Object Oriented Languages. What is an Object-Oriented Programming Language? Implementation: Dynamic Binding Compiling Object Oriented Languages What is an Object-Oriented Programming Language? Last time Dynamic compilation Today Introduction to compiling object oriented languages What are the issues? Objects

More information

CSE 307: Principles of Programming Languages

CSE 307: Principles of Programming Languages Course Organization Introduction CSE 307: Principles of Programming Languages Spring 2015 R. Sekar Course Organization Introduction 1 / 34 Topics 1. Course Organization Info and Support Course Description

More information

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES. Cass Business School Department or equivalent UG Programme (Cass Business School) UCAS Code

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES. Cass Business School Department or equivalent UG Programme (Cass Business School) UCAS Code PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Programme name Business Studies Award BSc (Hons) School Cass Business School Department or equivalent UG Programme (Cass Business School) UCAS

More information

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students Eastern Washington University Department of Computer Science Questionnaire for Prospective Masters in Computer Science Students I. Personal Information Name: Last First M.I. Mailing Address: Permanent

More information

PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES

PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES PROGRAMME SPECIFICATION POSTGRADUATE PROGRAMMES KEY FACTS Programme name Award School Department or equivalent Programme code Type of study Total UK credits 180 Total ECTS 90 PROGRAMME SUMMARY Legal Translation

More information

School of Health Sciences Department or equivalent Division of Midwifery and Radiography UK credits 15 ECTS 7.5 Level 7

School of Health Sciences Department or equivalent Division of Midwifery and Radiography UK credits 15 ECTS 7.5 Level 7 MODULE SPECIFICATION KEY FACTS Module name Risk and Midwifery Practice Module code NMM039 School School of Health Sciences Department or equivalent Division of Midwifery and Radiography UK credits 15 ECTS

More information

Monitoring, Tracing, Debugging (Under Construction)

Monitoring, Tracing, Debugging (Under Construction) Monitoring, Tracing, Debugging (Under Construction) I was already tempted to drop this topic from my lecture on operating systems when I found Stephan Siemen's article "Top Speed" in Linux World 10/2003.

More information

Soft processors for microcontroller programming education

Soft processors for microcontroller programming education Soft processors for microcontroller programming education Charles Goetzman Computer Science University of Wisconsin La Crosse goetzman.char@uwlax.edu Jeff Fancher Electronics Western Technical College

More information

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS. School of Arts and Social Sciences Department or equivalent Department of Psychology

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS. School of Arts and Social Sciences Department or equivalent Department of Psychology PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Programme name Psychology Award BSc (Hons) School School of Arts and Social Sciences Department or equivalent Department of Psychology UCAS Code

More information

Software Design and Implementation - or, how to be a hacker

Software Design and Implementation - or, how to be a hacker Computer Science 50 Software Design and Implementation - or, how to be a hacker In what follows, we discuss the course overview, grading, books, weekly schedule, laboratory assignments, group projects

More information

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department

NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department NEW YORK CITY COLLEGE OF TECHNOLOGY/CUNY Computer Systems Technology Department COURSE: CST1201 Programming Fundamentals (2 class hours, 2 lab hours, 3 credits) Course Description: This course is an intensive

More information

The Use of Hardware Abstraction Layers in Automated Calibration Software

The Use of Hardware Abstraction Layers in Automated Calibration Software The Use of Hardware Abstraction Layers in Automated Calibration Software Speaker: Logan Kunitz Author: Rishee Bhatt National Instruments 11500 N. Mopac Expwy. Austin, TX 78759-3504 (512) 683-6944 Rishee.Bhatt@ni.com

More information

FOUNDATION DEGREE - BUSINESS MANAGEMENT PROGRAMME SPECIFICATION

FOUNDATION DEGREE - BUSINESS MANAGEMENT PROGRAMME SPECIFICATION FOUNDATION DEGREE - BUSINESS MANAGEMENT PROGRAMME SPECIFICATION 1 Awarding institution/body University of Essex 2 Teaching institution Writtle College 3 Programme accredited by n/a 4 Named award FdA Business

More information

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture Last Class: OS and Computer Architecture System bus Network card CPU, memory, I/O devices, network card, system bus Lecture 3, page 1 Last Class: OS and Computer Architecture OS Service Protection Interrupts

More information

Refractive Surgery. School of Health Sciences Department or equivalent Division of Optometry and Visual Science UK credits 15 ECTS 7.

Refractive Surgery. School of Health Sciences Department or equivalent Division of Optometry and Visual Science UK credits 15 ECTS 7. MODULE SPECIFICATION KEY FACTS Module name Refractive Surgery Module code OVM022 School School of Health Sciences Department or equivalent Division of Optometry and Visual Science UK credits 15 ECTS 7.5

More information

Course Title: Software Development

Course Title: Software Development Course Title: Software Development Unit: Customer Service Content Standard(s) and Depth of 1. Analyze customer software needs and system requirements to design an information technology-based project plan.

More information

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.)

COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) VCU 1 COMPUTER SCIENCE, BACHELOR OF SCIENCE (B.S.) The Bachelor of Science in Computer Science is built on a rigorous, highly concentrated, accredited curriculum of computer science courses. The program

More information

CS A250 (CRN 20690-25399) C++ Programming Language 2. Syllabus Fall 2015

CS A250 (CRN 20690-25399) C++ Programming Language 2. Syllabus Fall 2015 CS A250 (CRN 20690-25399) C++ Programming Language 2 Syllabus Fall 2015 Instructor: Gabriela Ernsberger E-mail: gernsberger@occ.cccd.edu Course Web site: www.thisclass.info Office: MB Computing Center

More information

Health Sciences Department or equivalent Division of Health Services Research and Management UK credits 15 ECTS 7.5 Level 7

Health Sciences Department or equivalent Division of Health Services Research and Management UK credits 15 ECTS 7.5 Level 7 MODULE SPECIFICATION KEY FACTS Module name International Health Systems Module code HPM004 School Health Sciences Department or equivalent Division of Health Services Research and Management UK credits

More information

Course Descriptions. CS 101 Intro to Computer Science

Course Descriptions. CS 101 Intro to Computer Science Course Descriptions CS 101 Intro to Computer Science An introduction to computer science concepts and the role of computers in society. Topics include the history of computing, computer hardware, operating

More information

Programme Specification and Curriculum Map for MSc Business Information Systems Management

Programme Specification and Curriculum Map for MSc Business Information Systems Management Programme Specification and Curriculum Map for MSc Business Information Systems Management 1. Programme title Business Information Systems Management 2. Awarding institution Middlesex University 3. Teaching

More information

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON PROBLEM SOLVING WITH SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON Addison Wesley Boston San Francisco New York London

More information

CS10110 Introduction to personal computer equipment

CS10110 Introduction to personal computer equipment CS10110 Introduction to personal computer equipment PRACTICAL 4 : Process, Task and Application Management In this practical you will: Use Unix shell commands to find out about the processes the operating

More information

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS. School of Arts and Social Sciences Department or equivalent Department of Psychology

PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS. School of Arts and Social Sciences Department or equivalent Department of Psychology PROGRAMME SPECIFICATION UNDERGRADUATE PROGRAMMES KEY FACTS Programme name Psychology Award BSc (Hons) School School of Arts and Social Sciences Department or equivalent Department of Psychology UCAS Code

More information

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1

Structure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1 The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions

More information

Syllabus for CS 134 Java Programming

Syllabus for CS 134 Java Programming - Java Programming Syllabus Page 1 Syllabus for CS 134 Java Programming Computer Science Course Catalog 2000-2001: This course is an introduction to objectoriented programming using the Java language.

More information

Cass Business School Department or equivalent MSc Programme (Cass Business School)

Cass Business School Department or equivalent MSc Programme (Cass Business School) PROGRAMME SPECIFICATION KEY FACTS Programme name Finance Award MSc School Cass Business School Department or equivalent MSc Programme (Cass Business School) Programme code PSFNIN Type of study Full Time

More information

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages

Language Evaluation Criteria. Evaluation Criteria: Readability. Evaluation Criteria: Writability. ICOM 4036 Programming Languages ICOM 4036 Programming Languages Preliminaries Dr. Amirhossein Chinaei Dept. of Electrical & Computer Engineering UPRM Spring 2010 Language Evaluation Criteria Readability: the ease with which programs

More information

Programme name Civil Engineering, Civil Engineering with Industrial Placement

Programme name Civil Engineering, Civil Engineering with Industrial Placement PROGRAMME SPECIFICATION KEY FACTS Programme name Civil Engineering, Civil Engineering with Industrial Placement Award BEng (Hons) School School of Mathematics, Computer Science and Engineering Department

More information

Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C

Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C Embedded Programming in C/C++: Lesson-1: Programming Elements and Programming in C 1 An essential part of any embedded system design Programming 2 Programming in Assembly or HLL Processor and memory-sensitive

More information

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Competencies (Page 1 of 2) Describe the six steps of programming Discuss design

More information

Programme Specification: MSc Electronic Commerce

Programme Specification: MSc Electronic Commerce Programme Specification: MSc Electronic Commerce 1. Awarding institution Middlesex University 2. Teaching institution Middlesex University 3. Programme accredited by 4. Final qualification MSc 5. Programme

More information

Real-time Debugging using GDB Tracepoints and other Eclipse features

Real-time Debugging using GDB Tracepoints and other Eclipse features Real-time Debugging using GDB Tracepoints and other Eclipse features GCC Summit 2010 2010-010-26 marc.khouzam@ericsson.com Summary Introduction Advanced debugging features Non-stop multi-threaded debugging

More information

Development. G450 Multimedia Computing Science. Part time: COM5014

Development. G450 Multimedia Computing Science. Part time: COM5014 Programme Specification Programme Title: HND Computing and Website Development Awarding Institution: Teaching Institution: Division and/or Faculty/Institute: Professional accreditation Final award(s):

More information