🎛️Programming Language

C/C++, Java, Javascript,...

C/C++

C++ là một loại ngôn ngữ lập trình bậc trung (middle-level). Đây là ngôn ngữ lập trình đa năng được tạo ra bởi Bjarne Stroustrup.

C++ là một ngôn ngữ khá lâu đời (ra đời vào năm 1979) và đã từng là một ngôn ngữ khuôn mẫu cho những ngôn ngữ khác như Java và C#. Với cú pháp đơn giản, dễ hiểu, C++ đã từng là rất phổ biến trong thập niên 90.

Advantages & Disadvantages

AdvantagesDisadvantages

Dễ dàng giao tiếp với hardware.

BUFFER OVERFLOW

Thoải mái quản lí vùng nhớ.

OOP phức tạp

C++ -> OOP.

Pointer khó để hiểu và sử dụng

Java

Java là 1 ngôn ngữ lập trình được sử dụng rộng rãi trong phát triển web application. Nó đã là một lựa chọn phổ biến của các nhà phát triển trong hơn hai thập kỷ, với hàng triệu ứng dụng Java được sử dụng ngày nay. Java là 1 ngôn ngữ multi-platform, object-oriented, và network-centric có thể được sử dụng như 1 platform của chính nó. Đây là ngôn ngữ lập trình nhanh, an toàn, đáng tin cậy để coding mọi thứ, từ ứng dụng dành cho thiết bị di động và phần mềm doanh nghiệp đến ứng dụng dữ liệu lớn và công nghệ phía máy chủ.

What is Java programming language used for?

  • Cloud computing

  • Game Development

  • BigData

  • AI

  • IOT

Advantages

  • Vì đã xuất hiện từ lâu nên nguồn tài liệu nghiên cứu và cộng đồng hỗ trợ lớn.

  • Công cụ hỗ trợ chất lượng cao.

  • Đa luồng

  • Có sẵn nhiều Func và Lib

  • Độc lập nền tảng

  • Automatic Garbage Collection

  • Security

Disadvantages

  • Performance < C/C++

  • Chương trình được chạy trên JVM nên tốn nhiều bộ nhớ hơn.

  • Memory và process yêu cầu cao nên chi phí phần cứng tăng.

  • Không hỗ trợ low-level programming do không có pointer.

  • Không để kiểm soát Garbage Collection vì không có cung cấp các func như delete(), free().

Làm thế nào để Java hoạt động?

Tất cả các programming đều là công cụ để giao tiếp với machines. Machine hardware chỉ phản hồi với electronic communication. Những high-level language như java hoạt động giống như cầu nối giữa human language và hardware language. Để sử dụng java, cần phải biết đến 2 thứ:

  • Java languages và APIs: đây là front-end communication của dev với java platform.

  • JVM: đây là back-end communication giữa java platform và hardware cơ bản.

Java API là gì?

Java define syntax và semantics của Java programming language. Nó bao gồm từ vựng và nguyên tắc để sử dụng viết các thuật toán như: primitive data types, if/else blocks, etc.

APIs là thành phần software quan trọng đi cùng với java platform. Đây là những chương trình java viết sẵn có thể plug và chạy chức năng sẵn có vào code riêng của chúng ta. Ví dụ như lấy ngày giờ, map,...

Bất cứ Java Application Code nào đều được dev phát triển dựa trên các đoạn mã mới và mã có sẵn được cung cấp từ Java APIs và Java libraries.

JVM?

📠pageJava Virtual Machine

Javascript

Javascripts là 1 ngôn ngữ lập trình ban đầu được tạo ra để tương tác với các element của các web page. Trên các web browser, js gồm 3 thành phần chính (main):

  • ECMAScript cung cấp các Core Functionality.

  • Document Object Model (DOM): cung cấp các interface để tương tác với các element trên các web page.

  • Browser Object Model (BOM): cung cấp các browser API để tương tác với web browser.

Js cho phép chúng ta thêm tính tương tác vào trong 1 web page.

Ví dụ: Thêm Js vào HTML/CSS để nâng cao tính tương tác của web page như: validating forms, tương tác map, hoạt ảnh khung chat,...

Khi 1 web page được load, sau khi HTML/CSS đã được download, Js engine trong web browser executes the js code. Mã js thay đổi HTML/CSS để update user interface 1 cách linh hoạt.

Js ngin là 1 program để chạy js code. Ban đầu, các js ngin được implemented dưới dạng interpreters. Tuy nhiên, các modern js ngin thường được implemented dưới dạng JIT compilers đễ complie js thành bytecode để cải thiện hiệu xuất

Client-side vs. Server-side JavaScript

Khi js được sử dụng trên 1 web page, nó được executes trên web browser. Trong case này, js làm việc như 1 client-side language.

Js có thể chạy được trên cả web brower và server. 1 environment server-side nổi tiếng của js là NodeJs. Không giống như các client-side js, server-side js executes trên server và cho phép chúng ta kết nối với db, file sys,...

Advantages and Disadvantages

AdvantagesDisadvantages

Simply syntax

Sec

Độc lập nền tảng

Browser support

Tương tác với web page

Speed

Cross-browser Compatibility

Ít trình gỡ lỗi

Nhiều interface

Ít Lib

ez debug

Last updated