MIT8103 Programming Fundamentals
Unit Code
MIT8103
Level
Postgraduate
Campus
Sydney
Prerequisites
None
Credit Points
10
Subject Description
MIT8103 Programming Fundamentals lays a solid foundation in programming logic and problem-solving skills. Students will explore fundamental concepts such as code design, coding syntax, algorithms, data structures, control flow, functions, and testing and debugging, using and advanced programming language. Through practical coding exercises, students will develop the ability to translate real-world problems into executable solutions. By the end of this subject, students will not only be proficient in a programming language but will also develop critical thinking skills. This subject serves as an entry for students to embark on their programming journey, providing them with the skills necessary for advanced programming.
Subject Type
☒ Core
Study Mode: Face to face on site
Study Load: Full-time
Learning Topics
- Programming concepts and control structures
- Data structures and file handling
- Functions, recursion, searching and sorting
- Object-oriented programming and graphical interfaces
- Debugging, testing and version control
Subject Learning Outcomes
- Critically evaluate and synthesise practical programming concepts to develop innovative solutions addressing complex organisational challenges.
- Compare and justify the selection of different programming structures, assessing their applications, characteristics, advantages, and limitations, while formulating strategies for effective programming style.
- Design and implement structured solutions for complex programming tasks by deconstructing problems using advanced algorithms, including sequence, selection, iteration, functions and developing optimised programs using a modern Integrated Development Environment.
- Diagnose and rectify common coding errors through the application of advanced debugging and testing methodologies to enhance the reliability and efficiency of computer programs.
- Critically reflect on and integrate ethical considerations in secure programming practices within business environments, ensuring professional integrity and responsible utilisation of artificial intelligence tools.
Assessment
AIIHE uses a variety of assessment tools to guide and assess each student’s achievement of the subject learning outcomes. In this subject, students undertake students will demonstrate their critical knowledge and skills in computer programming languages, students will be evaluated in their computer programming knowledge, design, solving skills and debugging, and students will work on a programming task to execute in class and answer 3 questions. These tasks assess the knowledge, applied skills, critical analysis, communication and collaborative capabilities relevant to the subject.
Summary of Assessment
- Students must attempt all assessment tasks, and achieve an overall mark of at least 50%, to pass this subject.
- Assessment in this subject is consistent with and informed by the AIIHE Assessment Policy and Procedure.
| Assessment Type | Due Date | Weighting |
|---|---|---|
| Assessment 1: Practical Skills Assessments | Week 4, 6, 11 | 40% |
| Assessment 2: Online Quizzes | Week 3, 5, 8 | 30% (10% each) |
| Assessment 3: Programming Task | Week 13 | 30% |
Learning Resources
AIIHE will update the topic coverage of the subject and the available relevant learning resources at the time of subject delivery. In the interim, AIIHE provides the following indicative list of relevant reference material. AIIHE also subscribes to eLearning Resources through the Canvas portal, and where relevant material is available, AIIHE will seek to source reference material from this system for staff and student access.
Prescribed Reading
- Lambert, K., 2023, Fundamentals of Python: First programs, 3rd Edition, Cengage.
Texts and References
- Piech, C., Roberts, E., Karel the Robot Learns Python, Available from https://compedu.stanford.edu/karel-reader/docs/python/en/intro.html [viewed 6 February 2024].
- McMullen, K., Matthews, E., Parsons, J.J., 2022, Programming with Python, 1st Edition, Pearson.