목록분류 전체보기 (37)
기억하기 프로젝트
https://blog.managr.us/entry/email-%EA%B2%80%EC%A6%9D-%EC%A0%95%EA%B7%9C%EC%8B%9D%EA%B3%BC-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EB%B0%A9%EB%B2%95 email 검증 정규식과 테스트 방법 기존에 만들어져 있던 회원 가입 시 이메일 체크 정규식을 보니 몇 가지 빠진 것들이 있었다. 결국 다시 만들기 시작했는데, 어딘가에 이메일 주소에 대한 룰이 있지 않을까 싶었다. 잘 정리된 곳이 하나 있었는데.. blog.managr.us + 추가적으로 정규표현식 정리 https://github.com/ziishaned/learn-regex/blob/master/translations/README-ko.md ziishaned..
Controller 에서 @RequestBody로 넘어온 객체를 좀 더 간편하게 DTO 로 변환할 수 있는 방법을 고민하다가 만난 Mapper 가이드! https://mapstruct.org/documentation/stable/reference/html/#basic-mappings MapStruct 1.3.1.Final Reference Guide The mapping of collection types (List, Set etc.) is done in the same way as mapping bean types, i.e. by defining mapping methods with the required source and target types in a mapper interface. MapStru..
접근 가능한 외부 HTTP URL을 호출하는 방법 중 하나로, RestTemplate이 있다. (Spring framework 에서 제공해주는 모델) https://taetaetae.github.io/2020/03/22/better-rest-template-1-retryable/ 조금 더 괜찮은 Rest Template 1부 - Retryable 웹 어플리케이션을 만들면서 꼭 한번 쯤 만나게 되는 “RestTemplate”. 접근 가능한 외부 HTTP URL(보통 API)을 호출하는 방법중에 하나로 springframework 에서 제공해주는 모듈이다. 특히 큰 한덩어리로 관리되던 Monolithic Architecture 에서 요청을 하고(client) 응답을 주는(server) taetaetae.gi..
스칼라doc - http://docs.scala-lang.org/ko/tutorials/scala-for-java-programmers.html튜토리얼 포인트 - https://www.tutorialspoint.com/scala/스칼라 강좌 - http://hamait.tistory.com/554 (AKKA도 함께 참고)스칼라 학교 - https://twitter.github.io/scala_school/ko/
def 예약어를 통해 만들 수 있는 함수.class HelloScala { def main(args: Array[String]): Unit = { println("Hello, Scala") } } 해당 예제에서는 반환형이 Unit인데, 이는 자바에서 void 자료형과 같다. 즉, 아무 자료형도 아님을 나타내므로 반환 결과가 없는 함수에 붙는 자료형이다. 또한, 스칼라 에서는 반환 값이 있을 때에도 반환 자료형을 생략하는게 가능하다.다음의 name()에서 a를 return하지만, 반환 자료형을 생략한 것을 확인할 수 있다.class HelloScala { def main(args: Array[String]) = { println("Hello, Scala. name:" + name()) } def name(..
4. 클래스와 객체- 스칼라에서 객체를 생성하는 방법 하나는 클래스를 통한 인스턴스화, 나머지 하나는 object예약어를 통해 객체를 바로 생성하는 것 스칼라에는 static이 없다> 기존: 객체가 만들어있지 않은 상태에서 불가피하게 그 멤버를 바로 사용 가능하게 했음. (static)but, 스칼라는 자바보다 더 객체지향적인 접근을 해서, 스칼라에서는 객체이든가, 아직 인스턴스화 되지 않은 클래스이든가 둘 중 하나임. 이러한 이유로 public class대신 object예약어를 통해 아예 처음부터 메모리에 객체를 생성해버리고, 컴파일러는 이 실물 안에 main 이라는 이름이 있다면 이를 프로그램의 시작점으로 생각하고 컴파일함. 객체지향의 철학이 훨씬 가미되었다고 할 수 있음. 스칼라는 생성자가 없다....
3.1 if/else문 - java와 동일 3.2 반복문 : for문java에서 사용하던 for문for (int i = 0; i < 10; i++) {printf(i);}scala에서 사용하는 for문for (i
1. 스칼라 시작스칼라도 JDK기반으로 동작하고(JVM위에서 작동하는 언어) , java의 대표적인 라이브러리들을 사용할 수 있는 장점이 있다.JDK기반이기 때문에, 기본적으로 JDK부터 설치를 해 주어야 한다.intellij 플러그인 "Scala" install 2. 변수 - 컴파일러가 알아서 자료형에 대해 판단하고, 메모리공간 알아서 확보, 필요하다면 묵시적 형변환을 통해 필요한 자료형으로 바꿔줌var : 일반적인 변수val : java에서 흔히 말하는 final 변수자료형을 명시해줄경우 - var a: Int = 5(빈 값일 경우) var b = None (권장).. null도 가능하긴 함2.2 기본자료형, 참조자료형- 기본자료형 : String 제외하고는 AnyVal라는 공통의 이름으로 불림- 참..
우선순위큐(Priority Queue) 문제 - 문제11. 이진 힙에서 값 k보다 작은 모든 요소를 찾는 알고리즘을 제시하시오.풀이) 이진 힙의 root부터 시작하여, root의 값이 k보다 작다면 출력한 후 자식노드(left, right)를 각각 k보다 작은지 또 확인한다. 만약 또 k보다 작다면 출력하고, 각각의 노드를 root로 잡아 또 그 자식노드(left, right)로 가고.. 이런식으로 재귀적으로 호출하며, k보다 큰 수를 만나게 되면 재귀호출을 중지하고 return해준다. 직접 소스를 확인해보고 출력 결과를 보자. 소스)public class PriorityQueue { private int[] array; private int limit; PriorityQueue(int[] array, ..