일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- AI/ML
- 개발/CS/알고리즘
- 카테캠
- 개발/프레임워크&라이브러리
- 개발/Tools/프레임워크/Spring
- 개발
- 개발/MySQL
- electron
- 카카오 테크 캠퍼스
- AI/GPT
- ai
- 개발/Electron
- 개발/보안
- 개발/언어론
- 개발/환경
- 카카오테크캠퍼스
- 개발/Java/Spring
- 취업
- 개발/OOP
- 개발/네트워크
- 개발/에러
- 개발/webrtc
- 개발/컴퓨터네트워크
- 개발/Java
- 개발/언어/Java
- 알고리즘
- ⌨️Developer/보안
- ⌨️Developer
- 대외활동/카카오테크캠퍼스
- 개발/CS/OS
- Today
- Total
목록2023/05/18 (5)
봄수의 연구실
Spring의 코드 분리 단일 책임 원칙(Single Responsibility Principle, SRP)에 따라서 주어진 예제를 리팩토링 하면서 관심사 분리 즉 코드 분리를 해보자 코드 분리의 기준은 아래와 같다. 관심사 분리: 각 부분이 서로 다른 목적을 가진 코드로 분리 변하는 것과 변하지 않는 것의 분리: 이는 코드 내에서 변동성이 큰 부분과 그렇지 않은 부분을 분리하는 것을 의미합니다 일반적으로 자주 변경되는 로직은 분리하여 관리함으로써 코드의 유연성을 높이고, 유지보수를 용이하게 합니다. 반대로 변동성이 적은 부분은 안정적인 기능을 제공하는 코드로서 그 자체로 응집력을 갖도록 관리합니다. 공통 코드와 중복 코드의 분리: 코드 베이스 내에서 반복적으로 사용되는 부분(공통 코드)이나 같은 기능을..
단일 책임 원칙(Single Responsibility Principle, SRP) - SOLID 원칙 중 하나로, 클래스는 오직 하나의 책임만 가져야 한다 단일 책임 원칙은 객체 지향 프로그래밍에서 SOLID 원칙 중 하나입니다. 이 원칙에 따르면, "클래스는 오직 하나의 책임만 가져야 한다"는 것입니다. 가장 쉽게 볼 수 있는 예시로 백엔드 개발을 할 때 Service와 Repository를 구분해서 개발을 하는 것입니다 Service는 비즈니스 로직, Repository는 데이터베이스 접근에 대한 책임을 가집니다. 그 결과, 계층 간 데이터 변경과 유지 보수의 용이함을 가지죠 단일 책임 원칙의 이해 만약 클래스나 메소드가 너무 많은 일을 담당하고 있다면, 그 기능을 수정하거나 변경하는 데 필요한 노..
프로그래밍 언어론 - 선언 블록 영역 선언은 변수에 이름과 데이터 타입 등의 속성을 부여하는 문장이다 선언의 종류 명시적 선언 : 선언문을 사용하여 변수 이름을 나열하고, 이들 속성에 부여하는 방법 예약어 int를 사용하여 변수 x의 데이터 유형을 명시적으로 지정합니다. 예: int x; 묵시적 선언 : 실행 시간 중에 일어나거나 프로그램 실행 과정에서 변경 되는 바인딩 FORTRAN은 변수 이름이 선언문 없이 사용되면 선언된 것으로 간주합니다. 일반적으로 변수 이름이 ‘I’, ‘J’, ‘K’, ‘L’, ‘M’ 또는 'N’으로 시작하면 정수 유형으로 간주됩니다. 그렇지 않으면 실제 유형으로 간주됩니다. 블록 일련의 문장 집합으로 자체적인 선언을 가질 수 있는 프로그램 단편 영역 이름의 사용이 허락되고 있..
프로그래밍 언어론 - 바인딩 바인딩: 속성을 이름과 연결하는 프로세스 결속시간에 따른 결속분류 int x; // Statically bind the type 'integer' to the name x int* ptr = new int; // Dynamically bind the allocated storage to y 세분화 된 바인딩 시간 언어 정의 시 바인딩(defining-time): 언어 키워드 및 구문 규칙을 정의합니다. 변환기를 구현할 때 만든 바인딩(구현 시간): 언어 구성을 기계 명령어 또는 이에 상응하는 저수준 표현과 연결합니다. 메모리 레이아웃 및 데이터 구조를 정의합니다. 소스 프로그램을 번역할 때 만들어진 바인딩(번역 시간): 외부 기호 및 함수에 대한 참조를 해결합니다. 변수 및 ..
프로그래밍 언어론 - 변수 변수는 이름, 주소, 값, 타입, 영역, 속성들이 모여서 변수의 개념이 형성된다. 이름(식별자, identifier) : 프로그램에서 어떤 개체를 식별하기 위해서 사용되는 문자 스트링 예약어(reserved word)는 이름으로 사용될 수 없음 미리 정의된 이름(predefined name)은 미리 정의된 의미를 갖고 있음 사용자에 의해 다시 정의되어 사용될 수 있음 주소 : 변수의 값이 저장될 메모리 주소 값 : 변수의 주소에 저장된 내용 변수의 값은 배정문에 의해 부여 int x = 5; // 'x' is an l-value, as it can be assigned a value int y = x + 2; // 'x + 2' is an r-value, as it is a t..