Sizi99 : Situs Judi Slot Online Gacor Terpercaya & Slot Terbaik Hari Ini
Belajar Python Dasar
1. Belajar Python
1. Learn The Basic
1.1 Basic Syntax
Setiap bahasa pemrogaman memiliki penulisan syntax (kode) yang berbeda-beda meskipun
ada beberapa yang hampir sama. Begitu juga penulisan syntax python yang memiliki teknik
penulisan tersendiri. Python dikenal dengan bahasa yang memiliki syntax (kode) yang
sederhana dan mudah untuk dipahami.
Aturan umum penulisan syntax dasar python
1. Case sensitive, bahasa python menganggap huruf besar dan kecil itu berbeda, misal :
Nama, berbeda dengan nama.
2. baris perintah python boleh untuk tidak diakhiri dengan tanda titik koma (;) dan boleh juga
untuk menggunakan titik koma, hal ini tidak berpengaruh sama sekali.
3. boleh menggunakan tanda petik satu (‘ ‘), tanda petik dua (“ “) atau tanda petik tiga (“”” “””).
1.2 Variable and Data Types
Pengertian dari variabel dan tipe data dalam bahasa pemrograman python Variabel dalam
bahasa python itu seperti dengan variabel dalam matematika
Contoh dalam variabel matematika.
X = 5
Y = 5
Z = x + y
Maka hasilnya adalah 10, kenapa bisa 10 ? Karena penjumlahan dari X dan Y. Disini dapat
diartikan bahwa variabel adalah tempat untuk menyimpan data.
Contoh dalam bahasa python.
Ada beberapa aturan dalam penulisan variabel yang harus di perhatikan.
1. Nama variabel tidak boleh diawali oleh angka.
2. Nama variabel tidak boleh ada spasi namun bisa menggunakan underscore.
3. Nama variabel hanya bisa diawali dengan huruf dan underscore.
Contoh penamaan variabel yang boleh dan yang tidak boleh.
2. ● _namavariabel (boleh)
● 1namavariabel (tidak boleh)
● nama variabel (tidak boleh)
● nama-variabel (tidak boleh)
● nama_variabel (boleh)
● namaVariabel (boleh)
Sedangkan untuk tipe data adalah macam – macam data yang bisa di masukan kedalam
variabel.
Macam - macam tipe data :
1. Tipe data angka (interger/int)
2. Tipe data desimal (float)
3. Tipe data karakter atau kumpulan karakter (string/str). Dalam penulisan tipe data
string harus diapit dengan tanda kutip.
4. Tipe data True dan False (boolean/bool). Dalam penulisan data boolean huruf
awalnya menggunakan kapital.
Contoh coding beserta hasilnya :
Catatan : Untuk mengetahui sebuah tipe data pada variabel bisa menggunakan fungsi ‘type’.
1.3 Conditional
1.4 Type Casting, Exceptions
1.5 Functions, Builtin Function
1.6 List, Tuples, sets, Dictionaries
3. 1.6.1 List
List merupakan tipe data yang ditulis secara berurutan dimana bisa berisi lebih
dari satu tipe data, serta dapat diubah (mutable) dan memungkinkan adanya
data duplikat. Tipe data list diawali dengan tanda kurung siku buka ([) dan
ditutup dengan kurung siku tutup ( ] ).
Sementara untuk memisahkan setiap elemen di dalamnya dapat dilakukan
dengan menggunakan tanda koma ( , ). Agar lebih paham contoh penggunaan
list, kita langsung praktek yuk!
Misalkan kita ingin membuat list yang berisi tipe data string, numeric, dan juga
boolean, kita bisa langsung menuliskan di dalam tanda kurung siku dan
dipisahkan oleh tanda koma, seperti berikut:
Untuk menampilkan hasil dari list yang sudah dibuat, kita bisa menggunakan
perintah print(), hasilnya adalah sebagai berikut:
Selain itu, kita bisa juga hanya menampilkan data tertentu saja dengan
memanggil data sesuai dengan indeks nya, misalkan kita hanya ingin
memunculkan data pertama, maka kita bisa memanggil indeks 0 karena di
Python perhitungannya dimulai dari 0.
Maka hasilnya adalah:
4. 1.6.2 Tuples
Tipe data tuple juga berfungsi untuk menampung sekumpulan data. Tipe data
ini diawali dengan tanda kurung buka ( ( ), memisahkan setiap elemen di
dalamnya dengan tanda koma ( , ) dan ditutup dengan tanda kurung tutup ( )).
Perbedaan tuple yang cukup mencolok antara tuple dan list selain di kurung
yang digunakan, juga karena tipe data tuple bersifat immutable yang berarti
elemen pada tipe data tuple tidak dapat diubah setelah proses
pendeklarasiannya. Pada tuple, kita juga bisa menuliskan data yang duplikat.
Agar lebih memahami tuple, simak contoh penggunaannya!
Misalkan isi tuple kita adalah bahasa pemrograman yang umum digunakan.
Ketika ingin melihat hasilnya, maka kita bisa menggunakan perintah print().
Maka hasilnya adalah:
5. Misalkan kita ingin mengganti isi data kedua dengan Skala, apakah kawan-
kawan bisa menebak apa yang terjadi?
Yup, betul sekali. Program tidak akan bisa berjalan atau akan adanya error
karena tuple tidak memungkinkan kita untuk melakukan penggantian data.
1.6.3 Sets
Tipe data set hampir sama dengan tipe data yang sebelumnya, dimana akan
digunakan untuk menyimpan sekumpulan data. Tipe data ini akan diawali
dengan tanda kurung buka kurawal ( { ), dan ditutup dengan tanda kurung tutup
( } ).
Untuk memisahkan setiap elemen di dalamnya masih sama dengan
menggunakan tanda koma ( , ). Namun berbeda dengan list dan tuple, tipe data
objek tidak mengizinkan adanya elemen dengan nilai yang sama dan tidak
memperdulikan urutan dari elemen.
Contoh penggunaan set adalah sebagai berikut:
6. Kita bisa melihat bahwa adanya data duplikat tidak akan menyebabkan error,
hanya saja pada output nya hanya akan ditampilkan satu data saja. Selain itu,
hasilnya juga tidak berurutan seperti pada list dan tuple.
1.6.4 Dictionary
Tipe data dictionary akan digunakan untuk memetakan sebuah nilai pada data
ke dalam nilai lainnya. Tipe data dictionary dapat dideklarasikan dengan diawali
oleh tanda kurung buka kurawal ( { ), memisahkan setiap elemen di dalamnya
dengan tanda koma ( , ) dan ditutup dengan tanda kurung tutup (}).
Setiap elemen pada tipe data dictionary dideklarasikan dengan format:
"kunci" : "nilai"
Hal inilah yang membedakan tipe data dictionary dengan tipe data set. Kunci ini
dapat dijadikan sebagai indeks, sehingga nilainya harus unique. Untuk lebih
memperjelas tipe data dictionary, simak contoh penggunaannya yuk!
Di potongan code ini kita mendefinisikan data nama adalah Theo Lau,
sementara data pekerjaan adalah Data Analyst, Begitu nama dan pekerjaan
dipanggil, maka harus sesuai dengan dictionary yang sudah dibuat sebelumnya.
Berikut adalah hasilnya.
7. Ditulis oleh Karnoto - 03119120 Prodi Teknik Sipil B
Sumber https://www.dqlab.id/belajar-python-list-tuples-set-dan-dictionary
2. Data Structures
2.1 Arrays and Linked Lists
2.2 Heaps, Stacks and Queues
2.3 Hash Tables
3. Algorithms
3.1 Binary Search Trees
3.2 Recursion
3.3 Sorting Algorithms
4. Advance Topics
4.1 OOPS (Methods, Inheritance, Classes)
a. Inheritance
Dalam Object Oriented Programming atau yang biasa kita kenal sebagai OOP,
inheritance adalah salah satu konsep yang penting. Dengan menggunakan
inheritance kita dapat mengurangi penulisan fungsi, properti, dan variabel yang
berulang. Inheritance mendefinisikan sebuah class(induk) ke class baru(anak) dan
memberikan kesempatan untuk class(anak) untuk menggunakan object dan method
dari class yang diwariskan tersebut. Inheritance juga dapat didefinisikan sebagai
suatu proses di mana suatu objek memperoleh sifat dan perilaku dari objek lainnya,
ketika ingin membuat class dengan fungsi yang sama seperti class lain maka kita
tidak perlu menulis ulang fungsi tersebut, namun kita tinggal melakukan inheritance
dan kita bisa langsung mengaksesnya.
4.2 Regular Expression
4.3 Decorators
4.4 Iterators
4.5 Type Casting, Exceptions
4.6 Function, builtin fuction
4.7 Lists, Tuples, Sets, Dictionaries
4.8 Modules (bultin, custom)
5. Version Control Systems (VCS)
Version Control System (VCS) adalah sebuah infrastruktur yang dapat mendukung
pengembangan software secara kolaboratif. Setiap anggota yang berada di dalam sebuah
tim pengembangan software dapat menulis kode programnya masing - masing kemudian
digabungkan ke server yang sudah memiliki VCS yang digunakan.
8. Selain dapat mempercepat pengembangan software, VCS juga mempunyai
kemampuan untuk kembali ke versi software sebelumnya jika terjadi suatu bencana terhadap
versi software yang sedang dikembangkan saat ini. Kemampuan ini disebut reversibility.
Selain itu, dengan menggunakan VCS setiap perubahan pada software seperti penambahan
file atau pengubahan isi file dapat dipantau bagian mana yang diubah dan siapa yang
mengubah. Sehingga pengerjaan software akan lebih transparan dan terukur.
Berikut ini daftar VCS:
a. Bazaar
Bazaar merupakan bagian dari GNU Project, Bazaar adalah free
software yang disponsori oleh Canonical. Salah satu layanan yang
menggunakan Bazaar adalah Launchpad, sebuah tempat dimana aplikasi
Ubuntu dikembangkan dan dipantau oleh komunitas. Bazaar dapat digunakan
di Windows, Ubuntu, Debian, Red Hat, SUSE, OS X, FreeBSD, Solaris,
Gentoo, dan lainnya.
Bazaar memiliki versi GUI yang dapat memudahkan pengguna, Anda
dapat bekerja secara offline dengan menggunakan Bazaar, mempunyai sistem
any workflow, gatekeeper workflow, dan centralized workflow, mempunyai fitur
rename tracking dan smart merging, dan kecepatan dan efisiensi
penyimpanan yang sangat tinggi
b. CVS
CVS adalah free VCS yang digunakan oleh mayoritas proyek free
software. Saat ini CVS perlahan mulai tergantikan oleh sistem VCS lain yang
lebih baru. CVS mendukung pengembangan konkuren oleh banyak
pengembang baik secara lokal atau diatas jaringan. CVS sangat kurang
mendukung untuk atomic commits dan pemindahan / penamaan ulang file.
Dengan menggunakan VS Anda dapat merekam riwayat dari file dan
dokumen. CVS mendukung unreserved checkouts yaitu lebih dari satu
pengembang dapat mengerjakan file yang sama secara bersamaan. CVS
Server dapat berjalan di berbagai varian Unix dan CVS Client dapat berjalan di
Windows dan varian Unix.
c. Subversion (SVN)
SVN adalah free VCS yang didesain mirip dengan CVS dan lebih
sederhana. SVN mendukung atomic commits dari sebuah file dan melakukan
versioning terhadap direktori, symbolic links, dan meta-data. Selain itu
mendukung versioning terhadap penamaan, penyalinan, dan penghapusan
suatu file atau direktori.
SVN merupakan bagian dari Apache Software Foundation. SVN
bersifat open source yang didirikan pada tahun 2000 oleh CollabNet Inc. SVN
dinikmati luas oleh kalangan komunitas ataupun enterprise. SVN tersedia
untuk Linux, OS X, FreeBSD, dan Windows.
d. Mercurial
Mercurial atau yang biasa disingkat menjadi Hg. Mercurial adalah VCS
yang free. Mercurial memiliki konsep distributed source control management
tool. Mercurial efisien untuk menangani proyek yang memiliki bermacam
ukuran dan jenis. Mercurial mendukung berbagai workflow. Dan setiap Anda
9. melakukan kloning sebuah proyek dengan Mercurial, seluruh riwayat proyek
akan disalin.
e. RCS
Revision Control System atau RCS mampu mengelola revisi dari
banyak file. RCS mengotomasi penyimpanan, pengambilan, pencatatan,
pemeriksaan, dan penggabungan dari sebuah revisi. RCS berguna untuk teks
yang sering direvisi seperti source code, program, dokumentasi, grafik, jurnal,
dan surat.
RCS pertama kali dikembangkan oleh Walter F. Tichy di Purdue
University pada awal 1980. RCS didesain dengan lebih unggul dibandingkan
pendahulunya yaitu Source Code Control System (SCCS). Peningkatan RCS
dibandingkan SCCS diantaranya adalah antar muka yang lebih mudah dan
pengambilan yang lebih cepat dari penyimpanan. RCS menggunakan GNU
Diffutils untuk melihat perbedaan diantara dua versi yang berbeda.
f. Perforce
Yang satu ini bersifat proprietary dan berbayar jika Anda ingin
menggunakannya untuk lebih dari 20 pengembang. Jika menggunakannya
untuk 20 pengembang Anda akan mendapatkan Perforce secara free.
Perforce memiliki keunggulan dengan sebuah sistem yang dinamakan
Continous Delivery. Dengan menggunakan disiplin tersebut software dapat
dirilis menjadi production kapanpun. Perforce ini dipercaya oleh vendor -
vendor besar seperti Netflix, Samsung, Salesforce, dan New York Stock
Exchange.
g. ClearCase
VCS yang ini juga merupakan VCS proprietary dan berbayar. Harga
lisensi untuk penggunanya dalah $ 5.500. Mantap kan harganya?. IBM
Rational ClearCase ini mendukung untuk version control, workspace
management, parallel development support, dan auditing.
Tentunya ClearCase ini dapat diintegrasikan dengan produk IBM
lainnya, misal WebSphere. Selain itu ClearCase memiliki effective IP security
yang menjamin source code yang ditulis akan aman dari kontrol yang tidak
diizinkan.
h. GNU Arch
GNU Arch adalah salah satu decentralized version control system yang
paling awal. Hanya saja saat ini Arch mulai kurang aktif dikembangkan. GNU
Arch murah dan mudah untuk dikelola, dan tidak perlu memberikan permisi
untuk setiap peserta proyek. Mempunyai fitur branching dan merging yang
siap memudahkan tim yang mengembangkan free software.
i. GNU CSSC
CSSC merupakan proyek dari GNU Project yang menggantikan SCCS.
SCCS adalah VCS yang bersifat proprietary yang tersedia untuk versi
komersial dari Unix. GNU CSSC ini dikembangkan sebagai versi free untuk
Unix. Dengan menggunakan CSSC, sebuah proyek dapat dikontrol
menggunakan sistem lain seperti Git atau SVN.
j. Git
Git merupakan VCS yang dikembangkan oleh Linux Torvald ketika
mengembangkan Linux (kernel). Git merupakan decentralized version control
system. Git mempunyai keunggulan seperti repository syncing, bekerja secara
10. offline, cheap local branching, staging area yang nyaman, mampu menangani
proyek besar seperti Kernel Linux secara efektif dalam hal kecepatan dan
ukuran data, mendukung non-linear development, dan multiple workflow.
Selain itu Git digunakan di berbagai layanan VCS seperti Github, Bitbucket,
Assembla, dan Gitorious
5.1 Basic git Usage
a. Membuat/mengatur/mengambil repository:
Repository adalah asset yang paling kuat dari semua project
versioning. Untuk mengubah direktori menjadi repository GIT, jalankan
perintah git init <directory>. Folder bernama .gt akan muncul di direktori bila
perintah tersebut telah dijalankan. Kemudian, jika Anda telah memiliki direktori
sebelumnya dan ingin mengambilnya
b. Alur Kerja
Setelah repository selesai dibuat, kita akan membahas tentang struktur
pada GIT. Setiap repository lokal memiliki 3 cabang, yaitu: direktori kerja yang
mengandung file; index berperan sebagai staging area dan HEAD yang
menjadi penunjuk commit terakhir yang dilakukan oleh user. Jadi, seperti inilah
cara kerjanya: user menambahkan file atau melakukan perubahan dari
direktori kerja ke index (staging area) dan setelah di-review, file atau
perubahan di-commit ke HEAD.
c. Perintah ADD dan COMMIT
Perubahan yang diajukan atau file tambahan akan ditambahkan ke
index dengan menggunakan perintah add. Untuk menambahkan file, perintah
sederhananya adalah:
git add <file_name>
Jika Anda cukup yakin untuk melakukan perubahan langsung di HEAD, Anda
langsung gunakan perintah commit. Contohnya:
git commit -m "Tambahkan catatan untuk commit Anda"
Catatan: Bila perintah commit telah dijalankan (dari direktori kerja), file akan di-commit
ke HEAD, namun belum terkirim ke remote repository.
d. Mengirim perubahan
Setelah Anda melakukan commit perubahan (dan sudah yakin siap
dikirim ke repository asli), Anda bisa menggunakan perintah push.Setelah git
push origin master dijalankan dari direktori kerja, perubahan yang ada di
HEAD akan dikirim ke remote repository. Seperti yang telah disebutkan
sebelumnya, master bisa diganti menjadi nama branch dimana perubahan
ingin Anda commit.Jika repository yang ada saat ini belum di-clone dan Anda
ingin membuat sambungan antara repository dan remote server, maka
jalankanlah perintah ini:
git remote add origin <server>
Catatan: Ganti <server> dengan alamat remote server.
Setelah di-clone, perubahan yang telah dibuat akan dikirim ke server.
e. Branches
11. Fitur keren lainnya dari GIT adalah kemampuannya untuk
memungkinkan developer dan project manager untuk membuat branch
independen yang berbeda dalam 1 project. Tujuan utama branch adalah untuk
membuat fitur namun tetap mengisolasinya dari yang lain. Branche default di
project adalah master branch. Karena banyak branch yang dibutuhkan bisa
dibuat dan digabungkan dengan master branch.Branch baru bisa dibuat
dengan menggunakan perintah berikut ini:
git checkout -b feature_n *
Catatan: feature_n adalah nama branch-nya.
Jika Anda ingin kembali ke master branch utama, jalankan perintah ini:
git checkout master
Branch bisa dihapus dengan menggunakan perintah ini:
git checkout -b feature_n
Untuk membuat branch bisa digunakan oleh pengguna lain, Anda harus
mengirimkannya ke remote repository melalui perintah ini:
git push origin feature_n
f. Update & Merging
Jika Anda ingin meng-update direktori kerja lokal Anda saat ini ke yang
paling baru dari remote repository, jalankan perintah git pull.Untuk
menggabungkan branch lain ke yang sudah aktif, gunakan:
git merge feature_n
Jika Anda melakukan pull atau merge, GIT akan selalu mencoba menangani
conflict sendiri, namun kadang-kadang juga gagal. Jika terjadi kegagalan
karena conflict, maka pengguna harus melakukan resolve conflict secara
manual. Setelah Anda meng-edit file (untuk menghapus conflict), tandai
sebagai merged dengan perintah:
git add <nama_file>
Jika setelah merging Anda ingin melihat perubahan, jalan perintah:
git diff <nama_sumber_branch> <nama_target_branch>
g. Tagging
Sebelum merilis update/perubahan apapun, sangat disarankan untuk
membuat tag. Untuk melakukannya di GIT, gunakan perintah:
git tag 1.1.0 1c2d2d56fa
1c2d2d56fa adalah perintah yang terkait dengan 10 karakter pertama dari
commit-id, yang dijadikan sebagai tag. Commit ID bisa ditemukan di log.
12. h. Log
Catatan history dari repository bisa dipelajari dari log. Perintah git log
yang menampilkannya. Untuk menampilkan commit yang dibuat oleh seorang
pengguna, Anda bisa menggunakan perintah:
git log --author =Bambang
Log yang terkompresi (1 commit per baris) bisa dilihat dengan:
git log --pretty=oneline
Untuk hanya melihat file yang berubah:
git log --name-status
Mengganti perubahan di lokal: Jika Anda tidak sengaja membuat kesalahan
dan ingin kembali ke perubahan normal yang sebelumnya, gunakan perintah:
git checkout -- <filename>
Dengan melakukan hal tersebut, akan mengganti perubahan di direktori kerja
dengan yang terakhir ada di HEAD. Perubahan apapun yang ditambahkan ke
index tidak akan terkena dampak.
Sebaliknya, jika semua perubahan/commit di-drop dan master branch lokal
dibutuhkan untuk menunjukkan history terakhir dari server, jalankan perintah:
git fetch origin
git reset --hard origin/master
6. Advance Topics
6.1 Github
Github merupakan software hosting untuk open source dengan menggunakan tool Git,
Github juga di posisikan sebagai Webhosting. Git sendiri merupakan Tool System Control
yang kegunaan nya sebagai mengontrol berbagai code bahasa pemrograman. Git dipilih
karena dari sekian banyak VCS merupakan yang paling populer (Davis, 2015). Selain itu,
mudah dan digunakan secara gratis serta open source (Leonard, 2017). Adapun untuk
melakukan hosting client yang bisa digunakan adalah Github, dengan memiliki repositori
sourrce code terbesar di dunia (Borges, 2016). (Fumin Qi et al, 2017) “Platform hosting
proyek sumber terbuka menjadi semakin populer. Salah satu yang terbesar, GitHub,
menampung lebih dari 53 juta proyek pada akhir 2016. Proyek-proyek ini beragam dalam
hal jenis, domain, bahasa, dan lain-lain. Lebih penting lagi, sebagai sistem kontrol versi
online, GitHub mencatat berbagai data selama pengembangan proyek, seperti komit
individu, kontributor, masalah dan perbaikannya. solusi, diskusi, dan lain-lain”.
13. 6.2 Gitlab
Gitlab adalah layanan yang menyediakan akses remote ke Git
repositories. Selain meng-hosting kode Anda, layanan ini menyediakan fitur
tambahan yang dirancang untuk membantu mengelola siklus pengembangan
software. GitLab adalah layanan mirip github yang dapat digunakan organisasi
untuk menyediakan manajemen internal git repositories. Ini adalah sistem
manajemen Git-repository yang di-host-sendiri yang menjaga code private
pengguna dan dapat dengan mudah menyebarkan perubahan kode. Ada
beberapa fitur yang dimiliki oleh Gitlab, yaitu :
● GitLab hosts proyek software (private) Anda secara gratis.
● GitLab Adalah platform untuk mengelola Git repositories.
● GitLab menawarkan private repositories dan free public, pelacakan masalah,
dan wiki.
● GitLab adalah user friendly web interface layer di atas Git, yang
meningkatkan kecepatan bekerja dengan Git.
● GitLab menyediakan sistem Continuous Integration (CI) untuk mengelola
proyek dan menyediakan user interface bersama dengan fitur-fitur lain dari
GitLab.
Tentunya ada beberapa kelebihan dan kekurangan yang terdapat pada
GitLab, Antara lain
Kelebihan :
● GitLab menyediakan versi GitLab Community Edition bagi pengguna untuk
menemukan di mana server kode mereka present.
● GitLab menyediakan public repositories dan private tanpa batas secara
gratis.
● The Snippetsection dapat membagikan sejumlah kecil kode dari suatu
proyek, alih-alih membagikan seluruh proyek.
Kekurangan :
● Sambil mendorong dan menarik repositori, itu tidak secepat GitHub.
● GitLab interface akan membutuhkan waktu saat berpindah dari satu
halaman ke halaman lainnya.
14. 6.3 BitBucket
Bitbucket adalah sebuah layanan hosting yang berbasis web untuk kode
sumber dan pembangunan proyek yang menggunakan Mercurial (sejak
peluncuran) ataupun sistem kendali versi Git (sejak Oktober 2011) yang dimiliki
oleh Atlassian. Bitbucket menawarkan paket akun komersial dan gratis. Akun
gratis tersebut menawarkan sebuah layanan repositori dengan jumlah yang
tidak terbatas (yang mana dapat mempunyai 5 pengguna per tim untuk akun
gratis) sejak bulan September 2010. Bitbucket terintegrasi dengan perangkat
lunak Atlassian lain seperti Jira, HipChat, Confluence dan Bamboo.
Hal ini mirip dengan GitHub, yang utamanya menggunakan Git. Bitbucket
secara tradisional disesuaikan untuk membantu pengembang profesional
dengan kode pribadi mereka, terutama sejak diakuisisi oleh Atlassian pada
tahun 2010. Pada bulan September 2016, Bitbucket mengumumkan telah
mencapai 5 juta pengembang dan 900.000 tim pada platform tersebut.[4]
Bitbucket mempunyai 3 model deployment: Cloud, Bitbucket Server dan Data
Center. Dalam sebuah postingan blog tahun 2008, Bruce Eckel membandingkan
Bitbucket akan sangat baik untuk Launchpad,yang mana menggunakan Bazaar.
Bitbucket digunakan dalam kontrol akses, permintaan tarik, kontrol alur
kerja, integrasi Jira, API lainnya. Pembatasan kode sumber disediakan oleh
Bitbucket yang memiliki kontrol akses. Penegakan proyek atau tim dibuat
menggunakan kontrol alur kerja dan permintaan penarikan dilakukan dalam
komentar sebaris untuk berkolaborasi pada tinjauan kode. Penelusuran seluruh
pembangunan dilakukan dengan integrasi Jira.
Seluruh API dibuat untuk mengembangkan fitur untuk mengonfigurasi
alur kerja jika tidak tersedia secara instan. Bitbucket Cloud diterapkan di server
Atlassian dan diaktifkan menggunakan URL. Ini memiliki alat integrasi persisten
built-in yang ekstensif. Pipeline memungkinkan pengguna untuk
mengembangkan, menguji, dan mengeksekusi secara instan bersama dengan
Bitbucket. Server Bitbucket dipasang langsung di lokasi, yang ada di lingkungan
pengguna. Tapi itu tidak memiliki opsi untuk pengujian dan penerapan built-in
sehingga sangat terhubung ke Bamboo yang merupakan integrasi berkelanjutan
yang kuat dan pengiriman persisten yang membuat prosesnya otomatis.
Pusat Bitbucket mirip dengan contoh tunggal server pengguna ke
Bitbucket yang digunakan pada server yang sangat besar dalam lingkungan
15. klaster yang menambahkan lebih banyak manfaat ke server. Kluster beberapa
server yang dijalankan di server Bitbucket yang mengelola beban berat daripada
server unit dengan kinerja yang dapat diskalakan. Itu tertarik pada
ketersediaannya yang lebih tinggi. Karena jika cluster melambat, semua node
lainnya dapat berbagi beban kerja dengan server yang tersedia dan
menyelesaikan semua permintaan tanpa kehilangan data. Pencerminan pintar
meningkatkan kecepatan klon Git untuk tim yang tersebar yang beroperasi di
repositori besar.
7. Package Managers
7.1 Pip
PIP merupakan sebuah perintah yang digunakan untuk melakukan
proses penambahan atau pengurangan module python yang dilakukan secara
online. Perintah PIP akan melakukan instalasi module python dengan mencari
module tersebut yang terdapat pada repositori yang beralamatkan di
https://pypi.org/ . Perintah PIP dapat di eksekusi setelah menginstal python :
a. Untuk menjalankan perintah PIP pada sistem operasi windows maka
user perlu membuka command prompt dan mengarahkannya ke path
instalasi python lalu ketikan perintah pip.
b. Untuk menjalankan perintah PIP pada sistem operasi linux tergantung
versi python berapa yang digunakan user. Untuk python versi 2 maka
“apt install python-pip” sedangkan python versi 3 “apt install python3-pip”.
Contoh penggunaan perintah PIP :
a. Untuk pengguna OS MS WIndows , setalah anda menginstall Python
selanjutnya masuk pada command prompt , dan ketikkan " pip " , contoh
: pip install flask , artinya melalukan installasi module flask , dan ingat
komputer yang anda gunakan harus dalam keadaan terkoneksi dengan
internet.
b. Untuk pengguna OS Linux ada dua , bila menggunakan Python 2 , pada
terminal ketikkan " pip " sedangkan untuk python 3 ketikkan ' pip3 ".
7.2 PyPI
Python Package Index, disingkat PyPI dan juga dikenal sebagai Cheese Shop
(referensi Monty Python Flying Circus sketsa Cheese Shop), yang merupakan
repositori perangkat lunak pihak ketiga resmi untuk Python. PyPI dapat disamakan
dengan CPAN, repositori untuk Perl.Beberapa manajer paket, termasuk pip,
menggunakan PyPI sebagai sumber standar untuk paket dan dependensinya. Lebih
dari 113.000 paket Python yang dapat diakses melalui PyPI. PyPI terutama host paket
Python dalam bentuk arsip yang disebut sdists (sumber distro) atau "roda"
precompiled.
16. PyPI sebagai indeks memungkinkan pengguna untuk mencari paket-paket dengan
kata kunci atau filter terhadap metadata, seperti lisensi perangkat lunak bebas atau
kompatibilitas dengan POSIX. Satu entri di PyPI dapat disimpan, selain dari paket dan
metadata, rilis sebelumnya dari paket, roda dikompilasi (misalnya yang mengandung
Dll pada Windows), serta bentuk yang berbagai bentuk sistem operasi dan versi Python
yang berbeda .
8. Learn Framework
Pada bab ini kita akan mempelajari mengenai Framework beserta macam-
macam jenis dari Framework. Sesuai dengan namanya, Framework merupakan
kerangka kerja untuk mengembangkan aplikasi berbasis website maupun dekstop.
Kerangka kerja sangat membantu developer dalam menuliskan sesuatu dengan lebih
terstuktur dan tersusun rapi. Kerangka kerja diciptakan dengan tujuan untuk
mempermudah kinerja dari seorang programmer.
8.1 Synchronous
8.2 Asynchronous
Asynchronous Programming, merupakan sebuah pendekatan pemrograman
yang tidak terikat pada input output (I/O) protocol. Ini menandakan bahwa
pemrograman Asynchronous tidak melakukan pekerjaannya menggunakan cara lama
yaitu dengan eksekusi baris program satu persatu secara hirarki. Asynchronous
Programming melakukan pekerjaannya tanpa harus terikat dengan proses lain atau
dapat kita sebut secara Independent.
Dari gambar diatas terlihat bahwa pendekatan model pemrograman
Asynchronous memiliki waktu eksekusi yang lebih cepat 25 detik dibandingkan dengan
pendekatan metode pemrograman Synchronous. Pada Asynchronous tiap modul tidak
17. perlu menunggu task lainnya selesai untuk berjalan. Dengan begitu, waktu eksekusi
juga dapat menjadi lebih singkat dan cepat.
8.3 Django
8.4 Gevent
Gevent adalah penggunaan pemrograman sekuensial sederhana dalam python untuk
mencapai skalabilitas yang disediakan oleh IO asynchronous dan multi-threading ringan
(sebagai lawan dari gaya pemrograman panggilan balik menggunakan Twisted's Deferred).
Itu dibangun di atas libevent / libev (untuk I/O asinkron) dan greenlet (multi-threading
kooperatif ringan).Tugas libevent / libev adalah menangani loop acara. Seperti yang akan
kita pelajari di bagian SocketIO nanti, SocketIOServer kami adalah loop peristiwa yang
dapat memancarkan hasil tertentu, pada terjadinya peristiwa tertentu. Ini pada dasarnya
adalah bagaimana contoh SocketIOServer kami akan tahu kapan harus mengirim pesan
ke klien, karenanya streaming data real-time dari server ke klien, pada terjadinya peristiwa
tertentu. Seperti yang telah kita pahami dari konsep umum yang berkaitan dengan proses
dan utas (pthreads) dan konkurensi dan paralelisme di bagian sebelumnya, kami ingin
dapat menangani konkurensi dengan python (untuk manfaat I/O) dan ini adalah di mana
greenlets cocok dengan gambar.
8.5 Flask
Flask berfungsi sebagai kerangka kerja aplikasi dan tampilan dari suatu web.
Dengan menggunakan Flask dan bahasa Python, pengembang dapat membuat sebuah
web yang terstruktur dan dapat mengatur behaviour suatu web dengan lebih mudah.
Flask termasuk pada jenis microframework karena tidak memerlukan suatu alat atau
pustaka tertentu dalam penggunaannya.Flask adalah sebuah web framework yang ditulis
dengan bahasa Python dan tergolong sebagai jenis microframework.
8.6 Sanic
8.7 Pyranid
8.8 Alohttp
8.9 Torando