ETS PPB F
Evaluasi Tengah Semester
Nama : Syaiful Bahri Dirgantara
Kelas : PPB F
1. Apa keuntungan menggunakan platform mobile Android
dibandingkan dengan platform Propietary seperti Apple?
Terdapat beberapa keuntungan antara Android dibandingkan
dengan propietary lain seperti Apple (iOS) baik dari sudut pandang pengguna
maupun developer, antara lain sebagai berikut.
Biaya dan Aksesibilitas
-
Harga Perangkat: Ada berbagai perangkat
Android yang tersedia dengan berbagai rentang harga, dari entry-level hingga
flagship, membuatnya lebih terjangkau bagi berbagai kalangan.
-
Aplikasi Gratis: Google Play Store
menawarkan lebih banyak aplikasi gratis dibandingkan App Store, meskipun ini
tergantung pada model bisnis dan strategi pengembang aplikasi.
Kustomisasi dan Fleksibilitas
-
Kustomisasi: Android memberikan pengguna
kebebasan yang lebih besar untuk menyesuaikan tampilan dan fungsi perangkat
mereka. Pengguna dapat mengubah ikon, tema, launcher, dan bahkan mengganti ROM
jika mereka memiliki pengetahuan teknis yang cukup.
-
Pilihan Perangkat: Android tersedia di
berbagai perangkat dari berbagai produsen, seperti Samsung, Google, OnePlus,
dan lain-lain, memberikan konsumen lebih banyak pilihan sesuai dengan kebutuhan
dan anggaran mereka.
Kompatibilitas dengan Perangkat Keras dan Aksesori
-
Kompatibilitas Universal: Android umumnya
lebih kompatibel dengan berbagai perangkat keras dan aksesori dari berbagai
produsen tanpa perlu adaptasi khusus.
-
Pilihan Penyimpanan Eksternal: Banyak
perangkat Android yang mendukung penggunaan kartu microSD untuk memperluas
kapasitas penyimpanan, yang tidak tersedia pada perangkat Apple.
Fitur dan Teknologi Terkini
-
Dukungan untuk Berbagai Teknologi Baru:
Android sering kali lebih cepat dalam mengadopsi teknologi baru, seperti 5G,
NFC, dan pemindai sidik jari di layar, yang mungkin memerlukan waktu lebih lama
untuk diimplementasikan di perangkat iOS.
-
Multitasking: Android menawarkan
multitasking yang lebih fleksibel dan dukungan untuk tampilan multi-window,
yang memungkinkan pengguna menjalankan beberapa aplikasi secara bersamaan
dengan lebih mudah.
Ekosistem Terbuka
-
Open Source: Android adalah sistem
operasi open source yang memungkinkan pengembang dan perusahaan untuk
menyesuaikan dan mengembangkan perangkat lunak sesuai kebutuhan mereka tanpa
banyak pembatasan.
-
Akses ke Aplikasi dari Sumber Luar:
Pengguna Android dapat mengunduh aplikasi dari sumber luar selain Google Play
Store, seperti dari Amazon Appstore atau langsung dari situs pengembang.
Pengembangan Aplikasi
-
Lingkungan Pengembangan yang Fleksibel:
Android menyediakan lingkungan pengembangan yang fleksibel dan banyak alat
gratis yang mendukung berbagai bahasa pemrograman, seperti Java, Kotlin, dan
C++.
-
Penyebaran Aplikasi: Pengembang memiliki
lebih banyak kebebasan untuk mendistribusikan aplikasi mereka dan dapat memilih
berbagai metode distribusi, tidak terbatas pada satu platform distribusi.
2. Sebutkan perkembangan teknologi Pemrograman Mobile!
1. Era Awal Perangkat Mobile (1973 - 1990-an)
- 1973:
Motorola memperkenalkan prototipe ponsel pertama, Motorola DynaTAC, yang
memulai era komunikasi seluler.
- 1983:
Motorola DynaTAC 8000X menjadi ponsel komersial pertama yang tersedia
untuk publik. Ponsel ini menggunakan jaringan analog 1G.
2. Generasi Kedua dan Kemunculan SMS (1990-an)
- 1991:
Peluncuran jaringan 2G (GSM) di Finlandia oleh Radiolinja, yang memungkinkan
komunikasi digital dan layanan pesan teks (SMS).
- 1992:
Pengiriman SMS pertama dilakukan. Nokia dan Motorola menjadi produsen
ponsel terkemuka.
3. Awal Internet Mobile dan 3G (1990-an - awal 2000-an)
- 1996:
Nokia 9000 Communicator diluncurkan, menggabungkan fitur ponsel dan PDA
(Personal Digital Assistant). Ini adalah salah satu perangkat pertama yang
memungkinkan akses internet dasar.
- 1999:
WAP (Wireless Application Protocol) memungkinkan akses internet terbatas
pada ponsel.
- 2001:
Peluncuran jaringan 3G, memungkinkan akses internet kecepatan tinggi pada
ponsel.
4. Era Smartphone Awal (2000-an)
- 2000:
Diluncurkannya Symbian OS oleh Nokia sebagai sistem operasi utama untuk
smartphone mereka.
- 2003:
BlackBerry memperkenalkan smartphone dengan kemampuan email push yang
mengubah komunikasi bisnis.
- 2007:
Apple meluncurkan iPhone, memperkenalkan iOS dengan layar sentuh kapasitif
dan ekosistem aplikasi melalui App Store.
- 2008:
Google meluncurkan Android dengan HTC Dream (T-Mobile G1) sebagai
perangkat pertama. Android adalah sistem operasi open source yang cepat
tumbuh populer.
5. Perkembangan Ekosistem Aplikasi (2008 - 2010-an)
- 2008:
Apple App Store diluncurkan, memberikan platform bagi pengembang untuk
mendistribusikan aplikasi mereka. Pemrograman untuk iOS dilakukan dengan
Objective-C.
- 2009:
Android Market (sekarang Google Play Store) diluncurkan, menyediakan
platform serupa untuk aplikasi Android. Pemrograman dilakukan dengan Java.
- 2011:
Microsoft meluncurkan Windows Phone, mencoba bersaing dengan iOS dan
Android.
6. Bahasa Pemrograman Modern dan Framework (2010-an)
- 2014:
Apple memperkenalkan Swift sebagai bahasa pemrograman baru untuk iOS,
menggantikan Objective-C secara bertahap.
- 2017:
Google mengumumkan Kotlin sebagai bahasa resmi kedua untuk pengembangan
Android, memberikan opsi modern selain Java.
- Framework
Cross-Platform:
- React
Native: Dikembangkan oleh Facebook, memungkinkan pengembangan
aplikasi lintas platform menggunakan JavaScript dan React.
- Xamarin:
Menggunakan C# dan .NET untuk mengembangkan aplikasi yang dapat berjalan
di iOS dan Android.
- Flutter:
Dikembangkan oleh Google, menggunakan bahasa Dart untuk membangun
aplikasi lintas platform dengan performa tinggi.
7. Teknologi dan Alat Modern (2010-an - 2020-an)
- Android
Studio: Pada Tahun 2013 dirilis sebuah platform atau IDE yang
dikhususkan untuk pengembangan Android bernama Android Studio. Android
Studio berkembang sangat pesat hingga sekarang dan menjadi paling banyak
digunakan untuk pengembangan aplikasi Android.
3. Bukalah aplikasi Mobile yang berkaitan dengan sistem
akademik (MyITS Apps) yang anda punya. Tuliskan dan jelaskan kegunaan fitur
yang sering anda pakai!
My ITS Presensi
Aplikasi mengenai sistem akademik yang paling sering saya
pakai adalah MyITS Presensi. MyITS Presensi ini adalah fitur yang digunakan
oleh mahasiswa ITS untuk melakukan absen pada saat hadir dalam kelas. Fitur ini
menampilkan kelas-kelas apa saja yang diambil pada semester sekarang dan di
dalamnya, mahasiswa harus memasukkan kode yang menjadi kode untuk menandai
hadir pada kelas tersebut. Terdapat pilihan untuk menandai hadir secara online
maupun offline tergantung penyelenggaraan kelas oleh dosen pengampu. Fitur ini
sangat berguna karena digunakan dosen pengampu untuk menghitung dan melacak
kehadiran setiap mahasiswa dalam setiap kelas. Bagi mahasiswa sendiri juga
dapat melacak jumlah kehadirannya dalam setiap kelas yang diambilnya.
4. Redesign dari aplikasi sesuai dengan fitur yang sering
dipakai!
5. Implementasikan dalam bentuk aplikasi Android halaman
masuk dan akses fitur yang sering dipakai!
MainActivity.kt
package com.example.mylogin
import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.tooling.preview.Preview
import com.example.mylogin.ui.theme.MyLoginTheme
class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContent {
LoginScreen()
}
}
}
LoginScreen.kt
package com.example.mylogin
import android.os.Bundle
import android.util.Log
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.compose.foundation.Image
import androidx.compose.foundation.background
import androidx.compose.foundation.layout.*
import androidx.compose.foundation.shape.RoundedCornerShape
import androidx.compose.material3.*
import androidx.compose.runtime.*
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.shadow
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.input.PasswordVisualTransformation
import androidx.compose.ui.unit.dp
import androidx.compose.ui.unit.sp
@Composable
fun LoginScreen() {
var email by remember { mutableStateOf("") }
var password by remember { mutableStateOf("") }
Column(
modifier = Modifier
.fillMaxSize()
.background(color = Color(240, 240, 240)) // Light grey color
.padding(16.dp),
verticalArrangement = Arrangement.Center,
horizontalAlignment = Alignment.CenterHorizontally
) {
Spacer(modifier = Modifier.height(32.dp)) // Space at the top
Image(
painter = painterResource(id = R.drawable.logo),
contentDescription = "Login Image",
modifier = Modifier
.size(200.dp) // Adjusted size
.padding(bottom = 16.dp) // Moved image up
)
Text(
text = "Selamat Datang",
fontSize = 36.sp,
fontWeight = FontWeight.SemiBold,
modifier = Modifier.padding(bottom = 8.dp)
)
Text(text = "Aplikasi MyITS Presensi")
Spacer(modifier = Modifier.height(16.dp))
Card(
shape = RoundedCornerShape(8.dp),
modifier = Modifier
.fillMaxWidth()
.padding(horizontal = 32.dp)
.shadow(4.dp, RoundedCornerShape(8.dp)),
colors = CardDefaults.cardColors(containerColor = Color(255, 255, 224)) // Light yellow color
) {
Column(
modifier = Modifier.padding(16.dp),
horizontalAlignment = Alignment.CenterHorizontally
) {
OutlinedTextField(
value = email,
onValueChange = { email = it },
label = { Text(text = "NRP") },
modifier = Modifier.fillMaxWidth()
)
Spacer(modifier = Modifier.height(16.dp))
OutlinedTextField(
value = password,
onValueChange = { password = it },
label = { Text(text = "Password") },
visualTransformation = PasswordVisualTransformation(),
modifier = Modifier.fillMaxWidth()
)
Spacer(modifier = Modifier.height(16.dp))
Button(
onClick = {
Log.i("Credential", "Email : $email Password : $password")
},
colors = ButtonDefaults.buttonColors(containerColor = Color(0xFF42A5F5)), // Custom RGB color
modifier = Modifier.fillMaxWidth()
) {
Text(text = "Masuk")
}
}
}
Spacer(modifier = Modifier.height(32.dp)) // Space at the bottom
}
}
6. Dokumentasikan dan demokan dalam Video Youtube dari
aplikasi yang telah dibangun.
Link gdocs : gdocs
Link Youtube : Youtube
Komentar
Posting Komentar