● Tính đóng gói: Các thuộc tính và phương thức của đối tượng được đóng gói lại để tránh truy cập trực tiếp từ phía bên ngoài. ○ Public ○ Protected ○ Default ○ private ● Tính kế thừa: Lớp con được kế thừa các thuộc tính và phương thức của lớp cha ● Tính đa hình: Khả năng của một đối tượng có thể được sử dụng với nhiều hình dạng khác nhau ● Tính trừu tượng: Các lớp và đối tượng có thể được trừu tượng hóa để giúp tăng tính linh hoạt 2. Overload với Overwrite (tính đa hình) ● Overload (nạp chồng) là việc định nghĩa nhiều phương thức cùng tên trong cùng một lớp, nhưng có các tham số khác nhau. ● Overwrite (ghi đè) là việc định nghĩa lại phương thức trong lớp con một cách khác với phương thức của lớp cha. 3. Tham trị với tham chiếu ● Tham trị là cách truyền tham số bằng cách sao chép giá trị của biến đó vào một biến tạm. ● Tham chiếu là cách truyền tham số bằng cách sử dụng địa chỉ của biến đó, thay vì sao chép giá trị của biến vào một biến tạm 4. Các loại join trong db ● Inner Join ● Left Join ● Right Join ● Full Outer Join 5. Thuật toán sắp xếp ● Bubble Sort: so sánh từng cặp phần tử liên tiếp trong danh sách và đổi chỗ các phần tử.( n^2) ● Merge Sort: phân chia danh sách thành các danh sách con nhỏ hơn, sắp xếp từng danh sách con và gộp lại để tạo ra danh sách đã được sắp xếp.( n logn) ● Quick Sort: chọn 1 phần tử trong mảng, tách mảng thành 2 phần lớn bé so với phần tử đã chọn. Tiếp tục mới mỗi phần của mảng. (n logn hoặc n^2) ● Insertion Sort: so sánh phần tử hiện tại với phần tử trong mảng đã sắp xếp, đẩy các phần tử lớn hơn nó qua phải.(n hoặc n^2) 6. 3 cách khai báo biến trong js ● Var: có thể gán lại giá trị, có phạm vi toàn cục ● Let: có thể gán lại giá trị nhưng chỉ có phạm vi trong block ● Const: gán giá trị mặc định cho biến 7. Flex và Grid ● Flexbox: Dàn trang một chiều (one-dimensional layout): ngang hoặc dọc ● Grid: Dàn trang hai chiều theo dòng và cột ○ Tốt hơn là dùng flexbox vì Các hàng độc lập với nhau => dễ quản lý hơn ○ Dùng grid có thể tạo các giao diện phá cách 8. Phân biệt các position ● Position:static ○ Các đối tượng liên tiếp nhau được hiển thị theo luồng bình thường (normal flow) ● Position:relative ○ Vị trí hiển thị đối tượng có thể được di dời so với vị trí tĩnh/trong luồng của nó. ○ Đối tượng di rời có thể hiển thị chồng lên các đối tượng khác ● Position:absolute ○ Vị trí hiển thị đối tượng được xác định tương đối so với vị trí tổ tiên gần nhất không theo luồng tự nhiên. ● Position:fixed ○ Vị trí hiển thị đối tượng cố định, không thay đổi khi cửa sổ được cuộn, có thể hiển thị chồng lên các đối tượng khác ● Position:sticky ○ Như position:fixed nhưng chỉ di chuyển được ở bên trong hộp.
9. Các cách căn giữa 1 phần tử
● Center ● Margin-auto ● Justify-content ● Align-items ● position 10. Xử lý bất đồng bộ ● Callback là một đoạn code được truyền như một tham số của một hàm(function) và chờ để được gọi vào thực thi. ● Promise : được sử dụng để khắc phục tình trạng callback hell ○ Fulfilled ○ Rejected ○ Pending ● Async/await 11. Map, reduce, filter ● Map: là một phương thức dùng để biến đổi từng phần tử trong mảng ban đầu và tạo ra một mảng mới chứa các phần tử đã được biến đổi. ● Reduce: được sử dụng để tính toán một giá trị duy nhất từ tất cả các phần tử trong mảng ban đầu. ● Filter: dùng để lọc các phần tử 12. Lưu trữ bên client ● Local Storage: lưu dưới dạng key-value, lưu trữ vĩnh viễn và có giới hạn lưu trữ khoảng 5MB ● Session Storage: tương tự như local storage nhưng xóa dữ liệu khi đóng trình duyệt ● Cookies: lưu dưới dạng key-value, giới hạn lưu trữ khoảng 4KB và có hạn sử dụng 13. Bố cục 1 trang web ● Header ● Main ○ Leftbar ○ Content ○ Rightbar ● footer 14. Bố cục 1 trang web quản lý Trong phần main thì 2 bên không có quảng cáo thay vào đó sẽ là các đường link dẫn đến các mục con.
15. Các thuộc tính của Flex-container; flex-items
● Flex-container ○ Flex-direction: xác định hướng của các phần tử con ○ Justify-content ○ Align-item ○ Order ● Flex-items ○ Flex-shrink: giảm kích thước ○ Flex-basic: mặc định ○ Flex-grow: tăng kích thước 16. Session, cookie ● Session: Khi người dùng truy cập vào trang web, một phiên làm việc sẽ được tạo ra và lưu trữ trên máy chủ. ● Cookie: Khi người dùng truy cập vào trang web, các Cookies có thể được tạo ra và gửi đến trình duyệt của người dùng 17. Phân biệt interface và abstract ● Abstract ○ Đơn kế thừa ○ Chứa abstract method và method thường ○ Chứa protected và public abstract method ● Interface ○ Đa kế thừa ○ Chỉ chứa abstract ○ Chứa public abstract method 18. 1 số kiểu index ● Hask index: tìm kiếm dựa trên giá trị băm. ● B-tree index: tìm kiếm giá trị trong 1 khoảng. ● Bitmap index: tìm kiếm các giá trị boolean hoặc đếm giá trị duy nhất trong cột. 19. Transaction ● là một nhóm các thao tác dữ liệu được thực hiện trên cơ sở dữ liệu một cách an toàn và đáng tin cậy. ● Mục đích là để đảm bảo tính toàn vẹn của dữ liệu 20. Acid của database ● Tính nguyên tử ● Tính nhất quán ● Tính độc lập ● Tính bền vững 21. Các thuật toán tìm kiếm 22. Css selection 23. trigger 24. so sánh == và === 25. mấy cái của grid như grid-star(k nhớ câu hỏi lắm nhưng liên quan đến grid)