Undergraduate Programme and Module Handbook 2024-2025
Module COMP1101: PROGRAMMING (BLACK)
Department: Computer Science
COMP1101: PROGRAMMING (BLACK)
Type | Open | Level | 1 | Credits | 20 | Availability | Available in 2024/2025 | Module Cap | None. | Location | Durham |
---|
Prerequisites
- A-level Mathematics AND (A-level Computing, or equivalent experience: identified through diagnostic test)
Corequisites
- COMP1051 Computational Thinking
Excluded Combination of Modules
- COMP1111 Programming (Gold)
Aims
- To introduce the theory, principles and practice of programming by means of the JavaScript programming language.
- To use JavaScript in the wider context of problem solving and software development.
- To apply programming principles to real-world problems
Content
- The construction of simple programs in JavaScript.
- JavaScript for client-side and server-side web scripting
- Awareness of intellectual property issues for software including copyright, patents and open source licensing.
Learning Outcomes
Subject-specific Knowledge:
- Interaction between JavaScript progams and the Document Object Model (DOM)
- Using control statements to loop and make decisions.
- Building collections of data within a program and using JavaScript Object Notation (JSON)
- Making programs robust through the use of exceptions and exception handling
- An understanding of the nature of imperative programming in the object-oriented style.
- A knowledge and understanding of good programming practice (for example, reuse, documentation and style)
Subject-specific Skills:
- On completion of the module, students will be able to demonstrate:
- an ability to realise solutions to problems as working JavaScript programs
- an ability to apply reuse by exploiting predefined components
- an ability to use software tools related to programming (programming environments, code management, documentation tools, etc.)
- an ability to apply software development tools and skills in real-world scenarios e.g. open-source projects, hackathons, competitions
Key Skills:
- On completion of the module, students will be able to demonstrate:
- an ability to reason about problems (for which an algorithmic solution is suitable)
- an ability to recognise and apply the principles of abstraction and modelling
- an ability to communicate technical information.
- an ability to plan and work independently.
Modes of Teaching, Learning and Assessment and how these contribute to the learning outcomes of the module
- Lectures provide the students with a mechanism by which to learn the theory behind JavaScript programming
- Practical classes support the lectures by enabling the application and appreciation of the theory
- Summative assignments encourage and guide further independent study within specific guidelines relating to programming tasks
Teaching Methods and Learning Hours
Activity | Number | Frequency | Duration | Total/Hours | |
---|---|---|---|---|---|
lectures | 20 | 2 per week in term 1 | 1 hour | 20 | |
tutorials | 12 | 1 per week in term 2 | 1 hour | 12 | |
practicals | 9 | 1 per week in term 1 | 2 hours | 18 | ■ |
preparation and reading | 150 | ||||
total | 200 |
Summative Assessment
Component: Coursework | Component Weighting: 100% | ||
---|---|---|---|
Element | Length / duration | Element Weighting | Resit Opportunity |
Practical Work | 100% |
Formative Assessment:
Example formative exercises given during the course.
■ Attendance at all activities marked with this symbol will be monitored. Students who fail to attend these activities, or to complete the summative or formative assessment specified above, will be subject to the procedures defined in the University's General Regulation V, and may be required to leave the University