상세 컨텐츠

본문 제목

텍스트 기반 Network Programming 설계

etc

by ryujt 2010. 5. 24. 19:06

본문

▶ 패킷 구조 설계
[Code]
Code=CodeName
ParamName1=ParamValue1
ParamName2=ParamValue2
ParamName3=ParamValue3
...
[/Code]
  • 위와 같은 구조는 델파이의 TStrings 기반 클래스를 통해서 쉽게 Encoding/Decoding 할 수 있습니다.
  • 개발자가 쉽게 패킷을 읽을 수 있어서, 디버깅하기가 쉽습니다.

[Code delphi]
procedure TMagaCastTextServer.sp_Login(UserID,Password:string);
var
  Packet : TStringList;
begin
  Packet := TStringList.Create;
  try
    Packet.Values['Code'] := 'Login';
    Packet.Values['UserID'] := UserID;
    Packet.Values['Password'] := Password;
    Send(Packet);
  finally
    Packet.Free;
  end;
end;
[/Code]
  • 패킷을 전송하기 위해서 Encoding 하는 과정의 예입니다.

[Code delphi]
procedure TfrChat.rp_UserIn(APacket: TStringList);
begin
  ShowNotice(APacket.Values['UserID'] + ' 님이 입장하였습니다.');
end;
[/Code]
  • 패킷을 수신한 이후 Decoding 하는 과정의 예입니다.


▶ 패킷 전달의 형태



▶ 패킷 의존성 설계



▶ 패킷 흐름 설계

'etc' 카테고리의 다른 글

시스템 함수  (0) 2010.10.13
Blue Orange OP Code  (0) 2010.10.13
컴파일러 만드는 중 (Blue Orange)  (2) 2010.09.17
About me  (0) 2010.05.23
SVN Global Ignore Pattern  (0) 2010.03.29

관련글 더보기