🌟 왜 Kotlin인가?
📖 Kotlin을 배워야 하는 5가지 이유
Kotlin은 단순히 "또 다른 프로그래밍 언어"가 아닙니다. 개발자의 삶을 바꿔줄 실용적인 언어입니다.
1️⃣ 생산성이 2배 높아집니다
코드량이 40% 줄어듭니다
Java 코드:
public class User {
private String name;
private String email;
public User(String name, String email) {
this.name = name;
this.email = email;
}
public String getName() {
return name;
}
public String getEmail() {
return email;
}
@Override
public String toString() {
return "User(name=" + name + ", email=" + email + ")";
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (o == null || getClass() != o.getClass()) return false;
User user = (User) o;
return Objects.equals(name, user.name) &&
Objects.equals(email, user.email);
}
@Override
public int hashCode() {
return Objects.hash(name, email);
}
}
Kotlin 코드 (동일한 기능):
data class User(val name: String, val email: String)
스마트 캐스팅
// Java - 반복되는 캐스팅
if (obj instanceof String) {
String str = (String) obj; // 캐스팅 필요
System.out.println(str.length());
}
// Kotlin - 자동 캐스팅
if (obj is String) {
println(obj.length) // 자동으로 String으로 인식!
}
함수형 프로그래밍
// Java - 장황함
List<String> names = new ArrayList<>();
for (User user : users) {
if (user.getAge() >= 18) {
names.add(user.getName());
}
}
// Kotlin - 간결함
val names = users
.filter { it.age >= 18 }
.map { it.name }