Kapan sebaiknya kalian menggunakan Fragment dan kapan akan menggunakan Activity
Jawaban : Praktik terbaiknya adalah hanya menggunakan Activity saat kalian perlu
menukar keseluruhan layar atau keseluruhan halaman, lalu mengunakan Fragment pada
Activity tersebut, artinya Fragment tidak akan bisa berdiri sendiri tanpa adanya minimal
satu Activity dengan kata lain Fragment adalah Sub-Activity.
2. Bagaimana mencegah “Reverse Engineering” pada Aplikasi Mobile yang kita bangun ?
Jawaban :
1. ProGuard
ProGuard akan membuat fungsi-fungsi dalam source code menyusut (Shrink),
mengoptimalkan (Optimization), mengacak kode yang ditulis. (Obfuscation).
3. Kapan sebaiknya kalian menggunakan Shared Preferences dan kapan akan menggunakan
SQLite Database pada Android
Jawaban : Untuk data yang disimpan lebih sedikit sebaiknya menggunakan Shared
Preferences, misalnya data user login. Sedangkan untuk simpan data yang lebih besar
atau lebih banyak sebaiknya menggunakan SQLite Database.
4. Saat kamu bekerja sebagai Android Developer, dan akan menerima sebuah “warisan”
berupa kode program yang telah di tulis oleh developer sebelumnya. Bagaimana cara kita
memahami kode tersebut,sedangkan developer yang membuatnya sudah tidak bekerja
lagi di perusahaan tersebut ?. Apa solusi yang bisa kamu terapkan untuk meminimalkan
kasus seperti ini
Jawaban : Menerapkan penggunaan Design Pattern. Design pattern , ibarat sebuah
konsep atau template.
5. Coba lakukan penyimpanan data pribadi berupa nama, jenis kelamin, usia dan alamat
dengan menggunakan SQLite Database pada Android
Jawaban : Akan ada satu table Database dan ada empat field
Sintax simpan ke database
Jawaban :
public String currencyRupiahFormat(String nums) {
String temp = nums.replaceAll("\\.", "");
if (temp.length() <= 3) {
return temp;
} else {
return currencyRupiahFormat(temp.substring(0,temp.length() - 3))
+ "." + currencyRupiahFormat(temp.substring(temp.length() -3));
}
}
7. Buatlah program dengan bahasa java untuk menampilkan deret bilangan dari 1 s.d 100
dengan ketentuan sebagai berikut:
a.Jika bilangan tersebut merupakan angka genap maka output yang ditampilkan
adalah angka dari bilangan tersebut.
b.Jika bilangan tersebut merupakan angka ganjil maka output yang ditampilkan adalah
kata “android”
c. Jika bilangan tersebut merupakan angkayang dapat dibagi 2 dan dapat dibagi 3 maka
output yang ditampilkan adalah kata “java”
Contoh Output yang diharapkan:
1 java 3 java 5 java 7 java 9 java …...97 java 99 java
Jawaban :
public static void main(String[] args) {
for(int i =1; i <= 100; i++){
if (i % 2 == 0 && i % 3 == 0) {
System.out.println("java");
}else if (i % 2 == 0) {
System.out.println(i);
}else{
System.out.println(“android”);
}
}
}
8. Diberikan sebuah string str. Hitung jumlah kata dari string tersebut
Input string : “Aku adalah seorang developer Android yang handal sedang melakukan
perjalanan ditengah laut Indonesia, bertemu dengan teman lama dari Sumatera keturunan
India”.
Jawaban :
int jumlahKata = 0;
int i = 0;
while (i < data.length()) {
while (i < data.length() && data.charAt(i) == ' ') i++;
9. Diberikan sebuah string str. Hitung jumlah huruf, angka dan spasi dari string tersebut
Input string : “Aku adalah seorang developer Android level 1530”.
Output :
Jumlah Spasi ada sebanyak 6 buah
Jumlah angka 0 ada sebanyak 1 buah
Jumlah angka 1 ada sebanyak 1 buah
Jumlah angka 3 ada sebanyak 1 buah
Jumlah angka 5 ada sebanyak 1 buah
Jumlah huruf a ada sebanyak 6 buah
Jumlah huruf d ada sebanyak 4 buah
Jumlah huruf e ada sebanyak 6 buah
Jumlah huruf g ada sebanyak 1 buah
Jumlah huruf h ada sebanyak 1 buah
Jumlah huruf i ada sebanyak 1 buah
Jumlah huruf k ada sebanyak 1 buah
Jumlah huruf l ada sebanyak 4 buah
Jumlah huruf n ada sebanyak 2 buah
Jumlah huruf o ada sebanyak 3 buah
Jumlah huruf p ada sebanyak 1 buah
Jumlah huruf r ada sebanyak 3 buah
Jumlah huruf s ada sebanyak 1 buah
Jumlah huruf u ada sebanyak 1 buah
Jumlah huruf v ada sebanyak 2 buah
Jawaban :
String kata = "Aku adalah seorang developer Android level 1530";
kata = kata.toLowerCase();
Nama : John
Usia : 34 tahun
Alamat : Pekan Baru
Nama : Budiman
Usia : 29 tahun
Alamat : Batam
Jawaban :
class User {
private String name;
private int age;
private String address;
users.forEach(user -> {
System.out.println("Nama : " + user.getName() + "\nUsia : "
+ user.getAge() +" tahun"+"\nAlamat : "+user.getAddress());
System.out.println("");
});