많은 기업의 시스템들이 "클라이언트 서버(C/S)형"으로 되어있습니다. 이런 시스템들은 대부분 시스템 관리팀에서 각 PC마다 프로그램을 설치해주어야만 사용이 가능합니다. 시스템의 버그나 업데이트 사항이 있다면 또 다시 관리자의 셋업이 필요하죠. 이렇다보니 시스템 구축에 시간을 많이 할애하게 됩니다. 

 

델파이/C++빌더를 사용하는 기업들 또한 VCL로 구축된 C/S형 프로그램들을 많이 사용합니다. 최근에는 윈도우10 대응을 위해 최신 10.2.x 버전을 많이 채택하고 있습니다. 하지만 이제는 PC 뿐만 아니라 스마트폰이나 태블릿 활용도가 높아졌고 특히 Gmail, Google Map, Office 365, 세일즈포스(Salesforce) 등 클라우드 기반의 서비스를 업무 뿐만 아니라 사적인 영역에서도 많이들 사용합니다. 이러한 변화로 인해 업무를 사무실 안에서 뿐만 아니라 외부에서도 처리하는 경우가 늘어나 기존 업무 시스템을 웹 상에서도 활용할 수 있는 방안을 검토하는 기업이 증가하고 있습니다.

 

기존 시스템(특히 "C/S형")의 웹으로 확장을 고려할 때 꼭 염두에 두어야 할 두 가지 포인트를 정리해보았습니다.

 

1. 백엔드 (웹 API 오픈)

기존 시스템을 웹에 재구축하기 위해서는 프론트 엔드와 백엔드가 가장 중요합니다. 그 중에서도 백엔드는 웹 API라는 REST 형식의 서버 구축이 필요합니다. 웹 API와 프론트엔드의 통신은 JSON 포맷으로 진행되는 경우가 대부분입니다. 물론 웹 API를 새로 구축할 때에는 다양한 선택사항이 있습니다. 델파이, C++, 자바, PHP, 루비, C# 등등.. 하지만 기존에 델파이/C++로 되어있는 소스코드를 활용할 예정이라면 델파이 또는 C++빌더RAD서버를 활용하는 것이 가장 편합니다.

 

 

2. 프론트엔드 (웹 API 활용 클라이언트)

웹 브라우저의 프론트엔드 개발은 CSS, 자바스크립트를 사용하는 HTML5로 구축합니다. 이 경우 스크래치 보다는 자바스크립트의 프레임워크를 이용하는 것이 일반적입니다. 스크래치로 전체를 구현하면 브라우저마다 나타나는 차이를 스스로 대응해야하고, 본래 주력해야 할 애플리케이션 구현보다 다른 부분에 손이 많이 가기 때문에 현실적이라고 보기 어렵습니다. 오픈 소스 계열 프레임워크 중에는 jQuery, Angular, React 와 같은 제품들이 많이 사용됩니다. 하지만 오픈 소스 프레임워크를 이용한 개발 환경은 기능 지원이나 툴 조합 선정 및 검증 문제 등이 있어 테스트 작업에 많은 시간이 소요됩니다. 하지만 델파이/C++빌더와 같이 개발을 매우 쉽고 빠르게 만들어 줄 비주얼 컴포넌트들을 갖춘 센차 ExtJS를 활용하면 이와 같은 문제를 해소할 수 있습니다.

 

 

센차 ExtJS에서의 프론트엔드

앞서 프론트엔드의 과제를 확인해보았습니다. 대부분의 개발이 그렇지만, 특히 웹으로의 확장을 위해서는 백엔드 개발 뿐만 아니라 프론트엔드 개발에 대해서도 진행 방법과 도구 선정에 유의해야 합니다. 

마지막으로 소개한 ExtJS 프레임워크는 비주얼한 개발이 가능한 상용 프레임워크 입니다. 델파이/C++빌더를 사용하고 있다면 백엔드는 무상 제공되는 RAD서버(10.2.2 버전부터 제공됨)로, 프론트엔드는 함께 연동 가능한 ExtJS를 활용하면 작업이 매우 간편해집니다.  

 

ExtJS를 어떻게 활용할 수 있는지 엠바카데로의 자료들을 통해 확인해보세요!

 


 

 

 

 

 

번호 제목 글쓴이 날짜 조회 수
공지 [DelphiCon 요약] 코드사이트 로깅 실전 활용 기법 (Real-world CodeSite Logging Techniques) 관리자 2021.01.19 17875
공지 [UX Summit 요약] 오른쪽 클릭은 옳다 (Right Click is Right) 관리자 2020.11.16 16233
공지 [10.4 시드니] What's NEW! 신기능 자세히 보기 관리자 2020.05.27 18878
공지 RAD스튜디오(델파이,C++빌더) - 고객 사례 목록 관리자 2018.10.23 24470
공지 [데브기어 컨설팅] 모바일 앱 & 업그레이드 마이그레이션 [1] 관리자 2017.02.06 25845
공지 [전체 목록] 이 달의 기술자료 & 기술레터 관리자 2017.02.06 21206
공지 RAD스튜디오(델파이, C++빌더) - 시작하기 [1] 관리자 2015.06.30 41796
공지 RAD스튜디오(델파이,C++빌더) - 모바일 앱 개발 사례 (2020년 11월 업데이트 됨) 험프리 2014.01.16 177096
254 Swagger / YAML 및 RESTful API의 자체 문서화 김원경 2020.03.11 1636
253 [10.4 프리뷰] 베타 서비스 시작 & 새 기능 미리 보기 관리자 2020.03.03 1629
252 [FireDAC Skill Sprints] 1. FireDAC 소개 험프리 2015.04.01 1604
251 [업데이트][10 시애틀] RAD Studio 10 시애틀 서브스크립션 업데이트 1 [3] file 험프리 2015.11.25 1587
250 [업데이트][10.2 도쿄][릴리즈 1] 10.2 도쿄 - 릴리즈 1이 출시되었습니다. 험프리 2017.08.09 1583
249 [안드로이드/iOS] 이미 배포(Deployment)된 파일 업데이트 하기 험프리 2016.03.31 1580
248 [FireDAC Skill Sprints] 2. FireDAC으로 DBMS 사용 내역 추적, 모니터링 하기 Humphery 2015.03.07 1560
247 [업데이트][HotFix] VCL BMP Buffer Overflow hotfix(취약점 보안패치) Humphery 2014.08.20 1517
246 [FireDAC Skill Sprints] 3. 캐쉬를 이용한 업데이트와 자동증가필드(Identity) 적용 Humphery 2015.03.07 1516
245 센차 ExtJS 웹 클라이언트 + RAD서버 10.2.3 관리자 2018.04.24 1465
244 [10.3] 안드로이드 권한 모델 적용 방법 험프리 2019.05.17 1449
» 기존 시스템을 웹(Web)으로 확장하기 위해 고려해야 할 두 가지 포인트 관리자 2018.06.11 1430
242 RAD 스튜디오 10.3.1에서 FCM 수신 설정하기 [5] 험프리 2019.06.10 1424
241 [XE8] 버전 컨트롤 시스템 IDE 통합(Mercurial 지원) [1] Humphery 2015.04.15 1402
240 [10.3 리오][업데이트1] VCL, FMX용 새로운 스타일 15종 지원 관리자 2019.02.22 1380
239 C++로 UI를 손쉽게 개발해봅시다! 관리자 2020.04.07 1377
238 [FireDAC Skill Sprints] 5. Cascading Options: 고급기능을 활용 할 수 있는 FireDAC 옵션 Humphery 2015.03.11 1331
237 윈도우 10에서의 High DPI 김원경 2020.03.02 1326
236 이 달의 기술자료 - 2021년 07월 험프리 2021.06.24 1316
235 [업데이트][Hotfix] 일부 파이어몽키 컴포넌트 크기 조정 시 기본크기로 표시되는 이슈 Humphery 2014.12.05 1311