Bagaimana Menjadi Pengembang Full-Stack: Bagian 2

Diterbitkan: 2017-12-02

Ini adalah yang kedua dari serangkaian posting tentang mengajar diri Anda sendiri pemrograman dan pengembangan tumpukan penuh. Jika Anda belum memeriksa bagian pertama, tentang mempelajari Dasar-dasar CS, Algoritma, Prinsip Desain, dan Pengembangan Front-end, Anda dapat melakukannya di sini.

Motivasi

Anda sekarang tahu cara membuat situs web statis menggunakan HTML, CSS, dan Javascript. Meskipun Internet pada awalnya dirancang untuk berbagi halaman web statis, kemampuan (dan harapan) aplikasi web modern telah meningkat pesat. Hampir setiap aplikasi mengharuskan Anda mengautentikasi pengguna, menanggapi mereka, dan mereplikasi skenario dunia nyata sedekat mungkin.
Untuk melakukan hal yang disebutkan di atas, Anda perlu mendapatkan data dari pengguna (atau API), memprosesnya, dan menghasilkan output. Anda juga perlu menyimpan data ini dan memiliki mekanisme untuk mengidentifikasi pengguna saat dia kembali menggunakan aplikasi Anda. Untuk melakukan fungsi-fungsi ini, tumpukan kami saat ini tidak cukup.
Wawancara dengan Ankit Tomar, Co-Founder & CTO, Bizongo

Server diperlukan untuk memproses data pengguna, menyimpan file, mengubahnya menjadi HTML/CSS/JS. Kemudian, server ini menyajikannya ke browser dalam bentuk yang dapat disajikan kepada pengguna. Database diperlukan untuk menyimpan data penting untuk aplikasi Anda. Untuk memprogram server, kami memerlukan bahasa skrip sisi server dan untuk database, kami memerlukan database (duh) dan bahasa untuk berkomunikasi dengannya. Inilah yang akan kita lakukan di langkah selanjutnya. Untuk tujuh yang pertama, lihat postingan sebelumnya!

Daftar isi

Langkah 8: Bahasa Skrip Sisi Server

Seperti disebutkan sebelumnya, untuk memprogram dan berkomunikasi dengan server Anda, Anda perlu mengetahui bahasa yang dimengertinya. Tidak seperti front-end di mana Javascript adalah satu-satunya pilihan, ada banyak pilihan yang tersedia untuk Anda program di backend. Yang paling populer adalah Java, PHP, Python, JavaScript dan Ruby.
PHP memiliki kekurangan, tetapi memiliki kurva belajar paling lembut dari semua bahasa dan kerangka kerja yang saya gunakan sejauh ini. Dan PHP adalah tentang pengkodean solusi cepat (dan kotor). Jadi, dalam waktu yang sangat singkat, Anda dapat membangun aplikasi web yang sangat dibanggakan.
Bagaimana menjadi pengembang perangkat lunak web tumpukan penuh, backend ujung depan Blog UpGrad
Java adalah bahasa pemrograman tujuan umum dan mungkin bahasa yang paling populer sepanjang masa. Ini sangat populer untuk membangun aplikasi seluler (pada platform Android) dan digunakan secara luas di sebagian besar perusahaan teknologi besar. Head First Java adalah tempat yang tepat untuk mempelajari bahasa yang ada di mana-mana ini.
Untuk belajar Python, saya sangat merekomendasikan Zed Shaw's Learn Python the Hard Way dan Automate the Boring Stuff karya Albert Sweigart dengan Python. Jika Anda memutuskan untuk menggunakan PHP, Anda dapat mempelajari dasar-dasar bahasa di Codecademy.
Anda sudah cukup mengetahui sintaks JavaScript untuk mengotori tangan Anda dengan kerangka kerja Node dan backend JS (seperti Express). Saya akan membahas Ruby nanti dalam hubungannya dengan Rails karena jarang digunakan sebagai bahasa yang berdiri sendiri.

Langkah 9: Pelajari SQL

Untuk langkah selanjutnya, Anda mungkin harus mengambil sedikit SQL (Structured Query Language). Ini adalah database bahasa yang berkomunikasi dengannya. Dan meskipun Anda mungkin tidak menggunakannya secara langsung saat Anda beralih menggunakan kerangka kerja, mengetahui cara berkomunikasi langsung dengan database Anda tetap membantu. Berita baiknya adalah SQL sangat mudah dipelajari. Anda harus bisa memahaminya dengan baik dalam hitungan jam. Head First SQL adalah sumber yang bagus untuk tujuan ini.
Bagaimana Menjadi Pengembang Full Stack: Bagian 1

Langkah 10: Pelajari Kerangka Web Full-Stack 'Konvensional'

Sekarang adalah saat yang tepat untuk bereksperimen dengan kerangka kerja web yang dapat melakukan sebagian besar pekerjaan tingkat bawah untuk Anda.
Tidak ada kekurangan kerangka kerja hebat yang dapat memenuhi setiap tujuan yang dapat dibayangkan. Rails (ditulis dalam Ruby), Spring (ditulis dalam Java) dan Django (ditulis dalam Python) adalah di antara kerangka kerja yang populer digunakan saat ini. Anda dapat melihat Tutorial The Rails karya Michael Hartl – tersedia gratis.
Sejauh menyangkut Django, tutorial di situs resmi adalah tempat yang baik untuk memulai. Setelah Anda merasa nyaman dengan dasar-dasar kerangka kerja, bacalah Two Scoops of Django . Ini adalah salah satu buku teknologi terbaik yang pernah ada.
Jika Anda telah memutuskan untuk menempuh rute Musim Semi, saya sangat menyarankan untuk mendaftar ke program Pengembangan Perangkat Lunak UpGrad & IIIT-B. Program ini memberi Anda gambaran umum yang sangat holistik tentang kerangka kerja dan membantu Anda membangun backend yang kuat dan skalabel.

Langkah 11: Javascript Full-Stack Frameworks dan MEAN Stack

Belum lama ini, Pengembangan Backend dulu didasarkan pada konsep siklus permintaan-tanggapan. Misalnya, browser mengirim permintaan dan server merespons dengan mengeluarkan halaman web dalam HTML. Namun, sejak awal 2010, semakin banyak aplikasi yang menjadi real time.
Struktur seluruh halaman web berubah tanpa menyegarkan dan berperilaku dinamis berdasarkan masukan dan interaksi pengguna (Pikirkan obrolan, suka, komentar, video langsung dan reaksi, dll.).
Bagaimana menjadi pengembang perangkat lunak web lengkap Back-end UpGrad Blog
Dalam skenario seperti itu, siklus permintaan-tanggapan sederhana saja tidak cukup. Oleh karena itu, ada lonjakan minat baru-baru ini terhadap pemrograman asinkron dan menjadikan permintaan AJAX sebagai norma. Kerangka kerja Javascript cenderung unggul dalam hal ini. Jadi, masuk akal untuk berkenalan dengan salah satu kerangka kerja JS utama yang tersedia di pasar. Dua yang paling populer adalah MEAN Stack dan MeteorJS.
Wawancara dengan Farooq Adam, Co-Founder, Fynd

Mempelajari MEAN sedikit lebih rumit karena sifatnya yang tidak sinkron dan callback hell Node biasanya cenderung dilepaskan. Tapi sekarang Anda adalah seorang pengembang berpengalaman, Anda cukup dewasa untuk menghadapi keanehannya.
Meteor adalah kerangka kerja JS tumpukan penuh yang saat ini saya coba. Konsep Meteor benar-benar menyenangkan – satu kerangka kerja dalam satu bahasa yang menangani semua komponen aplikasi (front-end, back-end, dan database). Namun, ini harus dibayar dengan kebebasan kustomisasi. Setelah Anda membangun sesuatu di Meteor, hampir tidak mungkin untuk mengubah database atau kerangka kerja backend jika Anda memilih untuk melakukannya. Padahal, saya masih berpikir ini adalah teknologi yang berharga untuk dipelajari. Meteor dikenal sangat kuat. Itu mampu melakukan banyak hal dalam ratusan baris kode di mana kerangka kerja konvensional lainnya akan membutuhkan seribu.

Kesimpulan

Ini adalah akhir dari bagian 2. Dalam posting ini, kami telah membahas sumber daya tentang pengembangan backend dan berbagai teknologi full-stack yang tersedia. Anda sekarang dapat dengan bangga menyebut diri Anda sebagai pengembang full-stack. Selamat!
Namun kisah pengembangan web full-stack tidak berakhir di sini. Dengan diperkenalkannya iPhone, telah terjadi revolusi smartphone di seluruh dunia. Semakin banyak orang beralih ke penggunaan smartphone di tempat desktop. Dalam skenario seperti itu, sangat penting bagi Anda untuk belajar membangun aplikasi untuk dua platform paling populer di luar sana: Android dan iOS. Kami akan membahas ini di bagian berikutnya dan terakhir dari seri ini. Selain itu, kita juga akan melihat kerangka kerja yang memungkinkan kita membangun aplikasi asli menggunakan Javascript (Ionic, React Native, dll.).
Sampai saat itu, itu selamat tinggal.
Komentar dan saran Anda dipersilahkan!

Menjadi Pengembang Tumpukan Penuh

Diploma PG UpGrad dan IIIT-Bangalore dalam Pengembangan Perangkat Lunak
Belajarlah lagi