Có vẻ như hầu hết đều cho rằng developer dùng jQuery thì chỉ biết đến các method của nó.
Vấn đề mình nghĩ là nằm ở chỗ, các khóa học, tài liệu jQuery, đều chỉ hướng dẫn cách dùng method của jQuery, và mặc định là người học đã biết cơ bản về javascript.
Mình đã sai khi quá chú tâm vào cái tiêu đề “đâu là con đường nhanh nhất”, dù sao thì nếu đã làm việc với javascript cũng sẽ sớm ham muốn jQuery thôi.
Bạn phải nêu rõ ra là con đường dẫn đến đâu. Nếu thực sự chỉ học JS để phát triển frontend thì học jquery cũng được. Nhưng đến lúc tự phát triển 1 lib riêng, dùng các framework khác hoặc phát triển backend thì sẽ thấy 1 điều rằng “sao nó hổng giống jQuery gì hết trơn” và lúc đấy kiến thức của bạn về JS chỉ loanh quanh mấy vòng lặp, câu điều kiện,…Điều này giống với việc bạn tập xe máy khi chưa biết đi xe đạp vậy
thì ý em là có cần thiết phải học javascrip hay không thôi vì có ông anh pảo học javascrip tương đối lâu vầ mất thời gian mà kết quả về nó thì không được hay lắm
Đồng ý với bạn về định nghĩa javascript và jQuery, nhưng chức năng của nó mà bạn nói thế chưa chính xác lắm, tương tác website thì thậm chí là chỉ dùng các method của jQuery và hàng nghìn plugin là đủ dùng. Bằng chứng là hầu hết các theme lung linh, nuột nà trên themeforest cũng chỉ dùng jQuery và các plugin của nó đấy thôi.
… trừ khi bạn đang nói đến các webapp, nó sẽ cần đến nhiều kỹ thuật lập trình hướng đối tượng nâng cao trong javascript mà jQuery không đề cập sâu trong các bài hướng dẫn. Nói như thế không có nghĩa là jQuery không nên dùng trong webapp. jQuery là thư viện nên bạn đừng tách nó ra khỏi javascript.
Dành cho newbie chưa rõ nghĩa của từ thư viện jQuery: Khi bạn làm nhiều dự án javascript trong thời gian dài, sẽ có nhiều đoạn mã thường xuyên lặp lại, bạn viết chúng thành các method chung để dùng cho các dự án kế tiếp - đó sẽ là thư viện javascript của riêng bạn. Thư viện jQuery cũng ra đời như thế, nhờ khả năng thao tác mạnh mẽ với DOM nên nó dần trở thành thư viện javascript phổ biến nhất.
Người ta tạo ra thư viên jQuery là vì javascript có những method dài dòng, quan trọng là nó có nhiều điểm khác nhau trên các trình duyệt khác nhau và ngay cả với phiên bản cũ của trình duyệt đó. Những cái đã tốt, đã tuyệt vời trong javascript thì họ vẫn giữ lại, đó là cái bạn nói.
Có lẽ là bạn chưa xem link này: http://api.jquery.com/Types/
Thư viện thì vẫn là thư viện. Thế Thư viện là gì? Là để cung cấp thêm chức năng hữu ích cho một ngôn ngữ lập trình và nó phát triển dựa trên ngôn ngữ lập trình. Okay?
Tuyệt vời gì tuyệt vời, ngon gì thì ngon, vẫn chỉ là thư viện không phải ngôn ngữ lập trình. Thư viện là thư viện, nó thêm gì thì thêm, nó bớt gì thì bớt, và cái jQuery nó được viết từ Javascript, cấu trúc điều khiển là Javascript, cấu trúc lặp là Javascript, …
$(document).ready(function ()) {
alert('xxx');
}
jQuery nó sinh ra cái document à? jQuery nó tạo ra kiểu anonymous function à?
Không học Javascript sao biết được document là cái gì? hàm ko tên là hàm gì? tạo như thế nào? …etc
jQuery là thư viện được tạo ra từ Javascript và cung cấp nhiều chức năng hữu ích trong việc xử lý DOM, xử lý Ajax …
Biết Javascript cơ bản rồi, thích tìm hiểu, học thư viện gì thì học, Zepto, jQuery, Prototype, VueJS, ReactJS, AngularJS… rồi thậm chí cả framework, Backbone, Ember, MeteorJS, hay thậm chí NodeJS …
Cũng giống như biết C tẹo rồi, thích code WIndows thì học WIndows API, thích code Linux thì Linux Kernel API, thích code crossplatform, thì có thể học Gtk+, Qt+, …
quay lại chủ thớt, nếu mới bắt đầu thì học Javascript trước để biết thế nào là Javascript, code tàm tạm nhìn mặt chữ cho quen, biết tạo thư viện nhỏ, tính toán, so sánh, học các đối tượng javascript tương tác cơ bản, biết chút về query DOM, biết chút về gọi Ajax, vừa vừa tầm tay rồi…thích học cái gì thì học nếu không có mục đích.
Học thêm một số thư viện phổ biến hay sử dụng: như jQuery, và một số plugins nổi tiếng của nó như Lightbox, …
Học thêm các thư viện tạo mô hình MVC hay MVVM: BackboneJS, ReactJS, AngularJS, KnockoutJS…
Học thêm các mô hình full stack: NodeJS, SailJS, MeteorJS, EmberJS,…
… ứng dụng Javascript còn nhiều.
Không có mục đích thì, thích học hay làm kiểu gì thì tuỳ, thích sao thì làm thế.
Còn có mục đích, ví dụ như:
Học để làm web MVC, thì học mấy cái ở trên.
Học để làm nhúng: NodeJS, Ardx, Johny-Five…
Học để làm plugins bán trên Themeforest: học jQuery…
Cái này mình đã nói ở trên, học jQuery không phải là chỉ học các method của nó.
Chính xác, ngay cả ở mặt câu chữ, tuy nhiên bạn bỏ qua việc thư viện cũng có các đặc tính của ngôn ngữ lập trình, bởi vì về bản chất nó là javascript.
Chính xác mà nói thì: Khi bạn hiểu một ngôn ngữ lập trình rồi thì bạn sẽ thuận lợi khi học các ngôn ngữ lập trình khác, đâu phải gán ghép riêng javascript.
Ví dụ: Tìm điểm chung, kế thừa của javascript cho jQuery và AngularJS?
eo, cái topic này vẫn còn tiếp diễn ak. tưởng đã dừng rồi chớ.
Mình không muốn đi lang man cho lắm. chỉ cần tập trung vào câu hỏi của chủ topic @Nguyen_Thang thôi.
“Jquery và javascrip đâu là con đường nhanh nhất” -> mình cho rằng câu hỏi này là không chính xác. Không thể nào so sánh 1 Ngôn ngữ lập trình vs 1 Thư viên hỗ trợ lập trình .
Bạn có thể so sánh 2 ngôn ngữ lập trình or 2 thư viện. Như vậy sẽ chính xác hơn.
Hãy nói về mục đích của bạn là gì. Mọi người sẽ có câu trả lời chính xác cho bạn. VD: nếu bạn muốn học sử dụng JS vào framework javascript, … hay chỉ cần xử lý DOM, Event nhanh gọn.