conemu
hyper
git
windows terminal
mkdir codes
cd codes
touch index.html app.js app.css
code .
Terminal: Interface
Shell: Program atau software yang dijalankan via terminal
bash:
bash--> uname -a
https://www.iso.org/standard/67039.html
https://data.research.cornell.edu/data-management/sharing/readme/ https://data.research.cornell.edu/data-management/sharing/readme/
https://www.kaggle.com/datasets/sudalairajkumar/novel-corona-virus-2019-dataset
proximity(kedekatan), similarity(kesamaan), enclosure (Pembeda), closure (Penutupan bentuk), continuity (kesinambungan pola), dan connection(Koneksi).
https://www.cs.cmu.edu/~pattis/15-1XX/common/handouts/ascii.html
https://docs.python.org/3/library/
https://docs.python.org/3/glossary.html#term-parameter
https://docs.python.org/id/3.8/glossary.html#term-decorator
https://peps.python.org/pep-0008/
https://github.com/PyCQA/pycodestyle
PEP atau Python Enhancement Proposals merupakan panduan yang telah menjadi acuan untuk perkembangan Python. Salah satu panduan tersebut membahas mengenai arahan gaya penulisan (style guide) yang baik dan benar ketika Anda ingin membangun kode menggunakan Python. Panduan tersebut adalah PEP8 yang berjudul "Style Guide for Python Code".
Tujuan dari panduan ini agar kode Anda lebih mudah dibaca dan dipahami oleh programmer lain serta menghindari kemungkinan kesalahan yang akan muncul.
Pada materi kali ini, kita akan mempelajari beberapa aplikasi yang proses linting menghasilkan pesan dengan menunjukkan baris dan kode yang mengalami kesalahan.
Pycodestyle (sebelumnya bernama pep8)
Pycodestyle adalah aplikasi open source (berlisensi MIT/Expat) untuk membantu mengecek kode terkait gaya penulisan kode dengan konvensi PEP8. Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
pip install pycodestyle
Pylint adalah aplikasi open source (berlisensi GPL v2) untuk melakukan analisis kode Python, mengecek untuk kesalahan (error) pemrograman, memaksakan standar penulisan kode dengan mengecek penulisan kode yang tidak baik, serta memberikan saran untuk refactoring sederhana. Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
https://github.com/pylint-dev/pylint
pip install pylint
Flake8 adalah aplikasi open source (berlisensi MIT) yang membungkus sejumlah kemampuan aplikasi lain, seperti pycodestyle, pyflakes, dan (skrip/fitur) lainnya. Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
pip install flake8
Contoh: kalkulator.py
class Kalkulator:
"""kalkulator tambah kurang"""
def __init__(self, _i):
self.i = _i
def tambah(self, _i): return self.i + _i
def kurang(self, _i):
return self.i - _i
Check di terminal:
pycodestyle kalkulator.py
pylint kalkulator.py
flake8 kalkulator.py
Perbaikan:
class Kalkulator:
"""kalkulator tambah kurang"""
def __init__(self, _i):
self.i = _i
def tambah(self, _i): return self.i + _i
def kurang(self, _i):
return self.i - _i
Berikut adalah tiga jenis aplikasi untuk memformat kode, silakan dicermati dahulu.
Gunakan: black dan autopep8
Tidak harus semuanya diinstal, hanya paket yang menurut Anda sesuai kebutuhan saja yang digunakan.
black
black adalah proyek open source yang dikembangkan di repository Python Software Foundation (PSF) dengan lisensi MIT. Untuk mendapatkan gambaran, versi online (tidak resmi) ada di https://black.now.sh.
Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
pip install black
YAPF (Yet Another Python Formatter)
YAPF adalah proyek open source yang dikembangkan di repository Google dengan lisensi Apache.
Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
pip install yapf
autopep8
autopep8 adalah proyek open source (berlisensi MIT) yang termasuk paling awal untuk memformat kode dengan bantuan lint pycodestyle.
Untuk instalasi, silakan buka terminal Anda dan jalankan kode berikut.
pip install autopep8
Selanjutnya, mari kita masuk ke pembahasan cara kerja ketiganya. Kita akan menggunakan kode yang sama seperti sebelumnya, yaitu kalkulator.py. Pastikan Anda sudah menginstal aplikasi yang disebutkan sebelumnya.
Buka script kalkulator.py dan salin kode berikut.
class Kalkulator:
"""kalkulator tambah kurang"""
def __init__(self, _i):
self.i = _i
def tambah(self, _i): return self.i + _i
def kurang(self, _i):
return self.i - _i
Contoh di atas merupakan kode kalkulator yang sama seperti materi sebelumnya, saat kita mendefinisikan kelas kalkulator dengan dua metode, yaitu tambah dan kurang serta satu atribut objek.
Mari jalankan file atau script tersebut dengan aplikasi yang telah kita instal. Buka kembali terminal Anda, pastikan membuka direktori tempat file atau script Anda berada.
black
Untuk menguji menggunakan black, jalankan kode berikut.
black kalkulator.py
Ketika Anda menjalankan perintah di atas, kode yang berada di dalam kalkulator.py akan mengalami perubahan. Silakan cek kembali kode dalam file Anda.
yapf
Untuk menguji menggunakan yapf, jalankan kode berikut.
yapf kalkulator.py
Ketika Anda menjalankan perintah di atas, tidak akan mengubah kode Anda secara langsung, seperti black. Namun, yapf akan memberikan saran kode melalui terminal.
autopep8
Cara kerja autopep8 dapat seperti yapf yang akan memberi saran kode ke layar terminal atau seperti black yang akan mengubah langsung isi file kalkulator.py.
Jika Anda ingin autopep8 memberikan saran kode, silakan jalankan kode berikut.
autopep8 kalkulator.py
Ketika dijalankan, layar akan memunculkan saran kode yang telah diperbaiki seperti pada gambar berikut.
Jika Anda ingin mengubah kode file secara langsung, silakan jalankan kode berikut dan periksa kembali file kode Anda.
autopep8 --in-place --aggressive --aggressive kalkulator.py
Setelah mempelajari kedua mekanisme: pengecekan gaya penulisan (style guide) dan proses memformat kode, Anda tinggal fokus dengan penulisan indentasi dalam kode Python. Untuk format sisanya, aplikasi-aplikasi yang telah kita pelajari di atas dapat membantu.
Jika Anda menulis dengan editor kode yang sangat sederhana, anggap saja seperti notepad di Windows atau pico/nano di Linux, dalam menuliskan kode Python cukup perhatikan indentasi untuk setiap baris pernyataan (statement). Setelah selesai menuliskan kodenya, simpan kodenya sebagai file .py, lalu eksekusi perintah linter atau langsung eksekusi perintah aplikasi untuk memformat kode. Hasilnya, kode Anda sudah dirapikan sesuai arahan gaya penulisan PEP8 juga dilakukan pengecekan terhadap kemungkinan kesalahan (jika Anda lakukan linting).
Untuk Anda yang mengikuti instalasi editor kode PyCharm dalam materi awal, secara bawaan sudah menggunakan fitur inspeksi dengan kemampuan yang kurang lebih sama. Namun jika Anda mau, bisa juga menambahkan aplikasi lint yang sudah dijelaskan sebagai tambahan dari bawaan. Demikian juga untuk fitur format ulang kode juga tersedia secara bawaan di aplikasi PyCharm
Anotation
https://peps.python.org/pep-0484/
https://peps.python.org/pep-0008/#naming-conventions
https://peps.python.org/pep-0008/#descriptive-naming-styles
https://peps.python.org/pep-0008/