모든 일은 많은 사람들에 의해 수 차례 반복되고, 연구되면서 여러가지의 방법론이나 원칙이 성립된다. 그 중에서 가장 효율적이고 합리적인 방법론이 정립되고, 그 일을 수행하는데 일반적으로 적용하는 대표 방법론 또는 원칙이 된다. 객체 지향 언어를 이용해 객체 지향 프로그램을 올바르게 설계해 나가는 방법이나 원칙이 존재한다. 로버트 C. 마틴(Robert C. Martin)이 2000년대 초반 객체 지향 프로그래밍 및 설계의 다섯 가지 기본 원칙으로 제시한 것을 마이클 페더스(Michael Feathers)가 두문자어로 소개한 SOLID다. SRP(Single Responsibility Principle) : 단일 책임 원칙 OCP(Open Closed Principle) : 개방 폐쇄 원칙 LSP(Lisk..
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 김영한 인프런 강의 참고 [무료] 스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링 웹 애플리케이션 개발 전반을 빠르게 학습할 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com 스프링 컨테이너(Spring Container)와 스프링 빈(Spring Bean) 객체를 다루는 일반적인 방법은 프로그래머가 프로그램 로직 상 필요한 객체를 그때그때 직접 생성하고 필요한 메서드를 호출하는 것이다. 만약 다루는 언어가 자바라면 new 키워드를 통해 필요한 곳에 인스턴스를 생성하는 로직을 넣을 것이다. 하지만 스프링에서는 클래스..
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 김영환 인프런 강의 참고 이전 포스팅 : 2022.12.28 - [프로그래밍 언어 공부/Java] - [Spring] 입문 - 백엔드 개발 흐름_1 익힉기(도메인/리포지토리/서비스/테스트 케이스) 이전 포스팅에 이어서 이번에는 회원 관리 예제의 서비스 로직을 구현해 보겠다. 비즈니스 요구사항 정리 회원 도메인과 리포티토리 만들기 회원 리포지토리 테스트 케이스 작성 회원 서비스 개발 회원 서비스 테스트 4. 회원 서비스 개발 서비스 클래스는 프로그램의 비즈니스 로직이 구현되는 곳이다. /service/MemberService.java package com.example.practice.service; import java.util..
스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술 - 김영환 인프런 강의 참고 간단한 회원 관리 예제를 통해 스프링의 백엔드 개발 흐름을 익혀보겠다. 순서는 아래와 같다. 비즈니스 요구사항 정리 회원 도메인과 리포지토리 만들기 회원 리포지토리 테스트 케이스 작성 회원 서비스 개발 회원 서비스 테스트 1. 비즈니스 요구사항 정리 비즈니스 요구사항을 최대한 간단하게 정리했다. 데이터 : 회원 ID(pk용), 이름 기능 : 회원 등록, 조회 데이터 저장소 : 아직 선정되지 않음 이제 위 요구사항에 맞게 클래스를 설계하면 된다. 일반적인 웹 어플리케이션 계층 구조는 아래와 같다. 컨트롤러 : 웹 MVC의 컨트롤러로써 앱의 사용자로부터의 입력에 대한 응답으로 모델(도메인)이나 뷰를 업데이트..
스프링으로 웹 개발을 하는 방법은 대표적으로 3가지가 있다. 정적 컨텐츠 MVC와 템플릿 엔진 API 각각을 활용한 예시와 동작 방법을 아주 간략하게 알아보겠다. 정적 컨텐츠 스프링 부트에서 제공하는 정적 컨텐츠 기능을 사용하여 개발하는 방법으로 html 파일을 직접 만들어 웹 서버로 응답하는 방법이다. By default, Spring Boot serves static content from a directory called /static(or /public or /resources ...) in the classpath 참고 : 스프링 부트 공식 문서 - Static Content 스프링 부트 공식 문서를 살펴보면 정적 컨텐츠는 /static 경로에서 찾아 제공한다고 설명되어 있다. resources..
Java는 대표적인 객체지향 프로그래밍 언어다. 객체지향언어는 기존의 프로그래밍 언어에 몇 가지 새로운 규칙을 추가한 보다 발전된 형태의 것이다. 이러한 규칙들이 바로 객체지향적인 특징들이다. 그렇다면 객체 지향적이라는 말은 무엇일까? 세상은 객체(object)들로 이루어져 있다. 여기서 객체는 눈으로 보는 것, 머릿속으로 상상되는 모든 것이 될 수 있다. 즉, 사람이 세상을 인지하는 방식대로 프로그래밍하는 것이 객체 지향의 출발이다. 따라서 객체 지향은 이전의 방식(구조적 프로그래밍)보다 사람 지향적인 방법론이라고들 한다. 객체 지향의 대표적인 4대 특성은 아래와 같다. 캡슐화(Encapsulation) 상속(Inheritance) 추상화(Abstraction) 다형성(Polymorphism) 위 객체..
JDK 17 설치 1. apt 업데이트 $ sudo apt-get update && sudo apt-get upgrade apt : Advanced Packaging Tool *.deb 형식의 패키지들을 관리(설치, 삭제, 업데이트)해주는 툴 2. openjdk-11-jdk 설치 $ sudo apt-get install openjdk-17-jdk OpenJDK는 "썬 마이크로시스템즈(Sun Microsystems)"가 만든 JDK의 오픈소스 프로젝트 3. 환경설정 $ vim ~/.bashrc # 파일 맨 아래 부분에 2줄의 코드 추가 # ~/.bashrc export JAVA_HOME=$(dirname $(dirname $(readlink -f $(which java)))) export PATH=$PAT..
변수의 종류 Java에서 변수의 종류를 결정짓는 중요한 요소는 ‘변수의 선언된 위치’다. 인스턴스 변수(Instance variable) 인스턴스를 생성할 때 만들어지며, 독립적인 저장 공간을 가진다. 인스턴스마다 고유한 값을 가질 수 있다. 인스턴스를 생성해야 사용할 수 있다. 클래스 변수(class variable) 인스턴스 변수 앞에 static을 붙이기만 하면 되므로 스태틱 변수라고도 한다. 클래스가 메모리에 로딩될 때 생성되어 프로그램이 종료될 때 까지 유지된다. 모든 인스턴스가 공통된 저장공간을 공유하므로 한 클래스의 모든 인스턴스들이 공통적인 값을 유지한다. 인스턴스를 생성하지 않아도 사용할 수 있다. 지역 변수(local variable) 메서드 내에 선언되어 메서드 내에서만 사용 가능하며..
- 지옥에서 온 git
- 패킷 스위칭
- Thymeleaf
- 프로그래머스
- 스프링 테스트
- 파이썬 for Beginner 솔루션
- 생활코딩 javascript
- 리버싱
- 버퍼오버플로우
- Do it! 정직하게 코딩하며 배우는 딥러닝 입문
- 스프링
- Python Cookbook
- Gradle
- BOF
- 김영환
- 쉘 코드
- Spring Boot
- 선형 회귀
- 방명록 프로젝트
- spring mvc
- Computer_Networking_A_Top-Down_Approach
- 운영체제 반효경
- 파이썬 for Beginner 연습문제
- shell code
- 쉽게 배우는 운영체제
- Spring
- JPA
- jsp
- Spring Data JPA
- JUnit
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Total
- Today
- Yesterday