Checking date: 10/07/2020


Course: 2020/2021

Programming Techniques
(18261)
Study: Bachelor in Applied Mathematics and Computing (362)


Coordinating teacher: ABDULLA JASSIM, HARITH AL JUMAILY

Department assigned to the subject: Department of Computer Science and Engineering

Type: Basic Core
ECTS Credits: 6.0 ECTS

Course:
Semester:

Branch of knowledge: Engineering and Architecture



Students are expected to have completed
- Calculus - Programming
BASICS COMPETENCES: CB1 : Students have shown to have and to understand knowledge in a subject area built from the general secondary education background, and is usually at a level that is supported by advanced textbooks, but also includes some aspects implying knowledge coming from the state of the art in their subject matter. CB2 : Students are able to apply their knowledge to their job or vocation in a professional way and have the competences that are usually shown by elaboration and defense of arguments and problem solving within their subject matter. CB3 : Students have the ability to gather and interpret relevant data (usually within their subject matter) to make judgements, including a reflection on relevant social, scientific or ethical topics. CB4 : Students can communicate information, ideas, problems and solutions to specialized and non-specialized public. CB5 : Students have developed those learning abilities that are needed to take later studies with a high degree of autonomy. GENERAL COMPETENCES: CG1 : Students are able to demonstrate knowledge and understanding of concepts in mathematics, statistics and computation and to apply them to solve problems in science and engineering with an ability for analysis and synthesis. CG3 : Students can solve computationally with the help of the most advanced computing tools mathematical models coming from applications in science, engineering, economy and other social sciences. CG4 : Students are able to show that they can analyze and interpret, with help of computer science, the solutions obtained from problems associated to real world mathematical models, discriminating the most relevant behaviours for each application. CG6 : Students can search and use bibliographic resources, in physical or digital support, as they are needed to state and solve mathematically and computationally applied problems arising in new or unknown environments or with insufficient information. SPECIFIC COMPETENCES: CE10 : Students have shown that they know and understand the algorithmic procedures to design and build programs that solve mathematical problems paying special attention to performance. CE11 : Students have shown that they know the concepts of imperative, generic, object oriented and functional programming and distinguish interpreted, virtual machine based and native programming languages as well as the impact that they have on performance of algorithms and applications.
Description of contents: programme
1. Basics of C++ Language 2. Compound Data Type 3. Errors and Exceptions handling 4. Functions 5. Object Oriented Programming 6. Input/Output Streams 7. Dynamic Memory Management 8. Generic Programming and OOP 9. Containers, Iterators, and Algorithms
Learning activities and methodology
1. Theory Lectures with the objective of acquire the cognitive specific competences. 2. Academic activities guided by the teacher: a) With the teacher: to solve exercises devoted to analyze, design and implement cases with different level of complexity in collaboration with students. Some of the exercises will be carried out in computer laboratories. b) Student work: Individually or cooperatively, with exercises, implementation cases and basic readings from bibliography proposed by the teacher. These activities can be performed as: - Individual work consisting on developing solutions to the problems and exercises posed by the teacher. - Working cooperatively developing solutions to the problems proposed by the teacher. 3. Mid-term partial exam and final exam. 4. There will be a group tutorship for each small group to solve the queries and doubts of students.
Assessment System
  • % end-of-term-examination 40
  • % of continuous assessment (assigments, laboratory, practicals...) 60
Basic Bibliography
  • Bjarne Stroustrup. The C++ Programming Language. Addison-Wesley. 2013
  • Bjarne Stroustrup. Programming: Principles and Practice Using C++, Second Edition. Addison-Wesley Professional. 2014
  • Josuttis, Nicolai M.. The C++ standard library: a tutorial and reference, 2nd Edition. Addison-Wesley. 2012
  • Stanley, B., and Lajoie L. . C++ PRIMER. Addison-Wesley. 2019
  • Stroustrup, Bjarne. A Tour of C++. 2nd Edition. Addison-Wesley Professional. 2018

The course syllabus and the academic weekly planning may change due academic events or other reasons.