일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- JSP/Servlet
- 중학수학
- 텍스트마이닝
- 정보처리기사필기
- 영어공부
- 파이썬
- pandas
- CNN
- 파이썬라이브러리
- SQL
- CSS
- 데이터베이스
- 데이터입출력구현
- 자바
- 정보처리기사실기
- 연습문제
- 컴퓨터비전
- 운영체제
- 혼공머신
- 컴퓨터구조
- 자바 실습
- numpy/pandas
- 정수와유리수
- 딥러닝
- 머신러닝
- 코딩테스트
- 중학1-1
- html/css
- 데이터분석
- C++
- Today
- Total
목록알고리즘 및 자료 관리 (214)
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
이어서 컴퓨터 구조의 큰 그림에 대해서 학습해 본다. 보조기억장치 메모레는 실행되는 프로그램의 명령어와 데이터를 저장한다고 했지만 이러한 2가지 단점이 있다. 이러한 장치를 휘발성이다고 한다. 하드디스크, SSD, USB 메모리, DVD, CD-ROM과 같은 저장 장치가 보조기억장치의 일종이다. 컴퓨터의 전원을 꺼도 컴퓨터에 파일이 남아 있었던 이유는 우리가 파일을 보조기억장치에 저장했기 때문이다. 메모리가 현재 '실행되는' 프로그램을 저장한다면, 보조기억장치는 '보관할' 프로그램을 저장한다고 생각해도 좋다. 입출력장치 보조기억장치로 알고 있었던 하드디스크, USB 메모리, CD-ROM도 '컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환할 수 있는 장치'로 볼 수 있지 않을까? ..
다시 집중해서 컴퓨터 구조 공부를 시작해 볼 것이다. 벌써 2교시가 다 지났으니 남은 2시간 동안 최대한 집중해서 학습해야겠다.이번 절에서는 마치 지도를 그리듯 앞으로 학습해 나갈 컴퓨터 구조의 큰 그림을 그려보게 된다. 우리가 알아야 할 컴퓨터 구조 지식은 크게 2가지이다. 하나는 컴퓨터가 이해하는 정보이고, 다른 하나는 컴퓨터의 네 가지 핵심 부품이다. 컴퓨터가 이해하는 정보 먼저 컴퓨터가 무엇을 이해할 수 있는지부터 알아야 한다. 컴퓨터는 0과 1로 표현된 정보만을 이해한다. 그리고 이렇게 0과 1로 표현되는 정보에는 크게 두 종류가 있는데, 바로 데이터와 명령어이다. 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보를 가리켜 데이터라고 한다. 명령어는 컴퓨터의..
컴퓨터 구조와 운영 체제에 관한 동영상 강의를 들으며 전체적인 개관을 학습하려고 한다. 강의를 듣다 보니 책에 있는 내용을 이야기하는 것 같아 이 강의와 본 강의를 합쳐서 공부하기로 했다. 대부분 개발자 지망생들은 프로그래밍 공부를 시작할 때 프로그래밍 언어부터 접한다. 나도 그랬던 것 같다. 개발 공부를 시작한 지 1년이 조금 넘은 지금에서야 컴퓨터 구조와 운영체제에 대해 공부할 필요성을 느꼈다. 프로그래밍 문법만큼 컴퓨터의 근간을 아는 것이 중요하다. 컴퓨터의 근간을 알게 되면 이 두 가지를 습득하게 된다. 문제 해결 프로그래밍 언어의 문법만 알고 있는 개발자들은 어찌 해야 할지 알지 못한다. 프로그래밍 강의나 책에 나오는 코드를 똑같이 따라 작성했는데도 코드가 제대로 작동하지 ..
먼저 공부하기에 앞서 이 책에 대한 오리엔테이션 학습을 진행해 보기로 했다. 이후에 컴퓨터 구조에 대한 1시간짜리 강의를 하나 더 듣고 본격적인 컴퓨터 사이언스 공부를 시작해 보기로 했다. 이 책은 누구를 위한 책인가? 개발자(지망생)에게 꼭 필요한 내용들을 선별한 책이다. 이 책의 관점에 대하여이 책은 전공서적이 제시하는 가장 일반적인 관점에서 서술한다. 입문자 입장에서 전공 서적을 기준으로, 일반적이고 대중적인 관점에서 서술한 책이다. 그리고 개발자에게 정말 필요한지를 기준으로 집필했다고 한다. 강의와 책을 완강한 후에 학습을 마치고어떤 공부가 될지 정말 기대가 된다. 전부터 컴퓨터 구조와 운영체제를 꼭 공부해보고 싶었는데 무척 어려울 것 같아 도전해보지 못했다. 어제 설교에서 이런 말씀을 하셨던 게..
마지막 단원을 학습해 보겠다. 이론 2 - 데이터 형태와 처리 입력과 출력 중간 단계에서 소프트웨어 명령에 따라 데이터를 처리한다. 소프트웨어의 처음과 중간, 끝에서 모두 데이터를 다룬다. 우리는 input과 output 데이터를 표현할 방법을 찾아야 한다. 데이터에는 어떤 종류가 있는지, 각각의 데이터 타입을 컴퓨터는 어떻게 인식하는지 알아보겠다. 컴퓨터가 효율적이고 에러 없이 정보를 받아들이기 위해서는 데이터 타입을 나누어 주는 것이 중요하다. 쉽게 떠올릴 수 있는 데이터는 숫자와 문자가 있고, 이미지도 데이터의 한 종류이다. 이미지가 여러 장 모인 것이 비디오이다. 영상 출력을 위해서는 스피커를 사운드 출력도 가능해야 한다. 사용자가 입력하고 볼 수 있는 데이터의 종류는 많다. 이러한 ..
2주차 내용도 총 두 가지로 나뉜다. 먼저 소프트웨어에 대해서 학습해 보겠다. 이론 1 - 소프트웨어 앱을 만든다고 한다면 관점을 소비자에서 생산자로 바꿀 필요가 있다. 컴퓨터 세계에서 생산자는 프로그래머라고 부른다. 프로그래머가 될 사람은 사용자에게 서비스를 제공하는 것이다. 사용자에는 우리 자신도 포함될 수 있다. 사용자는 항상 그들이 원하는 무언가, 즉 요구사항을 갖고 있다.프로그래머는 하드위어와 사용자 사이에 중개사가 되어 멋지고 아름답고 효율적인 뭔가를 구축하는 일을 한다. 우리는 이것을 소프트웨어라고 부른다. 하드웨어에 소프트웨어를 탑재해 컴퓨터 시스템을 완성시킨다는 것은 이미 배웠다. 이제는 하드웨어가 특정 동작을 하도록 모든 명령을 내리는 소프트웨어에 대해 살펴볼 것이다. ..
이번에는 하드웨어에 대해서 학습해보려고 한다. 이론 2 - 하드웨어 하드웨어는 대부분 컴퓨터 내부에 숨어있다. 필수적인 하드웨어에 대해 알아보면 다음과 같다. 전원공급장치, 마더보드, CPU, RAM, 하드디스크, GPU가 포함된 그래픽카드가 있다. 이것들은 복잡도에 따라 간단한 것과 복잡한 것으로 나눌 수 있다. 먼저 간단한 것부터 살펴보자. 외부 전원에서 컴퓨터 시스템으로 전원이 들어오는 곳이다. 이 전원은 다시 모든 개별 구성 요소에 할당된다. 마더보드는 메인보드라고도 부른다. 마더보드에는 컴퓨터가 동작하기 위해 필요한 하드웨어 주요 부품들이 장착된다. 각 부품에 필요한 전원을 할당하고 서로를 연결해 주고 그 흐름을 적정하게 제어하는 역할을 하는 아주 중요한 회로판이다. 입력 ..
SQL 기초 공부는 조금 전에 모두 마쳤다. 이제 내일부터는 3일 동안 컴퓨터 구조와 운영체제에 대해서 공부해보려고 한다. 그전에 엘리스로 이 과목이 있어 미리 맛보기로 학습을 진행해 볼 생각이다. 3, 4주차는 지금은 별 도움 안 되거나 너무 쉬운 내용이니 1, 2주차 분량만 학습해 두면 좋을 것 같다. 수업 소개 - 알아두면 쓸데 있는 컴퓨터 사이언스 이런 과목인데 알고리즘과 프로그래밍 언어 관련 파트는 빼고 컴퓨터 사이언스 부분만 학습하려고 한다. 이론 1 - 컴퓨터 시스템 구조 컴퓨터는 사람이 문제를 처리하는 방식과 비슷하고 동작한다. 문제 해결에 필요한 정보를 획득한 후에 그 정보를 저장하고 처리한다. 그런 다음 사용자가 원하는 결과, 즉 정보를 출력한다. 예를 ..
서브쿼리 마지막 시간이다. 미션 문제까지 함께 풀어보려고 한다. 이론 3 - 위치에 따른 분류 일반 서브쿼리는 WHERE 절에 연결하는데 스칼라 서브쿼리는 SELECT 절에 연결한다. 그냥 JOIN을 쓰면 되지 왜 스칼라 서브쿼리를 쓸까? 데이터가 많을 때는 좀더 빠르게 결과가 추출되기 때문이다. 다른 이름도 많기에 middle_avg라는 별명으로 찍어준다. 두 개의 테이블을 id를 기준으로 연결해준다. middle_test의 이름이 너무 길기에 m이라는 별칭을 지어주었고, where 절에서 이를 사용했다. 실습 8 - 스칼라 서브쿼리 중복을 제거하고 급여 평균을 구하면 다음과 같다. 우리는 각 직원별 평균 급여를 구하려고 한다. 이럴 때 스칼라 서브쿼리를 사용한다...
이어서 실습문제를 풀어보겠다. 실습 6 - 다중 행 서브쿼리 3 우선 나이가 가장 많은 사원들을 조회해보았다. 나이가 많은 사원은 생년월일 값이 가장 적다는 의미의 min을 사용한다. 이름과 함께 사원들의 정보가 모두 출력되었다. 실습 7 - 하나라도? 혹은 전부? : ANY, ALL 먼저 테이블의 정보를 조회해본다. 급여 시작일과 언제까지 받았는지의 날짜와 급여가 출력되었다. 이제 여기서 2000년 12월 이전인 사람들의 급여 중 더 즉은 급여를 받은 직원의 급여 정보를 검색해야 한다. 2000년 12월 31일 이전에 급여 정보가 출력되었다. 이제 메인쿼리를 작성해보겠다. 메인 쿼리는 서브쿼리보다 작도록 표시해준다. 그리고 하나의 급여보다 더 작아야 하므로 any..