Hướng dẫn is javascript a lightweight programming language? - javascript có phải là ngôn ngữ lập trình nhẹ không?

Ngày 11 tháng 11 năm 2020

JavaScript là gì, và nó được sử dụng ở đâu? & NBSP;

JavaScript (JS) là một ngôn ngữ lập trình nhẹ, được giải thích hoặc chỉ trong thời gian với các chức năng hạng nhất. Mặc dù nó nổi tiếng nhất là ngôn ngữ kịch bản cho các trang web, nhiều môi trường không phải là trình duyệt cũng sử dụng nó, chẳng hạn như Node.js, Apache CouchDB và Adobe Acrobat. JavaScript là một nguyên mẫu dựa trên nguyên mẫu, đa hình, ngôn ngữ đơn, ngôn ngữ động, hỗ trợ các kiểu hướng đối tượng, bắt buộc và khai báo (ví dụ: lập trình chức năng).Node.js, Apache CouchDB and Adobe Acrobat. JavaScript is a prototype-based, multi-paradigm, single-threaded, dynamic language, supporting object-oriented, imperative, and declarative (e.g. functional programming) styles.

Ngoài ra JavaScript được sử dụng trong một loạt các hệ thống và môi trường tuyệt vời; Từ trình duyệt đến các ứng dụng di động, từ các ứng dụng máy tính để bàn đến các giải pháp IoT, từ phụ trợ đến frontend, thậm chí cơ sở dữ liệu, JS có thể được sử dụng ở mọi nơi.

Sự thật thú vị: Ngay cả Đại học Stanford đã thay đổi tài liệu học tập kỹ thuật của họ từ Java hoặc mã giả thành JavaScript / TypeScript!

Vì vậy, những gì làm cho JavaScript nhẹ? & NBSP;

Có quá nhiều cấu trúc ngôn ngữ có sẵn

JavaScript không có quá nhiều cấu trúc ngôn ngữ mà bạn có thể sử dụng để xây dựng mã của mình. Chúng tôi có các chức năng, các loại vòng lặp khác nhau có thể được sử dụng trên các loại cấu trúc dữ liệu khác nhau và được xây dựng trong các đối tượng như toán học, ngày, mảng và như vậy. Ngoài ra các câu lệnh (như IF-Else) và khai báo (như Const, LET) có sẵn để tạo các biến. Trong cái nhìn đầu tiên, điều này không nghe có vẻ hoành tráng, nhưng các cấu trúc này có thể được sử dụng gần như quá tự do, bất kỳ trường hợp sử dụng nào chúng ta cần bao gồm.functions, different types of loops that can be used on different types of data structures, and built in objects like Math, Date, Array and so. Also statements (like if-else), and declarations (like const, let) are available for creating variables. On first glimpse this does not sound monumental, but these constructs can be used almost too freely, whichever use case we need to cover.

Nó không được gõ mạnh mẽ

JavaScript sử dụng gõ động, vì vậy mọi thứ bạn khai báo hoặc gán, trình thông dịch cố gắng tìm ra, loại nào nên là loại của một biến nhất định. Sau khi tìm ra loại biến của một biến là gì, nó gán các phương thức cụ thể loại cho biến kế thừa từ chuỗi nguyên mẫu đối tượng của nó. dynamic typing, so everything that you declare or assign, the interpreter tries to figure out, what should be the type of a certain variable. After figuring out what is the type of a variable, it assigns type specific methods to the variable inheriting from its Object Prototype Chain.

Ví dụ:

const text = "this is a text"; // typeOf text === 'string';
const number = 54; // typeOf text === 'number';
const isNiceBoolean = true; // typeOf text === 'boolean';

Vì vậy, từ thời điểm này, chúng ta có thể truy cập các phương thức cụ thể loại:

const textUpperCase = text.toUpperCase(); // returns ‘THIS IS A TEXT’
const textFromNumber = number.toString() // returns ‘54’;
const isThisReallyTrue = isNiceBoolean.toString(); // returns ‘true’;

Nếu trình thông dịch có thể tìm ra loại biến, điều đó rất có thể có nghĩa là chúng ta có lỗi trong mã của mình. Ví dụ: chúng tôi muốn sử dụng một biến trước khi được khai báo, nó sẽ trở nên không xác định. Hoặc chúng ta không phù hợp với một chuỗi cho một số, nó sẽ trở thành ‘nan, (không phải là một số).

Ưu điểm có thể là chúng ta có sự tự do đáng kinh ngạc trong cách chúng ta muốn viết mã của mình. Một số tự do này làm cho các cách giải quyết thực sự thông minh có thể, đưa ra giải pháp cho các vấn đề phổ biến và giải pháp ưa thích mà chúng tôi & NBSP; Chọn. & NBSP;incredible freedom in how we want to write our code. Some of this freedom makes really clever workarounds possible, offers solutions to common problems and what preferred solution we  choose. 

Nhưng điều này chắc chắn không cung cấp sự bảo vệ chống lại lỗi của con người. & NBSP;does not provide protection against human error. 

JS Devs có thể dễ dàng bị mắc kẹt trong một cuộc điều tra lỗi trong nhiều ngày vì một số phương pháp hoặc biến đã được ghi đè sang loại khác. Đó là lý do tại sao TypeScript đến, nhưng câu chuyện đó là cho một thời gian khác. & Nbsp;

Khối xây dựng ngôn ngữ đơn giản

Trong JavaScript, mọi thứ đều được coi là một đối tượng, bạn chỉ có thể khai báo một biến và truy cập rất nhiều phương pháp được xác định trước ngay lập tức. Hoặc bạn chỉ có thể tạo một chức năng xử lý và xử lý một số dữ liệu. Ít trừu tượng hơn nhiều so với các ngôn ngữ lập trình khác như Java hoặc C#.devs có thể chọn giữa một cách tiếp cận hướng đối tượng hoặc cách khai báo chức năng để viết mã bằng ngôn ngữ này.
Devs can choose between an Object Oriented approach, or a functional declarative way to write code in this language.

Cú pháp đơn giản, dễ học

Vì JavaScript chăm sóc rất nhiều thứ dưới mui xe, chẳng hạn như gõ động, các lập trình viên bắt đầu có thể tập trung vào việc hiểu các khái niệm chính và tìm kiếm các thực tiễn tốt nhất ngay cả khi bắt đầu. Với JavaScript, các nhà phát triển có thể tập trung vào các cấu trúc dữ liệu và thực tiễn tốt nhất hơn, vì ngôn ngữ đơn giản hơn trong tự nhiên.

Các thực tiễn phổ biến và tốt nhất sẽ dễ dàng hơn để chọn

Trong thập kỷ qua, JavaScript đã phát triển rất nhiều và các nhà phát triển đã tìm ra rất nhiều thực tiễn tốt nhất có thể được sử dụng để viết một ứng dụng. Hiệu suất và code mã sạch, thực tiễn tốt nhất và các mẫu thiết kế được áp dụng ngày càng nhiều. Ngay cả những điều này được bao gồm rất nhiều trong thiết kế và kiến ​​trúc của các khung JavaScript hiện đại như Angular, React, Vue. Hãy cùng xem một số ví dụ có thể quen thuộc:

// Constructor Pattern
function Car(model, year, miles) {
   this.model = model;
   this.year = year;
   this.miles = miles;
}

const bmw = new Car('M4', '2019', '1000');

// Module Pattern:
var testModule = (function() {
  var counter = 0;
  return {
    incrementCounter: function() {
      return ++counter;
    },
    resetCounter: function() {
      counter = 0;
    }
  };
})();

// Usage:
testModule.incrementCounter();
testModule.resetCounter();

Ngôn ngữ cấp cao

JavaScript ít phần cứng hơn, điều đó có nghĩa là các chức năng cốt lõi của nó được xử lý trong một máy / động cơ cấp thấp hơn (như phân bổ bộ nhớ, con trỏ, thu gom rác hoặc luồng). Ngoài ra, mô hình đồng thời của nó, vòng lặp sự kiện khét tiếng cũng được xử lý tự động. & NBSP;

Đối với hầu hết các trường hợp sử dụng, các nhà phát triển thường xuyên gặp nhau, họ không thực sự cần biết điều gì xảy ra dưới mui xe, trừ khi họ cần thực hiện tối ưu hóa hiệu suất khó khăn hoặc sử dụng các giải pháp Async.

Phần thưởng: Tại sao JavaScript bắt đầu trở nên ít nhẹ hơn khi thời gian trôi qua? & NBSP;

Vì tiêu chuẩn ES6 được thực hiện trong ngôn ngữ, JS đã được mở rộng bởi một số tính năng và cấu trúc mới, và quá trình này đang làm cho ngôn ngữ này trở nên nhẹ hơn. Các trình duyệt và công nghệ đã dành thời gian để bắt kịp các tiêu chuẩn mới, nhưng ngày nay trừ khi chúng ta cần hỗ trợ một số hệ thống hoặc trình duyệt thực sự lỗi thời, chúng ta có thể dễ dàng sử dụng các yếu tố và bổ sung mới được giới thiệu này.

Ưu điểm của việc này là các nhà phát triển với sự trợ giúp của các bản cập nhật này có thể viết mã tốt hơn, nhanh hơn và sạch hơn, các yếu tố mới này giúp mở rộng khả năng của bất kỳ yêu cầu kinh doanh hoặc khách hàng nào.

Nhược điểm của sự phát triển nhanh chóng này là rất nhiều dự án và công nghệ có thể lỗi thời và không bao giờ dễ dàng di chuyển mã di sản. Ngoài ra, phải mất một lượng lớn nỗ lực để theo kịp tất cả các kỹ sư giải pháp mới cung cấp.

Các khung như Angular, React, Vue cũng có tác dụng tương tự, nhưng hãy nhớ rằng không có bản chất nhẹ của JavaScript, những khung này không thể thực sự tồn tại như nó là.

Hướng dẫn is javascript a lightweight programming language? - javascript có phải là ngôn ngữ lập trình nhẹ không?

Ádám Ferenczi Ferenczi

Nhà phát triển chính


Tại sao JavaScript được coi là nhẹ?

JavaScript được coi là ngôn ngữ lập trình nhẹ vì nó có mức sử dụng CPU thấp, cực kỳ dễ thực hiện và có cú pháp tối giản. Một số người cũng sẽ sử dụng hạng nhẹ theo cách xúc phạm để thử và chỉ ra một số thiếu sót của JavaScript.it has low CPU usage, is incredibly easy to implement, and has a minimalistic syntax. Some people will also use lightweight in a derogatory way to try and indicate some of JavaScript's shortcomings.

Trọng lượng nhẹ trong JS là bao nhiêu?

Ngôn ngữ lập trình nhẹ là những ngôn ngữ được thiết kế: để tiêu thụ tài nguyên bộ nhớ tối thiểu khi mã hoặc ứng dụng của nó đang chạy.Để giảm bớt việc triển khai trên các nền tảng như web, di động, máy tính để bàn, v.v., để có một cú pháp tối giản, đơn giản, ngữ nghĩa để giúp học tập nhanh chóng.to consume minimal memory resources when its code or an application is running. to ease the implementation across platforms such as web, mobile, desktop, etc., to have a minimalist, simple syntax, semantics to help in learning quickly.

Nhẹ có nghĩa là gì trong lập trình?

Trong điện toán, phần mềm nhẹ còn được gọi là chương trình nhẹ và ứng dụng nhẹ, là một chương trình máy tính được thiết kế để có dấu chân bộ nhớ nhỏ (sử dụng RAM) và sử dụng CPU thấp, nói chung là sử dụng tài nguyên hệ thống thấp.a computer program that is designed to have a small memory footprint (RAM usage) and low CPU usage, overall a low usage of system resources.

JavaScript là ngôn ngữ cấp cao hay thấp?

JavaScript là một ngôn ngữ được biên dịch cấp cao, thường chỉ trong thời gian phù hợp với tiêu chuẩn Ecmascript.Nó có gõ động, định hướng đối tượng dựa trên nguyên mẫu và các hàm hạng nhất.high-level, often just-in-time compiled language that conforms to the ECMAScript standard. It has dynamic typing, prototype-based object-orientation, and first-class functions.