Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN LỜI CẢM ƠN Để hoàn thành bài luận văn tốt nghiệp này trước hết, em xin cảm ơn các thầy giáo, cô giáo Khoa Công nghệ thông tin Trường Đại học dân lập Hải Phòng những người đã dạy dỗ, trang bị cho em những kiến thức bổ ích trong bốn năm học vừa qua. Em xin bày tỏ long biết ơn sâu sắc tới thầy Thạc sĩ Đỗ Văn Chiểu, người đã hướng dẫn , chỉ bảo tận tình để em hoàn thành đồ án tốt nghiệp này. MSSV: 090086 – Trần Thị Hương- CT902 1 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN Mục lục 1. Mạng nội bộ - LAN (Local Area Netword).
Mô hình Client – Server. 4 Chương 2 Tìm hiểu về C#. Tổng quan về C#. Các thành phần cơ bản.
Cấu trúc một chương trình C#. Lập trình mạng với C#. 13 Sử dụng C# socket. Lập trình với C# Socket helper classes.
Lập trình với thread. Phân tích và thiết kế chương trình. Cấu trúc chung của chương trình. Phân tích và thiết kế .1 Viết ứng dụng Client (ChatNDraw) .2 Viết ứng dụng Server (PrismServerAdmin).
Chương trình thực nghiệm. Giao diện chương trình Server. Giao diện chương trình Client. Tổng kết và hướng phát triển của đồ án .1 Những kết quả đạt được: .2 Những vấn đề tồn tại .3 Hướng phát triển của đồ án .4 Tài liệu Tham khảo.
33 MSSV: 090086 – Trần Thị Hương- CT902 2 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN CHƢƠNG 1: GIỚI THIỆU CHUNG 1.Lời nói đầu Với sự phát triển mạnh mẽ của công nghệ thông tin ngày nay và sự lớn mạnh, rộng khắp của mạng máy tính toàn cầu. Việc ứng dụng tin học vào các lĩnh vực của cuộc sống ngày càng được quan tâm và sử dụng hiệu quả,đem lại lợi ích lớn về mọi mặt trong đời sống. Sự lớn mạnh của mạng máy tính đã xóa bỏ mọi ranh giới về không gian và thời gian để đem con người và tri thức xích lại gần nhau hơn. Thông qua mạng máy tính, con người có thể tiếp xúc với mọi loại tri thức như tri thức văn hóa, xã hội, khoa học kỹ thuật.
Nếu ai đã từng sử dụng Internet chắc sẽ không ít lần nghe hoặc sử dụng dịch vụ chat, đây là dịch vụ khá phổ biến hiện nay, nó cho phép bạn thiết lập các cuộc đối thoại thông qua máy vi tính với người dùng khác trên Internet. Sau khi bạn đã thiết lập được hệ thống này, những gì bạn làm trên máy tính của bạn như gõ chữ, nói chuyện, hình ảnh , truyền dữ liệu thì được hiển thị trên máy kia và ngược lại. Dịch vụ chat còn đi vào lĩnh vực khác là ứng dụng trong một mạng của công ty có thể là mạng riêng của công ty đó hay mạng Internet. Nó giúp cho các quý giám đốc, những người quản lý không phải tốn nhiều công sức, thời gian khi cần thông báo việc gì đến nhân viên, việc đó có thể là quan trọng, không quan trọng, những vấn đề bí mật,cả đến những vấn đề riêng tư mà mà không sợ các đồng nghiệp khác hoặc cấp dưới biết.
Xuất phát từ lợi ích mà nó đem lại, với mong muốn tạo ra một ứng dụng chat trên mạng LAN, giúp mọi ngưoif trao đổi thông tin với nhau lên em chọn đề tài: ― Tìm hiểu về ngôn ngữ C Sharp và viết ứng dụng chát trong mạng LAN ‖ 1. Mạng nội bộ - LAN (Local Area Netword) Mạng nội bộ là một nhóm các máy tính và thiết bị tin học được kết nối với nhau trong một khu vực địa lý nhỏ như một tòa nhà, văn phòng, khuôn viên trường đại học, khu giải trí,. Đặc điểm của mạng nội bộ MSSV: 090086 – Trần Thị Hương- CT902 3 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN - Băng thông lớn có khả năng chạy các ứng dụng trực tuyến như xem phim, hội thảo qua mạng. - Phạm vi bị giới hạn bởi các thiết bị - Chi phí các thiết bị triển khai mạng tương đối rẻ - Dễ quản lý Các mạng LAN trở nên thông dụng vì nó cho phép những người sử dụng (users) dùng chung những tài nguyên quan trọng như máy in , ổ đĩa CD-ROM, các phần mềm ứng dụng và những thông tin cần thiết khác.
Bởi vậy đối với những công ty lớn việc mở rộng quy mô hệ thống mạng rất quan trọng nhưng phải đáp ứng yêu cầu trao đổi thông tin một cách nhanh chóng, hiệu quả, tiết kiệm chi phí. Mô hình Client – Server Thuật ngữ server được dùng cho những chương trình thi hành như một dịch vụ trên toàn mạng. Các chương trình server này chấp nhận tất cả các yêu cầu hợp lệ đến từ mọi nơi trên mạng, sau đó nó thi hành dịch vụ và trả kết quả về máy yêu cầu. Một chương trình được coi là client khi nó gửi các yêu cầu tới máy có chương trình server và chờ đợi câu trả lời từ server.
Chương trình server và client nói chuyện với nhau bằng các thông điệp (messages) thông qua một cổng truyền thông liên tác IPC (Interprocess Communication). Để một chương trình server và một chương trình client có thể giao tiếp được với nhau thì giữa chúng phải có một chuẩn để nói chuyện, chuẩn này được gọi là giao thức. Nếu một chương trình client nào đó muốn yêu cầu lấy thông tin từ server thì nó phải tuân theo giao thức mà server đó đưa ra. Bản thân chúng ta khi cần xây dựng một mô hình client/server MSSV: 090086 – Trần Thị Hương- CT902 4 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN cụ thể thì ta cũng có thể tự tạo ra một giao thức riêng nhưng thường chúng ta chỉ làm được điều này ở tầng ứng dụng của mạng.
Với sự phát triển mạng như hiện này thì có rất nhiều giao thức chuẩn trên mạng ra đời nhằm đáp ứng nhu cầu phát triển này. Các giao thức chuẩn (ở tầng mạng và vận chuyển) được sử dụng rộng rãi nhất hiện nay như: giao thức TCP/IP, giao thức SNA của IBM, OSI, ISDN, X.25 hoặc giao thức LAN-to-LAN NetBIOS. Một máy tính chứa chương trình server được coi là một máy chủ hay máy phục vụ (server) và máy chứa chương trình client được coi là máy tớ (client). Mô hình mạng trên đó có các máy chủ và máy tớ giao tiếp với nhau theo 1 hoặc nhiều dịch vụ được gọi là mô hình client/server.
Thực tế thì mô hình client/server là sự mở rộng tự nhiên và tiện lợi cho việc truyền thông liên tiến trình trên các máy tính cá nhân. Mô hình này cho phép xây dựng các chương trình client/server một cách dễ dàng và sử dụng chúng để liên tác với nhau để đạt hiệu quả hơn. Mô hình chuẩn cho các ứng dụng trên mạng là mô hình client-server.Trong mô hình này máy tính đóng vai trò là một client là máy tính có nhu cầu cần phục vụ dịch vụ và máy tính đóng vai trò là một server là máy tính có thể đáp ứng được các yêu cầu về dịch vụ đó từ các client. Khái niệm client-server chỉ mang tính tương đối, điều này có nghĩa là một máy có thể lúc này đóng vai trò là client và lúc khác lại đóng vai trò là server.
Nhìn chung, client là một máy tính cá nhân, còn các Server là các máy tính có cấu hình mạnh có chứa các cơ sở dữ liệu và các chương trình ứng dụng để phục vụ một dịch vụ nào đấy từ các yêu cầu của client. Như hình sau: Cách thức hoạt động của mô hình client-server như sau: một tiến trình trên server khởi tạo luôn ở trạng thái chờ yêu cầu từ các tiến trình client, tiến trình tại client được khởi tạo có thể trên cùng hệ thống hoặc trên các hệ thống khác được kết nối thông qua mạng, MSSV: 090086 – Trần Thị Hương- CT902 5 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN tiến trình client thường được khởi tạo bởi các lệnh từ người dùng. Tiến trình client ra yêu cầu và gửi chúng qua mạng tới server để yêu cầu được phục vụ các dịch vụ. Tiến trình trên server thực hiện việc xác định yêu cầu hợp lệ từ lient sau đó phục vụ và trả kết quả tới client và tiếp tục chờ đợi các yêu cầu khác.
Một số kiểu dịch vụ mà server có thể cung cấp như: dịch vụ về thời gian (trả yêu cầu thông tin về thời gian tới client), dịch vụ in ấn (phục vụ yêu cầu in tại client), dịch vụ file (gửi, nhận và các thao tác về file cho client), thi hành các lệnh từ client trên server. MSSV: 090086 – Trần Thị Hương- CT902 6 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN CHƢƠNG 2: TÌM HIỂU VỀ C# 2. Tổng quan về C# C# là một ngôn ngữ lập trình hướng đối tượng, cấu trúc và lập luận của C# có đầy đủ của đặc tính của một ngôn ngữ lập trình hướng đối tượng trước đó (C++, Java). C# được thiết kế dung cho nền .Net framework, một công nghệ mới và đầy triển vọng trong việc phát triển các ứng dụng hệ thống và mạng internet… C# là một trình biên dịch hướng .Net, nghĩa là tất cả các mã của C# luôn luôn chạy trên môi trường.
C# là một ngôn ngữ lập tình mới: - Nó được thiết kế riêng để dùng cho Microsoft’s. - Nó là một ngôn ngữ hoàn toàn hướng đối tượng được thiết kế dựa trên kinh nghiệm của các ngôn ngữ hướng đối tượng khác. Một điếu quan trọng C# là một ngôn ngữ độc lập. Nó được thiết kế để có thể sinh ra mã đích trong môi trường .Net, nó không phải là một phần của .Net bởi vậy có một vài đặc trưng được hỗ trợ bởi .Net nhưng không hỗ trợ và có những đặc trưng C# hỗ trợ mà .Net không hỗ trợ.
Các thành phần cơ bản 2.1 Biến +) Một biến dùng để lưu trữ giá trị mang một kiểu dữ liệu nào đó. Cú pháp C# sau đây để khai báo một biến : [ modifier ] datatype identifer ; Với modifier là một trong những từ khoá : public, private, protected,. còn datatype là kiểu dữ liệu (int , long , float. ) và identifier là tên biến.
MSSV: 090086 – Trần Thị Hương- CT902 7 Tìm hiểu ngôn ngữ lập trình C Sharp và viết ứng dụng Chat trong mạng LAN Để tạo một biến chúng ta phải khai báo kiểu của biến và gán cho biến một tên duy nhất.