Anda memiliki 2 cerita gratis khusus anggota yang tersisa bulan ini.
Cara Belajar Bahasa Pemrograman Baru dengan Mudah
Ambil bahasa pemrograman baru — dengan contoh Python, Java, dan Go
Setelah melalui pembelajaran bahasa pemrograman di perguruan tinggi, melalui berbagai platform e-learning, dan dimasukkan ke dalam proyek pascasarjana untuk mengambilnya dengan panduan minimal (termasuk "bahasa pengkodean" super niche yang dikembangkan oleh Profesor sendiri), saya memperhatikan aspek-aspek umum di berbagai bahasa pemrograman.
Jika Anda sudah mengetahui setidaknya satu bahasa pemrograman, menggambar paralel di seluruh bahasa lain akan membuatnya lebih mudah untuk dipelajari. Jika tidak — semoga artikel ini memecah gagasan abstrak "belajar cara membuat kode" menjadi bagian-bagian dasar yang lebih kecil.
Artikel ini akan membahas berbagai jenis bahasa pemrograman, cara mendekati bahasa pemrograman (baru), komponen dasar bahasa pemrograman, dan terakhir cara menyiapkan laptop dan menjalankan kode! Ini semua akan dijelaskan dengan contoh di Python, Java, dan Go.
Daftar isi
Paradigma Pemrograman Deklaratif vs. Imperatif
Mengetahui jenis paradigma pemrograman memungkinkan kita untuk mengetahui untuk apa bahasa pemrograman digunakan, dan bagaimana kode diatur dan dieksekusi.
Ada dua paradigma pemrograman - deklaratif dan imperatif.
- Deklaratif : menjelaskan apa yang dilakukan program; kumpulan hasil
- Imperatif : menjelaskan bagaimana program harus melakukannya; kumpulan instruksi
Subset dari paradigma pemrograman deklaratif termasuk pemrograman fungsional , matematika , logika , dan reaktif . Ia berusaha untuk melakukan operasi tetapi tidak mengontrol bagaimana hal itu terjadi atau urutan di mana operasi dijalankan.
Subset dari paradigma pemrograman imperatif termasuk pemrograman prosedural dan berorientasi objek. Ia berusaha untuk mengontrol urutan di mana operasi terjadi.
Karena Go adalah bahasa pemrograman prosedural (kita akan lihat apa artinya nanti), ini adalah pemrograman imperatif. Sedangkan Python dan Java adalah bahasa multi-paradigma, artinya mereka mendukung paradigma pemrograman deklaratif dan imperatif tergantung pada kebutuhan pemrograman Anda.
Disusun vs. Bahasa yang Diterjemahkan
Pahami apa yang terjadi di balik layar setelah eksekusi kode
Perbedaan antara bahasa yang dikompilasi dan ditafsirkan adalah bagaimana kode dieksekusi.
- Bahasa yang dikompilasi: membutuhkan kompiler untuk mengubah kode sumber menjadi kode objek (juga disebut sebagai kode mesin , kode byte , atau kode biner)
- Interpreted language: requires an interpreter to directly execute the programming or scripting language
Go is a compiled language, Python is an interpreted language, whereas Java is both compiled and interpreted; it is first compiled into an intermediate form, and then interpreted by an interpreter.
In the last section where we run the codes, we will see how running compiled language is different from interpreted language.
There are other ways to define and describe a programming language, but I find knowing the programming paradigm and how the code is executed is sufficient to be adequately introduced to a programming language.
There are other types of comparison, the list below is non-exhaustive,
- Weakly vs. Strongly Typed: weakly typed allows implicit conversions between data types, while strongly typed does not allow
- Static vs. Dynamic Typing: static typing performs type checking at compile time, while dynamic typing performs type checking at run time
- High-level vs. Low-level Language: high-level language is user-oriented, while low-level language is machine-oriented
- General-purpose vs. Domain-specific Language: general-purpose language can solve problems in multiple domains, while domain-specific language is created specifically to solve problems in a domain
Now, let’s dive into the basic components of a programming language!
Printing and Commenting
The first line(s) of code of any programming language
You may be familiar with the term print("Hello World")
, printing is important as it not only tracks what operations you are performing but also helps in debugging code errors, such as printing intermediate variables to check if they are erroneous.
Commenting, on the other hand, does nothing to the code but allows you to put comments in your code to explain what the code is doing. This helps yourself and others to understand the code better.
Below are code snippets to comment and print in Python, Java, and Go.
Further topic(s) on Printing and Commenting:
- Types of commenting, i.e., in-line comment vs. block comment
- (Python) Printing with f-string
Data Types
The backbone of any programming language
Data types are the backbone of any programming language as every variable and object is a data type. Different data types can perform different operations and there are different ways to interact with them. For example, you can get the maximum value from a group of numbers, but you cannot get the maximum value from a single number.
There are three different data types — simple, complex, and user-defined. Simple data types represent a single value, such as a variable describing a number or text. Complex data types are made up of multiple existing data types, such as a sequence of numbers or mapping a number to a word (i.e., in a phone book). Certain programming languages support user-defined data types where you can create your data structure.
In Python, the diagram above is a list of all data types with examples provided. Since Python is a weakly typed language, we can assign it to a variable without defining its type. For instance,
Java is a strongly typed language; the type of variable, and sometimes even the size of the variable, has to be specified when initializing a new variable.
Similar to Java, Go is a strongly typed language but Go does not need to explicitly specify the variable type as they are implied. Go also differ in how a new variable is created; it defines all variables starting with the keyword var
. Alternatively, to avoid using the var
keyword, the mathematical expression :=
can be used. Below are some examples of how to instantiate variables in Go,
Further topic(s) on Data Types:
- Convert between simple data types, i.e., decimal to integer, date to string
- Retrieve values in complex or user-defined data types
- Sort or reverse a complex data type, i.e., list, dictionary
- Load external files, i.e., initialize dictionary from JSON file
Conditionals and Loops
Control flow of code based on conditions, or repeat a code until a condition is met
After knowing the data types and instantiating some variables, it is natural to want to control the flow of code or to modify the variable (or every item in the variable). To control the flow of code, we can execute a set of instructions only if certain conditions are met, and direct the flow of code accordingly. To modify every item in the variable, we are iterating through the variable and this can be done using loops.
There are a few common conditionals and loops, note that not all programming languages support all types of conditionals and loops listed below,
- If-else condition: perform a task if a condition is met, else perform another task or do nothing
- Switch case: perform a task in one case, perform another task in another case. This is similar to the if-else statement, just that the condition evaluates to a value instead of Boolean (true or false)
- For loop: perform a task for every item in the complex variable
- While loop: perform a task while a condition is met (beware of infinite looping!)
Further topic(s) on Conditionals:
- Mathematical conditionals or more complex condition checking with different data types
- Implement for loop for complex data types, i.e., iterating a list
Functions and Classes
Group a sequence of operations, and reuse them
Functions and classes are the most common pieces of code since functional programming uses functions and object-oriented programming uses classes.
For any function, it requires indicating the name of inputs. For certain (stricter) programming languages, there is a need to provide the data type of input and expected output as well. Classes, being object-oriented programming, combine several related functions together. Functions within a class are referred to as class methods.
In Python, functions are defined with the def
keyword (Line 1), and outputs are returned with the return
keyword (Line 4). The data types of outputs do not need to be specified.
Di Jawa, ini adalah pemrograman berorientasi objek dan nama file harus mengikuti nama kelas; kelas MyClass
harus terkandung dalam MyClass.java
. Jika file dieksekusi, hanya main
fungsi (Baris 6) yang akan dijalankan.
Ada kebutuhan untuk mendefinisikan tipe data dari variabel input dan output ketika mendefinisikan metode kelas dan ada konsep pengubah visibilitas (pribadi/publik/dilindungi) dan parameter implisit lainnya (statis/final) yang tidak akan tercakup dalam artikel ini.
Di Go, mirip dengan Java, itu juga pemrograman berorientasi objek tetapi tidak ada batasan pada nama file. Saat file dieksekusi, hanya main
fungsi (Baris 10) yang akan dijalankan.
Karena hanya main
fungsi yang dijalankan saat .go
file dieksekusi, fungsi biasanya digabungkan secara berurutan, membentuk prosedur. Oleh karena itu, Go mengikuti paradigma pemrograman prosedural, seperti yang disebutkan di awal artikel ini.
Topik lebih lanjut tentang Fungsi dan Kelas:
- Metode kelas vs. Objek kelas
- Konstruktor, Destruktor di Kelas
- (Python) Metode kelas vs. Metode statis
- (Java) Pengubah visibilitas dan parameter implisit lainnya
- Warisan: memperluas kelas ke kelas lain
- Asersi: memastikan suatu kondisi terpenuhi
- Penanganan Pengecualian: mengontrol apa yang terjadi ketika ada kesalahan
Impor
Gunakan paket bawaan, paket eksternal, atau kode Anda dari file lain
Kode Anda dalam satu file mungkin tidak mencakup semua yang Anda butuhkan dan Anda harus bergantung pada kode yang ada dari paket atau file, yang ditulis oleh orang lain atau Anda sendiri, dengan mengimpornya.
Ada tiga jenis impor — mengimpor dari paket bawaan, paket eksternal, atau file lainnya. Pengimporan dilakukan di awal kode karena Anda perlu mengimpor paket sebelum menggunakannya.
Mengimpor dari paket bawaan dan paket eksternal mengikuti proses yang sama, hanya saja diperlukan langkah tambahan untuk menginstal paket eksternal.
Dalam Python, pip
atau conda
installer biasa digunakan. Paket eksternal dapat diinstal dengan perintah pip install package-name
atau conda install package-name
di terminal, dan diimpor dengan contoh di atas.
Di Java, paket eksternal dapat diinstal dengan Maven atau Gradle, dengan menambahkan detail paket di masing-masing file Maven atau Gradle. Beberapa contoh untuk melakukan impor di Jawa ditunjukkan di atas.
Di Go, paket eksternal dapat diinstal pada baris perintah dengan go get package-name
. Semua kode dalam folder yang sama termasuk dalam paket yang sama dan karenanya tidak perlu diimpor. Namun, Anda perlu mengimpor paket internal atau eksternal dengan contoh di atas.
Menyiapkan dan Menjalankan Kode
Mengambil langkah pertama setelah mempelajari teori
Akhirnya, Anda siap untuk mulai membuat kode dan menjalankan beberapa kode!
To set up, you need to download the programming language itself, the links are provided at the end of this article. You will also need to download an IDE (Integrated Development Environment) which is software to run the code. You can think of the IDE as a nice pretty interface to run code, if not you will need to use the command-line interface which is not beginner-friendly. Some IDEs can run multiple programming languages so you only have to download one IDE.
Personally, I do not like to mix my IDE with multiple programming languages. This is my setup,
- Python: PyCharm (heavy duty), Sublime Text (lightweight)
- Java: IntelliJ IDEA
- Go: Visual Studio, Terminal
To run code, codes can be run on the IDE (recommended) or through a command-line interface.
Untuk menjalankan kode Python, Anda dapat menekan tombol Ctrl-Enter atau Ctrl-B, atau salin dan tempel ke Python Console — tergantung pada IDE Anda.
Untuk menjalankan kode Java, Anda perlu membuat kode terlebih dahulu untuk mengkompilasi .java
file ke dalam .class
file sebelum menjalankannya. Langkah ekstra ini karena Java menjadi bahasa yang dikompilasi dan ditafsirkan seperti yang dijelaskan di bagian sebelumnya.
Untuk menjalankan kode Go, Anda dapat menggunakan antarmuka baris perintah dan menjalankan go run file-name.go
untuk mengkompilasi dan mengeksekusi kode.
Atau, jika Anda hanya ingin bermain-main tanpa instalasi apa pun, Anda dapat menggunakan IDE online.
Ada tautan ke IDE online untuk Python, Java, dan Go di akhir artikel ini. Meskipun IDE online nyaman digunakan, mereka tidak dapat melakukan tugas kompleks seperti menginstal dan mengimpor paket eksternal tertentu, atau menulis kode dalam banyak file.
Selamat, Anda kini telah mengetahui pendekatan belajar bahasa pemrograman, mulai dari memahami jenis bahasa pemrograman dan komponen dasar yang membentuk bahasa pemrograman, hingga cara menyiapkan dan menjalankan kode-kodenya. Semoga melalui contoh dengan Python, Java, dan Go, Anda dapat melihat persamaan dan (beberapa) perbedaan antara sintaks dan konvensi pengkodean — membuatnya lebih mudah untuk mengambil bahasa lain setelah kita menggambar paralelnya! Dan jangan khawatir tentang mencampuradukkan sintaks, ya itu terjadi dan untungnya IDE yang baik dapat mengambil dan mencerminkan kesalahan itu sebelum Anda menjalankan kode.
Untuk menguasai bahasa pemrograman, yang terbaik adalah mempraktikkannya setiap hari dengan melakukan tugas atau proyek sederhana.
Terakhir, selain sering berlatih bahasa pemrograman, menurut saya coding adalah “cara berpikir”. Misalnya, dalam proyek besar, penting untuk menyusun kode Anda dengan benar daripada menjalankannya secara berurutan dari atas ke bawah atau komponen hard-coding. Untungnya, "cara berpikir" ini dapat dimanfaatkan dengan mengikuti praktik terbaik pengkodean (Anda dapat menganggapnya sebagai seperangkat aturan yang direkomendasikan). Mengikuti praktik terbaik pengkodean dapat membuat kode Anda lebih elegan, modular, dan mudah dipahami. Bisa ada lanjutannya kalo ada permintaan ;)
tautan yang berhubungan
Python
- Instalasi: https://www.python.org/downloads/
- Tutorial: https://docs.python.org/3/tutorial/
- IDE Online: https://www.online-python.com/
Jawa
- Instalasi: https://www.Oracle.com/java/technologies/downloads/
- Tutorial: https://www.w3schools.com/java/
- IDE Online: https://www.jdoodle.com/online-java-compiler/
Pergi
- Instalasi: https://go.dev/doc/install
- Tutorial: https://go.dev/doc/tutorial/getting-started
- IDE Online: https://go.dev/play/
Mendaftar untuk Variabel
Dengan Menuju Ilmu Data
Setiap Kamis, Variabel memberikan yang terbaik dari Menuju Ilmu Data: dari tutorial langsung dan penelitian mutakhir hingga fitur asli yang tidak ingin Anda lewatkan. Lihatlah.
Your home for data science. A Medium publication sharing concepts, ideas and codes.
Komentar
Posting Komentar
This Message