CRLF는 도대체 무엇인가?

초기 여러 운영체제 시스템에서는 US-ASCII 표준의 CR과 LF를 이용해서 각각의 다양한 "end-of-line" 컨벤션을 채택하고 있었다. 이는 동일한 시스템 간 통신에서는 문제가 없었으나, 서로 다른 시스템 간 네트워크 통신시 문제가 발생했다. 각각의 시스템은...

2019년 8월 10일0개의 댓글

정규 표현식

정규 표현식은 특정한 규칙을 가진 문자열 집합을 표현하는데 사용하는 형식 언어이다. 정규 표현식은 패턴(pattern)으로 특정 목적을 위해 필요한 문자열 집합을 지정하기 위해 쓰이는 식이다. 정규 표현식은 POSIX, Vim, Perl 여러 형태로 존재하지만...

2019년 8월 10일0개의 댓글

URI

Resource Resource는 모든 Contents의 원천이며, 정적 리소스와 동적 리소스로 나눠서 생각할 수 있다. - 정적 리소스 : HTML, IMAGE, ... - 동적 리소스 : 요청 정보에 따라 다른 컨텐츠를 생성 따라서, 모든 종류의 Content...

2019년 8월 10일0개의 댓글

Day 17

회고 오늘은 Sync Cafe 주제로 미션이 주어졌다. 바리스타를 하나의 Tread로 보고 주문을 동기적으로 하나씩 커피를 만드는 프로그램을 개발하는 것이었다. 멀티 스레드 방식으로 구현하기 위해, 브라우저에서 지원하는 Web Worker을 이용하여 Tread Poo...

2019년 8월 6일0개의 댓글

Day 16

회고 오늘은 ArrayParser를 구현하는 미션이었다. Object를 만들기 위해, 입력받은 문자열을 Tokenizer, Lexer, Parser 과정으로 처리해야 하는 것이었다. Java의 Jackson 같은 파싱 라이브러리는 사용해보았지만, 직접 구현하려다 보니...

2019년 8월 5일0개의 댓글

Day 15

회고 오늘은 "강의를 진행할 때 도움주는 서비스" 릴레이 프로젝트를 진행하였다. 이번주 요구사항이 있었지만, 지난주에 맡았던 사람들이 각자 브랜치에서 작업하며 코드가 파편화되어 있었다. 따라서 기능 구현보다는 팀원들과 페어 프로그래밍을 진행하며 협업을 해보고자 하였다....

2019년 8월 2일0개의 댓글

Canvas

브라우저는 2차원 좌표시스템을 따르고 있고, DOM에서 지원하는 Canvas 객체를 이용해 점, 선, 도형, 텍스트, 이미지 등을 조작할 수 있다. 좌표 시스템 coordinate space 좌표 시스템 원점은 좌측상단인 (0, 0) 좌표이고, 모든 요소(...

2019년 8월 1일0개의 댓글

Day 14

회고 오늘은 Canvas 대해 학습하고 png 파일로 저장까지 하는 미션을 수행하였다. 브라우저는 2차원 좌표시스템으로 점, 선, 도형, 텍스트, 이미지 등을 표현하고 조작할 수 있게 Canvas API를 지원한다. 이번 미션은 브라우저에서 지원하는 API 아닌, no...

2019년 8월 1일0개의 댓글

[JS] CallStack & EventLoop

JavaScript는 CallStack, EventQueue 이용하여 Single Thread 기반으로 비동기적으로 동작한다. Single Thread 기반에서는 단 하나의 CallStack만 존재하기 때문에 네트워크 요청 등 비용이 많이 드는 연산을 수행하게 되면 ...

2019년 7월 31일0개의 댓글

Day 13

회고 오늘은 자바스크립트 특징인 비동기 프로그램 실행에 대한 미션이 주어졌고, 비동기적인 동작의 흐름을 학습하였다. 미션 주제는 Call Stack, Event Queue 를 구현해보는 것이었다. 이전에는 비동기가 어느 시점에서 어떻게 동작하는 지를 정확히 인지하지...

2019년 7월 31일0개의 댓글

Day 12

회고 오늘 미션은 Git 명령의 동작 방식을 이해하고, 기본 명령 동작을 그대로 구현하는 VM Git을 만드는 것이었다. - File, Commit, Repository, Local, Remote 주요 기능을 담당하도록 module을 나누거나 class로 구분해서...

2019년 7월 31일0개의 댓글

Given When Then

Given-When-Then 패턴은 Test Code 스타일을 표현하는 방식으로, Test를 세 부분으로 나누어 구조화된 접근법을 제공한다. - Given은 테스트 수행하기 이전의 상태를 설명하며, Test 위한 사전 조건으로 생각할 수 있다. - When은 사용자...

2019년 7월 29일0개의 댓글

Day 11

회고 오늘 미션은 프로그램 테스트 미션으로, Assertion 테스트 모듈 구현해보는 것이었다. 요구 사항에서 비동기 코드에 대한 테스트하는 것이 까다로웠다. 따라서 mocha test framework에서는 비동기 코드를 어떻게 테스트하는지 확인하였다. 또한, ...

2019년 7월 29일0개의 댓글

Form Submit

Form 태그에서 Submit 처리하는 방법은 세 가지 존재한다. 1. form 태그 onSubmit 속성에서 함수 호출, 반환값(false, true) 따라 요청여부가 결정 -요청 전, 폼 유효성 검사위해 유용 - 이벤트 순서 : first = second ...

2019년 7월 28일0개의 댓글

Day 10

회고 오늘은 두 번째 릴레이 프로젝트를 진행하였다. 이번에 맡은 프로젝트는 OCR 이용해 스캐닝을 해주는 주제였다. 구현해야 하는 기능은 Google api 이용한 OCR 기능(Image to Text), 파일 업로드(front/back end) 세 가지로 나뉘어 있...

2019년 7월 26일0개의 댓글

Day 09

회고 오늘 미션은 OOP 할일 관리 프로그램을 개발하는 것이었다. Day 08에 했던 할일 관린 프로그램을 객체 지향적으로 개발해보는 것이었다. 주요 요구사항은 아래와 같다. - Observer 패턴 이용 - Prototype Chain 학습 및 활용 - async...

2019년 7월 25일0개의 댓글

Day 08

오늘 미션은 Linux Shell 이용해 Script 파일을 작성하고 파일 압축, 컴파일, 배포해보는 과정이었다. 두 번째 과제로 모든 .js 확장자 파일을 압축하는 Shell Script 작성하는 것이었다. Shell를 이용해서 코드를 작성하려다 보니 상당히 삽질을 ...

2019년 7월 24일0개의 댓글

Day 07

회고 오늘은 대화형 ToDo 관리 프로그램 개발 미션이었다. 요구사항은 스켈레톤 코드를 기반으로 프로그래밍하는 것이었다. 미션이 주어지면 얼른 코드를 작성하고 싶고, 주위에서 키보드 소리가 들리면 조급했다. 주어진 프로그램은 간단해 보였지만, 설계를 제대로 하지 않...

2019년 7월 23일0개의 댓글

Day 06

회고 오늘은 Debugging 주제로 미션이 나왔다. 예상하는 결과와 다르거나 에러가 발생하면, 다음과 같은 순서로 버그 원인 파악을 해보았다. 1. 에러 로그를 읽어보고 예상이 가능하면 바로 수정 2. 해당 코드 부분에 BreakPoint 걸어 잘못된 부분이 있는지...

2019년 7월 22일0개의 댓글

Day 05

오늘은 첫 번째 릴레이 프로젝트를 진행하였고 8명의 팀원들과 설계하는 과정을 가졌다. 인공지능과 관련된 주제를 선정하여 필요한 기능 명세를 해야했다. 다양한 의견을 토의하는 과정에서 스스로 몇 가지 부족한 점을 느꼈다. 1. 내 의견을 명확하게 전달하지 못함 2. 생...

2019년 7월 20일0개의 댓글