728x90

전체 글 298

[Java] 백준 2355번 시그마

https://www.acmicpc.net/problem/2355 2355번: 시그마 첫째 줄에 두 정수 A, B가 주어진다. (-2,147,483,648 ≤ A, B ≤ 2,147,483,647) www.acmicpc.net A와 B 사이의 전체적인 합을 구하는 문제 흔히 알고 있는 n(n+1) / 2 1부터 n까지의 합 공식을 살짝만 변형시켜주면 된다. 문제는 1부터 B가 아니라 A부터 B이기 때문에 조건을 설정해서 식을 약간 변형해줘야함. 그결과 (A + B ) * (A - B + 1) /2 라는 공식이 나오게 되었다. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import j..

Algorithm 2022.02.16

[Java] Wraper Class 래퍼 클래스 란?

래퍼 클래스란?(Wrapper Class)? 자바의 자료형은 크게 기본 타입(primitive type)과 참조 타입(reference type)으로 나누어진다. 대표적으로 기본 타입은 char, int, float, double, boolean 등이 있고 참조 타입은 class, interface 등이 있는데 프로그래밍을 하다 보면 기본 타입의 데이터를 객체로 표현해야 하는 경우가 종종 있다. 이럴 때에 기본 자료타입(primitive type)을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(wrapper class)라고 한다. 자바는 모든 기본타입(primitive type)은 값을 갖는 객체를 생성할 수 있습니다. 이런 객체를 포장 객체라고도 하는데 그 이유는 기본 타입의 값을 내부에 두고..

JAVA 2022.02.04

[회고] 이탈리아 가이드 출신 개발자의 2022년 1월 월간회고

2022년 그리고 1월이 지나간다. 시간이 정말 빠르다. 나는 지난 한달동안 잘지냈을까? 새해 계획은 야심차게 기획했지만, 과연 결과는? 벌써부터 반성의 마음이 올라오는게 좀 더 치열하게 살아봐야겠다고 느껴진다. 지난 한달동안 나는 개발자 입장에서 무엇을 했는지 살펴보고자 한다. Tech Blog 1월동안 내가 어떠한 글들을 포스팅 했는지 살펴보았다. 알고리즘 관련 2개 JPA 기본 객체 매핑 불필요한 객체 생성을 피하기 위한 new String에 대해서 계층형 쿼리란? Maven과 Gradle의 차이 StringTokenizer hasMoreTokens() nextToken() Java HashMap Java Lambda & Stream 총 8개의 글을 작성하였다. 알고리즘의 경우엔 문제를 주말을 제외..

생각정리 2022.01.31

[Java] Stream & Lambda 람다 스트림

스트림(Stream)과 람다(Lambda)는 Java 8부터 추가된 API다. 교육을 받던 시기 람다에 대해서 잠깐 언급만하고 넘어갔었고, 아직까지 업무하면서 제대로 사용해본적은 없지만, 공부에는 끝이 없는지라 예제를 통해 어떤 녀석들인지 알아보기로 한다. Lambda 먼저 람다부터 살펴보면 class Calculator { Calculator() {}; public int calc(int n) { return n + 1; }; } class Driver { public static void main(String[] args) { int n = 2; Calculator cal = new Calculator(); System.out.println(cal.calc(n));//3 } } Calculator 클..

JAVA 2022.01.28

[책 리뷰] 그림으로 배우는 HTTP & Network Basic

웹 개발자이다보니 웹에 대해 모르는건 말이 안된다고 생각하는편이다.(당연한거지...) 그런데 막상 인터넷에 있는 자료를 보자니 보통 개인 기록목적으로 작성한것들이 많아서 이해가 되지 않는 부분이 많았고, 올해부터 새롭게 도서로 공부를 하기로 마으 먹은지라...책을 통해서 한 번 읽어봤다. 그림으로 배우는 HTTP & Network Basic은 시각화 자료인 그림으로 되어있다보니 나같은 사람도 접근하기가 수월했다. 한 번은 속독하면서 읽었고, 두 번째부터는 그림들을 천천히 보면서 내 머릿속으로 과정을 천천히 그려보면서 읽어나갔다. 막상 책을 읽으면서 '나는 이런것도 몰랐나?' 이런생각이 들었는데,, 단계적으로 하나씩 하나씩 내 것으로 만들어야겠다.

Book Review 2022.01.27

[책 리뷰] 비전공자를 위한 이해할 수 있는 IT지식

나는 컴퓨터 전공자가 아니다. 전혀 관계없는 전공이지만 힘든 시기를 거쳐 현재 개발자로 근무를 하고 있다. 다른 전공자들처럼 4년간의 대학 내공이 없다보니 처음에 기본적인 업무용어부터 이해하는게 조금 힘들어서 책을 통해 조금씩 알아갔다. 정보처리기사 필기 공부를 통해서 조금씩 알게되었지만 읽은 책과 더불어서 실제 업무를 하다가 모르는 용어가 나오면 단어 하나하나 찾아봐서 공부했던 기억이 난다. 책에 대해서 간략하게 후기를 남겨보자면, 전공자는 굳이 필요할점이 없다는점. 나처럼 완전 다른 비전공자가 IT쪽으로 처음 입문할때 읽어보면 괜찮다는 느낌이 든다. 깊은 내용은 없고 그냥 IT가 뭔지 겉에 살짝 핥을 용도로 가볍게 읽을만한 좋은책이라 생각한다. 비전공자 입장에서는 IT란 이런거구나~ 뭐 이런 생각?!

Book Review 2022.01.26

[Java] HashMap

HashMap 이란? Map 인터페이스를 구현하고 있는 대표적인 자바 클래스. key-value쌍으로 되어있다. Map의 대표적인 특징은 key는 정확히 하나의 value만 가질 수 있다. public class HashMap extends AbstractMap implements Map, Cloneable, Serializable { } HashMap 클래스의 내부는 위와 같은 상속, 구현 관계를 가지고 있다. HashMap은 왜 필요할까? List 형태를 사용하지 않고 HashMap을 사용하는 이유는 바로 성능 때문이다. 만약 List를 사용했다면 검색하는데 있어 시간복잡도는 O(n)으로 나타날것이다. 반면 HashMap은 삽입, 검색 시간에 시간복잡도 O(1)이라는 이점을 가지고 있다. key값의 ..

JAVA 2022.01.26

[Java] StringTokenizer hasMoreTokens() nextToken()

백준 알고리즘을 하다가 Scanner 대신 Buffereader를 많이 사용하는걸 연습했었고, 그 과정에서 많이 보게된 StringTokenizer hasMoreTokens() 그리고 nextToken() 이 친구들이 무엇인지 한 번 살펴보고자 한다. 일단 여기서 자꾸 언급되는 토큰(Token) 이란? ※ 컴파일러는 번역할 경우 먼저 워드해석이라 불리는 기호열로서 입력된 소스 프로그램에서 구문 규칙에 기초하여 이름표, 연산자, 딜리미터 등의 식별을 하고, 내부데이터의 열로 변환. 이 워드해석을 하여 식별되는 단위를 실러블(syllable)이라 하며, 그 내부데이터 표현을 토큰이라함(출처: 네이버 사전) StringTokenizer - 사용자가 지정하는 구분자를 경계로하여 문자열을 나눠주는 Class - ..

JAVA 2022.01.24

Maven과 Gradle 차이

이클립스 기반으로 개발할때는 Maven이 일반적이었는데, 인텔리제이를 접하게 되면서 Gradle이라는 녀석을 알게 되었다. 도대체 이 두 녀석의 차이가 뭔지 알아볼 필요성을 느꼈다.. Maven 이란? 프로젝트를 하다보면 본인의 코드만으로 개발을 하는것이 아닌 수많은 Library들을 활용하여 업무를 진행하게 된다. 만약 이러한 라이브러리들이 수십새가 넘어버린다면 관리를 하는것은 당연히 힘들다. Maven은 바로 이러한 경우에 도와주는 녀석이다. 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 작동하는데 필요한 다른 라이브러리까지 관리하고 네트워크를 통해 자동으로 Set 할 수 있게 해주는 기능까지 있다. 프로젝트의 전체적인 LifeCycle을 관리해주며, 많은 편리함으로 많이 사용되고 있다. Maven..

[SQL] 계층형 쿼리(Hierarchical Query)란?

SQLD를 공부할때, 읽는것만으로 이해가 잘 안되서 계층형 쿼리에 대해 한 번 알아보고자 한다. 계층형 쿼리란 테이블에 계층형 데이터가 존재하는 경우 이를 조회하기 위한 쿼리이다. 먼저 계층형 데이터란? 동일 테이블에 계층적으로 상위와 하위 데이터가 포함된 데이터를 말한다. 예시로 하드웨어 계층적 구조를 살펴보면, 중앙처리장치와 기억장치, 입력장치의 상위 데이터는 하드웨어이며, 하드웨어의 하위 데이터는 중앙처리장치, 기억장치, 입출력장치 3개이다. ex) 테이블로 나타냈을때 예시 장치이름 상위장치 1 하드웨어 null 2 중앙처리장치 하드웨어 3 기억장치 하드웨어 4 입출력장치 하드웨어 5 입력장치 입출력장치 6 출력장치 입출력장치 계층의 쿼리의 형태를 살펴보자. START WITH 조건 CONNECT ..

Database 2022.01.22
728x90