Language

Language/Java

Java의 Singleton

Singleton 패턴은 Class의 인스턴스를 여러 번 생성하는 것이 아닌 하나의 클래스당 하나의 인스턴스를 가지게 만들어 불 필요한 메모리 낭비를 최소화하는 디자인 패턴입니다. Java에서 Singleton 패턴을 구현하는 방법은 여러 가지가 있고 하나씩 소개하도록 하겠습니다. Eager Initialization public class A { private A instance = new A(); private A() {} public static A getInstance() { return instance; } } 가장 기본적으로 singleton으로 구현한 형태입니다. 기본 생성자를 private로 선언하여 외부에서 생성자의 호출을 막고 오직 getInstance함수로 인해 클래스 객체에 접근할 ..

Language/Java

Java - String pool

평범했던 평일 오후, 오픈 톡방에서 한 사람이 Android Intent 이동 부분에서 발생한 오류 부분을 알려달려고 물어 봤다. final String val = "길찾기" if ( val == textView.getText().toString()) { // Intent로 다른 엑티비티로 이동 } 보자마자 String 객체를 == 연산으로 비교한 것이 잘못이라고 생각했지만 큰 오산이었다. String의 메모리 할당 구조에 대해서 잘 알지 못하여 발생한 착각이었다. Java String 참조형 비교 int a1 = 1; int a2 = 1; String b1 = new String("Hello world"); Integer b2 = new String("Hello world"); System.out.pr..

Language/kotlin

[Kotlin] - 기본문법 2

DTOs(Data Transfer Object)(POJOs/POCOs) 생성하기 우선, kotlin을 사용하면 get set 메소드를 만들어줄 필요가 없습니다. kotlin을 컴파일하면 java에서 자동으로 get set 메소드를 만들어 줍니다. val var에 따라 get set 유무가 달라지며 val은 read-only로 get 함수만 만들어집니다. java에서 Data 접근을 사용하는 방법은 2가지입니다. public class Sample{ String name; String email; public Sample(String name,String email) { this.name = name; this.email = email; } } public 접근 지정자를 사용하여 메소드 없이 변수에 직접 ..

Language/kotlin

Kotlin의 유용한 함수들 - let, apply, run, with

let 호출하는 객체의 값을 block에 전달하고 block의 결과값을 반환 fun T.let(block: (T) -> R): R 사용 예 한번쓰고 나서 사용하지 않을 변수가 있을 때 let을 사용하면 불필요한 선언을 방지해준다. val test = Test() setTest(test) //let 사용 Test().let{ setTest(it) } safe-calls 와 결합하여 null check에 사용할 수 있다. var obj:String? = null if(obj != null){ ... } //let 사용 obj가 null이 아닐경우 실행 obj?.let{ ... } apply 함수를 호출하는 객체를 이어지는 block의 리시버를 전달하고, 객체자체를 반환 리시버란? 이어지는 block 내에서 ..

Language/kotlin

[Kotlin] Kotlin을 왜 배워야 할까요?

안녕하세요. 점냥입니다 :) 여러분들은 Kotlin 언어를 알고 있나요? 열심히 Android 공부를 하고 있는 여러분이라면 이미 알고 있겠죠 ㅎㅎㅎ Kotlin은 Google I/O 17년도에서 Android 공식 언어로 지정되었습니다!! 아직 Kotlin을 사용하지 않는 다면 서두르세요. 어느새 Android Develop 사이트 전반적인 코드 샘플들과 공식 유투브에서 Kotlin 언어를 기본으로 사용중인 것을 확인할 수 있습니다. 이 포스팅을 읽고 나서 Kotlin 언어에 대한 흥미가 생기셨으면 좋겠습니다. Kotlin 배경 Kotlin 언어가 나오기 전 Android 플랫폼에서는 C++ 언어도 쓰이긴 했지만, 대다수의 개발자들은 Java 언어를 사용해서 개발했습니다. Java 언어는 JVM에서 동..

점냥
'Language' 카테고리의 글 목록 (2 Page)