전체 글

전체 글

    [CS][데이터베이스설계와질의] "데이터베이스 설계와 질의" 수강을 시작하며

    숙명여자대학교에서 심준호 교수님께 배우는 데베설 수업! 학교에 입학하여 들은 데이터 관련 수업이 "데이터사이언스개론" 뿐인 3학년생... DBMS나 DB 설계 등에 관심이 있어 수강하게 되었다. 3-2학기에 3학점으로 수강하고 있다. 강의 교재는 "R.Ramakrishnan and J.Gehrke, Database Management Systems, 3rd ed"이다. 나는 원서와 번역본 모두 구입했다. 이 교과목의 목표는 다음과 같다. 데이터베이스와 데이터베이스 시스템에 대한 기초적인 이론 습득 데이터베이스 설계의 요구 사항 분석과 설계 과정, ER 모델링 학습 SQL 트랜잭션, 프로세싱, 동시성 제어, 회복, 정규화 등 시스템 관련 기본 개념 학

    [CS][네트워크보안] Chapter1. 스마트 시대와 정보 보호

    스마트 시대와 정보 보호 데이터 처리 장비(컴퓨터)가 등장하기 전 : 정보 보안 문제를 물리적 방법 or 행정적 수단으로 해결 컴퓨터 등장 이후 : 컴퓨터에 저장된 정보 or 파일을 보호할 수 있는 자동화된 도구가 필요해짐 스마트폰/클라우드 등장 이후 : 사람들의 컴퓨터 사용 패러다임 변화로 정보 보안의 필요성 더욱 대두, 지켜야 할 것이 많아짐 스마트 환경과 스마트 워크 스마트 환경 시간과 장소의 구애 없이 저비용 고성능 컴퓨팅 기능(스마트폰)을 사용하여 인간의 삶을 편리하고 즐겁게 영위하도록 만드는 환경 스마트 워크 네트워크 환경을 기반으로 시간과 장소에 얽매이지 않고 언제 어디서나 업무를 할 수 있는 체제 기존에는 기업 안에서만 보안을 신경 쓰면 되었지만, 스마트 워크 활성화 이후 보호해야 하는 데..

    [CS][네트워크보안] "네트워크보안" 수강을 시작하며

    숙명여자대학교에서 박영훈교수님께 배우는 네트워크보안 수업! 서버 공부를 하다보니 보안에도 관심이 생겨 4학년 수업을 1년 당겨 들으려 한다. 3-2학기에 3학점으로 수강하고 있다. 강의 교재는 "히로시 유키 저, 이재광, 전태일, 조재신 역 알기쉬운 정보보호개론 (인피니티북스)" 이다. 강의 목표는 "보안의 3요소", "암/복호 기술(암호의 역사, 대칭키/공개키 암호, 디지털 서명 기술, 인증서)", "프로토콜", "보안 Application", "현대 보안 기술" 을 아는 것이다.

    [CS][소프트웨어공학] SW 개발 프로세스, 전통적 프로세스 모델, SW 프로세스 개선

    [1] 소프트웨어 개발 프로세스 소프트웨어 프로젝트란? 수행할 작업을 조직화한 프로세스 비용, 일정, 품질에 대한 목표를 성취하는 것 사전적 프로세스의 정의란? 어떤 일을 하기 위한 특별한 방법 일반적으로 단계나 작업으로 구성 소프트웨어 개발 프로세스란? 순서 제약이 있는 작업의 집합 높은 품질과 생산성이 목표 Code-and-Fix 즉흥적 개발, 프로세스가 없는 개발 프로그래밍 → 만족할 때까지 수정 → 개선을 위한 아이디어 짜내기 → 만족할 때까지 수정 문제점 요구, 설계 작업의 중요성을 깨닫지 못함 즉흥적인 방법으로는 사용자의 높은 요구 수준에 도달하기 어려움 계속 고치는 작업이 필요 좋은 SW 구조를 만들 수 없음 프로세스가 없는 개발 Code-and-Fix 즉흥적 개발, 프로세스가 없는 개발 프..

    [스프링부트와 JPA 활용 1] Section2. 도메인 분석 설계

    요구사항 분석 회원 기능 : 회원 가입, 회원 목록 상품 기능 : 상품 등록, 상품 목록 주문 기능 : 상품 주문, 주문 내역 더보기 회원 기능 회원 등록 회원 조회 상품 기능 상품 등록 상품 수정 상품 조회 주문 기능 상품 주문 주문 내역 조회 주문 취소 기타 요구사항 상품은 재고 관리가 필요하다. 상품의 종류는 도서, 음반, 영화가 있다. 상품을 카테고리로 구분할 수 있다. 상품 주문시 배송 정보를 입력할 수 있다. 도메인 모델과 테이블 설계 1. 도메인 모델 설계 회원 : 주문 = 1 : N(*) 주문 : 상품 = N : N → 보통 사용하지 않는다 → 1 : N or N : 1 로 변경 주문 : 배송 = 1 : 1 상품 : 카테고리 = N : N 2. 엔티티 설계 (1) 회원 엔티티 Order와 ..

    SpringBoot에 대해 끄적

    1. SpringBoot 스프링의 문제점을 해결해주기 위해 개발된 스프링의 프레임워크 웹 프로그램을 쉽고 빠르게 만드어주는 웹 프레임워크 기본적인 설정과 재사용되는 코드 작성을 최소화 Web Application Server를 설치할 필요 없이 어플리케이션 실행 가능 간결한 설정, 내장 서버, 의존성 관리 간소화, 운영 편의성 보안 공격에 대한 코드를 직접 짤 필요가 없음 2. 웹 프레임워크 웹 프로그램을 만들기 위한 스타터 키드 자바로 만들어진 웹 프레임워크 중 하나가 바로 스프링부트 참고 : https://wikidocs.net/book/7601

    JPA에 대해 끄적

    1. JPA JPA = Java Persistence API JPA는 Java 진영에서 ORM 기술 표준으로 사용되는 인터페이스의 모음 구현된 클래스와 매핑을 해주기 위해 사용되는 프레임워크 자바 어플리케이션과 JDBC 사이에서 동작 2. JDBC 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API 데이터베이스에서 자료를 쿼리하거나 업데이트 하는 방법을 제공 3. ORM 객체와 테이블을 매핑해서 패러다임의 불일치를 개발자 대신 해결 4. JPA 장점 INSERT SQL을 작성하고 JDBC API를 사용하는 지루하고 반복적인 일을 JPA가 대신 처리 → 생산성 개발자가 작성해야 할 SQL문과 JDBC API 코드를 JPA가 대신 처리 → 유지보수 DB 기술에 종속되지 않도록 함 -> 데이터 접근 추..

    [스프링부트와 JPA 활용 1] Section1. 프로젝트 환경설정

    프로젝트 생성 1. SpringBoot Starter 접속 (Spring Initializr) 2. 설정 3. 세팅 여부 확인 아래와 같이 JpashopApplication의 메소드 실행을 하게 되면, 실행 성공 시 Tomcat started on port(s): 8080 문구가 뜬다. 이후 웹페이지에서 아래 화면을 확인해주면 된다. + 테스트 코드도 확인 4. 플러그인 설치 롬복 사용시 Getter, Setter를 모두 만들어 준다. 라이브러리 살펴보기 1. cmd 창에서 확인 가능 (루트 폴더에서 열기) 2. IntelliJ에서 확인 가능 View 환경설정 Thymleaf 템플릿 엔진을 사용할 예정 (Thymeleaf) Thymeleaf Integrations galore Eclipse, Intell..

    [스프링부트와 JPA 활용 1] Section0. 강좌 소개

    스프링 부트 : 복잡하고 어려운 스프링 기술을 간결하고 쉽게 사용할 수 있도록 도와주는 기술 JPA : 강력한 Java ORM 표준 기술 위 두가지를 사용하면 높은 개발 생산성을 유지하며 빠르게 개발이 가능하다. 강의 목표 : SpringBoot와 JPA 같은 최신 기술을 활요해 웹 어플리케이션 개발을 할 수 있다. 강의 특징 : 예제를 코딩으로 배운다. 1편 - 웹 어플리케이션 개발 프로젝트 환경설정 요구사항 분석 도메인과 테이블 설계 아키텍쳐 구성 핵심 비즈니스 로직 개발 테스트 웹 계층 개발 2편 - API 개발과 성능 최적화 REST API 개발 성능 최적화 학습 방법 전체적인 감을 잡기 이후 부족한 기술들을 스스로 습득하기