Delphi에서 UniDAC 컴포넌트로 MongoDB에 연결하고 질의하여 그 결과를 가져오는 간단한 예제이다. UniDAC은 상용이므로 델파이를 구매한 경우 FireDAC을 이용하거나 Open Source인 GitHub의 DelphiMongoDB를 활용한다. 참고로 C#에서의 활용법은 IAmTimCorey, Intro to MongoDB with C# 동영상 강좌를 추천한다.
//UniConnection1.SpecificOptions.Values['MongoDB.BSONLibrary'] :=
// 'C:\...\libbson-1.0.dll';
//UniConnection1.SpecificOptions.Values['MongoDB.ClientLibrary'] :=
// 'C:\...\libmongoc-1.0.dll';
//UniQuery1 : Data Type Mapping : string(Database Type) - WideString(Field Type)
//UniQuery1 : Data Type Mapping : null(Database Type) - String(Field Type)
procedure TForm1.Button1Click(Sender: TObject);
var
doc: TMongoDocument; // uses MongoObjectsUni
begin
try
UniQuery1.Close;
UniQuery1.SQL.Clear;
UniQuery1.SQL.Text :=
'{"find":"TestCollection", "filter":{"age":{"$gte": 31}}}';
UniQuery1.Open;
while not UniQuery1.Eof do
begin
doc := UniQuery1.GetObject('TestCollection') as TMongoDocument;
Memo1.Lines.Add(doc.FieldByName['name'].GetData.AsString + ' / '
+ doc.FieldByName['age'].GetData.AsString);
UniQuery1.Next;
end;
except
on E: Exception do
Memo1.Text := E.Message;
end;
end;
Rust(Programming Language)는 Performance, Reliability, Productivity를 목표로 만들어진 개발언어이다. 특히 메모리 안정성에 초점이 맞추어져 있으며 프로그래밍 언어에서 고수준의 인간공학과 저수준의 제어가 조화롭게 구성되어 있다. 또한, 성능 면에서 C++와 비슷한 수준을 목표로 하고 있다. Rust를 학습하는 데 필요한 정보와 Rust만의 특징(References, Ownership, Borrowing, …)이 있는 부분을 기초 예제로 정리하였다.
파이썬으로 다양한 encryption algorithms(AES, DES, RSA, …)을 구현하기 위해 pycrypto 패키지를 설치해야 하는 데 문제는 Windows에서 설치 에러가 종종 발생한다. Microsoft Windows에서 이를 해결하기 위해서는 Visual Studio에 C++ 컴파일 환경이 필요하다. 우선 VS2017 또는 VS2019 설치(C++포함)하고 PIP로 파이썬에 pycrypto 패키지를 추가한 후 ‘nt.py’(pycrypto 소스)를 수정하면 된다.
vcvarsall.bat x86_amd64
cd %VCINSTALLDIR%
for /R %f in (*stdint.h) do set CL=-FI"%f"
pip install pycrypto
nt.py
소스 수정import winrandom
#아래와 같이 수정
from . import winrandom