PROGRAMMING 1

SHE Level 1
SCQF Credit Points 20.00
ECTS Credit Points 10.00
Module Code M1I325083
Module Leader James Paterson
School School of Computing, Engineering and Built Environment
Subject Computing
Trimesters
  • A (September start)
  • B (January start)

Summary of Content

This module will provide an introduction to the principles and practice of object-oriented programming. It will also introduce the process of developing programs using an appropriate high level managed object-oriented programming language such as Java or C#. It will enable students to develop and test a software solution given a simple set of program requirements. The student will be introduced to the fundamental concepts of object-oriented programming, the basic practical knowledge and skills required to implement programs and a range of program development and testing techniques and practices. The percentage of Work Based Learning for this module, as represented by the proportion of the Activity Types which take place off campus, is 79%. The percentage of Work Based Assessment for this module is 10%.

Syllabus

Object-oriented programming concepts - Classes and Objects - Object interaction - Fields - Constructors - Encapsulation - Methods, parameters and messages - Scope and access modifiers - Static methods and variables - Class hierarchies and inheritance - Interfaces and abstract classes - Polymorphism Program Implementation - Data types - Variables, operators and expressions - Selection and Iteration - Constants - Arrays - Casting and type Conversion - Simple exception handling - Formatting I/O - Building graphical user interfaces Program Development Techniques - Problem solving and algorithm design - Implementing a conceptual model - Updating existing software - Program testing and debugging - Unit testing - Documenting classes - Finding appropriate library classes from documentation - Using appropriate library classes in own programs - Command line compilation and running - Use of an Integrated Development Environment

Learning Outcomes

On completion of this module, students should be able to:1 - Describe the fundamental principles of object-oriented programming.2 - Demonstrate an understanding of simple data types, control structures and the object-oriented features provided by modern object-oriented languages.3 - Demonstrate the ability to develop and test a simple object-oriented application making use of standard class libraries.

Teaching / Learning Strategy

Work Based Education aims to maximise the direct and digitally mediated contact time with students by practicing teaching and learning strategies that use authentic work based scenarios and encourage action learning, enquiry based learning, problem based learning and peer learning. All these approaches aim to directly involve the students in the process of learning and to encourage sharing of learning between students. The module team will determine the level and accuracy of knowledge acquisition at key points in the delivery, inputting when necessary either directly or with the support of external experts who will add to the authenticity, the credibility and application of the education and learning in the workplace. The course material is introduced through lectures in the form of online presentations, which as well as covering the principles of object oriented programming will illustrate the relevance of the programming and interaction techniques presented to real-world applications and introduce a range of professional software development processes and practices. Students will engage with practical programming assignments and online tutorial material which may include instruction and peer-created content, and there will be seminars on campus which will allow students to discuss key concepts and issues with peers and with instructors. Students will be expected to undertake a significant level of independent study within the workplace, including practical activities, and links will be provided to appropriate external material such as podcasts, MOOCs, videos and literature to supplement the module content. Students will be encouraged to reflect upon the theoretical learning within the workplace and the application of newly learned concepts to the work environment, and this will form part of the module assessment. Students will receive feedback on their performance through the module through undertaking the practical assignments and tutorial exercises and participating in the seminars.

Indicative Reading

Barnes D J & Kolling M (2016) Objects First with Java: A Practical Introduction Using BlueJ, Sixth Edition, Prentice-Hall Herbert Schildt (2017) Java: A Beginner's Guide, Seventh Edition, McGraw-Hill Sally Fincher (2006), Studying Programming (Palgrave Study Guides), Palgrave

Transferrable Skills

Specialist knowledge and application Critical thinking and problem solving Communication skills, written, oral and listening Numeracy Computer literacy Self confidence, self discipline & self reliance (independent working) Creativity, innovation & independent thinking Ability to prioritise tasks and time management Develop and understanding of the practical considerations that contrain the application of theory in the workplace.

Module Structure

Activity Total Hours
Seminars (FT) 24.00
Practicals (FT) 24.00
Independent Learning (FT) 110.00
Lectures (FT) 24.00
Assessment (FT) 18.00

Assessment Methods

Component Duration Weighting Threshold Description
Coursework 1 n/a 100.00 40% Continuous assessment through tests and practical and reflective assignments.