Minggu, 02 Januari 2022

Menjalankan Python di Browser

Interpreter Python biasanya berjalan pada sistem operasi. Bagaimana jika Anda perlu menjalankan Python di browser web? Anda mungkin berpikir kami harus meng-host instance juru bahasa Python di server jauh dan berkomunikasi melalui protokol WebSocket. Ya — itulah yang dilakukan sebagian besar penerjemah Python online. Tetapi sekarang, Anda dapat menjalankan modul Python apa pun murni dari sisi klien dengan browser dengan Pyodide. Pyodide menjalankan versi WebAssembly dari CPython melalui Emscripten. Implementasi WebAssembly Browser biasanya menawarkan lingkungan eksekusi seperti CPU virtual.

Kompiler Emscripten WebAssembly juga mendukung sistem file dalam memori virtual. Oleh karena itu, kita juga dapat menjalankan modul API sistem file Python di browser. Lihat cuplikan kode berikut — ini akan berfungsi di browser.


console.log(pyodide.runPython(`

     impor os

     os.makedirs('dir/test')

     print(os.listdir('dir'))

`));


Kode di atas akan bekerja dengan implementasi sistem file virtual Emscripten dan mencetak output berikut.

['tes']

Sekarang, Anda dapat langsung menjalankan kode Python ilmiah di browser web. Pyodide mendukung pustaka pemrograman ilmiah populer seperti NumPy, pandas, SciPy, Matplotlib, dan scikit-learn. Implementasi Pydiode Python juga menawarkan cara untuk mengakses API web. Misalnya, Anda dapat menampilkan peringatan browser dengan kode Python berikut.

import js

js.alert('Hello JavaScript!') # js module refers to window :)

Sekarang bukan keajaiban jika pengembang Python menulis aplikasi React dengan Python.

5 Kasus Penggunaan Python Yang Hanya Diketahui Beberapa Programmer

 Python adalah bahasa pemrograman tujuan umum yang sederhana, ramah pengembang, dan ditafsirkan. Python semakin populer setiap hari karena tata bahasanya yang sederhana, ekosistem perpustakaan yang kaya, dan lingkungan pengembang yang sangat produktif. Pemrogram menggunakan Python untuk membangun backend web, skrip utilitas, dan aplikasi desktop asli. Saat ini, Python sangat populer di kalangan insinyur ilmiah, analis data, insinyur pembelajaran mesin, dan ilmuwan data juga.

Bahasa pemrograman biasanya menjadi lebih populer saat menjangkau komunitas pengembang yang berbeda. Misalnya, JavaScript menjadi lebih populer karena kerangka kerja Electron, yang memungkinkan pengembang membangun aplikasi desktop dengan antarmuka web. Python juga mencoba memasuki komunitas pengembang baru dengan inovasi mengesankan yang dilakukan oleh komunitas pengembang Python.

Sekarang kita dapat menggunakan Python untuk membangun sesuatu seperti JavaScript. Namun, sebagian besar pengembang masih belum mengetahui inovasi berbasis Python yang mengesankan ini. Dalam cerita ini, saya akan menjelaskan beberapa kasus penggunaan Python yang kurang dikenal. Coba gunakan Python untuk salah satu kasus penggunaan ini, dan bantu Python menjadi lebih populer.

Python untuk Membuat Aplikasi Seluler

Sekarang bahasa Dart dan JavaScript paling disukai untuk membangun aplikasi seluler lintas platform. Dengan kata lain, Flutter dan React Native mendominasi pasar pengembangan aplikasi seluler. Tapi, apakah semua programmer Python harus belajar Dart atau JavaScript untuk menulis aplikasi seluler? Tidak — kerangka kerja Kivy GUI sudah dapat menghasilkan aplikasi asli untuk platform Android dan iOS. Oleh karena itu, Anda dapat menggunakan Python untuk membangun aplikasi seluler lintas platform.

Kivy hadir dengan toolkit widgetnya sendiri yang mirip dengan Flutter. Kivy menggunakan SDL (Simple Directmedia Layer) untuk merender elemen 2D di Android dan iOS seperti Flutter menggunakan Google Skia. Kivy berkomunikasi dengan API seluler asli melalui JNI/Cython di Android dan Objective-C/Cython di iOS.

Seperti kerangka kerja seluler lainnya, Kivy juga menyediakan rantai alat untuk membuat bundel aplikasi khusus platform. Selain itu, Anda dapat menjalankan aplikasi Kivy di sistem operasi desktop. Google Play dan Apple AppStore menerima aplikasi berbasis Kivy. Jika banyak pengembang mulai membangun aplikasi mereka dengan Kivy, itu pasti dapat bersaing dengan Flutter dan React Native.