| Nowadays Instant Messaging software is a much more widely used network communication tools. It gets wide users by its feature of real-time and easily-used.It requires many programming technology and capability, which will involve network programming, multithread programming, database programming, GUI programming and so on. This is an integrated test to software developer's capability of design and developing.The common network-frames of Instant messaging software are C/S and P2P. Advantage of C/S is that the system can operate database just on server side which improve the security of the whole system. On the other side, P2P is getting more and more attention. Compared with C/S, it gets advantage of nice network-expansibility, rich efficiency of using resource, and cost saving.Multithread technology is necessary when building IM software. Using the technology also has to face many problems which involved threads communication,synchronization and so on. In all cases, threads synchronization is the key problem that affects whether the Multithread program can run correctly.This paper will discuss how to build an IM system based on C/S and P2P network-frame with using the technologies mentioning above, show the design scheme of network, system frame, and protocol of network communication. In addition, this paper also gives the solution of problems got when developing the system. |