Cara Terbaik untuk Mempelajari Pengembangan Web Frontend

Mengapa pengembangan web?

Pengembangan web adalah bidang yang tidak akan kemana-mana dalam waktu dekat. Web bergerak cepat, dan ada peningkatan rutin pada perangkat yang digunakan banyak orang setiap hari.

Aplikasi berbasis cloud telah memungkinkan kami melakukan pekerjaan berat di cloud dan menggunakan browser sebagai jembatan untuk menghubungkan server backend yang kuat dengan frontend yang kurang mampu dan kuat.

Sekarang adalah waktu terbaik untuk mempelajari pengembangan web jika Anda ingin mempelajari sesuatu.

Pengembangan web tidak hanya membuka banyak peluang bagi Anda sebagai individu, tetapi Anda juga dapat membuat kode dan menerapkan proyek lengkap ujung ke ujung yang dapat dikonsumsi oleh hampir semua orang di planet ini.

Karena kebanyakan orang memiliki akses ke browser, setiap orang hanya berjarak satu URL dari aplikasi web yang telah Anda kodekan. Jika Anda membandingkan ini dengan aplikasi desktop atau produk berbasis perangkat keras, Anda akan melihat bahwa ini tidak skalabel dibandingkan dengan web.

Sekarang setelah kita menetapkan fakta bahwa web adalah cara terbaik untuk melakukannya saat ini, mari kita lihat cara mempelajari pengembangan web dengan cara terbaik.

Web sangat luas - mulai dari yang kecil dan pertahankan dari yang kecil

Anda mungkin telah melihat sejumlah besar kerangka kerja dan pustaka JavaScript di luar sana seperti React, Angular, Vue, Ember, jQuery, XYZ, dan sebagainya.

Beberapa pertanyaan umum yang saya dapatkan sebagai YouTuber yang memposting konten pengembangan web adalah sebagai berikut:

Haruskah saya belajar X?

Apakah X lebih baik dari Y?

Apa ruang lingkup Z?

Ingatlah selalu dua hal tentang teknologi, terutama tentang web:

  1. Kumpulan teknologi Anda hampir selalu tidak penting. Jika Anda cukup mahir dengan bahasa / kerangka kerja Anda, Anda akan menang setiap saat.
  2. Anda tidak perlu mempelajari segalanya. Tidak pernah. Anda bisa menjadi jack of all trade, tapi pastikan Anda menguasai salah satunya.

Untuk meringkas bagian ini, Anda perlu berpikir sangat kecil ketika Anda mulai . Sangat mudah untuk terbawa dengan kerangka kerja panas yang baru saja dirilis. Hanya saja, jangan mencoba untuk maju dengan membuang teknologi lama dan mengadaptasi teknologi baru tanpa melakukan penelitian yang tepat.

Mulailah dengan HTML dan CSS

Saya tidak bisa cukup menekankan hal ini. Sangat menyakitkan bagi saya untuk melihat banyak orang mengajukan pertanyaan kepada saya tentang proyek React mereka ketika jawabannya terletak pada HTML atau CSS dasar.

JavaScript hanyalah bahasa skrip browser pada awalnya. Dan meskipun sekarang lebih dari itu, itu tidak mengubah fakta bahwa di web itu melengkapi HTML dan CSS.

Dengan kemajuan dalam standar web, ada banyak hal yang dapat Anda capai hanya dalam CSS. Untuk banyak hal, JavaScript bahkan tidak diperlukan.

Animasi? Anda mengerti. Seret dan lepas? HTML bisa mengatasinya. Tata letak? Lihat Flexbox atau Grid CSS API!

Ada banyak hal yang bisa Anda pelajari tentang HTML dan CSS! Jangan terburu-buru masuk ke JavaScript karena semua anak keren di blok ini menyukai Angular. Perpustakaan dan kerangka kerja tersebut tidak ke mana-mana. Luangkan waktu Anda .

Lebih luas atau lebih dalam?

Ada dua pendekatan saat Anda mempelajari pengembangan web - memperluas atau mendalami.

Meluas berarti Anda mulai belajar banyak hal bersama. Ini mungkin berhasil untuk beberapa orang, tetapi tidak untuk orang lain. Anda mungkin membebani diri Anda dengan tutorial, latihan, video, dan blog, lalu akhirnya menyerah.

Mendalam berarti Anda mulai mempelajari satu hal dan mencoba belajar sebanyak mungkin tentangnya. Ini memiliki pro dan kontra tersendiri. Anda mungkin bosan, atau menyerah karena tidak melihat hasil.

Jadi apa solusinya? Jawabannya, yang mengejutkan, tidak melakukan keduanya. Pilih tumpukan teknologi kecil seperti HTML / CSS / JavaScript, dan pelajari ketiganya. Ini memiliki beberapa keuntungan:

  1. Anda tidak akan bosan, karena ketiganya memiliki tujuan yang relatif berbeda dan Anda menulisnya secara berbeda.
  2. Anda dapat memadukan ketiganya, dan membuat serta melihat sesuatu yang bermakna dengan cepat tanpa usaha berbulan-bulan (yang biasanya dibutuhkan oleh bahasa lain seperti C / C ++). Ini akan membuat Anda termotivasi untuk terus maju.

Jangan pilih React, atau Angular, atau Vue

Ketika orang-orang mulai bekerja dengan JavaScript, ada dorongan untuk mengambil perpustakaan seperti React, sistem UI seperti Material UI, dan terjun ke dalam membangun hal-hal yang mengagumkan.

Sayangnya, hal ini tidak lebih dari sekadar menembak diri sendiri di kaki. Anda tidak akan pernah bisa membuat proyek menengah hingga lanjutan dengan kerangka kerja ini jika Anda tidak memahami dasar-dasar JavaScript. Dan menerapkan JavaScript membutuhkan waktu.

Perhatikan bahwa saya menggunakan kata menerapkan, dan tidak belajar, pada kalimat sebelumnya. Ada perbedaan besar antara mempelajari sesuatu dan menerapkan sesuatu yang telah Anda pelajari.

Buat proyek kecil tapi berfungsi dengan HTML / CSS / JavaScript. Dan saat Anda melakukannya, buat satu lagi, lalu buat proyek lain.

Setiap langkah di sepanjang jalan, terus tingkatkan kompleksitas proyek, dan juga ekspektasi, hingga basis kode Anda tidak dapat dikelola. Pada titik itu Anda telah sampai pada apa yang saya suka sebut sebagai batas pembelajaran yang superior .

Anda lihat, kerangka kerja ada untuk melepaskan pekerjaan berulang dari Anda. Mereka tidak ada sehingga Anda mengabaikan apa yang sebenarnya terjadi di bawah tenda dan mengandalkan fakta bahwa itu semua ajaib.

Pertama kali Anda memilih kerangka kerja seperti React atau Angular untuk proyek Anda haruslah ketika Anda yakin bahwa Anda dapat membuat proyek itu tanpa React atau Angular .

Master dari satu perdagangan

Sekarang, saat Anda mahir menggunakan HTML / CSS / JavaScript, saatnya beralih ke standar industri. Sebenarnya, tidak peduli seberapa bagus Anda menjadi pengembang JavaScript, Anda akan sering perlu bekerja dengan kerangka kerja modern seperti React - dan hanya dengan pengetahuan JavaScript Anda, Anda tidak dapat langsung menguasainya.

Butuh waktu untuk mempelajari dan memahami terminologi, konsep, dan cara kerja kerangka kerja tersebut. Jadi gunakan kerangka kerja dan kuasai.

Bagaimana, Anda mungkin bertanya? Jawabannya sederhana - terserah Anda. Buat proyek sederhana di semua framework utama (Angular, Vue, dan React), dan lihat mana yang paling menarik bagi Anda. Pilih satu dan jangan melihat ke belakang

Kemudian buat semua proyek Anda dengan kerangka itu. Bertujuan untuk melakukan sesuatu yang Anda belum tahu bagaimana melakukannya. Ini adalah cara terbaik untuk mendorong diri Anda keluar dari zona nyaman dan mempelajari hal-hal baru .

Tapi jangan lupakan yang lainnya

Sama pentingnya juga untuk mengawasi kandidat lain. Ini tidak hanya melibatkan pesaing langsung dari kerangka "favorit" Anda di luar sana, tetapi juga beberapa alat pengembangan web yang layak juga.

Anda tidak perlu "menguasai" alat-alat lain ini karena sering kali mereka hanya memerlukan pengaturan satu kali dengan pemeliharaan rutin. Tetapi selalu menyenangkan untuk menyimpannya di daftar periksa keterampilan Anda.

Ini dapat mencakup beberapa hal - seperti pengujian unit dengan Jest, pengujian ujung-ke-ujung dengan Cypress, Webpack, Babel, atau Parcel, sedikit devops, skrip shell Linux, penerapan server, dan sebagainya.

Anda selalu dapat mempelajari dasar-dasar keterampilan ini dengan cepat karena mereka sudah ada sejak lama, sehingga mereka memiliki banyak materi bermanfaat yang tersedia.

Berpindah

Percayalah, ini perasaan yang lucu - tetapi begitu Anda mengembangkan banyak proyek dan menulis banyak kode dengan tumpukan favorit Anda, Anda mulai merasa seperti Anda dapat melakukan apa saja. Pada titik ini, Anda bisa mendapatkan pekerjaan dan terus melakukan hal yang sama - tidak apa-apa. Atau, Anda dapat meningkatkan keterampilan Anda melalui atap dan melanjutkan.

Web. Adalah. Luas.

Jadi jika Anda sudah selesai dengan HTML / CSS / JavaScript / React / Angular / Vue, lanjutkan ke server. Pelajari tentang penerapan server, NGiNX, HAProxy, load balancing, penyiapan infrastruktur cloud, firewall, dan penskalaan otomatis.

Selesai dengan itu juga? Pindah ke WebAssembly, bahasa untuk iterasi web berikutnya.

Selesai belajar WebAssembly? Err, saya tidak tahu. Mungkin pindah ke area pemrograman lain, atau memasak? :)

Kesimpulan

Di dunia sekarang ini, sangat mudah bagi Anda untuk tidak mengulangi kesalahan yang saya buat saat mempelajari pengembangan web sendiri. Karena semua kesalahan itu sekarang dapat dibaca oleh semua orang!

Anda memiliki begitu banyak sumber daya yang tersedia untuk Anda, dan saya sedang mengerjakan salah satunya untuk dipelajari oleh pengembang web! Inilah saluran YouTube saya tempat saya mengajari Anda cara memprogram hal-hal luar biasa. Dan inilah platform codedamn - platform sebenarnya yang memungkinkan Anda menjadi pengembang hebat dengan memadukan banyak video, artikel, dan latihan.

Beri tahu saya pendapat Anda tentang artikel ini, dan pengembangan web secara umum, melalui akun twitter dan Instagram saya. Saya ingin sekali terhubung dengan Anda di luar sana!

Perdamaian!