IT

· Spring
이번에는 Spring에서 Advice 적용 순서에 대해 알아보겠습니다. 한 Pointcut에 여러 Advice를 적용할 수도 있습니다. CacheAspect package aspect; import java.util.HashMap; import java.util.Map; import org.aspectj.lang.ProceedingJoinPoint; import org.aspectj.lang.annotation.Around; import org.aspectj.lang.annotation.Aspect; import org.aspectj.lang.annotation.Pointcut; /** * 간단하게 캐시 기능을 구현한 클래스 */ @Aspect public class CacheAspect { privat..
· Algorithm
27866번: 문자와 문자열 첫째 줄에 영어 소문자와 대문자로만 이루어진 단어 $S$가 주어진다. 단어의 길이는 최대 $1\,000$이다. 둘째 줄에 정수 $i$가 주어진다. ($1 \le i \le \left|S\right|$) www.acmicpc.net 문제 단어 S와 정수 i가 주어졌을 때, S의 i번째 글자를 출력하는 프로그램을 작성하시오. 저는 문자열 함수 인 charAt()를 사용했습니다. package main; import java.util.*; import java.io.*; // The main method must be in a class named "Main". class Main27866 { public static void main(String[] args) throws Exc..
· Algorithm
10250번: ACM 호텔 프로그램은 표준 입력에서 입력 데이터를 받는다. 프로그램의 입력은 T 개의 테스트 데이터로 이루어져 있는데 T 는 입력의 맨 첫 줄에 주어진다. 각 테스트 데이터는 한 행으로서 H, W, N, 세 정수 www.acmicpc.net 이 문제는 높이 H, 폭 W으로 구성된 호텔에 N 번째 사람이 가장 가깝게 들어갈 호실을 구하는 문제입니다. 이 문제의 핵심은 엘레베이터를 타고 층수로 올라가는 거리를 따지지 않는다는 점입니다. 문제에서 102호 보다 2101호를 선호한다는 것에 힌트가 있습니다. 저는 해당 문제를 4가지 경우의 수를 세우고 문제에 접근하였습니다. 1. 높이 H가 N 명 보다 작은 경우 2. 높이 H가 N 명 보다 작고, N 이 H와 나누어 떨어지는 경우 3. 높이 H..
· Spring
컨테이너 초기화와 종료 스프링 컨테이너는 초기화, 종료 라이프사이클을 갖고 있습니다. 컨테이너 초기화 AnnotationConfigApplicationContext ctx = new AnnotationConfigApplicationContext(AppContext.class); 위 예제를 보면, AnnotationConfigApplicationContext 생성자를 이용해서 컨텍스트 객체를 생성하는데 이 시점에 스프링 컨테이너를 초기화합니다. 컨테이너에서 빈 객체 구하고 사용 Greeter g = ctx.getBean("greeter", Greeter.class); String msg = g.greet("스프링"); System.out.println(msg); 스프링 컨테이너는 설정 클래스에서 정보를 읽..
· Spring
AOP(Aspect-Oriented Programming)는 소프트웨어 개발에서 모듈화와 코드 재사용을 향상하기 위한 프로그래밍 패러다임 중 하나입니다. AOP는 주로 코드의 횡단 관심사(Cross-Cutting Concerns)를 분리하여 모듈화하는 데 중점을 둡니다. 횡단 관심사란 응용 프로그램의 여러 부분에서 발생하는 비즈니스 로직과는 관련이 적지만 여러 부분에서 공통적으로 나타나는 관심사를 의미합니다. AOP의 핵심 아이디어는 횡단 관심사를 각각의 핵심 모듈에서 분리된 모듈로 정의하고, 이러한 모듈을 필요한 위치에 삽입하여 코드의 재사용성과 유지보수성을 향상시키는 것입니다. 이를 위해 AOP는 주로 다음과 같은 개념의 구성요소를 사용합니다. 1. Ascept (관점) 관점은 횡단 관심사를 정의하는..
· Kotlin
* 이 포스팅은 디모의 Kotlin 강좌를 보고 복습 용도로 제작되었습니다. * 강좌 : www.youtube.com/watch?v=8RIsukgeUVw&list=PLQdnHjXZyYadiw5aV3p6DwUdXV2bZuhlN&index=1 * 코틀린은 안드로이드 및 자바를 대체할 목적으로 만들어진 언어 * 코틀린의 특징 - 최신의 패러다임을 적용하여 자바의 약점들을 개선하면서 Java 가상 머신과는 호환될 수 있게 만들어짐. - 기존에 자바로 개발이 가능했던 웹 서비스, 안드로이드 개발 뿐 아니라 자바스크립트 및 스위프트와의 연동개발도 가능 * 툴 : 코틀린 전용 웹 컴파일러 : play.kotlinlang.org Kotlin Playground: Edit, Run, Share Kotlin Code On..
· Android
* 본 포스팅은 부산가톨릭대학교 소프트웨어학과 모바일 프로그래밍 및 실습 과목의 실습 예제를 다룬 것입니다. 과제) Button을 OnClick 메소드를 이용해서 네이버에 접속하고 전화 다이얼로 가보기 1. activity_main 소스 - 디자인 탭에 버튼 두 개 넣어줍니다. - 다음은 디자인 탭에서 버튼을 두 개 넣어준 XML 코드입니다. 2. MainActvity - 이후 자바 소스코드로 들어가봅시다. - 버튼마다 OnClick에 정의한 메서드를 정의합니다. 해당 버튼을 누르면 정의한 메소드를 호출하게 됩니다. - startActvity는 액티비티를 전환할 때 사용되는 함수입니다. package com.example.week1; import androidx.appcompat.app.AppCompat..
· Android
*해당 포스팅은 커넥트 재단의 edwith-[부스트 코스] 안드로이드 프로그래밍의 강의 자료를 바탕으로 작성되었습니다. 화면을 여러 개 만들어서 각 액티비티 간 화면 전환을 하는 것이 이번 프로젝트에 목표입니다. KEY POINT 1. 한줄평 작성하기, 한줄평 모두 보기를 위한 화면을 만들기. 2. 영화상세 화면의 '작성하기' 버튼을 누르면 한줄평 작성하기 화면을 띄웠다가 돌아오는 기능 만들기. 3. 영화상세 화면의 '모두 보기' 버튼을 누르면 한줄평 모두 보기 화면을 띄웠다가 돌아오는 기능 만들기. 1. 한줄평 작성하기, 한줄평 모두보기를 위한 화면을 만들기. 2. 영화상세 화면의 '작성하기' 버튼을 누르면 한줄평 작성하기 화면을 띄웠다가 돌아오는 기능 만들기. 인텐트를 사용하여 한줄평 작성하기 화면으..
· Android
*해당 포스팅은 커넥트 재단의 edwith-[부스트 코스] 안드로이드 프로그래밍의 강의 자료를 바탕으로 작성되었습니다. 지난 시간에는 영화 상세 화면을 만들어보았습니다. 이번에는 좋아요 버튼과 싫어요 버튼을 눌렀을 때 동작하는 버튼 이벤트와 한줄평 리스트를 나타내는 것을 학습해보았습니다. 1. Inflate 할 레이아웃 만들기. 2. 좋아요와 싫어요 버튼 구현하기. 1. ListView 의 CommetItem 을 Inflate 할 레이아웃 만들기. 리스트 뷰에 있는 각 항목들은 다른 레이아웃을 인플레이트 해서 받기. 먼저 리스트 뷰 에 각 항목을 받아올 레이아웃을 만들어 줍니다. res-layout 에 xml 파일 하나 만들어 줍니다. comment_item_view.xml 이라는 파일을 다음과 같이 만..
runnnerDevHong
'IT' 태그의 글 목록