본문 바로가기

전체 글27

[Gradle] implementation과 api, compile의 차이에 대해 오늘은 Gradle에서 사용하는 implementation과 api, 그리고 compile에 대해 알아보겠다! implementation과 api, compile build.gradle에서 사용하는 implementation과 api는 모두 라이브러리를 적용시키는 키워드이다. 오래된 Gradle 버전에는 implementation이 없어서 compile을 사용했고, 새로운 버전에서 compile이 deprecated 되면서 compile 대신에 api 키워드가 사용되게 되었다. 이 때문에 오래된 프로젝트들의 build.gradle 파일들을 보면 api와 compile을 implementation 대신 쓰는 것을 볼 수 있다. 즉, api와 compile은 같은 역할을 한다. 하지만 Gradle은 api나.. 2023. 11. 7.
[Android] 캐시에 대해 오늘은 안드로이드 개발자가 알아야 할 캐시들에 대해 알아보겠다! 1. 앱 내 캐시 (App Internal Cache): - 안드로이드 앱은 내부 저장소 영역에 캐시 데이터를 저장할 수 있습니다. 이러한 캐시는 앱이 실행 중일 때만 접근 가능하며, 앱을 삭제하거나 업데이트할 때 삭제될 수 있습니다. 2. 앱 외부 캐시 (App External Cache): - 안드로이드는 외부 저장소 영역에 앱 캐시를 저장할 수 있는 기능을 제공합니다. 이러한 캐시는 앱을 삭제해도 유지되며, 공용 저장소에 액세스 권한이 필요합니다. 3. SharedPreferences: - SharedPreferences를 사용하여 간단한 키-값 쌍 데이터를 저장할 수 있습니다. 이를 통해 설정, 환경 설정, 사용자 선호도 등을 저장하.. 2023. 11. 3.
[Develop] JVM에 대해 JVM이란? 자바 가상 머신(Java Virtual Machine, JVM)은 시스템 메모리를 관리하면서 자바 기반 애플리케이션을 위해 이식 가능한 실행 환경을 제공한다. JVM은 다른 프로그램을 실행시키는 것이 목적인 프로그램이다. 방어적 코딩(Coding Kung Fu)의 가장 훌륭한 예 가운데 하나이기도 한 간단한 아이디어이기도 하다. JVM은 당시에도 상황을 뒤집어 놓았고 지금까지도 프로그래밍 혁신을 지원하고 있다. JVM의 용도와 정의 JVM에는 2가지 기본 기능이 있다. 자바 프로그램이 어느 기기, 또는 어느 운영체제 상에서도 실행될 수 있게 하는 것("한 번 작성해, 어디에서나 실행한다"는 유명한 원칙이다)과 프로그램 메모리를 관리하고 최적화하는 것이다. 1995년 자바가 공개되었을 때, 모.. 2023. 11. 3.
[Develop] 애자일 개발 프로세스에 대해 오늘은 많은 개발 방법론 중 하나인 애자일 개발 프로세스에 대해 알아보도록 하겠다! 애자일 방법론이란? 애자일은 신속한 반복 작업을 통해 실제 작동 가능한 SW를 개발, 지속적으로 제공하기 위한 SW 개발 방식을 의미한다. 구체적으로 말하자면, 작동하는 SW의 작은 구성 요소를 빠르게 제공해서 고객의 만족도를 개선하는 방식을 의미한다. 시간에 따라 변화하는 고객 요구 사항에 대응하는 민첩한 개발방식! CI/CD와 관련해서 생각해본다면, 애자일은 CI/CD라는 디지털 워크플로우의 기반이다. 물론 초기에 애자일의 초점은 개발 팀의 작업 방식이었으나 DevOps는 하위 프로세스까지 영역을 확장했고 코드가 작성되고 릴리즈될 때까지의 과정을 포함하게 되었다. 그러다보니 우리가 다음에 살펴볼 CI/CD의 애자일한 .. 2023. 11. 2.