You are on page 1of 13

Mạng máy tính : là một tập hợp các máy tính nối với nhau bằng những kênh

truyền
vật lý , theo một kiến trúc nhất định

Mạng client- sever : Mạng client-server là một kiểu kiến trúc mạng trong đó các
máy tính kết nối với nhau thông qua việc giao tiếp giữa hai thành phần chính: một
máy chủ (server) và một hoặc nhiều máy khách (client).

Trong kiến trúc này, máy chủ cung cấp các dịch vụ và tài nguyên cho các máy
khách kết nối đến nó. Các máy khách sử dụng các ứng dụng được thiết kế để tương
tác với máy chủ để yêu cầu dịch vụ hoặc tài nguyên.

Các dịch vụ mà máy chủ cung cấp có thể bao gồm lưu trữ dữ liệu, chia sẻ tài
nguyên (ví dụ: máy in), hoặc cung cấp các ứng dụng và dịch vụ trực tuyến (ví dụ:
trang web).

Mạng client-server được sử dụng rộng rãi trên Internet và các mạng nội bộ trong
các tổ chức, do nó cho phép các máy tính khác nhau kết nối và tương tác với nhau
một cách dễ dàng và hiệu quả.

+ ưu điểm : - tận dụng khả năng xử lý của máy chủ ( máy mạnh ) -> máy khách
không cần quá mạnh

-quản lý dữ liệu tập trung ở máy chủ sẽ mạnh hơn

Mạng ngang hàng : Mạng ngang hàng (P2P - Peer-to-Peer) là một kiểu kiến trúc
mạng trong đó các thiết bị trong mạng có thể kết nối và trao đổi dữ liệu trực tiếp
với nhau mà không thông qua một máy chủ trung tâm nào.

Trong kiến trúc này, các thiết bị trong mạng được xem như những người sử dụng
(peer) và có khả năng trao đổi tài nguyên và dữ liệu trực tiếp với nhau mà không
cần một trung tâm điều khiển.

Mạng ngang hàng thường được sử dụng để chia sẻ tập tin, nội dung trực tuyến, và
các ứng dụng trực tuyến như VoIP (Voice over Internet Protocol), video streaming
và trò chơi trực tuyến.

Một số ví dụ nổi tiếng về mạng ngang hàng bao gồm BitTorrent, Skype, và Napster
(trước khi bị cấm vì vi phạm bản quyền).
Mạng ngang hàng (P2P) có nhiều ưu điểm, bao gồm khả năng phân tán và chia sẻ
tài nguyên hiệu quả, tăng tính sẵn sàng và khả năng mở rộng, tuy nhiên cũng có
một số hạn chế và rủi ro, bao gồm khả năng lây nhiễm virus và phần mềm độc hại,
thời gian kết nối chậm hơn, và sự khó khăn trong việc quản lý và kiểm soát hoạt
động của mạng.

Internet là một mạng lưới toàn cầu kết nối các thiết bị điện tử khác nhau như máy
tính, điện thoại, máy tính bảng, v.v. với nhau. Nó cho phép chúng ta gửi và nhận
thông tin, chia sẻ dữ liệu và truy cập vào các trang web khác nhau trên toàn thế
giới. Internet cho phép chúng ta kết nối với những người khác, trao đổi thông tin
và tương tác với họ bất kỳ lúc nào, bất kỳ nơi đâu. Nó là một phương tiện giao tiếp
và truyền tải thông tin cực kỳ quan trọng trong thế giới kỹ thuật số hiện nay.

Một số ví dụ điển hình của internet : - thư điện tử (email)

- Diễn đàn ( form )


- Hội thoai mạng ( chat )
- Đào tạo từ xa
- Hội nghị từ xa ( teleconference)
- Truyền file ( file transition protocol )
- World ưide web
- Sử dụng máy tính từ xa
- Kin doanh mua sắm trực tuyến
Cấu trúc dữ liệu và thuật toán: Cấu trúc dữ liệu là cách tổ chức và lưu trữ dữ liệu
trong máy tính để có thể dễ dàng truy cập, thao tác và xử lý. Các cấu trúc dữ liệu
phổ biến bao gồm mảng, danh sách liên kết, cây, đồ thị, hàng đợi và ngăn xếp.

Thuật toán là một tập hợp các hướng dẫn hoặc quy trình được thiết kế để giải quyết
một vấn đề hoặc thực hiện một nhiệm vụ cụ thể. Thuật toán thường được sử dụng
để sắp xếp, tìm kiếm, tính toán và giải quyết các vấn đề khác liên quan đến số học
và xử lý dữ liệu. Một thuật toán tốt phải đảm bảo độ chính xác, hiệu quả và có thể
áp dụng cho các trường hợp khác nhau.

Ngôn ngữ lập trình, phương pháp lập trình và chương trình dịch

Ngôn ngữ lập trình là cách để cho máy tính hiểu các hành động và lệnh mà chúng
ta muốn chúng thực hiện. Giống như khi bạn nói với bạn bè của mình, bạn sẽ sử
dụng ngôn ngữ của bạn để truyền đạt thông tin và giao tiếp với nhau. Tương tự,
ngôn ngữ lập trình cũng là một cách để chúng ta giao tiếp với máy tính và cho nó
biết những gì chúng ta muốn nó làm.

Phương pháp lập trình là cách để giải quyết vấn đề bằng cách sử dụng máy tính để
thực hiện những hành động mà chúng ta muốn. Nó giống như khi bạn đang giải
một câu đố và bạn phải suy nghĩ cách để tìm ra câu trả lời. Trong lập trình, chúng
ta phải suy nghĩ cách viết các lệnh và sắp xếp chúng để máy tính có thể thực hiện
các nhiệm vụ một cách hiệu quả và chính xác.

Chương trình dịch là một loại chương trình giúp chuyển đổi mã lệnh trong một
ngôn ngữ lập trình sang ngôn ngữ của máy tính để máy tính có thể hiểu được. Nó
giống như việc dịch một cuốn sách từ một ngôn ngữ sang ngôn ngữ khác để mọi
người đều có thể hiểu được nội dung của cuốn sách đó.

Hệ điều hành là phần mềm quản lý và điều khiển các hoạt động trên máy tính. Nó
giống như một người quản lý điều hành mọi hoạt động trên máy tính, cho phép
chúng ta sử dụng các chương trình và tệp tin khác nhau, truy cập Internet, và thực
hiện các nhiệm vụ khác trên máy tính của mình.
Cơ sở dữ liệu là nơi mà chúng ta lưu trữ thông tin và dữ liệu, giống như hộp đựng
đồ của chúng ta. Nó giúp chúng ta lưu trữ và sắp xếp thông tin một cách dễ dàng
để tìm kiếm và sử dụng lại sau này. Chúng ta có thể lưu trữ thông tin về khách
hàng, sản phẩm, hình ảnh và nhiều thông tin khác trên cơ sở dữ liệu.

Mạng máy tính là một hệ thống kết nối nhiều máy tính với nhau, giống như một
mạng của những người bạn. Nó cho phép chúng ta chia sẻ thông tin, tệp tin và tài
nguyên giữa các máy tính khác nhau trong mạng, và cũng cho phép chúng ta giao
tiếp với nhau thông qua các công cụ như email, trò chuyện trực tuyến, và video hội
nghị.

Trí tuệ nhân tạo là một loại công nghệ máy tính được thiết kế để giúp máy tính làm
những việc mà chúng ta, con người, thường làm. Nó giống như cho máy tính một
trí não để nó có thể tư duy và học hỏi để giải quyết các vấn đề khác nhau, như chơi
cờ vua, phân loại hình ảnh hoặc trả lời câu hỏi.

Công nghệ phần mềm là những công cụ mà những người làm máy tính sử dụng để
tạo ra những chương trình, ứng dụng và trang web mà chúng ta sử dụng hàng ngày
trên máy tính và điện thoại. Nó giúp cho chúng ta có thể thực hiện những công việc
khác nhau trên máy tính và tương tác với nhau thông qua mạng Internet.

Để tạo ra phần mềm thì chỉ có bước lập trình? Không, để tạo ra phần mềm không
chỉ có bước lập trình. Còn phải có các bước thiết kế, phân tích, kiểm thử, triển khai
và bảo trì phần mềm.
Lập trình viên chỉ biết code? Không, lập trình viên không chỉ biết code. Họ còn phải có
kiến thức về thuật toán, cấu trúc dữ liệu, thiết kế phần mềm và các công nghệ liên
quan để tạo ra phần mềm chất lượng cao.

Lập trình web ? là quá trình tạo ra các trang web hoặc ứng dụng web thông qua
việc sử dụng các ngôn ngữ lập trình như HTML, CSS, JavaScript và các công nghệ
phía máy chủ như PHP, Python hoặc Node.js.

Lập trình hệ thống ? quá trình tạo ra các hệ thống phần cứng và phần mềm để quản lý,
điều khiển và tương tác với các thiết bị và ứng dụng khác nhau trong một mạng
hoặc hệ thống lớn.

Lập trình database? là quá trình thiết kế và triển khai các hệ thống quản lý cơ sở dữ
liệu để lưu trữ, truy xuất và quản lý dữ liệu.

Lập trình game là quá trình tạo ra các trò chơi số thông qua việc sử dụng các ngôn
ngữ lập trình và công cụ phát triển phần mềm để xây dựng các thành phần của trò
chơi như đồ họa, âm thanh, gameplay, và tính tương tác với người chơi.

Lập trình embedded là quá trình tạo ra phần mềm cho các thiết bị nhúng
(embedded system) bằng cách sử dụng các ngôn ngữ lập trình và công cụ phát triển
phần mềm để điều khiển các phần cứng nhúng như vi xử lý, bộ nhớ, cảm biến, và
thiết bị ngoại vi khác.

Những yếu tố cần có của DEV

+ cẩn thận , tỉ mỉ

+ kĩ năng tiếng anh

+ khả năng thiết kế sáng tạo

+ tự học hỏi nâng cao kiến thức

+ Độc lập và làm việc nhóm

Các cấp bậc của nghệ


Fresher dev Có kiến thức chuyên mới dừng ở mức độ lý thuyết, có thể có thực

hành nhưng không nhiều (như các bài tập trên trường).

Sự quan tâm : + liệu mình có nên học ngôn ngữ lập trình này

+ liệu mình có phù hợp với ngành này không

Công việc thường làm :

+ fix bug nhỏ

+ thay đổi cấu hình dự án theo chỉ dẫn , thay đổi thông báo

 Nói chung, các công việc của Fresher thường mang tính làm quen với

ngôn ngữ lập trình, làm quen với công cụ là chủ yếu.
Junior Developer + Có thể code được các tính năng nhỏ, tuy nhiên vẫn chịu sự
giám sát chặt chẽ của những người có kinh nghiệm.

+ Tiếp thu được rất nhiều kinh nghiệm từ những người đi trước,
và càng tiếp thu lại càng cảm thấy “mình ngu”
sự quan tâm : + code sao chạy cho đúng yêu cầu

Công viẹc thường làm : + Cắt giao diện

+ Làm trang quản lý thêm, sửa, xóa, liệt kê.

+ Đăng ký, đăng nhập.

Middle Developer 80% tính năng có trên hệ thống, ít chịu sự giám sát hơn

Sự quan tâm : + Code sao cho dễ đọc, đơn giản, người khác nhìn vào dễ
hiểu.

+ Độ ưu tiên giữa các tính năng, cái nào làm trước, làm sau,
cái nào có thể lược bớt đi hoặc ra mắt sau.

+ Sẽ phát triển bản thân theo hướng nào? Theo hướng công
nghệ, hay hướng quản lý con người

Công việc thường làm. : + Review code của Junior, hỗ trợ Junior hoàn
thành công việc.

+ Dựng code base cho dự án mới

+Hoàn thiện các tính năng có độ phức tạp trung bình.

+ Nếu theo hướng quản lý con người, ở mức độ này đã có thể làm
leader của một team nhỏ khoảng 2 – 3 người. Nếu phát triển theohướng công nghệ,
thì có thể hoàn thành chỉn chu một dự án đơn giản.
Senior Developer Làm việc với khách hàng.

Phân tích nghiệp vụ

Thiết kế UI/UX.

Trực tiếp code, review code, đảm bảo chất lượng code, xây dựng
kiến trúc code.

Automation test.

DevOps.

Security.

Xây dựng quy trình làm việc.

MTĐT được điều khiển bởi các lệnh của chương trình. Chu kỳ thựchiện một lệnh
bao gồm các bước sau:

- Đọc lệnh

- Giải mã lệnh

- Đọc dữ liệu

- Thực hiện lệnh

Nguyên lí von neumann + Nguyên lý điều khiển bằng chương trình cách mà các
chương trình được sử dụng để điều khiển hoạt động của máy tính.

Nguyên lý này đảm bảo cho máy tính có khả năng tựđiều khiển không cần có
sự can thiệp của người trong quá trình xử lý vì quá trình xử lý đã được xác định
qua một kịch bản.

+Nguyên lý truy cập theo địa chỉ : sử dụng để giải thích cách
mà các chương trình hoạt động khi truy cập vào các địa chỉ trong bộ nhớ.

chúng ta có thể dùng ví dụ về việc tìm sách trong một thư viện. Khi
bạn muốn tìm một cuốn sách trong thư viện, bạn sẽ cần biết tên sách và số giá
đựng sách để tìm sách đó. Tương tự, khi chương trình trong máy tính muốn truy
cập vào dữ liệu trong bộ nhớ, chúng cũng cần biết địa chỉ chính xác của dữ liệu đó.
Tuy nhiên, nếu chương trình truy cập vào địa chỉ không đúng, nó có thể gây
ra sự cố và dẫn đến lỗi hoặc làm cho máy tính bị treo. Vì vậy, việc sử dụng đúng
địa chỉ rất quan trọng để đảm bảo rằng các chương trình trong máy tính hoạt động
đúng cách.

BỘ NHỚ TRONG : là nơi trong máy tính lưu trữ các thông tin và dữ liệu mà máy
tính đang sử dụng để hoạt động. Các thông tin và dữ liệu này bao gồm các chương
trình mà máy tính đang chạy, các tệp tin được lưu trữ và các dữ liệu đang được xử
lý bởi các chương trình. Bộ nhớ trong được coi là nhanh và tiện lợi hơn so với các
thiết bị lưu trữ khác, chẳng hạn như đĩa cứng hoặc USB, vì nó cho phép máy tính
truy cập vào các dữ liệu và chương trình một cách nhanh chóng và dễ dàng hơn.

Bộ nhớ ngoài : Bộ nhớ ngoài là một thiết bị lưu trữ dữ liệu bên ngoài máy tính,
như đĩa cứng di động, USB hoặc thẻ nhớ.

+ Nó được sử dụng để lưu trữ dữ liệu và tệp tin mà máy tính không
sử dụng thường xuyên hoặc cần lưu trữ lâu dài.

+ Máy tính có thể truy cập vào dữ liệu trong bộ nhớ ngoài bằng
cách kết nối với thiết bị lưu trữ bên ngoài thông qua cổng USB hoặc các kết nối
khác.

+Bộ nhớ ngoài thường có khả năng lưu trữ lớn hơn bộ nhớ trong của
máy tính và cho phép dễ dàng chuyển tệp tin và dữ liệu giữa các máy tính khác
nhau.

. Phần mềm là tập hợp các chương trình và dữ liệu được thiết kế để thực hiện một
nhiệm vụ hoặc nhiều nhiệm vụ trên một máy tính hoặc thiết bị điện tử khác

+ phát triển (development ) chứ ko được chế tạo ( manufacture) theo nghĩa cổ
điển

+ phần mềm ko tự hỏng và chỉ thoái hóa theo tg


+ sẽ có sự không hiểu nhau giữa nhà phát triển và khách hàng

+ phức tạp và luôn thay đổi

Vd Microsoft Office – Phần mềm văn phòng

- Microsoft Visual Studio – Phần mềm phát triển

- Photoshop – Phần mềm xử lý ảnh

- AutoCAD – Phần mềm vẽ kỹ thuật

- MatLab – Phần mềm toán học

SolidWorks - Phần mềm dùng để thể hiện các bản vẽ kỹ thuật

Phần cứng là các thiết bị vật lý của máy tính và các thành phần điện tử bên trong
chúng, bao gồm các bộ vi xử lý, bộ nhớ, ổ đĩa cứng, bo mạch chủ, màn hình, bàn
phím và chuột.

Prepare
Organize

Work

Evaluate

Rethink

You might also like