TM1 Konsep Bahasa Pemrograman
September 26, 2017 | Author: Akmal Muhamad | Category: N/A
Short Description
Tugas Mandiri Pertama...
Description
Konsep Bahasa Pemrograman KUIS & TM 1 KUIS 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27.
D. Realibility B. Perl B. Translasi lambat, eksekusi cepat C. Javascript D. Run time error D. Alokasi/dealokasi secara dinamis C. Data Abstracting D. SmallTalk C. LISP B. Algol 60 C. Recursive Procedure C. Algol 68 A. Delphi A. Inheritance D. Augusta Ada Byron B. LISP dan Prolog A. James Gosling C. COBOL D. ADT, inheritance dan dynamic binding B. eksplisit di C++, implisit di Java B. berlaku di C++ tetapi tidak berlaku di Java D. Bottom up design C. SIMULA 67 A. Structured Programming C. Object Oriented Design A. Radio D. Algol 68
TM 1. Aliasing adalah salah satu parameter untuk menentukan reliability suatu bahasa. a. Definisikan apa yang kamu ketahui tentang aliasing. 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. a. Aliasing adalah subkriteria dari kriteria bahasa pemrograman reliability yang mengusung kesesuaiannya/performanya terhadap spesifikasi bahasa tersebut. Aliasing sendiri berarti adanya dua metode referensi atau lebih yang berbeda untuk lokasi memori yang sama. b. Pada aliasing dibawah terdapat 3 distinct referencing untuk satu lokasi memori yang sama. 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 Language Programming (procedural language) adalah bahasabahasa pemrograman yang biasa dipakai oleh kebanyakan programmer professional contohnya adalah bahasa C, C++, Java, COBOL, dll. Bahasa pemrograman imperative adalah bahasa yang bersifat structural yang berulang dengan menggunakan statement seperti and,for,if,then,else,dowhile,dll. Singkatnya di imperative programming language kalian melakukan perintah kepada computer apa yang harus computer lakukan, dan akan computer lakukan. Abstract Data Type adalah variabel yang hanya mencakup representasi data dari satu tipe data spesifik dan subprogram yang menyediakan operasi untuk tipe itu.
-
-
Inheritance dalam pemrograman berorientasi objek (OOP), adalah cara untuk memilah-milah dan menggunakan kembali kode dengan menciptakan attribute collection dan perilaku objek, yang dapat didasarkan pada objek yang dibuat sebelumnya, inheritance sendiri berguna/dipakai untuk 2 hal yaitu modification problem posed by abstract data type dan program organization problem. Dan inheritance itupun menyajikan framework untuk mendefinisikan hirarki dari related classes yang dapat menggambarkan hubungan turunan di dalam problem space. Dynamic Binding adalah proses pemetaan pesan ke urutan kode tertentu (metode) pada saat runtime. hal ini dilakukan untuk mendukung kasus di mana metode yang tepat tidak dapat ditetapkan pada saat waktu compile (yaitu secara statis). Dynamic dispatch hanya digunakan untuk invocation code dan bukan untuk proses yang mengikat lainnya (seperti untuk global variabel) dan ini biasanya hanya digunakan untuk menjelaskan fitur bahasa runtime decision yang diperlukan untuk menentukan mana kode yang meminta
3. Sebutkan dan uraikan dua alasan mengapa bahasa Java lebih aman daripada bahasa C++. Uraikan alasan mengapa Java tidak mengenal multiple inheritance. Sebutkan alasan mengapa Java saat ini merupakan bahasa yang paling banyak digunakan diberbagai aplikasi dibandingkan dengan bahasa lain. Why Java is Safer than C++? Karena struktur bahasa Java dapat mencegah Buffer Overflow Attacks, yaitu suatu jenis yang paling umum dalam kelemahan suatu system kemanan. Java tidak mengenal multiple inheritance karena dalam penggunaan tertentu multiple inheritance dapat menyebabkan problem yang disebut dengan Diamond Problem. Lagipula interface Java menyediakan fitur yang dibutuhkan dari multiple inheritance itu sendiri tanpa menyebabkan masalah yang mendasar. Why Java is most used for making an application? Karena Java berjalan di Java Virtual Machine, yang dapat berjalan di operating system apapun baik itu windows, Mac OSX, LINUX, dll. Selain itu Java mudah dalam pemrogramanannya, tidak seperti bahasa C based yang complex. 4. Uraikan cerita sukses bahasa FORTRAN sehingga ia dijuluki sebagai lingua franca of the computing world oleh Alan Perlis, salah seorang desainer Algol. FORTRAN (FORmula TRANslation) adalah bahasa pemrograman yang pertama yang didesain oleh John Backus yang pertama kali di implementasikan pada IBM 704. - Fortran 0 : 1954, tidak di implementasikan - Fortran I : 1957, didesain untuk IBM 704, yang memiliki index registers dan floating point hardware.
-
-
-
-
o Impact of environment on design of Fortran I No Need for dynamic storage Need good array handling and counting loops No string handiling, decimal arithmetic, or powerful input/output (for business software) Fortran II : 1958, independent compilation, fixed bugs Fortran IV : 1960-‘62, berkembang diantara tahun ini. Explicit type of declaration Logical selection statement Subprogram names could be parameters ANSI standard in 1966 Fortran 77 : 1978, menjadi bahasa standar baru. Character string handling Logical loop control statement IF-THEN-ELSE statement Fortran 90 : 1990, perubahan paling signifikan dari Fortran 77 Modules Dynamic Arrays Pointers Recursion CASE statement Parameter type checking Fortran 95 : 1995, relatif minor update, ditambah beberapa deletions Fortran 2003 : 2003, ditto.
Evaluasi Perkembangan Fortran - Sangat mengoptimaslisasi compilers (semua versi sebelum 90) o Types and Storage of all variables are fixed before runtime - Secara dramatis mengubah cara penggunaan computer. - Menjadi karakter sebagai lingua franca of the computing world. 5. Sebagian besar bahasa pemrograman khususnya bahasa imperatif dirancang untuk diimplementasikan di von Nueman architecture. a. Uraikan apa yang kamu ketahui tentang von Nueman computer architecture. b. Apa yang kamu ketahui tentang von Neuman bottleneck? c. Apa pula yang kamu ketahui tentang bottleneck of a pure interpreter? von Nuemann computer architecture adalah suatu arsitekturisasi computer yang telah dipakai oleh kebanyakan system, oleh karena itu imperative language menjadi sangat dominan. Berikut adalah von Neumann architecture - Data and programs stored in memory
-
Memory is separate from CPU Instructions and data are piped from memory to CPU Basis for imperative language Variables model memory cells Assignment statements model piping Iteration is efficient von Neumann Bottleneck adalah sebuah kelemahan dari von Neumann architecture yang sering menyebabkan system dari arsitektur tersebut terjadi livelock, bahkan deadlock. These things is caused by ; - Connection speed between a computer’s memory and its processor determines the speed of computer - Program instructions often can be executed much faster than the speed of the connection ; the connection speed thus results in a bottleneck - Known as the von Neumann bottleneck, it is the primary limiting factor in the speed of computers. Bottleneck of a pure interpreter Statement decoding, rather than the connection between the processor and memory, is the bottleneck of a pure interpreter. 6. Definsikan apa yang disebut scripting language. Saat ini ada banyak tipe scripting language. Dua diantaranya yang paling popular adalah JavaScript dan PHP. Jelaskan apa beda diantara keduanya. Scripting Language adalah suatu bentuk bahasa pemrograman yang support untuk menulis scripts, program ditulis dengan runtime environment special yang dapat menerjemahkan dan mengeksekusi secara otomatis task yang secara alternative dapat di eksekusi satu persatu oleh manusia. Javascript dan PHP perbedaan diantara mereka terletak di penggunaannya, walaupun sama-sama di bidang Web, Javascript lebih terprogram untuk environment dalam Web Browser contents contohnya ketiak browser memunculkan pesan ketika user meng-hover mouse kearah gambar, kemudian untuk memunculkan dialog pop-up box, dan membuat slideshow di Web, itu semua menggunakan JS(Javascript). Berbeda dengan PHP yang lebih berfungsi sebagai Web based server programming language. Yang dapat digunakan pada server level, seperti pemrosesan form, membuat query database. Dll.
View more...
Comments