Anda di halaman 1dari 25

Bagaimana cara kerja program komputer?

Kursus ini bertujuan untuk menunjukkan kepada Anda apa bahasa Python itu dan apa yang
digunakan untuk. Mari kita mulai dari dasar-dasar absolut.

Suatu program membuat komputer dapat digunakan. Tanpa program, komputer, bahkan
yang paling kuat, tidak lebih dari sebuah objek. Demikian pula, tanpa pemain, piano tidak
lebih dari kotak kayu.

Komputer dapat melakukan tugas yang sangat kompleks, tetapi kemampuan ini bukan
bawaan. Sifat komputer sangat berbeda.

Ia hanya dapat menjalankan operasi yang sangat sederhana, misalnya, komputer tidak
dapat mengevaluasi nilai fungsi matematika yang rumit dengan sendirinya, meskipun ini
tidak di luar bidang kemungkinan dalam waktu dekat.

Komputer kontemporer hanya dapat mengevaluasi hasil operasi yang sangat mendasar,
seperti menambah atau membagi, tetapi mereka dapat melakukannya dengan sangat
cepat, dan dapat mengulangi tindakan ini hampir berapa kali.

Bayangkan Anda ingin mengetahui kecepatan rata-rata yang telah Anda capai selama
perjalanan panjang. Anda tahu jaraknya, Anda tahu waktu, Anda butuh kecepatan.

Secara alami, komputer akan dapat menghitung ini, tetapi komputer tidak mengetahui hal-
hal seperti jarak, kecepatan atau waktu. Karena itu, perlu untuk menginstruksikan komputer
untuk:

 menerima nomor yang mewakili jarak;


 menerima nomor yang mewakili waktu perjalanan;
 bagi nilai sebelumnya dengan yang terakhir dan simpan hasilnya dalam memori;
 tampilkan hasilnya (mewakili kecepatan rata-rata) dalam format yang dapat dibaca.

Keempat tindakan sederhana ini membentuk sebuah program . Tentu saja, contoh-contoh
ini tidak diformalkan, dan mereka sangat jauh dari apa yang dapat dipahami oleh komputer,
tetapi mereka cukup baik untuk diterjemahkan ke dalam bahasa yang dapat diterima
komputer.

Bahasa adalah kata kunci.


Bahasa alami vs. bahasa pemrograman
Bahasa adalah sarana (dan alat) untuk mengekspresikan dan merekam pemikiran. Ada banyak bahasa
di sekitar kita. Beberapa dari mereka tidak memerlukan berbicara atau menulis, seperti bahasa
tubuh; Anda bisa mengekspresikan perasaan terdalam Anda dengan sangat tepat tanpa mengucapkan
sepatah kata pun.

Bahasa lain yang Anda gunakan setiap hari adalah bahasa ibu Anda, yang Anda gunakan untuk
mewujudkan keinginan Anda dan untuk memikirkan kenyataan. Komputer memiliki bahasa mereka
sendiri, juga disebut bahasa mesin , yang sangat sederhana.

Komputer, bahkan yang paling canggih secara teknis, sama sekali tidak memiliki jejak
kecerdasan. Anda bisa mengatakan bahwa itu seperti anjing yang terlatih dengan baik - ia hanya
menanggapi serangkaian perintah yang telah diketahui sebelumnya.

Perintah yang dikenali sangat sederhana. Kita dapat membayangkan bahwa komputer merespons
pesanan seperti "ambil nomor itu, bagi dengan yang lain dan simpan hasilnya".

Satu set lengkap perintah yang dikenal disebut daftar instruksi , kadang-kadang disingkat
menjadi IL . Berbagai jenis komputer dapat bervariasi tergantung pada ukuran ILS mereka, dan
instruksinya dapat sangat berbeda dalam model yang berbeda.

Catatan: bahasa mesin dikembangkan oleh manusia.

Saat ini tidak ada komputer yang mampu membuat bahasa baru. Namun, itu mungkin berubah
segera. Di sisi lain, orang-orang menggunakan sejumlah bahasa yang sangat berbeda juga, tetapi
bahasa-bahasa ini dibuat sendiri. Apalagi mereka masih berevolusi.

Kata-kata baru dibuat setiap hari dan kata-kata lama hilang. Bahasa-bahasa ini disebut bahasa
alami .
Apa yang membuat bahasa?
Kita dapat mengatakan bahwa setiap bahasa (mesin atau alami, tidak masalah) terdiri dari unsur-
unsur berikut:

seperangkat simbol yang digunakan untuk membangun kata-kata dari bahasa tertentu (misalnya,
alfabet Latin untuk bahasa Inggris, alfabet Sirilik untuk Rusia, Kanji untuk Jepang, dan sebagainya)

(alias kamus) sekumpulan kata yang ditawarkan oleh penggunanya (mis., kata "komputer" berasal
dari kamus bahasa Inggris, sementara "cmoptrue" tidak; kata "chat" hadir baik dalam kamus bahasa
Inggris dan Prancis , tetapi artinya berbeda)YNTAX

seperangkat aturan (formal atau informal, tertulis atau terasa secara intuitif) digunakan untuk
menentukan apakah serangkaian kata tertentu membentuk kalimat yang valid (misalnya, "Saya
seorang python" adalah frasa yang benar secara sintaksis, sementara "Saya seorang python" adalah
bukan 't)

seperangkat aturan yang menentukan apakah frasa tertentu masuk akal (misalnya, "Saya makan
donat" masuk akal, tetapi "Donat memakan saya" tidak)

IL sebenarnya adalah alfabet dari bahasa mesin . Ini adalah set simbol paling sederhana dan paling
utama yang dapat kita gunakan untuk memberikan perintah ke komputer. Ini bahasa ibu komputer.

Sayangnya, lidah ini jauh berbeda dari bahasa ibu manusia. Kita semua (baik komputer dan manusia)
membutuhkan sesuatu yang lain, bahasa yang umum untuk komputer dan manusia, atau jembatan
antara dua dunia yang berbeda.

Kita membutuhkan bahasa di mana manusia dapat menulis program mereka dan bahasa yang
komputer dapat gunakan untuk menjalankan program, yang jauh lebih kompleks daripada bahasa
mesin dan namun jauh lebih sederhana daripada bahasa alami.

Bahasa seperti itu sering disebut bahasa pemrograman tingkat tinggi. Mereka setidaknya agak mirip
dengan yang alami karena mereka menggunakan simbol, kata-kata dan konvensi yang dapat dibaca
oleh manusia. Bahasa-bahasa ini memungkinkan manusia untuk mengekspresikan perintah ke
komputer yang jauh lebih kompleks daripada yang ditawarkan oleh ILS.

Suatu program yang ditulis dalam bahasa pemrograman tingkat tinggi disebut kode sumber (berbeda
dengan kode mesin yang dijalankan oleh komputer). Demikian pula, file yang berisi kode sumber
disebut file sumber .

Sebelumnya Berikutnya
Kompilasi vs. interpretasi
Pemrograman komputer adalah tindakan menyusun elemen-elemen bahasa pemrograman yang
dipilih dalam urutan yang akan menyebabkan efek yang diinginkan. Efeknya bisa berbeda di setiap
kasus tertentu - terserah imajinasi, pengetahuan, dan pengalaman programmer.

Tentu saja, komposisi seperti itu harus benar dalam banyak hal:

 alfabet - program perlu ditulis dalam skrip yang dapat dikenali, seperti Roman, Cyrillic, dll.
 leksikal - setiap bahasa pemrograman memiliki kamusnya dan Anda perlu
menguasainya; untungnya, ini jauh lebih sederhana dan lebih kecil dari kamus bahasa apa
pun;
 secara sintaksis - setiap bahasa memiliki aturannya dan harus dipatuhi;
 semantik - program harus masuk akal.

Sayangnya, seorang programmer juga dapat membuat kesalahan dengan masing-masing dari empat
pengertian di atas. Masing-masing dapat menyebabkan program menjadi sama sekali tidak berguna.

Anggaplah Anda telah berhasil menulis sebuah program. Bagaimana kita membujuk komputer untuk
menjalankannya? Anda harus merender program Anda ke dalam bahasa mesin. Untungnya,
terjemahan dapat dilakukan oleh komputer itu sendiri, membuat seluruh proses cepat dan efisien.

Ada dua cara berbeda untuk mengubah suatu program dari bahasa pemrograman tingkat tinggi
menjadi bahasa mesin :

KOMPILASI - program sumber diterjemahkan satu kali (namun, tindakan ini harus diulang setiap
kali Anda mengubah kode sumber) dengan mendapatkan file (misalnya, file .exe jika kode ini
dimaksudkan untuk dijalankan di bawah MS Windows) yang berisi mesin kode; sekarang Anda dapat
mendistribusikan file ke seluruh dunia; program yang melakukan terjemahan ini disebut kompiler
atau penerjemah;

INTERPRETASI - Anda (atau pengguna kode apa pun) dapat menerjemahkan program sumber
setiap kali harus dijalankan; program yang melakukan transformasi semacam ini disebut interpreter,
karena ia menginterpretasikan kode setiap kali dimaksudkan untuk dieksekusi; itu juga berarti bahwa
Anda tidak bisa hanya mendistribusikan kode sumber apa adanya, karena pengguna akhir juga
membutuhkan penerjemah untuk menjalankannya.

Karena beberapa alasan yang sangat mendasar, bahasa pemrograman tingkat tinggi tertentu
dirancang untuk masuk ke dalam salah satu dari dua kategori ini.

Ada sangat sedikit bahasa yang dapat dikompilasi dan diinterpretasikan. Biasanya, bahasa
pemrograman diproyeksikan dengan faktor ini di benak konstruktornya - apakah akan dikompilasi
atau ditafsirkan?
Apa yang sebenarnya dilakukan penerjemah?
Mari kita asumsikan sekali lagi bahwa Anda telah menulis sebuah program. Sekarang, ia ada
sebagai file komputer : program komputer sebenarnya adalah sepotong teks, jadi kode sumber
biasanya ditempatkan dalam file teks . Catatan: harus berupa teks murni , tanpa dekorasi seperti
font, warna, gambar yang disematkan, atau media lain. Sekarang Anda harus memanggil juru bahasa
dan membiarkannya membaca file sumber Anda.

Penerjemah membaca kode sumber dengan cara yang umum dalam budaya Barat: dari atas ke bawah
dan dari kiri ke kanan. Ada beberapa pengecualian - mereka akan dibahas nanti dalam kursus.

Pertama-tama, penerjemah memeriksa apakah semua baris berikutnya sudah benar (menggunakan
empat aspek yang dibahas sebelumnya).

Jika kompiler menemukan kesalahan, itu menyelesaikan pekerjaannya segera. Satu-satunya hasil
dalam kasus ini adalah pesan kesalahan . Penerjemah akan memberi tahu Anda di mana letak
kesalahan itu dan apa penyebabnya. Namun, pesan-pesan ini mungkin menyesatkan, karena
penerjemah tidak dapat mengikuti maksud Anda, dan mungkin mendeteksi kesalahan pada jarak
tertentu dari penyebab sebenarnya.

Misalnya, jika Anda mencoba menggunakan entitas dengan nama yang tidak dikenal, itu akan
menyebabkan kesalahan, tetapi kesalahan akan ditemukan di tempat di mana ia mencoba
menggunakan entitas, bukan di mana nama entitas baru diperkenalkan.

Dengan kata lain, alasan sebenarnya biasanya terletak sedikit lebih awal dalam kode, misalnya di
tempat Anda harus memberi tahu penerjemah bahwa Anda akan menggunakan entitas dari nama
tersebut.

Jika garis terlihat bagus, penerjemah mencoba untuk mengeksekusinya (catatan: setiap baris biasanya
dieksekusi secara terpisah, sehingga trio "baca-periksa-eksekusi" dapat diulang berkali-kali - lebih
banyak dari jumlah aktual baris dalam file sumber) , karena beberapa bagian dari kode dapat
dieksekusi lebih dari satu kali).

Ada kemungkinan juga bahwa sebagian besar kode dapat dieksekusi dengan sukses sebelum
penerjemah menemukan kesalahan. Ini adalah perilaku normal dalam model eksekusi ini.

Anda mungkin bertanya sekarang: mana yang lebih baik? Model "kompilasi" atau model
"interpreting"? Tidak ada jawaban yang jelas. Jika ada, salah satu model ini sudah tidak ada sejak
lama. Keduanya memiliki kelebihan dan kekurangan masing-masing.
Kompilasi vs. interpretasi - kelebihan dan kekurangan

KOMPILASI INTERPRETASI
 pelaksanaan kode yang
diterjemahkan biasanya lebih  Anda dapat menjalankan kode
cepat; segera setelah Anda
 hanya pengguna yang harus menyelesaikannya - tidak ada fase
memiliki kompiler - pengguna terjemahan tambahan;
akhir dapat menggunakan kode  kode disimpan menggunakan
tanpa itu; bahasa pemrograman, bukan
KEUNTUNGAN  kode yang diterjemahkan mesin - ini berarti dapat
disimpan menggunakan bahasa dijalankan pada komputer
mesin - karena sangat sulit menggunakan bahasa mesin yang
untuk memahaminya, berbeda; Anda tidak
penemuan dan trik mengkompilasi kode Anda secara
pemrograman Anda terpisah untuk setiap arsitektur
kemungkinan akan tetap yang berbeda.
menjadi rahasia Anda.
 kompilasi itu sendiri mungkin
 jangan berharap bahwa
proses yang sangat memakan
interpretasi akan meningkatkan
waktu - Anda mungkin tidak
kode Anda ke kecepatan tinggi -
dapat menjalankan kode Anda
kode Anda akan membagikan
segera setelah perubahan apa
kekuatan komputer dengan juru
KEUNGGULAN pun;
bahasa, sehingga tidak bisa terlalu
 Anda harus memiliki banyak
cepat;
kompiler sebagai platform
 Anda dan pengguna akhir harus
perangkat keras yang Anda
memiliki juru bahasa untuk
inginkan untuk menjalankan
menjalankan kode Anda.
kode Anda.

Apa arti semua ini bagi Anda?

 Python adalah bahasa yang ditafsirkan . Ini berarti bahwa ia mewarisi semua kelebihan dan
kekurangan yang dijelaskan. Tentu saja, ia menambahkan beberapa fitur unik untuk kedua
set.
 Jika Anda ingin memprogram dalam Python, Anda memerlukan juru bahasa Python . Anda
tidak akan dapat menjalankan kode Anda tanpa itu. Untungnya, Python gratis . Ini adalah
salah satu keunggulan terpentingnya.

Karena alasan historis, bahasa yang dirancang untuk digunakan dengan cara interpretasi sering
disebut bahasa scripting , sedangkan program sumber yang dikodekan menggunakan mereka
disebut skrip .
Apa itu Python?
Python adalah bahasa pemrograman tingkat tinggi yang digunakan secara luas, ditafsirkan,
berorientasi objek, dan tinggi dengan semantik dinamis, yang digunakan untuk
pemrograman tujuan umum.

Dan sementara Anda mungkin tahu python sebagai ular besar, nama bahasa pemrograman
Python berasal dari serial sketsa komedi televisi BBC yang disebut Monty Python Flying
Circus .

Pada puncak kesuksesannya, tim Monty Python menampilkan sketsa mereka untuk
penonton langsung di seluruh dunia, termasuk di Hollywood Bowl.

Karena Monty Python dianggap sebagai salah satu dari dua nutrisi mendasar bagi seorang
programmer (yang lainnya adalah pizza), pencipta Python menamakan bahasa itu untuk
menghormati acara TV.

Siapa yang membuat Python?


Salah satu fitur luar biasa dari Python adalah kenyataan bahwa itu sebenarnya adalah
pekerjaan satu orang. Biasanya, bahasa pemrograman baru dikembangkan dan diterbitkan
oleh perusahaan besar yang mempekerjakan banyak profesional, dan karena aturan hak
cipta, sangat sulit untuk menyebutkan siapa saja yang terlibat dalam proyek. Python adalah
pengecualian.

Tidak banyak bahasa yang penulisnya dikenal dengan namanya. Python diciptakan
oleh Guido van Rossum , lahir pada tahun 1956 di Haarlem, Belanda. Tentu saja, Guido
van Rossum tidak mengembangkan dan mengembangkan sendiri semua komponen
Python.

Kecepatan penyebaran Python ke seluruh dunia adalah hasil dari kerja berkesinambungan
ribuan programmer, penguji, pengguna (banyak dari mereka bukan spesialis IT) dan
penggemar, tetapi harus dikatakan bahwa ide pertama (benih dari mana Python tumbuh)
sampai pada satu kepala - milik Guido.
Proyek pemrograman hobi
Keadaan di mana Python dibuat agak membingungkan. Menurut Guido van Rossum:

Pada bulan Desember 1989, saya mencari proyek pemrograman "hobi" yang akan
membuat saya sibuk selama minggu sekitar Natal. Kantor saya (...) akan ditutup, tetapi
saya memiliki komputer di rumah, dan tidak banyak lagi di tangan saya. Saya memutuskan
untuk menulis penerjemah untuk bahasa scripting baru yang saya pikirkan akhir-akhir ini:
keturunan ABC yang akan menarik bagi peretas Unix / C. Saya memilih Python sebagai
judul yang berfungsi untuk proyek ini, berada dalam suasana hati yang sedikit tidak sopan
(dan penggemar berat Circus Terbang Monty Python).Guido van Rossum

Tujuan Python
Pada 1999, Guido van Rossum mendefinisikan tujuannya untuk Python:

 bahasa yang mudah dan intuitif sama kuatnya dengan yang dimiliki pesaing
utama;
 open source , sehingga siapa pun dapat berkontribusi pada pengembangannya;
 kode yang bisa dimengerti seperti bahasa Inggris biasa;
 cocok untuk tugas sehari-hari , memungkinkan untuk waktu pengembangan yang
singkat.

Sekitar 20 tahun kemudian, jelas bahwa semua niat ini telah terpenuhi. Beberapa sumber
mengatakan bahwa Python adalah bahasa pemrograman paling populer di dunia,
sementara yang lain mengklaim itu ketiga atau kelima.

Either way, itu masih menempati peringkat tinggi dalam sepuluh besar PYPL PopularitY of
Programming Language dan Indeks Komunitas Pemrograman TIOBE .

Python bukan bahasa muda. Itu dewasa dan dapat dipercaya . Itu bukan keajaiban satu-
hit. Ini adalah bintang yang cemerlang dalam cakrawala pemrograman, dan waktu yang
dihabiskan untuk belajar Python adalah investasi yang sangat bagus.
Apa yang membuat Python istimewa?
Bagaimana bisa terjadi bahwa pemrogram, tua dan muda, berpengalaman dan pemula,
ingin menggunakannya? Bagaimana bisa terjadi bahwa perusahaan besar mengadopsi
Python dan menerapkan produk andalan mereka menggunakannya?

Ada banyak alasan - kami telah mendaftarkan beberapa di antaranya, tetapi mari kita
sebutkan lagi dengan cara yang lebih praktis:

 itu mudah untuk belajar - waktu yang dibutuhkan untuk belajar Python lebih
pendek daripada banyak bahasa lainnya; ini berarti bahwa mungkin untuk memulai
pemrograman yang sebenarnya lebih cepat;
 itu mudah untuk mengajar - beban kerja mengajar lebih kecil dari yang dibutuhkan
oleh bahasa lain; ini berarti bahwa guru dapat lebih menekankan pada teknik
pemrograman umum (tidak tergantung bahasa), tidak membuang-buang energi
untuk trik-trik eksotis, pengecualian aneh dan aturan yang tidak dapat dipahami;
 itu mudah digunakan untuk menulis perangkat lunak baru - itu sering mungkin
untuk menulis kode lebih cepat saat menggunakan Python;
 itu mudah untuk memahami - itu juga sering lebih mudah untuk memahami kode
orang lain lebih cepat jika ditulis dengan Python;
 itu mudah untuk mendapatkan, menginstal dan menyebarkan - Python bebas,
terbuka dan multiplatform; tidak semua bahasa bisa membanggakan itu.

Tentu saja, Python juga memiliki kekurangan:

 itu bukan setan kecepatan - Python tidak memberikan kinerja yang luar biasa

 dalam beberapa kasus mungkin tahan terhadap beberapa teknik pengujian yang
lebih sederhana - ini mungkin berarti bahwa debug kode Python bisa lebih sulit
daripada dengan bahasa lain; untungnya, membuat kesalahan selalu lebih sulit
dengan Python. Juga harus dinyatakan bahwa Python bukan satu-satunya solusi
dari jenisnya yang tersedia di pasar TI.

Ini memiliki banyak pengikut, tetapi ada banyak yang lebih suka bahasa lain dan bahkan
tidak mempertimbangkan Python untuk proyek mereka.
Saingan python?
Python memiliki dua pesaing langsung, dengan properti dan kecenderungan yang
sebanding. Ini adalah:

 Perl - bahasa scripting yang awalnya ditulis oleh Larry Wall;


 Ruby - bahasa penulisan yang awalnya ditulis oleh Yukihiro Matsumoto.

Yang pertama lebih tradisional, lebih konservatif daripada Python, dan menyerupai
beberapa bahasa tua yang baik yang berasal dari bahasa pemrograman C klasik.

Sebaliknya, yang terakhir lebih inovatif dan lebih penuh ide-ide segar daripada
Python. Python sendiri terletak di antara dua kreasi ini.

Internet penuh dengan forum dengan diskusi yang tak terbatas tentang keunggulan salah
satu dari tiga di atas yang lain, jika Anda ingin belajar lebih banyak tentang masing-masing.

Di mana kita bisa melihat Python beraksi?


Kami melihatnya setiap hari dan hampir di mana-mana. Ini digunakan secara luas untuk
mengimplementasikan layanan Internet yang kompleks seperti mesin pencari,
penyimpanan dan alat cloud, media sosial dan sebagainya. Setiap kali Anda menggunakan
salah satu layanan ini, Anda sebenarnya sangat dekat dengan Python, meskipun Anda
tidak akan mengetahuinya.

Banyak alat pengembangan diimplementasikan dalam Python. Semakin banyak aplikasi


penggunaan sehari-hari sedang ditulis dalam Python. Banyak ilmuwan telah
meninggalkan alat milik mahal dan beralih ke Python. Banyak penguji proyek TI sudah
mulai menggunakan Python untuk melakukan prosedur pengujian berulang. Daftarnya
panjang.

Kenapa tidak Python?


Meskipun popularitas Python semakin meningkat, masih ada beberapa celah di mana
Python tidak ada, atau jarang terlihat:

 pemrograman tingkat rendah (kadang-kadang disebut pemrograman "dekat


dengan logam"): jika Anda ingin menerapkan driver atau mesin grafis yang sangat
efektif, Anda tidak akan menggunakan Python;
 aplikasi untuk perangkat seluler : meskipun wilayah ini masih menunggu untuk
ditaklukkan oleh Python, kemungkinan besar akan terjadi suatu hari nanti.
Ada lebih dari satu Python
Ada dua jenis utama Python, yang disebut Python 2 dan Python 3.

Python 2 adalah versi lama dari Python asli. Perkembangannya sejak itu sengaja terhenti,
meskipun itu tidak berarti bahwa tidak ada pembaruan untuk itu. Sebaliknya, pembaruan
dikeluarkan secara berkala, tetapi pembaruan itu tidak dimaksudkan untuk mengubah
bahasa secara signifikan. Mereka lebih suka memperbaiki bug dan lubang keamanan yang
baru ditemukan. Jalur pengembangan Python 2 telah mencapai jalan buntu, tetapi Python 2
sendiri masih sangat hidup.

Python 3 adalah versi bahasa yang lebih baru (tepatnya, saat ini). Ia melalui jalur
evolusinya sendiri, menciptakan standar dan kebiasaannya sendiri.

Yang pertama lebih tradisional, lebih konservatif daripada Python, dan menyerupai
beberapa bahasa tua yang baik yang berasal dari bahasa pemrograman C klasik.

Kedua versi Python ini tidak kompatibel satu sama lain. Skrip Python 2 tidak akan berjalan
dalam lingkungan Python 3 dan sebaliknya, jadi jika Anda ingin kode Python 2 lama
dijalankan oleh juru bahasa Python 3, satu-satunya solusi yang mungkin adalah menulis
ulang, bukan dari awal, tentu saja, karena sebagian besar kode mungkin tidak tersentuh,
tetapi Anda harus merevisi semua kode untuk menemukan semua kemungkinan tidak
kompatibel. Sayangnya, proses ini tidak dapat diotomatisasi sepenuhnya.

Terlalu sulit, terlalu memakan waktu, terlalu mahal, dan terlalu berisiko untuk memigrasikan
aplikasi Python 2 lama ke platform baru. Ada kemungkinan bahwa menulis ulang kode akan
menimbulkan bug baru. Lebih mudah dan lebih masuk akal untuk membiarkan sistem ini
sendirian dan meningkatkan penerjemah yang ada, daripada mencoba bekerja di dalam
kode sumber yang sudah berfungsi.

Python 3 bukan hanya versi yang lebih baik dari Python 2 - itu adalah bahasa yang sama
sekali berbeda, meskipun sangat mirip dengan pendahulunya. Ketika Anda melihat mereka
dari kejauhan, mereka tampak sama, tetapi ketika Anda melihat dari dekat, Anda melihat
banyak perbedaan.

Jika Anda memodifikasi solusi Python lama yang ada, maka sangat mungkin bahwa itu
dikodekan dalam Python 2. Ini adalah alasan mengapa Python 2 masih digunakan. Ada
terlalu banyak aplikasi Python 2 yang ada untuk dibuang sama sekali.

CATATAN

Jika Anda akan memulai proyek Python baru, Anda harus menggunakan Python 3, dan
ini adalah versi Python yang akan digunakan selama kursus ini.

Penting untuk diingat bahwa mungkin ada perbedaan yang lebih kecil atau lebih besar
antara rilis Python 3 berikutnya (misalnya, Python 3.6 memperkenalkan kunci kamus terurut
secara default di bawah implementasi CPython) - kabar baiknya, meskipun, adalah bahwa
semua versi Python 3 yang lebih baru yang kompatibel dengan versi sebelumnya dari
Python 3. Setiap kali berarti dan penting, kita akan selalu mencoba untuk menyorot
perbedaan dalam kursus.

Semua sampel kode yang akan Anda temukan selama kursus telah diuji terhadap Python
3.4, Python 3.6, dan Python 3.7.
Python alias CPython
Selain Python 2 dan Python 3, ada lebih dari satu versi masing-masing.

Pertama-tama, ada Python yang dikelola oleh orang-orang yang berkumpul di sekitar PSF
( Python Software Foundation ), sebuah komunitas yang bertujuan untuk mengembangkan,
meningkatkan, memperluas, dan mempopulerkan Python dan lingkungannya. Presiden
PSF adalah Guido von Rossum sendiri, dan karena alasan ini, Python ini
disebut kanonik . Mereka juga dianggap referensi Python , karena implementasi bahasa
lainnya harus mengikuti semua standar yang ditetapkan oleh PSF.

Guido van Rossum menggunakan bahasa pemrograman "C" untuk mengimplementasikan versi
pertama dari bahasanya dan keputusan ini masih berlaku. Semua Python yang berasal dari PSF ditulis
dalam bahasa "C". Ada banyak alasan untuk pendekatan ini dan ini memiliki banyak
konsekuensi. Salah satunya (mungkin yang paling penting) adalah karena itu, Python dapat dengan
mudah dipindahkan dan dimigrasikan ke semua platform dengan kemampuan untuk mengkompilasi
dan menjalankan program bahasa "C" (hampir semua platform memiliki fitur ini, yang membuka
banyak ekspansi peluang untuk Python).

Inilah sebabnya mengapa implementasi PSF sering disebut sebagai CPython . Ini adalah Python
yang paling berpengaruh di antara semua Python di dunia.

Cython
Anggota keluarga Python lainnya adalah Cython .

Cython adalah salah satu dari sejumlah kemungkinan solusi untuk sifat Python yang paling
menyakitkan - kurangnya efisiensi. Perhitungan matematika yang besar dan kompleks dapat dengan
mudah dikodekan dalam Python (jauh lebih mudah daripada dalam "C" atau bahasa tradisional
lainnya), tetapi eksekusi kode yang dihasilkan mungkin sangat memakan waktu.

Bagaimana dua kontradiksi ini direkonsiliasi? Salah satu solusinya adalah menulis ide matematika
Anda menggunakan Python, dan ketika Anda benar-benar yakin bahwa kode Anda benar dan
menghasilkan hasil yang valid, Anda dapat menerjemahkannya ke "C". Tentu saja, "C" akan berjalan
lebih cepat daripada Python murni.

Inilah yang ingin dilakukan oleh Cython - untuk secara otomatis menerjemahkan kode Python (bersih
dan jelas, tetapi tidak terlalu cepat) menjadi kode "C" (rumit dan banyak bicara, tetapi gesit).
Jython
Versi lain dari Python disebut Jython .

"J" adalah untuk "Java". Bayangkan sebuah Python ditulis dalam Java dan bukan C. Ini
berguna, misalnya, jika Anda mengembangkan sistem besar dan kompleks yang
seluruhnya ditulis dalam Java dan ingin menambahkan fleksibilitas Python pada
mereka. CPython tradisional mungkin sulit diintegrasikan ke dalam lingkungan seperti itu,
karena C dan Java hidup di dunia yang sama sekali berbeda dan tidak berbagi banyak ide
umum.

Jython dapat berkomunikasi dengan infrastruktur Java yang ada dengan lebih efektif. Inilah
sebabnya mengapa beberapa proyek merasa dapat digunakan dan diperlukan.

Catatan: implementasi Jython saat ini mengikuti standar Python 2. Tidak ada Jython yang
sesuai dengan Python 3, sejauh ini.

PyPy dan RPython


Lihatlah logo di bawah ini. Itu rebus. Bisakah kamu menyelesaikannya?

Ini adalah logo PyPy - Python di dalam Python. Dengan kata lain, ini merepresentasikan lingkungan
Python yang ditulis dalam bahasa mirip-Python bernama RPython (Restricted Python). Ini
sebenarnya adalah bagian dari Python. Kode sumber PyPy tidak dijalankan dengan cara interpretasi,
melainkan diterjemahkan ke dalam bahasa pemrograman C dan kemudian dieksekusi secara terpisah.

Ini berguna karena jika Anda ingin menguji setiap fitur baru yang mungkin (tetapi tidak harus)
diperkenalkan ke dalam implementasi Python mainstream, lebih mudah untuk memeriksanya dengan
PyPy daripada dengan CPython. Inilah sebabnya mengapa PyPy bukan alat untuk orang yang
mengembangkan Python daripada untuk pengguna lainnya.

Ini tidak membuat PyPy kurang penting atau kurang serius daripada CPython, tentu saja.

Selain itu, PyPy kompatibel dengan bahasa Python 3.

Ada banyak Python berbeda di dunia. Anda akan menemukannya jika Anda melihatnya,
tetapi kursus ini akan fokus pada CPython .
Cara mendapatkan Python dan cara menggunakannya
Ada beberapa cara untuk mendapatkan salinan Python 3 Anda sendiri, tergantung pada sistem
operasi yang Anda gunakan.

Pengguna Linux kemungkinan besar sudah menginstal Python - ini adalah skenario yang paling
mungkin, karena infrastruktur Python secara intensif digunakan oleh banyak komponen OS Linux.

Sebagai contoh, beberapa distributor dapat memasangkan alat spesifik mereka bersama dengan
sistem dan banyak dari alat ini, seperti manajer paket, sering ditulis dengan Python. Beberapa bagian
lingkungan grafis yang tersedia di dunia Linux juga dapat menggunakan Python.

Jika Anda pengguna Linux, buka terminal / konsol, dan ketik:

python3

pada prompt shell, tekan Enter dan tunggu.

Jika Anda melihat sesuatu seperti ini:

Python 3.4.5 (default, Jan 12 2017, 02:28:40) [GCC 4.2.1 Compatible


Clang 3.7.1 (tags/RELEASE_371/final)] on linux Type "help",
"copyright", "credits" or "license" for more information. >>>

maka Anda tidak perlu melakukan hal lain.

Jika Python 3 tidak ada, maka lihat dokumentasi Linux Anda untuk menemukan cara menggunakan
manajer paket Anda untuk mengunduh dan menginstal paket baru - yang Anda butuhkan
bernama python3 atau namanya dimulai dengan itu.

Semua pengguna non-Linux dapat mengunduh salinan di https://www.python.org/downloads/ .


Mengunduh dan menginstal Python
Karena peramban memberi tahu situs bahwa Anda telah memasuki OS yang Anda
gunakan, satu-satunya langkah yang harus Anda ambil adalah mengklik versi Python yang
Anda inginkan.

Dalam hal ini, pilih Python 3. Situs ini selalu menawarkan versi terbaru untuk Anda.

Jika Anda pengguna Windows , mulai file .exe yang diunduh dan ikuti semua langkah.

Biarkan pengaturan default yang disarankan installer untuk saat ini, dengan satu
pengecualian - lihat kotak centang bernama Tambah Python 3.x ke PATH dan periksa.

Ini akan membuat segalanya lebih mudah.

Jika Anda adalah pengguna macOS , versi Python 2 mungkin sudah diinstal sebelumnya
di komputer Anda, tetapi karena kami akan bekerja dengan Python 3, Anda masih perlu
mengunduh dan menginstal file .pkg yang relevan dari situs Python.
Mulai pekerjaan Anda dengan Python
Sekarang Anda telah menginstal Python 3, sekarang saatnya untuk memeriksa apakah itu berfungsi
dan manfaatkan terlebih dahulu.

Ini akan menjadi prosedur yang sangat sederhana, tetapi harus cukup untuk meyakinkan Anda bahwa
lingkungan Python lengkap dan fungsional.

Ada banyak cara untuk menggunakan Python, terutama jika Anda akan menjadi pengembang Python.

Untuk memulai pekerjaan Anda, Anda memerlukan alat-alat berikut:

 seorang editor yang akan mendukung Anda dalam menulis kode (harus memiliki beberapa
fitur khusus, tidak tersedia dalam alat sederhana); editor khusus ini akan memberi Anda lebih
dari sekadar perlengkapan OS standar;
 sebuah konsol di mana Anda dapat memulai kode Anda baru ditulis dan menghentikannya
secara paksa ketika keluar dari kontrol;
 alat bernama debugger , dapat meluncurkan kode Anda langkah demi langkah dan
memungkinkan Anda untuk memeriksanya pada setiap saat pelaksanaan.

Selain banyak komponen yang bermanfaat, instalasi standar Python 3 berisi aplikasi yang sangat
sederhana namun sangat berguna bernama IDLE.

IDLE adalah akronim: Pengembangan Terpadu dan Lingkungan Belajar.

enavigasi melalui menu OS Anda, temukan IDLE di suatu tempat di bawah Python 3.x dan
luncurkan. Inilah yang harus Anda lihat:
Cara menulis dan menjalankan program pertama Anda
Sekarang saatnya untuk menulis dan menjalankan program Python 3 pertama Anda. Ini akan sangat
sederhana, untuk saat ini.

Langkah pertama adalah membuat file sumber baru dan mengisinya dengan kode. Klik File di menu
IDLE dan pilih File baru .

Seperti yang Anda lihat, IDLE membuka jendela baru untuk Anda. Anda dapat menggunakannya
untuk menulis dan mengubah kode Anda.

Ini adalah jendela editor . Tujuannya hanya untuk menjadi tempat kerja di mana kode sumber Anda
diperlakukan. Jangan bingung jendela editor dengan jendela shell. Mereka melakukan fungsi yang
berbeda.
Jendela editor saat ini tidak berjudul, tetapi praktik yang baik untuk mulai bekerja dengan memberi
nama file sumber.

Klik File (di jendela baru), lalu klik Simpan sebagai ... , pilih folder untuk file baru (desktop adalah
tempat yang baik untuk upaya pemrograman pertama Anda) dan pilih nama untuk file baru.

Catatan: jangan mengatur ekstensi apa pun untuk nama file yang akan Anda gunakan. Python
membutuhkan file-nya untuk memiliki ekstensi .py , jadi Anda harus mengandalkan default jendela
dialog. Menggunakan ekstensi .py standar memungkinkan OS untuk membuka file-file ini dengan
benar.
Cara menulis dan menjalankan program pertama
Anda
Sekarang masukkan hanya satu baris ke jendela editor Anda yang baru dibuka dan
bernama.

Garisnya terlihat seperti ini:


print("Hisssssss...")
Anda dapat menggunakan clipboard untuk menyalin teks ke dalam file.

Kami tidak akan menjelaskan arti program saat ini. Anda akan menemukan diskusi
terperinci di bab selanjutnya.

Lihatlah lebih dekat tanda kutip. Ini adalah bentuk tanda kutip yang paling sederhana
(netral, lurus, bodoh, dll.) Yang biasa digunakan dalam file sumber. Jangan mencoba
menggunakan kutipan tipografi (melengkung, keriting, pintar, dll.), Yang digunakan oleh
pemroses teks tingkat lanjut, karena Python tidak menerimanya.

Jika semuanya berjalan dengan baik dan tidak ada kesalahan dalam kode, jendela konsol
akan menunjukkan kepada Anda efek yang disebabkan oleh menjalankan program.

Dalam hal ini, program mendesis .

Coba jalankan sekali lagi. Dan sekali lagi.

Sekarang tutup kedua jendela sekarang dan kembali ke desktop.


Cara merusak dan memperbaiki kode Anda
Sekarang mulai IDLE lagi.

Klik File , Buka , arahkan ke file yang Anda simpan sebelumnya dan biarkan IDLE
membacanya.

Coba jalankan lagi dengan menekan F5 ketika jendela editor aktif.

Seperti yang Anda lihat, IDLE dapat menyimpan kode Anda dan mengambilnya saat
Anda membutuhkannya lagi.

IDLE berisi satu fitur tambahan dan bermanfaat.

Pertama, hapus kurung tutup.

Lalu masukkan tanda kurung lagi.

Kode Anda akan terlihat seperti yang ada di sini:

Setiap kali Anda menempatkan tanda kurung tutup di program Anda, IDLE akan
menampilkan bagian teks terbatas dengan sepasang tanda kurung yang sesuai. Ini
membantu Anda untuk mengingat untuk menempatkan mereka berpasangan.

Hapus kurung tutup lagi. Kode menjadi salah. Ini mengandung kesalahan sintaksis
sekarang. IDLE seharusnya tidak membiarkan Anda menjalankannya.

Coba jalankan lagi programnya. IDLE akan mengingatkan Anda untuk menyimpan file
yang dimodifikasi. Ikuti petunjuk.
Cara merusak dan memperbaiki kode Anda
Perhatikan semua jendela dengan cermat.

Sebuah jendela baru muncul - ia mengatakan bahwa penerjemah telah menemui EOF
( end-of-file ) walaupun (menurut pendapatnya) kode tersebut harus mengandung
beberapa teks lagi.

Jendela editor menunjukkan dengan jelas di mana itu terjadi.

Perbaiki kodenya sekarang. Seharusnya terlihat seperti ini:


print("Hisssssss...")

Jalankan untuk melihat apakah itu "desis" lagi.

Mari kita rusak kodenya sekali lagi. Hapus satu huruf dari kata cetak . Jalankan kode
dengan menekan F5 . Seperti yang Anda lihat, Python tidak dapat mengenali kesalahan.
ara merusak dan memperbaiki kode Anda
Anda mungkin telah memperhatikan bahwa pesan kesalahan yang dihasilkan untuk
kesalahan sebelumnya sangat berbeda dari yang pertama.

Ini karena sifat kesalahan berbeda dan kesalahan ditemukan pada tahap interpretasi
yang berbeda .

Jendela editor tidak akan memberikan informasi yang berguna mengenai kesalahan,
tetapi jendela konsol mungkin.

Pesan ( merah ) menunjukkan (di baris berikutnya):

 yang traceback (yang merupakan jalan bahwa kode melintasi melalui bagian yang
berbeda dari program - Anda dapat mengabaikannya untuk saat ini, karena kosong
sedemikian kode sederhana);
 yang lokasi kesalahan (nama file yang berisi kesalahan, nomor baris dan nama
modul); catatan: angka mungkin menyesatkan, karena Python biasanya
menunjukkan tempat pertama kali memperhatikan efek dari kesalahan, belum
tentu kesalahan itu sendiri;
 yang isi dari garis yang salah ; Catatan: Jendela editor IDLE tidak menampilkan
nomor baris, tetapi ini menampilkan lokasi kursor saat ini di sudut kanan
bawah; menggunakannya untuk menemukan garis yang salah dalam kode sumber
yang panjang;
 yang nama kesalahan dan penjelasan singkat.

Eksperimen dengan membuat file baru dan menjalankan kode Anda. Cobalah untuk
output pesan yang berbeda ke layar, misalnya, roar!, meow, atau bahkan mungkin
sebuah oink!. Cobalah merusak dan memperbaiki kode Anda - lihat apa yang terjadi.
Bak pasir
Kursus ini tidak mengharuskan Anda untuk menginstal aplikasi perangkat lunak
apa pun untuk menguji kode Anda dan melakukan latihan.

Untuk menguji atau bereksperimen dengan kode Anda, Anda dapat


menggunakan lingkungan pemrograman on-line interaktif khusus.

Sandbox memungkinkan kode Python untuk dijalankan di browser Internet.

Ini adalah alat yang terintegrasi dalam kursus, yang dapat digunakan sebagai kotak pasir
Python berbasis browser yang memungkinkan Anda untuk menguji kode yang dibahas
sepanjang kursus, serta juru bahasa yang memungkinkan Anda untuk meluncurkan,
melakukan dan menguji latihan lab yang dirancang khusus untuk kursus ini.

Antarmuka Sandbox terdiri dari tiga bagian utama:

 yang Editor jendela, yang memungkinkan Anda mengetik dalam kode Anda,
 yang Konsol jendela, yang memungkinkan Anda melihat output dari program
Anda,
 alat bernama Action Buttons bar, yang memungkinkan Anda menjalankan kode
Anda, menyegarkan kembali jendela editor, mengunduh program Anda sebagai
file .py, mengunggah file .py yang akan ditampilkan di editor, melaporkan bug
(jika Anda melihat ada yang salah, beri tahu kami tentang itu!)
 dan tombol Pengaturan , yang memungkinkan Anda menyesuaikan pengaturan
tampilan dan beralih di antara lingkungan Python / C / C ++.

Sekarang salin kode berikut:

print("Hello!") print("Welcome to Python Essentials!")


print("THIS IS SANDBOX MODE.")

... kemudian klik tombol Sandbox untuk masuk ke Mode Sandbox, rekatkan kode di
jendela editor, dan klik tombol Run untuk melihat apa yang terjadi.

Untuk kembali ke kursus kami, klik Kembali ke kursus di sudut kanan atas antarmuka
Sandbox.
Antarmuka praktek
Kursus ini berisi empat jenis antarmuka.

Sejauh ini Anda telah melihat Antarmuka Studi (satu atau dua jendela dengan
teks dan gambar / animasi), dan Antarmuka Sandbox , yang dapat Anda
gunakan untuk mencoba kode Anda sendiri (klik Sandbox untuk beralih ke
Antarmuka Sandbox).

Yang Anda lihat sekarang adalah Interface Praktek , yang memungkinkan Anda
untuk mempelajari hal-hal baru dan melakukan tugas pengkodean pada saat
yang sama. Anda akan menggunakan antarmuka semacam ini untuk sebagian
besar waktu selama kursus.

Antarmuka Praktek terdiri dari area teks di sebelah kiri dan jendela Editor /
Konsol di sebelah kanan.

Satu lagi jenis antarmuka yang akan Anda lihat di masa depan adalah Quiz /
Test Interface, yang akan memungkinkan Anda memeriksa pengetahuan dan
keterampilan Anda untuk melihat seberapa baik Anda telah menguasai materi
studi.