Python (bahasa pemrograman)
Python adalah bahasa pemrograman interpretatif multiguna[9] dengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode.[10] Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas,[11] dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif. Python juga didukung oleh komunitas yang besar.Python mendukung multi paradigma pemrograman, utamanya; namun tidak dibatasi; pada pemrograman berorientasi objek, pemrograman imperatif, dan pemrograman fungsional. Salah satu fitur yang tersedia pada python adalah sebagai bahasa pemrograman dinamis yang dilengkapi dengan manajemen memori otomatis. Seperti halnya pada bahasa pemrograman dinamis lainnya, python umumnya digunakan sebagai bahasa skrip meski pada praktiknya penggunaan bahasa ini lebih luas mencakup konteks pemanfaatan yang umumnya tidak dilakukan dengan menggunakan bahasa skrip. Python dapat digunakan untuk berbagai keperluan pengembangan perangkat lunak dan dapat berjalan di berbagai platform sistem operasi.Saat ini kode python dapat dijalankan di berbagai platform sistem operasi, beberapa di antaranya adalah:
- Symbian (untuk produk-produk Nokia)
Python didistribusikan dengan beberapa
lisensi yang berbeda dari beberapa versi. Lihat sejarahnya di Python
Copyright. Namun pada prinsipnya Python dapat diperoleh dan
dipergunakan secara bebas, bahkan untuk kepentingan komersial.
Lisensi Python tidak bertentangan baik menurut definisi Open
Source maupun General
Public License (GPL)
Python
dikembangkan oleh Guido van Rossum pada
tahun 1990 di Stichting Mathematisch Centrum
(CWI), Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang dikeluarkan CWI
adalah 1.2.
Tahun
1995, Guido pindah ke CNRI di
Virginia Amerika sambil terus melanjutkan pengembangan Python. Versi terakhir
yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti Python
pindah ke BeOpen.com yang
merupakan sebuah perusahaan komersial dan membentuk BeOpen PythonLabs. Python
2.0 dikeluarkan oleh BeOpen. Setelah mengeluarkan Python 2.0, Guido dan
beberapa anggota tim PythonLabs pindah ke DigitalCreations.
Saat ini
pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang dikoordinir
Guido dan Python Software Foundation. Python Software Foundation adalah sebuah
organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual
Python sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh
perusahaan komersial. Saat ini distribusi Python sudah mencapai versi 2.7.14
dan versi 3.6.3
Nama
Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan Guido
pada acara televisi Monty Python's
Flying Circus. Oleh karena itu seringkali ungkapan-ungkapan khas
dari acara tersebut seringkali muncul dalam korespondensi antar pengguna
Python.
Versi 1
BeOpen
Kompatibilitas
Versi 1
Python mencapai versi 1.0 pada
Januari 1994. Fitur utama baru yang termasuk dalam rilis ini adalah alat
pemrograman fungsional
lambda
, map
, filter
dan reduce
. Van Rossum
menyatakan bahwa "Python mengakuisisi lambda, mengurangi (), filter () dan
peta (), milik seorang hacker Lisp yang merindukan mereka dan
menyerahkan tambalan yang berfungsi". [12]
Versi terakhir yang dirilis
ketika Van Rossum berada di CWI adalah Python 1.2. Pada 1995, Van
Rossum melanjutkan karyanya tentang Python di Corporation for National
Research Initiatives (CNRI) di Reston , Virginia , tempat ia merilis beberapa
versi.
Pada versi 1.4, Python telah
memperoleh beberapa fitur baru. Yang paling
menonjol di antaranya adalah argumen kata kunci yang diilhami Modula-3
(yang juga mirip dengan argumen kata kunci Common Lisp ) dan dukungan bawaan untuk bilangan kompleks . Juga termasuk
bentuk dasar data yang disembunyikan dengan nama mangling , meskipun ini mudah
dilewati. [13]
Selama masa tinggal Van Rossum
di CNRI, ia meluncurkan inisiatif Pemrograman
Komputer untuk Semua Orang (CP4E), yang berniat untuk membuat
pemrograman lebih mudah diakses oleh lebih banyak orang, dengan
"literasi" dasar dalam bahasa pemrograman, mirip dengan keterampilan
membaca dan matematika bahasa Inggris dasar yang dibutuhkan oleh kebanyakan
majikan. Python melayani
peran sentral dalam hal ini: karena fokusnya pada sintaksis bersih, itu sudah
cocok, dan tujuan CP4E memiliki kesamaan dengan pendahulunya, ABC. Proyek ini
didanai oleh DARPA . [14] Pada 2007 , proyek CP4E tidak aktif, dan sementara
Python berusaha agar mudah dipelajari dan tidak terlalu misterius dalam sintaks
dan semantiknya, menjangkau non-pemrogram bukanlah masalah aktif. [15]
BeOpen
Pada tahun 2000, tim
pengembangan inti Python pindah ke BeOpen.com untuk
membentuk tim BeOpen PythonLabs. CNRI meminta
agar versi 1.6 dirilis, meringkas perkembangan Python sampai pada titik di mana
tim pengembangan meninggalkan CNRI. Akibatnya,
jadwal rilis untuk 1.6 dan 2.0 memiliki jumlah tumpang tindih yang signifikan. [7] Python 2.0 adalah satu-satunya rilis dari BeOpen.com. Setelah Python
2.0 dirilis oleh BeOpen.com, Guido van Rossum dan pengembang PythonLabs lainnya
bergabung dengan Digital Creations .
Rilis Python 1.6 termasuk
lisensi CNRI baru yang jauh lebih lama dari lisensi CWI yang telah digunakan
untuk rilis sebelumnya. Lisensi baru
termasuk klausul yang menyatakan bahwa lisensi diatur oleh hukum Negara Bagian Virginia . Free Software Foundation berpendapat
bahwa klausa pilihan hukum tidak sesuai dengan Lisensi Publik Umum GNU . BeOpen, CNRI dan
FSF menegosiasikan perubahan pada lisensi perangkat lunak bebas Python
yang akan membuatnya kompatibel dengan GPL. Python 1.6.1
pada dasarnya sama dengan Python 1.6, dengan beberapa perbaikan bug minor, dan
dengan lisensi baru yang kompatibel dengan GPL. [16]
Versi 2
Python 2.0, dirilis Oktober
2000 [7] , memperkenalkan daftar pemahaman , fitur yang dipinjam
dari bahasa pemrograman fungsional SETL dan Haskell . Sintaksis Python
untuk konstruksi ini sangat mirip dengan Haskell, terlepas dari preferensi
Haskell untuk karakter tanda baca dan preferensi Python untuk kata kunci
alfabet. Python 2.0 juga memperkenalkan sistem pengumpulan sampah yang
mampu mengumpulkan siklus referensi. [7]
Python 2.1 dekat dengan Python
1.6.1, serta Python 2.0. Lisensi ini
dinamai Lisensi Python Software
Foundation . Semua kode, dokumentasi, dan spesifikasi yang ditambahkan,
sejak peluncuran alpha Python 2.1, dimiliki oleh Python Software Foundation (PSF),
sebuah organisasi nirlaba yang dibentuk pada tahun 2001, meniru Apache Software Foundation . [16] Rilis ini mencakup perubahan spesifikasi bahasa untuk
mendukung cakupan bersarang, seperti bahasa dengan cakupan statis lain. [17] (Fitur ini dimatikan secara default, dan tidak diperlukan,
hingga Python 2.2.)
Inovasi utama dalam Python 2.2
adalah penyatuan tipe Python (tipe yang ditulis dalam C) dan kelas (tipe yang
ditulis dengan Python) menjadi satu hierarki. Penyatuan
tunggal ini membuat model objek Python murni dan berorientasi objek secara
konsisten. [18] Juga ditambahkan generator yang terinspirasi oleh Icon . [19]
Python 2.5 dirilis pada
September 2006 [20] dan memperkenalkan pernyataan
with
, yang melampirkan blok
kode dalam manajer konteks (misalnya, memperoleh kunci sebelum blok kode dijalankan dan
melepaskan kunci setelahnya, atau membuka file dan kemudian menutupnya),
memungkinkan perilaku seperti Pengambilalihan Sumber Daya (Inisiasi Sumber Daya )
dan menggantikan idiom coba / akhirnya yang umum. [21]
Python 2.6 dirilis bertepatan
dengan Python 3.0, dan termasuk beberapa fitur dari rilis itu, serta mode
"peringatan" yang menyoroti penggunaan fitur yang dihapus dalam
Python 3.0. [22] [9] Demikian pula, Python 2.7 bertepatan dengan
dan termasuk fitur dari Python 3.1, [23] yang dirilis pada 26 Juni 2009. Paralel
2.x dan 3.x rilis kemudian berhenti, dan Python 2.7 adalah rilis terakhir dalam
seri 2.x. [24] Pada November 2014, diumumkan bahwa Python 2.7 akan didukung
hingga 2020, tetapi pengguna didorong untuk pindah ke Python 3 sesegera mungkin. [25]
Versi 3
Python 3.0 (juga disebut
"Python 3000" atau "Py3K") dirilis pada 3 Desember 2008. [8] Itu
dirancang untuk memperbaiki kekurangan desain mendasar dalam bahasa — perubahan
yang diperlukan tidak dapat diimplementasikan sambil mempertahankan kompatibilitas
penuh dengan seri 2.x, yang mengharuskan nomor versi utama baru. Prinsip panduan
Python 3 adalah: "mengurangi duplikasi fitur dengan menghapus cara lama
dalam melakukan sesuatu".
Python 3.0 dikembangkan dengan
filosofi yang sama seperti pada versi sebelumnya. Namun, karena
Python telah mengumpulkan cara-cara baru dan berlebihan untuk memprogram tugas
yang sama, Python 3.0 memiliki penekanan pada penghapusan duplikat konstruksi
dan modul, sesuai dengan "Seharusnya ada satu - dan lebih disukai hanya satu
- cara yang jelas untuk melakukannya".
Meskipun demikian, Python 3.0
tetap merupakan bahasa multi-paradigma . Coders masih
bisa mengikuti paradigma pemrograman berorientasi
objek , terstruktur ,
dan fungsional ,
tetapi dalam pilihan yang luas seperti itu, rinciannya dimaksudkan untuk lebih
jelas dalam Python 3.0 daripada di Python 2.x.
Kompatibilitas
Python
3.0 memecah kompatibilitas
ke belakang , dan banyak kode Python 2 tidak berjalan tanpa
dimodifikasi di Python 3. Pengetikan
dinamis Python dikombinasikan dengan rencana untuk mengubah
semantik dari metode kamus tertentu, misalnya, membuat terjemahan
mekanis sempurna dari Python 2.x ke Python 3.0 sangat sulit. Alat yang
disebut "2to3" melakukan bagian terjemahan yang dapat dilakukan
secara otomatis. Pada saat ini, 2to3 tampaknya cukup berhasil, meskipun
ulasan awal mencatat bahwa ada aspek terjemahan yang tidak akan dapat ditangani
oleh alat semacam itu. [26] Sebelum peluncuran Python
3, proyek-proyek yang membutuhkan kompatibilitas dengan seri 2.x dan 3.x
direkomendasikan untuk memiliki satu sumber (untuk seri 2.x), dan menghasilkan
rilis untuk Python 3. platform x menggunakan 2to3. Suntingan ke
kode Python 3.x tidak disarankan selama kode tersebut diperlukan untuk
dijalankan di Python 2.x. [9] Ini tidak lagi
direkomendasikan; pada 2012 pendekatan yang disukai adalah membuat basis
kode tunggal yang dapat berjalan di bawah Python 2 dan 3 menggunakan modul
kompatibilitas. [27]
Rilis Python
Semua
versi python yang dirilis bersifat open source. Dalam sejarahnya, hampir semua
rilis python menggunakan lisensi GFL-compatible. Berikut adalah versi mayor dan
minor python berikut tanggal rilisnya.[1]
·
Python 1.0 – Januari 1994
1.
Python 1.2 – 10 April 1995
2.
Python 1.3 – 12 Oktober 1995
3.
Python 1.4 – 25 Oktober 1996
4.
Python 1.5 – 31 Desember 1997
5.
Python 1.6 – 5 September 2000
·
Python 2.0 – 16 Oktober 2000
1.
Python 2.1 – 17 April 2001
2.
Python 2.2 – 21 Desember 2001
3.
Python 2.3 – 29 Juli 2003
4.
Python 2.4 – 30 Nopember 2004
5.
Python 2.5 – 19 September 2006
6.
Python 2.6 – 1 Oktober 2008
7.
Python 2.7 – 3 Juli 2010
·
Python 3.0 – 3 Desember 2008
1.
Python 3.1 – 27 Juni 2009
2.
Python 3.2 – 20 Februari 2011
3.
Python 3.3 – 29 September 2012
4.
Python 3.4 – 16 Maret 2014
5.
Python 3.5 – 13 September 2015
6.
Python 3.6 – 23 Desember 2016
7.
Python 3.7 – 27 Juni 2018
8.
Python 3.8 – 14 Oktober 2019
Tidak ada komentar:
Posting Komentar