MVC 란? 코드에 대한 유지보수를 어떻게 하면 편하게 할 수 있을까를 고민하다가 탄생하게 된 패턴 중 하나로 Model View Controller 약자이다. 이 MVC 패턴을 통해 애플리케이션을 Model, View, Controller 세 가지 역할로 구분함으로 유지보수가 편리하게 이루어지도록 할 수 있다. MVC 패턴 이외에도 MVP 패턴, MVVM 패턴이 있지만 여기서는 우선 가장 간단한 MVC 패턴에 대해 살펴본다. Model, View, Controller의 역할 Model 애플리케이션에서 사용되는 데이터와 그 데이터를 처리하는 부분, 데이터와 관련된 일을 하는 곳 뷰와 컨트롤러에 의존적이지 않아 재사용 가능 View 사용자에게 보여지는 UI 부분을 담당하는 곳 UI와의 상호작용에서 컨트롤러..
루틴의 종류 우선 루틴의 종류에 대해 살펴보면 메인루틴, 서브루틴, 코루틴이 있다. 메인루틴: main 함수에 의해서 수행되는 프로그램의 흐름 서브루틴: main 함수 안에서 실행되는 개별함수들에 의해서 수행되는 흐름 즉 함수는 루틴의 한 종류이다! -> 보통 루틴은 일직선적인 흐름을 가지고 있다. 코루틴 특징은 일직선적인 흐름을 중간에 suspend해서 지연을 시켰다가 resume을 통해 다시 재시작하는 것이 가능하다는 점이다. 코루틴을 사용하면 이미 실행이 되었더라도 다른 루틴이 실행되는 동안 잠시 suspend를 시켰다가 바쁜게 끝나고 나면 다시 멈춘 곳에서부터 다시 재시작해서 나머지 작업을 끝내는 비동기 프로그래밍이 가능하게 된다. 코루틴은 스레드가 아니다. 코루틴 구조 Coroutine Scop..