Tổng quan về lập trình web & ứng dụng
Mở đầu
- Lập trình web, ứng dụng là một trong những mảng của lĩnh vực công nghệ thông tin, đã và đang phát triển vô cùng mạnh mẽ.
- Hàng ngày chúng ta sử dụng các trang web về tin tức, mạng xã hội hay các ứng dụng trên thiết bị di động, máy tính bảng,...
- Trang web hiện tại mà bạn đang đọc bài viết này cũng là một sản phẩm của lập trình web!
Lập trình web
- Lập trình web là quá trình phát triển mã nguồn để tạo ra các ứng dụng chạy trên trình duyệt web (browser).
- Các thành phần chính cấu tạo nên một trang web bao gồm:
FrontEnd (Giao diện người dùng)
- Là thành phần hiển thị của trang web (client) cho phép người dùng có thể tương tác và sử dụng.
- Để có tạo ra giao diện người dùng, bạn cần kết hợp 3 thành phần cơ bản:
1. HTML (HyperText Markup Language): là ngôn ngữ đánh dấu dùng để tạo ra khung sườn cơ bản cho một trang web.
2. CSS (Cascading Style Sheets): là một ngôn ngữ định dạng dùng để trang trí cho bố cục trang web trở nên đẹp mắt hơn.
3. Javascript (JS): là một ngôn ngữ lập trình đa năng dùng để tạo các xử lý logic phức tạp cho trang web.
- Ngoài ra còn có các framework như VueJs, Angular hay thư viện như React để giúp quá trình triển giao diện trở nên dễ dàng và nhanh chóng hơn.
HTML và CSS không phải là ngôn ngữ lập trình vì không có cấu trúc xử lý logic (Vòng lập, điều kiện) và phụ thuộc vào trình duyệt để có thể hiển thị.
BackEnd (Xử lý logic, dữ liệu)
- Là quá trình phát triển phía máy chủ (hay gọi là server) để xử lý dữ liệu và logic nghiệp vụ, sử dụng các ngôn ngữ lập trình như Node.js, .NET, Java, Python, PHP.
- Một số kiến trúc phía server phổ biến: Monolithic, Microservices, N-Tier,...
Database (Cơ sở dữ liệu)
- Database là một hệ thống cơ sở dữ liệu dùng để lưu trữ thông tin một cách có tổ chức, giúp truy xuất, chỉnh sửa thông tin một cách tối ưu và bảo vệ thông tin một cách an toàn.
- Database được phân thành hai loại cơ sở dữ liệu phổ biến:
Cơ sở dữ liệu quan hệ (Relational Database - SQL)
- Dữ liệu được lưu trữ dưới dạng bảng (table) với hàng (row) và cột (column).
- Dùng SQL (Structured Query Language) để truy vấn dữ liệu.
- Đảm bảo tính toàn vẹn dữ liệu bằng các ràng buộc như khóa chính, khóa ngoại.
- Ví dụ:
MySQL
,PostgreSQL
,SQL Server
,Oracle Database
Cơ sở dữ liệu phi quan hệ (NoSQL Database)
- Không sử dụng bảng mà lưu trữ dữ liệu dưới dạng tài liệu, cặp key-value, đồ thị hoặc cột.
- Không bắt buộc có cấu trúc dữ liệu cố định.
- Thích hợp cho dữ liệu lớn, cần hiệu suất cao.
- Ví dụ:
MongoDB (Document-based)
,Redis (Key-Value)
,Cassandra (Column-based)
,Neo4j (Graph-based)
Database được dùng để kết nối với BackEnd để truy vấn, xử lý dữ liệu.
Lập trình ứng dụng
- Lập trình ứng dụng là quá trình phát triển phần mềm chạy trên các thiết bị như điện thoại (mobile), máy tính (desktop) hoặc thiết bị nhúng.
Ứng dụng di động (Mobile Apps)
- Là ứng dụng chạy trên các các hệ điều hành di động bao gồm: Android, iOS.
- Android: Phát triển ứng dụng cho hệ điều hành Android bằng Java, Kotlin.
- iOS: Phát triển ứng dụng cho hệ điều hành iOS bằng Swift, Objective-C.
- Ứng dụng đa nền tảng: Các ứng dụng được phát triển để chạy trên cả Android và iOS từ một mã nguồn chung như React Native, Flutter.
Ứng dụng desktop (Desktop Apps)
- Là ứng dụng chạy trên các hệ điều hành như Windows, macOS, Linux.
- Các công nghệ phổ biến dùng để phát triển ứng dụng: Electron, JavaFX, C# (WPF, WinForms), Qt.
- Ví dụ: Microsoft Word, Adobe Photoshop, Zalo,...
Ứng dụng nhúng (Embedded Apps)
- Là các ứng dụng chạy trên các thiết bị không phải máy tính, ví dụ: Internet of Things (IoT), các thiết bị y tế, ô tô tự lái.
- Các ngôn ngữ phổ biến: C, C++, Python, Rust.
Tổng kết
- Qua bài viết, chúng ta đã có cái nhìn tổng quan về lập trình web & ứng dụng.
- Từ đó giúp các bạn có thể tự vẽ ra một lộ trình chi tiết để tiếp tục học tập các kiến thức chuyên sâu hơn theo mục tiêu mà mình đã lựa chọn!
All rights reserved