▶ 패킷 구조 설계
[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 하는 과정의 예입니다.
▶ 패킷 전달의 형태
▶ 패킷 의존성 설계
▶ 패킷 흐름 설계