올 해, 코드량을 더 줄여야 하는 이유?!
- 2021-08-24
- Posted by: Narae Kim
- Categories: 기술자료, 메인 노출
- 원문 링크: https://blogs.embarcadero.com/why-you-should-definitely-write-less-code-this-year/
- 작성자(작성일): Muminjon (2021.8)
개발자라면, 프로젝트에서 코드량이 많아질수록 위험성 또한 커진다는 사실을 이미 충분히 인지하고 있을 것입니다. 보다 정확하고 제한적으로 코드를 엄격하게 관리하고 싶다면, 유지보수 작업에 시간 대부분을 할애해야 할 것입니다.
코드 작성은 정말 재밌습니다. 소설을 쓰는 느낌이라고 할까요? 하지만 소프트웨어 개발은 비즈니스이자 제품에 가치를 더해주는 역할을 해주어야 합니다. 만약 코드베이스를 대량 변경해야 한다면, 불필요한 코드 라인이 동시에 대량 발생할 수도 있습니다.
왜 코드가 적을수록 좋은 코드인걸까요?
우리는 대부분의 시간을 가장 뛰어난 코드 라인을 작성하는데 사용합니다. 많은 양의 코드를 작성하다보면 가독성이 저하될 수도 있습니다. 큰 규모의 코드베이스로 작업을 하는 경우라면, 다른 개발자들이 여러분의 코드를 확인해야 하는 경우도 있구요.
큰 규모의 프로젝트는 코드를 적게 쓸수록 안전성은 더욱 높아집니다. 오류 발생 가능성은 줄어들구요. 그러면 유지보수는 쉬워지고, 개발자가 수천 줄에 달하는 코드를 읽기 위해 소요되는 시간을 줄일 수 있게 됩니다.
하지만 항상 “그러나”라는 단서가 붙기 마련이죠. 예를 들어, 읽기 쉬운 코드를 사용하면 더 많은 코드를 작성하게 될 수도 있습니다. 또는 오버엔지니어링으로 소스 코드에 문제가 발생하게 될 수도 있습니다. 하나의 작은 문제를 해결하기 위해 여러 복잡한 단계의 추상화를 만들게 될 수도 있겠죠. 하지만 다시 말하지만, 분명한 목표와 규칙을 가지고 있다면 뛰어나고 확실한 추상화를 갖추고 있는 것은 정말 좋은 방법입니다.
전반적으로 코드는 포괄적이어야 할 필요도 있습니다. 다른 사람들도 이해할 수 있어야 하니까요.
어떻게 코드량을 줄일 수 있을까요?
개발중인 소프트웨어의 목적을 항상 염두에 두고 있어야 합니다. 반짝이는 기능을 추가하고, 지나치게 복잡한 변경 사항을 만드는 것은 많은 시간이 걸리고 코드량은 많아질 수 밖에 없습니다. 소프트웨어의 용도와 목적을 항상 생각하고 계세요. 우리가 이걸 왜 만들어야 하는걸까? 사용자는 누구지? 지금 누가 이 소프트웨어를 사용하고 있는가?
새로운 것을 도입하기 전에 이러한 질문을 하면, 코드량을 줄이는데 분명 도움이 될 수 있습니다. 이러한 작업을 습관화 한다면 시간은 줄일 수 있고 전체 프로젝트를 복잡하게 만들거나 소스 코드가 잘못된 방향으로 가는 것을 방지할 수 있습니다.
델파이에서 코드량 줄이는 방법
폼에 컴포넌트를 드래그-드랍하는 방식을 사용하면, 아이디어를 신속하게 실제로 구성할 수 있습니다. 제가 정말 좋아하는 방식이에요. 델파이와 C++빌더를 사용하면 생산성은 높이고, 불필요한 작업 시간은 줄일 수 있는 다양한 기능들을 만나볼 수 있습니다.
RAD스튜디오에는 수 백개에 달하는 컴포넌트들이 있습니다. 간단한 UI 컨트롤부터 데이터 액세스 컴포넌트, 클라우드 인식 컴포넌트, 2D-3D 애니메이션, 광범위한 REST 클아이언트 컴포넌트에 이르기까지 다양한 기능들이 있죠.
응답성이 뛰어난 디자인을 구현하고 싶다면, VCL (비주얼 컴포넌트 라이브러리) 또는 파이어몽키 프레임워크에서 제공하는 데스크탑, 태블릿, 스마트폰용 해상도를 인식하는 컴포넌트들을 활용하면 좋습니다.
데이터 인식 기능이 없는 컴포넌트로 데이터를 인식할 수 있도록 만들 수 있다?
C++빌더와 델파이에서 라이브바인딩(LiveBindings) 를 선보이면서, 크로스 플랫폼 앱 개발 생산성이 드라마틱하게 수직 상승했습니다. 라이브바인딩 디자이너와 라이브바인딩 마법사로 다른 여러 소스들을 연결할 수 있기 때문이죠. 단 몇 번의 단계만으로요!
아래 영상을 보시면 좀 더 이해가 쉬울 것입니다. C++빌더로 라이브바인딩 디자이너를 활용해 간단한 데모와 실제 샘플을 개발하는 내용을 확인해보세요.
라이브바인딩에 대한 더 많은 정보는 다음 링크를 참고해보세요! docwiki.embarcadero.com/RADStudio/Sydney/en/LiveBindings_Designer
개발 도구와 컴포넌트들로 더 많은 영역을 커버할 수 있는 방법이 있나요?
겟잇 패키지 매니저(GetIt Package Manager)에는 200개가 넘는 컴포넌트와 라이브러리들이 있습니다. 여기를 잘 살펴보세요. 생산성을 몇 배는 더 높일 수 있는 보석들이 있거든요.
만약 사물인터넷(IoT) 연결을 하고 싶다면, 사물인터넷 컴포넌트 셋을 다운로드 받아보세요. 50여가지의 다양한 사물인터넷 기기들을 연동할 수 있는 컴포넌트들이 있답니다. 아주 적은 코딩만으로 수많은 기기들을 연결할 수 있습니다.
겟잇 패키지 매니저에서 제공되는 강력한 컴포넌트와 라이브러리들을 확인해보세요: getitnow.embarcadero.com
RAD스튜디오에는 개발자를 위한 흥미로운 기능이 또 있는데요. 그 중 하나는 바로 FireMonkey App Low Code Wizard입니다.
파이어몽키 앱 로우 코드 마법사(FireMonkey App Low Code Wizard)란?
로우 코드 개발 플랫폼들이 인기를 끌고 있죠. 코드를 작성하지 않고도 비즈니스 관련 데이터와 클라우드 인식 프로그램을 개발할 수 있다는 점에서 정말 매력적입니다.
다양한 방면에서 델파이가 로우 코드 영역이라고 볼 수 있는 컴포넌트들을 활용해 소프트웨어 개발이 가능하도록 했다는 점에서 로우 코드의 혁명을 주도했다고 생각합니다.
다른 로우 코드 개발 플랫폼들을 델파이 파이어몽키와 비교해보면, 델파이의 장점이 더욱 두드러집니다. 델파이는 프로젝트의 정말 많은 부분을 원하는 대로 적용해서 활용할 수 있습니다. 커스터마이징이 자유롭다는 의미이죠! 즉, 개발자가 할 수 있는 것들 정말 무궁무진하다는 거죠!
파이어몽키 앱 로우 코드 마법사는 새로운 로우 코드 개발 마법사입니다. 여러 화면을 구성하고 다양한 기능들을 갖춘 델파이 파이어몽키 앱을 만들어보세요. 한 번 개발해 놓은 앱의 수정 작업도 쉽고, 최고의 코딩 샘플들을 활용할 수도 있습니다.
자세히 보기: 파이어몽키 앱 로우 코드 마법사(FireMonkey App Low Code Wizard)
파이어몽키 앱 로우 코드 마법사를 지금 다운로드 받아서 활용해보세요!
요약 정리
12.0 12.1 AI AWS C++ c++빌더 chatgpt DelphiCon ios rad서버 RAD스튜디오 UI UIUX UX uxsummit vcl 개발 개발사례 고객사례 기술레터 기술백서 데브옵스 데이터 데이터베이스 델파이 리눅스 마이그레이션 맥 머신러닝 모바일 새버전 샘플 세미나 안드로이드 웹 윈도우 인공지능 인터베이스 출시 커뮤니티에디션 코드 클라우드 파이썬 파이어몽키 현대화