https://start.spring.io/ 우선 위 사이트에 접속해서 스프링 초기 환경설정을 해준 뒤 GENERATE 버튼을 눌러서 다운받아준다. (설정은 위 화면과 동일하게 하였는데, 추후에 버전이 바뀌게 되어 현재와 버전이 다를수도 있다. 그럴땐 그 상황에서의 가장 안정적인 버전으로 하면 되는데, 그 기준은 (SNAPSHOT) 이 붙이 않은 것이 기준이며, 3.xx 는 자바 17을 써야하기때문에 나는 11이 이미 깔려있어서 그냥 2.7 버전으로 했다.) 그리고 의존은 일부러 쌩으로 해보기 위해 하나도 안넣었다. 그러면 진짜 찐 기본 라이브러리만 받아진다. 압축된 파일을 풀어주고 파일 안으로 들어가보면 build.gradle이 있다. 그것을 인텔리제이 혹은 이클립스에서 열어주고 빌드 및 라이브러리 다..
📌 스프링 이야기에 왜 객체지향 이야기가 나오는가 ? - 스프링은 다음 기술로 다형성 + OCP,DIP를 가능하게 지원 ✔️ DI(Dependency Injection) : 의존관계, 의존성주입 ✔️ DI 컨테이너 제공 > 자바 객체들을 컨테이너 안에 넣어놓고 의존관계를 주입하고 제어해줌 - 클라이언트 코드의 변경없이 기능 확장 - 쉽게 부품을 교체하듯이 개발할 수 있음 📌 스프링이 없던 시절 - 옛날 어떤 개발자가 좋은 객체지향개발을 하려고 OCP,DIP 원칙을 지키면서 개발을 해보니, 배보다 배꼽이 크다. 그래서 프레임 워크로 만들어버림 - 순수하게 자바로 OCP,DIP 원칙들을 지키면서 개발을 해보면, 결국 스프링프레임워크를 만들게 된다 (정확히는 DI컨테이너) - DI개념은 말로 설명해도 이해가 ..
SOLID 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리 - SRP (Single responsibility principle): 단일 책임 원칙 - OCP(Open/closed principle) : 개방-폐쇄 원칙 - LSP(Liskov substitution principle) : 리스코프 치환 원칙 - ISP(Interface segregation principle) : 인터페이스 분리 원칙 - DIP(Dependency inversion principle) : 의존관계 역전 원칙 SRP (Single responsibility principle) 단일 책임 원칙 - 하나의 클래스는 하나의 책임만 가져야 한다. - 하나의 책임이라는 것은 모호하다. > 클 수 있고, 작..
객체지향의 특징 - 캡슐화 - 상속 - 추상화 - 다형성 객체지향 프로그래밍이란? 객체지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러개의 독립된 단위, 즉 "객체"들의 모임으로 파악하고자 하는 것이다. 각각의 객체는 메세지를 주고받고 , 데이터를 처리할 수 있다. (협력) 객체지향 프로그래밍은 프로그램을 유연하고 변경이 용이하게 만들기때문에 대규모 스프트웨어 개발에 많이 사용된다. 유연하고 변경이 용이 컴포넌트를 쉽고 유연하게 변경하면서 개발 할 수 있는 방법 궁극의 유연함, 궁극의 변경 용이 >> 다형성 (Polimorphism) 다형성 역할과 구현으로 구분 실생활에서 비유 ) 운전자는 소나타를 타다가 테슬라 3로 바꾼다 > 그래도 운전 할 수 있음. 자동차라는 역할에 ..
Spring 이란? Java 의 웹 프레임워크로 Java 언어를 기반으로 사용한다. Java를 이용한 기술은 JSP,MyBatis,JPA 등 여러가지가 있는데 Spring은 이 기술들을 더 편하게 사용하기 위해 만들어졌다. Spring의 장점 1. 중복코드의 사용률 감소 2. 비즈니스 로직을 더 간단하게 해준다. 3.오픈소스를 보다 효율적으로 사용이 가능 => Java 기술들을 더 쉽게 사용할 수 있게 해주는 오픈소스 프레임 워크 Spring 생태계 Spring은 어떤 특정한 하나가 아니라, 여러가지 기술들의 모음이다. - 스프링프레임워크 : 스프링의 핵심이 되는 기술 - 스프링부트 : 여러 스프링 기술들을 편리하게 사용하도록 도와줌 - 스트링 데이터 : DB 기술을 간단하게 도와주는 기술. 가장 많이 ..
SpreadJS 쓸 일이 생겨서 쓰는 김에 정리해본다. 공식 사이트를 보고 참고했으니 다들 참고하셔서 보시면 좋을 것 같다. Demos | SpreadJS JavaScript Demos Learn how you can easily add advanced spreadsheet capabilities to your JavaScript applications today to create financial, analysis, budgeting, forecasting, data collection, scientific and many other similar applications. Begin by selecting a featured demo www.grapecity.com 우선 프론트 연결까지만 만들어 볼 것..