분류 전체보기 70

[Spring] 스프링의 Bean을 어떻게 쓸 수 있을까?

목표 : Spring 의 Bean을 간단히 사용해볼 수 있다. 스프링은 무엇을 도와주는가? 스프링의 사용법은 어떻게 되는가? 라는 두가지 주제 중, 스프링은 무엇을 도와주는가? 에 대해 간략히 정의와 함께 알아보았고, 스프링의 사용법을 알기 이전에 그 사용 용어들부터 정리해보고 있다. 우선, 이전 포스트에서 Spring 의 IoC Container가 무엇인지 설명할 수 있게 되었다. 다만, 그 Detail을 조금 더 파고 들고자 한다. Bean이라는 것 앞서 보던 Spring 공식 문서에서 Bean Overview를 통해 자세히 알아보고자 한다. 사실 우린 Bean이라는 것도 이미 배웠다. Bean은 Spring Container (ApplicationContext 구현체) 가 관리하고 생성하고 인스턴스..

Framework/Spring 2022.07.23

[Spring] 스프링의 IoC Container가 뭘까?

목표 : 스프링의 IoC Container 에 대해 설명할 수 있다. 앞선 포스팅에서 스프링 프레임워크가 주는 의문 두가지, 스프링은 무엇을 도와주는가? 스프링의 사용법은 어떻게 되는가? 중에서 스프링의 사용법은 어떻게 되는지 알아볼 차례다. 일단 그 전에, 용어를 정리해야 사용법도 알게 될 것이므로 용어부터 하나씩 보도록 하자. 그 중, IoC Container 에 대해 알아볼 것이고, 그 내용은 스프링 공식 문서를 기반으로 확인해 보겠다. 스프링 코어 (spring-core) 스프링 코어의 가장 처음 나오는 용어가 IoC Container 이다. 그리고 그 문장을 그대로 가져오면 다음과 같다. Foremost amongst these is the Spring Framework’s Inversion o..

Framework/Spring 2022.07.23

[Spring] 스프링 프레임워크가 뭘까?

목표 : 스프링(Spring)이 무엇인지 설명할 수 있다. 더보기 서론이자 내 생각.. 스프링을 별도로 공부한 적은 많이 있지만, 글을 적으려고 할 때마다, 그리고 너무 겉핥기로 알고 있다보니 난감한 부분이 있다. 특히나 어려운 부분은, 오랫동안 발전해왔고 그 히스토리를 온전히 공부하면서 쌓아가야하는 건 아닐까 하는 생각이 항상 들어, 어디부터 어떻게 시작해야하는지 감이 잘 잡히지 않는다. 게다가 Spring Security, Data, Batch, Cloud, JPA 등등 너무도 다양해지는 탓에 어떻게 시작해야하는지 모르는 경우가 많았다. 무작정 토비의 스프링을 들고 공부하면 될지, 아니면 스프링부트로 API 서버 만드는 법부터 하면 되는 건지, JSP를 비롯한 이제는 점점 Legacy라는 단어로 표현..

Framework/Spring 2022.07.22

자바스크립트 기초부터 모던 자바스크립트까지 - 생성자편

목표 : 자바스크립트에서는 생성자를 어떻게 표현하는지 알아본다. 앞선 포스트에서 객체가 어떻게 생성되는지 알아본 적이 있다. 물론 객체 리터럴이 가장 생성하기 쉬운 방식이지만, Object 생성자 함수를 사용해 생성하는 방식에 대해 알아보자. 생성자 함수 생성자 함수(constructor)는 new 연산자와 함께 호출하여 객체(인스턴스)를 생성하는 함수다. 그리고, 생성자 함수에 의해 생성된 객체를 인스턴스(Instance)라고 한다. const person = new Object(); person.name = 'Lee'; person.sayHello = function() { console.log('Hi! My name is ' + this.name); } console.log(person); // {..

자바스크립트 기초부터 모던 자바스크립트까지 - 프로퍼티편

목표 : 객체 프로퍼티에 대해 알아보자. 객체는 자바스크립트의 핵심이다. (함수도 객체다) 이를 토대로, 프로토타입, this 등의 개념으로 확장시켜 나갈 예정이다. 먼저 자바스크립트에서 객체 프로퍼티의 숨은 요소들을 찾아보고, 이후에 함수와 생성자 개념으로 확장시켜 보자. 객체의 프로퍼티를 다시한번 꺼내보자. 먼저 프로퍼티가 무엇인가? 기억이 안날 수 있으니 되돌아가보자. 객체 상태를 나타내는 값(Data) 이다. 즉, Key:Value 로 되어 있으며, 객체는 0개 이상의 프로퍼티로 이루어진 집합이다. 자바스크립트 엔진은 객체의 프로퍼티를 생성할 때, 기본값으로 자동 정의하는 요소가 있다. const person = {a:1}; console.log(Object.getOwnPropertyDescrip..

자바 기초부터 모던 자바까지 - 스트림(stream)편

목표 : 람다를 기준으로 스트림 문법을 이해한다. 이전 포스팅으로, JAVA가 인터페이스를 통해 람다식을 어떻게 만들어 왔는지 히스토리를 보았다. 그리고, java에서는 앞서 배운 함수형 인터페이스의 주요 표현들인 Consumer, Function, Predicate, Supplier들이 어떻게 사용되어 지는지 Stream을 보면서 이해해보도록 하자. Stream(스트림) 부터 알아보자. 보통 Stream(스트림)이라는 단어는 어떤 데이터의 흐름을 뜻한다. 특히, java.io에서는 I/O 프로그래밍을 사용하는 클래스 명에 Stream이라는 단어를 사용하고 있다. 그러나, 지금 배우고자 하는 Stream은 주로 컬렉션 프레임워크나 이와 유사한 형태의 데이터를 처리할 때 도움을 줄 수 있는, 자바 8에서 ..

Programming/Java 2022.07.16

[java] Number of Islands

[참고문제] : https://leetcode.com/problems/number-of-islands/ Number of Islands - 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 문제 풀이 DFS/BFS 문제이고, 연결된 구간의 갯수를 찾는 문제다. 특히나, 전형적인 문제라 BFS로 풀어보기로 했다. 생각의 흐름 - 방문 여부는 누적되도 된다. 이전에 풀었던 문제는 중복적으로 체크하면 안되었기 때문에, 다시 돌려주는 방법을 사용했지만 이번에는 중복해서 활..

Algorithm 2022.07.16

[java] Word Search

[참고문제] : https://leetcode.com/problems/word-search/ Word Search - 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 문제 풀이 전형적인 DFS 문제다. 생각의 흐름 - Recursive하게 풀어보자. DFS는 Stack을 사용하거나, Recursive로 풀면 된다. 이 문제는 Stack을 사용하기 보단, 파라미터가 많아 Recursive하게 풀어주면 좀 더 편하게 풀 수 있을 것으로 생각했다. 생각의 흐름 - 좌,..

Algorithm 2022.07.16

[java] Minimum Size Subarray Sum

[참고문제] : https://leetcode.com/problems/minimum-size-subarray-sum/ Minimum Size Subarray Sum - 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 문제 풀이 연속된 subArray를 어떻게 관리할지가 포인트인 문제다. 생각의 흐름 - 한번만 배열을 읽자 물론 문제를 풀면서 달라질 수 있지만, 일단 주어진 nums배열은 한번만 읽는게 중요할 것으로 보였다. 생각의 흐름 - SubArray를 어떻게..

Algorithm 2022.07.16

[java] Find Minimum in Rotated Sorted Array

[참고문제] : https://leetcode.com/problems/find-minimum-in-rotated-sorted-array/ Find Minimum in Rotated Sorted Array - 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 문제 풀이 이미 정렬되어 있지만, Rotate되어있는 배열에 대해 최소값을 찾는 문제다. 생각의 흐름 - 양쪽에서 바라보자. 이미 정렬이 되어 있으니, 최소값을 찾는 것에만 집중해야 한다. 그 중에서도 양쪽에서 ..

Algorithm 2022.07.14