Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

48 25 0
Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC KINH DOANH & CÔNG NGHỆ HÀ NỘI KHOA CÔNG NGHỆ THÔNG TIN -*&* - BÁO CÁO ĐỒ ÁN MƠN ĐIỆN TỐN DI ĐỘNG Đề Tài : Xây Dựng Phần Mềm Chat Tên Mạng Cục Bộ ( LAN )  Họ Và Tên : Nguyễn Minh Hiếu  Mã Sinh Viên : 19140615  Lớp : TH24.06 Hà Nội 2022 MỤC LỤC Nội dung Chương 1: ĐẶT VẤN ĐỀ 1.1 Lý chọn đề tài: .4 1.2 Mục đích đề tài: 1.3 Đối tượng phạm vi nghiên cứu 1.3.1 Đối tượng nghiên cứu 1.3.2 Phạm vi nghiên cứu .4 Chương 2: KIẾN THỨC ỨNG DỤNG 2.1 Sơ lược lập trình Socket: .4 2.1.1 Khái niệm Địa cổng (Address & Port) 2.1.2 Lớp IPAddress .5 2.1.3 Lớp IPEndpoint 2.1.4 Lớp UDP .8 2.1.5 Lớp TCP (TCPClient) 10 2.1.6 Lớp TcpListener 12 2.2 Sơ lược lập trình đa luồng: 14 2.2.1 Khái niệm Luồng (Thread) 14 2.2.2 Khảo sát namespace System.Threading .15 2.2.3 Đồng bợ hóa (Synchronization) lập trình đa luồng: 20 Chương 3: PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH 27 3.1 Phân tích 27 3.1.1 Phân tích nhu cầu thực tiễn: .27 3.1.2 Yêu cầu đề ra: 27 3.1.3 Mô hình liệu mức quan niệm: 28 3.1.4 Phân tích thành phần xữ lý: 28 3.2 Thiết kế liệu 39 3.2.1 Chuẩn hóa liệu: .39 3.2.2 Mơ hình liệu mức vật lý: 40 3.2.3 Thiết kế liệu: 40 3.2.4 Mô tả ràng ḅc tồn vẹn: 42 3.3 Thiết kế giao diện .42 3.3.1 Màn hình đăng nhập 42 3.3.2 Màn hình 43 3.3.3 Màn hình thêm Friend .43 3.3.4 Màn hình xóa Friend 44 3.3.5 Màn hình Chat With 44 3.3.6 Màn hình Invite Group 45 3.3.7 Màn hình Invite Another 45 Chương 4: KẾT LUẬN 46 4.1 Kết đạt 46 4.2 Hướng phát triển 47 LỜI NÓI ĐẦU Thế giới ngày có nhiều phát triển mạnh mẽ công nghệ thông tin (CNTT) Từ một tiềm thông tin trở thành một tài nguyên thực , trở thành mợt hàng hóa xã hợi tạo thay đổi to lớn lực lượng sản xuất , sở hạ tầng , cấu trúc kinh tế , tính chất lao đợng cách thức quản lí lĩnh vực xã hợi Trong năm gần CNTT nước ta có nhiều phát triển lĩnh vực c̣c sống lĩnh vực quản lí xã hợi Mợt lĩnh vực mà máy tính sử dụng nhiều hệ thống thông tin quản lí nói chung Sự phát triển internet ,internet đưa người vào kỉ nguyên xa lộ thông tin mạng Thông tin qua mạng internet người mua bán hàng hóa , trao đổi thơng tin rợng rãi tồn cầu Cơng nghệ thúc đẩy mạnh mẽ việc khai thác thông tin mạng với tính linh hoạt dễ sử dụng Cùng với phát triển ngành cơng nghệ thơng tin máy tính trở nên gần gũi thông dụng với cuộc sống Khả hiệu hỗ trợ cơng việc khó khăn phức tạp lĩnh vực c̣c sống nói chung cơng tác quản lí doanh nghiệp , quan nói riêng bảo mật thông tin , xem chỉnh sửa thông tin một cách dễ dàng , hiệu nhanh chóng Đã có nhiều phần mềm xấy dựng để phục vụ cho tính chất phực tạp lĩnh vực c̣c sống nói chung cơng tác quản lý doanh nghiệp quan Trong suốt trình học tập , em thầy cô giáo cung cấp truyền đạt kiến thức cần thiết lĩnh vưc công nghệ thông tin Ngồi em cịn rèn luyện mợt tinh thần học tập , làm việc độc lập sang tạo Trong khuôn khổ một đề án môn học bảo tận tình thầy giáo ,cùng tích lũy kiến thức thân em xây dựng đề tài Chat mạng cục bộ gọi tắt “LAN CHAT” Chương 1: ĐẶT VẤN ĐỀ 1.1 Lý chọn đề tài: Hiện nay, mạng LAN có tiến bợ vượt bậc ngày phổ biến đồi sống sinh hoat Điều làm cho nhu cầu liên lạc trao đổi thông tin thông qua mạng LAN ngày lớn Chính vậy, chương trình Chat mạng LAN xây dựng để đáp ứng phần nhu cầu cấp thiết 1.2Mục đích đề tài: Xây dựng chương trình Chat hoạt đợng mạng LAN với chức như: gởi tin nhắn, tạo một nhóm Chat lưu thơng tin bạn bè 1.3 Đối tượng phạm vi nghiên cứu 1.3.1 Đối tượng nghiên cứu Tìm hiểu chế hoạt đợng Socket Thread NET Framwork từ viết ứng dụng Chat mạng LAN 1.3.2 Phạm vi nghiên cứu Chương trình Chat xây dựng với khả gởi văn qua lại user thông qua điều khiển một Server mạng LAN Chương 2: KIẾN THỨC ỨNG DỤNG 2.1 Sơ lược lập trình Socket: 2.1.1 Khái niệm Địa cổng (Address & Port) Ngun lý:  Trong mợt máy có nhiều ứng dụng muốn trao ứng dụng khác thơng qua mạng (ví dụ có ứng dụng máy A muốn trao đổi với với ứng dụng máy B)  Mỗi máy tính có mợt đường truyền liệu (để gửi nhận) Vấn đề : Rất xảy "nhầm lẫn" liệu từ máy A gửi đến máy B khơng biết liệu gửi cho ứng dụng máy B? Giải quyết: Mỗi ứng dụng máy B gán một số hiệu (mà ta quen gọi cổng : Port), số hiệu cổng từ 65535 Khi ứng dụng máy A muốn gửi cho ứng dụng máy B việc điền thêm số hiệu cổng (vào trường RemotePort) vào gói tin cần gửi Trên máy B, ứng dụng việc kiểm tra giá trị cổng gói tin xem có trùng với số hiệu cổng (đã gán – giá trị Localport) hay khơng? Nếu xử lý, cịn trái lại khơng làm (vì khơng phải mình) Như vậy: Khi cần trao đổi liệu cho hai ứng dụng cần phải biết thông tin tối thiểu địa (Address) số hiệu cổng (Port) ứng dụng 2.1.2 Lớp IPAddress Trên Internet mợt trạm (có thể máy tính, máy in, thiết bị …) có mợt định danh nhất, định danh thường gọi một địa (Address) Địa Internet một tập hợp gồm số có giá trị từ 0-255 cách dấu chấm Để thể địa này, người ta viết dạng sau: Tên : Ví dụ May01, Server, … Địa IP đặt một xâu: "192.168.1.1", "127.0.0.1" Đặt một mảng byte, byte chứa một số từ 0-255 Ví dụ để biểu diễn địa 192.168.1.1 với khai báo “byte[] DiaChi = new byte[4];”, ta viết:  DiaChi(0) = 192;  DiaChi(1) = 168;  DiaChi(2) = 1;  DiaChi(3) = 1; Hoặc mợt số (long), có đợ dài byte Ví dụ, với địa 192.168.1.1 giá trị là: 16885952 (đây số hệ thập phân xếp liền byte lại với 00000001 00000001 10101000 11000000 (Byte 0) 168 192 (Byte 3) Như vậy, để đổi một địa chuẩn dạng số ta việc tính tốn cho thành phần Ví dụ: Đổi địa 192.168.1.2 số, ta tính sau : * 256 ^ + 1* 256 ^ + 168 * 256 ^ + 192 * 256 ^ Trong NET, IPAddress một lớp dùng để mô tả địa Đây lớp sử dụng thao tác (truyền) vào lớp IPEndpoint, UDP, TCP, Socket … Bảng KIẾN THỨC ỨNG DỤNG-1: Các thành phần lớp IpAddress Thành viên Static Mô tả Any Cung cấp một địa IP (thường 0.0.0.0) để Server phải lắng nghe hoạt động Client tất Card mạng (sử dụng xây dựng Broadcast Server) Tḥc tính đọc Cung cấp mợt địa IP quảng bá (Broadcast, thường Loopback 255.255.255.255), dạng số long Trả một địa IP lặp (IP Loopback, ví dụ AddressFamily 127.0.0.1) Trả họ địa địa IP hành Nếu địa dạng IPv4 kết Internetwork, Phương thức IPAddress(Int64) IPAddress(Byte[]) GetAddressByte () HostToNetworkOrder() InternetworkV6 địa IPv6 Mô tả Tạo địa IP từ một số long Tạo địa IP từ một mảng Byte Chuyển địa thành mảng Byte Đảo thứ tự Byte một số cho với thứ tự Byte địa IPAddress IsLoopback() Cho biết địa có phải địa lặp hay khơng?  Ví dụ 1: Kiểm tra xem 192.168.1.300 có phải địa IP hợp lệ không private void KiemTra() { String Ip1 = "127.0.0.1"; String Ip2 = "999.0.0.1"; MessageBox.Show(IPAddress.TryParse(Ip1, new IPAddress(0))); MessageBox.Show (IPAddress.TryParse(Ip2, new IPAddress(1))); }  Ví dụ 2: Chuyển địa hành mảng byte hiển thị thành sphần mảng private void KiemTra() { IpAddress Ip3 = new IPAddress(16885952); Byte[] b; b = Ip3.GetAddressBytes(); MessageBox.Show("Address: " & b(0) &"." & b(1) &"." & b(2)& "." & b(3)); } 2.1.3 Lớp IPEndpoint Trong mạng, để hai trạm trao đổi thơng tin với chúng cần phải biết địa (IP) số hiệu cổng mà hai bên dùng để trao đổi thông tin Lớp IPAddress cung cấp cho ta một vế địa IP (IPAddress), thiếu vế thứ hai số hiệu cổng (Port number) Như vậy, lớp IPEndpoint lớp chứa đựng IPAddress Port number Đối tượng IPEndpoint dùng sau để truyền trực tiếp cho đối tượng UDP, TCP… Bảng KIẾN THỨC ỨNG DỤNG-2: Các thành viên lớp IpEndPoint Phương thức khởi tạo Mô tả IPEndPoint(Int64, Int32) Tạo một đối tượng lớp IPEndPoint, tham số truyền vào địa IP (ở dạng số) IPEndPoint(IPAddress, cổng dùng để giao tiếp Tạo một đối tượng lớp IPEndPoint, Int32) Tham số truyền vào một địa IPAddress Thuộc tính Address số hiệu cổng dùng để giao tiếp Mơ tả Trả thiết lập địa IP cho Endpoint (trả AddressFamily một đối tượng IPAddress) Lấy loại giao thức mà Endpoint sử Port Phương thức Create() dụng Lấy gán số hiệu cổng Endpoint Mô tả Tạo một Endpoint từ một địa socket (socket ToString() address) Trả địa IP số hiệu cổng theo khuôn dạng địa chỉ: cổng Ví dụ: “192.168.1.1:8080” 2.1.4 Lớp UDP Giao thức UDP (User Datagram Protocol hay User Define Protocol) một giao thức phi kết nối (connectionless) có nghĩa mợt bên gửi liệu cho bên mà không cần biết bên sẵn sàng hay chưa? (Nói cách khác không cần thiết lập kết nối hai bên tiến hành trao đổi thông tin) Giao thức không tin cậy giao thức TCP tốc đợ lại nhanh dễ cài đặt Ngồi ra, với giao thức UDP ta cịn gửi gói tin quảng bá (Broadcast) cho đồng thời nhiều máy Trong NET, lớp UDPClient (nằm namesapce System.Net.Sockets) đóng gói chức giao thức UDP Bảng KIẾN THỨC ỨNG DỤNG-3: Các thành viên lớp UDPClient Phương thức khởi tạo Mô tả UdpClient () Tạo một đối tượng (thể hiện) lớp UdpClient (AddressFamily) UDPClient Tạo một đối tượng (thể hiện) lớp UDPClient Thuộc một dòng địa UdpClient (Int32) UdpClient (IPEndPoint) (AddressFamily) định Tạo một UdpClient gắn (bind) một cổng cho Tạo mợt UdpClient gắn (bind) mợt IPEndpoint UdpClient(Int32, (gán địa IP cổng) cho Tạo mợt UdpClient gán số hiệu cổng, AddressFamily) UdpClient(String, Int32) AddressFamily Tạo một UdpClient thiết lập với một trạm từ xa Phương thức BeginReceive() BeginSend() Close() Connect() EndReceive() mặc định Mô tả Nhận liệu Không đồng bộ từ máy xa Gửi không đồng bộ liệu tới máy xa Đóng kết nối Thiết lập mợt Default remote host Kết thúc nhận liệu không đồng bộ EndSend() Receive (ref IPEndPoint) Kết thúc việc gửi liệu không đồng bộ Nhận liệu (đồng bợ) máy xa gửi (Đồng bợ có nghĩa lệnh sau lệnh Receive thực thi Receive nhận liệu Cịn chưa nhận – dù mợt chút Send() – chờ (blocking)) Gửi liệu (đồng bộ) cho máy xa  Ví dụ 1: Tạo mợt UDPClient gắn vào cổng 10 Gửi mợt gói tin "Hello" tới mợt ứng dụng UDP khác chạy máy có địa "127.0.0.1" cổng 1000 using System.Net; using System.Net.Sockets; public class UdpTest { const LOCAL_PORT = 10; const REMOTE_PORT = 1000; // Tạo UDP gắn (Bind) vào cổng 10 UpdCleint Sender = new UdpClient(LOCAL_PORT); privte void Gửi_Dữ_Liệu() { // Chuyển chuỗi "Hello there !" thành mảng byte để gửi Byte[] msg = System.Text.Encoding.UTF8.GetBytes("Hello there !"); // Gửi vào cổng 1000 máy 127.0.0.1 Sender.Send(msg, msg.Length, "127.0.0.1", REMOTE_PORT); } }  Ví dụ 2: Tạo mợt UDPClient gắn vào cổng 1000 nhận liệu từ ứng dụng khác gửi đến using System.Net; using System.Text; using System.Net.Sockets; namespace Test { public class UdpTest const LOCAL_PORT = 1000; const REMOTE_PORT = 10; UpdClient Receiver = new UdpClient(LOCAL_PORT); private void Nhận_Dữ_Liệu() { IPEndPoint ep = new 10 ... mợt số từ 0-2 55 Ví dụ để biểu di? ??n địa 192.168.1.1 với khai báo “byte[] DiaChi = new byte[4];”, ta viết:  DiaChi(0) = 192;  DiaChi(1) = 168;  DiaChi(2) = 1;  DiaChi(3) = 1; Hoặc mợt số (long),... mợt vài hành đợng nó, cần mợt tham chiếu đến đối tượng luồng mà đại di? ??n cho luồng riêng Nó lấy mợt tham chiếu sử dụng tḥc tính static -CurrentThread- lớp Thread: Thread myOwnThread = Thread.CurrentThread;... nguyên đơn giản: counter Để bắt đầu, ta khai báo biến thành viên khởi gán zero: int counter = 0; 20 Bài toán đặt sau: luồng thứ đọc trị counter (0) gán giá trị cho biến trung gian (temp) Tiếp tăng

Ngày đăng: 03/01/2022, 23:29

Hình ảnh liên quan

Bảng KIẾN THỨC ỨNG DỤNG-1: Các thành phần của lớp IpAddress - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

KIẾN THỨC ỨNG DỤNG-1: Các thành phần của lớp IpAddress Xem tại trang 7 của tài liệu.
Bảng KIẾN THỨC ỨNG DỤNG-2: Các thành viên của lớp IpEndPoint - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

KIẾN THỨC ỨNG DỤNG-2: Các thành viên của lớp IpEndPoint Xem tại trang 8 của tài liệu.
Bảng KIẾN THỨC ỨNG DỤNG-3: Các thành viên của lớp UDPClient - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

KIẾN THỨC ỨNG DỤNG-3: Các thành viên của lớp UDPClient Xem tại trang 9 của tài liệu.
Bảng KIẾN THỨC ỨNG DỤNG-5: Các thành phần của lớp TcpListener - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

KIẾN THỨC ỨNG DỤNG-5: Các thành phần của lớp TcpListener Xem tại trang 12 của tài liệu.
Bảng KIẾN THỨC ỨNG DỤNG-6: Một số lớp của namespace System.Threading - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

KIẾN THỨC ỨNG DỤNG-6: Một số lớp của namespace System.Threading Xem tại trang 16 của tài liệu.
Giả sử rằng ta đang viế t1 trình biên tập hình ảnh đồ hoạ, và người dùng yêu cầu thay đổi độ sâu của màu trong ảnh - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

i.

ả sử rằng ta đang viế t1 trình biên tập hình ảnh đồ hoạ, và người dùng yêu cầu thay đổi độ sâu của màu trong ảnh Xem tại trang 18 của tài liệu.
Hình KIẾN THỨC ỨNG DỤNG-1: Kết quả chương trình không sử dụng đồng bộ hóa - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

KIẾN THỨC ỨNG DỤNG-1: Kết quả chương trình không sử dụng đồng bộ hóa Xem tại trang 23 của tài liệu.
Hình KIẾN THỨC ỨNG DỤNG-2: Kết quả chương trình sử dụng đồng bộ hóa - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

KIẾN THỨC ỨNG DỤNG-2: Kết quả chương trình sử dụng đồng bộ hóa Xem tại trang 24 của tài liệu.
3.1.3 Mô hình dữ liệu ở mức quan niệm: Relationship 0,n 0,n0,n0,n0,n0,n GroupDetailUsersIDUsernamePasswordStateFullnameEmailAddress<pi> Integer - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

3.1.3.

Mô hình dữ liệu ở mức quan niệm: Relationship 0,n 0,n0,n0,n0,n0,n GroupDetailUsersIDUsernamePasswordStateFullnameEmailAddress<pi> Integer Xem tại trang 28 của tài liệu.
Hiển thị màn hình chínhThông báo đăng nhập thành công - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

i.

ển thị màn hình chínhThông báo đăng nhập thành công Xem tại trang 29 của tài liệu.
Hiển thị màn hình đăng nhậpChọn chức năng đăng xuất - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

i.

ển thị màn hình đăng nhậpChọn chức năng đăng xuất Xem tại trang 30 của tài liệu.
Màn hình chính Server Table Users - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

n.

hình chính Server Table Users Xem tại trang 31 của tài liệu.
Màn hình chính Server Table Users Table OfflineMessage - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

n.

hình chính Server Table Users Table OfflineMessage Xem tại trang 32 của tài liệu.
Cập nhật màn hình chínhThông báo xóa thành công - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

p.

nhật màn hình chínhThông báo xóa thành công Xem tại trang 34 của tài liệu.
 Mô hình xử lý: - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

h.

ình xử lý: Xem tại trang 35 của tài liệu.
Màn hình chính Server Table GroupChat Table GroupDetail - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

n.

hình chính Server Table GroupChat Table GroupDetail Xem tại trang 36 của tài liệu.
Màn hình chính Server Table GroupDetail - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

n.

hình chính Server Table GroupDetail Xem tại trang 37 của tài liệu.
Đóng Tab GroupChat Cập nhật màn hình chínhNgười dùng - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

ng.

Tab GroupChat Cập nhật màn hình chínhNgười dùng Xem tại trang 38 của tài liệu.
Màn hình chính Server Table GroupDetail - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

n.

hình chính Server Table GroupDetail Xem tại trang 39 của tài liệu.
Hình PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-15: Mô hình dữ liệu ở mức vật lý - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-15: Mô hình dữ liệu ở mức vật lý Xem tại trang 40 của tài liệu.
3.3.1 Màn hình đăng nhập - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

3.3.1.

Màn hình đăng nhập Xem tại trang 42 của tài liệu.
3.3.2 Màn hình chính - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

3.3.2.

Màn hình chính Xem tại trang 43 của tài liệu.
Hình PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-17: Màn hình chính 3.3.3 Màn hình thêm Friend - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-17: Màn hình chính 3.3.3 Màn hình thêm Friend Xem tại trang 43 của tài liệu.
Hình PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-19: Màn hình xóa Friend 3.3.5 Màn hình Chat With - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-19: Màn hình xóa Friend 3.3.5 Màn hình Chat With Xem tại trang 44 của tài liệu.
3.3.4 Màn hình xóa Friend - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

3.3.4.

Màn hình xóa Friend Xem tại trang 44 của tài liệu.
3.3.6 Màn hình Invite Group - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

3.3.6.

Màn hình Invite Group Xem tại trang 45 của tài liệu.
Hình PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-21: Màn hình Invite Group - Báo Cáo Đồ Án APP CHAT Điên Toán Di Động - Nguyễn Minh Hiếu - 19140615 - TH24.06

nh.

PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH-21: Màn hình Invite Group Xem tại trang 45 của tài liệu.

Mục lục

  • Chương 1: ĐẶT VẤN ĐỀ

    • 1.1 Lý do chọn đề tài:

    • 1.2 Mục đích của đề tài:

    • 1.3 Đối tượng và phạm vi nghiên cứu

      • 1.3.1 Đối tượng nghiên cứu

      • 1.3.2 Phạm vi nghiên cứu

      • Chương 2: KIẾN THỨC ỨNG DỤNG

        • 2.1 Sơ lược về lập trình Socket:

          • 2.1.1 Khái niệm Địa chỉ và cổng (Address & Port)

          • 2.1.2 Lớp IPAddress

          • 2.1.3 Lớp IPEndpoint

          • 2.1.4 Lớp UDP

          • 2.1.5 Lớp TCP (TCPClient)

          • 2.1.6 Lớp TcpListener

          • 2.2 Sơ lược về lập trình đa luồng:

            • 2.2.1 Khái niệm Luồng (Thread)

            • 2.2.2 Khảo sát namespace System.Threading

              • 2.2.2.1 Lớp Thread

              • 2.2.2.2 Thao tác với luồng

              • 2.2.3 Đồng bộ hóa (Synchronization) trong lập trình đa luồng:

                • 2.2.3.1 Đồng bộ hóa

                • 2.2.3.2 Deadlock

                • Deadlock là một lỗi mà có thể xuất hiện khi hai luồng cần truy nhập vào các tài nguyên bị khoá lẫn nhau. Giả sử một luồng đang chạy theo đoạn mã sau, trong đó A, B là hai đối tượng tham chiếu mà cả hai luồng cần truy nhập :

                • 2.2.3.3 Race condition

                • Chương 3: PHÂN TÍCH THIẾT KẾ CHƯƠNG TRÌNH

                  • 3.1 Phân tích

                    • 3.1.1 Phân tích nhu cầu thực tiễn:

                    • 3.1.2 Yêu cầu đề ra:

                    • 3.1.3 Mô hình dữ liệu ở mức quan niệm:

Tài liệu cùng người dùng

Tài liệu liên quan