전체 글

전체 글

    [macOS]특수문자 사용하기

    윈도우와 달리 맥에서는 특수문자를 입력하는 키가 따로 있다. 심지어 이모티콘도 함께 입력할 수 있는데 이 방법에 대해 알아보겠다 특수문자, 이모티콘 사용하기 우선 특수문자, 이모티콘을 사용하기 위해서는 단축키 혹은 메뉴에서 선택해서 사용할 수가 있다. 단축키 이용하기 > "command + controll + space"키를 동시에 누른다 > 특수문자 입력창이 뜨면 사용하고자 하는 특수문자 혹은 기호를 선택하면 된다. 메뉴 탭을 이용하기 > 상단 '편집 탭'의 '이모티콘 및 기호'를 선택한다. > 특수문자 입력창이 뜨면 사용하고자 하는 문자를 선택한다.

    LeetCode(43)::Multiply Strings

    문제 Multiply Strings - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 문제파악 Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string. → 즉, 2개의 문자열로 표현된 양수가 들었을때 두스의 곱을 문자열로 표현하라~!! 1 = 0; j--){ int int_nu..

    BaekJoon(2447)::별찍기-10

    문제 2447번: 별 찍기 - 10 재귀적인 패턴으로 별을 찍어 보자. N이 3의 거듭제곱(3, 9, 27, ...)이라고 할 때, 크기 N의 패턴은 N×N 정사각형 모양이다. 크기 3의 패턴은 가운데에 공백이 있고, 가운데를 제외한 모든 칸에 별이 www.acmicpc.net 문제파악 재귀적인 패턴으로 별이 찍혀있음(N은 3의 거듭제곱) 크기 3의 패턴은 가운데 공백이있음. 해당 패턴이 재귀에 따라서 커지면서 반복됨. 문제의 기본이 되는 가장작은 사이즈는 우측그림에서 보다시피 초록색영역으로 출력이 된다. 다만 재귀의 형태를 좀더 자세히 보고자 N=9로 확장해보면 파랑색영역으로 보이는것을 알 수 있고 그보다 크 27일때는 빨강의 영역이다. 그리고 별찍기의 특성상 별이 그려지면 탈출을 시켜주고 해당영역이 ..

    GoF::싱글톤 패턴(Singleton Pattern)

    이 글은 '백기선의 코딩으로 학습하는 GoF의 디자인 패턴' 강좌를 듣고 해당 내용을 공부하며 정리한 글입니다. 싱글톤 패턴(Singleton Pattern) 인스턴스를 오직 한 개만 만들어서 제공하는 클래스가 필요한 경우에 사용하는 패턴 즉, 클래스가 최초 한번만 메로리를 할당받고 그 메모리에 인스턴스를 만들어 사용하는 디자인 패턴으로 생성자가 여러 차례 호출되더라도 실제 생성되는 인스턴스는 기존에 생성된 인스턴스이다. 정의(Definition) 소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱..

    Recursion Algorithm(재귀 알고리즘)

    Recursion Algorithm 처음 재귀를 접하게 되면 이해가 안될 것이다. 다만 위 그림을 보면 대충 재귀가 무엇인지 감이 잡힐 것이다. 재귀에 대해서 알아보면 임의의 함수가 자기자신을 호출하는 재귀 호출을 이용하는 알고리즘이다. 같은 행동을 반복적으로 행할때 사용하는 알고리즘인 것이다. 그렇다면 재귀알고리즘은 반복문과는 어떠한 차이가 있을까? 그리고 재귀를 이용함으로써 얻을수 있는 이점은 무엇이고 단점은 무엇인가를 알아보고자한다. 정의(Definition) 임의의 함수가 자기자신을 호출하는 것으로 그 함수를 재귀함수라하며 그 호출을 재귀호출이라한다. 이렇듯 재귀알고리즘은 스스로를 호출하는 함수를 이용한 풀이를 재귀 알고리즘이라고 말한다. 재귀알고리즘을 이용하기 위해 재귀함수를 만들때는 중요한 점..

    [커피일기]칼리타로 추출하기

    칼리타로 추출하기 집에서 처음 커피를 내려서 먹기 시작하면서 드리퍼를 고민했었다. 그렇게 처음 접한 드립퍼는 칼리타(Kalita)였다. 물론 대부분의 핸드드립은 비슷하지만, 칼리타라는 드립퍼의 특성을 좀 더 잘 알고 잘 내리고 싶어서 칼리타에 대해서 잘 알아보도록 하겠습니다. 칼리타의 등장 핸드드립은 17세기 유럽에서 시작해서 긴 시간 발전을 멜리타 벤츠로 부터 시작한 페이퍼 드립이 핸드드립의 토대가 되어 발전되었다. 2차 세계대전 당시 일본에는 많은 커피전문점이 들어왔는데 이당시에는 사이폰과 융드립을 이용한 추출방식을 사용하였다. 특히 융드립은 저도 좋아하는 방식인데 요즘 융드립으로 내려주는 곳이 없어서 조금 아쉽다. 하여튼 융드립으로 커피를 추출시 종이필터를 이용할때 걸러지던 커피기름이 커피에 녹아들..

    API Versioning

    Rest API 버전관리 Rest API의 설계가 변경되거나 구조가 변경될시 버전을 변경하여 관리를 해줘야한다. 이유는 당연히 기존에 사용하던 하위 버전의 Rest API를 호출하여 사용할 수 없게 될경우 클라이언트측의 코드가 변경되어야하기 때문이다. 즉, 기존 사용하던 Rest API를 계속해서 사용하게 해주기 위해 버전을 관리해주어야 한다. 언제 관리해야할까? 그러면 API의 버전을 언제 관리해야할까? 보통 api의 버전은 Major와 Minor로 구분하여 상황에 맞추어 버전을 관리하게 된다. Major Version 이전 버전과 호환의 문제가 깨지는 즉, 클라이언트측의 코드가 변경되어야하는 하는 상황으로 본다. API가 삭제되거나 API URL이 변경되는경우 API의 파라미터가 삭제되거나, 파라미터..

    [커피일기]핸드드립(Hand-Drip)이란?

    핸드드립이란? 핸드드립(Hand-Drip)이란 직접 손으로 커피를 내리는 방식이라고 해서 Hand-Drip이라는 명칭을 사용하고는 있지만 정식명칭은 'Filter Brewed Coffe'가 됩니다. 오늘날에 있어 핸드드립은 기본적인 드리퍼와 서버, 종이필터만 있으면 커피를 추출 할 수 있다. 물론 사실상 드립서버가 없더라도 커피를 추출할 수 있다. 핸드드립의 유래 드립커피의 유래 유럽에서 시작된 커피 추출방식으로 17세기 프랑스, 돈 마틴에 의해 드립포트가 시작되었다고한다. 일반 주전자 주둥이 끝에 필터같은 도구를 장착하여 주전자 안에 커피와 뜨거운 물을 넣고 우려 마시는 방법을 이용했다고 한다. 다만, 이경우는 차와 같이 우려낸 커피를 커피가루가 나오지 않도록 필터(헝겊)를 이용하여 드립포트를 만든 것..

    [커피일기]원두 이름 네이밍 규칙

    원두 이름 네이밍 규칙 여러 커피들을 접하다보면 자연스럽게 원두에 관심을 갖게 될것이다. 커피원두 또한 지역마다, 가공법 마다 맛이 달라지는데, 이러한 점이 와인 명칭과 매우 유사하다. 국가별...지역별 그리고 원료 등급 마지막으로 가공법에 따라 이름이 바뀌는데 와인 명칭과 매우 구성이 유사함을 알 수 있다. 물론 원두마다 약간시 차이는 있지만 아마도 커피의 이름을 통해 정보를 얻는 방법을 확실하게 안다면, 좀 더 내가 원하는 스타일의 다양한 커피맛을 경험할 수 있을 것 같아 원두의 이름의 명명 규칙을 알아보려고 한다. 원두 이름 구성요소 원두이름을 살펴보면 기본적인 원두에 대한 정보를 알 수 있다. 보통 생산 국명, 수출 항구명, 커피 등급, 커피의 생산지역 및 생상 농장명 등으로 구성되어있어 해당 정..

    @Controller, @RestController 어떠한 차이가??

    @Controller, @RestController 어떠한 차이가?? 스프링 MVC구조에서 컨트롤러는 지정하는 방법으로는 @Controller, @RestController 어노테이션을 이용할 수 있다. 일단 기본적으로 스프링 MVC 패턴에서 컨트롤러는 MVC의 기본 흐름 상에서 들어온 클라이언트의 요청을 처리하여 결과를 리턴해 주게 되는데, 여기서 @RestController는 Rest표시에서 알 수 있다시피 Restful 웹서비스에서 주로 사용되는 컨트롤러로, HTTP ResponseBody를 생성하는 방식에서 차이점을 보인다고 한다. @Controller이란? MVC구조에서 컨트롤러 클래스를 bean으로 등록하면 일반적으로 @Controller 어노테이션을 사용하는 것을 알 수있다. 해당 어노테이션..

    [원두일기]브라질 비날 피치 앤 바나나

    Vinhal Peach&Banana 이번에 소개할 커피 원두는 브라질 비날의 피치앤 바나나입니다. 원두 생산지 고도 : 980 ~ 1,000m 수확 : 6 ~ 10월 지역 : Minas Gerais state 품종 : Catucai 2 SL 가공 : 3x Fermented fully washed 추출 방법 핸드드립(칼리타)을 사용하여 추출하였습니다. 원두량은 : 20g 정도 물온도 : 96도 추출시간 : 2분 정도 다만 데일리로 즐기기위함이기 때문에 정확한 양과 시간은 아니고 대략적인 정보이다. 느낌점 해당 커피의 정보를 알아보면 대부부분의 커핑노트가 다음과 같습니다. 복숭아, 바나나, 코코넛, 헤이즐넛 복숭아의 달콤한 향과 은은한 산미 숙성된 단맛의 농후한 바나나향 크리미한 맛의 코코넛향 구운 헤이즐넛..

    [Spring Boot]build 설정파일

    Spring boot에서 gradle로 빌드하기 우해서능 2가지 파일이 설정되어 있어야한다. build.gradle : 빌드에 관한 기능 정의 settings.gradle : 프로젝트 구성 설정(싱글프로젝트의 경우 생략 가능 > 멀티 프로젝트의 경우 설정) 프로젝트간의 의존성을 구성 build.gradle gradle을 사용하기 위해서는 우선 build.gradle 파일을 통해 빌드에 대한 처리를 작성해야한다. build.gradle 내용 및 플러그인 /* * This build file was generated by the Gradle 'init' task. * * This generated file contains a sample Java project to get you started. * For ..