본문 바로가기

TIL173

Java 다형성, instanceof (22.10.25 TIL) 부족했던 개념들을 요새 다시 자바 기본서를 읽으면서 정리중이다. 오늘은 다형성에 관해 정리한 내용! 1. 다형성 (Polymorphism) 1) 부모 타입의 참조 변수로 자식 타입의 여러 객체를 다룰 수 있는 기능. 다형성은 상속을 전제 조건으로 함. 2) 상속한 클래스의 객체는 슈퍼 클래스로도 서브 클래스로도 다룰 수 있음. 3) 같은 코드에서 여러 다른 실행 결과가 나옴. 4) 하위클래스 객체를 상위클래스에 대입하여 사용할 수 있음. 5) 캡슐화(정보 은닉), 상속과 더불어 객체 지향 프로그래밍의 가장 큰 특징 중 하나임. 6) 다형성을 잘 활용하면 유연하고 확장성 있고, 유지보수가 편리한 프로그램을 만들 수 있음. 기본적으로는 아래 코드처럼 객체를 생성할 때 참조 타입과 인스턴스의 타입을 동일하게 .. 2022. 10. 25.
Java Arrays 클래스 (22.10.24 TIL) 오늘 코딩도장 문제를 푸는 도중 Arrays 클래스의 copyOfRange 메서드를 사용한 김에 자주 쓰일법한 메서드를 더 정리해 보았다. 1. Arrays 클래스로 배열 다루기 1) 배열의 비교와 출력 메서드 - toString(), deepToString() 메서드 예시 - toString() 은 1차원 배열에 쓰이고, deepToString() 은 2차원 혹은 다차원 배열에 쓰임. int[] arr1 = {0,1,2,3,4}; int[][] arr2 = {{11,12}, {21,22}}; System.out.println(Arrays.toString(arr1)); //출력 화면 => [0,1,2,3,.. 2022. 10. 24.
JPA (Java Persistence API) (22.10.23 TIL) JPA 란 자바 ORM 기술에 대한 표준 명세로, JAVA에서 제공하는 API이며, 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. (스프링의 몇 가지 표준 인터페이스중 orm 을 사용하기 위해 만든 인터페이스) ORM 이기 때문에 자바 클래스와 DB 테이블을 매핑한다. ORM (Object Relation Mapping) 이란 객체와 DB 테이블이 매핑하는 것을 말한다. 즉, 코드 상에서 생성한 객체가 DB 상의 어떤 테이블과 연결이 된다는 것을 의미한다. 이렇게 되면 내가 객체를 조작함으로써 DB 를 만질 수 있다. JPA 에서 DB 접근을 시도할 때 직접 sql 의 쿼리문을 만들지 않는다. 다만 객체를 이용한 메서드를 통해 이를 관리할뿐이다. 쿼리문일경우 --> S.. 2022. 10. 23.
DTO 란 (22.10.22 TIL) DTO(Data Transfer Object)란 계층간 데이터 교환을 위해 사용하는 객체이다. 아샬님은 DTO 에 대해 제대로 된 객체라고 할 수는 없고 그냥 Java Bean 이라고 하셨다. 그런데 DTO 와 엔티티는 같은 것 아닌가? 왜 DTO 로 굳이 변환을 해야 할까? DTO 를 알기 위해서는 먼저 MVC 패턴에 대해 알아야 한다. MVC 패턴(Model-View-Controller Pattern)은 애플리케이션 개발시 그 구성요소를 Model과 View, Controller 세 가지 역할로 구분하는 디자인 패턴이다. 비즈니스 처리 로직(Model)과 UI 영역(View)의 중간에서 Controller가 연결해주는 역할을 한다. Controller는 View로부터 들어온 사용자 요청을 해석해 Mo.. 2022. 10. 22.
소프트 스킬의 중요성 (22.10.21 TIL) 오늘 금요 지식회의 주제는 노아님의 '코드 리뷰를 해야 하나요?' 였다. 코드리뷰의 중요성, 코드 리뷰가 안되는 이유, 그것을 극복하는 방법 등에 대해 발표해 주셨는데, 제일 와닿았던 부분은 어쨌든 모든 것은 사람과 사람 사이의 관계에서 비롯되는 것이고, 그래서 소프트 스킬이 중요하다는 부분이었다. 소프트 스킬은 직장에서 유대감을 쌓고 공동체적 의식을 확립할 때 기반이 되어준다. 특히 협업이 많은 개발자 분야에서는 정말 중요하다. 소프트 스킬은 단순히 사회성, 긍정적인 태도만을 의미하지는 않는다. 팀워크와 존중, 소통, 정서 공유, 유연성, 융통성, 문제 해결 능력 등 많은 스킬들이 있다. 이러한 소프트 스킬이 없다면 아무리 하드 스킬 (전문적인 능력) 이 뛰어나다고 하더라도 소용이 없다. 결국 모든 것.. 2022. 10. 21.
잡념 없애기 (22.10.20 TIL) 이런저런 생각이 많아지는 요즘,, 미래에 대한 불안도 그렇고 커리큘럼이 이제 9주차에 접어들었는데 현재 동료들에게 매일 도움을 얻고 있지만 반대로 나는 동료들에게 도움이 되는 사람일까? 뭔가 자괴감이 들기도 하고~ 어쨌든 매일매일 안 좋은 생각이 떠오르는 건 아니지만, 그래도 혹시 잡념을 막는 좋은 방법이 있을까 해서 찾아본 영상이다. 정신과 의사 Dr.Tracey Marks 는 Mind wandering (마음이 이리저리 방황하는 것) 은 나의 의도로 발생되는 것이 아니라 뇌의 구조 때문이라고 말한다. Mind wandering 을 담당하는 부분은 default mode network 라고 하는데, 실제로 이 네트워크를 형성하기 위해 서로 통신하는 것은 뇌의 하부에 있는 여러 뇌 구조이다. 내가 무언가.. 2022. 10. 20.