Search results for 'Delphi'

  1. 2014.12.30 -- [XE7] XML DOM 벤더(MSXML, ADOM, OmniXML) 설정하기
  2. 2014.11.03 -- [XE7] 안드로이드 브릿지 파일을 생성할 수 있는 Java2OP.exe을 다운로드 하세요.
  3. 2014.09.02 -- 새로운 버전의 RAD Studio XE7 출시
  4. 2014.07.24 -- [BaaS] 데스크탑(VCL) 어플리케이션에서 특정 유저에게 GCM/APN 전송하기
  5. 2014.07.24 -- Kinvey(BaaS)에서 Business Logic 디버깅(테스트, 로깅) 하기 (2)
  6. 2014.07.22 -- OXml(XML 라이브러리) 소개
  7. 2014.07.14 -- 코드아카데미: 앱 개발에 집중하고, 백엔드는 클라우드에게 맡기세요!(2014.7.29 ~ 2014.8.19)
  8. 2014.07.14 -- TFileStream 기반 파일진행 상황을 보여주기
  9. 2014.07.10 -- 인터베이스 서버(InterBase Server)에 접속이 되지 않는 경우 대처사항
  10. 2014.06.24 -- BaaS 컴포넌트(TBackendFiles)를 이용해 파일 업로드/다운로드 샘플 (6)
  11. 2014.06.05 -- 델파이 IDE 상에서 Github 소스 바로사용하기
  12. 2014.05.27 -- Baas(Backend as a Service)와 RAD Studio(GCM, APN, 푸시알림 가능) (3)
  13. 2014.04.22 -- 델파이 물리엔진 Box2d 소개. FMX, VCL 용(오픈소스)
  14. 2014.03.24 -- RAD Studio(델파이, C++빌더) 단축키 (3)
  15. 2014.03.21 -- 사물인터넷(IoT)과 RAD Studio - 다양한 디바이스 연동
  16. 2014.03.14 -- [후기] 부산가톨릭대학교 특강(델파이의 현재와 모바일 RAD)
  17. 2014.03.13 -- MP4 Tag Library(Win32/64, OSX, iOS, Android 사용가능)
  18. 2014.03.05 -- RAD Studio, Delphi 그리고 C++빌더 로드맵
  19. 2014.02.12 -- 안드로이드에서 ComPort에 접근할 수 있는 파이어몽키 컴포넌트 (2)
  20. 2013.12.04 -- Delphi, C++ Builder Compiler Versions

[XE7] XML DOM 벤더(MSXML, ADOM, OmniXML) 설정하기

2014.12.30 10:32

RAD Studio XE7에서는 새로운 XML DOM(Document Object Model)인 OmniXML이 추가되어 현재 총 3가지의 XML DOM을 사용할 수 있습니다.

  • MSXML
  • ADOM
  • OmniXML
XML DOM은 문자열로된 XML 데이터를 분석해 프로그래밍에서 사용할 수 있도록 구조화하는 역할을 합니다.
각 XML DOM을 비교하면 아래와 같습니다.(docwiki.embarcadero.com 참고)
구현단위전역 변수 값설명

MSXML

Xml.Win.msxmldom

SMSXML

Windows 전용, RAD Studio의 내장 XML 공급 업체 중 가장 빠름.

크로스 플랫폼에서 XML DOM 벤더를 선택하지 않으면 실행 시 런타임오류 발생.

OmniXML

Xml.omnixmldom

sOmniXmlVendor

크로스 플랫폼. ADOM보다 훨씬 빠르지 만 MSXML보다 약간 느림.

ADOM

Xml.adomxmldom

sAdom4XmlVendor

크로스 플랫폼. RAD Studio의 다른 임베디드 XML 벤더보다 느림.

결과적으로로 보면 윈도우 환경의 VCL 프로젝트에서는 MSXML을 크로스플랫폼용 FMX 프로젝트에서는 OmniXML으로 설정하는 것이 유리합니다.


XML DOM을 설정하는 방법은 TXMLDocument.DomVender를 설정하는 방법과 DefaultDOMVender로 프로젝트 전반적으로 설정하는 방법 두가지가 있습니다. 

❑ TXMLDocument.DOMVender 설정

TXMLDocument 컴포넌트의 DOMVender 속성을 설정해 해당 XML DOM 벤더의 기술을 사용합니다.

❑ DefaultDOMVender로 프로젝트 전반적으로 설정

program Project1;

uses
 System.StartUpCopy,
 FMX.Forms,
 Unit1 in 'Unit1.pas' {Form1},
 Xml.xmldom, XML.OmniXMLDom;
{$R *.res}
begin
 DefaultDOMVendor := sOmniXmlVendor;
 Application.Initialize;
 Application.CreateForm(TForm1, Form1);
 Application.Run;
end.

Xml.xmldom 유닛을 추가하고, DefaultDOMVender에 DOM Vender 전역변수를 설정하면 이후 사용되는 컴포넌트의 DOMVender가 모두 전역으로 설정한 DOMVender로 설정됩니다.

❑ 결론

  • 윈도우 VCL 프로젝트는 MSXML을 선택, 멀티(크로스)플랫폼 FMX 프로젝트에서는 OmniXML을 선택하는 것이 유리
  • XML DOM 벤더 선택은 컴포넌트 속성을 이용하거나, DefaultDOMVender 전역변수로 프로젝트 전반에 설정 가능
    • 활용) XML 분석하는 소스코드를 VCL/FMX에서 재사용할 경우 프로젝트 소스에서 설정하면 플랫폼 별 최적의 성능으로 구현 가능

참고자료



저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Delphi/C++Builder Delphi, Omni XML, Rad Studio, XE7, XML DOM

[XE7] 안드로이드 브릿지 파일을 생성할 수 있는 Java2OP.exe을 다운로드 하세요.

2014.11.03 14:20

RAD Studio XE7(델파이, C++빌더) 구입 하신 분들은 Java2OP 커맨드라인 유틸리티를 다운로드 할 수 있습니다.

Java2OP(Java to Object Pascal) 커맨드라인 툴은 델파이 안드로이드 어플리케이션에서 자바 라이브러리를 사용할 수 있도록 자바 클래스 파일을 이용해 오브젝트 파스칼(델파이)용 브릿지 파일을 생성할 수 있는 도구입니다.

이 툴을 이용하면 JAR 파일 또는 자바 클래스 파일을 연동할 수 있는 Object Pascal 브릿지 파일을 생성해 델파이에서 이용할 수 있습니다.


자세한 사용법은 다음 글의 동영상으로 익힐 수 있습니다.


참고





저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Firemonkey/팁과 정보 Delphi, Java2OP, RAD Studio XE7, XE7

새로운 버전의 RAD Studio XE7 출시

2014.09.02 22:13

오늘 새로운 버전의 RAD Studio XE7이 출시되었습니다.

트라이얼 다운로드와 도움말이 모두 열렸으니 설치해서 사용해보시고, 어떤 내용이 변경되었는지 확인해 보시기 바랍니다.


다운로드 링크

릴리즈 항목 확인




저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 RAD Studio 정보 C++Builder, Delphi, Rad Studio, XE7

[BaaS] 데스크탑(VCL) 어플리케이션에서 특정 유저에게 GCM/APN 전송하기

2014.07.24 17:25

안녕하세요. 험프리.김현수입니다.


요즘 BaaS 코드아카데미 준비하느라 바쁘면서도 즐겁습니다. 새로운 내용을 공부하고 누군가에게 도움을 줄 수 있다는 것이 보람되네요^^(코드아카데미 참석해 주세요. 좋은 내용이 많습니다. http://tech.devgear.co.kr/404011)


이번에 소개해드릴 내용은 얼마전 어느분께서 데브기어를 통해 질문하신 내용입니다.

질문 내용은 "VCL로 푸시메시지를 브로드캐스트는 되는데 특정 사용자에게 전송 가능하느냐? "라는 질문이었습니다.


이 글을 이해하시기 위해서는  BaaS와 RAD Studio 글을 먼저 읽어보시고, 데스크탑에서 클라우드 메시지 전송 글을 선행해야 이글을 이해하시는데 도움이 많이 됩니다.

VCL 어플리케이션으로 특정 사용자에게 푸시메시지 전송

앞에서 안내해 드린 글을 데스크탑에서 클라우드 메시지 전송 보면 VCL 어플리케이션에서 Kinvey의 PushEndPoint를 이용해 브로드캐스트 메시지를 전송합니다.

특정사용자에게 전송할 때에도 PushEndPoint를 설정해 전송 할 수 있습니다. 

❑ 모바일 수신 설정(Custom Endpoint)

먼저 Kinvey에 접속해 Custom EndPoints(Addons > Business Logic > Custom Endpoints > New)를 추가합니다.

이름을 지정(저는 SpecificUsersMessage로 정했습니다.)하고, 다음의 코드를 입력하고 저장합니다.

function onRequest(request, response, modules){
    // 모듈
  var push = modules.push, 
      collectionAccess = modules.collectionAccess, 
      logger = modules.logger;
 
  // 데이터
  var iOSAps = request.body.iosaps;
  var iOSExtras = request.body.iosextras;
  var androidPayload = request.body.androidpayload;
  var username = androidPayload.username;

  if(username){
    collectionAccess.collection('user').findOne({'username': username}, function (err, user) {
      if (err) {
        logger.error('Query failed: '+ err);
      } else {
        if(user){
          // 사용자가 있으면 대상에게
          logger.info('Pushing message to ' + user.username);
          push.sendPayload(user, iOSAps, iOSExtras, androidPayload);
        } else {
          logger.error('Not found user!!(username: ' + username + ')');
        }
      }
   
      // 콜백함수 안에 있어야 합니다. 밖에 있으면 콜백함수 수행전 먼저 응답합니다.
      response.complete(200);    
    });
  } else {
    // username 미 지정 시 전체
    logger.info('Pushing message to All');
    push.broadcastPayload(iOSAps, iOSExtras, androidPayload);
  }
}

그리고 어플리케이션 제작 전 API Console을 이용해 아래의 코드로 테스트(참고)합니다.

{
  "iosaps": {
    "alert": "안녕하세요."
  }, 
  "iosextras": {
    "username": "testuser"
  }, 
  "androidpayload": {
    "username": "testuser",
    "message": "안녕하세요.",
    "title": "메시지 제목"
  }
}

위 내용 중 username 항목을 변경해 사용하시기 바랍니다.(Kinvey API 콘솔 에디터가 이상하게 복사/붙여넣기가 안되네요. 저만 그런가요? 타이핑해서 넣어서 사용하기 바랍니다.)

❑ VCL 전송 어플리케이션

앞에서 만든 EndPoints를 이용해 푸시메시지 전송하는 VCL 전송어플리케이션을 작성합니다.

VCL 폼의 디자인을 다음과 같이 대상(edtUserName) 항목을 추가하도록 수정합니다.(꼭 같을 필요는 없습니다.)

저는 전체에게 보낼지 대상을 지정할지 선택하기 위해 체크박스를 넣었습니다.


KinveyProvider의 PushEndPoint 속성에 앞에서 작성한 Custom EndPoints(SpecificUsersMessage)를 입력합니다.


메시지 전송 버튼에는 아래의 코드를 이용합니다.

var
  Data: TPushData;
begin
  Data := TPushData.Create;
  try
    Data.Message      := edtMessage.Text;
    Data.GCM.Title    := edtTitle.Text;
    Data.GCM.Message  := edtMessage.Text;

    if CheckBox1.Checked then
      Data.Extras.Add('username', edtUserName.Text);

    BackEndPush1.PushData(Data);
  finally
    Data.Free;
  end;

위 소스의 키포인트는 Data.Extras에 username을 추가하는 것입니다.

Extras 정보에 username을 추가하면 실제 전송되는 JSON 데이터에의 androidpayload와 iosextras에 username항목이 추가되고 Custom Endpoints에서 androidpayload의 username으로 특정 사용자에게 전송하도록 설정되었습니다.


BaaS를 이용하면 여러분들은 별도의 서버 준비 없이 서버기능인 백엔드 기능을 클라우드 기반의 서비스에서 이용할 수 있습니다.

한번 익혀두면 모바일 및 데스크탑에서 유용하게 사용할 수 있으니 도전해 보시기 바랍니다.



관련글

 

저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Firemonkey/데이터 엑세스 APN, BAAS, Custom Endpoints, Delphi, gcm, Kinvey, vcl

Kinvey(BaaS)에서 Business Logic 디버깅(테스트, 로깅) 하기

2014.07.24 15:35

클라우드 서비스 중 백엔드 서비스를 이용할 수 있는 BaaS를 델파이에서 이용할 수 있는 것 많이들 아실텐데요.


사실 참고할 만한 내용이 많지 않아 아쉬울 따름입니다.(하지만 전세계적으로 사용량이 급증하고 있어 많은 참고할 글들이 곧 생긱것이라 확신합니다.) 제가 테스트하며 도움이 될만한 정보를 많이 남겨야겠습니다.

이상 사설이었구요.

Kinvey에서 비지니스 로직 디버깅하기

오늘은 BaaS 제공자 중 Kinvey에서 비지니스 로직을 만들 때 도움이 될만한  비지니스 로직을 디버깅 하는 내용에 관한 글입니다.

비지니스 로직은 일종의 함수라고 생각하면 됩니다. 사용자 및 파일이 추가되기 전/후(Before, After), 푸시메시지 요청 시 등록된 비지니스 로직이 호출됩니다.


오늘 제가 테스트한 내용은 푸시메시지 호출 시 특정 대상에게만 푸시메시지를 전송하는 비지니스 로직(onRequest)을 작성해봤습니다.(이 내용은 곧 포스팅 하겠습니다.

❑ 로그를 남기고 확인하기

비지니스 로직을 작성하다보면 예상한 결과대로 되지 않을때가 더 많습니다. 그때는 로그를 남겨야 하는데요. 다음과 같은 코드로 로그를 남길 수 있습니다.

var 
  logger = modules.logger;
  logger.info('request.body.username: ' + request.body.username);

그리고 로그를 확인하기 위해서는 에디터 아래의 logs 버튼을 누르면 로그 콘솔이 표시됩니다.


다음과 같은 형태로 로그가 표시됩니다.


❑ 비지니스 로직 테스트

매번 프로그램을 돌려 테스트하는 것보다 Kinvey 사이트 내에서 테스트하는 것이 더 간단합니다.

Addons > Developer Tools > API Console로 API 콘솔 화면으로 이동합니다.


좌측메뉴에서 대상 비지니스 로직을 선택하고, Headers를 추가하거나 필요한 내용의 body 내용을 추가 후 Send Request 버튼을 누르면 비지니스 로직이 동작합니다.

body 내용은 푸시메시지를 받는 사용자정보를 넣어봤습니다. JSON 포맷으로 작성해야 합니다.


다음과 같이 HTTP/1.1 200으로 나오면 잘 동작한 것입니다. 물론 로그를 통해 과정도 확인해야 합니다.


만약 문법상의 오류가 있다면 아래와 같이 HTTP/1.1 400형태의 응답이 오고, 하단에 error, description, debug 항목을 통해 오류의 내용을 안내합니다.


저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Firemonkey/팁과 정보 BAAS, Business logic, Delphi, Kinvey

  1. 큰 도움이 되는 글이네요. BaaS 쓰는 분 보게 되어 반갑습니다.

  2. 큰 도움이 되는 글이네요. BaaS 쓰는 분 보게 되어 반갑습니다.

OXml(XML 라이브러리) 소개

2014.07.22 17:05

파스칼에서 사용할 수 있는 XML 라이브러리를 하나 소개합니다.

OXml -XML 라이브러리

OXml은 델파이와 C++빌더, 라자루스, FPC에서 사용할 수 있는 XML 구문분석 외부 라이브러리입니다.
제품 소개에는 다음과 같은 타이틀이 눈에 띄네요. 자신감이 넘칩니다.
OXml - The next generation XML library for Pascal
OXml - 파스칼의 차세대 XML 라이브러리

아주 간단한 기능만 소개하면
  • Win32, Win64, OSX, iOS, Android를 모두 지원
  • Delphi 4 ~ XE6 버전 지원(C++빌더도 동일한 버전이나 테스트는 하지 않음)
  • 프레임워크(VCL, FMX, LCL)에 종속적이지 않은 방식으로 구현
  • Delphi 2007 이전의 버전에서도 유니코드를 지원
제품 웹사이트에 보면 자세한 소개와 샘플코드, 다운로드 안내등 다양한 정보가 있습니다.
  • http://www.kluug.net/oxml.php
그리고 제일 중요한 라이선스는 CPAL(Common Public Attribution License) 라이선스입니다.(C팔이라고 읽으면 안됩니다. 알파벳으로 읽으세요^^) 즉, 사용 시 저작자 정보를 표시해야 하는 라이선스 입니다.

마지막으로 
제작사에서 제공한 성능표는 대단하네요.
(저는 개인적으로 테스트하지 않았습니다.)

먼저 일기에 대한 성능입니다.


다음 쓰기에 대한 성능입니다.


XML 데이터 처리 시 검토해 보시면 좋겠습니다.


저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Delphi/C++Builder Delphi, OXml, xml

코드아카데미: 앱 개발에 집중하고, 백엔드는 클라우드에게 맡기세요!(2014.7.29 ~ 2014.8.19)

2014.07.14 10:20

최근들어 다양한 클라우드 서비스가 생기고 다양하게 사용되고 있습니다.

이번에는 델파이를 통해 클라우드 서비스 중 BaaS(Backend as a Service)를 이용하는 방법을 설명하는 온라인 강의를 소개합니다.


우선 BaaS를 먼저 소개해 드리면

모바일에서 사용되는 서버기능을 매번 개발하게 되면 시간과 비용이 매번 상당히 많이 들어갑니다.

매번 서버기능을 개발하지 않고 서버기능(Backend)기능을 클라우드를 통해 이용하는 방법이 BaaS입니다.


BaaS에서는 다음의 기능을 제공합니다

  • 사용자 관리와 인증
  • 서버의 스토리지 이용(이미지, 리소스, 파일 등)
  • 원격 푸시알림(GCM, APN)

자세한 내용은 코드아카데미에 등록하시고 아래 기간동안 배우실 수 있습니다.

(많은 참여 바랍니다. 참고로 이번 코드 아카데미는 제가 진행합니다.^^)


코드 아카데미: 앱 개발에 집중하고, 백엔드는 클라우드에 맡기세요!

  • 기간 : 2014년 7월 29일 ~ 2014년 8월 19일(4주간 매주 화요일, 1시간)
  • 참가방법 : http://tech.devgear.co.kr/404011
  • 이번 강의는 온라인으로 진행됩니다.



참고




저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 교육, 세미나 BAAS, Delphi

TFileStream 기반 파일진행 상황을 보여주기

2014.07.14 09:27

오랫만에 박지훈.임프님의 기술 글을 올리셨네요^^ 페이스북으로 확인하고 포스팅합니다.


이번글에서는 델파이, C++빌더 개발자들에게 아주 친숙한 TStream 중 TFileStream에 진행률 이벤트를 추가하고 사용하는 방법을 안내합니다.



직접 방문하셔서 확인해 보세요.

원글


저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Delphi/C++Builder C++빌더, Delphi, TFileStream

인터베이스 서버(InterBase Server)에 접속이 되지 않는 경우 대처사항

2014.07.10 12:52

RAD Studio 설치 시 함께 설치되는 인터베이스 서버와 연결 할 때 간혼 다음과 같은 오류가 발생하는 경우가 있습니다.

그에 따른 대처사항입니다.



Unavailable database.


Unable to complete network request to host "localhost:3050". Failed to establish a connection.

대상 컴퓨터에서 연결을 거부했으므로 연결하지 못했습니다.



1, 인텁베이스 서버 구동여부 확인 및 구동

 인터베이스 매니저(시작 > Embarcadero Interbase XE3 > InterBase Servr Manager)로 시작


 


2, 데이터베이스 연결 시 IP / Port로 연결

여러버전의 델파이를 설치한 경우 매번 Interbase를 설치하게되면 기본 포트번호로 접속이 되지 않는 경우가 있습니다.

해당경우에는 다음과 같이 TCP/IP로 접속할 수 있습니다.



  • 기본으로 설정된 값은 Protocol이 Local Server는 공백으로 되어 있습니다.

  • Protocol을 TCPIP로 설정하면 localhost/gds_db 형태로 IP(localhost)/포트(gds_db)로 슬래쉬로 구분해 지정할 수 있습니다.

  • gds_db는 인터베이스 매니저의 타이틀에 표시된 내용을 참고하시면 됩니다.(간혹 ibxe3로 구동되기도 합니다.)


저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Delphi/C++Builder appmethod, C++Builder, Delphi, IBLite, Interbase, Rad Studio

BaaS 컴포넌트(TBackendFiles)를 이용해 파일 업로드/다운로드 샘플

2014.06.24 09:51

델파이(C++빌더) XE6에 추가된 BaaS 클라이언트 컴포넌트 중 TBackendFiles 컴포넌트를 활용해 BaaS에 파일을 업로드 하고 다운로드 하는 샘플입니다.

개인적으로 큰 관심을 갖는 BaaS에 샘플이 하나하나 추가되어 기분이 좋네요^^

(앞으로 다양한 활용방안과 잠재력을 갖고 있는 서비스라고 생각합니다.)


Uploading images to the cloud with BaaS in RAD Studio XE6





관련자료



저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Firemonkey/데이터 엑세스 BAAS, C++빌더, Delphi, XE6

  1. Blog Icon
    관심

    안녕하세요~~!!
    테스트 프로그램 작업중에 궁금한점이 있어서 ^^
    지금 서버에서 쿼리 실행해서 결과값을 TLabel 로 결과값을 뿌려주고 있는데 한글이 다 깨져 나오네요..
    StringGrid 로 보내면 잘 나오는데.. 무슨 설정을 해줘야 한글이 잘 나올까요?
    혹시 아시나요? ~~!!

  2. 이 내용과 관련이 없는 질문이신것 같아요 ㅠㅜ

    서버 측은 어떻게 구성되었나요? DataSnap인가요?
    DataSnap으로 처리해도 Label에 표시할 경우 문제가 되지 않습니다.

    여러모로 테스트 시도해 보시길 바래요^^

  3. Blog Icon
    델사랑

    안녕하세요?
    안드로이드 스마트폰(삼성 갤럭시 3)에서 테스트해 보는데
    업로드시에
    no mapping for the unicode character exists in the target multibyte code page 메시지가 뜨고
    더이상 진행되지 않는 현상인데, 무엇을 잘 못 한 것일까요?
    감사합니다.

  4. 아 그렇군요. 한글 캐릭터셋에 이슈가 있는 것 같은데요.
    저도 테스트 진행하고 답변을 드리도록 하겠습니다.

  5. Blog Icon
    관심

    죄송합니다... 글들 잘 보고 있고.. 따라해 보면서 다른 궁금증이 생긴지라.. ^^
    전송 방식은 Indy 를 이용하고 있고요...
    주고 받기 잘되고는 있는데.. 유독 한글만.. 쩝...

  6. Indy 방식으로 웹서비스와 연동하시는 것 같습니다.
    아마 웹서비스가 UTF8로 되어 있을 경우

    아래 문서에서 UTF8Decode 메소드를 이용하면 델파이에서 사용하는 Unicode(UTF16)으로 변환하면 잘 될 것 같아요. 테스트 해보시기 바랍니다.
    http://docwiki.embarcadero.com/RADStudio/XE6/en/UTF-8_Conversion_Routines

델파이 IDE 상에서 Github 소스 바로사용하기

2014.06.05 09:41

최근 소스관리 시스템으로 Github가 많이 사용되고 있습니다. 델파이 오픈소스도 Github를 많이 이용하는데요.

git client 소프트웨어를 이용하는 방식과 ZIP 파일 다운로드 방식(우측하단 Download ZIP 버튼클릭)으로 많이 사용하셨을 겁니다.


Jim McKeeth가 델파이 IDE 상에서 Github 소스코드를 사용할 수 있는 유용한 팀을 공개하여 소개해드립니다.

Github에서 다양한 인터페이스를 제공하는데 그중 Subversion 인터페이스를 이용해 IDE에서 사용하는 방식입니다.




간단히 설명해 드리면

  1. Checkout URL을 Subversion으로 변경

  2. Subversion URL로 델파이 IDE에서 서브버전으로 사용


RAD Studio IDE 상에서 서브버전 사용하는 방법은 아래의 문서를 참고하세요.


저작자 표시 비영리 동일 조건 변경 허락
신고
크리에이티브 커먼즈 라이선스
Creative Commons License

험프리.김현수 험프리.김현수 Delphi/C++Builder C++빌더, Delphi, github, IIDE, Subversion, svn

Baas(Backend as a Service)와 RAD Studio(GCM, APN, 푸시알림 가능)

2014.05.27 11:36

BaaS(Backend as a Service)

BaaS는 Backend as a Service 약자로 모바일에서 필요한 Backend 기능을 추상화하여 표준 API(JSON 등)로 제공하는 클라우드 서비스의 한 종류 입니다.

Backend as a service - http://en.wikipedia.org/wiki/BaaS


더보기


간단히 설명하면, 여러분이 앱을 만드는 경우 앱에서 사용하기 위한 데이터, 사용자 정보등의 Backend 기능을 여러분의 서버에 구성하지 않고, BaaS 사이트(또는 연동)에서 제공하는 기능을 설정(커스터마이징) 후 이용하는 방식입니다. 별도의 여러분의 Backend 서비스 개발 과정이 생략되어 개발 시간을 대폭 단축 할 수 있습니다.


대표적인 BaaS 제공자로는 Kinvey, Pharse, Bass.io(국내)가 있으며 제공되는 기능은 푸시알림, SNS 연동, 사용자 관리, 데이터 관리, 이미지/사운드 등의 파일 관리 등이 있습니다.


RAD Studio XE6에서도 새롭게 BaaS 관련된 컴포넌트가 추가되었습니다.


현재는 대표적인 BaaS 서비스인 Kinvey와 Pharse를 제공합니다.

BaaS 컴포넌트


BaaS 컴포넌트는 위와 같이 제공자 컴포넌트와 서비스 기능 컴포넌트로 구분됩니다.

서비스 기능 컴포넌트는 BaaS에서 제공되는 대표적인 기능을 사용할 수 있는 컴포넌트이며, 기능별로 추상화(표준화)되어 제공되어 제공자별로 별도로 구성하지 않아도 됩니다. 앱 개발 시 서비스 기능 위주로 개발하고 제공자를 연결하면 제공자의 서비스와 연결되도록 아주 유연한 구조로 설계가 되어있습니다.

즉, 향후 제공자가 추가된다면, 기존에 구현된 기능을 그대로 사용하고 제공자 컴포넌트만 변경해 적용 할 수 있습니다. 


그리고 BaaS 컴포넌트는 멀티플랫폼을 지원하여, VCL과 FMX에서 모두 사용이 가능합니다.

즉, VCL에서 사용자 및 데이터 관리와 푸시메시지 전송등을 기존의 어플리케이션에서 적용할 수도 있습니다.

BaaS 관련 샘플

다음은 엠바카데로에서 제공하는 BaaS 컴포넌트 관련 설명과 샘플소스입니다. 

(개인적으로 GCM 부분을 따라해 봤는데 아주 쉽게 되었습니다.)

▶ Remote Notification(GCM, APN)


Mobile Tutorial: Using Remote Notifications


메시징 서비스 설정 - 구글과 애플에서 클라우드 서비스 사용을 위한 설정


클라우드 서비스에 구글과 애플 계정 연결 설정


어플리케이션 구현 - 컴포넌트를 이용 클라우드 메시지 수신하도록 구현 및 테스트


데이터에 트리거(Trigger)를 걸어 데이터 변경 시 데이터 전송

데스크탑에서 클라우드 메시지 전송


▶ Storage 이용

BaaS 컴포넌트를 이용한 ToDo List


사용자 계정관리(생성)


▶ 파일 업로드/다운로드


Uploading images to the cloud with BaaS in RAD Studio XE6


C++빌더 샘플 다운로드


      ▶ VCL 어플리케이션에서 특정 사용자에게 푸쉬메시지 전송

      Custom Endpoint 설정과 어플리케이션 데모

      참고



      관련글



      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Firemonkey/기능제어 BAAS, Delphi, Kinvey, Pharse, Rad Studio

      1. Blog Icon
        희아

        문의드립니다. XE6 에서의 GCM 지원은 결국 상용화되어있는 것을 이용하는 것 뿐인가요?
        메시지밖에 안보내는데도...
        비용을 들이지 않고 작업하려면 Send/Receive 를 통신이나 java를 이용하여 개발해 포함시켜야 하는건가요?
        XE5 에서 개발된 샘플을 이용해보려하는데 쉽지않네요.

      2. 네 BaaS를 사용하지 않으려면 위글의 참고 항목의 링크를 확인하시면 직접 GCM/APN을 구현할 수 있습니다.
        말씀하신대로 BaaS 컴포넌트를 이용할때 보다 상당히 어렵습니다.

      3. Blog Icon
        정상언

        국내 bass.io 서비스는 7월28일자로 종료되었다네요
        https://www.facebook.com/backendservice

      델파이 물리엔진 Box2d 소개. FMX, VCL 용(오픈소스)

      2014.04.22 11:11


      Qianyuan Wang은 몇 년전 델파이 VCL용 2D 물리엔진을 오픈소스로 진행하였습니다.


      위의 코드를 멀티플랫폼 용 Firemonkey용 소스코드로 변환되었다는 반가운 소식을 전합니다.(oDesk 엔진니어 참여)

      제가 간단하게 테스트 해보니 테스트가 벅찰 정도로 다양한 샘플이 준비되어 있구요. 

      별도의 라이브러리 추가 없이 소스코드만으로 구현이 가능합니다. 


      여러분의 모바일 앱과 어플리케이션에 물리엔진을 장착해 보세요.


      아래는 Box2d에서 제공하는 데모 목록입니다.
      • Add Pair(stress test)
      • Apply Force
      • Body Types
      • Breakable
      • Bridge
      • Bullet Test
      • Buoyancy Controller
      • Cantilever
      • Car
      • Chain
      • Character Collision
      • Collision Filtering
      • Collision Processing
      • Compound Shapes
      • Confined
      • Continuous Test
      • Convex Hull
      • Conveyor Belt
      • Distance Test
      • Dominos
      • Dynamic Tree Test
      • Edge Shapes
      • Edge Test
      • Explosion
      • Free Rope
      • Gears
      • Graviation Controller
      • Mobile
      • Mobile Balanced
      • Motors & Limits
      • One Sided Platform
      • Pin Ball
      • Poly Shapes
      • PolyCollision
      • Prismatic
      • Pulleys
      • Pyramid
      • RayCast
      • Restitution Test
      • Revolute
      • Rope In Wind
      • Rope Joint
      • Sensor Test
      • Shape Editing
      • Slider Crank
      • Sphere Stack
      • Terrain Box
      • Theo Jansen’s Walker
      • Tiles(stress test)
      • Time of Impact
      • Time of Impact2
      • Tumbler(stress test)
      • Varying Friction
      • Varying Restitution
      • Vertical Stack
      • Web
      • Wheel Joint
      • Ping Pong (Arkanoid / Breakout)



      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Firemonkey/기능제어 appmethod, box2d, Delphi, Firemonkey, vcl, 소스포함, 오픈소스

      RAD Studio(델파이, C++빌더) 단축키

      2014.03.24 10:02

      RAD Studio(Delphi, C++빌더) 단축키 입니다.

      (엠바카데로 문서 자동 번역 후 일부 보정했습니다.)


      컴파일 시 여러건의 오류를 이동하는 단축키를 묻는 분이 있어 찾아보니 Alt + F7, Alt + F8이 있었네요.(저도 모르고 여지껏 마우스로 클릭했네요.^^)

      다양한 단축키 알아두시면 개발도 빠르게 하고, 디버깅도 빠르게 할 수 있겠네요.


      바로 가기작업

      Alt + [

      해당 구분 기호를 찾습니다 (앞으로).

      Alt + ]

      해당 구분 기호를 찾습니다 (역방향).

      Alt + ←

      Alt + ↑ 또는 Ctrl + 클릭 (선언 부로 이동) 작업 이전 위치로 돌아갑니다.

      Alt + F7

      Messages View에 표시되기 전에 오류 또는 메시지의 위치로 이동합니다.

      Alt + F8

      Messages View에 표시된 다음 오류 또는 메시지의 위치로 이동합니다.

      Alt + PgDn

      다음 탭으로 이동합니다.

      Alt + PgUp

      이전 탭으로 이동합니다.

      Alt + →

      Alt + ← 작업 이전 위치로 이동합니다.

      Alt + Shift + ↓

      커서를 한 줄 아래로 이동하여 원래의 커서 위치의 오른쪽에서 단일 열에을 선택합니다.

      Alt + Shift + End

      커서 위치부터 현재 줄의 끝까지 선택합니다.

      Alt + Shift + Home

      커서 위치부터 현재 줄의 처음까지 선택합니다.

      Alt + Shift + ←

      왼쪽의 열을 선택합니다.

      Alt + Shift + PgDn

      커서를 한 화면 아래로 이동하고 원래의 커서 위치를 유지합니다.

      Alt + Shift + PgUp

      커서를 한 화면 위로 이동하고 원래의 커서 위치를 유지합니다.

      Alt + Shift + →

      오른쪽의 열을 선택합니다.

      Alt + Shift + ↑

      커서를 한 줄 위로 이동하여 원래의 커서 위치의 오른쪽에서 단일 열에을 선택합니다.

      Alt + ↑

      선언 부로 이동합니다.

      Click + Alt + Mousemove

      열 단위 블록을 선택합니다.

      Ctrl + /

      선택한 코드 블록의 각 행에 // 를 추가하여 코드를 주석으로 처리하거나, 제거합니다.

      Ctrl + Alt + F12

      열려있는 파일의 드롭 다운 목록을 표시합니다.

      Ctrl + Alt + Shift + End

      커서 위치에서 화면의 끝까지 열을 선택합니다.

      Ctrl + Alt + Shift + Home

      커서 위치에서 화면의 시작까지 열을 선택합니다.

      Ctrl + Alt + Shift + ←

      왼쪽의 열을 선택합니다.

      Ctrl + Alt + Shift + PgDn

      커서 위치에서 현재 파일의 끝까지 열을 선택합니다.

      Ctrl + Alt + Shift + PgUp

      커서 위치에서 현재 파일의 시작 부분까지 열을 선택합니다.

      Ctrl + Alt + Shift + →

      오른쪽의 열을 선택합니다.

      Ctrl + BackSpace

      커서의 왼쪽으로 한 단어를 삭제합니다 (앞의 공백까지의 문자가 삭제됩니다.)

      Ctrl + Click

      선언 부로 이동합니다.

      Ctrl + Delete

      현재 선택된 블록을 삭제합니다.

      Ctrl + ↓

      아래에 한 줄 스크롤합니다.

      Ctrl + End

      파일의 끝으로 이동합니다.

      Ctrl + Enter

      커서 위치의 파일을 엽니 다.

      Ctrl + Home

      파일의 시작 부분으로 이동합니다.

      Ctrl + I

      커서 위치에 탭 문자를 삽입합니다.

      Ctrl + J

      템플릿 팝업 메뉴를 엽니 다.

      Ctrl + K + n

      커서 위치에 책갈피 설정 ( n 은 0 ~ 9의 숫자).

      Ctrl + K + E

      현재 단어를 소문자로 변환합니다.

      Ctrl + K + F

      현재 단어를 대문자로 변환합니다.

      Ctrl + K + T

      커서 위치의 한 단어를 선택합니다.

      Ctrl + ←

      한 단어 왼쪽으로 이동합니다.

      Ctrl + n

      책갈피로 이동합니다 ( n 은 0-9의 책갈피 번호).

      Ctrl + N

      커서 위치에 줄 바꿈을 삽입합니다.

      Ctrl + O + C

      열 단위 블록 모드를 선택합니다.

      Ctrl + O + K

      열 단위 블록 모드를 해제합니다.

      Ctrl + O + L

      행 방향 블록 모드를 선택합니다.

      Ctrl + O + O

      컴파일러 옵션을 삽입합니다.

      Ctrl + P

      다음 문자를 ASCII 시퀀스로 해석합니다.

      Ctrl + PgDn

      화면의 맨 아래로 이동합니다.

      Ctrl + PgUp

      화면 상단으로 이동합니다.

      Ctrl + Q + #

      커서 위치에 책갈피를 설정합니다.

      Ctrl + →

      한 단어 오른쪽으로 이동합니다.

      Ctrl + Shift + C

      커서 위치의 클래스 선언에 대응하는 클래스 보완을 시작합니다.

      Ctrl + Shift + #

      커서 위치에 책갈피를 설정합니다.

      Ctrl + Shift + B

      버퍼 목록을 표시합니다.

      Ctrl + Shift + ↓

      선언에서 구현 또는 구현에서 선언으로 이동합니다.

      Ctrl + Shift + Enter

      사용 항목을 검색합니다.

      Ctrl + Shift + J

      동기화 편집 모드를 선택합니다.

      Ctrl + Shift K-A

      모든 코드 블록을 확장합니다.

      Ctrl + Shift K + C

      모든 클래스를 축소합니다.

      Ctrl + Shift K + E

      코드 블록을 축소합니다.

      Ctrl + Shift K-G

      초기화 / 종료 또는 인터페이스 / 구현

      Ctrl + Shift K + M

      모든 메서드를 축소합니다.

      Ctrl + Shift K + N

      네임 스페이스 / 단위를 축소합니다.

      Ctrl + Shift K + O

      코드 축소를 활성화 또는 비활성화 전환합니다.

      Ctrl + Shift K + P

      중첩 된 절차를 축소합니다.

      Ctrl + Shift K + R

      모든 영역을 축소합니다.

      Ctrl + Shift K-T

      현재 블록의 축소 및 확장을 전환합니다.

      Ctrl + Shift K-U

      코드 블록을 확장합니다.

      Ctrl + Shift + End

      커서 위치에서 현재 파일의 끝까지 선택합니다.

      Ctrl + Shift + G

      새로운 글로벌 고유 식별자 (GUID)를 삽입합니다.

      Ctrl + Shift + Home

      커서 위치에서 현재 파일의 처음까지 선택합니다.

      Ctrl + Shift + I

      선택된 블록을 들여 씁니다.

      Ctrl + Shift + ←

      커서의 왼쪽으로 한 단어를 선택합니다.

      Ctrl + Shift + P

      기록 된 키 스트로크 매크로를 재생합니다.

      Ctrl + Shift + PgDn

      커서 위치에서 화면의 하단까지를 선택합니다.

      Ctrl + Shift + PgUp

      커서 위치에서 화면 상단에서을 선택합니다.

      Ctrl + Shift + R

      키 스트로크 매크로 기록 시작 / 정지를 전환합니다.

      Ctrl + Shift + →

      커서의 오른쪽으로 한 단어를 선택합니다.

      Ctrl + Shift + Space

      코드 파라미터 팝업 창을 엽니 다.

      Ctrl + Shift + T

      [To-Do 항목 추가 대화 상자를 엽니 다.

      Ctrl + Shift + Tab

      이전 코드 페이지 (또는 파일)로 이동합니다.

      Ctrl + Shift + Tab

      이전 페이지로 이동합니다.

      Ctrl + Shift + U

      선택된 블록 들여 쓰기를 해제합니다.

      Ctrl + Shift + ↑

      선언에서 구현 또는 구현에서 선언으로 이동합니다.

      Ctrl + Shift + Y

      커서 위치부터 줄 끝까지 삭제합니다.

      Ctrl + Space

      코드 완성 팝업 창을 엽니 다.

      Ctrl + T

      오른쪽으로 한 단어를 삭제합니다 (다음 스페이스까지의 문자가 삭제됩니다.)

      Ctrl + Tab

      다음 코드 페이지 (또는 파일)로 이동합니다.

      Ctrl + ↑

      한 행 위로 스크롤합니다.

      Ctrl + Y

      현재 행을 삭제합니다.

      F1

      선택된 정규화 된 네임 스페이스의 도움말을 표시합니다.

      Shift + Alt + arrow

      열 단위 블록을 선택합니다.

      Shift + BackSpace

      커서의 왼쪽 문자를 삭제합니다.

      Shift + ↓

      커서를 한 화면 아래로 이동하여 원래의 커서 위치의 오른쪽에서 현재 위치까지 선택합니다.

      Shift + End

      커서 위치부터 현재 줄의 끝까지 선택합니다.

      Shift + Enter

      커서 위치에 새 줄을 삽입합니다.

      Shift + Home

      커서 위치부터 현재 줄의 처음까지 선택합니다.

      Shift + ←

      커서의 왼쪽 문자를 선택합니다.

      Shift + PgDn

      커서를 한 화면 아래로 이동하여 원래의 커서 위치의 오른쪽에서 현재 위치까지 선택합니다.

      Shift + PgUp

      커서를 한 화면 위로 이동하여 원래의 커서 위치의 왼쪽에서 현재 위치까지 선택합니다.

      Shift + →

      커서의 오른쪽 문자를 선택합니다.

      Shift + Space

      공백을 삽입합니다.

      Shift + Tab

      커서를 왼쪽으로 한 탭 위치로 이동합니다.

      Shift + ↑

      커서를 한 줄 위로 이동하여 원래의 커서 위치의 왼쪽에서 현재 위치까지 선택합니다.

      참고


      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Delphi/C++Builder C++Builder, Delphi, 단축키, 델파이, 씨빌더

      1. 오 이거 완전 감사^^

      2. Blog Icon
        싸커홍

        진심으로 감사합니다.

      3. 감사합니다
        출처남기고 퍼가겠습니다.

      사물인터넷(IoT)과 RAD Studio - 다양한 디바이스 연동

      2014.03.21 15:33



       얼마전 애플에서 CarPlay를 발표했습니다. CarPlay는 자동차와 아이폰을 연결 후 시리를 통해 아이폰의 일부기능을 자동차에서 사용할 수 있도록 해주는 방식입니다. 이미 유튜브와 SNS등에 페라리, 벤츠, 볼도에 탑제된 동영상이 올라와 많이들 보셨을 것입니다.

      (http://www.apple.com/kr/ios/carplay/?cid=wwa-kr-kwn-features-com)


       그리고, 애플의 CarPlay 발표 다음날 구글에서 Projected Mode를 발표했습니다. Projected Mode는 메르세데스-벤츠에 탑재될 예정으로 보이는 기술로 애플의 CarPlay의 기능을 대체하고 구글의 서비스와 연동해 네비게이션 등의 기능을 사용하실 수 있을 것으로 예상됩니다.(http://www.androidauthority.com/google-projected-mode-353022/)


      출처 : http://www.bizwatch.co.kr/?mod=info_view&uid=234

       위의 스마트카가 이슈화 되기 앞서 이미 구글 글래스와 삼성의 겔럭시 기어등 웨어러블 디바이스(Wearable device)가 출시되었고, 구글글래스의 경우 SDK와 함께 이미 많은 개발자들의 관심과 새로운 시도가 있었습니다.

       또한, 몇일 전 모토로라에서도 아주 멋진 디자인의 모토360이라는 스마트 시계를 발표했습니다. 


       이렇듯 다양한 스마트 자동차, 스마트 안경, 스마트 시계 등이 나오고 있는 상황이 사용자 입장에서는 아주 좋지만, 개발자 입장에서는 어떻게 접근할까 고민이 될 것 같은데요. 사실 RAD Studio(델파이, C++빌더) 개발자들에게는 좋은 소식이 아닐까 싶습니다.


       왜냐하면, 스마트 자동차, 스마트 안경, 스마트 시계의 OS가 iOS와 안드로이드 플랫폼이기 때문에 멀티플랫폼 개발이 가능한 델파이와 C++빌더로 개발이 가능하기 때문입니다.

      이제는 RAD Studio로 모바일 디바이스 개발 뿐만 아니라 다양한 스마트안경, 스마트 자동차, 스마트 시계까지도 개발이 가능하다고 생각하니 너무 좋네요.^^


       더 반가운 소식은 아래의 그림과 같이 이미 RAD Studio로 다양한 기기에 연동하는 사례가 있었습니다. 그 사례는 Embarcadero Technolgies(이하 엠바카데로)의 Youtube 채널을 통해 공개 되었습니다. 그 동영상의 중심에는 Jim McKeeth가 있었습니다.




      짐 맥키트(Jim McKeeth)

      짐 맥키트는 렘오프젝트 소프트웨어 등 20년이 넘는 오랜 소프트웨어 개발 경력의 델파이와 함께 하였습니다. 

      현재는 엠바카데로 테크놀러지스의 개발자 에반젤리스트팀장 으로써 엠바카데로 MVP 프로그램을 이끌고 있으며 전세계에서 열리는 여러 컨퍼런스에서 델파이와 모바일 개발에 대한 발표자로써도 바쁘게 활동하고 있습니다. 

      짐 맥키트는 스택 오버플로우(Stack Overflow) 상 최초로 델파이 뱃지를 받았으며 지금도 delphi.org(http://www.delphi.org) 팟캐스트에서 델파이 인터뷰와 기타 델파이 뉴스를 공유하고 있습니다.



      오늘은 그가 발표한 동영상 중 구글 글래스 영상을 소개합니다.


      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 RAD Studio 정보 C++Builder, carplay, Delphi, Firemonkey, Google Glass, IOT, Jim McKeeth, Rad Studio

      [후기] 부산가톨릭대학교 특강(델파이의 현재와 모바일 RAD)

      2014.03.14 10:36

      어느덧 봄이 오니 꽃이 피고 새싹도 나오는 것 처럼, 델파이의 새싹을 피우기 위해 3월 12일 부산가톨릭대학교 학생들을 만나러 부산으로 갔습니다.(부산가톨릭대학교에서 델파이 특강을 진행했습니다. )

      올해 2번 부산 방문할때 마다 비가오네요. 이사할때 비가오면 잘된는 말처럼 부산에서의 델파이 부흥도 아주 잘될것 같아 기대가 큽니다.


      저희 데브기어는 델파이를 더 알리고 델파이 인력을 늘리는데 항상 노력하고 있습니다. 앞으로 더 노력하겠습니다.


      아래는 특강에서 발표한 발표자료입니다. 학생들이 재미있게 느낄만한 요소로 구성했습니다.(다음에는 더 박진감 넘치게 해야할 것 같아요.)


      학새회과 소극장에 발표를 위해 방문하니 송구스럽게도 현수막까지 걸어주셨습니다. 감사합니다.(근데... "강현수"... 성희롱을 당했습니다.ㅎㅎ 담당 교수님이 미안해 하시는데 저는 재미있었습니다.)


      학생들이 들어오고 특강이 진행되었습니다. 역시 맨 앞줄은 부담스러운가 봐요 그래도 100석을 거의 매워주어서 학교와 학생들에게 감사했습니다.^^


      특강을 마치고 도움을 주신 부산 델파이 교육장 SYCode(http://www.sycode.co.kr) 대표님과 부산의 명물 돼지국밥을 아주 맛있게 먹었습니다. 부산역 오른쪽 골목 목촌돼지국밥인데 서비스로 순대를 주셔서 부산의 후한 인심을 넘치도록 느낄수 있었습니다.


      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 교육, 세미나 Delphi, 데브기어, 델파이, 부산가톨릭대학교, 특강

      MP4 Tag Library(Win32/64, OSX, iOS, Android 사용가능)

      2014.03.13 09:23


      http://www.3delite.hu/Object%20Pascal%20Developer%20Resources/download.html#mp4taglibrary

      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Firemonkey/기능제어 Delphi, Firemonkey, 파이어몽키

      RAD Studio, Delphi 그리고 C++빌더 로드맵

      2014.03.05 10:06


      RAD Studio, Delphi 그리고 C++빌더 로드맵이 발표되었습니다.


      지난해 멀티플랫폼(파이어몽키)에 너무 치중한다는 일부우려가 있듯이 올해(2014년)에는 VCL과 RTL에도 발전이 있을 것 같아 기대가 되네요^^

      2014년에 2번의 릴리즈를 통해 제공되는 기술과 기능들

      • 안드로이드를위한 완벽한 C + + 툴 체인
      • QPS (품질, 성능, 안정성)
      • 안드로이드와 아이폰 OS에 대한 광고 및 지불 구성 요소
      • 데이터 스냅 미들웨어 향상 (성능, REST 매핑, 아키텍쳐 개선)
      • 새로운 멀티 디바이스 비주얼 디자이너 및 새롭고, 유연한 사용자 인터페이스 구성 요소를 더 강화된 단일 소스 멀티 플랫폼 지원
      • Mobile Backend as a Service(MBaaS) 컴포넌트, Parse, Kinvey(모바일 클라우드 서비스 업체)와 같은 업체와 인터페이스
      • 모바일 및 데스크톱 응용 프로그램의 상호 운용성
      • 안드로이드 KitKat 지원
      • VCL 애플리케이션을 위한 사용하기 쉬운 윈도우 작업 표시 줄 컴포넌트
      • VCL 스타일의 개선과 인텔 태블릿환경의 윈도우에서의 VCL 어플리케이션 지원, 스타일과 센서 컴포넌트
      • 특정 폼 팩터, 특히 구글 글래스를 사용 할 수있는 안드로이드 장치에 대한 직접 지원
      • 아파치 HTTP 서버 모듈은 현재 ISAPI의 IIS 지원과 함께, 웹 브로커 및 데이터 스냅에 대한 지원
      • 다양한 Run time Library(RTL) 개선, XML, JSON 처리와 그외의 것들을 모든 플랫폼 구현을 개선
      • FireDAC 새로운 데이터베이스 버전에 대한 지원을 포함하여 기존 드라이버에 새 드라이버 및 개선,
      • 한 해 동안 구글과 애플에 의해 발표 될 것으로 예상 안드로이드와 아이폰 OS의 미래 버전을 지원합니다.
      • 블루투스 지원 (모바일 장치)
      • C + + 11 언어 사양을 완벽하게 지원 Win32에서의 C + + 컴파일러의 새로운 버전

      원문 : http://edn.embarcadero.com/article/43677

      번역 ; http://translate.google.com/translate?sl=en&tl=ko&js=n&prev=_t&hl=ko&ie=UTF-8&u=http%3A%2F%2Fedn.embarcadero.com%2Farticle%2F43677



      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 RAD Studio 정보 C++빌더, Delphi, Firemonkey, Rad Studio, 델파이, 로드맵, 빌더, 엠바카데로, 파이어몽키

      안드로이드에서 ComPort에 접근할 수 있는 파이어몽키 컴포넌트

      2014.02.12 13:19


      WinSoft에서 안드로이드로 ComPort를 이용할 수 있는 파이어몽키 컴포넌트를 제공합니다.

      물론 안드로이드 라이브러리를 Import해서 구현할 수도 있지만, 델파이로 만든 컴포넌트가 활용성이 좋을 것 같네요.

      아래의 코드는 해당 컴포넌트를 사용하는 샘플코드입니다.

      아래의 링크를 타고 가시면 트라이얼 버전을 다운로드 할 수 있으니, 테스트해보시고 원하시는 앱을 만드셨으면 합니다.

      procedure TFormMain.MemoKeyDown(Sender: TObject; var Key: Word; var KeyChar: Char; Shift: TShiftState);
      begin
        AComPort.WriteByte(Ord(KeyChar));
      end;
      
      procedure TFormMain.TimerTimer(Sender: TObject);
      var Text: string;
      begin
        Text := AComPort.ReadUtf8;
        if Text <> ” then
          Memo.Text := Memo.Text + Text;
      end;


      자세한 내용은 아래에서

      http://www.fmxexpress.com/access-the-com-port-on-android-with-delphi-xe5-firemonkey-component/


      컴포넌트는 아래이 링크에서

      http://www.winsoft.sk/acomport.htm


      확인하실 수 있습니다.

      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Firemonkey/팁과 정보 android, ComPort, Delphi, Firemonkey, WinSoft

      1. Blog Icon
        영원한초보

        데모 프로그램을 보면 Devices에서 하나를 골라야 하는데 어떤 디바이스를 골라야 하나요? OPEN 버튼을 클릭하면 대부분 권한이 없거나 그런 파일이나 디렉토리가 없다고 메시지가 나오네요. 다른 설정할 곳이 필요한가요?

      2. 저도 소개차원에서 남긴 글이어서 자세한 테스트를 진행해 보지 못했습니다. 해당 제공사 사이트에서 질문하시면 답변 얻으실 수 있겠습니다.

      Delphi, C++ Builder Compiler Versions

      2013.12.04 16:42
      크게 몰라도 되지만 간혹 필요한 델파이 및 C++빌더의 버전 정보입니다.

      Delphi conditional VER<nnn>ProductProduct VersionPackage Version

      VER260

      Delphi XE5 / C++Builder XE5 
      (Delphi:Win32/Win64/OSX/iOS/Android) (C++Builder:Win32/Win64)

      19

      190

      VER250

      Delphi XE4 / C++Builder XE4 
      (Delphi:Win32/Win64/OSX/iOS) (C++Builder:Win32/Win64)

      18

      180

      VER240

      Delphi XE3 / C++Builder XE3 
      (Delphi:Win32/Win64/OSX/iOS) (C++Builder:Win32/Win64)

      17

      170

      VER230

      Delphi XE2 / C++Builder XE2 
      (Delphi:Win32/Win64/OSX) (C++Builder:Win32)

      16

      160

      161 is the version for the five FireMonkey packages (at XE2 Update 2): fmi161.bpl, fmx161.bpl, fmxase161.bpl, fmxdae161.bpl, and fmxobj161.bpl.

      VER220

      Delphi XE / C++Builder XE (Win32)

      15

      150

      VER210

      Delphi 2010 / C++Builder 2010 (Win32)

      14

      140

      VER200

      Delphi 2009 / C++Builder 2009 (Win32)

      12

      120

      VER190

      Delphi 2007 for .Net *

      11

      110

      VER180 or VER185

      Delphi 2007 / C++Builder 2007 for Win32 * 

      11

      110

      VER180

      Delphi 2006 / C++Builder 2006 (Win32/.Net) and Delphi/C++Builder 2007 for Win32

      10

      100

      VER170

      Delphi 2005 (Win32/.Net)

      9

      90

      VER160

      Delphi 8 for .Net

      8

      80

      VER150

      Delphi 7 (and 7.1)

      7

      70

      VER140

      Delphi 6 / C++Builder 6

      6

      60

      VER130

      Delphi 5 / C++Builder 5

      5

      NA

      VER125

      C++Builder 4

      4

      NA

      VER120

      Delphi 4

      4

      NA

      VER110

      C++Builder 3

      3

      NA

      VER100

      Delphi 3

      3

      NA

      VER93

      C++Builder 1

      NA

      NA

      VER90

      Delphi 2

      2

      NA

      VER80

      Delphi 1

      1

      NA

      VER70

      Borland Pascal 7.0

      NA

      NA

      VER15

      Turbo Pascal for Windows 1.5

      NA

      NA

      VER10

      Turbo Pascal for Windows 1.0

      NA

      NA

      VER60

      Turbo Pascal 6.0

      NA

      NA

      VER55

      Turbo Pascal 5.5

      NA

      NA

      VER50

      Turbo Pascal 5.0

      NA

      NA

      VER40

      Turbo Pascal 4.0

      NA

      NA


      참고: http://docwiki.embarcadero.com/RADStudio/XE5/en/Compiler_Versions

      저작자 표시 비영리 동일 조건 변경 허락
      신고
      크리에이티브 커먼즈 라이선스
      Creative Commons License

      험프리.김현수 험프리.김현수 Delphi/C++Builder Compiler Versions, Delphi