개발자가 제어하는가? 제어당하는가? 의 차이
-> 간단히 도서관을 생각하면 됨. 자신이 원하는 책을 자유롭게 읽을 수 있는 상황! 자유롭게 책도 바꿀수 있다.
⇒ C++의 STL 이나 Python의 Pip로 설치한 패키지/모듈(pandas, tensorflow 등)
import org.apache.commons.lang3.StringUtils;
public class Main {
public static void main(String[] args) {
String str1 = "hello";
String str2 = StringUtils.upperCase(str1);
System.out.println(str2);
}
}
StringUtils
클래스는 문자열 관련 유틸리티 메서드들을 제공Apache Commons Lang
라이브러리는 개발자가 문자열 관련 유틸리티 메서드를 작성할 때 유용하게 사용-> frame이랑 매치시키자. 틀안에서 사용해야하는 것!
⇒ 웹 개발 프레임워크(Spring, Django, Ruby on Rails 등), 애플리케이션 개발 프레임워크(.NET, Qt 등), 게임 개발 프레임워크(Unity, Unreal Engine 등) 등
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@SpringBootApplication
@RestController
public class Main {
public static void main(String[] args) {
SpringApplication.run(Main.class, args);
}
@GetMapping("/")
public String hello() {
return "Hello, world!";
}
}
@RestController
어노테이션과 @GetMapping
어노테이션을 사용하여 간단한 웹 애플리케이션을 작성