본문 바로가기
개발 이야기

개발 프로젝트 경험담 #1(Angularjs)

by 신나요 2022. 1. 10.

#1 앵귤러와 만나다.(코르도바에서..)

나는 초보 개발자였고, 첫 앵귤러 프로젝트는 Angularjs였다.
정확히는 Cordova프로젝트 안의 Angularjs 였다.

Angularjs와 Angular는 비슷하지만 완전히 다르다. 
Angular는 초기에는 Angularjs라는 이름이었지만 버전 2로 업데이트할 때 Angular로 개명되었다.
Angularjs는 javascript기반인 프레임워크이고, Angular는 typescript기반이다.

기업에서는 앱을 개발하자니 앱 개발자가 부족했(비쌌)고, 웹으로 개발하자니 앱이 주는 이점을 놓치기는 싫었나 보다. 
그 시기에는 코르도바가 한때 유행했었고 나도 코르도바와 Angularjs를 경험 할 수 있었다.

#2 Cordova를 왜 사용하지? 

우리 프로젝트 내에서 코르도바를 사용하는 이유는 단순했다.
프론트 앤드 개발자가 웹으로 화면단을 쉽고 빠르게 개발하고 코르도바 플러그인을 사용하여 카메라나 스마트폰의 센서를 활용해 앱으로서 기능을 구현할 수 있기 때문이었다.

Apache Cordova란
오픈 소스 개발 프레임 워크로 HTML5, CSS3, JavaScript를 사용하여 플랫폼에 의존하지 않는 iOS와 안드로이드 앱 개발을 가능하게 해 준다. 
쉽게 말해 프론트 앤드 개발자가, 프론트 앤드 웹 개발 코딩을(html, css, javascript) 하여 앱을 만들 수 있다.

코르도바?? 잘 모르지만 플러그인을 사용하면 된다 이거지?
일단 화면단 개발에 집중하자. 잠깐... 화면 개발은 Angularjs라고 했는데.. 이건 뭐지?
단지 프론트앤드 개발이 기존 웹 개발이 아니라 Angularjs였을 뿐이었다.
제일 쉬울 줄 알았던 Angularjs부터가 문제였다.

#3 웹 개발이 Angularjs였을 뿐이었는데.

지금 와서 생각해보면 Angularjs는 일반적인 초급 개발자에게는 야간 어려운 편이라고 생각된다.
흔히 하는 얘기로 러닝 커브(학습곡선)가 높다(가파르다)라고 한다.

초급 웹 개발자였던 나는 프로젝트 초반에는 Angularjs와 익숙해지는데 상당한 시간을 써야 했다.
모듈, 컨트롤러, 스코프, 양방향 바인딩, 디렉티브, 서비스 등등....
처음엔 개념을 들어도 이해하기가 어려웠다.
하지만 모든 선배 개발자들이 그러했든, 나도 쓰다 보니 자연스럽게 이해가 되는 순간이 찾아왔고 이제는 당연하게 동작하리라 생각한다.

내가 처음 개발을 시작했을 때 이해가 안 되는 개념을 머리 싸매고 이해하려고 했었다
그리고 그 개념을 이해할 때까지 다음으로 넘어가지 않았던 실수를 해왔다.
지금도 이해 안 되는 부분은 계속 나오지만 이제는 자연스럽게 다음으로 넘어간다.
직접 코딩하거나 그 서비스를 이용하는 중에 이해하는 순간이 반드시 찾아온다고 깨달았기 때문이다.

#4 Angularjs의 장단점

장점
All-in-one이다. 
"네가 뭘 필요한지 몰라서 다 준비해봤어" by google
시스템 개발에 필요한 모든 기능이 있다고 해도 무방하다.
다른 프레임워크가 필요 없고 Angularjs하나만 있으면 javascript의 개발이 가능하다.
내가 크게 느낀 바로는 분업 하기에도 나름 편한 프레임워크이다.

단점
파일 용량이 크고, 렌더링 속도가 쉽게 저하된다.
장점이 단점이 되는 순간이다.
따라서 속도를 중시하는 애플리케이션에는 적합하지 않을 거라 생각된다.
또한 학습비용이 높고, 이제는 프레임워크 인기가 낮아 많이 사용하지 않는다.

#5 코르도바는 문제없었어?

2-3달 정도 Angularjs와 함께 구르다 보니 이제 원하는 화면을 구현할 정도의 기초를 다질 수 있었다.
하지만 그 이후 빌드와 테스트 중에 코르도바의 사악함에 치를 떨게 되는데...
다음 경험담 포스팅에서 작성하도록 하겠다.

'개발 이야기' 카테고리의 다른 글

개발 프로젝트 경험담 #2(Angularjs, Cordova)  (0) 2022.01.11

댓글