일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Numpy #TIL #넘파이 기초
- 에러포스팅
- SQL
- 크롬브라우저
- 파이썬
- MODIFY
- 그룹핑
- COMMIT
- group by
- MVC #디자인패턴
- 개발자가 되기 위해 꼭 알아야 하는 IT용어
- 스프링부트
- 머신러닝 #회귀 #규제
- 클래스 #아이디
- 커밋
- SafeUpdate
- 단축키정리
- 머신러닝 #학습내용정리
- 작업 영역
- 스프링 입문
- 컬럼수정
- 생성자 #자바 #기록남기기
- 옵셔널태그
- GIT
- 기록하기
- scanf
- C언어 #문자열변환 #정수형변환
- 공부내용정리
- 김영한 #SOLID #객체지향
- 개발공부
- Today
- Total
목록전체 글 (77)
코딩하는 몽구리
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/vFIz5/btsF3DRlz4C/OsNCK5OhImxg4prAtGs8kK/img.png)
자바의 메모리 구조는 메서드 영역, 스택 영역, 힙 영역 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..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/LHNj5/btsD0JNLr5j/yIip5YO8KIB6nOtc74k6Vk/img.png)
SOLID 클린코드로 유명한 로버트 마틴이 좋은 객체 지향 설계의 5가지 원칙을 정리 SRP: 단일 책임 원칙 (Single reponsibility principle) 한 클래스는 하나의 책임만 가져야 한다. 변경이 있을 경우 파급 효과가 적으면 단일 책임원칙을 잘 따르는 것 OCP : 개방-폐쇄 원칙 (Open/closed principle) 소프트웨어 요소는 확장에는 열려 있으나 변경에는 닫혀 있어야 한다 인터페이스를 구현한 새로운 클래스를 하나 만들어서 새로운 기능을 구현 (다형성) LSP 리스코프 치환 원칙 (Liskob substitution principle) 프로그램의 객체는 프로그램의 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바꿀 수 있어야 한다 다형성에서 하위 클래스는 인터페이..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/oWeCB/btsD09ELnsN/tVhTrJucZhDiXKRzQj28eK/img.png)
컬렉션의 개념 컬렉션(collection)은 배열이 가진 고정 크기의 단점을 극복하기 위해 객체들을 쉽게 삽입, 삭제, 검색할 수 있는 가변 크기의 컨테이너이다. 컬렉션 클래스는 개발자가 바로 사용할 수 있는 것들로서, Vector와 ArrayList는 가변 크기의 배열을 구현합니다. 제네릭의 기본 개념 제네릭(generic)은 모는 종류의 타입을 다룰 수 있도록, 클래스나 메소드를 타입 매개변수를 이용하여 선언하는 기법 제네릭 컬렉션 활용 Vector - vector는 배열을 가변 크기롤 다룰 수 있게 하고, 객체의 삽입, 삭제, 이동이 쉽도록 구성한 컬렉션 클래스이다. 정수만 다루는 벡터를 생성하고 , 활용하는 기본 사례 import java.util.Vector; public class Vector..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/lWHjf/btsC1pWKIkx/7KWJR0fRrka0rdaPQyuBKK/img.png)
GetMapping 어노테이션을 통해서 members/new라는 url에 접근하게 되면 templates라는 폴더 안에서 createMemberForm이라는 html 파일을 찾고 돌려주게 된다. PostMapping은 일반적으로 값을 등록할 때 사용한다. Member라는 새로운 객체를 생성하고 member라는 변수에 이름을 설정해준다. MemberForm을 작성하여 getter와 setter를 설정한다. name에 들어가는 값을 키와 value에 형태로 MemberForm의 name에 전달하게 된다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cxOF8n/btsCVHBKbVa/Ms2huWwIpDdqxpRe6LKNNK/img.png)
Controller 폴더에 HomeController 추가 HomeController 파일을 추가한다. HomeController는 @Controller 주입을 진행한 다음, @GetMapping을 통해서 클라이언트로부터 웹 페이지 요청을 받는다. "/" 는 localhost:8080에 접속하면 해당 home.html파일을 돌려주게 된다. 서버를 실행하고, localhost:8080에 접속하게 되면 아래 화면을 만나게 된다.
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/yemGn/btsCU1NRzyP/45Y2Oe1Q7kThpu8LceeM8K/img.png)
1. BETWEEN 연산자 활용하기 조회는 SELECT 구문을 활용하여 진행할 수 있다. 특정 값 사이에 있는 값을 조회하고자 할 때에는 WHERE 구문에 BETWEEN 연산자를 활용하여 특정 값 사이에 있는 값을 조회할 수 있습니다. 2. Like, % 기호 활용하기 LIKE는 ~비슷한 이라는 뜻을 가지고 있습니다. 그래서 특정 문자열이 포함되어 있는 row를 출력하는 방법에 대해 배워보겠습니다. %기호를 '서울%'처럼 뒤쪽에 붙여주게 되면 앞 글자가 서울로 시작하는 row를 조회하는 쿼리문이 됩니다. '%고양시%'처럼 %기호를 앞 뒤쪽에 모두 붙여주게 되면 '고양시'가 포함된 모든 row를 조회한다고 생각하면 됩니다. 3. 같지 않음 (!-, ) '같지 않음'을 표현하기 위해서는 !=나 기호를 사용하..