Tugas 1 Web Dinamis Lanjut COMPOSER DAN GITHUB Imam ‘Abdul Lathif | 12141371 | TI-Malam
Membuat Tutorial Singkat penggunaan Composer pada pengembangan aplikasi
Gambar 1. Logo Composer 1. Apa itu Composer? Composer adalah dependency manager khusus PHP yang memiliki fungsionalitas seperti Gem (Ruby) atau Maven (Java). Kita bisa menginstall suatu library melalui composer dan composer akan secara otomatis menginstall library lain yang dibutuhkan, tanpa perlu mendownload satu persatu. Mirip dengan apt get install di sistem operasi linux. Composer merupakan utilitas yang dapat sangat membantu kita untuk mengelola proyek terhadap sebuah library atau helper / plugin. Sumber : http://www.dumetschool.com/blog/Apa-Itu-Composer 2. Mengapa harus menggunakan Composer? Dalam beberapa tahun belakangan, terjadi perubahan yang sangat signifikan dalam dunia pemrograman php. Yakni munculnya dependencies manager yang bernama composer. Composer adalah sebuah project open source yang dimotori oleh Nils Adermann dan Jordi Boggiano. Project composer ini dihost di github (https://github.com/composer/composer) tercatat sejak tanggal 3 April 2011 dan masih aktif sampai sekarang. Kehadiran composer membuat ngoding php jadi lebih terstruktur dan lebih rapi. Banyak programmer terbiasa dengan bahasa pemrograman yang terstruktur, ketika pindah ke php, menemukan banyak hal yang rancu. Terutama dalam memanajemen struktur hirarki project. Sehingga membutuhkan usaha lebih untuk menerapkan konsep OOP yang baik dalam php. Hal ini bisa terjadi karena –seperti yang kita tahu– , bahwa dalam bahasa pemrograman php, pada setiap kali request, maka hanya ada satu file php
PAGE 1
saja yang dieksekusi. Hanya satu file saja. Dan jika kita ingin mengakses file lain yang terpisah seperti misalkan memanggil function di file lain atau membuat instan dari kelas yang filenya terpisah, maka kita perlu menginclude atau require file yang bersangkutan sehingga seolah-olah file yang terpisah tadi jadi satu dengan file yang request user sedang mengarah kepadanya. Dengan composer dan autoload-nya serta namespace, kita bisa bebas mengakses file-file php tanpa harus ribet meng-include atau merequire semua file atau class yang kita butuhkan, autoload dari composer sudah melakukan semua itu out of the box. Sehingga oop dalam php benarbenar makes sense. Selain autoload, composer –sebagai dependencies atau package manager– juga menyelesaikan permasalahan dependencies dalam project kita. Semisal, kita membutuhkan suatu package atau library A. Jika kita menggunakan cara konvensional, maka kita perlu mendownload package A dan meletakkannya dalam project kita, lalu untuk mengakses library tersebut, kita perlu melakukan include atau require terhadap file-file dari library A. Sekilas memang terlihat simpel, tapi, bagaimana jika library A ternyata membutuhkan library lain –katakanlah library B–, lantas library B juga membutuhkan library C? Kita bisa pusing sendiri. Belum lagi soal versi? Library A versi sekian membutuhkan library B versi sekian, dan library B versi sekian membutuhkan library C versi sekian. Kita benar-benar akan mendapatkan masalah yang rumit jika tidak jeli dalam mengantur dependencies dalam project kita. Dan kabar baiknya, composer hadir untuk menyederhanakan masalah tersebut! Kita cukup memasang library A dengan composer, maka semua library yang dibutuhkan oleh library A akan otomatis dipasang juga oleh composer. Dan kita juga tidak perlu repot-repot merequire atau meng-include file library satu per satu. Untuk repository sendiri, composer menggunakan packagist. Di mana terdapat ribuan package dan libraries php di packagist yang kita bisa langsung gunakan hanya dengan composer. Dan terhitung sejak bulan September 2011 hingga hari ini, terdapat lebih dari 83K packages dan lebih dari 414K versions packages yang dihost di packagist (data bisa dilihat di https://packagist.org/statistics). Ini artinya, dengan composer, kita memiliki akses yang luas dan mudah untuk mendapatkan banyak package. Tentunya ini bisa meningkatkan tingkat keproduktifitasan kita serta meningkatkan efektifitas kerja. Sumber : composer
https://www.codepolitan.com/apa-composer-dan-kenapa-harus-
PAGE 2
3. Bagaimana cara instalasi Composer pada Windows? Pada kesempatan kali ini kita akan mencoba belajar melakukan instalasi Composer pada Operation System Windows. Sebelumnya pastikan di perangkat kita sudah tersedia persyaratan untuk melakukan instalasi. Terinstal PHP dengan versi minimal 5.3.2. Aplikasi composer-setup.exe (jika belum ada bisa mendownload di https://getcomposer.org/). Terhubung dengan internet. a. Double click pada aplikasi composer yang sudah tersedia/ terdownload. Setelah itu akan muncul tampilan seperti gambar di bawah ini, pilih next >
Gambar 2. Proses mengawali instalasi composer b. Setelah itu akan muncul jendela Setting Check, kita disuruh memilih command line PHP yang akan kita gunakan. Caranya kita cari dimana letak PHP.exe dalam web server kita (disini saya menggunakan XAMPP).
PAGE 3
Gambar 3. Proses setting check
Gambar 4. Proses memilih php.exe sesuai web server yang ada c. Setelah itu akan muncul jendela yang menampilkan bahwa proses instalasi siap dilakukan, pilih tombol install untuk memulainya. PAGE 4
Gambar 5. Menampilkan gambar persiapan untuk instalasi d. Tunggu proses instalasi, kemudian akan tampil jendela information, kita pilih next >
PAGE 5
Gambar 6. Jendela informasi sebelum proses instalasi selesai e. Setelah itu akan tampil jendela informasi bahwa proses instalasi telah selesai, klik tombol finish
PAGE 6
Gambar 7. Proses instalasi selesai dan sukses
Sumber : - http://jagowebdev.com/cara-install-menjalankan-composer-di-windows/ - https://getcomposer.org/doc/00-intro.md#manual-installation 4. Bagaimana cara menambah library dompdf pada aplikasi web? Untuk menambah library dompdf kita harus memastikan bahwa composer sudah terinstal, dibuktikan dengan tampilan tulisan “composer” saat kita menjalankan perintah composer atau composer –v. seperti gambar di bawah ini :
PAGE 7
Gambar 8. Mengecek keberhasilan dalam menginstal composer menggunakan cmd Berikut adalah langkah menambah library dompdf pada aplikasi web: a. Buka aplikasi editor notepad++ untuk membuat file dengan extension .json. ketikkan coding perintah seperti gambar di bawah:
Gambar 10. Coding perintah dalam file composer.json Setelah itu simpan file tersebut dengan nama composer.json pada direktori yang anda inginkan. (pada contoh ini saya menyimpan di E:\xampp\htdocs\dinamis\ b. Pastikan perangkat kita terhubung dengan internet c. Buka cmd / command prompt kemudian kita ketikkan perintah untuk menginstall/ mengupdate/ menambah library dompdf ke direktori yang tadi kita isi dengan file composer.json. adapun perintahnya adalah sebagai berikut : “E:\xampp\htdocs\dinamis>composer update”. Tunggu sampai prosesnya selesai.
PAGE 8
Gambar 11. Perintah composer update untuk menginstal/ mengupdate/ menambah library dompdf d. Untuk mengecek berhasil atau tidaknya proses install/ update yang tadi kita lakukan adalah dengan membuka “E:\\xampp\htdocs\dinamis\” jika terdapat folder dengan nama “vendor” dan file “composer.lock”
Gambar 12. Menampilkan isi dari folder dinamis yang sudah berhasil dilakukan instalasi dompdf
Membuat Tutorial Singkat tentang penggunaan get versioning pada pengembangan webbase 1. Apa itu git versioning (github)? Git Versioning (github) adalah layanan penginangan web bersama untuk proyek pengembangan perangkat lunak yang menggunakan sistem pengontrol versi Git. GitHub menawarkan paket gratis dan komersial untuk proyek sumber terbuka dan diluncurkan sejak tahun 2008.
PAGE 9
Sumber : https://www.google.co.id/webhp?sourceid=chromeinstant&ion=1&espv=2&ie=UTF-8#q=apa%20itu%20github 2. Mengapa dalam pengembangan software pada tim kolaborasi perlu keahlian menggunakan git versioning? Get versioning (github) digunakan oleh tim kolaborasi Agar mendapatkan kualitas proyek terbaik, dan juga karena setiap tim bisa saling terkontrol, Agar dapat mengembangkan perangkat lunak secara team work (kolaborasi) serta Agar pengerjaan proyek lebih efektif, cepat, efisien dan produktif. Sumber : http://www.gatewan.com/2015/11/mengenal-composer-dangithub.html 3. Bagaimana cara membuat repository? Untuk membuat repositoryatau repo di github sangat mudah. Berikut ini adalah langkah-langkahnya : a. Sign in ke https://github.com/ , dan masukkan username atau email dan password
PAGE 10
Gambar 13. Form sign in github b. Masuk ke dashboard lalu klik new repository
Gambar 14. Dashboard untuk membuat new repository
PAGE 11
c. Setelah itu masukkan detail repository, seperti repository name, description dan centang “Initialize this repository with a README”. Lalu klik “Create Repository”
Gambar 15. Mengisikan detail repository d. Tinggal kita clone ke dalam folder local dalam perangkat kita (computer/laptop) dengan menggunakan web URL yang sudah tersedia seperti gambar dibawah :
PAGE 12
Gambar 16. Meng-copy URL untuk meng-clone ke folder lokal
Gambar 17. Melakukan clone terhadap URL yang sudah di copy menggunakan Git CMD Sumber : http://primaadi.net/cara-membuat-repository-github/ 4. Apa kegunaan branch? menurut pemahaman saya git branch itu digunakan untuk melakukan percabangan pada repository utama git kita. Karena saat pertama kali kita membuat repository pada git, nama branch-nya itu adalah master. Nah branch master itulah branch utama dari repository kita. Kita bisa saja mendefinisikan/membedakan setiap branch pada repository git kita. Misalnya kita ambil contoh dari repository kernel Linux. branch master digunakan untuk sumber kode dari kernel yang sudah siap di publikasikan (release), sedangkan dilain pihak, kernel Linux mempunyai branch development yang dimana branch ini digunakan untuk kepeluan pengembangan kernel Linux sampai ke tahap stabil (siap untuk dipublikasi) yaitu pada branch master. Nah karena dari definisi tersebut, saya simpulkan dengan adanya git branch ini kita bisa mengatur repository kita dengan cukup baik, karena antar sumber kode dalam versi stabil tidak akan terganggu oleh versi development karena dikerjakan pada branch yang berbeda.
PAGE 13
Sumber : http://imron02.blogspot.co.id/2014/01/git-branch-dan-mergemenggunakan-git.html 5. Bagaimana cara mengunduh update data terbaru dari repository? Untuk mendownload / mengunduh update data terbaru dari repository bisa memilih dua cara yaitu dengan mengunduh file yang dipilih atau mengunduh seluruh ZIP nya.
Gambar 18. Mendownload file yang dipilih dengan cara klik kanan – save link as
Gambar 19. Mendownload semua repository dalam bentuk ZIP 6. Bagaimana cara memberikan komentar dan mengirim pekerjaan kita ke repository?
PAGE 14
Langkah-langkah clone pada link https://github.com/wahyusoft/webdinamislanjut.git
github
:
1. Langkah yang pertama dilakukan adalah https://github.com/wahyusoft/webdinamislanjut.git
membuka
link
2. Selanjutnya adalah memilih tombol fork, karena apabila langsung menggunakan URL master repository maka akan mengalami error saat melakukan push project.
Gambar 20. Hasil dari link diatas
Gambar 21. Memilih fork 3. Setelah itu kita Tinggal kita clone ke dalam folder local dalam perangkat kita (computer/laptop) dengan mendownload ZIP kemudian kita ekstrak di perangkat kita seperti gambar dibawah :
Gambar 22. Hasil dari download file dari link di atas
PAGE 15
Gambar 23. Hasil file yang sudah di ekstrak di dalam perangkat
PAGE 16