일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- fastapi
- 스프링 입문
- 데이터 수집
- 작업 영역
- 머신러닝 #학습내용정리
- 에러포스팅
- 크롬브라우저
- 김영한 #SOLID #객체지향
- 그룹핑
- 단축키정리
- GIT
- 커밋
- SQL
- SafeUpdate
- MVC #디자인패턴
- 웹 크롤링
- COMMIT
- 옵셔널태그
- C언어 #문자열변환 #정수형변환
- 개발자가 되기 위해 꼭 알아야 하는 IT용어
- 스프링부트
- 기술블로그
- 공부내용정리
- 생성자 #자바 #기록남기기
- 개발공부
- 머신러닝 #회귀 #규제
- 파이썬
- 컬럼수정
- Numpy #TIL #넘파이 기초
- 클래스 #아이디
- Today
- Total
목록분류 전체보기 (88)
데이터 분석가 몽구리
문자열의 길이를 구하는 내장 함수 strlen #include #include void main() { int data_length; char data[10] = { 'h','a','p','p','y',0 }; data_length = strlen(data); printf("data length = %d\n", data_length); } 문자열을 복사하고 추가하는 내장 함수 strcpy, strcat 문자열을 복사하는 strcpy, 문자열 뒤에 다른 문자열을 이어 붙이는 strcat #include #include void main() { char data[10] = { 'a', 'b','c',0 }; char result[16]; strcpy(result, data); // data저장된 문자열을 r..
경로 제어(Routing) 경로 제어는 송·수신 측 간의 전송 경로 중에서 최적 패킷 교환 경로를 결정하는 기능이다. 경로 제어는 경로 제어표(Routing)를 참조해서 이루어지며, 라우터에 의해 수행된다. 경로 제어 요소 성능 기준 경로의 결정 시간과 장소 정보 발생지 경로 정보의 갱신 시간 경로 제어 프로토콜(Routing Protocol) IGP(Interior Gateway Protocol, 내부 게이트웨이 프로토콜) 하나의 자율 시스템(AS) 내의 라우팅에 사용되는 프로토콜 RIP(Routing Information Protocol) 현재 가장 널리 사용되는 라우팅 프로토콜이며 거리 벡터 라우팅 프로토콜이라고 불리며, 최단 경로 탐색에 Bellmain-Ford 알고리즘이 사용된다. 소규모 동종의..
final 키워드는 값을 변경할 수 없다. final 키워드는 최초 한번만 값을 할당할 수 있습니다. package final1; public class FinalLocalMain { public static void main(String[] args) { // final 지역 변수 final int data1; data1 = 10; // 최초 한번만 할당 가능 // data1 = 20; // 컴파일 오류 // final 지역 변수2 final int data2 = 10; // data2 = 20; // 컴파일 오류 method(20); } static void method(final int parameter){ // parameter = 20; // 컴파일 오류 } } 상수(Constant) 상수는 변..
자바의 메모리 구조는 메서드 영역, 스택 영역, 힙 영역 3개로 나눌 수 있다. 메서드 영역: 클래스 정보를 보관한다. 이 클래스 정보를 붕어빵 틀이라고 할 수 있다. 스택 영역: 실제 프로그램이 실행되는 영역이다. 메서드를 실행할 때마다 하나씩 쌓인다. 힙 영역: 객체(인스턴스)가 생성되는 영역이다. new 명령어를 사용하면 이 영역을 사용한다. 붕어빵 틀로부터 생성된 붕어빵이 존재하는 공간이다. 참고로 배열도 이 영역에 생성된다. 메서드 영역(Method Area) : 메서드 영역은 프로그램을 실행하는데 필요한 공통 데이터를 관리한다. 이 영역은 프로그램의 모든 영역에서 공유한다. 클래스 정보: 클래스의 실행 코드(바이트 코드), 필드, 메서드와 생성자 코드 등 모든 실행 코드가 존재한다. stati..
캡슐화(Encapsulation)는 데이터와 해당 데이터를 처리하는 메서드를 하나로 묶어서 외부에서의 접근을 제한하는 것을 말한다. 캡슐화를 통해 데이터의 직접적인 변경을 방지하거나 제한할 수 있다. 데이터를 숨겨라 객체에는 속성(데이터)과 기능(메서드)이 있다. 캡슐화에서 가장 필수로 숨겨야 하는 것은 속성(데이터)이다. 객체 내부의 데이터를 외부에서 함부로 접근하게 두면, 클래스 안에서 데이터를 다루는 모든 로직을 무시하고 데이터를 변경할 수 있다. 객체의 데이터는 객체가 제공하는 기능인 메서드를 통해서 접근해야 한다. 기능을 숨겨라 객체의 기능 중에서 외부에서 사용하지 않고 내부에서만 사용하는 기능들이 있다. 이런 기능도 모두 감추는 것이 좋다. 사용자 입장에서 꼭 필요한 기능만 외부에 노출하자. ..
자바는 public,private같은 접근 제어자(access modifier)를 제공한다. 접근 제어자를 사용하면 해당 클래스 외부에서 특정 필드나 메서드에 접근하는 것을 허용하거나 제한할 수 있다. private 접근 제어자는 모든 외부 호출을 막는다. 따라서 private이 붙은 경우 해당 클래스 내부에서만 호출할 수 있다. package access; public class Speaker { private int volume; Speaker(int volume){ this.volume = volume; } } volume 필드는 private으로 설정되어 있기 때문에 외부에서 접근할 수 없다. ** 좋은 프로그램은 무한한 자유도가 아니라 적절한 제한이 있어야 한다. 접근 제어자 종류 private..
SOLID 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리 SRP: 단일 책임 원칙 (Single reponsibility principle) 한 클래스는 하나의 책임만 가져야 한다. 변경이 있을 경우 파급 효과가 적으면 단일 책임원칙을 잘 따르는 것 OCP : 개방-폐쇄 원칙 (Open/closed principle) 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다 인터페이스를 구현한 새로운 클래스를 하나 만들어서 새로운 기능을 구현 (다형성) LSP 리스코프 치환 원칙 (Liskob substitution principle) 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다 다형성에서 하위 클래스는 인터페이..
컬렉션의 개념 컬렉션(collection)은 배열이 가진 고정 크기의 단점을 극복하기 위해 객체들을 쉽게 삽입, 삭제, 검색할 수 있는 가변 크기의 컨테이너이다. 컬렉션 클래스는 개발자가 바로 사용할 수 있는 것들로서, Vector와 ArrayList는 가변 크기의 배열을 구현합니다. 제네릭의 기본 개념 제네릭(generic)은 모는 종류의 타입을 다룰 수 있도록, 클래스나 메소드를 타입 매개변수를 이용하여 선언하는 기법 제네릭 컬렉션 활용 Vector - vector는 배열을 가변 크기롤 다룰 수 있게 하고, 객체의 삽입, 삭제, 이동이 쉽도록 구성한 컬렉션 클래스이다. 정수만 다루는 벡터를 생성하고 , 활용하는 기본 사례 import java.util.Vector; public class Vector..