본문 바로가기

코딩 학원(국비지원)

15일차 코딩 수업

반응형

CES 행사 소개. 소비자 가전 전시회다. 업체들이 무엇을 팔고자 하는가? 한번씩 보면 좋다. 

우리나라 스타트업 기업들이 수상을 많이 했음. 한국은 기술이 있는 나라임. 

 

상속에 대한 내용을 공부 중이다. 솔직히 무슨 말인지 모르겠어서 기초 공부를 하고 있다. 

 

코딩이란? 언어다. 가전제품, 기계제품에 코딩이 들어가있음. 엘리베이터, 자판기 버튼 누르면 작동하는 것도 코딩임. 

 

코딩은 컴퓨터와 대화를 시도하는 하나의 언어, 도구, 수단임. 알아들을 수 있게 언어를 작성하는 것이다. 

 

그렇게 어렵지 않다. 내가 원하는대로 컴퓨터가 움직임. 애완동물을 기르는 것과 비슷할까? 해내면 성취감이 대단하다. 

우선순위는 알고리즘이다. 예: 요리하는 순서. 

 

문제에 대해 어떻게 접근할 것인가? 그 문제에서 무엇을 요구하는지를 코딩으로 풀어가는 것이다. 합리적인 사고를 할 수 있다. 작가와 비슷하다. 무에서 유를 창조해내는 작업이다. 프로그래머의 수고를 통해 사람들을 편리하고 행복하게 해준다. 

 

________________________________________________________________________________________________

변수(variable)은 변하는 수가 아니라 하나의 값을 저장할 수 있는 메모리 공간을 말한다. 

RAM - 0  ->1byte

            1 

            2 

            3 

             4

변수를 선언해야 한다 = 저장 공간을 마련하기 위해서 

변수 선언 방법 = 변수타입 변수이름 ; 

 

int age ; 정수타입의 변수를 선언함. 

 

변수에 값 저장하기 

 

1. 변수에 값 저장하기 

int age; 

age = 25;

 

package codingtraining;

public class Varaible {

public static void main(String[] args) {

 

int x= 5, y=3;

System.out.println(x+y);

System.out.println(x-y);

System.out.println(x*y);

System.out.println(x/y);

 

}

}

변수를 사용하면 숫자를 일일이 다 바꾸지 않아도 된다. 편해진다. 

 

________________________________________________________________________________________________

 

추상클래스에 대한 공부. 

매서드의 선언이 무슨 뜻인지 감이 안잠힘. 추상클래스도 무슨 말인지 이해가 안된다. 

 

UML클래스 

 

UML 설계도

나는 왜 이해가 되지 않을까?

 

 

인터페이스라는 개념도 공부한다. 인터페이스는 화면을 말함. 

 

 

무엇을 할 것인가? 고민하면서 시간을 보내야 한다. 수업듣고 간다? 좋은 결과를 못냄. 생기가 없음. 

혼자 유튜브로 정리를 해볼까? 

 

막혀서 못 나감. 바보일까...?

 

인터페이스, 추상, 상속, 인스턴스, 클래스 ,메서드, 변수, 오버라이딩, 세터 게터 등등 용어가 어렵다. 용어 뜻을 따로 정리해야겠다. 뭔지도 모르고 쓰고 있는 내 상태를 보면 바보 같긴 하다. 

 

________________________________________________________________________________________________

 

공부를 어떻게 하면 좋을까 감이 안잡혀서 인터넷 검색을 해봤다. 

 

훑어보기

딱히 외우거나 이해하려고 노력하지 않고 그냥 쭉 훑으면서 어떤 내용이 있는지, 어떤 부분이 쉽고 어려운지 등을 식별합니다. 공부 시작 전은 물론이고 공부하는 중에도 주기적으로 훑습니다.

공부 시작 전 훑기

내가 어떤 내용을 배울 것이고 그것들이 어디에 쓰이는지를 대략적으로 파악합니다. 내가 왜 이 공부를 하고 있는지 그 이유와 목적 등도 확립합니다.

공부 중 주기적으로 훑기

내가 지금 어디까지 와왔는지 확인합니다. 또한 그 동안 배우면서 기존에 이해되지 않았던 부분이 지금은 이해되는지 확인합니다. 기타 배웠던 내용들을 떠올리며 가볍게 복습합니다.


연습하기

해당 기술을 적용하여 코드를 쳐봅니다. 이는 세부적으로 3단계로 나뉩니다.

따라치기

예제 등을 그냥 따라 칩니다. 글자 하나하나 보면서 따라치고 동일한 결과가 나오는 것을 확인합니다. 그러면서 왜 이런 코드를 작성했는지를 분석합니다.

안보고 치기

문제만 보고 코드를 짜봅니다. 이 때 문법이나 개념이 헷갈리면 다시 책을 보거나 검색해볼 수는 있지만 따라치거나 복붙하지는 않습니다.

응용하기

문제를 떠나서 직접 해보고 싶은 대로 해당 개념을 적용해서 코드를 짜봅니다. 달리 말하면 직접 문제를 만들어보는 것 입니다.


정리하기

배운 내용을 정리합니다. 정리하는 규격 등은 편한 방식을 사용하시면 됩니다. 세부적으로 3단계로 나뉩니다.

생각나는대로 적기

내가 배우거나 본 내용, 참고한 자료등을 적어냅니다. 이 때 중요한 점은 꼭 깔끔하게 정리하려고 하지 않는 것으로 중복 여부나 관련성따위는 무시하고 그냥 생각나는대로 정리합니다. 이렇게 하는 이유는 처음부터 너무 깔끔히 정리하려다보면 지나치게 피곤해져서 공부 의욕이 꺾이기 때문입니다.

가공하기

앞서 생각나는대로 정리해서 난잡하게 되어있는 중복되어 있으면 합치고, 내용이 부족하면 보충합니다. 이 과정에서 다시 한 번 복습합니다. (보통 하루 공부가 끝나면 일괄적으로 합니다.)

재배치하기

여러 페이지를 쭉 훑으면서 관련성이 높거나 중복된 내용이 있으면 한 페이지로 모으고, 관련성이 떨어지는 내용은 분리한 뒤 링크 등으로 연결합니다. 이 과정에서 또 한 번 복습하며 세부적인 내용보다는 전체적인 개념이나 큰 그림을 그립니다. (주말마다 하는 것을 권장합니다)

 

 

반응형