Cara Kode Ruby on Rails Aplikasi Web
Ruby on Rails adalah framework aplikasi web.
Rails adalah frameworknya, Ruby adalah bahasanya.
Dirancang oleh David Heinemeier Hansson pada tahun 2005, ini menjadi terkenal di dunia startup internet karena diadopsi oleh beberapa "pemula" terkemuka di masa kita, termasuk Stripe, Uber dan Groupon.
Jika Anda ingin belajar memprogram di Ruby on Rails, tutorial ini akan memberi Anda gambaran tentang apa yang harus dilakukan. Saya tidak akan membahas secara spesifik karena saya hanya ingin memberi gambaran tentang struktur aplikasi. Jika mengikuti apa yang saya usulkan, Anda harus lebih memahami bagaimana aplikasi ini bekerja.
Aplikasi Web
Semua aplikasi perangkat lunak bekerja dengan cara yang sama -
Data dimasukkan
Data diolah
Data dikeluarkan
Cara data dimasukkan dan diproses tergantung pada platform yang dijalankan aplikasi Anda. Bagaimana cara kerjanya tergantung pada aplikasi Anda.
Perbedaan dengan aplikasi web adalah logika mereka berjalan di server, dengan data IO dilewatkan melalui Internet (khususnya protokol HTTP).
Komplikasi aplikasi web adalah Anda memerlukan kemampuan untuk menerima data masuk, dan mengembalikan tanggapan. Ini ditangani oleh program web server (NGinx atau Apache). Aku akan menjelaskan ini sebentar lagi.
Perangkat Lunak Stack
Bila Anda membuat perangkat lunak, Anda harus mempertimbangkan "tumpukan" yang digunakannya.
The "stack" adalah semua perangkat lunak yang dibutuhkan untuk menjalankan aplikasi Anda. Di dunia game desktop, misalnya, "tumpukan" mungkin termasuk jenis DirectX atau driver grafis tertentu.
Penahan utama untuk calon pengembang aplikasi web adalah memahami bagaimana tumpukan perangkat lunak "web" bekerja. Web bekerja sama dengan aplikasi asli, kecuali satu perbedaan - tanpa kewarganegaraan.
"Internet" beroperasi di bawah protokol HTTP. Secara alami, ini dikenal sebagai protokol "tanpa kewarganegaraan" - setiap permintaan yang Anda kirim dianggap independen terhadap yang terakhir. Tidak seperti protokol stateful (yang mempertahankan state), protokol tanpa kewarganegaraan harus membangun ulang negara aplikasi setiap saat.
Sementara ini tidak berarti bagi kebanyakan orang, intinya adalah jika Anda ingin mengembangkan aplikasi berbasis web, Anda perlu menggunakan kerangka kerja atau rangkaian teknologi yang membuat sifat statis HTTP semaksimal mungkin. Yang paling penting, Anda memerlukan sistem otentikasi yang membangun kembali sesi pengguna pada setiap permintaan (saya akan menjelaskannya sebentar lagi).
Ruby vs PHP
Ruby (bahasa) mirip dengan PHP - keduanya bersifat prosedural dan keduanya banyak digunakan di Internet.
Perbedaan utama antara Ruby dan PHP adalah PHP diakses langsung di sisi client, Ruby membutuhkan proxy.
Aplikasi seperti WordPress dibangun dengan PHP karena gratis, open source dan bisa dijalankan di server LAMP (Linux Apache MySQL PHP) (yang pada dasarnya adalah semua shared hosting yang ada).
Intinya dengan Ruby adalah bahwa itu adalah BANYAK yang lebih temperamental daripada PHP - memerlukan proses yang berjalan untuk membantu operasinya dan seringkali gagal untuk memulai jika ada masalah.
Dasar
Untuk memulai, Anda memerlukan tiga hal:
IDE (Integrated Development Environment)
Server Web Ruby-Kompatibel (Heroku)
Ruby, Rails & GIT Terpasang di Sistem Anda
Saya akan menjelaskan cara kerjanya.
Sebuah "IDE" adalah editor teks dengan kemampuan untuk membedakan kode yang Anda masukan. Saat ini saya menggunakan Atom (gratis) dari Github. Anda bisa mendownloadnya dari Atom.io.
IDE memungkinkan Anda menulis kode. Sementara Anda bebas menggunakan editor teks standar (Notepad atau Notepad ++), ada baiknya menggunakan sistem seperti Atom atau bahkan Visual Studio, untuk mendapatkan fungsionalitas bahasa sepenuhnya (linting dll.).
Dari sini, Anda juga perlu menginstal Ruby, Rails dan GIT pada sistem pengembangan Anda. Ruby adalah bahasa pemrograman (tidak ada yang berhasil kecuali jika Anda memilikinya), Rails adalah framework yang memungkinkan kita untuk membangun aplikasi berbasis web, dan GIT adalah sistem SCM (Source Code Management) yang akan kita gunakan untuk mendorong kode kita ke server kita.
Untuk teknologi server, yang paling mudah adalah menggunakan Heroku (Heroku.com) - sistem yang benar-benar terkelola. Anda bisa memulai secara gratis, dengan kapasitas upgrade, kecepatan dan lain-lain ditambah dengan biaya ekstra bulanan. Jika Anda merasa nyaman untuk menyiapkan server Anda sendiri, Anda mungkin ingin menggunakan orang seperti DigitalOcean.
Perlu dicatat bahwa shared hosting tidak bekerja untuk aplikasi berbasis Ruby. Anda tidak hanya memerlukan akses GIT (biasanya melalui SSH) namun server juga diharuskan menjalankan Ruby sebagai proses yang berjalan. Ini tidak bisa dilakukan dengan shared hosting (sayangnya).
Menginstal Ruby & Rails
Langkah pertama untuk memprogram aplikasi RoR adalah menginstal Ruby & Rails di sistem Anda.
Meskipun ada banyak cara untuk melakukan ini, tergantung pada platform yang Anda jalankan (Windows / Linux dll), ada serangkaian langkah inti yang harus diikuti:
Instal Ruby
Ini dilakukan baik dari sumber, atau dengan menggunakan versi pra-kompilasi. Jika Anda menggunakan Windows, Anda perlu menginstal masing-masing komponen secara terpisah.
Instal RubyGems
Ini adalah seperangkat protokol yang memungkinkan Anda mendownload semua perpustakaan tambahan untuk Ruby - "permata". Permata ini digunakan untuk menyediakan kumpulan fungsi untuk pengembangan web Ruby. Bagian dari apa yang membuat Ruby sangat menarik di tempat pertama adalah seperangkat fungsi extensible yang luas ini. Rails adalah permata, misalnya.
Instal Alat Bangun
Dalam sistem Unix, Anda ingin menginstal perpustakaan "build essential", Windows akan menginstal toolset MSYS2. Keduanya menyediakan sistem dengan alat yang diperlukan untuk mengumpulkan berbagai permata pembangun diri (seperti MYSQL2 dan RMagick).
Pasang rails
Setelah ini, Anda bisa menjalankan "gem install rails" untuk memasang rel. Ini akan menempatkan semua binari Rails ke sistem Anda, memberi Anda kemampuan untuk berkembang sesuai kerangka kerja.
Instal IDE
IDE (Integrated Development Environment) adalah perangkat lunak yang digunakan untuk memasukkan kode ke dalam sistem. Sementara mereka hanya editor teks yang dimuliakan, mereka memberi Anda fungsi seperti linting, penyorotan kode, dan lain-lain. Kami menggunakan Atom tapi Anda juga bisa menggunakan Teks Sublim atau swathe dari thers. Jika Anda merasa yakin, Anda mungkin hanya ingin menggunakan Notepad.
Pasang GIT
GIT adalah sistem SCM (source code management). Ini memberi Anda kemampuan untuk membuat "repositori" dan mendorongnya ke server web eksternal. Teknologi / teknik ini pada dasarnya seperti FTP pada steroid, dan merupakan cara utama agar kode Ruby "didorong" ke server. Anda harus mendownload GIT secara terpisah di sistem Anda (dari git-scm.com)
Mulai Coding
Dengan instalasi di atas, Anda hanya perlu mulai coding. Untuk melakukan ini, Anda perlu browse ke folder baru, memuat CMD dan ketik "rails new [[app name]]". Setelah menekan "Enter", file aplikasi standar akan ditempatkan pada hard drive, memungkinkan Anda mengeditnya dan mengujinya di server lokal. Ini adalah awal dari aplikasi Anda.
Mulai
Tanpa membahas secara spesifik, hal utama yang harus diingat dengan aplikasi Rails adalah bahwa hal itu "dilakukan untuk Anda".
Rails memiliki konvensi yang disebut "convention over configuration". Ini berarti kerangka Rails telah dirancang untuk memberi Anda cara yang sama sebanyak mungkin untuk membangun dan menerapkan aplikasi berbasis web.
Kerangka kerja ini dikenal sebagai kerangka model "MVC" (model, view, controller) - yang berarti setiap kali Anda mengirim permintaan ke aplikasi, kerangka ini menggunakan kombinasi "model", "tampilan" dan "pengontrol" untuk membangun sebuah respon
Dengan demikian, saat Anda membuat aplikasi Rails baru di sistem Anda, Anda akan segera melihat sejumlah besar folder. Satu-satunya yang penting (pada awalnya) adalah yang ada di direktori / aplikasi.
Di sini, Anda akan melihat folder "aset", "tampilan", "model" dan "pengendali" yang serupa. Jika ini tidak ada artinya, jangan khawatir. Saya akan menjelaskan dasar bagaimana semuanya bekerja di sini.
MVC telah ada selama bertahun-tahun.

Komentar
Posting Komentar