Tản mạn với người thầy già.
LT.KHDL2023.
NGÀNH CNTT TUYỂN SINH NHIỀU CHỈ TIÊU NGÀNH CNTT, CNTT VIỆT NHẬT VÀ KHOA HỌC DỮ LIỆU
LT.KHDL2023.
Khoa học Dữ liệu (Data Science) là sự giao thoa giữa Toán học, Khoa học máy tính và lĩnh vực ứng dụng (domain knowledge).
Để đi vào lập trình web một cách vững vàng, có một hệ thống kiến thức cốt lõi mà bạn nên nắm. Có thể chia thành 3 tầng: frontend, backend, và nền tảng chung.
Cấu trúc dữ liệu & Giải thuật cơ bản: mảng, danh sách liên kết, cây, hash map, tìm kiếm – sắp xếp.
Mạng & Giao thức Web: HTTP/HTTPS, request–response, REST, WebSocket, CORS.
Quản lý phiên & xác thực: session, cookies, token (JWT, OAuth).
Bảo mật cơ bản: SQL Injection, XSS, CSRF, hashing & salting mật khẩu, HTTPS/TLS.
Cơ sở dữ liệu:
SQL (MySQL, PostgreSQL)
NoSQL (MongoDB, Redis)
ORM (Sequelize, Prisma, Hibernate).
Git & kiểm soát phiên bản.
Triển khai (Deployment): biết cơ bản về server, hosting, Docker, CI/CD.
Ngôn ngữ cốt lõi:
HTML (cấu trúc)
CSS (trình bày, responsive, flexbox, grid)
JavaScript (logic, DOM, sự kiện, async/await).
Framework / thư viện:
React, Vue, Angular (phổ biến nhất hiện nay là React).
Quản lý trạng thái: Redux, Zustand, Vuex, Pinia.
UI/UX cơ bản: nguyên tắc thiết kế giao diện, accessibility.
Build tools: Webpack, Vite, Babel.
Testing: Jest, Cypress.
Ngôn ngữ & môi trường:
JavaScript/TypeScript (Node.js, Express, NestJS)
Hoặc: Python (Django, Flask, FastAPI), Java (Spring Boot), PHP (Laravel).
API Design: RESTful API, GraphQL.
Authentication & Authorization: JWT, OAuth2, role-based access.
Xử lý file, email, real-time (WebSocket, Socket.io).
Bảo mật backend: rate limiting, password policies, API keys.
Caching & tối ưu hiệu suất: Redis, CDN, lazy loading.
Cloud: AWS, Azure, GCP (EC2, S3, Lambda, Cloud Functions).
Microservices & kiến trúc hệ thống: chia nhỏ dịch vụ, message queue (RabbitMQ, Kafka).
DevOps cơ bản: CI/CD pipelines, monitoring, logging.
SEO & hiệu năng frontend: tối ưu tốc độ tải trang, Lighthouse audit.
Test & chất lượng code: unit test, integration test, code review, clean code.
Tóm lại:
Mới học : HTML, CSS, JS, Node.js, SQL.
Thành thạo : React (hoặc Vue), API backend, bảo mật web.
Chuyên sâu : kiến trúc hệ thống, cloud, bảo mật nâng cao, tối ưu hiệu năng.
Lập trình thiết bị di động (mobile development) có một hệ sinh thái khác với web, nhưng cũng chia thành một số lớp kiến thức quan trọng.
Ngôn ngữ lập trình chính:
Java/Kotlin cho Android.
Swift/Objective-C cho iOS.
JavaScript/TypeScript + Dart cho cross-platform (React Native, Flutter).
Kiến thức OOP & design patterns: MVC, MVVM, MVP, Singleton, Observer.
Cấu trúc dữ liệu & giải thuật cơ bản: danh sách, map, cây, sorting, searching.
Nguyên lý hệ điều hành di động: vòng đời ứng dụng (App lifecycle), quản lý bộ nhớ, đa luồng, permissions.
API & giao tiếp mạng: RESTful API, GraphQL, WebSocket.
Bảo mật: lưu trữ an toàn, mã hóa dữ liệu, bảo mật API, xác thực (OAuth, JWT).
UI/UX cơ bản: nguyên tắc thiết kế di động (Material Design, Human Interface Guidelines).
Ngôn ngữ: Java (truyền thống), Kotlin (chuẩn hiện nay).
Android SDK: Activity, Fragment, Service, BroadcastReceiver, Content Provider.
Giao diện người dùng: XML layouts, RecyclerView, ConstraintLayout.
Quản lý dữ liệu: SQLite, Room Database.
Xử lý bất đồng bộ: Coroutines, LiveData, Flow.
Dependency Injection: Dagger/Hilt, Koin.
Testing: JUnit, Espresso.
Ngôn ngữ: Swift (chủ yếu), Objective-C (legacy).
Framework: UIKit, SwiftUI (mới).
Quản lý dữ liệu: CoreData, Realm.
Networking: URLSession, Alamofire.
Quản lý bộ nhớ & vòng đời: ARC (Automatic Reference Counting).
Testing: XCTest, Quick/Nimble.
React Native (JS/TS): học về component, navigation, state management (Redux, Zustand).
Flutter (Dart): widget tree, state management (Provider, Riverpod, Bloc).
Xamarin / MAUI (C#): ít phổ biến hơn nhưng vẫn có.
Push Notifications: Firebase Cloud Messaging (Android), APNs (iOS).
Offline-first & đồng bộ dữ liệu.
Location & Sensor APIs: GPS, accelerometer, gyroscope.
App Store / Google Play: quy trình build, ký ứng dụng, publish, quy định.
Hiệu năng: tối ưu bộ nhớ, battery usage, lazy loading.
DevOps cho mobile: CI/CD (Fastlane, GitHub Actions, Bitrise).
Kiến trúc ứng dụng: Clean Architecture, MVVM, Redux, Hexagonal.
Kinh nghiệm thực tế: xử lý crash, logging (Firebase Crashlytics, Sentry).
Bảo mật nâng cao: obfuscation, certificate pinning, chống reverse engineering.
Tích hợp dịch vụ ngoài: Google Maps, Firebase (Auth, Firestore), Payment Gateway.
Tóm lại:
Mới học → nắm ngôn ngữ (Swift/Kotlin hoặc Flutter/React Native), UI cơ bản, networking.
Trung cấp → quản lý dữ liệu, vòng đời app, state management, bảo mật cơ bản.
Cao cấp → kiến trúc ứng dụng, tối ưu hiệu năng, CI/CD, bảo mật nâng cao.
“Coin không chết vì khan hiếm, mà chết vì… chẳng ai thèm xài.”
“Tiền số giống tình yêu online: nhiều người tạo, ít người thật.”
“Coin thì vô hạn, niềm tin mới hữu hạn.”
“Blockchain thì bền, nhưng coin thì mỏng manh như bong bóng.”
“Đừng nhầm khan hiếm kỹ thuật với khan hiếm giá trị.”