Unit - The University of Sydney INFO1113: Object-Oriented Programming University home Library Current students Staff intranet Give Skip to main content Library Current students Staff intranet Give Toggle the side menu Search for Courses Type to search Courses Students All content Search Study Study Find a course Why choose Sydney? Study options How to apply Starting university International students Student accommodation Events for prospective students Research Research Coronavirus (COVID-19) research and expertise Indigenous research Research areas Centres and institutes Research impact Our researchers Facilities Funding Partnerships Research degrees Clinical trials Volunteer for research study Integrity and ethics Engage with us Engage with us Give Alumni Global engagement Industry and business partnerships Schools Community engagement Visit the University Events and sponsorships Contact the engagement team About us About us Our story Our rankings Vision and values Governance and structure Faculties and schools Campuses Careers at Sydney Working with the University Contact us News & opinion News & opinion News Subscribe Podcasts Videos News archive Media contacts Find an expert Current students Units INFO1113 During 2021 we will continue to support students who need to study remotely due to the ongoing impacts of COVID-19 and travel restrictions. Make sure you check the location code when selecting a unit outline or choosing your units of study in Sydney Student. Find out more about what these codes mean. Both remote and on-campus locations have the same learning activities and assessments, however teaching staff may vary. More information about face-to-face teaching and assessment arrangements for each unit will be provided on Canvas. Unit of study_ INFO1113: Object-Oriented Programming Object-oriented (OO) programming is a technique that arranges code into classes, each encapsulating in one place related data and the operations on that data. Inheritance is used to reuse code from a more general class, in specialised situations. Most modern programming languages provide OO features. Understanding and using these are an essential skill to software developers in industry. This unit provides the student with the concepts and individual programming skills in OO programming, starting from their previous mastery of procedural programming. Details Enrolment rules Learning outcomes Code INFO1113 Academic unit Computer Science Credit points 6 Prerequisites: ? INFO1110 OR INFO1910 OR ENGG1810 Corequisites: ? None Prohibitions: ? INFO1103 OR INFO1105 OR INFO1905 At the completion of this unit, you should be able to: LO1. demonstrate an understanding of the concept of Object-Orientation: understand and explain key concepts of object-oriented programming, including classes as encapsulating data, object instances, memory model of references, methods and calling them across objects LO2. read and interpret an object oriented design document LO3. demonstrate an understanding of the memory model and differences between locations of variables LO4. derive a computer program from a design document that uses concepts of OO and memory model, trace and write small examples of code including the following elements: inheritance, polymorphism, abstract classes and interfaces, variables and their type and the relationship between static and dynamic type, exception LO5. demonstrate experience in testing Object-Oriented programs, write tests for standalone objects, be able to generate and handle exceptions, create invariants for classes, methods and objects, pre- and post-conditions for methods, and assertions LO6. create appropriate class/data structure including the data types and methods for simple problems LO7. read, trace and write recursive Object-Oriented programs to perform an operation in a related set of classes that support some nested structure LO8. demonstrate an understanding of Object-Oriented programming language : reading, tracing and writing competence with the following elements of Java programming language: classes, methods, object creation; instance and local variables, parameters and scope; basic types; simple I/O; control flow primitives and understand, modify and add functionality to Java programs LO9. demonstrate experience writing code with common interfaces and collections in Object-Oriented programming language LO10. demonstrate experience in testing and debugging Object-Oriented programs, write tests for stand-alone object code, to be run automatically. Unit outlines Unit outlines will be available 2 weeks before the first day of teaching for the relevant session. Current year Future year Previous years Semester 1, 2021 [Normal day] - Remote Semester 1, 2021 [Normal day] - Camperdown/Darlington, Sydney Semester 2, 2021 [Normal day] - Remote Semester 2, 2021 [Normal day] - Camperdown/Darlington, Sydney Semester 2, 2022 [Normal day] - Remote Semester 1, 2022 [Normal day] - Camperdown Semester 2, 2022 [Normal day] - Camperdown Semester 1, 2022 [Normal day] - Remote Semester 1, 2020 [Normal day] - Camperdown/Darlington, Sydney Semester 2, 2020 [Normal day] - Camperdown/Darlington, Sydney Key dates Key dates through the academic year, including teaching periods, census, payment deadlines and exams. Student administration Enrolment, course planning, fees, graduation, support services, student IT Expectations of student conduct Code of Conduct for Students, Conditions of Enrollment, University Privacy Statement, Academic Integrity Academic appeals Academic appeals process, special consideration, rules and guidelines, advice and support Learning and teaching policy Policy register, policy search Financial support Scholarships, interest free loans, bursaries, money management Study resources Learning Centre, faculty and school programs, Library, online resources Health and support Student Centre, counselling & psychological services, University Health Service, general health and wellbeing Enrol now Current students can enrol in Sydney Student Unit search Search unit name, unit code or keywords Useful links myUni Proposed timetables for 2021 Library Canvas Sydney Student Handbooks Student Admin Health management Leadership for good starts here Media News Find an expert Media contacts Student links How to log in to University systems Key dates Class timetables Policies About us Our rankings Faculties and schools Centres and institutes Campus locations Connect Contact us Find a staff member Careers at Sydney Event calendar Emergencies and personal safety Member of University of Sydney Twitter University of Sydney Facebook University of Sydney Instagram University of Sydney Youtube University of Sydney Wechat Follow us_ Disclaimer Privacy Accessibility Website feedback ABN: 15 211 513 464 CRICOS Number: 00026A TEQSA: PRV12057