안드로이드 언어 - 자바와 코틀린의 차이점, 코틀린의 장점

반응형

 

자바와 코틀린의 차이점

  • Java - 객체지향 프로그래밍
    • 클래스 내부의 함수에서만 코드 작성
Class Test {
	public void main() {
    	System.out.print("Hello World!");
    }
}

 

  • Kotlin - 함수형 프로그래밍
    • 클래스 제한없이 자유롭게 코드 작성
System.out.print("Hello World!");

안드로이드 개발에서의 코틀린의 장점

  • 안드로이드 앱을 개발 할 때에는 코틀린도 객체지향 언어처럼 클래스 내에 코드 작성
    • 자바와 호환이 되기 때문에 자바 형식에 맞춰 코틀린으로 앱 개발 요구
  • 하지만! 자바로 작성한 코드를 코틀린으로 작성하면 훨씬 더 간단하게 작성이 가능
    • 즉, 코딩하는 시간 소요를 줄여 생산성 상승
    • 안드로이드 개발에 있어서 구글에서는 코틀린의 사용을 적극 권장하는 추세

 

예시) 안드로이드에서 버튼을 누르면 'Hello World' 출력해보기

  • 자바로 안드로이드 코드 작성
// MainActivity.java
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TextView tv = findViewById(R.id.textView);
        Button bt = findViewById(R.id.button);

        bt.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                tv.setText("Hello World!");
            }
        });
    }
}

 

  • 코틀린으로 안드로이드 코드 작성
    • 해당 소스는 코틀린 익스텐션을 사용하지 않고 뷰 바인딩을 사용한 코드입니다.
// MainActivity.kt
class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        val binding = ActivityMainBinding.inflate(layoutInflater)
        setContentView(binding.root)

        binding.button.setOnClickListener{
            binding.textView.text = "Hello World!"
        }
    }
}
반응형