Tại sao chúng ta sử dụng javascript thay vì java?

Tôi biết tôi không phải là người duy nhất có rất nhiều câu hỏi về những chủ đề này. Cho dù bạn là người mới trong lĩnh vực phát triển web hay bạn cần hợp tác chặt chẽ với các nhà phát triển, tất cả đều có thể trở nên khá choáng ngợp

Làm việc với các nhà phát triển hàng ngày đã trở thành hiện thực của tôi trong một thời gian và tôi đang bắt đầu nắm vững các khái niệm từng khiến tôi bối rối.

Vì vậy, tôi muốn sử dụng bài đăng này để trả lời những câu hỏi này

Ngay cả đối với các nhà phát triển có kinh nghiệm, thật tuyệt khi dừng lại một giây và nhớ các công cụ bạn đang sử dụng đến từ đâu và tại sao bạn lại sử dụng chúng

Vì vậy, hãy làm điều này

JavaScript là gì (theo thuật ngữ của giáo dân)

Khi bạn chưa quen với điều gì đó, bạn thường tìm kiếm các định nghĩa và kết thúc bằng Wikipedia. Trong trường hợp JavaScript, bạn có thể nhận được nhiều câu hỏi hơn những gì bạn đưa ra

Yuuup, tôi bị lạc. ¯\_(ツ)_/¯

Bạn sẽ nghe và đọc rất nhiều rằng đó là ngôn ngữ lập trình phía máy khách, điều đó đúng. Nhưng nó cũng hơi nhỏ so với những gì JavaScript thực sự là ngày nay. Nhưng chúng ta sẽ quay lại vấn đề này sau

Hiện tại, hãy nói đơn giản rằng JavaScript là một công cụ để các nhà phát triển thêm tính tương tác vào các trang web

Hãy xem, trình duyệt của bạn cần ba điều để cho phép bạn sử dụng nội dung này

  • HTML cấu trúc nội dung

  • CSS tạo kiểu cho nó

  • JavaScript làm cho nó trở nên sống động

Điều này làm cho mọi thứ nghe có vẻ đơn giản, nhưng tin tôi đi, còn nhiều điều hơn thế nữa. Vì vậy, hãy bắt đầu suôn sẻ, bằng cách quay ngược thời gian

Một chút về lịch sử

Để hiểu chúng ta đang ở đâu hôm nay và chúng ta sẽ đi đâu, trước tiên chúng ta cần hiểu đầy đủ chúng ta đến từ đâu. Đối với JavaScript, câu chuyện là một con đường dài và gập ghềnh

1995 là nơi nó bắt đầu. Trong văn phòng của Netscape nơi phiên bản JavaScript đầu tiên ra đời. 1995… hãy dành một chút thời gian để nghĩ về sự khác biệt của trang web vào thời điểm đó. Tôi ba tuổi; . Bản thân Netscape là một ký ức rất xa vời

Tuy nhiên, vào thời điểm đó, Netscape's Navigator là một trong những trình duyệt web phổ biến nhất. Chính vì hỗ trợ mà JavaScript đã được tạo ra, như một ngôn ngữ đồng hành với Java. Việc Netscape muốn một ngôn ngữ “trông giống như Java” đã loại trừ nhiều ngôn ngữ hiện có khác có thể đã được sử dụng để chạy trình duyệt (Python, Tcl, Scheme, v.v. )

Trước đó, web hoàn toàn tĩnh, được hỗ trợ bởi HTML & CSS đơn giản. JS mang lại sự năng động

Mục tiêu ban đầu với ngôn ngữ lập trình mới đó là biến web thành một nền tảng ứng dụng toàn diện, nghĩa là JavaScript sẽ chạy trên cả máy khách và máy chủ. Tuy nhiên, đó không phải là một thành công hoàn toàn vì phải mất nhiều năm để được coi là ngôn ngữ phụ trợ một cách nghiêm túc. Nhưng nó nhanh chóng phát triển mạnh trên giao diện người dùng, trở thành ngôn ngữ lập trình tiêu chuẩn của web

Ngay cả sau cái chết của Navigator, nó cuối cùng đã được áp dụng bởi tất cả các trình duyệt web thành công, từ Explorer đến Firefox và Chrome

Mặc dù vậy, JavaScript được sinh ra một cách vội vàng và nhiều điều kỳ quặc sẽ gây hại cho việc áp dụng ngôn ngữ trong những năm đầu của nó. Tuy nhiên, một số tính năng mạnh mẽ của nó là một phần của nó kể từ khi thành lập. Chúng sẽ định nghĩa JS và cho phép nó phát triển

Bước tiến lớn tiếp theo sau khi phát hành công khai là tiêu chuẩn hóa ECMA, tiêu chuẩn này đã trở thành “quy ước” đằng sau JavaScript. Nó đưa ngôn ngữ này đến với nhiều đối tượng hơn và cho phép những người triển khai tiềm năng khác, như Microsoft, có tiếng nói trong quá trình phát triển của nó

Không đủ lịch sử cho bạn?

Tại sao web cần nó?

Cho đến thời điểm này, một câu hỏi có thể dính là

Tại sao Netscape cần một ngôn ngữ hoàn toàn mới cho web, Java không đủ sao?

Nhận thức tại thời điểm đó là Java không phù hợp với toàn bộ đối tượng có khả năng áp dụng phát triển web, chẳng hạn như người viết kịch bản, người nghiệp dư và nhà thiết kế. Nó chỉ là quá lớn cho vai trò

Với sự xuất hiện của JavaScript, có thể đáp ứng các đối tượng khác nhau. 1) người viết thành phần và chuyên gia cấp doanh nghiệp với Java và 2) người viết kịch bản & nhà thiết kế với JavaScript. Nhóm thứ hai mà chúng ta cũng có thể gọi, theo thuật ngữ nhà phát triển web hiện đại, nhà phát triển giao diện người dùng

Cái tên JavaScript xuất phát từ nỗ lực thúc đẩy làn sóng phổ biến của Java và tăng tốc độ áp dụng. Ngày nay, bạn sẽ không tìm thấy nhiều điểm tương đồng giữa cả hai ngôn ngữ

Như tôi đã đề cập, nó cũng mang lại các tính năng động cho web. điều đó có chính xác?

  • tự động hoàn thành

  • Đang tải nội dung hoặc dữ liệu mới lên trang mà không cần tải lại trang

  • Hiệu ứng cuộn qua và menu thả xuống

  • Hoạt ảnh các thành phần trang như mờ dần, thay đổi kích thước hoặc định vị lại

  • Phát âm thanh và video

  • Xác thực đầu vào từ các biểu mẫu

  • … hơn rất nhiều

JavaScript là ngôn ngữ kịch bản được chèn trực tiếp vào HTML của trang. Đây là ngôn ngữ lập trình duy nhất thuộc loại này mà các trình duyệt web có thể hiểu được. Các trình duyệt có thể đọc Javascript, giải thích nó và sau đó chạy chương trình, tạo ra trải nghiệm phía máy khách mạnh mẽ

Kể từ năm 2017, WebAssugging cũng được hỗ trợ bởi các trình duyệt hiện đại. Đó là một loại ngôn ngữ mới được thiết kế để chạy cùng với JavaScript

Nó đạt được trạng thái này bởi vì nó mở, được tiêu chuẩn hóa và quan trọng nhất, cho dù bạn có đồng ý hay không, một ngôn ngữ rất tốt. Nó rất phù hợp với web với tính năng động và tích hợp chặt chẽ với DOM

JavaScript cũng tương thích với các ngôn ngữ khác. Điều này cực kỳ quan trọng vì các máy chủ web chạy trên các ngôn ngữ khác nhau cho dù đó là PHP, Python, Ruby, Java hay. MẠNG LƯỚI. Vì JavaScript chạy trong trình duyệt được tách rời 100% khỏi cách các trang web HTML được tạo nên người dùng sẽ luôn có trải nghiệm phong phú giống như cách JS hoạt động, bất kể ngôn ngữ phía máy chủ được sử dụng

Bạn muốn có cảm nhận thực sự về những gì JavaScript đang làm cho web?

Tại sao JavaScript lại quan trọng như vậy?

Có chuyện gì mà ầm ĩ thế, anh bạn?

Ngay cả khi JavaScript đã là ngôn ngữ của trình duyệt trong một thời gian dài, thì cũng chưa được bao lâu kể từ khi nó nhận được (gần như) sự công nhận phổ biến từ cộng đồng phát triển. Ý tôi là, ngay cả Brendan Eich, được coi là cha đẻ của JavaScript, đã có những lời khá gay gắt về JS vào năm 2008

“Nhiều lời nguyền [JavaScript], bao gồm cả tôi. Tôi vẫn nghĩ về nó như một đứa con yêu nhanh chóng của C và Self. Tiến sĩ. Lời nói của Johnson đến với tâm trí. “Phần tốt không phải là bản gốc, và phần gốc là không tốt. ””

Tuy nhiên, chúng ta đang ở đây, hơn mười năm sau và JavaScript hiện diện hơn bao giờ hết. Ý tôi là, nó ở khắp mọi nơi

Bạn gần như không thể tìm ra cách làm việc với JavaScript theo cách này hay cách khác nếu bạn là nhà phát triển

Đừng tin lời tôi, nó là ngôn ngữ lập trình phổ biến nhất cho đến nay (vì bạn không thể làm được gì nhiều với HTML & CSS mà không có JS)[Source]

Tại sao vậy?

Để có câu trả lời, chúng ta cần nhìn vào hệ sinh thái tuyệt vời được xây dựng trên đó. Chúng ta có một nghịch lý “con gà hay quả trứng” hay ở đây

Chúng ta cũng có thể cho rằng nguồn gốc của “cuộc cách mạng JS” này là do việc phát hành ECMAScript 6 (hoặc ECMAScript 2015). Bản cập nhật này đã thêm cú pháp mới để viết các ứng dụng phức tạp hơn và nhiều tính năng khác sẽ xác định kỷ nguyên JavaScript tiếp theo

Dù bằng cách nào, cộng đồng sôi động này và sự phát triển của web đã chiếm vị trí của JavaScript mà nó chưa bao giờ được hình thành.

Ngôn ngữ của giao diện người dùng mạnh mẽ hiện nay

Trong một thời gian dài, các trang web chủ yếu được cung cấp bởi các CMS dựa trên PHP, chẳng hạn như WordPress. Mã phía máy chủ đang xử lý phần chính của logic. Tuy nhiên, mọi thứ đang thay đổi—bạn có thể đã nghe nói rằng các trang web "tĩnh" đang quay trở lại. Tuy nhiên, chúng không giống như các trang web được tạo tĩnh của thập niên 90 mà tôi đã đề cập trước đó

Các trình duyệt hiện đại giờ đây có khả năng tạo ra những tính năng tương tác và hoàn toàn năng động này. Tuy nhiên, một điểm đặc biệt mà họ chia sẻ với tổ tiên của họ là sự trừu tượng của sự phát triển phụ trợ. Logic được xử lý phía máy khách, trực tiếp trong trình duyệt, nhờ JavaScript

Xu hướng web hiện đại được sinh ra từ mô hình mới này, giống như JAMstack. Tôi đã viết một bài đầy đủ về chủ đề này mà tôi mời bạn đọc ở đây

Một số ứng dụng web nổi bật nhất hiện nay được xây dựng bằng JS. Hãy nghĩ về Facebook, Gmail, Twitter và nhiều hơn nữa. Nếu chúng tôi sử dụng Facebook làm ví dụ, JavaScript cho phép cập nhật trạng thái và hầu hết tương tác của người dùng. Nó sẽ không có nhiều hấp dẫn nếu không có nó

Những gã khổng lồ công nghệ này thực sự đã xây dựng các khung JavaScript của riêng họ và những khung này hiện cho phép hàng nghìn nhà phát triển xây dựng các ứng dụng web của riêng họ. Bạn có thể đã nghe nói về Angular, được hỗ trợ bởi Google và React, được hỗ trợ bởi FB. Tôi cũng phải đề cập đến Vue ở đây, ngay cả khi không được hỗ trợ bởi một cường quốc công nghệ, vẫn hoàn thành bộ ba khung JS quan trọng

Ngoài việc giảm lượng thời gian và nỗ lực cần thiết để phát triển các ứng dụng và trang web dựa trên JS, các khung này đã giúp định hình trải nghiệm web mới. Ví dụ: Ứng dụng một trang (SPA). SPA là một trang web tương tác với người dùng bằng cách tự động viết lại một trang trong trình duyệt thay vì tải toàn bộ trang mới từ máy chủ, khiến chúng hoạt động giống ứng dụng máy tính để bàn hơn

Ngôn ngữ của… rất nhiều thứ

Có, mục đích sử dụng chính của JavaScript có thể vẫn là để phát triển web giao diện người dùng. Sự thật là, vào năm 2019, nó còn làm được nhiều hơn thế

→ Mã phía máy chủ

Đã có những nỗ lực không thành công để làm cho JavaScript chạy phía máy chủ ngay từ đầu. Nhiều người nghĩ rằng nó sẽ không bao giờ trở thành ngôn ngữ phụ trợ ổn định cho đến khi Node xuất hiện. js

Ngày nay, thời gian chạy JS này là một công cụ phổ biến để cung cấp năng lượng cho các máy chủ web. Điều này có nghĩa là các nhà phát triển JS có thể sử dụng Node. js để viết cả mã phía máy khách và phía máy chủ bằng JavaScript mà không cần dựa vào các máy chủ web bên ngoài

Tôi nghiên cứu sâu hơn về Node. js và JavaScript làm ngôn ngữ phía máy chủ trong bài đăng trên blog này

→ Ứng dụng di động

Trước đây, bạn sẽ cần các ngôn ngữ khác để phát triển các ứng dụng di động tuyệt vời, như Objective-C cho iOS hoặc Java cho Android. Tuy nhiên, giờ đây việc sử dụng JavaScript để kết nối với API di động dễ dàng hơn trước. Điều này có nghĩa là bạn có thể sử dụng các tính năng của thiết bị di động, chẳng hạn như máy ảnh hoặc bản địa hóa để xây dựng các ứng dụng dựa trên JS

Một lần nữa, điều này đã mở ra cơ hội phát triển ứng dụng dành cho thiết bị di động cho nhiều nhà phát triển hơn, những người không cần phải học một ngôn ngữ mới nữa

Không chỉ điều này, mà việc sử dụng JavaScript trong các ứng dụng dành cho thiết bị di động thậm chí còn mở ra những khả năng mới để làm cho chúng hoạt động hiệu quả hơn nữa. Hãy xem Progressive Web Apps (PWA) chẳng hạn. Kết hợp những gì tốt nhất của web và những ứng dụng tốt nhất, PWA cải thiện độ tin cậy, hiệu suất và mức độ tương tác. Chúng kích hoạt các chức năng mới ấn tượng như điều hướng ngoại tuyến

Các framework đã nói ở trên như Vue. js và React ngày càng được sử dụng nhiều hơn để tạo PWA. Bạn nên kiểm tra xem nó ra

→ Tích hợp API

Các nhà phát triển có thể sử dụng JavaScript để lấy dữ liệu từ các nguồn khác và hiển thị nó trên trang web của riêng họ. Một khái niệm được quảng bá nhiều hơn bao giờ hết trong phát triển web là tính mô đun—sử dụng các công cụ khác nhau để thực hiện các tác vụ cụ thể. Chà, giờ đây thật dễ dàng để xây dựng các loại ngăn xếp này nhờ API và JavaScript

Ví dụ: tại Snipcart, giỏ hàng của chúng tôi được thêm vào trang web của người dùng bằng JavaScript

Tìm hiểu thêm về API và cách chúng hoạt động trong phần này

Vậy, tại sao lại sử dụng JavaScript?

Đây là tất cả khá tuyệt vời. Viva JavaScript. Đúng?

Nhưng khoan đã, toàn bộ câu chuyện này không thành vấn đề nếu nó không mang lại lợi ích cho nhà phát triển và người dùng cuối

Lợi ích của JavaScript

  • Việc thực thi logic phía máy khách mang lại trải nghiệm người dùng nhanh hơn. Với mã chạy trực tiếp trong trình duyệt, nhu cầu gọi máy chủ được trừu tượng hóa, do đó giảm thời gian tải. Ngay cả khi có sự hiện diện của máy chủ, thực tế là JS không đồng bộ có nghĩa là nó có thể giao tiếp với máy chủ ở chế độ nền mà không làm gián đoạn tương tác người dùng diễn ra ở giao diện người dùng

  • Ngay từ đầu, JavaScript đã mang tính tương tác của giao diện người dùng lên web. Nó hiện làm điều tương tự cho tất cả các loại ứng dụng, giúp phát triển UX hấp dẫn nhất. Ngày nay, các framework như Vue. js đang đưa hiệu ứng chuyển tiếp và hoạt ảnh lên một tầm cao mới

  • JavaScript đứng sau bất kỳ thiết kế web đáp ứng tốt nào. Ngày càng nhiều, các nhà phát triển cần điều chỉnh thiết kế của họ trên nhiều trình duyệt và thiết bị. Kết hợp HTML5, CSS3 & JavaScript, họ có thể làm như vậy trong một cơ sở mã duy nhất

  • Đối với các nhà phát triển, JS rất dễ học và nhanh chóng bắt đầu phát triển tích cực. Cú pháp của nó rất dễ dàng và linh hoạt cho người mới. Nó cũng đơn giản hóa việc phát triển các ứng dụng phức tạp bằng cách cho phép các nhà phát triển đơn giản hóa thành phần của ứng dụng. Nhiều khung & gói ngoài kia cũng giúp giảm bớt cuộc sống của các nhà phát triển ở một mức độ nào đó

  • Nếu bạn chưa hiểu điều này, thì JavaScript cực kỳ phổ biến. Nếu sự nổi tiếng không phải lúc nào cũng bằng chất lượng trong cuộc sống nói chung, thì ít nhất nó cũng có nghĩa là một điều quan trọng. bạn sẽ tìm thấy giải pháp cho mọi vấn đề trong cộng đồng. Trong phát triển web, đó không phải là một chi tiết không đáng kể. Nếu bạn là người cần thuê lập trình viên, thì đó cũng là một điểm cộng lớn, vì nguồn ứng viên rất lớn

Điều này có nghĩa là JS là hoàn hảo?

Những cạm bẫy tiềm ẩn của JavaScript

  • Cho đến tận ngày nay, vẫn chưa rõ các công cụ tìm kiếm có thể thu thập dữ liệu JavaScript ở mức độ nào. Mặc dù Google tuyên bố rằng hầu hết là như vậy, nhưng bạn không nên mạo hiểm nếu không muốn đối mặt với các vấn đề về khả năng thu thập dữ liệu/SEO. Vấn đề này không phải là không có giải pháp vì có nhiều cách để xử lý JavaScript theo cách mà trình thu thập thông tin nhìn thấy

  • Có điều gì đó giống như quá nhiều JavaScript. Làm phồng các dự án của bạn với JS về lâu dài sẽ gây bất lợi cho bạn vì cuối cùng nó sẽ gây ra các vấn đề về hiệu suất. Cách để tránh điều này là chỉ chèn JavaScript khi cần thiết và không chèn JavaScript ở mọi nơi như chúng ta có thể làm

  • Hàng nghìn gói cấu thành hệ sinh thái JS cho phép các nhà phát triển làm việc nhanh chóng mà không cần phát minh lại bánh xe cho mỗi tác vụ mới. Tuy nhiên, chúng cũng gây ra cái mà một số người gọi là “địa ngục phụ thuộc”. ” Bạn cần học cách giải quyết những phụ thuộc thường cần thiết này để chúng không trở thành rắc rối cho bạn và những người sử dụng dự án của bạn

Điều gì sắp xảy ra với JS?

Điều này đưa ra lời giải thích toàn diện về lý do tại sao JavaScript lại quan trọng như vậy trong cộng đồng phát triển ngày nay—và tại sao bạn nên trau dồi kiến ​​thức về JS của mình

Bây giờ, tôi muốn để lại cho bạn một suy nghĩ về những gì chúng ta nên mong đợi trong tương lai gần của JavaScript. Bởi vì tin tôi đi, nó sẽ không đi đâu cả, dù bạn có thích hay không. ;)

JavaScript luôn phát triển và hệ sinh thái của nó cũng vậy. Cá nhân tôi nghĩ rằng tương lai bắt đầu với ít công cụ mới hơn được tạo ra và những người chơi lớn sẽ trưởng thành hơn và được áp dụng rộng rãi. Chúng tôi đã quan sát điều này trong lĩnh vực khung JS, nơi React và Vue. js đang chiếm ưu thế

Tương tự ở các cấp độ khác nơi các công cụ được xây dựng trên các khung này. Gatsby, tiếp theo. js & Nuxt đang dần trở thành công cụ tạo trang tĩnh & PWA hàng đầu

TypeScript có lẽ cũng sẽ đóng một vai trò quan trọng trong những gì sắp tới. Siêu bộ JavaScript này đang được cộng đồng áp dụng rộng rãi vì nó cho phép JS mở rộng quy mô tốt hơn

Tương lai nắm giữ nhiều thứ trong thế giới công nghệ chắc chắn sẽ có ảnh hưởng đến sự phát triển của giao diện người dùng, chẳng hạn như Trí tuệ nhân tạo hoặc Internet vạn vật. JavaScript sẽ phải thích ứng với những thực tế mới này. Làm sao? . Bất kể, sẽ rất thú vị khi theo dõi những thay đổi này khi chúng xuất hiện

Có một điều chắc chắn rằng, nếu bạn muốn tiếp tục có liên quan trong lĩnh vực này, bạn không bao giờ nên ngừng học hỏi những điều mới

Muốn thêm?

Chúng tôi có nhiều bài đăng trên blog cấp cao về nhiều khía cạnh của JavaScript khác với những bài đăng mà tôi đã liên kết trong suốt bài viết này

Đây là một số điều bạn có thể quan tâm nếu bạn muốn tiến xa hơn trong thế giới của JS

Tôi hy vọng điều này sẽ giúp bạn hiểu rõ hơn về JavaScript là cái quái gì và tại sao ngày nay nó lại xuất hiện ở khắp mọi nơi


Nếu bạn thích bài đăng này, vui lòng dành một giây để chia sẻ nó trên Twitter. Có ý kiến, câu hỏi?

Tại sao JavaScript được sử dụng thay vì Java?

Lập trình hướng đối tượng . Cả hai ngôn ngữ đều cho phép kế thừa và đa hình – yếu tố chính của Thiết kế hướng đối tượng. JavaScript is considerably more forgiving, allowing for simple linear programming without the use of objects. Both languages allow for inheritance and polymorphism – the main staples of Object Oriented Design.

Tôi nên sử dụng JavaScript hay Java?

Nói chung, nếu bạn muốn phát triển web thì hãy chọn JavaScript . Nếu bạn đang nghĩ rằng mình có thể muốn tạo các ứng dụng Android, thì Java sẽ tốt hơn.

JavaScript hay Java được sử dụng nhiều hơn?

Theo cuộc khảo sát hàng năm của SlashData, năm 2022 đánh dấu Cuộc khảo sát thứ 10 liên tiếp xếp hạng JavaScript là ngôn ngữ lập trình được sử dụng phổ biến nhất . Java tham gia với tư cách là ngôn ngữ lập trình phổ biến thứ năm [1]. Hãy xem xét sự khác biệt, lịch sử, tính năng, cách sử dụng, ưu điểm và nhược điểm của cả Java và JavaScript.

Tại sao JavaScript được ưa thích?

JavaScript tốt hơn cho việc phát triển trang web . JS chạy trong trình duyệt trong khi Python là ngôn ngữ phía máy chủ phụ trợ . Mặc dù Python có thể được sử dụng một phần để tạo trang web, nhưng nó không thể được sử dụng một mình.