ITx Rutherford 2019 Speakers

Keynotes and Speakers for ITx Rutherford

Check back often - more speakers are being added regularly

Daniel Dang


PhD. Daniel Dang, ICT lecturer at school of computing at EIT. He is currently teaching all papers related to software design and development, web app development and database management systems.

His research interests are Energy Efficiency in the digital world, Emerging technologies in Mobile App & Web App.

A Good Case Study to Teach all OOP Principles in a Single Solution and Expansion to solve Problems

Wednesday 11:40am - 12:10pm, CITRENZ (Catalyst Room 5)

Object-oriented programming (OOP) is a paradigm of software programming that focuses on the creation of classes/objects and the interaction between them.

Teaching OOP is considered challenging mostly because it requires a new way of thinking about problem analysis, solution design and coding style. It can be easy for novice students to learn theoretical object-oriented concepts but most of them find it difficult when it comes to solving real-world problems.

Students struggle to apply all those four object-oriented principles together in a single solution. This paper presents a good case study – development of a library management system in Java, which can be used in practical session, to help students not only gain a better understanding of OOP principles but also apply effectively them all to create a complete application.

This paper also shows the best practices to figure out candidate classes and their relationship to draw a tightly encapsulated, loosely coupled and highly cohesive class diagram as a guideline for coding phase. The paper concludes in demonstrating how to customize this solution to solve three other different problems that have the similar solution pattern: development of online bookstore software, creation of an online rental car system, and implementation an online hotel room booking application.

Teaching Mobile App Development: Choosing the best development tools in practical labs

Friday 11:00am - 11:30am, CITRENZ (Ara Room 3)

As mobile app development becomes more mainstream, many educational institutions in New Zealand recognize a need to integrate this subject into the programming-related curriculum. However, one challenge is to select the best framework and development tool to use in the practical labs amongst many available frameworks.
Choosing the right tool and language is an important factor for success in teaching and learning within this subject. This paper first presents a detailed discussion on different development tools (language) - Android Studio (Java/Kotlin), Xcode (Swift), Flutter (Dart), React Native (JavaScript), Ionic (HTML5, CSS3, TypeScript), Xamarin (C#), Cordova (HTML5, CSS3, JavaScript), and Appcelerator (JavaScript). This paper concludes by suggesting that the Android Studio IDE (Java) and Flutter Framework are ideal choices for use within practical labs. By using Android Studio, students are able to develop native apps, which are usually high-performance and good user interface, for Android devices.

By using Flutter framework, which is integrated in Android Studio, students gain the capability of creating a cross-platform apps running on both Android and iOS smartphones. Furthermore, the paper recommends a collection of eight specific topics which should be covered in the practical sessions to provide students with sufficient technical skills to develop all types of mobile apps at their disposition. While the focus is on Android platform, these topics can be used to teach other native iOS apps or cross-platform apps.