전체 글(61)
-
[디자인패턴]MVC, MVP, MVVM 비교
MVC, MVP, MVVM등 다양한 디자인 패턴을 적용하는 이유는 각각의 역할을 나눠 코드를 관리하자 라는 목적으로 생겨났다. 1. MVC MVC패턴은 Model+View+Controller를 합친 용어이다. MVC패턴의 구조, 동작, 특징, 장점, 단점으로는.. 1) 구조 - Model: Controller에서 요청받은 데이터 관련 작업들을 처리하는 부분 - View : 어플리케이션에서 사용자가 눈으로 보는 부분, 모델에서의 데이터를 뷰에서 나타냄 - Controller : 사용자의 입력을 받고 처리하는 부분 2) 동작 MVC 패턴의 동작 순서 1. 사용자의 Action은 Controller로 들어온다. 2. Controller는 사용자의 Action을 확인하고 Model에 데이터를 요청한다. 3. V..
2021.11.17 -
[Java] 인터페이스와 추상클래스의 차이
추상클래스란? 일반적으로 Java에서 클래스는 2가지로 구분된다. (일반 클래스와 추상 클래스) 추상 클래스는 0개 이상의 추상메소드(아직 구현되지 않은 자식이 구현할)를 가지고, 일반 메소드, 일반 변수 또한 가질 수 있다. 그렇기에 인터페이스 역할도 하면서, 구현체도 가지고 있는 돌연변이 같은 클래스이다. 선언 시 키워드는 abstract 키워드를 사용한다. - 추상클래스는 인스턴스화 할 수 없다. 즉 추상클래스는 상속을 의미함으로써 물려주는 개념이 된다. 그렇기에 부모-자식 관계인 계층 구조를 나타낸다. abstract class Animal { abstract void bark(); void feed(){ } } 인터페이스란? 인터페이스는 쉽게 말하면 껍데기라고 말할 수 잇고, 설계도 또는 명세서..
2021.11.16 -
[JAVA] String 문자열과 StringBuilder, StringBuffer의 비교
Java에서 문자열을 다루는 클래스는 String, StringBuilder, StringBuffer가 있다. 문자열의 연산이 많이 발생할 때를 생각하면 위 클래스의 특징을 이해하고 상황에 맞는 적절한 클래스를 사용해야 한다. String과 StringBuffer/StringBuild 클래스의 가장 큰 차이점은 String은 불변(immutable)의 속성을 갖는다는 점이다. String str = "Hello"; str+=" world"; 위의 코드를 보면 문자열 str이라는 변수가 Hello world로 변경된 것으로 착각할 수 있다. 하지만 기존에 "Hello"값이 들어가 있던 String 클래스의 참조변수 str이 "Hello world"라는 값을 가지고 있는 새로운 메모리영역을 가리키게 변경되고..
2021.11.16