You are on page 1of 5

Kuis dan TM 1

Kuis

1. Opsi berikut ini yang bukan merupakan kriteria untuk mengevaluasi bahasa
pemrograman adalah
a. readability b. writeability c. reliability d. realibility

2. Contoh dari bahasa yang diimplementasikan secara hybrid adalah


a. Basic b. Perl c. C d. Java

3. Karakteristik dari sistem implementasi kompilasi adalah


a. translasi cepat eksekusi cepat b. translasi lambat eksekusi cepat
c. translasi cepat eksekusi lambat d. translasi lambat eksekusi lambat

4. Opsi-opsi berikut ini yang merupakan contoh dari bahasa pure interpreter, kecuali
a. Perl b. Lisp c. Java Script d. JVM

5. Exception handling adalah kemampuan program untuk menangani


a. machine error b. type checking
c. type comptability d. run time error

6. Opsi-opsi berikut ini merupakan fitur bahasa imperative kecuali


a. variable memodelkan memori b. assignment didasarkan pada piping
c. iterasi berbentuk repetisi d. alokasi/dealokasi secara dinamis

7. Fitur-fitur yang mempunyai efek signifikan pada reliability program adalah opsi-
opsi berikut ini kecuali
a. type checking b. exception handling c. data abstracting c. aliasing

8. Bahasa yang pertama kali menggnakan windowing system dan mouse pointing
adalah
a. Oberon b. Eiffell c. Simula 67 d. SmallTalk

9. Pionir dari bahasa functional adalah


a. FORTRAN b. Perl c. LISP d. Prolog

10. Konsep block structured pertama kali dikenalkan di bahasa


a. Algol 58 b. Algol 60 c. Algol 68 d. COBOL

11. Opsi berikut ini yang bukan merupakan fitur dari bahasa Algol 60 adalah
a. block structuted b. passing parameter (by value and
by name)
c. recursive procedure d. heap dynamic array
12. Bahasa yang dipandang sebagai bahasa paling ortogonal adalah
a. Algol 58 b. Algol 60 c. Algol 68 d. COBOL

13. Contoh dari bahasa OOP yang diturunkan dari bahasa Pascal adalah
a. Delphi b. Modula 3 c. Oberon d. SmallTalk

14. Opsi berikut yang mengindikasikan mengapa bahasa Delphi kurang kompleks
daripada bahasa C++ adalah
a. inheritance b. parametrized class
c. generic programming d. user defined operator overloading

15. Orang yang dipandang sebagai pemrogram pertama di dunia adalah


a. Konrad Zuse b. John Backus
c. Grace M. Hoper d. Augusta Ada Byron

16. Contoh dari bahasa deklaratif adalah


a. LISP dan Java b. LISP dan Prolog
c. Java dan Prolog d. LISP, Prolog dan Java

17. Ketua tim perancang Java adalah


a. James Gosling b. Alan Kay c. Bertrand Meyer d. Bjarne
Stroustrup

18. Fasilitas makro pertama kali dikenalkan oleh bahasa


a. APL b. FORTRAN c. COBOL d. PL/i

19. Karakteristik dasar dari OOP adalah


a. ADT dan inheritance b. ADT dan dynamic binding
c. Inheritance dan dynamic binding
d. ADT, inheritance dan dynamic binding

20. Storage deallocation dilakukan secara


a. ekplisit di C++ dan Java b. eksplisit di C++, implisit di Java
c. implisit di C++ dan Java d. implisit di C++, eksplisit di Java

21. Multiple inheritance,


a. berlaku di C++ dan Java
b. berlaku di C++ tetapi tidak berlaku di Java
c. tidak berlaku di C++ tetapi berlaku di Java
d. tidak berlaku di C++ dan Java

22. Opsi-opsi berikut ini merupakan komponen dari structured programming kecuali
a. structured theory b. modular programming
c. top down design d. bottom up design
23. Bahasa yang pertama kali mengimplementasikan konsep data abstraction adalah
a. PL/I b. Ada c. SIMULA 67 d. Pascal

24. Fitur-fitur OOD adalah opsi-opsi berikut ini kecuali


a. structured programming b. data abstraction
c. inheritance d. dynamic method binding

25. Metodologi pemrograman yang paling akhir dikembangkan di bahasa imperative


adalah
a. data abstraction b. top down development
c. object oriented design d. step wise refinement

26. Bahasa Java awalnya dirancang untuk aplikasi produk konsumen, diantaranya
adalah
a. radio (ga yakin) b. robot c. toaster d. telepon

27. Compound assignment operator (e.g. += di C/C++) dikenalkan di bahasa


a. C b. Pascal c. PL/I d, Algol 58

TM

1. Aliasing adalah salah satu parameter untuk menentukan reliability suatu bahasa.
a. Definisikan apa yang kamu ketahui tentang aliasing.
– Kehadiran dua atau lebih metode referensi yang berbeda untuk lokasi
memori yang sama

b. Tulislah tiga penggalan kode untuk menyajikan bagaimana aliasing terjadi.


Jangan lupa untuk menguraikan mengapa aliasing terjadi pada penggalan kode
yang kamu tulis di bagian a. diatas.

my @array = (1, 2, 3);

foreach my $element (@array) {


# Increment $element, thus automatically
# modifying @array, since $element is aliased
# to each of @array's elements in turn.
$element++;
}

print "@array \n";


2. C++ adalah kombinasi dari bahasa imperative dan fitur-fitur dari OO (Sebesta, p.
94) yaitu ADT (abstract data type), inheritance dan dynamic binding. Uraikan
secara singkat apa yang dimaksud dengan bahasa imperative, ADT, inheritance
dan dynamic binding.

Imperative languages, most dominant, because of von Neumann computers


a. Data and programs stored in memory
b. Memory is separate from CPU
c. Instructions and data are piped from memory to CPU
d. Basis for imperative languages
i. Variables model memory cells
ii. Assignment statements model piping
iii. Iteration is efficient

Abstract Data Type/ADT:


Tipe data yang merupakan hasil imajinasi kitadengan memberikan beberapa
batasan domainmaupun operasinya. Contoh : usia, daftarnilai.

Inheritance
In object-oriented programming (OOP), inheritance is a way to
compartmentalize and reuse code by creating collections of attributes and
behaviors called objects which can be based on previously created objects.

In computer science, dynamic dispatch (also known as dynamic binding) is the


process of mapping a message to a specific sequence of code (method) at runtime.
This is done to support the cases where the appropriate method cannot be
determined at compile-time (i.e. statically). Dynamic dispatch is only used for
code invocation and not for other bindingprocesses (such as for global variables)
and the name is normally only used to describe a language feature where a
runtime decision is required to determine which code to invoke

3. Sebutkan dan uraikan dua alasan mengapa bahasa Java lebih aman daripada
bahasa C++.
Eliminated many unsafe features of C++
(Belum lengkap)

Uraikan alasan mengapa Java tidak mengenal multiple inheritance..

Java was designed without multiple inheritance.Java interfaces solves most


problems that are commonly solved using multiple inheritance just simulates
inheritance .
Basically multiple inheritance is useful only in
polymorphism, so in java it can be done by interfaces, so
that java doesn't need to provide multiple inheritance
using extends keyword.

 Buka ini:
http://www.allinterview.com/showanswers/16522.html

Sebutkan alasan mengapa Java saat ini merupakan bahasa yang paling banyak
digunakan diberbagai aplikasi dibandingkan dengan bahasa lain.

Java is platform independent, so people making apps for Mac, Unix, Linux, or
Windows would pretty much have to use it. Many big companies don't use
Windows. They have their systems in Linux or Unix as well.

C# as a language is probably about 90% the same as Java in SYNTAX, but it is


tied to Windows. So, while Visual Studio is a thousand times better than
Eclipse, Netbeansetc. (because it has better functionality, more features, and a
unified library under .Net), it is PROPRIETARY. Microsoft changes its features
every 5 years or so, and you are forced to go along with it.

However, because C# and Java are like FRATERNAL TWINS, you could learn
one and essentially get the other. I have been programming in C# for about 6
years now, so I can write programs in Java as long as I have a decent reference
manual nearby to guide me through its API.

4. Uraikan cerita sukses bahasa FORTRAN sehingga ia dijuluki sebagai lingua


franca of the computing world oleh Alan Perlis, salah seorang desainer Algol.

• Highly optimizing compilers (all versions before 90)


– Types and storage of all variables are fixed before run time
• Dramatically changed forever the way computers are used
• Characterized as the lingua franca of the computing world

You might also like