Nulog
article thumbnail
2023.04.24 10일차. 생성자

10일차. 생성자의 개념이 아직 살짝 모호하다. 코드를 많이 써보면서 익숙해져야 할것 같다. new 생성자는 클래스에서 구현해 둔 틀을 바탕으로 인스턴스(객체)를 생성하는 역할. 생성자 객체를 생성하는 클래스의 구성 요소. 모든 클래스에 하나 이상의 생성자가 꼭 필요하다. 따로 만들지 않아도 인스턴스가 정상적으로 생성되는 이유는, 클래스 내 생성자가 포함되지 않는 경우 자바 컴파일러가 기본생성자를 자동으로 추가하기 때문이다. 인스턴스 생성은 new 생성자는 인스턴스 변수를 초기화하는데 사용되는 특수 메서드 생성자의 이름은 반드시 클래스의 이름과 같아야한다. 반드시 public으로 선언 리턴 타입 없음 생성자도 오버로딩이 가능하다. 따라서 한 클래스 내 여러 생성자가 존재할 수 있다. class Car {..

article thumbnail
2023.04.21 9일차. 클래스와 객체

9일차 위에서부터 순서대로 연산을 하는 컴퓨터 과정이 아닌, 객체 지향에 대해 배웠다. 실생활의 사물들을 구현해내자는 마인드로 설계된 구조라고 한다. 실제 사물들이 어떤 순서에 의해 기능하지 않듯, 각각의 사물은 사물로서 존재한다. 그 사물의 기능이 필요할 때 가져다 쓰는 방식이 객체지향 프로그래밍이다. 객체지향에 대해 알기 전에 먼저, 클래스와 객체에 대해 알아야겠다. 클래스 객체를 정의한 설계도, 표준 양식, 틀 등 객체를 생성하는 역할. 클래스는 아래 4가지 요소로 이루어져 있으며, 생성자를 제외한 3요소를 멤버라고 부른다. 필드: 생성할 객체의 속성을 결정한다. Ex. 자동차 모델명, 색상 등 메서드: 생성할 객체의 기능을 결정한다. Ex. 시동, 주행, 가속, 정지 등 생성자: 클래스의 객체를 ..

article thumbnail
2023.04.20 8일차. 배열

8일차. 낯선 개념이었으나, 수학의 집합 개념과 비슷한 듯하다. 배열을 다루는 메서드도 많으니 다루는데 어렵지는 않을 것 같다. 다만, 더 효율적이고 편하게 배열을 활용할 수 있도록 많은 메서드를 공부해두어야겠다. double[] temperatureOfJuly; // 7월의 매일의 온도 저장용 temperatureOfJuly = new double[31]; // 31개의 공간을 미리 선언 dobule[] temperatureOfJuly = [1,2,3,4,5,6,7,8 ...] temperatureOfJuly[3] = 4 1. 배열은 참조타입이다. 문자열(String)도 참조 타입이다. 변수 선언 시, 값을 저장할 메모리 공간을 미리 확보해두는데 배열과 문자열은 사용자가 얼만큼의 메모리를 사용할 지 모..

article thumbnail
2023.04.19 7일차. 반복문(for, while, do-while)

7일차. 엑셀에선 경험해보지 못한 반복문. 조건문과 다르게 실행 시 연산과정이 직관적으로 떠오르지 않아 조금 어려움을 겪었다. IDE에서 디버그를 통해 각 연산을 단계적으로 확인할 수 있다고 하니, 활용하며 익숙해져보자. 코드스테이츠 7일차는 2023년 4월 19일이었다. 노션에 적어논 것을 티스토리로 옮기면서 다시 쭉 훑고 있는데, 잘 이해하고 써두었다고 생각했으나 다시 보니 더 잘 보이는 것들이 있었다. 주기적으로 크게 훑는 것도 필요해보인다. 노션글을 보니 이 무렵부터 프로그래머스 lv.0 문제를 풀기 시작한 듯하다. for문 : 반복문을 반복해야할 횟수를 알고 있을 때 주로 사용, 조건식이 참인 동안 주어진 횟수만큼 실행문을 반복수행한다. for(반복자 선언 및 초기화; 조건식; 증감식){ 실행코..

article thumbnail
2023.04.18 6일차. 조건문(if, switch)

6일차. 조건문은 엑셀에서 사용하던 if함수와 기능작동의 형식이 완벽히 동일하다. if함수 활용에 익숙해서 그런지, 코플릿 문제의 논리와 흐름, 알고리즘은 정확하게 잘 떠올릴 수 있었다. 연산자 https://nutech.tistory.com/11 [JAVA] 연산자 산술(+, -, *, /, %) % : 나머지 증감(++,--) 전위형, 후위형 //전위형은 증감을 하고 나서 num1 값에 할당. 이후 증감된 num1을 prefix에 할당 //아래 코드의 결과값은 num1=2, prefix=2가 됨 int num1 =1; int prefix =++n nutech.tistory.com 별도 포스팅 참조 콘솔 입/출력 입력 Scanner https://nutech.tistory.com/12 별도 포스팅 참조..

article thumbnail
2023.04.17 5일차. JAVA의 기본

5일차. 드디어 프로그래밍 언어를 시작했다. 대학교 교양으로 배웠던 파이썬에서는 조건문/반복문/배열 정도만 배우고, 이후론 실무에서 어떻게 사용되는지 정도만 배웠던 기억이다. 이제 진짜 본격적으로 개발자가 되기 위해 컴퓨터와 소통하는 언어를 배우게 되었다. 데이터타입이나 메서드 활용은 엑셀의 데이터타입/함수와 사용법이 똑같아 이해하기 쉬웠다. 엑셀과 비교하면 무한한 기능을 가지고 있는 것이 프로그래밍 언어이니, 훨씬 많은 기능을 구현할 수 있지 않을까 하는 마음에 설렌다. 객체지향 프로그래밍? 객체지향 프로그래밍(Object-Oriented Programming)이란 프로그램을 설계하는 개념이자 방법론. 프로그램 = 현실세계 객체 = 사물 객체지향 프로그래밍(OOP)은 프로그램을 유연하고 변경하기 쉽게 ..

article thumbnail
2023.04.14 4일차. Git과 Github

4일차. 터미널과 깃허브를 이용해 협업하는 방법을 배웠다. 앞으로 많이 활용하게 되겠지만, 아직 쓸 단계는 아니니 천천히 익숙해져보자. Git이란? 변경사항 확인, 각 사용자의 버전 관리, 파일 백업, 협업자들과의 파일 공유, 원격저장소 등 로컬에서 버전 관리를 가능하게 한다. 버전 관리(로컬) git init을 통해 git이 해당 파일을 작업하도록 지정 생성 시 디폴트 브랜치명 변경 : git config --global init.defaultBranch 변경할_브랜치_이름 현재 위치하는 브랜치명 변경 : git branch -m 변경할_브랜치_이름 파일의 상태 Workspace(내 작업공간, Untracked) → git add → Staging area(임시 대기, Staged) → commit →..

article thumbnail
2023.04.13 3일차. OS, 리눅스, 그리고 CLI

3일차. MacOS 내 터미널을 이용해 리눅스 환경에 대한 이해를 높이는 것이 목적 터미널에서 키보드만으로 여러 명령어를 실행하고, 파일을 만드는 것까지 해보니 어릴 적 상상하던 개발자의 모습이 된 것만 같았다. 패키지 매니저 homebrew를 설치하고, nano에디터를 활용해보면서 터미널환경에 익숙해지는 시간이었다. CLI 기본명령어 종류는 굉장히 다양하겠지만, 자주 사용하는 명령어만 쓰게 될 것 같다. 기본 명령어는 따로 정리한 글을 포스팅할 예정이다. 절대경로와 상대경로 - 절대경로: 아래와 같이 구체적인 디렉토리를 직접 작성한 경로를 명시한다. /Users/[username]/helloWorld/hello - 상대경로: 현재 위치를 기준점으로 특정 폴더와 파일의 위치를 찾게 된다. 백엔드 개발..