Apakah Bereaksi memiliki efek buruk pada Angular?

Penulis materi, terjemahan yang kami terbitkan hari ini, menawarkan untuk merefleksikan masa depan pengembangan web. Ketika tren popularitas teknologi mulai bergeser ke perpustakaan React, mudah untuk merasakan pentingnya pertanyaan tentang seberapa relevan, setelah beberapa saat, kerangka kerja Angular akan berubah menjadi. Jelas bahwa pada akhirnya hanya satu teknologi akan mendapatkan tempat pertama, dan ini memaksa pengembang web, terutama mereka yang baru memulai jalan mereka, untuk bertanya-tanya apa yang harus dipilih.



Karena Facebook mengubah lisensi Bereaksi dari BSD ke MIT, perpustakaan ini tampaknya telah berkembang di setiap sudut pasar pengembangan web global. Namun, pebisnis dan startup biasanya tidak segera memahami hal ini, Bereaksi bukanlah sistem yang komprehensif untuk pengembangan front-end. Ini hanya perpustakaan, salah satu dari banyak blok bangunan, di antara banyak yang membantu untuk dengan cepat mengubah aplikasi kecil menjadi proyek yang lebih besar, menjadi sistem yang didasarkan pada komponen yang terisolasi satu sama lain.

Konfrontasi Bereaksi dan Sudut


Facebook sering digunakan sebagai contoh utama keberhasilan React. Tapi perpustakaan ini hanya setetes di lautan dari sejumlah besar teknologi yang digunakan raksasa teknis ini. Bagaimanapun, ini hanyalah pustaka JavaScript untuk mengembangkan antarmuka.

Angular, di sisi lain, adalah kumpulan perpustakaan yang, bekerja sama, membentuk satu kesatuan.

Ada beberapa tugas yang dapat diselesaikan secara kualitatif dengan menggunakan Angular, yang sepenuhnya diabaikan dalam Bereaksi, sementara yang lain dalam Bereaksi lebih efisien. Pengembang akan selalu cenderung pada fakta bahwa mereka tahu betul, dan, sebagai hasilnya, bahkan tidak akan mencoba untuk melihat paradigma lain yang mungkin lebih sesuai dengan situasi mereka. Atau mungkin tipe pemikiran ini sering menjadi karakteristik pengembang pemula dan menengah.

Meskipun popularitas React semakin meningkat, orang tidak boleh lupa bahwa Angular menikmati dukungan serius dari perusahaan yang tidak kalah besarnya dengan Facebook, atau bahkan melampaui itu. Ini tentang Google. Pada saat yang sama, ekosistem yang sama kuatnya telah berkembang di sekitar metodologi pengembangan front-end yang dipromosikan oleh Angular dan React, di mana ada peristiwa serius, serta spesialis besar yang mengadvokasi teknologi ini atau itu. Benar, ada teknologi lain yang tumbuh dalam hal popularitas, terletak, dilihat dari apa yang ditawarkan pengembang, antara Angular dan React. Ini adalah kerangka kerja Vue.

Vue



Data dari Google Trends. Garis Merah - Sudut, Biru - Bereaksi, Kuning - Vue

Kerangka kerja Vue adalah pendatang baru di "kelas" alat pengembangan front-end, popularitasnya secara bertahap tumbuh, oleh karena itu, berbicara tentang React dan Angular, kita tidak boleh melupakannya. Meskipun komunitas di sekitar Vue jauh lebih kecil daripada komunitas Angular dan Bereaksi, semakin populernya Vue dapat dijelaskan oleh fakta bahwa itu adalah alat yang ringan, tidak serumit Angular, tetapi menawarkan kepada programmer lebih banyak fitur daripada yang disediakan dalam fungsionalitas Bereaksi dasar.

Pembuat Vue sangat akrab dengan kerangka AngularJS. Prinsip-prinsip yang menjadi dasarnya jauh lebih kuat daripada dalam kasus Angular modern, mengingatkan pada prinsip-prinsip yang mendasari React.

Tantangan adopsi teknologi dan kebiasaan programmer


Tidak diragukan lagi, mudah untuk mengetahui Bereaksi, cukup buat aplikasi yang berfungsi penuh berdasarkan perpustakaan ini, yang, tanpa masalah, dapat dikonversi menjadi aplikasi seluler asli. Perpustakaan ini populer di kalangan pengembang pemula.

Lebih sulit untuk menguasai Angular sebelum Anda dapat membuat sesuatu berdasarkan kerangka ini, Anda harus berurusan dengan beberapa hal tambahan. Kerangka kerja ini meminjam konsep dan ideologi Java, sebuah teknologi yang terutama digunakan untuk pengembangan backend dan memainkan peran penting dalam infrastruktur perangkat lunak Google. Di Facebook, di sisi lain, PHP banyak digunakan, yang, sebagai hasilnya, telah menyebabkan pengaruh kuat pada prinsip-prinsip yang diadopsi dalam bahasa ini oleh React.

Anda dapat dengan mudah menghabiskan sepanjang hari membandingkan React dan Angular, tetapi hal paling penting untuk menarik dari perbandingan ini adalah bahwa kedua sistem ini dibedakan oleh komunitas yang kuat dan mampu menarik programmer dengan pengalaman dengan teknologi tertentu. Perlu dicatat bahwa startup lebih cenderung ke arah React, karena mereka berusaha untuk memastikan bahwa alat yang mereka gunakan menyediakan tingkat beban tambahan yang paling rendah pada pengembang. Kelangsungan hidup mereka tergantung pada seberapa cepat mereka dapat memasuki pasar, seberapa baik mereka mampu memenuhi permintaan dan seberapa akurat mereka dapat masuk ke dalam tren.

Tetapi banyak startup kehilangan satu hal penting: semakin rendah hambatan masuk, semakin rendah kualitasnya. Semakin banyak programmer otodidak yang tampaknya mengandalkan sumber daya komunitas di sekitar React, hal-hal tertentu, seperti paradigma pemrograman dan kebersihan kode, menghilang ke latar belakang. Ini bukan untuk mengatakan bahwa semuanya jauh lebih baik di lingkungan Angular, tetapi dalam kasus Angular, programmer harus bekerja dalam kerangka kerja yang agak kaku yang ditentukan oleh kerangka kerja ini. Bereaksi tidak memiliki kerangka kerja seperti itu.

Vue memiliki ruang hidup sendiri yang kecil, kerangka kerja ini dimaksudkan untuk menjadi jawaban untuk pertanyaan yang lebih baik, Angular atau Bereaksi, bagi mereka yang tidak ingin memulai barikade dari salah satu pihak yang bertikai, memulai jalur pengembang web.

Apa yang menggunakan netflix?


Ternyata Netflix, di antara banyak teknologi dan alat infrastruktur lainnya, menggunakan React. Jika Anda membayangkan perangkat aplikasi, dari sudut pandang burung, ternyata teknologi front-end hanya membuat sebagian kecil dari apa yang digunakan dalam proyek.

PayPal, di sisi lain, menggunakan Angular, ia menghasilkan urutan karakter, di sana-sini ditemukan dalam kode HTML yang dihasilkan oleh sumber daya perusahaan.


PayPal HTML

Netflix dan PayPal adalah perusahaan besar yang menempati ceruk pasar tertentu. Keduanya sama sekali tidak terkait dengan Angular atau Bereaksi, dalam arti di mana Google dan Facebook dikaitkan dengan mereka. Tetapi masing-masing perusahaan ini, memilih, masing-masing, Bereaksi atau Angular, menyelesaikan dengan bantuan satu atau teknologi lain tugas mengembangkan antarmuka aplikasi.

Di sini kita dapat mengatakan bahwa kode warisan, atau apa pun, memengaruhi pilihan teknologi oleh perusahaan-perusahaan ini. Tetapi kedua perusahaan memiliki sumber daya yang cukup untuk merekrut programmer sebanyak yang diperlukan untuk mengerjakan kode mereka menggunakan teknologi yang dipilih.

Omong-omong, menarik untuk dicatat bahwa GitLab, sejak 2016, menggunakan Vue .

Alat itu bukan hal utama. Yang utama adalah menyelesaikan masalah


Ada perasaan bahwa dalam perdebatan sengit tentang teknologi mana yang lebih baik dari yang lain, mereka melupakan masalah yang sangat penting, yaitu apa yang sebenarnya paling mampu memecahkan masalah tertentu, untuk membantu mencapai tujuan tertentu.

Jika tujuannya adalah kecepatan pengembangan dengan anggaran kecil, maka mungkin yang terbaik adalah melihat ke arah React. Jika Anda memerlukan sesuatu yang lebih ambisius, holistik dan beradaptasi dengan baik untuk berbagi, seperangkat alat yang memungkinkan, karena kebutuhan untuk studi yang cukup serius dari set alat ini oleh pengembang, untuk membuat solusi yang lebih andal, maka Anda harus memilih Angular. Tetapi bagaimana jika Anda perlu mengambil yang terbaik dari dunia React and Angular? Para pendukung Vue pasti akan melihat dalam situasi ini contoh yang baik dari kerangka kerja favorit mereka.

Popularitas Angular tidak jatuh seiring waktu. Sebaliknya, kita dapat berbicara tentang mengubah fokus perhatian. Sementara React adalah “menggerogoti” “sepotong kue” yang lebih besar daripada ekosistem pengembangan Angular, Angular, terlepas dari pertumbuhan React, masih tidak berpikir untuk kehilangan kekuatan.


Informasi tentang hasil pencarian dari Google Trends selama 5 tahun. Garis Merah - Sudut, Biru - Bereaksi

Selain itu, perlu dicatat bahwa Angular, bisa dibilang, praktis membangun kembali komunitasnya setelah kerangka kerja ini berevolusi dari AngularJS menjadi apa yang ada saat ini. Meskipun kerangka kerja ini memiliki banyak pengikut, mereka semua, setelah rilis Angular 2, harus belajar kembali.

Jika kita menganalisis situasi dengan mengingat hal ini, ternyata Angular, dalam bentuk yang dikenal saat ini, tiga tahun lebih muda daripada React. Versi asli Angular, karena perbedaannya dari Angular 2+, sebenarnya bisa diabaikan.

Ringkasan


Jika Anda adalah pengembang pemula yang mencoba menemukan jawaban untuk pertanyaan tentang apa yang perlu ia pelajari, disarankan untuk tidak terlalu memikirkannya. Lagipula, pada akhirnya, itu turun ke JavaScript biasa, jadi mungkin lebih baik untuk pertama-tama mempelajari teknologi dasar, dan kemudian berurusan dengan segala macam "hal menarik".

Apapun teknologi yang Anda pilih, Anda akan berhadapan dengan ide-ide yang berlaku untuk teknologi lain yang membuatnya lebih mudah untuk ditangani. Yang paling penting adalah untuk benar-benar mempelajari kerangka kerja pertama Anda dengan sangat baik, dan belajar untuk melakukan sesuatu dengannya yang melampaui aplikasi ToDo yang terkenal.

Berusaha keras untuk menjadi seorang pengembang yang berpengalaman dalam paradigma pemrograman, jangan mencoba terlalu terikat pada satu hal. Antara lain, mempelajari arsitektur aplikasi, desain dan pengembangan komponen, memahami fitur perilaku aliran data dalam aplikasi, dan menguasai teknologi untuk mengelola keadaan aplikasi.

Kemampuan untuk bebas, terlepas dari platform spesifik, menggunakan pengetahuan dan keterampilan semacam ini - inilah yang membedakan programmer pemula dan programmer level menengah dari spesialis kelas atas.

Pembaca yang budiman! Pertimbangan apa yang Anda ikuti ketika memilih alat pengembangan front-end untuk proyek Anda?

Source: https://habr.com/ru/post/id450666/


All Articles