Advertisement
  1. Code
  2. Reviews

Pengkodean Dengan Koding

by
Read Time:15 minsLanguages:

Indonesian (Bahasa Indonesia) translation by Faozi Amat (you can also view the original English article)

Cloud IDEs telah ada selama beberapa waktu sekarang, dan mereka cukup bagus untuk hal-hal seperti pemrograman pasangan, atau kasus di mana Anda ingin kode secara konsisten di mana pun Anda berada. Koding baru saja keluar dari beta pribadi, dan mereka ingin mengambil gagasan ini beberapa langkah lebih jauh, dengan "ekosistem awan" mereka.

Pada artikel ini kita akan melihat apa itu Koding, dan juga beberapa manfaat yang bisa Anda dapatkan dari menggunakannya.

Koding agak sulit dijelaskan, karena sebenarnya tidak ada produk yang mirip dengan itu di pasaran. Jadi untuk mengilustrasikan semua bagian yang bergerak dengan lebih baik, mari kita bagi layanan dan mulai dengan lingkungan pengembangan.


Lingkungan Pembangunan

Ketika Anda mendaftar ke Koding, di luar kotak Anda mendapatkan sub-domain Anda sendiri (.kd.io) VPS Anda sendiri, dan beberapa aplikasi web bawaan untuk mengelola sumber daya baru Anda.

Melalui admin, Anda memiliki kemampuan untuk membuat sub-domain lain di atas URL Anda saat ini dan memutar VPS baru semua melalui UI yang mudah digunakan.

The Dev DashboardThe Dev DashboardThe Dev Dashboard

VM

Sekarang ini bukan VM contoh mikro rata-rata yang menawarkan banyak layanan, ini VM penuh dengan akses ke delapan prosesor dan RAM GB penuh sehingga Anda dapat dengan mudah menjalankan hampir semua aplikasi, dan jika Anda ingin bermain-main dengan hal-hal seperti pengaturan cluster atau jaringan, Anda dapat dengan mudah memutar beberapa instance hanya dengan $ 5 sebulan.

Jadi dalam hal kekuatan pemrosesan, contoh-contoh ini berpotensi dapat sekuat komputer Anda sendiri, dan mereka pasti lebih baik daripada memuat mesin virtual lokal.

Apa yang orang-orang di Koding coba lakukan adalah memberdayakan pengembang untuk belajar melalui eksperimen dan hanya mencoba hal-hal yang mereka tidak ingin coba secara lokal, atau hanya tidak memiliki sumber daya untuk melakukannya.

Contoh-contoh ini menginisialisasi dalam hitungan detik, dan jika Anda membuat kesalahan dan memecahkan beberapa file sistem, Anda dapat dengan mudah menginisialisasi ulang server dan itu akan mengembalikan semuanya di bawah folder rumah. Pada dasarnya, Anda akan memiliki instance baru tetapi semua file yang Anda buat di folder rumah dipertahankan.

Hal lain yang mereka berikan, yang sebenarnya merupakan masalah besar dalam beberapa situasi, adalah akses root ke semua server Anda. Koding adalah layanan yang sangat transparan, Anda mendapatkan VM dan Anda benar-benar dapat melakukan apa pun yang Anda inginkan dengannya. Apa pun yang dapat Anda lakukan dengan VPS standar, Anda dapat melakukannya dengan VM mereka.

OS & Bahasa

Adapun instans sendiri, mereka datang dengan Ubuntu diinstal, dan cukup banyak setiap bahasa yang dapat saya pikirkan, termasuk:

  • PHP
  • GO
  • Node.js
  • Ruby
  • Perl
  • Haskell

Di antara yang lain, jadi Anda cukup bagus untuk keluar dari kotak.

Aplikasi

Dengan Koding, Anda semacam memiliki dua lapisan aplikasi. Anda memiliki VM, yang seperti saya sebutkan, Anda dapat menjalankan apa pun yang Anda inginkan, tetapi selain itu, Anda memiliki 'Aplikasi Koding' yang merupakan aplikasi web yang berjalan di Koding sendiri dan melalui mereka Anda dapat mengelola semua sumber daya Koding Anda.

Beberapa aplikasi default yang tersedia untuk Anda adalah hal-hal seperti panel admin untuk basis data atau kerangka kerja dan editor untuk kode dan gambar. Editor kode default yang sudah diinstal sebelumnya adalah editor kode Ace untuk pengembangan reguler, atau Firepad jika Anda ingin bekerja secara kolaboratif melalui aplikasi kerja tim.

AppsAppsApps

Selain semua aplikasi yang sangat keren ini, Anda memiliki kemampuan untuk membuatnya sendiri. Mereka ditulis menggunakan JavaScript biasa (CoffeScript) dan kerangka kerja KD (dari Koding). Sekarang karena mereka baru saja keluar dari versi beta, sebenarnya belum ada situs dokumentasi awal hingga selesai, tetapi ada dua aplikasi Koding yang tersedia (kodepad dan pembuat aplikasi) yang dibangun untuk memberi Anda semacam struktur, dengan contoh. Selain itu, saya akan menyarankan mencari Github untuk ".kdapp" dan hanya melihat bagaimana aplikasi lain dibangun untuk mendapatkan ide tentang hal-hal seperti apa yang mungkin dan bagaimana mencapainya.

Secara keseluruhan, itu semacam memiliki perasaan "sistem operasi" cloud di mana Anda memiliki VM sebagai sumber daya tetapi aplikasi Koding memungkinkan Anda untuk mengelola sumber daya Anda dan mengaturnya seperti yang Anda suka. Ini berarti jika perusahaan Anda memiliki semacam pengaturan boilerplate, Anda dapat membuat kdapp yang akan mengkonfigurasi VM baru dengan file dan perangkat lunak yang Anda butuhkan, dan setiap kali Anda memutar contoh baru, aplikasi Anda dapat mengonfigurasinya seperti yang Anda inginkan. .

Selain itu, kdapps bisa menjadi alat mandiri yang hanya memodifikasi file seperti editor Ace, atau editor gambar yang tersedia. Ini berarti jika Anda memasukkan waktu, Anda pada dasarnya dapat membangun lingkungan dev Anda sendiri, dengan semua alat kustom yang membuat Anda lebih efisien dalam membangun aplikasi.

Semua yang saya sebutkan sampai sekarang benar-benar hanya mencakup setengah dari apa itu Koding, dan itu adalah bagian lingkungan pengembangan. Koding juga memiliki sisi sosial / organisasi, yang memuji fitur pengembangan dan meningkatkan nilai platform.


Komunitas Pengembang

Secara default, ketika Anda mendaftar ke Koding, Anda ditambahkan ke "grup" Koding; semua fitur, seperti pemberitahuan aktivitas, topik, cuplikan kode, dll. semuanya berasal dari grup default ini. Ini agak keren untuk mendapatkan semua pembaruan dari pengguna di seluruh dunia, dan Anda dapat memfilter berdasarkan topik dengan membuka halaman topik dan memilih sesuatu yang Anda minati. Tetapi di mana fitur-fitur ini benar-benar menunjukkan potensi adalah ketika Anda membuat grup Anda sendiri.

Koding Topics PageKoding Topics PageKoding Topics Page

Jika Anda menggunakan Koding sebagai grup, maka Anda dapat memanfaatkan semua fitur ini untuk dengan mudah melihat apa yang telah dilakukan kolega Anda, dapatkan pembaruan dan cuplikan dari mereka, dan filter semua posting dengan proyek menggunakan topik sebagai tag.

Dalam sebuah grup, Anda dapat membuat VM bersama yang dapat diakses oleh banyak pengguna, atau kreditkan pengguna dalam uang grup sehingga mereka dapat membuat VM sendiri dan bekerja secara pribadi.

Ini adalah salah satu situasi di mana mereka mungkin baru saja merilis lingkungan pengembangan cloud, jaringan sosial, atau manajemen proyek, dan itu akan cocok dengan pasar; tetapi memiliki mereka semua bekerja bersama dan gratis, adalah sesuatu yang benar-benar dipikirkan.

Saya telah mengatakan banyak hal positif tentang lingkungan cloud, tetapi ada beberapa kelemahan ketika membandingkannya dengan pengembangan secara lokal yang setidaknya layak disebut.


Cloud vs Pengembangan Lokal

Kekurangannya

Salah satu hal utama adalah Anda tidak benar-benar mendapatkan apa yang saya sebut IDE. Sebagai contoh, jika Anda melihat pada editor Ace, itu adalah editor yang hebat, tetapi ketika Anda menumpuknya terhadap IDE lengkap penuh seperti PhpStorm, mereka tidak bisa dibandingkan. Ace hanyalah editor kode sementara PhpStorm berisi semua alat yang Anda perlukan mulai dari pengujian hingga refactoring, semuanya dalam satu aplikasi.

Kelemahan lainnya hanyalah latensi, sekarang dibandingkan dengan IDE web lainnya. Saya belum memiliki terlalu banyak masalah dengan ini pada Koding, tapi tetap saja, itu tidak dibandingkan dengan pengaturan lokal. Saat Anda melakukan tindakan seperti membuka dokumen, terkadang butuh beberapa saat untuk membukanya.

Jadi untuk meringkas, mengembangkan online mungkin tidak memiliki semua alat yang Anda gunakan untuk bekerja dengannya, dan mungkin tidak secepat melakukannya secara lokal. Tetapi ketika Anda mengembangkan secara lokal, Anda kehilangan VM yang kuat dan semua fitur manajemen proyek / sosial.

Untungnya Anda tidak harus membuat pilihan. Mengedit kode online selalu memungkinkan sehingga Anda tidak perlu berkorban di bagian depan itu, tetapi jika Anda lebih memilih pengkodean secara lokal dengan alat Anda sendiri, Anda memiliki akses SSH penuh ke mesin Anda. Jadi apakah Anda ingin menggunakan FTP, SCP, GIT, atau alat lain apa pun untuk mentransfer perubahan Anda ke server, Anda diberikan opsi-opsi itu seperti VPS standar.


Menyiapkan SSH & Rsync

Sekarang, saya telah membahas cara menyiapkan repo telanjang GIT untuk digunakan ke server Anda, jadi berlebihan untuk membahas proses itu lagi, tetapi mari kita lihat pengaturan akun Koding Anda dengan kunci SSH dan menggunakan rsync untuk mentransfer proyek Anda ke dan dari Koding.

Untuk yang belum terbiasa, rsync adalah utilitas untuk mentransfer proyek besar ke dan dari komputer Anda. Di mana ia berbeda dari sesuatu seperti SCP, dan alasannya bagus dalam bekerja dengan proyek-proyek besar, adalah bahwa ia akan memindai file baik secara lokal maupun jarak jauh dan hanya mentransfer file yang telah berubah. Jika Anda mengerjakan proyek apa pun, Anda akan memiliki beberapa file sistem kerangka kerja, beberapa kode boilerplate, gambar, dll. Dan Anda tidak benar-benar ingin mengirimkannya pada setiap permintaan, jadi rsync adalah pilihan yang sangat bagus untuk hal-hal seperti ini.

Ini tidak sebagus GIT, Anda tidak mendapatkan segala bentuk kontrol versi, tetapi jika Anda menggunakan Koding sebagai lingkungan pengujian dan Anda hanya ingin melempar file ke atas, atau menariknya ke bawah, rsync adalah alat untuk pekerjaan itu.

Langkah pertama cukup sederhana dan itu untuk mendapatkan pengaturan SSH; Anda hanya perlu mengambil kunci publik Anda (pada Mac Anda dapat menjalankan cat .ssh / id_rsa.pub  | copy dari jendela terminal untuk menyalin kunci) dan kemudian menambahkannya ke halaman akun Anda di Koding. Hal selanjutnya yang perlu Anda lakukan adalah mengkonfigurasi komputer Anda untuk terhubung. Koding mengharuskan Anda untuk menggunakan proxy mereka sebagai terowongan ke server Anda, jadi pada sistem berbasis Unix, Anda bisa membuat file bernama 'config' dengan isian berikut (Anda perlu mengganti ini dengan nama pengguna Koding Anda):

Jika Anda menggunakan sistem Windows, lihat panduan mereka untuk melihat cara mengatur proxy menggunakan Putty.

Dengan itu, Anda dapat menjalankan:

Jadi misalnya, menggunakan nama pengguna saya, pada VM default pertama (yang merupakan angka 0) Anda akan menjalankan yang berikut:

Jika semuanya berjalan dengan baik, Anda harus terhubung dan melihat pesan terminal Koding. Jika tidak ingin terhubung, pastikan Anda menambahkan kunci publik dan pastikan VM menyala di Koding (VM Anda mati ketika Anda belum menggunakannya selama sekitar 20 menit).

Dengan pengaturan itu, sekarang kita dapat membuat proyek lokal. Kami tidak benar-benar membutuhkan sesuatu yang mewah di sini, jadi untuk contoh ini saya hanya akan membuat file HTML hello world sederhana di dalam direktori kosong:

Simpan file ini di dalam folder proyek Anda dan kemudian jalankan:

Ini akan menyalin seluruh isi folder lokal saat ini ke direktori jarak jauh menghapus semua file jarak jauh yang tidak ada di folder saat ini. Jika Anda pernah membuat perubahan dari jarak jauh, Anda dapat dengan mudah menariknya ke bawah dengan membalik jalur seperti:

Sekarang perintah ini agak panjang, dan jika Anda berencana untuk mengembangkan dengan cara ini, Anda akan ingin membuat beberapa cara pintas. Salah satu cara sederhana adalah dengan hanya membuat alias bash, tetapi Anda mungkin memiliki beberapa server, dan untuk masing-masing Anda membutuhkan alias untuk setiap arah, jadi mari kita buat skrip bash sederhana yang dapat menerima nomor VM bersama dengan nama pengguna, dan arah yang diinginkan Anda ingin file pergi, dan itu akan melakukan transfer.


Bash Primer

Saya tidak akan membahas semua sintaks Bash, hanya bagian-bagian yang kita butuhkan untuk skrip ini.

Pertama kita perlu variabel, di dalam skrip bash Anda mendefinisikan variabel dengan mengetikkan name=value. Misalnya, jika kami ingin mengatur variabel yang berisi pesan, kami akan mengetik:

Seharusnya tidak ada spasi di sekitar tanda sama dengan agar berfungsi. Setelah ditetapkan, Anda kemudian dapat mengambil nilai variabel dengan mengetik namanya dengan tanda dolar sebelum itu. Jadi untuk mencetak nilai variabel di atas, kita ketik:

Selain variabel yang Anda tetapkan dan atur, Anda dapat menggunakan beberapa variabel global yang ditetapkan oleh lingkungan Anda. Ini mungkin berbeda sesuai dengan pengaturan Anda, tetapi yang akan kami gunakan adalah $USER untuk pengguna yang saat ini masuk dan $PWD untuk folder saat ini. Anda dapat melihat variabel apa yang ada di lingkungan Anda dengan menambahkan printenv ke kode Anda. Ini akan mencetak semua variabel lingkungan saat ini.

Hal berikutnya yang diperlukan oleh skrip kita adalah untuk dapat menerima argumen baris perintah. Ini sebenarnya sangat mudah dilakukan, karena mereka menjadi variabel bernomor. Jadi $ 1 mewakili parameter pertama, $ 2 adalah yang kedua dan seterusnya.

Hal terakhir yang perlu kita gunakan dalam skrip adalah pernyataan if. Ini mirip dengan bagaimana Anda akan menulis pernyataan if dalam kebanyakan bahasa pemrograman, dengan beberapa kebiasaan yang terlihat:

Di skrip bash Anda memiliki ekspresi antara sepasang tanda kurung, dan Anda harus meninggalkan spasi antara tanda kurung dan ekspresi. Anda juga harus mencatat bahwa baris then adalah persyaratan. Perbedaan terakhir, yang sedikit berbeda, dan ditemukan di struktur bash lainnya adalah kata kunci fi. Pada dasarnya Anda cukup mengetikkan jika mundur, itu sama untuk pernyataan switch misalnya, Anda memulai blok switch dengan case dan kemudian Anda mengakhirinya dengan esac (case terbalik).

Jadi dengan informasi ini, mari buat skrip sederhana untuk membantu kami mengunggah dan mengunduh kode kami ke Koding:


Membangun Script Kami

Untuk memulainya, kita perlu seluruh shebang untuk memberitahu komputer untuk menjalankannya sebagai skrip shell dan kemudian saya akan membuat fungsi pembantu sederhana yang akan memberi tahu pengguna cara menggunakan perintah ini:

Jika Anda baru keluar dari kode, 0 berarti keluar dengan sukses dan merupakan default yang dikembalikan ketika skrip selesai, sedangkan yang lainnya adalah kode keluar untuk saat kesalahan telah terjadi. Jadi jika fungsi ini dipanggil, itu berarti bahwa skrip tidak digunakan dengan benar dan kami akan keluar dengan kode kesalahan.

Selanjutnya, kita perlu memastikan argumen dilewatkan dengan benar dan dalam proses, kumpulkan dan simpan dalam beberapa variabel pembantu:

Dalam kode ini, kami melakukan empat pemeriksaan berbeda:

  1. kami memeriksa apakah ada parameter pertama
  2. kami memeriksa untuk memastikan parameter pertama adalah 'push' atau 'pull'
  3. kami memastikan ada parameter kedua
  4. kami memeriksa apakah parameter ketiga telah ditetapkan

Dalam tiga pernyataan if pertama, jika ada masalah, kami menggemakan pesan dan kemudian memanggil metode pembantu kami dari atas. Namun untuk yang terakhir, jika tidak ada nama pengguna yang diberikan, kami hanya akan menggunakan nama pengguna yang saat ini masuk. Jadi, jika nama pengguna komputer Anda sama dengan nama pengguna Koding Anda, Anda dapat mematikan parameter terakhir.

Hal terakhir yang perlu kita lakukan, adalah menjalankan perintah rsync berdasarkan perintah yang diminta (tekan atau tarik):

Anda dapat melihat kami hanya menempatkan variabel yang kami kumpulkan (bersama dengan folder saat ini $PWD) langsung ke perintah. Karena ini adalah skrip shell, Anda bisa langsung menempatkan perintah shell, seperti yang saya lakukan di atas

Sekarang simpan file dan beri nama koding dan kemudian buat itu dapat dieksekusi (Anda dapat melakukan ini dengan menjalankan chmod + x koding) dan yang terakhir namun tidak kalah pentingnya, pindahkan file ini ke folder bin Anda:

Jika Anda melakukan semuanya dengan benar, Anda harus dapat menjalankan koding dan melihat pesan penggunaan kami muncul. Jadi sekarang Anda dapat membuat perubahan cepat ke contoh proyek di atas dan jalankan:

Dengan asumsi Anda tidak memerlukan properti nama pengguna, dan folder Anda saat ini akan ditransfer sebagai direktori Web di server Anda, bernama vm-0. Hal yang sama berlaku jika Anda membuat perubahan online, Anda dapat melakukan cd ke folder proyek lokal dan menjalankan:

Dan Anda akan menerima semua pembaruan.


Kesimpulan

Koding adalah alat yang sangat kuat untuk membuat prototipe dan belajar melalui eksperimen. Ini memiliki kemampuan manajemen proyek dan sosial yang sangat keren dan mampu membuat kode dengan orang lain, secara langsung, dapat membuat perbedaan besar ketika Anda mencoba men-debug beberapa kode. Belum lagi ini semua gratis, berarti benar-benar tidak ada alasan Anda tidak ingin menggunakan ini.

Saya sangat menyukai gagasan memiliki aplikasi kd yang berjalan di luar VM dan saya pikir akan keren untuk melihat ke mana orang akan mengambil itu dan alat apa yang akan dibangun orang.

Anda dapat mendaftar ke Koding dengan mengunjungi koding.com.

Terima kasih telah membaca, saya harap Anda menikmatinya, jika Anda memiliki pertanyaan jangan ragu untuk meninggalkan saya komentar di bawah, di twitter atau melalui saluran Nettuts + IRC (#nettuts on freenode).

Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.