NỘI DUNG BÀI VIẾT
JavaScript là gì vậy? Xin thưa, JavaScript đã trở thành một điều gì đó gần như là hiển nhiên, khi mọi người đều sử dụng nó. Khi bạn dùng Facebook, bạn sử dụng JavaScript. Khi bạn viết một tweet bạn sử dụng JavaScript. Thật vậy, khi bạn xem nội dung trên Học JavaScript, bạn cũng đang sử dụng JavaScript. Đây chỉ là một trong số rất ít những trang web sử dụng JavaScript.
Nhưng không phải ai cũng biết JavaScript là gì và nó hoạt động ra sao. Lịch sử phát triển lâu dài, lôi cuốn của JavaScript cũng như những gì chúng ta có thể làm với JavaScript vẫn còn nhiều người chưa biết. Hãy cùng mình nhìn lại quá trình ra đời và phát triển của JavaScript, sức mạnh và những tính năng tuyệt vời của nó nhé.
JavaScript là gì?
JavaScript là một ngôn ngữ lập trình được sử dụng để tạo ra những trang web tương tác. Nó được tích hợp và nhúng trong HTML. JavaScript cho phép kiểm soát các hành vi của trang web tốt hơn so với khi chỉ có một mình HTML. JavaScript kết hợp vào HTML, chạy trên Windows, Macintosh và các hệ thống hỗ trợ Netscape khác.
Lịch sử hình thành và phát triển của JavaScript
Ban đầu, Web không hề thú bị như bây giờ.
Trở lại thời kỳ đó, chỉ có HTML, các trang web không có gì khác ngoài từ, liên kết và hình ảnh. Không có tính linh động, không thú vị, mọi thứ hoàn toàn là tĩnh. Internet phải “tiến hóa”. Và do đó, vào năm 1995, tại văn phòng của Netscape, JavaScript đã ra đời.
Hồi đó, cuộc cạnh tranh giữa hai trình duyệt là Navigator của Netscape và Internet Explorer của Microsoft diễn ra rất quyết liệt. Cả hai công ty đã nhìn thấy tiềm năng to lớn của Internet và cố gắng để tạo ra trình duyệt web, biến nó trở thành xu hướng chủ đạo.
Netscape muốn tạo ra một ngôn ngữ lập trình vừa dễ hiểu đối với những người mới bắt đầu, vừa cho phép nhà phát triển có thể kiểm soát nhiều hơn những gì xảy ra trong cửa sổ trình duyệt.
JavaScript trở thành ngôn ngữ lập trình
Được phát triển trong 10 ngày bởi Brendan Eich (mặc dù rất ngắn ngủi, nhưng vị này sau đó đã trở thành lãnh đạo của Mozilla), nó cho phép các nhà phát triển viết code theo nhiều kiểu khác nhau (hướng chức năng, hướng mệnh lệnh và hướng đối tượng) bằng một ngôn ngữ gần giống với các ngôn ngữ phổ biến khác ngày nay, như Java, C++ hay C.
Mặc dù có tên tương tự, nhưng cần phải nhấn mạnh rằng, JavaScript không liên quan gì đến ngôn ngữ lập trình Java được phát triển bởi Sun Microsystems. Thật vậy, nó ban đầu được gọi là LiveScript (tên nội bộ là Mocha), trước khi được đổi tên để tận dụng sự thành công và phổ biến của Java.
Cần lưu ý rằng, JavaScript không phải là ngôn ngữ lập trình web đầu tiên. Một trình duyệt web trước đây được gọi là ViolaWWW, chứa một ngôn ngữ kịch bản thô sơ và là tiền thân của CSS. Tuy nhiên, nó không bao giờ bắt kịp và ngôn ngữ kịch bản của nó không bao giờ thực sự trở thành một tiêu chuẩn.
Một năm sau khi JavaScript được phát hành, Microsoft đã chuyển nó sang Internet Explorer. Trong những năm tiếp theo, JavaScript trở thành một phần thiết yếu khi xây dựng web và nó được tìm thấy trên hầu hết các trang web, được hỗ trợ bởi hầu hết các trình duyệt web.
JavaScript cũng thành công hơn nữa khi trở thành ngôn ngữ cho việc phát triển trang web, ứng dụng và điện thoại. Chúng ta sẽ nói về điều này sau, trước hết sẽ đi xem xét một trong những dự án Web JavaScript quan trọng nhất là jQuery.
jQuery
JavaScript được xây dựng với mục đích không làm khó những lập trình viên không chuyên. Nhưng dù vậy, nó vẫn đi kèm với những thách thức nhất định dành cho những lập trình viên nhà nghề.
Có lẽ vấn đề lớn nhất là bản chất đa nền tảng của web. Có vô số các trình duyệt được sử dụng như Chrome, Firefox, Internet Explorer, Opera, Safari,… Mỗi cái thông dịch JavaScript theo những cách thức khác nhau và có mức độ hỗ trợ khác nhau đối với các tính năng nhất định của ngôn ngữ lập trình.
Điều này có nghĩa là các nhà phát triển phải viết code phức tạp hơn nhiều chỉ để đảm bảo trang web của họ hoạt động trên tất cả các phiên bản của tất cả các trình duyệt phổ biến.
Đó là lý do mà jQuery ra đời.
Được giới thiệu vào năm 2006 bởi John Resig, jQuery đã làm thay đổi cơ bản cách mọi người viết code JavaScript bằng cách chuẩn hóa và đơn giản hóa các tương tác, hiệu ứng động trên trình duyệt. Lần đầu tiên, các nhà phát triển có thể viết code một lần và có phương pháp chắc chắn để nó sẽ làm việc trên tất cả các trình duyệt.
Đặc biệt, jQuery còn giúp đơn giản hóa việc viết code JavaScript bằng cách thay thế các khía cạnh bất tiện, dài dòng và nguyên bản của JavaScript bằng một cái gì đó tinh tế và thanh lịch hơn.
Node.js
JavaScript có thể phát triển bên ngoài trình duyệt web, bằng chứng chính là Node.js.
Được khởi tạo vào năm 2009, Node.js là một bộ công cụ miễn phí, mã nguồn mở, đa nền tảng cho việc tạo ra những ứng dụng liên quan đến máy chủ, có hiệu suất cao, chẳng hạn như ứng dụng và máy chủ web. Trong những năm sau đó, nó đã được hàng ngàn nhà lập trình, công ty chấp nhận, bao gồm cả Groupon, LinkedIn và PayPal.
Điều làm cho Node.js trở nên đặc biệt chính là tốc độ của nó và cộng đồng các nhà phát triển rộng lớn, những người tạo nên code và mô-đun.
Đằng sau Node.js chính là engine Google V8, cũng là sức mạnh của trình duyệt Google Chrome. Đây là một trong những yếu tố thúc đẩy sự thành công của Node.js, vì nó cho phép thông dịch code JavaScript với tốc độ chóng mặt.
Ngoài ra còn có hàng ngàn mô-đun Node.js được tạo ra từ cộng đồng các nhà phát triển, giúp mở rộng chức năng của Node.js. Những gói mô-đun này được phân phối bởi NPM hoặc Node Package Manager. Đây là một ứng dụng có giao diện dòng lệnh, miễn phí, được kết hợp hoàn hảo với runtime của Node.js, cho phép bạn tích hợp các thư viện JavaScript của bên thứ ba vào code của mình.
Node.js cũng có thể được sử dujngn với các dự án Internet of Things với Tessel, một bảng giống như Arduino, chạy trên JavaScript.
Phát triển ứng dụng cho điện thoại di động
Ứng dụng cho thiết bị di động là một thị trường béo bở. Chỉ cần nhìn vào Nick D’Aloisio, người tạo ra ứng dụng Summly và được Yahoo mua lại với giá 30 triệu USD khi cậu ấy chỉ mới 17 tuổi. Hay như Rovio, với trò chơi Angry Birds đã tạo ra một thương hiệu trị giá nhiều triệu USD,…
Nếu bạn có ý tưởng tuyệt vời nào về ứng dụng di động hãy yên tâm rằng có thể tạo ra nó bằng JavaScript.
Android, iOS, Blackberry, Windows Phone đều hỗ trợ xây dựng ứng dụng gốc bằng JavaScript, có thể được phân phối trên các cửa hàng ứng dụng chính thức của từng hệ điều hành, giống như bất cứ thứ gì được xây dựng bằng Java cho Android hoặc Swift cho iOS.
Các ứng dụng di động được viết bằng JavaScript nói chung dễ phát triển hơn và có thể đánh bại các ứng dụng gốc (native app) nhờ vào chỉ số hiệu suất.
Nhưng thường thì, trong thế giới JavaScript, có những lựa chọn thay thế của bên thứ ba giúp cho việc viết ứng dụng di động nhanh và dễ dàng hơn nhiều. Chúng bao gồm PhoneGap, Titanium, Sencha, Ionic, tất cả đều cho phép viết ứng dụng một lần và đảm bảo nó sẽ hoạt động trên nhiều nền tảng di động khác nhau.
CoffeeScript
CoffeeScript làm đơn giản hóa quá trình viết code JavaScript bằng cách cho phép bạn viết một “phương thức” đơn giản hơn cho ngôn ngữ, sau đó, biên dịch hoặc chuyển đổi sang JavaScript tiêu chuẩn.
Có một số ngôn ngữ có thể biên dịch thành JavaScript, nhưng đáng chú ý nhất chính là Coffee Script.
Tính năng hấp dẫn nhất của Coffee Script là nó cho phép bạn viết code JavaScript, trong khi tránh được những phần thô của ngôn ngữ này. Mặc dù, JavaScript được phổ biến rộng rãi trên thế giới, nhưng ngôn ngữ này vẫn phải chịu những lời chỉ trích từ những đặc tính khác nhau của nó, điều này có thể là hậu quả của việc JavaScript chỉ được thiết kế trong 10 ngày.
CoffeeScript hoàn thành điều này với một cú pháp rất giống với Python và Ruby (hai ngôn ngữ nổi tiếng với khả năng dễ đọc và dễ sử dụng). Trình biên dịch CoffeeScript cũng thi hành các tiêu chuẩn code khá tốt, làm cho code của bạn dễ đọc hơn với những nhà phát triển khác.
Vì những lý do này mà CoffeeScript đã trở nên phổ biến hơn trong những năm gần đây, được sử dụng bởi cả Dropbox và nền tảng chia sẻ code – Github.
CoffeeScript không phải là ngôn ngữ duy nhất tồn tại để hoàn thiện những nét thô ráp của JavaScript, nếu cần tìm một công cụ tương tự, bạn có thể xem xét thêm về Typescript của Microsoft và Haxe.
Kết luận
JavaScript thực sự rất lớn và đóng vai trò quan trọng đối với Internet.
Khi chúng ta nói về JavaScript, không đơn thuần chỉ đề cập đến trên khía cạnh ngôn ngữ lập trình, mà JavaScript còn là một trong bộ ba thần thánh của Internet. Đó là những dự án, thư viện, chương trình được tạo ra xung quanh JavaScript cũng như những thành công mà chúng nhận được.
Thành thật mà nói, thật khó có thể tưởng tượng ra được Internet sẽ như thế nào nếu không có JavaScript.
Các bạn có thể tham khảo các bài viết hay về JavaScript tại đây.
Hãy tham gia nhóm Học lập trình để thảo luận thêm về các vấn đề cùng quan tâm.