프로그래밍
-
깔끔한 코드 작성에 관한 의문 (과 해결)프로그래밍/Java 2023. 11. 14. 21:14
소트웍스 앤솔러지 라는 책을 읽은 사람의 책을 보며 이러한 궁금증이 생겼다. 메소드 분리 규칙1. 한 메소드에 오직 한 단계의 들여쓰기만 한다. 규칙2. else 예약어를 쓰지않는다. 객체 분리 규칙3. 모든 원시값과 문자열을 포장한다. 규칙7. 일급 컬렉션을 쓴다. 볼드 처리한 3개의 규칙이 무엇인지 궁금증이 생겼고 튜터님을 통해 이 궁금증을 해결하였다. 첫번째 규칙2. else 예약어를 쓰지않는다. 간단히 말하면 else를 쓰면 분기가 생긴다. 그래서 코드가 깔끔하게 읽히지 않으며, 규칙1인 들여쓰기를 줄이기 위함도 있다. public ~~~~~~~~~{ int chooseMenu = sc.nextInt(); sc.nextLine(); if (chooseMenu == 1) { System.out.pr..
-
스프링 입문 + 웹프로그래밍/Spring 2023. 11. 8. 21:39
Spring Framework 모델-뷰-컨트롤러 아키텍처: MVC 모델(model) : 컨트롤러와 데이터를 연결하고 비즈니스 로직이 작성된다. @Service 뷰 (view) : 사용자 인터페이스 담당. FE가 전담 컨트롤러 (controller) : 사용자의 요청을 처리하고 모델과 뷰 사이를 연결 @Controller MVC를 기반으로 모든 스프링 프레임워크가 짜여져있다. Bean 관리 싱글톤 (singleton) 패턴 기본적으로 스프링은 각 빈 정의에 대해 하나의 객체 인스턴스만을 생성한다. 이것이 싱글톤 디자인 패턴을 따르는 것으로, 같은 빈 ID나 이름으로 컨테이너에 요청을 하면, 스프링은 항상 동일한 객체 인스턴스를 반환한다. @컨트롤러, @서비스 라고 되어있는 부분에서는 내부 프로퍼티를 사용하..
-
자바 TMI_3프로그래밍/Java 2023. 10. 26. 20:57
1. 변수의 여러가지 작성법 Camel Case : 띄워쓰기 대신 각 단어의 첫 글자를 대문자로 표기하여 구분하는 방법. 중간중간 대문자가 볼록 솟아있는 모습이 낙타의 등과 같다하여 카멜 케이스라 명명됨 thisIsCamelCase Snake Case : 띄워쓰기 대신 언더바(_) 를 활용하여 구분하는 방법. 언더바로 이어진 모습이 뱀과 같다하여 명명됨. this_is_snake_case Pascal Case : 카멜케이스와 유사하지만 첫 글자도 대문자로 시작한다. 자바는 클래스만 대문자로 시작하는 암묵적 규칙이 있기 때문에 추천하지 않는 작성법 ThisIsPascalCase Kebab Case : 모든 단어가 소문자이며 띄워쓰기 대신 - 로 연결되어 있다. 이 모습이 꼬챙이에 꽂힌 케밥과 유사하다 하여..
-
자바 TMI_2프로그래밍/Java 2023. 10. 13. 21:02
1. Stack Heap - Stack은 정적으로 할당된 메모리영역 -> 그래서 크기가 몇바이트인지 정해져있는 기본형 변수를 저장한다 -> 추가로 크기가 정해져있는 참조형 변수의 주소값도 저장한다 - Heap은 동적으로 할당된 메모리 영역이다 -> 그래서 크기가 계속 늘어날 수 있는 참조형 변수의 원본을 저장한다 2. 비트연산 > 0,1은 2진수 값이기 때문에 - 자릿수를 왼쪽으로 옮기는 횟수만큼 2의배수로 곱셈이 연산되는 것과 동일함 - 자릿수를 오른쪽으로 옮기는 횟수만큼 2의배수로 나눗셈이 연산되는 것과 동일함 5 char[] char[] charArray = str.toCharArray(); char[] -> String String charArrayString = new String(charArr..
-
자바 TMI_1프로그래밍/Java 2023. 10. 11. 15:46
영어권은 문자를 1바이트로 표현이 가능 그러나 비영어권은 2바이트로 표현한다 자바는 char가 2바이트라 비영어권 문자도 깨지지않고 다 저장가능 c언어는 1바이트라서 한글같은 문자를 직접적으로 표현할 수 없고 배열을 쓰는 등의 방법을 통해 표현해야함 메모리공간의 이름을 심볼이라 하는데 그걸 프로그래밍적으로 변수라고 한다 bytecode 는 중간어 코드 자바는 컴파일하면 class 파일로 만들어준다. 어떤 OS에서 실행할지 모르기 때문에 확실하게 exe코드로 만들지 못하고 어중간하게 만들어둔 것 이것을 JVM에게 맡기는 형태이다. JVM이 1차 컴파일된 bytecode (.class)를 자신의 OS에 맞게 다시 컴파일 (.exe) 하여 메모리에 로딩하여 실행하기 때문에 자바는 OS에 독립적으로 실행이 가능..