1/16 오리엔테이션.
자전거를 타고 학원을 갔다. 가는데 50분이나 걸려서 아침에 자전거 타기는 힘들 것 같다. 간단히 오리엔테이션을 했다. IT 관련 기초지식 테스트를 했다. 모르는 것 투성이었다. 1달 동안 목표는 흥미를 잃지 않는 것이다. 열심히 하되 모른다고 자책할 것 없다. 조금씩 쌓아 가보자. 국민취업지원사이트에서 2유형 지원했다. 근로장려금 20만원과 2유형지원금을 받으면 한달 생활비는 빠듯하게 가능할 것 같다. 알바를 주 15시간 이상하면 근로장려금을 받지 못한다. 배달을 하루에 1시간 정도만 해야겠다.
1/17 첫 수업
선생님을 처음 만났다. 굉장히 냉철하고 이성적이고 차가운 느낌이다. 결실을 맺기 위해서 이 자리에 왔다고 말하셨다. 목표는 취업이고 선택했으면 책임지라 했다. 코딩을 계속 고집스럽게 해야 한다고 말한다. 시간엄수를 강조했다. 냉정한 현실을 직시하고 열심히 하라고 반복해서 말했다. 자바 프로그래밍은 6년 정도 해야 고수가 될 수 있다고 한다. 나는 그 교육과정을 6개월 만에 학습하는 사람이니 1개월을 1년처럼 농축시켜야 된다고 말했다. 장화신고 삽질하러 온 것이지 누가 밥을 떠먹여주길 바라면 실패한다. 고집피우지말고 시키는대로 할 것, 호락호락하지 않다는 말도 반복했다. 애플의 시가총액이 1200조 날아가는 것이 최근 경제 상황이다. IT업계의 1등이 그러한데 그 밑은 어떠할까? 살아남으려면 열심히 해야 한다. 책임을 회피하는 사람이 되지 말라는 선생님의 말씀에 비장한 각오까지는 아니고 매일 꾸준히 열심히 해보겠다는 다짐을 해본다.
수업내용
국내 현실적인 프로그래밍은 자바 커리큘럼이다. 1단계는 자바를 한다. 데이터는 데이터베이스에 저장된다. 쿼리는 질의를 말한다. 쿼리문 언어가 SQL이다. 2단계는 프론트엔드다. HTML, CSS, JQuerry 등이 있다. 3단계는 백엔드다. Spring을 기반으로 한다.
1월은 git 공부를 한다. 필요한 소프트웨어는 설치한다. 크롬을 설치했다. 반디집을 다운받았다. Visual Studio Code를 다운받았다. 내가 해야하는 것은 실습이다. 코딩을 하기 위해서 학원을 온 것이다. 스택이 쌓여서 코딩이 된다. 길게 보고 투자해야 하는 분야다. 방향성이 있으면 괜찮다. 한걸음 한걸음 나아가는 것이니 매일 매일 쌓아가야 한다. 코딩 바로 잘하는 사람은 없다.
java, c, c++, python 언어가 프로그램을 실행하는 기반을 제공한다. 소프트웨어가 실행되는 영역은 하드웨어다. 소프트웨어를 실행한다는 말은 프로그래머가 미리 만들어논 명령어를 중앙처리장치(CPU, Central Processing Unit)가 그 명령어대로 컴퓨터의 하드웨어를 작동시키는 과정이다.
애니악은 최초의 컴퓨터다. 그 다음이 에드박이다. 에드박부터 10진수가 아니라 2진수로 처리되었다. 이후 PC로 발전이 이어졌다. cpu, ram, ssd가 있는 곳이 메인보드(마더보드)다. 운영체제(OS)가 메인보드를 작동시킨다. CPU가 코딩을 해석한다. 데이터는 메모리장치에 저장된다.
Input으로 0과 1만 들어온다. 폰 노이만은 현대 프로그래밍의 근간을 만드신 분이다. 폰노이만 방식으로 만들어졌다.
내용이 딱딱하게 느껴지고 설명이 길고 지루하다. 저절로 잠이오는데 참아냈다. 컴퓨터의 작동원리를 쉽게 이해할 수 있는 영상을 찾아봐야겠다.
프로그래밍이란? 컴퓨터가 일을 수행하도록 프로그래밍 언어로 명령어 집합(프로그램)을 만드는 일이다.
컴파일이란? 프로그래밍 언어를 컴퓨터가 실행 가능한 기계ㅇ어로 만드는 일이다.
쉽게 얘기하면 컴퓨터 일 시키는 명령어 만드는 것이 프로그래밍이다.
제임스 아서 고슬링이 자바를 만들었다.
Eclipse 다운로드, JDK 다운로드. 뭔말인지 모르겠지만 따라가보자. 혼자 막한다. 따라가기 힘들다.
자바프로젝트 그 다음에 패키지 선택. 내가 무엇을 하고 있는지 이해되지 않지만 일단 따라가는 중이다.
-------------------------------------
1) java, c, c++, python 언어가 프로그램을 실행하는
기반을 제공함
2) 소프트웨어가 실행되는 영역은 하드웨어임.
3) 소프트웨어를 실행함
- 프로그래머가 미리 만들어논 명령어를
중앙처리장치(CPU, Central processing Unit)가
그 명령어대로 컴퓨터 하드웨어를 작동시키는 과정임.
1) 컴퓨터에서 프로그램의 명령어를 수행하는 컴퓨터의
두뇌와 같은 역할을 함.
2) 구성요소
- 산술/논리부
- 제어부
- 레지스터
1) RAM
2) 컴퓨터가 작업을 수행하는 동안 작업 수행에 필요한
명령어와 자료(Data)를 저장하는 공간
3) 주메모리는 내부적으로 자료를 저장할 수 있는 셀(cell)로
이루어져 있음
4) 각각의 셀에는 고유번호 즉 주소(address)가 할당되어
있음
1) 컴퓨터 하드웨어의 기능을 통제하여 원하는 결과나
기능을 얻도록 하는 명령어의 집합을 의미함.
2) 종류
- 시스템 소프트웨어(System software)와
응용 소프트웨어(Application software)로
나눌 수 있음
3) 시스템 소프트웨어(System software)
- 운영체제(OS) : 시스템의 효율적인 운영과 관리를
목적으로 하는 소프트웨어가
- 컴파일러, 디버거 : 다른 소프트웨어를 개발하는 데
사용되는 소프트웨어
4) 응용 소프트웨어(Application software)
- 프로그램
- 오피스 프로그램, 게임, 브라우저....
1) 문법에 맞게 소스 코드를 작성, 파일로 저장
2) 2진 명령어 코드로 변환 작업인 컴파일을 함
3) 실행코드(실행 파일)를 실행
(=> CPU는 2진 코드를 읽어 실행함)
4) 통합 개발 환경(IDE, Integrated Development
Environment) 제공
- 이클립스, 인텔리J
- 편집기, 컴파일러, 디버거, 인터프리터 등
-------------------------------------------------------------------
1) java, c, c++, python 언어가 프로그램을 실행하는
기반을 제공함
2) 소프트웨어가 실행되는 영역은 하드웨어임.
3) 소프트웨어를 실행함
- 프로그래머가 미리 만들어논 명령어를
중앙처리장치(CPU, Central processing Unit)가
그 명령어대로 컴퓨터 하드웨어를 작동시키는 과정임.
1) 컴퓨터에서 프로그램의 명령어를 수행하는 컴퓨터의
두뇌와 같은 역할을 함.
2) 구성요소
- 산술/논리부
- 제어부
- 레지스터
1) RAM
2) 컴퓨터가 작업을 수행하는 동안 작업 수행에 필요한
명령어와 자료(Data)를 저장하는 공간
3) 주메모리는 내부적으로 자료를 저장할 수 있는 셀(cell)로
이루어져 있음
4) 각각의 셀에는 고유번호 즉 주소(address)가 할당되어
있음
1) 컴퓨터 하드웨어의 기능을 통제하여 원하는 결과나
기능을 얻도록 하는 명령어의 집합을 의미함.
2) 종류
- 시스템 소프트웨어(System software)와
응용 소프트웨어(Application software)로
나눌 수 있음
3) 시스템 소프트웨어(System software)
- 운영체제(OS) : 시스템의 효율적인 운영과 관리를
목적으로 하는 소프트웨어가
- 컴파일러, 디버거 : 다른 소프트웨어를 개발하는 데
사용되는 소프트웨어
4) 응용 소프트웨어(Application software)
- 프로그램
- 오피스 프로그램, 게임, 브라우저....
1) 문법에 맞게 소스 코드를 작성, 파일로 저장
2) 2진 명령어 코드로 변환 작업인 컴파일을 함
3) 실행코드(실행 파일)를 실행
(=> CPU는 2진 코드를 읽어 실행함)
4) 통합 개발 환경(IDE, Integrated Development
Environment) 제공
- 이클립스, 인텔리J
- 편집기, 컴파일러, 디버거, 인터프리터 등
-------------------------------------------------------------------------------------------------------------------------------------------------------------
1) 자바 클래스명은 파일명과 반드시 일치해야 함
- 자바 소스 파일의 확장자는 반드시 .java로 끝나아 함
- 클래스명은 반드시 파일명과 대소문자까지 일치해야 한다
- 자바에서는 클래스 첫글자는 관계적으로
대문자로 표기함.
2) 자바 프로그램의 시작점은 main() 메서드임
3) 개발 자바 명령문은 반드시 세미콜론(;)으로 마쳐야 함.
4) 소스 코드 작성시 반드시 들여쓰기를 해야 함.
() 소괄호
{} 중괄호
[] 대괄호
2) 자바에서 미리 사용하는 단어
3) 지정된 예약어를 클래스명이나 변수명으로 사용불가
- 0~9까지 숫자를 사용함.
- 10을 한 자리의 기본 단위로 함
- 1010, 1110와 같이 0과 1의 조합으로
숫자를 표시하는 방법.
- 컴퓨터 내부에서 기본적으로 사용하는 방법
- 0은 전기가 흐르지 않는 상태를,
1은 전기가 흐르는 상태로 표시할 수 있음.
3) 8진수
- 0~7까지의 수로 표시하는 것.
4) 16진수
- 0부터 9와 A부터 F까지를 사용하여 수를 표시하는 것.
무슨 말인지 모르겠지만 따라하고 있다. 오후 5시 git 실습을 하고 있다. 오후 6시 끝났다.
1) 프로그래밍
- 컴퓨터가 일을 수행하도록 프로그래밍 언어로
명령어 집합(프로그램)을 만드는 일
2) 컴파일(compile)
- 프로그래밍 언어를 컴퓨터가 실행 가능한 기계어로
만드는 일
3) 컴파일러(compiler)
- 기게어로 바꾸어 주는 프로그램 (javac.exe, gcc)
1) 1991년 제임스 고슬링을 비롯한
선 마이크로 시스템스 연구원들이 처음 개발
2) C/C++ 언어가 주류였는데, 다양한 플랫폼마다
매번 다른 기계어로 컴파일해야 함.
3) 1996년 JDK (Java Development Kit) 1.0 공개
- JDK 1.1
JDK 1.2 (Java 2 Platform Standard Edition)
JDk 1.3
JDK 1.4
J2SE 5.0
JAVA SE 6
JAVA SE 8
~~~~~~
JAVA SE 17
3. 자바 프로그래밍의 특징
1) 용어정리
- JDK(Java Development Kit)
- 자바에서 제공되는 개발용 라이브러리
- JRE (Java Runtime Environment)
- 자바 프로그램이 실행되는 환경
- JVM (Java virtual Machine)
- 자바 가상 머신으로 프로그램이 실행되는 환경
- JRE에 포함됨
2) 플랫폼에 영향을 받지 않으므로 다양한 환경에서
사용할 수 있음.
3) 객체 지향 언어이기 때문에 유지보수가 쉽고 확장성이 좋음
4) 프로그램이 안정적임
5) 풍부한 기능이 제공되는 오픈소스임
4. 자바를 활용한 프로그래밍
1) 웹 사이트 구현
2) 안드로이드 프로그래밍
3) 게임 프로그래밍
1) 자바 언어 익히기 (Syntax)
2) 객체 지향 프로그래밍으로 자바 구현하기
3) 자료구조 이해 및 활용
4) 문제 해결하기 ㅇ
'코딩 학원(국비지원)' 카테고리의 다른 글
4일차 코딩 교육 후기. (0) | 2023.01.20 |
---|---|
3일차 코딩 학원 후기 (0) | 2023.01.19 |
2일차 코딩 교육. (0) | 2023.01.18 |
지능형 웹서비스 풀스택(프론트엔드, 백엔드) 개발 (0) | 2023.01.11 |
코딩 배우기에 도전한다 (0) | 2023.01.10 |