전체 글 396

기능(메서드) 기반 해석

(흩어져서 기능 처리) 컨트롤러 메서드는 사용되는 기능을 전부 커버하는 것은 아니고, 몇개는 뷰 페이지에서 자바스크립트를 사용, 체크박스, 서브밋 버튼 등으로 직접 처리되고 몇개는(주로 로그인 검증 관련 + 사용하지않을 페이지 뷰 리졸버) securityConfig에서 처리된다. - (나머지 컨트롤러 메서드는 19개) -> 외운다 멤버 - 회원가입폼, 폼제출, 로그인폼, 로그인에러폼 / 1~4번 메인 - 메인, 아이템, 페이지뷰 / 5번 오더 - 아이템 직접주문, 오더 캔슬, 오더히스토리 / 6 7 8번 카트 - 카트 페이지, 카트 아이템 주문, 카트에 아이템 넣기, 아이템 삭제, 아이템(수량) 업데이트 / 9 ~ 13번 아이템 - (어드민) 생성폼, 세이브제출, 수정폼, 업데이트제출, 아이템 관리페이지..

2장 : 시간 복잡도

입력 크기에 비례하는 것 / 알고리즘의 실행 시간 & 데이터의 상관관계 통상 1초가 넘어가면 안됨 - 통상 배열(for문 선형 탐색) -> O(N) - 단순 연산 : O(1) 이진 : O(logN) 선형 : O(N) 정렬 : O(N logN) 조합 : O(2^N) 순열 : O(N!) - 입력 조건에 명시된 최악의 경우를 시간 복잡도에 대입 -> 1억이 넘지 않으면 통상 Ok (시간제한 1초시) - 시간 제한이 없더라도 대부분의 코드는 10초 내에 실행 완료 (10억이 넘어가면 안됨) - 길이 N 정수로 이루어진 배열 -> M개의 숫자 유무 10,000개 / 100,000개 최악 -> 10억 이진 탐색 -> O((N+M)logN) HashSet -> O(M+N) - 상수, 곱하기, 사칙연산은 고려되지 않는..

코테 기초 2024.03.20

1장 : 코테 설계 및 작성법

001 가독성 현재년도, 출생년도를 인자로 넣어서 나이를 구하는 함수 함수이름을 function 대신 age로, 인자를 a-b대신 currentyear, birthyear로 - 002 효율 자연수 1~N 합 구하기 for문보다 n(n-1)/2로 하는게 효율적 - 003 디버깅 및 시행착오 1 - 단계별 코드 작성 2 - 하나의 단계 작성 후 실행- 로그 보면서 검증 3 - 2에서 조금 더 자세히 로그 찍으면서 수정 - 004 전화번호 PhoneNumber클래스 final String phoneNumber선언 + slot설정 + set으로 주입 입력을 replaceAll Regex로 받는다 (String으로 받을때는 isDigit로 검증) toString 오버라이드 equals 오버라이딩 : contain..

코테 기초 2024.03.20

깃 깃헙

- git 터미널 사용으로 github에 올린다 - commit history -> push - 처음파일 init 필요 / add - 처음 리포지토리 이메일 네임 설정 Origin mater pull이랑 branch? - 신입 당겨오기 Clone git->복사코드 폴더 폴더 안써주면 자동으로 프로젝트 이름 폴더로 들어감 - master에 올리지 않고 공간 새로 파주기 (코드 작성했으나 테스트 전에는 수합x) Git push origin freshman 이후 pull request : 마스터에 갈 수 있게 허락해주세요 Branch 마음에 안들면 review change Merge pull request Add - comiit - push 상대가 작업한 파트가 있을때 Add - commit - pull - ..

람다 관련

sP ; 언제나 @funtionalInterface + public interface 3가지 참여자가 있다인터페이스인터페이스를 args로 사용하는 메소드메인단- 람다는 그냥 arg로 사용되는 익명 구현 객체이며, 그것의 간편한 작성법이다컴파일 시 람다를 익명 구현 객체로 변환해 컴퓨터가 자각한다 - 메소드에서는 인자 공급만 하고, Overriding은 나중에, main단에서 사용시 (람다 형식으로) 하는 것   *왜 바로 위인 method단을 건너뛰고, 메인단에서 사용하는 두 단계 위에서 재정의하나?> 익명 구현 객체이므로> 그리고 메인은 사실 method를 사용만 하는 역할이므로, 메소드를 static으로 불러오거나. 기껏해야 메소드를 가진 class를 작성하는 것 뿐이다(클래스객체.메소드) - abs..