Langsung ke konten utama

KELEBIHAN DAN KEKURANGAN BEBERAPA BAHASA PEMROGRAMAN

Menurut survey stackoverflow.com kurang lebih ada 16 jenis bahasa pemrograman yang paling banyak digunakan pada tahun 2018 dari sekian banyak bahasa pemrograman. Apa saja jenis-jenis bahasa pemrograman tersebut ? inilah ulasan singkatnya.





1.  Bahasa Pemrograman Java
Bahasa pemrograman Java yaitu salah satu contoh bahasa pemrograman yang bisa dijalankan diberbagai komputer (PC/laptop) termasuk Handphone/ Smartphone. Sebelum Javascript menduduki peringkat pertama sebagai bahasa pemrograman paling populer Java sudah lebih dulu berada pada posisi tersebut.
Mengapa demikian ? karena kebanyakan aplikasi android yang kita gunakan setiap hari dikembangkan menggunakan bahasa pemrograman Java. Java sendiri mengadopsi banyak kode-kode (sintak) dari bahasa C dan C++.
Slogan java yang terkenal yaitu ” Tulis sekali, jalankan dimanapun”. Slogan itu sesuai dengan fungsi dari java yang memungkinkan aplikasi bisa berjalan di beberapa Sistem Operasi (Operating System ) yang berbeda.
Melihat banyaknya kelebihan dari bahasa pemrograman Java, berikut ini penjelasan secara terperinci dari kelebihan dan kekurangan bahasa Java.
  • Pengembang Java  : James Gosling 



Kelebihan Bahasa Java :
  1. Sederhana dan ampuh, java menyediakan sarana untuk membuat program (applet) yang berjalan pada web browser. Programmer dapat menggunakan applet kecil yang aman, dinamik, lintas platform, aktif dan siap dijalankan di jaringan.
  2. Aman, java dirancang dengan konsep keamanan internet.
  3. Berorientasi objek, java tidak diturunkan bahasa pemrogaman manapun. Java memiliki keseimbangan yang menyediakan mekanisme peng-class-an sederhana dengan model antarmuka dinamik yang intuitif hanya jika diperlukan.
  4. Kokoh, java membatasi programmer dengan memberi kunci supaya progamer dapat menemukan kesalahan lebih cepat saat mengembangkan program.
  5. Interaktif, java dirancang untuk menciptakan program jaringan yang interaktif.
  6. Netral terhadap berbagai arsitektur, java mampu berjalan dalam platform apapun seperti PC, UNIX, Macintosh, dll.
  7. Terinterpretasi dan berkinerja tinggi, java melengkapi keajaiban lintas platform yang luar biasa dengan kompilasi ke dalam representasi langsung yang disebut java code byte yang dapat diterjemahkan oleh system apapun yang memiliki java interpreter dan java virtual machine.
  8. Mudah dipelajari karena bersifat sederhana.
  9. Mendukung koneksi ke database.



Kekurangan Bahasa Java :
  1. Java memiliki kecepatan yang kurang dari bahasa C ++.
  2. Implementasi J2ME tidak global. Misalnya, J2ME untuk Motorola dengan J2ME untuk Sony Ericson tidak sama. Berbeda lagi J2ME untuk Nokia. Setiap produk selalu mempunyai modul tersendiri yang dinilai aneh penerapannya dan harus di-compile dengan modul yang berbeda-beda.
  3. Java memakan banyak memori computer.
  4. Java merupakan bahasa yang kompleks dan susah dipelajari.
  5. Program yang dibuat oleh bahasa ini lebih lambat disbanding program yang dibuat dengan bahasa lain seperti C atau C++.

2. Bahasa Pemrograman Python
Dikutip dari petanikode.com Phyton merupakan salah satu bahasa pemrograman yang paling mudah dipelajari saat ini dibandingkan dengan bahasa pemrograman lainnya.

Python sendiri ternyata sudah banyak digunakan oleh para developer untuk membuat berbagai macam program aplikasi, diantaranya : Website, Internet of Things (IoT), Aplikasi Hacking, Aplikasi Command Line Interpreter, Aplikasi Desktop,  dan lain sebagainya.
Struktur sintak Python sangat rapi dan cepat dipahami. Makanya bahasa pemrograman ini sangat cocok dipelajari untuk pemula yang baru ingin belajar menulis kode-kode program (coding).
  • Pengembang Python  : Guido van Rossum 

Kelebihan Bahasa Python :
  1. Tidak ada tahapan kompilasi dan penyambungan (link) sehingga kecepatan perubahan pada masa pembuatan system aplikasi meningkat.
  2. Tidak ada deklarasi tipe sehingga program menjadi lebih sederhana, singkat, dan fleksible.
  3. Manajemen memori otomatis yaitu kumpulan sampah memori sehingga dapat menghindari pencatatan kode.
  4. Tipe data dan operasi tingkat tinggi yaitu kecepatan pembuatan system aplikasi menggunakan tipe objek yang telah ada.
  5. Pemrograman berorientasi objek.
  6. Pelekatan dan perluasan dalam C.
  7. Terdapat kelas, modul, eksepsi sehingga terdapat dukungan pemrograman skala besar secara modular.
  8. Pemuatan dinamis modul C sehingga ekstensi menjadi sederhana dan berkas biner yang kecil
  9. Pemuatan kembali secara dinamis modul phyton seperti memodifikasi aplikasi tanpa menghentikannya.
  10. Model objek universal kelas Satu.
  11. Konstruksi pada saat aplikasi berjalan.
  12. Interaktif, dinamis dan alamiah.
  13. Akses hingga informasi interpreter.
  14. Portabilitas secara luas seperti pemrograman antar platform tanpa ports.
  15. Kompilasi untuk portable kode byte sehingga kecepatan eksekusi bertambah dan melindungi kode sumber.
  16. Antarmuka terpasang untuk pelayanan keluar seperti perangkat Bantu system, GUI, persistence, database, dll.



Kekurangan Bahasa Python:
  1. Beberapa penugasan terdapat diluar dari jangkauan python, seperti bahasa pemrograman dinamis lainnya, python tidak secepat atau efisien sebagai statis, tidak seperti bahasa pemrograman kompilasi seperti bahasa C.
  2. Disebabkan python merupakan interpreter, python bukan merupakan perangkat bantu terbaik untuk pengantar komponen performa kritis.
  3. Python tidak dapat digunakan sebagai dasar bahasa pemrograman implementasi untuk beberapa komponen, tetapi dapat bekerja dengan baik sebagai bagian depan skrip antarmuka untuk mereka.
  4. Python memberikan efisiensi dan fleksibilitas tradeoff by dengan tidak memberikannya secara menyeluruh. Python menyediakan bahasa pemrograman optimasi untuk kegunaan, bersama dengan perangkat bantu yang dibutuhkan untuk diintegrasikan dengan bahasa pemrograman lainnya.



3. Bahasa Pemrograman PHP
Contoh bahasa pemrograman berikutnya yaitu PHP.
PHP atau Hypertext Preprocessor merupakan bahasa pemrograman yang digunakan dari sisi server. Bahasa pemrograman ini disisipkan ke dalam HTML. PHP sendiri banyak dipakai untuk membuat / mengembangkan situs web yang dinamis.


Kelebihan Bahasa PHP :
  1. PHP menjadi popular karena kesederhanaannya dan kemampuannya dalam menghasilkan berbagai aplikasi web seperti counter, system artikel/ CMS, e-commerce, bulletin board, dll.
  2. PHP adalah salah satu bahasa server-side yang didesain khusus untuk aplikasi web.
  3. PHP termasuk dalam Open Source Product dan telah mencapai versi 4.
  4. Aplikasi PHP cukup cepat dibandingkan dengan aplikasi CGI dengan Perl atau Phyton bahkan lebih cepat disbanding dengan ASP maupun Java dalam berbagai aplikasi web.
  5. Tersedia baik di Windows maupun Linux, walau saat ini paling efektif di web server Apache dan OS Linux.
  6. Sintaks mirip C dan mudah dipelajari.
  7. Komunitas yang ramai dan saling membantu, seperti di diskusiweb.com, phpbuilder.com, phpindo.com, dll.
  8. Berbagai script atau aplikasi yang gratis telah tersedia.



Kekurangan Bahasa PHP :
  1. Tidak detail untuk pengembangan skala besar.
  2. Tidak memiliki system pemrogaman berorientasi objek yang sesungguhnya.
  3. Tidak bisa memisahkan antara tampilan dengan logic dengan baik.
  4. PHP memiliki kelemahan security tertentu apabila programmer tidak jeli dalam melakukan pemrogaman dan kurang memperhatikan isu konfigurasi PHP.
  5. Kode PHP dapat dibaca semua orang, dan kompilasi hanya dapat dilakukan dengan tool yang mahal dari Zend.

CMS (content management system) pun bisa dibuat menggunakan bahasa pemrograman Php. WordPress, blogger, open cart dan yang lainnya terdapat kode-kode program PHP di dalamnya. Di Indonesia sendiri komunitas/ grup PHP Indonesia di facebook adalah grup yang paling aktif menurut saya dibandingkan grup pemrograman yang lainnya.
  • Pengembang PHP : Rasmuss Lerdorf

4. Bahasa Pemrograman C++
Bahasa pemrograman C++ mulai dikembangkan pada tahun 1970. Bahasa ini merupakan turunan dari Bahasa pemrograman C. Dimana bahasa pemrograman C++ juga termasuk ke salah satu bahasa yang berorientasi objek biasanya disebut dengan Object Oriented Programming.
contoh bahasa pemrograman
Kelebihan Bahasa C++ :
  1. Merupakan induk dari bahasa pemrograman perl, php, phyton, visual basic, gambas, java, C#.
  2. Compiler bahasa C++ terdapat di semua platform.
  3. Untuk pengembangan visual dijejali dengan platform yang sangat banyak seperti OWL, MFC, Cocoa, QT, GTK, dll.
  4. Merupakan pemrograman berorientasi objek.

Kekurangan Bahasa C++ :
  1. Bahasa ini cukup sulit untuk dipelajari dan dipahami.
  2. Banyaknya operator serta fleksibilitas penulisan program kadang-kadang membingungkan pemakai.
  3. Bagi pemula pada umumnya akan kesulitan menggunakan pointer.

Bahasa C++ diciptakan oleh Bjarne Stroustrup tahun 1983 di Lab Bell. C++ merupakan bahasa pemrograman berorientasi objek menggunakan kaidah bahasa C. Mulanya bahasa C++ ini dikembangkan untuk bahasa pemrograman yang akan dijalankan pada sistem operasi Unix. Namun bahasa pemrograman C++ kini menjadi versi dominan.
  • Pengembang C++ : Bjarne Stroustrup

________________DAFTAR PUSTAKA_______________

Komentar

Postingan populer dari blog ini

Flowmap dan Contoh Permasalahnya

FLOWMAP Pengertian Flowmap Flowmap adalah campuran peta dan flow chart,yang menunjukan pergerakan benda dari satu lokasi ke lokasi lain, seperti jumlah orang dalam migrasi, jumlah barang yang diperdagangkan, atau jumlah paket dalam jaringan. Flowmap membantu analis dan programmer untuk memecahkan masalah ke dalam segmen-segmen yang lebih kecil dan membantu dalam menganalisis alternaitf-alternatif lain dalam pengoprasian. Pedoman-pedoman dalam membuat FlowMap Bila seorang analis dan programmer akan membuat flowmap, ada beberapa petunjuk yang harus diperhatikan, seperti : Flowmap digambarkan dari halaman atas ke bawah dan kiri ke kanan. Aktivitas yang digambarkan harus didefinisikan secara hati-hati dan definisi ini harus dapat di mengerti oleh pembacanya. Kapan aktivitas dimulai dan berakhir harus di tentukan secara jelas. Setiap langkah dari aktivitas harus berada pada urutan yang benar. Lingkup dan range dari aktifitas yang sedang di gambarkan harus di telusuri dengan ...

Macam-Macam Model Proses Pembangunan Perangkat Lunak

Proses pengembangan perangkat lunak (Software development process) adalah suatu struktur yang diterapkan pada pengembangan suatu produk perangkat lunak yang bertujuan untuk mengembangkan sistem dan memberikan panduan yang bertujuan untuk menyukseskan proyek pengembangan sistem melalui tahap demi tahap. Proses ini memiliki beberapa model yang masing-masing menjelaskan pendekatan terhadap berbagai tugas atau aktivitas yang terjadi selama proses. Berikut ini penjelasan dari beberapa model proses. 1. Incremental Model     Incremental model adalah perbaikan dari model waterfall yang pengembangannya dilakukan secara bertahap, untuk mengulang proses tidak harus mengunggu satu siklus selesai. Satu siklus dianggap sebagai satu increment. Berikut merupakan proses tahapan dari Incremental Model : Requirement  , Proses penentuan kebutuhan / analisis kebutuhan. Specification, Proses spesifikasi atau penyesuaian kebutuhan menggunakan analisis kebutuhan. Architectur...

Arsitektur Perangkat Lunak

ARSITEKTUR PERANGKAT LUNAK 1. Pengertian Arsitektur Perangkat Lunak Apa yang dimaksud dengan "Arsitektur Perangkat Lunak"? Definisinya menurut para ahli, antara lain:   1. IEEE: "Arsitektur adalah organisasi mendasar pada sebuah system yang mewujudkan komponen-komponen, hubungan antara satu dengan yang lainnya, dan dengan lingkungan, dan prinsip yang mengarahkan rancangan dan evolusi. " 2. Grady Booch, Philip Krutchen, Kurt Bittner, dan Rich Reitman: "Arsitektur perangkat lunak mencakup serangkaian keputusan-keputusan penting tentang organisasi sistem perangkat lunak, yaitu: pemilihan elemen struktural dan interface yang menyusun sistem; perilaku seperti spesifikasi dalam kolaborasi antar unsur-unsur; komposisi struktural dan perilaku elemen-elemen dalam membentuk subsistem yang lebih besar; dan gaya arsitektur yang memandu organisasi."    - Booch, P. Krutchen, K. Bittner and R. Reitman. The Rational Unified Process - An Introduction. 1999. Defini...