백엔드 개발 수강 1주차 회고록



서론

9시간동안 카메라 앞에서 공부한다는것은 생각보다 어렵다.
차라리 오프라인 수업이 나을것같다는 생각을 잠시 하였음

또 개발블로그는 처음이라 이것도 쉽지않다.
점차 포스팅에 소요되는 시간이 줄어들길 기원해본다!

1주차는 이전의 내 생활과 강의와의 루틴 맞추기 +
프로그램 설치 및 환경세팅에 많은 시간이 들었다.
당연함

그래서~
공부량이 적을 수 있습니다.
본인을 반성하며 2주차에는 회고할 내용이 많기를


Java 기초

너무 이지한 내용일 수 있지만
기초부터 새로 잘 다지기로 다짐했기때문에!

그저 내 기준에서 한번 더 짚어볼만한 내용들만 정리했다.

  1. var을 이용한 변수 선언
		var str = "ian";
		System.out.println(str);
		
		str = "hello";
		//str = 3; 안됨.
        
		System.out.println(str);

var는 컴파일러가 타입을 자동으로 지정해주기 때문에 변수를 선언할 때 타입을 생략할 수 있다.
때문에 정수, 실수, 문자열 지정이 모두 가능하다는 점

그런데 위와 같은 코드에서
str은 이미 "ian"이라는 문자열로 지정되었기때문에 "hello"로 대입할 수는 있지만
3과 같은 정수, 실수로는 지정할 수 없다.
처음 지정된 타입으로만 변수 대입이 가능 하다는 것을 기억하기


  1. 논리연산
		int num1 = 10;
		int i = 2;
		
		boolean value = ( (num1 = num1 + 10) > 10) || ( (i = i+2) <10);
		
		System.out.println(value);
		System.out.println(num1);
		System.out.println(i);

AND나 OR에서 앞 항으로만 true/false가 정해진다면 뒤 항은 계산되지 않는다.

위와 같은 코드에서 (num1 = num1+10) > 10인 앞 항이 이미 true이기 때문에
뒤 항인 (i=i+2) < 10가 true인지 false인지 계산할 필요가 없다.

때문에 num1을 출력하면 10이 더해진 20이 나오지만 i를 출력하면 2가 더해지지 않고 그대로 2가 출력된다.

  • 별개로 연산의 우선순위 리더빌리티를 위해 괄호를 꼭 써주는것이 좋다.


  1. 용어 정리
  • 객체 : 객체지향프로그램의 대상, 생성된 인스턴스 클래스. 객체를 프로그래밍 하기위해 코드로 정의해놓은 상태
  • 인스턴스 : new 키워드를 사용하여 클래스를 메모리에 생성한 상태
  • 멤버 변수 : 클래스의 속성이나 특성
  • 메서드 : 멤버 변수를 기반으로 클래스의 기능을 구현한 함수
  • 참조 변수 : 메모리에 생성된 인스턴트를 가리키는 변수
  • 참조 값 : 생성된 인스턴스의 메모리 주소 값


  1. 멤버변수와 지역변수
    제일 헷갈리는 내용이라 정리해보았다.
멤버변수클래스변수인스턴스변수
객체 속성공통적 속성개별적 속성
객체 생성할때마다 속성 변경변경 불가변경 가능
  • 멤버변수 : 클래스 내에 선언되며 클래스변수와 인스턴스변수가 있다. (객체가 만들어질때 초기화됨)
  • 지역변수 : 메소드 내에 선언되어 메소드 내에서만 사용이 가능하고 메소드가 종료되면 자동으로 소멸된다.


느낀점

강의를 보면서 직접 예제 실습해보기 + 한번에 이해안되는 파트 다시보기
하다보니 강의 하나를 듣는데도 많은 시간이 소요되는거같다.

그래서 앞으로는 강의를 조금 더 가볍게 듣고 진도를 빨리 나가되
문제였던 점을 회고록에 적으면서 정리하는 방향으로 공부해야겠다.

profile
이안이의 우당탕탕 개발기

0개의 댓글