분류 전체보기24 [JAVA] concurrentmodificationException 발생 Iterator를 사용했더니 나온 에러. import java.util.ArrayList; import java.util.Iterator; import java.util.List; public class IteratorTest { public static void main(String[] args) { List list = new ArrayList(); // Iterator it = list.iterator(); 이렇게 쓰면 concurrentmodificationException 발생 list.add("Hello"); for(Iterator iterator = list.iterator(); iterator.hasNext();){ String value = iterator.next(); // value .. 2022. 2. 1. [JAVA] REST 와 REST API의 차이와 간단하게 이해하기 REST는 Representational State Transfer 의 약자이다. 한국어로 해석해보자면, '상태 전달의 추상적(대표적) 인 모형' 이란 뜻 정도 되겠다. 자세히 풀어서 설명하자면, 'Represent'라는 영어단어는 '~을 대표하다' 라는 뜻을 가지고 있다. 즉 representational이란 뜻은 state transfer(상태의 이동 혹은 상태가 이동하는 것)에서 대표적인 성질만을 뽑아낸 다는 것을 뜻한다. 예를 들자면 돌맹이를 대표하는 성질은 딱딱함, 깃털 같은 경우에는 가벼움 등이 있겠다. 이걸 보니 abstract가 생각나는데, 실제로 representational이 abstract와 비슷한 의미이다. 이렇게 영어를 알고 보니 REST가 뭐하는 놈인지 이해하기가 훨씬 쉬워진다... 2022. 1. 27. [JAVA] URI와 URL의 차이 간단하게 이해 URI는 URL을 포함하는 상위 개념 URI의 I는 Identifier (식별자) 라는 단어이다. 말 그대로 파일이 어떤 파일인지, 사람으로 따지자면 누구인지 식별해주는 주민등록증 같은 것으로, 파일이 어떤 파일인지 식별해준다는 뜻이다. URL의 L은 Locator (위치를 가르키는 것) 라는 단어이다. 파일이 어디에 있는지, 사람으로 따지자면 gps상에서 현재 있는 위치를 보여주는 것과 비슷한 것으로, 파일이 어디에 있는지 가르킨다는 것이다. URI는 설계 규약이 있으며, 안지킨다고 통신이 불가능한 것은 아니다. 하지만 통신은 의사소통과 같은 것이니까 잘 대화하기 위해서는 규약을 최대한 지키는 것이 좋다. 2022. 1. 27. [Java] 디자인 패턴 - Decorator(데코레이터, 장식자) 패턴 데코레이터 패턴은 기존에 사용하고 있는 클래스를 변경하는 것이 아니라 기능이 변경되고 추가된 유사하지만 새로운 클래스를 생성해 주는 것이다. 밑줄 친 내용만 알면 이해가 훨씬 쉬워진다! 아래는 가정은 단순히 설명을 위한 예시일 뿐 현실과는 다를 수 있으니 깊게 생각하지말고 단순히 그렇구나 하고 받아들이자! 1. 예를들어 커피 레시피가 있다고 하면! 아메리카노가 가장 기본 적인 레시피라고 가정하겠다. 그러면 카페라떼 주문이 들어왔을 때 기존의 아메리카노를 변경하는게 아니라 우유와 기타 등등을 넣어 카페라떼라는 새로운 메뉴를 만드는 것이다! 2. 예를 들어 차(Car)가 있다고 하면! 차의 서로 다른 모델을 만든다면, 초기 모델의 제조공정은 그대로 두고, 업그레이드를 위한 설비를 추가해서 다른 모델을 찍어 .. 2022. 1. 25. 이전 1 2 3 4 5 6 다음