토비의 스프링 8장
8. 스프링이란 무엇인가? 8.1 스프링의 정의 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 애플리케이션 프레임워크 프레임워크는 애플리케이션의 특정 계층에서 주로 동작하는 한 가지 기술 분야에 집중 애플리케이션 프레임워크는 특정 계층이나, 기술, 업무 분야에 국한되지 않고 애...
8. 스프링이란 무엇인가? 8.1 스프링의 정의 자바 엔터프라이즈 개발을 편하게 해주는 오픈소스 경량급 애플리케이션 프레임워크 애플리케이션 프레임워크 프레임워크는 애플리케이션의 특정 계층에서 주로 동작하는 한 가지 기술 분야에 집중 애플리케이션 프레임워크는 특정 계층이나, 기술, 업무 분야에 국한되지 않고 애...
3. 신경망 시작하기 3.1 신경망의 구조 3.1.1 층: 딥러닝의 구성 단위 대부분의 층은 가중치를 가진다. 가중치에는 네트워크가 학습한 지식이 담겨 있다. 층마다 적절한 텐서 포맷과 데이터 처리 방식이 다르다. 케라스에서는 호환 가능한 층들을 엮어 데이터 변환 파이프라인을 구성함으로써 딥...
2. 시작하기 전에: 신경망의 수학적 구성 요소 2.1 신경망과의 첫 만남 클래스: 분류 문제의 범주(category) 샘플: 데이터 포인트 레이블: 특정 샘플의 클래스 케라스 파이썬 라이브러리를 사용하여 손글씨 숫자 분류를 학습하는 예제 from keras.datasets import mnist (tr...
1. 딥러닝이란 무엇인가? 1.1 인공 지능과 머신 러닝, 딥러닝 1.1.1 인공 지능 인공지능 : 보통의 사람이 수행하는지능적인 작업을 자동화하기 위한 연구 활동 심볼릭 AI : 명시적인 규칙을 충분하게 많이 만들어 지식을 다루면 인간 수준의 인공 지능을 만들 수 있음 1.1.2 머신 러닝 ...
7. 스프링 핵심 기술의 응용 7.1 SQL과 DAO의 분리 SQL 변경이 필요한 상황이 발생하면 SQL을 담고 있는 DAO 코드가 수정될 수밖에 없다. 7.1.1 XML 설정을 이용한 분리 개별 SQL 프로퍼티 방식 SQL 맵 프로퍼티 방식 맵으로 만들어두면 새로운 SQL이...
6. AOP 6.1 사용자 레벨 관리 기능 추가 6.1.1 메소드 분리 트랜잭션 경계설정의 코드와 비즈니스 로직 코드 간에 서로 주고받는 정보가 없기 때문에 분리 가능 6.1.2 DI를 이용한 클래스의 분리 DI 적용을 이용한 트랜잭션 분리 ...
5. 서비스 추상화 5.1 사용자 레벨 관리 기능 추가 5.1.1 필드 추가 Level 이늄(enum) 각 레벨을 코드화해서 숫자로 넣음(범위가 작은 숫자로 관리하면 DB용량도 많이 차지하지 않고 가벼워서 좋다.) 하지만 다른 종류의 정보를 넣는 실수를 해도 컴파일러가 체...
4. 예외 4.1 사라진 SQLException 4.1.1 초난감 예외처리 예외 블랙홀 모든 예외는 적절하게 복구되든지 아니면 작업을 중단시키고 운영자 또는 개발자에게 분명하게 통보돼야 한다. 무의미하고 무책임한 throws 4.1....
3. 템플릿 템플릿이란 바뀌는 성질이 다른 코드 중에서 변경이 거의 일어나지 않으며 일정한 패턴으로 유지되는 특성을 가진 부분을 자유롭게 변경되는 성질을 가진 부분으로부터 독립시켜서 효과적으로 활용할 수 있는 방법 3.1 다시 보는 초난감 DAO 3.1.1 예외처리 기능을 갖춘 DAO JDBC 수정 기능의 예외처리 코드 ...
2. 테스트 2.1 UserDaoTest 다시보기 2.1.1 테스트의 유용성 테스트란 예상하고 의도했던 대로 코드가 정확히 동작하는지를 확인해서, 만든 코드를 확신할 수 있게 해주는 작업 2.1.2 UserDaoTest의 특징 main()메소드를 이용해 쉽게 테스트를 수행 테스트...