Harap diingat bahwa ini bukan yang lain 'Berapa banyak [ masukkan bahasa pemrograman di sini ] yang harus saya ketahui sebelum pindah ke [ masukkan kerangka kerja di sini ]?' Yang ingin saya ketahui adalah betapa bermanfaatnya mempelajari konsep-konsep lanjutan dari bahasa pemrograman ketika niat Anda adalah untuk sangat bergantung pada kerangka kerjanya sebagian besar waktu. Jadi misalnya saya sudah mulai menggunakan jQuery dan pertama kali meluangkan waktu untuk benar-benar memahami konsep inti Javascript. Selain itu saya memiliki beberapa buku di luar dasar-dasar (Rahasia Ninja Javascript misalnya) di rak yang benar-benar mempelajari bahasa. Ketika saya membaca halaman-halamannya, saya menemukan bahwa sebagian kecil dari itu tidak terbawa ke jQuery karena niat utama saya adalah manipulasi DOM.
Hal yang sama dapat dikatakan untuk Ruby dan RoR. Akankah buku-buku ini menjadikan saya programmer yang lebih baik secara keseluruhan? Mungkin. Bisakah topik ini membantu saya menjadi jauh lebih baik dengan kerangka kerjanya? Itulah yang saya sulit mengerti.
sumber
Jawaban:
Ini lebih penting untuk belajar bahasa daripada untuk mempelajari kerangka. Pelajari bahasa dengan baik, dan Anda akan menggunakan kerangka kerja dengan baik.
Dalam urutan kepentingan (paling penting pertama):
sumber
Tentu saja. Pertanyaannya adalah "apakah manfaat itu sepadan dengan investasi waktu?". Saya berpendapat bahwa selalu demikian, tetapi tentu saja itu tergantung pada Anda dan lingkungan Anda karena mereka akan memengaruhi manfaat (berapa banyak lingkungan Anda akan dapatkan dari pengetahuan Anda) versus biaya (berapa lama waktu yang Anda butuhkan untuk belajar, dan seberapa baik Anda menyerap pengetahuan).
Mengapa saya berpendapat itu bermanfaat? Karena Anda tidak akan selalu berada dalam kerangka kerja. Bahkan kerangka kerja yang paling komprehensif masih merupakan bagian dari ekosistem yang lebih besar. Anda tidak dapat membuat panggilan jQuery sendirian. Anda perlu tahu cara mengikat skrip ke halaman, bagaimana skrip berjalan, bagaimana skrip berinteraksi dengan hal-hal yang ingin Anda lakukan. Itu mungkin "dasar" dalam buku Anda, tetapi saya selalu menemukan bahwa pengetahuan yang lebih dalam membantu saya membuat kode lebih cepat, dan tentunya men-debug masalah lebih cepat. Kerangka atau tidak.
Selain itu, dunia nyata memiliki kebiasaan buruk mengganggu para programmer. Tentu, tugas Anda hari ini mungkin untuk melakukan manipulasi DOM, tetapi besok Anda mungkin perlu memasang beberapa proyek SWFO. Memiliki fondasi yang baik akan membuat Anda lebih mudah menyesuaikan diri dengan perubahan lingkungan.
Dan terakhir, meskipun Anda hanya ingin melakukan manipulasi DOM, sangat sedikit programmer yang bekerja sendiri lagi. Teman sebaya Anda kemungkinan akan melakukan hal-hal yang lebih maju dengan bahasa pemrograman. Anda harus dapat membaca kode itu, atau paling tidak, tidak mengacaukannya.
sumber
Mungkin perlu sedikit keseimbangan dalam jumlah yang harus Anda pelajari. Ini tidak semua atau tidak sama sekali, jadi sediakan waktu sebanyak mungkin di dalamnya. Anda harus bertanya pada diri sendiri risiko apa yang ingin Anda terima dengan mengandalkan kerangka kerja.
Sangat bagus jika semua yang Anda butuhkan hanyalah menjalankan dan menjalankan Produk Minimum yang Layak. Tidak akan ada kinerja besar atau kesulitan yang rumit. Ini mengasumsikan Anda memilih kerangka kerja yang dapat menangani apa yang sedang Anda coba bangun.
Di sisi lain dari spektrum adalah jika Anda bekerja pada aplikasi yang cukup besar / kompleks dan Anda menemukan sesuatu yang tidak ditangani oleh kerangka kerja tersebut. Bukan masalah besar, jadi Anda akhirnya harus belajar lebih banyak JavaScript. Anda harus menghabiskan waktu itu untuk itu jika Anda mempelajarinya sejak awal. Tetapi apakah Anda punya waktu? Apakah Anda dapat mempelajari dasar-dasar di bawah tekanan karena tidak menyelesaikan sesuatu tepat waktu? Tidak ada yang bisa menjawabnya.
Menyeimbangkannya mungkin merupakan taruhan terbaik. Tenangkan dirimu. Pelajari beberapa JavaScript jika Anda bisa. Anda mungkin tidak menjadi ahli, tetapi itu bukan alasan untuk mengabaikannya. Kerangka kerja dibuat oleh orang-orang yang perlu menyelesaikan masalah yang mirip dengan Anda, tetapi tidak persis seperti Anda.
sumber
Suatu area umum yang menderita menggali dalam kerangka (s) sebelum mengetahui bahasa inti dengan baik adalah kinerja. Ini berlaku untuk semua bahasa / platform ( Hibernate n +1 memilih dll). Berikut banyak dari kiat JQuery dan trik yang mengandalkan (antara lain) pada pengetahuan yang baik dari bahasa inti dalam kaitannya dengan kinerja:
sumber
Saya pikir pertanyaan Anda didasarkan pada premis yang salah. Anda mulai dengan mengatakan bahwa Anda berencana untuk bergantung pada suatu kerangka kerja, dan kemudian Anda bertanya apakah itu bermanfaat untuk belajar di luar kerangka kerja. Jadi tentu saja Anda sampai pada kesimpulan itu tidak layak. Tapi premis itu cacat. Anda seharusnya tidak fokus menggunakan kerangka kerja. Anda harus fokus menggunakan alat yang tepat untuk pekerjaan yang tepat . jQuery sangat bagus dalam tugas-tugas tertentu, dan begitu pula Ruby on Rails atau kerangka kerja lainnya. Tetapi mereka tidak selalu merupakan alat yang tepat untuk semuanya. Mempelajari bahasa di luar kerangka kerja, dan bahkan belajar tentang kerangka kerja lain atau pekerjaan mikro atau alat lain, membantu Anda mengidentifikasi kapan kerangka kerja Anda menghalangi Anda lebih dari itu membantu, dan itu memberi Anda kemampuan untuk mencari yang lain,
Jadi jawaban saya adalah: ya, itu sangat berharga karena kerangka kerja bukanlah alat yang tepat untuk setiap pekerjaan.
sumber