본문 바로가기

전체 글1544

[Java][Android] Hilt 활용 예시 만들기 오늘은 Hilt를 활용해 textview에 특정 객체로 부터 전달받은 데이터가 적용되는 예시를 만들어 보겠습니다. 그래들 설정=> 프로젝트 레벨 gradle 파일에 위와 같이 적용해줍니다 (버전 정보는 아래의 공식홈페이지 정보를 참고해주세요)=> 앱 레벨 gradle 파일에 위와 같이 적용해줍니다 => 앱 레벨 gradle 파일에 위와 같이 적용해 줍니다. (버전 정보는 아래의 공식홈페이지 정보를 참고해주세요) https://dagger.dev/hilt/gradle-setup Gradle Build SetupHilt dependencies To use Hilt, add the following build dependencies to the Android Gradle module’s build.gradle.. 2025. 6. 28.
[Kotlin][Android] 코루틴(Coroutine) 사용하기 안녕하세요.이번 글에서는 코루틴(Coroutine)의 개념을 정확하게 이해하고, 실제 안드로이드 앱에서 코루틴을 활용하는 방법을 예제와 함께 살펴보겠습니다. 1. 코루틴(Coroutine)1-1. 코루틴이란?코루틴(Coroutine)은 함수의 실행을 일시 중단(suspend)하거나, 중단된 지점에서 다시 실행(resume)할 수 있는 비동기 프로그래밍 기법입니다.코틀린(Kotlin)에서는 코루틴을 통해 비동기 작업(예: 네트워크 요청, 파일 입출력 등)을 간결하고 효율적으로 처리할 수 있습니다.코루틴을 활용하면 복잡한 콜백 구조 없이, 동기 코드와 유사한 방식으로 비동기 로직을 작성할 수 있다는 장점이 있습니다.1-2. 비동기란?비동기(Asynchronous)란, 어떤 작업이 실행되는 동안 해당 작업의 .. 2025. 6. 26.
[Python] 음성 데이터를 Mel 스펙트로그램과 PyTorch 텐서로 변환해보기 딥러닝 모델은 음성 데이터를 직접 이해하지 못합니다. 따라서 음성은 숫자 배열, 즉 ‘텐서(Tensor)’ 형태로 변환되어야 합니다.이 글에서는 음성 파일을 불러와 Mel 스펙트로그램을 추출하고, 이를 PyTorch 텐서로 변환하는 전처리 과정을 실습해봅니다. 1. 라이브러리 설치 pip install librosa torch matplotlibLibrosa 는 오디오 데이터를 분석하고 처리할 수 있게 해주는 라이브러리입니다. 특히 음성이나 음악을 딥러닝에 넣기 전에 전처리하는 데에 최적화 되어 있습니다. 앞서 언급했듯이 TTS 에서 "음성 파일(wav)" 을 바로 모델에 넣을 수 없기 떄문에 사람의 말소리를 "배열"로 바꾸는 전처리 단계가 필요합니다. Librosa 라이브러리에는 오디오 파일 불러.. 2025. 6. 25.
[Java][Android] Html.fromHtml() 로 HTML 텍스트 표시하기 안녕하세요안드로이드 앱을 개발하다 보면 웹에서 가져온 콘텐츠나 특정 서식이 적용된 텍스트를 TextView에 보여줘야 할 때가 있습니다.단순히 텍스트만 보여주는 것을 넘어, 볼드, 이탤릭, 색상, 목록 등 HTML 태그가 적용된 서식을 그대로 유지하면서 표시하고 싶을 때가 있죠. 이럴 때 유용하게 사용할 수 있는 것이 바로 Html.fromHtml()메소드입니다.Html.fromHtml() 이란?Html.fromHtml()은 HTML 소스 문자열을 Android에서 렌더링할 수 있는 Spanned 객체로 변환해주는 메소드입니다. 이를 통해 복잡한 HTML 파싱 로직 없이도 TextView가 HTML 태그를 해석하여 적절한 서식을 적용하도록 할 수 있습니다. (주의: Html.fromHtml()은 모든 H.. 2025. 6. 24.
[React] 마크다운 프리뷰어 만들기 마크다운이란? 안녕하세요! 이것은 굵은 글씨와 기울임꼴 입니다. 목록 아이템 또 다른 아이템 보시다시피 HTML은 태그가 많아 다소 번거롭고, 글 자체의 가독성을 해치기도 합니다. 글을 쓰기 위한 목적보다는 문서의 구조를 정의하는 데 더 초점이 맞춰져 있었죠. 이런 불편함을 해소하기 위해 2004년 존 그루버(John Gruber)는 "쉽게 쓰고, 쉽게 읽히고, 쉽게 HTML로 변환되는" 마크다운 언어를 만들었습니다.쉬운 문법: #, *, - 와 같이 간단한 기호 몇 가지만으로도 서식을 표현할 수 있습니다. # 제목 → 제목 **굵게** → 굵게 * 목록 → 목록 높은 가독성: 마크다운 문법 자체가 읽기 쉽게 디자인되어 있습니다. HTML처럼 복잡한 태그 없이도 글의 구조를 파악하기 용이합니.. 2025. 6. 23.
[PHP] array_intersect_key() 로 배열에서 필요한 정보만 추리기 안녕하세요, 오늘은 array_intersect_key() 함수를 활용하여 배열 안에서 필요한 정보만 추려보도록 하겠습니다. array_intersect_key() array_intersect_key() 함수는 여러 배열을 비교해 동일한 키(key)가진 항목만 추출합니다. - 값(value)은 비교하지 않고, 키(key)만 기준으로 판단합니다. - 첫번째 배열을 기준으로 비교하고, 나머지 배열들과 공통된 키만 남깁니다. array_intersect_key(array $array1, array $array2, ...): array 이 함수를 활용해서 캐릭터 정보 중 공개할 정보만 추려보겠습니다. '닉네임', 'level' => 35, 'hp' => 120, 'mp' => 80, .. 2025. 6. 22.
[Kotlin][Android] Timber 활용 예시 만들기 오늘은 Timber를 활용해 간단한 예시를 만들어 보겠습니다. Timber는 안드로이드 기본 Log 위에 유틸리티를 제공하는 라이브러리 입니다. 그래들 설정=> 모듈 레벨 build.gradle 파일의 android{} 내부에 위와 같이 설정해 Buildconfig 클래스를 자동생성하게 해줍니다. => 모듈 레벨 build.gradle 파일의 dependencies{} 내부에 Timber 라이브러리를 추가해줍니다. 레이아웃 xml 파일 코드(activity_main.xml) Application 상속 클래스 코드class MyApplication : Application() { override fun onCreate() { super.onCreate() .. 2025. 6. 21.
[Python] tkinter으로 GUI 프로그램 만들기 : Todo 리스트 안녕하세요!이번 글에서는 파이썬의 표준 GUI 라이브러리인 tkinter를 이용해 간단한 Todo 리스트 프로그램을 만들어보겠습니다. 1. 준비물Python 설치Python 3.x 버전이 설치되어 있어야 합니다.tkintertkinter는 파이썬에서 그래픽 사용자 인터페이스(GUI) 프로그램을 만들 수 있게 해주는 표준 라이브러리입니다. 복잡한 설정 없이 간단하게 윈도우, 버튼, 입력창 등을 만들 수 있습니다.대부분의 Python 배포판에는 tkinter가 기본 포함되어 있습니다.만약 아래 코드에서 오류가 난다면, 아래 명령어로 설치해주세요.pip install tk 2. Todo 리스트 프로그램 만들기import tkinter as tk # tkinter 모듈을 불러옵니다.f.. 2025. 6. 19.
[Python] 파이썬으로 TTS(Text-to-Speech) 변환하기 - gTTS 활용 안녕하세요 오늘은 . 파이썬으로 TTS(Text-to-Speech) 변환해보도록 하겠습니다. gTTS는 Google의 Text-to-Speech API를 파이썬에서 간단하게 쓸 수 있게 해주는 라이브러리입니다. 1. gTTS 설치 pip install gTTS 2. gTTS 사용하기. from gtts import gTTS# 1. 텍스트 정의text = "안녕하세요. 파이썬으로 TTS 음성을 만들어 봅시다."# 2. TTS 객체 생성 (한국어 설정)tts = gTTS(text=text, lang='ko')# 3. 파일로 저장tts.save("output.mp3")print("✅ 음성 파일이 'output.mp3'로 저장되었습니다!") 같은 폴더에 output 이라는 이름을 가진 mp3 파일이 생성.. 2025. 6. 18.