반응형

전체 글 31

[Backend ETC] 아파치 (Apache)

아파치 HTTP 서버 (Apache HTTP Server)아파지 Http 서버는 웹 서버입니다. 주로 정적인 콘텐츠(HTML 파일, 이미지, CSS 파일 등)를 클라이언트(웹 브라우저)에게 제공하는 역할을 합니다. 특징 멀티 프로세스: 기본적으로 아파치는 멀티 프로세스 구조로 구현되어 있습니다. 즉, 여러 개의 프로세스를 생성하여 각 프로세스가 독립적으로 클라이언트의 요청을 처리합니다.멀티 쓰레드 지원: 설정에 따라 멀티 쓰레드 방식도 지원합니다. 이는 Apache MPM (Multi-Processing Module)이라는 모듈을 통해 가능합니다. MPM을 사용하면 멀티 프로세스와 멀티 쓰레드 중 하나를 선택할 수 있습니다.확장성: 다양한 모듈을 통해 기능을 확장할 수 있습니다. 예를 들어, PHP, P..

[ETC] 프레임워크(Framework)와 라이브러리(Library)

프레임워크(Framework)프레임워크(Framework)는 소프트웨어 개발에서 구조와 기본 기능을 제공하여 개발 작업을 효율적으로 할 수 있게 도와주는 도구입니다.이렇게 설명하니 확 와닿지 않네요..!  프레임워크 종류부터 살펴보겠습니다. 웹 개발 프레임워크Spring (자바 기반)Django (파이썬 기반)Ruby on Rails (루비 기반)Express (Node.js 기반)모바일 개발 프레임워크React Native (자바스크립트 기반)Flutter (다트 기반)안드로이드 SDK프론트엔드 개발 프레임워크React (자바스크립트 라이브러리이지만 주로 프레임워크처럼 사용됨)Angular (자바스크립트 기반)Vue.js (자바스크립트 기반)다음과 같이 많은 프레임워크들이 있습니다.   프레임워크의 주..

ETC 2024.07.14

[Android Clean Architecture] Hilt 설정

1. Version Catalog 세팅 기준으로 했습니다.2. app, data, domain, presentation 모듈이 생성되어 있는 기준입니다.  Version Catalog (libs.versions.toml)[versions]......kotlin = "2.0.0"......#Hilthilt = "2.51.1"androidx-hilt = "1.2.0"#Kaptkapt = "1.8.10"#Kspksp = "2.0.0-1.0.21"[libraries]......#Hilthilt-android = { group = "com.google.dagger", name = "hilt-android", version.ref = "hilt" }hilt-compiler = { group = "com.google..

[Android] ViewModelStoreOwner 와 ViewModelProvider

ViewModelStoreOwner 와 ViewModelProvider 를 통한 특정 Activity, Fragment에서 ViewModel을 관리하는 방법에 대해 살펴보겠습니다. ◼️ MainActivity val customViewModelOwner: ViewModelStoreOwner = object : ViewModelStoreOwner { override val viewModelStore: ViewModelStore = ViewModelStore() } fun clearCustomViewModelStore() { customViewModelOwner.viewModelStore.clear() }위 코드에서 ViewModelStoreOwner 인..

Android/[Android] 2024.07.02

[Kotlin] Coroutine 실행 순서 살펴보기

코루틴 실행순서를 간단하게 테스트해 보았습니다. 코루틴의 개념은 다루지 않습니다!class MainActivity : AppCompatActivity() { private val mainActivityViewModel: MainActivityViewModel by viewModels() override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) mainActivityViewModel.testCoroutine() }}  [1] 하나의 코루틴스코프 내에 실행 순서private const v..

Language/Kotlin 2024.07.02

[Android Clean Architecture] 멀티 Module 생성

1. 모듈 생성  꼭 Android Library 선택!data, domain, presentation 각각 생성해줍니다.  2. app 모듈의 res 파일을 presentation 모듈로 이전 3. ApplicationClass 생성 및 설정위치: App 모듈 패키지 하위 import android.app.Applicationclass ApplicationClass: Application() { override fun onCreate() { super.onCreate() }} App 모듈 Manifest 설정  4. MainActivity를 presentation 모듈로 이동 4. 모듈 종속성 설정 data, presentation 모듈에 추가하는 것은 이번 포스팅에서 필요 없지..

Android/[Android] 2024.06.29

[Android] Version Catalog

Version Catalog를 사용하는 이유프로젝트 전체에서 사용되는 라이브러리를 중앙에서 관리할 수 있습니다.이는 라이브러리 버전을 일관성 있게 유지하는 데 도움이 됩니다.  예를 들어 클린 아키텍처 구조로 멀티 모듈을 사용하시면서 라이브러리 버전을 각 모듈별로 선언한다면, 라이브러리 버전이 변경될 때마다, 각 모듈의 라이브러리 버전을 변경해야 하는 번거로움이 발생합니다. Version Catalog를 사용하면 이러한 단점을 개선할 수 있습니다.   Version Catalog 생성해당 포스팅에서는 프로젝트 생성시 Version Catalog를 생성하여 진행하겠습니다. (작성일 기준 가장 최근 버전인 Koala는 프로젝트 생성시 디폴트로 Version Catalog가 적용됩니다!)  프로젝트를 생성하면..

[Android] Room : openHelperFactory & 암호화 DB

openHelperFactory는 Android에서 데이터베이스를 관리하기 위한 SQLiteOpenHelper 인스턴스를 생성하는 데 사용됩니다.주로 Room 데이터베이스 라이브러리와 함께 사용됩니다.Room은 SQLite 데이터베이스의 추상화 계층으로, 더 쉽고 안전하게 데이터베이스 작업을 수행할 수 있도록 도와줍니다. openHelperFactory의 주요 역할은 데이터베이스를 여는 데 필요한 SQLiteOpenHelper를 제공하는 것입니다.SQLiteOpenHelper는 데이터베이스 생성 및 업그레이드와 같은 작업을 처리합니다. Room 라이브러리에서 openHelperFactory는 데이터베이스 빌더에 전달되어 사용자 정의 SQLiteOpenHelper를 사용할 수 있도록 합니다.  SQLCip..

[CS] HTTP 상태 코드

HTTP 상태코드HTTP 상태 코드는 서버와 클라이언트 간의 통신 상태를 나타내는 3자리 숫자입니다.각 상태 코드는 특정한 의미를 가지며, 이를 통해 클라이언트는 요청의 결과나 추가 행동이 필요한지 여부를 알 수 있습니다.1xx (Informational): 클라이언트의 요청을 수신하여 처리 중임을 나타냅니다. (거의 사용되지 않는다.)2xx (Successful):  클라이언트의 요청이 성공적으로 처리되었음을 나타냅니다.3xx (Redirection): 클라이언트가 요청을 완료하기 위해 추가적인 동작(조치)을 수행해야 함을 나타냅니다.4xx (Client Error): 클라이언트의 잘못된 요청으로 인해 서버가 요청을 처리할 수 없음을 나타냅니다.5xx (Server Error): 서버의 문제로 인해 요..

Backend/HTTP 2024.06.25
반응형