분류 전체보기 28

자료구조 Stack, Queue, Dequeue

Stack(스택)Stack은 삽입과 삭제 같은 쪽에서만 이루어지는 LIFO(Last In First Out)형식의 선형 자료구조이다.스택은 쌓는다는 뜻이다.Stack 주요 용어주요 용어설명Top삽입과 삭제가 일어나는 위치를 의미합니다.Push스택의 맨 위(top)에 데이터를 추가하는 연산입니다.Pop스택의 맨 위(top)에서 데이터를 삭제하고 반환하는 연산입니다.Peek스택의 맨 위(top)에 있는 데이터를 제거하지 않고 반환하는 연산입니다.예시stack = []stack.append(10)stack.append(20)stack.append(30)print(stack) # [10, 20, 30]print(stack.pop()) # 30print(stack) # [10, 20]Queue(큐..

자료구조 2026.03.23

DevOps Research - CI/CD

안녕하세요 오늘은 소프트웨어 배포 과정에서 매우 중요한 개념인 CI/CD에 대해 알아보겠습니다.소프트웨어 개발 과정에서 여러 개발자가 동시에 작업을 하게 되면 코드 충돌이 발생하거나 배포 과정에서 오류가 발생할 가능성이 높습니다. 또한 수동으로 빌드와 배포를 진행할 경우 시간이 오래 걸리고 실수가 발생할 가능성도 존재합니다.이러한 문제를 해결하기 위해 등장한 것이 CI/CD이다.CI란?CI(Continuous Integration) 는 여러 개발자가 작성한 코드를 하나의 저장소에 지속적으로 통합하는 과정을 의미합니다.개발자가 코드를 저장소에 업로드하면 자동으로 빌드와 테스트가 실행되면서, 문제가 없는 경우에만 코드가 통합됩니다.CD란?CD(Continuous Delivery / Continuous Dep..

카테고리 없음 2026.03.16

Android Kotlin 변수와 자료형

안녕하세요 오늘은 Kotlin에서 사용하는 변수와 자료형에 대해서 알아보겠습니다.변수프로그래밍에서 데이터를 저장하고 관리하는 데 사용되는 이름이 지정된 메모리 공간이다.Kotlin의 변수 선언var: 수정 가능한(mutable) 변수val: 불변(immutable) 변수var name = "선우" // 변경 가능val age = 18 // 한번 초기화 후 변경 불가상황에 따라 불변성을 유지하는 val을 우선 사용하길 권장한다.주요 자료형자료형예시 값설명Int12정수형Double3.14소수 점 포함 숫자Float2.71f단정밀도 소수점 숫자Booleantrue / false논리형String"hello"문자열코틀린은 변수 선언 시 타입을 생략할 수 있으며, 값에 따라 자동 추론된다.val n..

android 2025.06.17

Android XML Layout

오늘은 안드로이드 앱을 만들 때 가장 먼저 구성하게 되는 것이 바로 화면, 즉 UI입니다. 그리고 이 UI를 만드는 대표적인 방법이 XML Layout에 대해 알아보겠다!XML LayoutXML Layout은 안드로이드에서 앱의 화면에 보여질 UI 요소들을 배치하고 구성하는 파일이다.버튼, 텍스트, 이미지 등 뷰(View)를 어떤 위치에 어떤 스타일로 보여줄지를 미리 선언적으로 작성할 수 있다.기본 구조 최상단 태그는 보통 ViewGroup (LinearLayout, ConstraintLayout 등)android:layout_width, android:layout_height는 모든 View에 필수이다.layout_width / layout_height 속성match_parent: 부모 크..

android 2025.06.09

2025 AI Expo Korea 회고

안녕하세요! 오늘은 2025년 AI Expo Korea에 참가하고 다른 기업이나 학교의 부스들을 구경한 회고를 써보겠습니다!어떻게 갔을까?사실 나는 AI Expo Korea라는 행사 자체도 모르고 있었다. 그런데 선배가 곰스로 가는거 어떠냐고 하면서 신청하셨다고 해서 AI Expo를 가게되었다, 구성원은 3학년 선배 1명, 그리고 나를 포함한 2학년 4명으로 총 5명이었다. 5월 14일 부터 16일까지 진행이 되는거라서 하루 전날인 13일에 서울 코엑스에 가서 세팅을 진행했다.AI Expo 행사장!행사장에 도착하자마자 가장 먼저 느낀 건 진짜 규모가 크다였다. 코엑스 전시관을 가득 메운 수많은 기업, 학교, 기관들이 각각의 기술과 서비스를 소개하려고 준비 중이었고 엄청 신기한 것들이 많이 보였다.부스들은..

회고록 2025.05.31

Android TextField에서 사용하는 VisualTransformation

안녕하세요. 오늘은 Jetpack Compose에서 텍스트 입력 필드를 더욱 유연하고 효율적으로 다룰 수 있도록 도와주는 VisualTransformation에 대해 알아보겠습니다.VisualTransformationVisualTransformation은 Jetpack Compose에서 텍스트의 표시 방식을 변형하는 데 사용되는 도구이다. 사용자로부터 텍스트 입력을 받는 TextField와 같은 컴포넌트에서 텍스트가 화면에 어떻게 보일지를 조정할 수 있다.왜 사용해야할까?거의 텍스트 필드는 사용자가 직접 입력한 데이터를 그대로 화면에 보여준다. 하지만 입력되는 데이터는 때로 특정 형식을 필요로 한다.예를 들어, 비밀번호는 *로 보이게 하거나, 전화번호는 010-1234-5678과 같은 형식을 보여주고 싶..

android 2025.05.07

Android Module & Multi-Module

안녕하세요 오늘은 Android 개발에서 프로젝트를 체계적으로 관리하기 위해 꼭 알아야 할 개념, Module과 Multi-Module에 대해 알아보겠습니다.ModuleModule은 하나의 독립적인 코드 단위이다.모듈은 독자적인 build.gradle.kts 파일을 가지고 있고, 독립적으로 빌드하거나 테스트할 수 있다.Application Module: 최종 앱 실행용 모듈 (com.android.application)Library Module: 코드나 리소스를 제공하는 모듈 (com.android.library)Java/Kotlin Library Module: 안드로이드 의존성이 없는 Java 또는 Kotlin 기반 모듈Module 만드는 법new -> module을 누르고Templates에서 하나를 ..

android 2025.04.29

Android clickable

오늘은 Jetpack Compose에서 UI에 인터랙션을 부여할 때 자주 사용되는 도구, Modifier.clickable에 대해 알아보겠습니다.clickableclickable은 Jetpack Compose에서 UI 요소를 클릭할 수 있도록 만들어주는 Modifier이다.Modifier.clickable { // 클릭되었을 때 실행할 코드}이렇게 Modifier에 clickable을 붙이면, 해당 요소는 터치 이벤트를 받을 수 있는 상태가 되며, 사용자가 해당 요소를 누르면 onClick 람다가 호출된다.기본 동작과 특징Ripple 효과 제공머터리얼 디자인의 터치 피드백인 Ripple 효과가 기본으로 적용된다.접근성 자동 지원클릭 가능한 요소로 인식되기 때문에, 스크린 리더 등 접근성 기능과 자연..

android 2025.04.25

Android build-logic

오늘은 안드로이드 프로젝트의 빌드 관리를 더 효율적으로 만들어주는 핵심 도구, build-logic에 대해 알아보겠습니다build-logic이란?공통된 빌드 설정을 한 곳에 모아 플러그인 형태로 정의하고,각 모듈에서 간단하게 재사용할 수 있도록 만든 구조build-logic을 사용하는 이유반복되는 설정을 제거해 코드 간결하게 해준다.설정 일관성있게 유지해서 버그 감소시킨다모듈 추가 시 빠르고 쉽게 설정 가능하다.빌드 스크립트 가독성 향상된다.프로젝트 구조 예시root/├── build-logic/│ └── convention/│ ├── build.gradle.kts│ └── src/main/java/com/school_of_company/convention/│ ..

android 2025.04.14

Android Okhttp

오늘은 Android 앱 개발 시 자주 쓰이는 HTTP 통신 라이브러리, 바로 OkHttp에 대해 정리해보려 합니다.OkhttpOkHttp는 Square에서 만든 HTTP 클라이언트 라이브러리이다. Retrofit도 내부적으로 OkHttp를 사용하고 있을 정도로 핵심적인 라이브러리이다.Okhttp의 장점간편한 사용법.OkHttp는 복잡한 설정 없이도 바로 HTTP 요청을 보낼 수 있다.비동기 요청 지원.기본적으로 비동기 방식인 enqueue()를 제공하기 때문에 네트워크 요청으로 인해 UI가 멈추는 문제를 방지할 수 있다.인터셉터를 통한 요청/응답 제어.인터셉터를 활용하면 요청 전에 헤더를 추가하거나 응답 후 공통 처리를 하는 등 전처리/후처리를 자유롭게 설정할 수 있다.로깅과 디버깅 용이하다.HttpL..

android 2025.04.08