Android

Kotlin

Jest jednym z języków działającym na JVM - pełny opis: Wikipedia . Składnia i budowa kładzie nacisk na programowanie funkcyjne, co ułatwia programowanie zdarzeń a tym kontrolę interfejsu użytkownika aplikacji. Programując w Android Studio możemy bardzo elastycznie i zamiennie stosować konstrukcje czystej Javy i Kotlina.

Przydatne linki

Składnia i typy danych

Porównanie prostego programu Kalkulator w Javie oraz Kotlnie

Opracowano na podstawie: Java vs. Kotlin: Which is the Better Option for Android App Development?

Java

public class Calculator { 

public static double calculate (double a, String op, double b) throws Exception { 
	switch (op) { 
		case "add": 
			return a + b; 
		case "subtract":
			return a - b;
		case "multiply":
			return a * b; 
		case "divide": 
			return a / b;
		default: 
			throw new Exception();
		}
	}
}

Kotlin

fun calculate (a: Double, op: String, b: Double): Double { 
	when (op) { 
		"add" -> return a + b
		"subtract" -> return a - b
		"multiply" -> return a * b
		"divide" - > return a / b 
		else -> throw Exception()
	}
}

Bloki i instrukcje warunkowe

Programowanie obiektowe

Programowanie funkcyjne i obsługa zdarzeń

Tworzenie widoku

Bazy danych

SQLite - SQLiteOpenHelper

Android wspiera bazę danych SQLite (posiada ona tzw. natywne wsparcie*), Java dostarcza nam właściwe API a instalacja dodatkowych sterowników nie jest konieczna. Cała implementacja ogranicza się do minimalistycznych rozwiązań czytaj: Save data using SQLite oraz Lekkie i mobilne bazy danych (prezentacja, absolwent AGH)

*Natywny jest program, który jest przechowywany w formie kodu maszynowego danego procesora, i który nie wymaga do uruchomienia przetłumaczenia na zupełnie inny kod

Wszystkie tabele, rekordy w przypadku opisanej bazy są przechowane w jednym pliku, do którego dostęp można uzyskać realizując opisane kroki: Browse SQLite database in Android Studio. Android Studio pozwala na eksplorację plików i wgląd do wnętrza bazy po instalacji odpowiednich pluginów.

Tutoriale opisujące krok po kroku tworzenie aplikacji CRUD:

Na skutek częstych aktualizacji bibliotek i API konieczne są zmiany nazw pakietów widoku, o czym warto pamiętać. Bezmyślnie przekopiowany kod może nie zadziałać, wszystko bowiem zależy od wersji emulatora, SDK, IDE, itd.

Zewnętrzny serwer bazy danych

Rozwiązanie by Android łączył się bezpośrednio z serwerem bazy danych nie jest standardowo wdrażane. Lepiej jest stworzyć prostą usługę internetową, która przekaże żądania do bazy danych i zwróci odpowiedź.

Dobrze jest komunikować się z serwerem baz danych za pośrednictwem HTTP + JSON, SOAP, XML-RPC itd. Zapewnia to znacznie większą przepustowość i sprawia, że aplikacja jest bardziej tolerancyjna na problemy z łącznością. Rozwiązanie oszczędza również konieczności ujawniania serwera bazy danych bezpośrednio w Internecie.

Używając JAX-RS na JBoss AS 7, Tomcat 7 lub podobnym, łatwo stworzyć interfejs API usług RESTful XML / JSON dla aplikacji. Ludzie również dość często do łączęnia się z serwerem korzystają z API REST / JSON z PHP.