JSON의 SuperObject(1)

1880 단어
델파이가'정규 표현식'과'JSON'을 직접 지원할 수 있기를 기대해 왔다.
Delphi가 2009년에 처음 왔을 때 JSON이 생겼는데 안 좋았어요. 그때 조금 해봤어요.이것은 이전의 링크입니다: JSON은 무엇입니까?
Delphi 2010은 두 개의 관련 단원을 가지고 있다. DBXJSON, DBXJSON Reflect는 매우 강한 것 같지만 주로 DataSnap에 준비한 것이다.한참을 시도했지만 실망했다. DataSnap 네트워크 데이터에 충분한 전달을 했는지 모르겠지만 너무 누추해서 다 쓰지 못한 것 같고 중국어 지원에도 문제가 있었다.
기다리지 말고 제3자를 찾아라. 정말 서프라이즈를 찾았다. JSON – SuperObject v1.1(소개, 다운로드), 헨리 Gourvest의 대작!
안에 XML과 관련된 단원이 하나 더 있으니 천천히 보세요.
먼저 간단한 테스트를 해보겠습니다.
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

uses SuperObject;

//SuperObject       ; ParseString   TSuperObject    Class   
procedure TForm1.Button1Click(Sender: TObject);
var
  jo: ISuperObject;
begin
  jo := TSuperObject.ParseString('{"No1":"  ", "No2":"  "}');
  ShowMessage(jo['No1'].AsString); {  }
end;

//       SO,        
procedure TForm1.Button2Click(Sender: TObject);
var
  jo: ISuperObject;
begin
  jo := SO('{"No1":"  ", "No2":"  "}');
  ShowMessage(jo['No2'].AsString); //  
end;

end.

 
 
 
 
 

 

 
  

왜 인터페이스를 위주로 합니까?
내 추측으로는 한 JSON 대상에 포함될 수 있는 하위 대상이 너무 많아서 인터페이스로 방출하는 것이 비교적 편리하다. 왜냐하면 자동 방출이기 때문이다.
또한델파이 2010에 새로 주어진 IOUntils 단원의 기능은 구조적인 방식으로 제공되고 구조도 스스로 방출된다.
자동 방출!이게 방향일까요?하지만 이렇게 하면 확실히 많은 코드를 적게 쓸 수 있다.

좋은 웹페이지 즐겨찾기