전체보기
-
RESTful이란?RESTful은 REST(Representational State Transfer) 아키텍처 스타일을 따르는 API를 의미합니다. REST는 HTTP 프로토콜을 기반으로 자원을 관리하는 방식이며, RESTful API는 이 원칙을 준수하여 설계된 API입니다.REST의 주요 원칙클라이언트-서버 구조클라이언트와 서버는 서로 독립적으로 동작하며, 클라이언트는 서버의 자원을 요청하고 서버는 이를 처리하여 응답합니다.무상태성 (Stateless)서버는 클라이언트의 상태를 저장하지 않습니다. 모든 요청은 필요한 정보를 포함해야 하며, 세션 정보를 서버가 유지하지 않습니다.캐시 가능 (Cacheable)HTTP 캐싱을 활용하여 성능을 개선할 수 있습니다.계층적 시스템 (Layered System)..
RESTful이란? 2025. 2. 28. -
📌 MongoDB란?MongoDB는 NoSQL 데이터베이스 중 하나로, JSON과 유사한 BSON(Binary JSON) 문서 형식을 사용하여 데이터를 저장하는 문서 지향(Document-Oriented) 데이터베이스입니다.관계형 데이터베이스(RDBMS)와 달리 스키마가 고정되어 있지 않으며, 데이터를 컬렉션(Collection)과 문서(Document) 단위로 관리하는 것이 특징입니다.🔹 MongoDB의 핵심 개념1. 문서(Document)MongoDB의 기본 저장 단위로, 키-값 쌍을 가지는 JSON과 유사한 구조를 가집니다.{ "_id": ObjectId("603d2f1d8b3c4a2f1c3a9e0c"), "name": "홍길동", "age": 30, "address": { "cit..
MongoDB란? 2025. 2. 27. -
1. Apache HTTP ServerApache는 오랜 역사를 가진 가장 널리 사용되는 웹 서버 중 하나입니다.특징멀티스레드 기반(MPM, Multi-Processing Module)기본적으로 요청당 프로세스를 생성하는 prefork 모델을 사용하지만, 성능을 높이기 위해 worker 또는 event 모델도 지원합니다.강력한 모듈 시스템mod_rewrite, mod_proxy, mod_ssl 등 다양한 기능을 모듈 형태로 확장할 수 있습니다..htaccess 지원개별 디렉터리에서 .htaccess 파일을 사용하여 설정을 변경할 수 있어 유연성이 높습니다.비교적 쉬운 설정텍스트 기반의 설정 파일 (httpd.conf, apache2.conf)을 사용하여 세부적인 설정이 가능합니다.높은 호환성대부분의 웹 ..
웹 서버 Apache와 Nginx 2025. 2. 26. -
✅ MySQL과 MariaDB의 관계MySQL과 MariaDB는 서로 깊은 관계가 있는 오픈소스 관계형 데이터베이스(RDBMS)입니다.1. MariaDB는 MySQL의 포크(Fork)MySQL은 1995년 Michael "Monty" Widenius가 개발한 오픈소스 데이터베이스입니다.2008년 Oracle이 MySQL을 소유한 Sun Microsystems를 인수하면서, MySQL의 라이선스와 개발 방향에 대한 우려가 커졌습니다.이에 MySQL의 원 개발자인 Monty Widenius가 2009년 MySQL을 기반으로 독립적인 MariaDB를 개발했습니다.즉, MariaDB는 MySQL의 오픈소스 철학을 유지하기 위해 만들어진 대체 DBMS입니다. 2. MySQL과 MariaDB의 주요 차이점비교 항목..
MySQL과 MariaDB의 관계 2025. 2. 25. -
최근 결혼을 준비하며 공유 가계부 어플을 사용해봤습니다.평소에는 가계부를 작성하지 않았지만, 며칠 동안 서로의 수입과 지출을 파악하기 위해 사용해 보았고, 꾸준히 기록하다 보니 생각보다 큰 도움이 되었습니다. 특히, 곧 있을 아파트 입주와 결혼 비용 관리가 필요하다고 느껴 더욱 유용하게 활용할 수 있었습니다. 공유 가계부를 사용하며 좋았던 점은 직접 지출 내역을 정리하고 입력하면서 소비에 대한 인식이 더욱 뚜렷해졌다는 것입니다. 하지만 사용 중간중간 등장하는 광고가 점점 불편하게 느껴졌고, 특히 수입/지출을 입력할 때 나타나는 전면 광고는 더욱 불편했습니다.그래서 직접 만들기로 했습니다. 가계부 앱 개발을 고민하는 분들이 있다면, 참고해 보셔도 좋습니다.1. 기획실제 가계부를 사용해 보며 꼭 필요한 기능..
공유가계부 만들기, 우리가 쓰려고 만든 공유 가계부 "우리" 2025. 2. 24. -
Maven이란?Maven은 아파치 소프트웨어 재단(Apache Software Foundation)에서 개발한 프로젝트 빌드(Build), 의존성 관리(Dependency Management), 프로젝트 관리(Project Management) 도구입니다.Java 기반 프로젝트에서 널리 사용되며, 프로젝트의 라이프사이클을 자동화하고 일관된 빌드 시스템을 제공합니다.1. Maven의 주요 특징1-1) 프로젝트 빌드(Build) 자동화Maven을 사용하면 컴파일, 테스트, 패키징, 배포 등의 빌드 작업을 자동화할 수 있습니다.프로젝트의 라이프사이클을 정의하여 일관된 빌드 방식을 유지할 수 있습니다.1-2) 의존성 관리(Dependency Management)pom.xml을 사용하여 외부 라이브러리(JAR 파..
Maven이란? 2025. 2. 24. -
📌 Gradle이란?Gradle은 빌드 자동화 도구로, 의존성 관리와 프로젝트 빌드를 효율적으로 수행할 수 있도록 도와줍니다.자바(Java), 코틀린(Kotlin), 안드로이드(Android), 스프링 부트(Spring Boot) 등 다양한 프로젝트에서 사용됩니다.1. Gradle의 특징1-1. 의존성(Dependency) 관리build.gradle 파일에서 필요한 라이브러리를 선언하면, 자동으로 다운로드하고 프로젝트에 적용합니다.예시 (Spring Boot)dependencies { implementation 'org.springframework.boot:spring-boot-starter-web'} 1-2. DSL(Domain Specific Language) 사용Gradle은 Groovy 또..
Gradle이란? 2025. 2. 23. -
최근 공유 가계부 앱을 런칭했습니다.이제 기능을 하나씩 확장 중인데요. 오늘은 다국어 기능을 추가했던 과정을 기록해봤습니다.서비스 중인 앱은 Flutter로 개발되었고, flutter_localizations와 intl 패키지를 이용해 다국어 기능을 구현했습니다. 테스트 환경Flutter 3.27.1intl 패키지는 Flutter에서 다국어(i18n)와 숫자, 날짜, 통화 형식 등의 로컬라이제이션을 지원하는 공식 패키지입니다.flutter_localizations와 함께 사용하면 앱의 언어를 디바이스 설정에 따라 자동 변경할 수도 있고, 앱 내 설정을 통해 수동으로 변경할 수도 있습니다. 1. 패키지 다운로드flutter pub add flutter_localizations --sdk=flutterflu..
[Flutter]다국어 구현 2025. 2. 21.