프레임워크를 쓰면 규칙이 있는 코드를 작성하게 된다. 스프링 부트를 예로 들어보자. 원래 자바에서는 클래스를 만들었으면 객체 생성을 해서 메소드를 연결하여 사용해야 했다. 스프링부트의 경우 컨트롤러를 스프링부트가 이해할 수 있게 만들어주면 객체를 사용하는 것은 알아서 해준다. 스프링 부트에는 이미 만들려는 기능의 거의 모든 내용이 만들어져 있다.
그러면 스프링 부트가 인공지능처럼 컨트롤러를 만들어줄까? 그건 아니다. 그래서 개발자가 스프링부터가 이해할 수 있도록 컨트롤러를 만들어주는 것이다. 즉, 개발자가 클래스를 만들어두면 스프링부트가 적제적소에 알아서 사용한다.