wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

Ujian Tengah Semester (UTS) Pengenalan Pemrograman Platform

Total questions: 60

Worksheet time: 30mins

Name
Class
Date
1.

Fokus utama mata kuliah Pengenalan Pemrograman Platform adalah memahami bagaimana sebuah aplikasi berjalan pada berbagai platform. Apa aspek fundamental yang paling ditekankan?

a)

Menghafal syntax pemrograman

b)

Menulis algoritma dasar

c)

Menganalisis arsitektur dan lingkungan eksekusi aplikasi

d)

Menghafal library bahasa

e)

Membuat aplikasi Android saja

2.

Kernel dianggap sebagai inti OS. Dalam konteks arsitektur platform, apa fungsi utama Kernel?

a)

Menyimpan seluruh file sistem

b)

Mengontrol hardware dan mengatur proses sistem

c)

Menjalankan aplikasi user secara langsung

d)

Mengompilasi seluruh kode aplikasi

e)

Menentukan layout antarmuka

3.

Process dalam OS dirancang untuk menjaga stabilitas aplikasi. Apa karakteristik paling penting dari sebuah process?

a)

Selalu berbagi memori dengan process lain

b)

Dapat berjalan tanpa OS

c)

Memiliki ruang memori yang terisolasi

d)

Tidak bisa mengalami crash

e)

Tidak membutuhkan CPU scheduler

4.

Interpreter memiliki perilaku eksekusi yang berbeda dari compiler. Apa mekanisme utamanya?

a)

Menjalankan kode dari database

b)

Mengubah seluruh kode menjadi machine code sejak awal

c)

Mengeksekusi kode baris demi baris saat runtime

d)

Menjalankan kode melalui GPU

e)

Menghapus kesalahan secara otomatis

5.

Dalam kolaborasi developer modern, Git dikategorikan sebagai jenis Version Control apa?

a)

Centralized VCS

b)

Manual VCS

c)

Distributed VCS

d)

Hybrid VCS

e)

Cloud-only VCS

6.

Pada workflow Git, Staging Area diperlukan untuk apa?

a)

Menyimpan commit ke server

b)

Menjalankan aplikasi

c)

Memilih perubahan yang akan dimasukkan ke commit

d)

Menyimpan backup otomatis

e)

Menghapus repository

7.

Dalam REST API, method GET digunakan ketika:

a)

Membuat data baru

b)

Menghapus data

c)

Mengambil data tanpa mengubah state server

d)

Mengirimkan proses login

e)

Menjalankan script di server

8.

Format data paling umum digunakan pada REST API karena ringan dan mudah diparse. Format tersebut adalah…

a)

CSV

b)

XML

c)

HTML

d)

Binary

e)

JSON

9.

HTTPS dibutuhkan pada aplikasi modern. Apa definisi konsepnya?

a)

Kombinasi HTTP dengan TLS/SSL untuk enkripsi

b)

Versi lama dari HTTP

c)

HTTP tanpa keamanan

d)

Protokol untuk API saja

e)

Protokol penyimpanan

10.

Status code 404 digunakan ketika:

a)

Terjadi Client Error karena resource tidak ditemukan

b)

Operasi berhasil

c)

Perlu redirect

d)

Terjadi Server Error

e)

Login berhasil

11.

Mengapa bahasa berkategori compiled umumnya lebih cepat?

a)

Karena memerlukan RAM besar

b)

Karena menghasilkan machine code sebelum dieksekusi

c)

Karena interpreter berjalan di GPU

d)

Karena compiler menghapus error otomatis

e)

Karena compiler berjalan secara paralel

12.

Model Bytecode + VM memberikan fleksibilitas lintas platform. Apa keuntungan utamanya?

a)

Tidak membutuhkan OS

b)

Menggabungkan portabilitas dan performa

c)

Hanya cocok untuk mobile

d)

Tidak dapat berjalan di server

e)

Menghilangkan error

13.

Thread mampu bekerja lebih cepat tetapi lebih berisiko. Mengapa demikian?

a)

Karena thread memiliki memori sendiri

b)

Karena berjalan tanpa OS

c)

Karena berbagi memori sehingga rawan race condition

d)

Karena tidak menggunakan CPU

e)

Karena tidak bisa dihentikan

14.

Mengapa aplikasi perlu menggunakan Non-blocking I/O?

a)

CPU tidak bisa multitasking

b)

I/O lambat sehingga blok pada thread utama menyebabkan freeze

c)

Untuk menghemat RAM

d)

Untuk mempercepat rendering tampilan

e)

Untuk mengenkripsi data

15.

Perbedaan utama DVCS dan CVCS adalah:

a)

DVCS tidak memiliki server

b)

CVCS menyimpan semua repository lokal

c)

DVCS menyimpan histori lengkap pada tiap developer

d)

DVCS hanya mendukung Linux

e)

CVCS selalu lebih cepat

16.

Perintah “git reset --hard” dapat berdampak besar. Dampak utamanya adalah:

a)

Menghapus repository remote

b)

Mengubah commit message

c)

Menghapus seluruh perubahan lokal setelah hash tertentu

d)

Menciptakan branch baru

e)

Melakukan merge otomatis

17.

Pull Request (PR) digunakan terutama untuk:

a)

Menghapus branch

b)

Menggabungkan branch dengan proses review

c)

Menjalankan server Git

d)

Mengupload file ke cloud

e)

Menyimpan password

18.

Mengapa commit message harus jelas dan ringkas?

a)

Untuk membuat repository lebih ringan

b)

Untuk mempercepat kompilasi

c)

Karena commit adalah dokumentasi sejarah proyek

d)

Karena Git mewajibkannya

e)

Agar bisa dibaca OS

19.

API sering diibaratkan seperti menu restoran karena:

a)

Berisi harga

b)

Menentukan UI

c)

Menentukan layanan apa yang bisa diminta client

d)

Selalu berupa gambar

e)

Tidak pernah berubah

20.

PATCH berbeda dari PUT karena:

a)

PUT menghapus data

b)

PATCH membuat data

c)

PATCH memperbarui sebagian field, PUT memperbarui keseluruhan resource

d)

PUT hanya untuk mobile

e)

PATCH tidak menggunakan HTTP

21.

Mengapa HTTP dianggap stateless?

a)

Tidak bisa menyimpan file

b)

Setiap request tidak mempertahankan informasi state

c)

HTTP digunakan di web saja

d)

HTTP tidak mendukung JSON

e)

Karena client selalu offline

22.

Status code 201 digunakan ketika:

a)

Data gagal dihapus

b)

Server tidak tersedia

c)

Server berhasil membuat resource baru

d)

Terjadi overload

e)

Login gagal

23.

JSON lebih populer dibanding XML karena:

a)

Lebih lambat

b)

Lebih verbose

c)

Lebih ringkas dan mudah diparse

d)

Hanya digunakan di Java

e)

Tidak berbentuk key-value

24.

Dalam arsitektur client–server, tanggung jawab client adalah:

a)

Menjalankan logika bisnis inti

b)

Menyimpan database

c)

Mengirim request dan menampilkan UI

d)

Mengatur load balancing

e)

Mengelola RAM server

25.

Mengapa HTTPS wajib digunakan pada aplikasi modern?

a)

Karena lebih cepat

b)

Untuk mengenkripsi komunikasi dan melindungi data sensitif

c)

Karena HTTP sudah tidak didukung browser

d)

Karena hanya HTTPS yang mendukung JSON

e)

Untuk menghemat bandwidth

26.

Merge conflict terjadi ketika…

a)

Server Git sedang tidak stabil

b)

Developer lupa melakukan push

c)

Dua developer mengubah baris kode yang sama pada file yang sama

d)

Branch terlalu banyak

e)

Staging area penuh

27.

Perbedaan utama antara git fetch dan git pull adalah:

a)

Fetch menghapus branch lokal

b)

Fetch mengirim perubahan ke remote

c)

Fetch mengambil data remote tanpa melakukan merge

d)

Pull lebih lambat

e)

Pull hanya untuk Linux

28.

Mengapa API menjadi komponen penting pada arsitektur microservices?

a)

Karena semua service digabung menjadi satu file

b)

Karena API menyimpan seluruh log aktivitas

c)

Karena API memungkinkan komunikasi antar service

d)

Karena API mengontrol database utama

e)

Karena API mempercepat rendering UI

29.

Apa manfaat utama penggunaan VM pada runtime seperti JVM?

a)

Mengurangi ukuran file

b)

Menjamin portabilitas dan isolasi aplikasi

c)

Mempercepat Internet

d)

Menghapus error secara otomatis

e)

Menghemat baterai perangkat

30.

Mengapa Event Loop pada Node.js menjadi inti dari performanya?

a)

Untuk menjalankan GPU

b)

Untuk menambah jumlah thread

c)

Untuk menangani operasi I/O secara non-blocking

d)

Untuk mengompilasi bytecode

e)

Untuk mempercepat kompresi

31.

Platform apa yang menjalankan aplikasi langsung di dalam browser melalui JavaScript?

a)

Web

b)

Mobile

32.

DOM dalam web development berfungsi sebagai…

a)

Data Object Manager

b)

Dynamic Operating Module

c)

Document Operation Mechanism

d)

Document Object Model

e)

Digital Object Mapping

33.

Bahasa pemrograman yang umum digunakan pada Android Native adalah:

a)

PHP

b)

Ruby

c)

Swift

d)

Kotlin / Java

e)

Delphi

34.

Untuk menyimpan pengaturan sederhana seperti user preference, Android menggunakan…

a)

Database NoSQL

b)

Blockchain

c)

JSON

d)

SQLite

e)

Shared Preferences

35.

Aplikasi desktop biasanya lebih unggul dalam hal:

a)

Tidak memerlukan OS

b)

Tanpa instalasi

c)

Performa CPU & GPU tertinggi

d)

Selalu cross-platform

e)

Hemat baterai

36.

Pada arsitektur Web Tiga Tingkat, komponen yang menangani logika bisnis adalah:

a)

Presentation Tier

b)

Data Tier

c)

Client Tier

d)

Routing Tier

e)

Application Tier

37.

Ketika thread utama UI terblokir, aplikasi desktop kemungkinan besar akan…

a)

Restart otomatis

b)

Tidak terpengaruh

c)

Mempercepat rendering

d)

Mengurangi penggunaan GPU

e)

Freeze / Hang

38.

Framework cross-platform yang digunakan untuk membuat aplikasi mobile adalah:

a)

Laravel

b)

Spring

c)

Flutter

d)

Django

e)

VueJS

39.

Pada lifecycle aplikasi mobile, kondisi saat aplikasi tidak terlihat tetapi masih berjalan disebut:

a)

Foreground

b)

Background

c)

Terminated

d)

Booting

e)

Restarting

40.

Pada backend web, tugas utamanya adalah:

a)

Mengatur layout CSS

b)

Mengelola animasi UI

c)

Menjalankan logika bisnis dan mengelola database

d)

Menangani gesture touch

e)

Menyimpan file instalasi

41.

Karena HTTP stateless, backend harus menggunakan mekanisme tambahan seperti:

a)

CDN

b)

DNS

c)

Proxy

d)

Cache

e)

Session & JWT

42.

Untuk mengurangi biaya manipulasi DOM langsung, frontend modern menggunakan:

a)

MVC Parser

b)

CSS Preprocessor

c)

Virtual DOM

d)

WebSocket

e)

REST API

43.

Tantangan terbesar dalam pengembangan mobile adalah:

a)

Tidak ada sensor

b)

Fragmentasi perangkat

c)

Tidak perlu izin

d)

Baterai tidak penting

e)

Tidak ada perbedaan layar

44.

Saat aplikasi masuk state “Paused”, tindakan yang tepat dilakukan oleh aplikasi adalah:

a)

Menghapus database

b)

Menyimpan temporary state

c)

Mempercepat CPU

d)

Mematikan GPU

e)

Menutup jaringan

45.

Framework desktop yang bersifat cross-platform adalah:

a)

Electron

b)

Swift

c)

Hadoop

d)

SQLite

e)

SQL Server

46.

Proses mencocokkan URL request dengan fungsi handler di backend disebut…

a)

Routing

b)

Parsing

c)

Modeling

d)

Rendering

e)

Deploying

47.

Keuntungan utama MVVM pada pengembangan GUI desktop adalah:

a)

Mengurangi massive controller melalui data binding

b)

Membuat layout otomatis

c)

Menambah ukuran file

d)

Menghilangkan event

e)

Menambah GPU usage

48.

Contoh komponen yang lazim ditempatkan sebagai middleware adalah:

a)

Template HTML

b)

CSS Styling

c)

Animasi UI

d)

Manajemen DPI

e)

Validasi input & autentikasi

49.

Keunggulan JWT dibanding session tradisional adalah:

a)

Selalu offline

b)

Menggunakan token tanpa enkripsi

c)

Tidak ada token

d)

Hanya untuk mobile

e)

Mendukung server stateless & scalable

50.

Penyimpanan data terstruktur default untuk aplikasi mobile adalah:

a)

Redis

b)

Excel

c)

MongoDB

d)

SQLite

e)

Google Sheet

51.

Masalah klasik pada MVC yang diatasi oleh MVVM adalah:

a)

Tampilan sulit dibuat

b)

Tidak ada GUI

c)

Massive Controller

d)

Tidak bisa binding

e)

DOM lambat

52.

Push Notification pada mobile biasanya menggunakan layanan:

a)

DNS

b)

SMTP

c)

RSA

d)

FCM / APNs

e)

WebRTC

53.

Mengapa memory leak berbahaya?

a)

Membuat UI lebih responsif

b)

Menghemat RAM

c)

Mempercepat GPU

d)

Menyebabkan aplikasi crash atau berjalan lambat

e)

Menghapus cache otomatis

54.

Fragmentasi perangkat dapat diatasi menggunakan:

a)

Satu ukuran layar

b)

Menghapus UI

c)

Constraint-based responsive layout

d)

Menutup semua resource

e)

Mengunci DPI

55.

Tantangan utama dalam deployment aplikasi desktop adalah:

a)

Tidak membutuhkan installer

b)

Selalu online

c)

Membutuhkan installer & dependency management

d)

Tidak butuh library

e)

Tidak menggunakan GUI

56.

Event Loop bertugas untuk:

a)

Menghapus RAM

b)

Memproses event UI secara non-blocking

c)

Mengatur database

d)

Mengatur ukuran layar

e)

Mengelola bandwidth

57.

Trade-off microservices dibanding monolithic adalah:

a)

Tidak bisa scaling

b)

Tidak perlu API

c)

Lebih scalable namun lebih kompleks dalam deployment

d)

Tanpa service independen

e)

Selalu lebih lambat

58.

Peran middleware autentikasi JWT adalah:

a)

Membuat HTML

b)

Mengatur CSS

c)

Menyimpan session ID

d)

Memvalidasi token sebelum menuju handler utama

e)

Merender UI

59.

Mengapa tombol pada mobile UX dibuat besar?

a)

Karena user sering bergerak dan menggunakan satu tangan

b)

Untuk mengurangi gesture

c)

Karena layar sangat kecil

d)

Untuk menghemat baterai

e)

Menghindari warna cerah

60.

Distribusi aplikasi melalui App Store menguntungkan karena:

a)

Menghilangkan izin

b)

Review aplikasi menjadi instan

c)

Tidak ada runtime

d)

Update lebih mudah dan keamanan lebih baik

e)

Tidak perlu internet