[RAD스튜디오, 관리자들을 위한 안내서] Part 1-3. 현대화에 대한 고민과 해소 방안
- 2021-04-27
- Posted by: Narae Kim
- Categories: 기술자료, 메인 노출
목차
1부 – 진화하는 소프트웨어 개발 세상 속의 RAD Studio®
- Part 1-1: RAD 탄생과 시장 트렌드
- Part 1-2: RAD스튜디오가 혁신을 받아들이는 여러 방법들
- Part 1-3: 현대화에 대한 고민과 해소 방안 (현재 보고 계신 글입니다.)
2부 – 두 세상에서 최고가 되기 – 왜 RAD스튜디오인가
3부 – RAD Studio® 현재 – 미래를 위한 투자
진화하는 소프트웨어 개발 세상 속의 RAD Studio®
현대화인가 아니면 재구축인가
델파이 또는 C++빌더로 구축한 기존 코드를 가지고 있다면,
가장 첫 질문은,
지금 있는 코드가 실제로 사용되는 유스케이스가 있는가? 그것들은 어떤 것들인가?
해당 유스케이스에서 앞으로도 지금 가지고 있는 코드를 계속 사용할 수 있을까?
만약, 현재 유스케이스에서 앞으로도 계속 사용할 수 있다면 현재 코드는 여전히 가치가 있다고 보면 된다.
그 다음 질문은,
- 지금 가지고 있는 코드에 들어있는 로직을 어떻게 꺼낼 것인가? 그리고 어떻게 앞으로 사용될 곳에 반영할 것인가?
앞으로의 계획을 준비하기 위한 주안점은,
- 시스템의 미래 아키텍처를 그려본다. (예, 원격/모바일 접근이 필요한가 아닌가 등)
- 위험과 비용을 식별하여 명시하고 관리한다.
- 일정과 총 비용을 살펴본다.
- 어느 단계에 새 프로젝트가 필요한 지를 결정한다.
안전을 추구하기, 빠르게 진행하면 시간을 벌기
기존 코드 베이스를 지속적으로 사용하려고 할 때 장애가 되는 것으로
- 첫 버전부터 회사 내에서 오랫동안 진화해 온 코딩 관행을 꼽을 수 있다.
- 기존 코드와 프로젝트가 여전히 효력이 있겠지만,
- 만약 프로젝트가 지금 새로 시작된다고 치면, 개발팀이 다른 방식으로 해보고자 할 것들도 일부 있을 것이다.
계획에 기존의 코드 현대화가 들어있다면
- 기존 코드를 단계별로 업데이트하는 것이 가장 안전한 방법이다.
- 고객은 언제나 최신 상태인 제품을 사용할 수 있고
- 제품 업데이트를 지속적으로 진행하면서 새 방식을 적용할 수 있다.
UI 테스트를 마이그레이션 방법으로 활용하기
테스트를 코드에 추가하는 작업이 개발 프로세스의 한 부분이 되면
- 테스트를 더 빠르고 효과적으로 할 수 있다고 보장할 수 있다.
- 코드 테스트가 보장되면 좋겠다고 누구나 생각한다.
유닛 테스트는 코드 테스트에서 이미 한 부분을 차지한다
- 새 코드, 새 함수, 새 클래스에 유닛 테스트를 추가하기는 쉽다.
UI 테스트는 유닛 테스트와 더불어 널리 사용되는 또 다른 방법이다.
- RAD스튜디오의 오래된 버전을 새 버전으로 마이그레이션 할 때, UI 테스트를 중심으로 진행하면 매우 좋다.
- 아키텍트 에디션에는 라노렉스가 들어있다.
- 라노렉스는 VCL개발 시 UI 테스트를 도와주고
- 향후 코드 변경을 확인하는 기초를 쉽게 추가할 수 있도록 한다.
- RAD 개발자들은 UI 테스트를 만들 수 있다.
- 자신이 만든 애플리케이션이 UAT로 넘어가기 전에 직접 점검할 수 있다.
라노렉스의 장점은
- UI층만 다룬다.
- 따라서 개발자가 원한다면 내부 코드를 얼마든지 고칠 수 있다.
- 사용자 경험 상 변경된 것이 있는지 확인하는 방식이다.
- 모든 것을 검증할 수 있다.
- 반복되는 공통 행위를 저장해 두고, 테스트 여러곳에 넣어서 사용할 수 있다.
- 로그인 행위 등
- 빠르고 유연하게 테스트를 작성할 수 있다.
- 테스트가 생성되고 나서, RAD스튜디오 상에 구축된다.
- 개발팀 바깥에 있는 기여자들이 테스트를 만들 수 있도록 전달할 수 있다.
- 그 결과, 개발팀의 부담을 덜어줄 수 있다.
윈도우10의 최신 기능 추가하기
기존 애플리케이션의 어떤 UI도 몇단계만 간단히 거치면 빠르게 강화할 수 있다.
- RAD스튜디오 컴포넌트 설계 원칙 덕분이다.
RAD스튜디오 컴포넌트 만의 특별한 장점 덕분에 RAD스튜디오로 만든 앱은
- 오래된 윈도우 버전도 작동할 수 있다.
- 윈도우 10 이전 버전에 갇혀있는 일부 사용자들도 RAD스튜디오로 만든 앱을 계속 업데이트할 수 있다.
윈도우 10에서는 높은 DPI 모니터와 DPI가 서로 다른 여러 모니터를 지원한다.
- 이에 발맞추어, RAD스튜디오는
- 그 결과, 전통적인 TImageList를 대체할 수 있는 TVirtualImageList와ㅜTImageCollection를 제공한다.
- 내부적으로 높은 DPI 모니터 별로 적용되는 지원 API를 캡슐화했다.
- 코드를 따로 작성하지 않아도 각 모니터의 스크린 해상도에 따라 알맞은 이미지를 제공한다.
돈과 시간을 절약할 수 있도록 고안하기
인적 부담을 줄일 수 있다는 점은 RAD스튜디오의 가장 큰 장점 중 하나이다.
- 더 적은 인력으로도 코드 기반을 업데이트 할 수 있다.
- 결국 시간과 비용을 크게 절감한다.
- RAD스튜디오에 대한 관심이 급격하게 커지는 이유는 바로 이것 때문이다.
RAD스튜디오는 다양한 주제에 맞게 배울 수 있다.
- 2017년 온라인 컨퍼런스 형태로 일주일간 열린 사물인터넷 부트 캠프에는 180 여개국에서 개발자들이 참가했다.
- 이외에도 LearnDelphi.org 와 EmbarcaderoAcademy.com 에는 훌륭한 온라인 자료들이 있다.
RAD스튜디오 개발자 커뮤니티가 전세계적으로 크긴 하지만,
- 여전히 특정 영역에서는 가끔 개발자가 모자라기도 한다. 이런 상황을 해소하기 위해
- 점점 더 많은 회사들이 C# 개발자를 고용하여 RAD스튜디오를 잘 사용할 수 있도록 교육하고 있다.
- C#개발자는 일반적으로 2주에서 4주 정도면 RAD스튜디오와 해당 프레임워크를 매우 편안하게 사용할 수 있다. (물론 개발자마다 차이가 있긴하다.)
- C# 방식이 델파이를 빼닮은 부분이 많기 때문에 현실성이 높은 방안이다.
- C#을 만든 앤더스 헤즐스버그는 델파이를 만든 사람이기도 하다
RAD스튜디오의 아키텍처는
- 오랜 시간동안 증명되었으며 혁신적인 크로스 플랫폼 솔루션 분야를 여전히 선도하고 있다.
- OOP를 가장 잘 반영한 방식을 따라서 만든 컴포넌트 모델 덕분이다.
- 코드는 쉽게 현대화될 수 있다.
- 시장의 변화와 새 특징 반영할 때 수고가 매우 적다.
- OOP를 가장 잘 반영한 방식을 따라서 만든 컴포넌트 모델 덕분이다.
- 장기 투자 측면에서 ROI가 매우 탁월하다.
- 기존 개발자가 델파이를 익히는 것이 쉽다.
- RAD 개발자는 다른 프레임워크 개발자보다 5배 이상 생산적이다.
- 팀의 규모와 관계없이 RAD스튜디오는 장기 생산성 면에서도 탁월하다.
12.0 12.1 AI AWS C++ c++빌더 chatgpt DelphiCon ios rad서버 RAD스튜디오 UI UIUX UX uxsummit vcl 개발 개발사례 고객사례 기술레터 기술백서 데브옵스 데이터 데이터베이스 델파이 리눅스 마이그레이션 맥 머신러닝 모바일 새버전 샘플 세미나 안드로이드 웹 윈도우 인공지능 인터베이스 출시 커뮤니티에디션 코드 클라우드 파이썬 파이어몽키 현대화