TimBastiaans / dha-eindopdracht-2019-tim

dia eindopdracht 2019
0 stars 0 forks source link

DHA Funlation App - 2019 edition

Students

Tim Bastiaans & Wesley Andriessen

Concept

This is a translation application using the Translator APIs from Funtranslations. This application is developed using Ionic and has been tested to run on Android/IOS devices and in the Google Chrome browser.

Screen sketches

The following images show the screen designs for this application.

Design

Chosen Technical requirements

1. Functionalities

The application includes the following functionalities:

2. Requirements

3. Installation

Download the zip from Github or clone the project.

After cloning or downloading the project run the code below in the terminal.

To run the application in the browser run the code below in the terminal.

To run the application on an android device run the code below in the terminal.

ionic cordova run android

Alternatively the Android/IOS application Devapp can be used to deploy to a device. To run the application on your device run the code below in the terminal.

ionic serve --devapp

4. Reflectie

Verbeterpunten

Een groot verbeterpunt van onze app is de gebruikte API. De API zelf is een goede keuze geweest wat betreft de functionaliteit van onze app, maar de gratis versie heeft maar een beperkt aantal calls per uur (5). Hierdoor kan onze app niet lang gebruikt worden. Een oplossing is om na iedere 5 calls met een vpn van locatie te wisselen. Een betere oplossing zou een andere API zijn. Of een library voor de vertalingen. Het is alleen lastig om een library te vinden met de zelfde talen (Ik denk niet dat die bestaat). Een ander verbeterpunt is het tonen van de ingesproken text. Deze veranderd alleen wanneer het invoer veld na het inspreken wordt geselecteerd. Een klein verbeterpunt is ons splash screen. Wij zijn vergeten om hierin de naam van onze app aan te passen.

Feedback

Wij hebben de feedback van Bart gehad om de morse vertalingen zelf op te nemen in onze app en niet via een API call te doen. Op deze manier zou het mogelijk zijn om de 5 calls per uur limiet van de API te vermijden door lokaal de vertalingen op te slaan. Wij hebben besloten om deze feedback niet te verwerken in onze app, omdat wij de gekozen API nu gebruiken voor meer vertalingen dan alleen maar morse code. Het leek ons niet nuttig om voor 1 vertaling een andere functionaliteit te bouwen.

App in native

Iets wat anders geïmplementeerd had kunnen worden in een native app is de front-end van onze applicatie. Op dit moment wordt de front-end gemaakt met Ionic. Voor native apps hebben de IDE's die ik gebruikt heb allemaal een scenebuilder ingebouwd (Android Studio, Xcode). Deze maken het zeer eenvoudig om een front-end voor je app te bouwen (Vooral Android Studio. Ik vind Xcode een ramp). Voor onze app zijn wij een tijd bezig geweest met de CSS en met ion-grid om de front-end te maken. Dit had ons in Android Studio weinig tijd gekost door gebruik te maken van de scenebuilder. Er is een scenebuilder voor Ionic genaamd Ionic Creator beschikbaar, maar ik heb hier geen ervaring mee en volgens reviews is er nog geen support voor Ionic 4 en weinig support voor Ionic 2/3.

De voorkeur van ons voor het maken van apps valt op native apps. Je verliest op sommige punten wat snelheid in development wanneer je native apps maakt, maar hybrid apps hebben over het algemeen slechtere performance en security.

5. Beoordeling/Evaluatie

Cijfer volgens eigen beoordeling: 6.25

Basiscijfer 6

Als voldaan is aan deze minimale vereisten:

Minpunten (of knockouts)

Pluspunten

Uiteraard kun je maximaal maar 4 van de 5 mogelijke bonuspunten halen voor een 6+4=10.