Postgraduate Course: Programming Skills (PGPH11079)
Course Outline
School | School of Physics and Astronomy |
College | College of Science and Engineering |
Credit level (Normal year taken) | SCQF Level 11 (Postgraduate) |
Availability | Not available to visiting students |
SCQF Credits | 10 |
ECTS Credits | 5 |
Summary | Writing code can be easy. Writing modular, robust, reliable, maintainable, efficient and understandable code can be more challenging. This course provides a practical introduction to skills and knowledge covering program design and development. It is designed to help you to produce higher quality code, more rapidly and with less effort. These programming skills are applicable to any programming language and the course is illustrated with examples from C, Fortran 90, Java and Python. Areas of specific relevance to high-performance computing, including the use of batch systems, scientific libraries, profilers and performance analysis, are also covered. |
Course description |
Lectures cover key aspects of good programming practice:
* How programs run - fundamentals of operating systems and compilers.
* What makes a good program - writing programs for people.
* Code design - abstract data types and object-orientation.
* Automated testing.
* Analysis, profiling and performance.
Other requirements:
You must have some experience in a programming language e.g. C, C++, FORTRAN, Java or Python, and be familiar with programming concepts including conditionals, loops, arrays and functions.
|
Entry Requirements (not applicable to Visiting Students)
Pre-requisites |
|
Co-requisites | |
Prohibited Combinations | |
Other requirements | You must have experience in a programming language e.g. C, C++, FORTRAN, Java or Python, and be familiar with programming concepts including conditionals, loops, arrays and functions. |
Course Delivery Information
|
Academic year 2015/16, Not available to visiting students (SS1)
|
Quota: 46 |
Course Start |
Semester 1 |
Timetable |
Timetable |
Learning and Teaching activities (Further Info) |
Total Hours:
100
(
Lecture Hours 22,
Seminar/Tutorial Hours 11,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
65 )
|
Additional Information (Learning and Teaching) |
Please contact the School for further information
|
Assessment (Further Info) |
Written Exam
0 %,
Coursework
100 %,
Practical Exam
0 %
|
Additional Information (Assessment) |
Three submissions: 20% individual report, 60% group-based source code, 20% individual report. |
Feedback |
Not entered |
No Exam Information |
Learning Outcomes
On completion of this course, the student will be able to:
- Develop code in a Linux/Unix environment.
- Develop code that is modular, robust, reliable, maintainable, efficient and understandable.
- Use software development tools including integrated development environments, code browsers, debuggers, revision control, build management, test frameworks, and profilers.
- Design, execute, analyse and write-up software performance experiments.
|
Additional Information
Graduate Attributes and Skills |
Not entered |
Keywords | PS (S1) |
Contacts
Course organiser | Dr Michael Jackson
Tel:
Email: |
Course secretary | Yuhua Lei
Tel: (0131 6) 517067
Email: |
|
|