Programming 프로그래밍이란, 컴퓨터에게 일을 시키는 것이다. 컴퓨터는 빠르고, 24시간 일을 할 수 있다. 이와 반면 사람은 상대적으로 느리고, 또 반복적인 일을 싫어한다. 벌써 느낌이 온다. 놀면서 돈과 시간을 벌 수 있는 이 시대의 마법. 프로그래밍을 배워보자. 컴퓨터한테 “맛집을 찾아줘”라고 하면 컴퓨터는 이를 이해하지 못한다. 사람과 컴...
JAVA 프로그래밍이란, 컴퓨터에게 일을 시키는 것이다. 이를 위한 언어로는 자바, Python, C 등이 있다. 이러한 언어를 프로그래밍 언어라 한다. 프로그래밍 언어로서의 자바! 어떠한 특징이 있을까? > # MANY 자바는 전 세계적으로 많이 사용된다. 널리 사용되는 만큼, 많은 일자리 수요가 있다. 특히 국내의 경우, 큰 규모의 프로젝트일수록 자바...
컴퓨터는 데이터를 처리함으로써 일을 수행한다. 데이터 처리를 위한 기본 문법 요소는 아래와 같다. 이를 학습해보자. > # Variable definition >> 변수(variables)란 변하는 수로서, 이름 붙여진 메모리 공간이다. 여기서 메모리(memory)란, 컴퓨터의 핵심 부품으로 기억을 담당한다. 또 다른 핵심 부품으로는 CPU(연산 담당)가...
Type and conversion of shape 타입 에러는 왜 나는 걸까? 타입 관련 주의점을 알아보자! > # Caution divide operator int와 int의 연산 결과는 int이다. double과 int의 연산은 double이다. 숫자간 연산은 더 큰 타입을 따른다. > # Caution of mismatch type 변수에 값 대...
Method 자판기에 돈을 넣으면, 음료가 나온다. 햄버거 세트 메뉴도 번호만 알려주면 주문이 된다. 프로그래밍 또한 마찬가지다. 일련의 코드를 단순화하여 사용할 수 있다. 이를 메소드(methods)라 한다 일련의 코드를 단순화한 문법. 이를 메소드라 한다. 메소드는 입력에 따른 결과를 반환한다. > # Call out method 만들진 메소드를 사...
Condition 오늘은 뭘 먹지? 오늘은 어떤 옷을 입지? 등등.. 특정 상황에 따라, 다른 행동을 취해야 할 때가 있다. 프로그래밍 또한 마찬가지다. 특정 조건에 따라 결과를 달리할 필요가 있다. 이를 조건문(conditionals)이라 한다. definition >> 상황에 따라 실행 흐름을 달리하는 문법. 이를 조건문이라 한다. 이를 사용하면 버스...
Loops definition >> 규칙적 반복 코드를 단순화하는 문법. 이를 반복문이라 한다. 이를 통해 코드 압축이 가능하다. case >> 대표적 반복문으로는 while 문과 for 문이 있다. while 문은 반복 횟수가 상황따라 다른 경우에 사용한다. 이와 반면, for 문은 반복획수가 명확할 때 좋다. > # While structure >>...
Array 관련 데이터를 하나로 묶는 방법! 책을 1권, 2권,… 순서로 정리하면 편리하다. 한 학급의 학생 이름도 번호를 붙이면 관리에 좋다. 프로그램도 마찬가지다. 관련 데이터를 순서대로 관리하면 좋다. definition >> 여러 값을 하나의 변수로 묶은 것. 이를 배열(arrays)이라 한다. 아래 코드는 9명의 학생 성적을 int타입 배열에 담...
우리는 이전 파트에서 자바의 기본 문법에 대해 알아보았다. 이번 파트에서는 데이터와 처리를 하나로 묶는 법! 객체지향 프로그래밍을 학습해보자. 객체 지향 프로그래밍 클래스와 객체 클래스 설계 및 구현 > # Object-Oriented Programming definition >> 객체지향 프로그래밍(Object-Oriented Programming)이...
붕어빵 틀로 붕어빵을 찍어내는 마법 같은 매직! 클래스를 사용하여 객체를 만드는 방법! 생성자에 대해 알아보자. 생성자란 생성자의 역할 생성자 호출과 정의 > # Constructor definition >> 생성자란, 객체를 만드는 특별한 메소드다. example code >> 우리는 이미 생성자를 사용했었다. 아래 코드에서 생성자를 찾아보자. 정답은...
일반 변수와 객체를 가리키는 변수. 미묘하게 다른 듯하다. 어떤 차이가 있을까? 이를 알아보기 위해 아래 내용을 학습해보자. 레퍼런스 변수 기본형 변수와의 차이 static 키워드 클래스 변수 클래스 메소드 > # Reference variable 레퍼런스(reference) 변수는 객체를 가리킨다. 엄밀히 말하면 객체의 주소 정보를 담고 있다. ...
만약 당신의 지갑이 누구에게나 공개되어있다면..? 생각만 해도 끔찍하다. 프로그램에서 또한 마찬가지다. 어떤 건 공개해도 되지만, 어떠한 것은 감추어야만 한다. 이를 위한 개념을 배워보자. 접근 제한자란 public과 private 게터와 세터 > # Access modifier access modifier >> 접근 제한자란, 접근 권한을 제한하는 키...
무언가 작업을 할 때, 적절한 도구가 있다는 건 참 감사한 일이다. 프로그램을 만들 때도 마찬가지다. 프로그램을 만들기 위해 제공되는 적절한 도구. 자바 API에 대해 알아보자. 자바 API 패키지 자바 API 사용 예 > # Java api 자바 API란, 프로그램을 만들기 위한 도구이다. 이를 사용하면 더 편리한 프로그래밍이 가능하다. 자바 API는...
1만 줄 짜리 클래스 A가 있다. A 클래스에 딱 1줄만 추가하여 새로운 B 클래스를 만들려 한다. 1만 줄을 복붙하려니 뭔가 억울하다.. 좋은 방법 없을까? 상속이란 상속 적용 예 상속의 장점 > # Inheritance inheritance >> 상속이란, 기존 클래스를 확장하여 새 클래스를 만드는 것이다. > # Inheritance exampl...
홍팍이는 개발자다. 동시에 강사이며, 친구이다. 상황에 따라 다양한 역할을 수행한다. 프로그램에서 또한 마찬가지다. 한 객체가 다양한 역할을 수행할 수 있다. 이를 위한 개념. 인터페이스를 학습해보자. 인터페이스란 인터페이스 정의 및 구현 인터페이스의 장점 > # Interface interface >> 인터페이스란, 역할을 부여하는 것이다. chara...