Front-End vs. Back-End vs. Full-Stack Web Development

Pembangunan web bukan hanya satu perkara. Ia merangkumi pelbagai kemahiran, dan terdapat pelbagai jenis kerjaya dalam ruang pembangunan web. Tiga istilah yang sering digunakan ialah "front end," "back end," dan "full stack." Berikut adalah perbezaan utama antara ketiga-tiga.

Pembangunan Web Front-End

Pembangunan front-end , sementara komponennya selalu berubah, pada dasarnya menangani bahagian-bahagian luar dari laman web atau aplikasi web.

Pada terasnya, pembangunan front-end melibatkan HTML, CSS, dan JavaScript.

Secara umum, hujung depan dikaitkan dengan susun atur dan prinsip reka bentuk. Walau bagaimanapun, pemaju depan tidak semestinya pereka.

Pada dasarnya, pemaju front-end membina penampilan luar - laman web laman web yang dilihat oleh pengguna. Ini bermakna bahawa pembangun front-end mesti mengambil kira kebolehbacaan dan kebolehgunaan tapak dan / atau aplikasi.

Selain itu, hujung depan berjalan pada pelanggan - yang bermaksud komputer tempatan pengguna - dalam kebanyakan kes, pelayar web.

Dan maklumat tidak disimpan di sisi klien.

Pembangunan Web Belakang

Pembangunan web belakang adalah apa yang berlaku di belakang tabir. Belakang membolehkan pengalaman hadapan.

Untuk membuat perkara yang mudah, fikirkan tentang bahagian depan sebagai sebahagian daripada gunung es di atas air. Itu yang dilihat oleh pengguna - laman web yang rapi.

Hujung belakang adalah sisa ais; ia tidak boleh dilihat oleh pengguna akhir, tetapi ia adalah unsur yang paling asas dalam aplikasi web. Akhir belakang berjalan pada pelayan, atau, seperti yang sering disebut, "sisi pelayan".

Tidak seperti pembangunan front-end (yang terutama menggunakan HTML, CSS, dan JavaScript), pembangunan web back-end boleh bergantung pada pelbagai bahasa dan rangka kerja.

Beberapa bahasa popular yang digunakan di hujung belakang termasuk:

Walau bagaimanapun, agar tapak web berskala besar dan aplikasi web berfungsi, itu lebih daripada bahasa dan rangka kerja latar belakang. Semua maklumat di laman web atau aplikasi mesti disimpan di suatu tempat.

Di sinilah pangkalan data masuk. Pemaju back-end juga mengendalikannya.

( Nota : anda boleh membina laman web tanpa pangkalan data dengan hanya menggunakan HTML dan CSS.Ini akan menjadi tapak statik dan akan menjadi kurang fleksibel.Tetapi, laman web yang bergantung kepada maklumat yang dihasilkan secara dinamik - Facebook, Yelp, mana-mana tapak e-dagang - memerlukan pangkalan data.)

Pangkalan data popular termasuk:

Biasanya bahasa / kerangka latar belakang tertentu memerlukan pangkalan data tertentu. Sebagai contoh, kerangka stack penuh MEAN memerlukan MongoDB.

Selain mengetahui bahasa / kerangka kerja back-end dan pangkalan data yang berjalan, pengembang back-end juga harus memiliki pemahaman tentang seni bina server.

Menyediakan pelayan dengan betul membolehkan tapak berjalan pantas, tidak crash, dan tidak memberi kesalahan kepada pengguna. Ini berada di bawah domain pemaju belakang kerana kebanyakan kesilapan berlaku di hujung belakang, bukan hujung depan.

Stack Penuh

Ya, anda fikirkan: Tumpukan penuh adalah gabungan kedua-dua hujung depan dan hujung belakang.

Pemaju stack penuh adalah jack-of-all-trades. Mereka bertanggungjawab untuk semua peringkat pembangunan, dari bagaimana pelayan disediakan untuk CSS berkaitan reka bentuk.

Hari-hari ini, terdapat begitu banyak yang masuk ke dalam pembangunan web yang hampir mustahil untuk mengendalikan kedua-dua pihak. Walaupun ramai orang boleh membuat tuntutan penuh, atau sebenarnya, mereka biasanya lebih fokus pada satu pihak: pelanggan atau pelayan. (AKA hujung depan atau hujung belakang.)

Pada syarikat / startup yang lebih kecil, satu orang mungkin lebih bertanggungjawab untuk semua pihak dalam spektrum pembangunan web. Walau bagaimanapun, di syarikat yang lebih besar, orang bekerja pada pasukan dan mempunyai peranan khusus - satu berfokus sepenuhnya pada seni bina pelayan, yang lain (atau beberapa orang) di hujung depan, dll.

Kesimpulannya

Pembangunan web mempunyai banyak wajah, dan ia semakin berkembang setiap hari. Ada banyak perkara yang perlu dipelajari, tetapi tidak merasa tertekan untuk mempelajari semuanya sekaligus. Ingat, di persekitaran tempat kerja, anda biasanya akan berada di dalam pasukan dengan orang lain. Tumpukan pada mengasah kemahiran anda dalam satu aspek pembangunan web pada satu masa. Jangan terkejut, dan anda akan menjadi pro sebelum anda tahu.