분류 전체보기 477

드림코딩 엘리 | 코드리뷰란? 코드리뷰에서 중요한 것은 무엇일까?

코딩 실력 향상을 위한 코드 리뷰? - YouTube 코드리뷰는 개발자로 성장하는 데 매우 중요한 요소! 코드 리뷰는 어떻게 하는 것이고, 코드 리뷰에서는 어떤 점들이 중요할까? 코드리뷰란 팀 구성원이 기능을 구현하거나 문제를 수정했을 때 수정된 코드 사항을 바로 제품에 반영하는 것과 반대되는 개념이다. 코드리뷰를 진행하는 경우 내가 작성한 코드를 잘 읽을 수 있는 선임자, 코드 오너에게 코드 리뷰를 요청하게 된다. 코드 리뷰를 진행한 뒤에야 코드를 마스터 브랜치, 제품에 포함할 수 있도록 한다. 코드 리뷰가 중요한 이유 1. 더 좋은 코드 퀄리티를 보장하기 위함 2. 결점을 초기에 발견할 수 있다. 3. 배움과 지식을 전파한다. 4. 상호간의 책임감을 갖고 일할 수 있다. 5. 효율적인 검증이 가능하다..

Computer Science 2022.04.06

참고 자료 | 함수형 언어로 imperative language interpreter 만들기

c0deful/haskal-interpreter: simple imperative language interpreter in Haskell (github.com) GitHub - c0deful/haskal-interpreter: simple imperative language interpreter in Haskell simple imperative language interpreter in Haskell. Contribute to c0deful/haskal-interpreter development by creating an account on GitHub. github.com 여기 보면, memory, env, error, type, main에 대한 내용도 잘 나와있다. Writing an Interp..

한 권으로 읽는 컴퓨터 구조와 프로그래밍 | 2장 전자 회로의 조합 논리

2장 - 전자 회로의 조합 논리 - 컴퓨터는 어떤 논리로 비트를 다루는가 비트 초기 계산 장치 하드웨어 : 비트에 대해 동작하는 모든 물리적인 장치 -> 이 중 조합 논리 combinational logic을 구현한 하드웨어 디지털 컴퓨터의 사례 아날로그와 디지털의 차이 아날로그 analog : 연속적인 것. 실수를 표현할 수 있음 디지털 digital : 이산적 discrete. 하나하나 다른 존재로 구분된다. 하드웨어에서 크기가 중요 하드웨어에서는 전자를 움직이는 물리적 한계 때문에, 부품을 가능한 한 가깝게 위치시키는 것이 중요하다. 그래서 컴퓨터에서는 작게 만들려고 함. 컴퓨팅 장치의 역사는 하드웨어를 작게 만들려는 노력으로 점철되어 있다. 디지털을 사용하면 더 안정 잡음 내성을 갖는 디지털 회로..

Data Structure | Zipper Tree (feat. 함수형 언어)

https://en.wikipedia.org/wiki/Zipper_(data_structure) Zipper (data structure) - Wikipedia A zipper is a technique of representing an aggregate data structure so that it is convenient for writing programs that traverse the structure arbitrarily and update its contents, especially in purely functional programming languages. The zipper was describ en.wikipedia.org 목표 * Zipper 트리 구조 이해 * 그림 / 코드로 표현..

한 권으로 읽는 컴퓨터 구조와 프로그래밍 | 1장 컴퓨터 내부의 언어 체계

들어가며 - 정확한 문법을 파고들기보다는, 컴퓨터 세계에 있는 여러 문제와 해법을 살펴본다. - 코딩 : 기계적인 활동? - 프로그래밍 : 문제를 관찰하고 해법을 결정 - 엔지니어링 : - 컴퓨터과학 : 계산에 대해 연구하는 학문 - 컴퓨터 과학의 영역 : 사용자 > 어플리케이션 프로그래밍 > 시스템 프로그래밍 > 컴퓨터 하드웨어 > 논리 설계 > 회로 설계 > 기초 과학 : 시스템 프로그래밍 : 하드웨어와의 상호작용 : 논리 : 컴퓨터 하드웨어는 논리로 표현됨. 논리는 전자 회로로부터 만들어진다. part 1. 컴퓨터 하드웨어 part 2. 하드웨어에서 소프트웨어가 작동하는 방식 part 3. 프로그래밍 기술 1장. 컴퓨터 내부의 언어 체계 언어란 무엇인가 - 기호가 들어갈 상자 - 상자에 들어갈 기호..

TDD( Test Driven Development )이란?

참고) 테스트 코드와 TDD 🧪(feat. 프론트엔드, 백엔드를 위한 테스트 코드) - YouTube 서론 개발자에게 기능에 해당하는 테스트 작성하는 게 매우 중요한 역량 - 기능 구현 코드 - 코드를 작성하면 된다. => 제대로 구현했는지 어떻게 검증할까? 테스트 코드 테스트 코드를 통해 향상할 수 있는지 리팩토링 기능 구현 + 테스트 작성 본론 > What is Testing 소프트웨어 테스팅 - 제품/서비스의 품질을 확인하고 - 소프트웨어의 버그를 검토 - 제품이 예상하는 대로 동작하는지 확인 > Test의 프로세스 - source code - test code : requirement가 있어야 함 - 패스 여부 -> 리팩토링 > TDD Test-driven development 코드 작성 전에 테..

OCaml Tutorial | String 다루기

- 내가 원하는 것 - 파이썬처럼 f"{variable_name}" + "HI" + " " 하기 OCAML Tutorial 18/33: The String Module in OCAML - YouTube # String.length "String";; - : int = 6 # let s = "we are checking the String module";; val s : string = "we are checking the String module" # String.length s;; - : int = 33 # String.sub s 3 3 ;; - : string = "are" # String.sub s 3 12;; - : string = "are checking" # "this"^" "^"is";; -..

상담학 들어가기 | 2. 상담과 인간 변화

2. 상담과 인간변화 2.1 내담자의 '문제'에 대한 이해 과학적/통계적 접근 - 병리진단체계 기준 의미 : 병리진단체계에서 제시한 기준에 의해 문제 규정 ex) DSM 진단 기준, ICD 진단 기준 특징1 : 장기적, 통계적 연구 결과를 기초로 확립특징2 : 의학적, 약물학적 개입에 초점특징3 : 정신증 문제에 대한 과학적 연구 기초 제공특징4 : 의학, 임상심리학에서 많이 사용문제점 : 과진단의 문제 : 내담자를 문제있는 사람으로 간주할 우려 - 통계적 절단점수 기준 의미 : 정신분포 곡선상 극단에 해당하는 점수를 절단 점수로 설정 ex) MMPI 다면적 인성 검사, CBCL 아동행동평가척도 등에서 극단 점수에 해당하면 문제가 있다고 간주 특징1 : 객관성, 신뢰성 특징2 : 극단 점수가 곧 일상생활..

상담학 들어가기 | 1. 마음의 고통, 괴로움, 그리고 상담

1.1 상담학의 시작과 기본 성격 상담학 들어가기 과정 소개 대상 : 처음 상담학을 접하는 사람 코스 : 흐름 목표 : 상담에 대한 흥미, 상담학에 대한 관점 삶, 고통, 괴로움 - 일체개고 : 삶 자체가 고통의 연속이다. - 행동화, 죄책감 - 마음의 고통과 병을 이겨내려는 전문적이고 과학적인 시도 - 마음의 건강과 행복에 이르는 변화 매커니즘을 밝히며 이겨내려고 하는 노력이 상담, 심리치료 상담학의 시작 상담학의 기본 성격 - 방법 : 약물이 아닌 놀이, 예술, 신체활동 등을 사용해서 사람의 변화를 꾀하려고 하는 것- 결과 : 행동, 사고, 태도 관계의 변화"삶과 자신에 대한 이야기, 스토리" "좋은 스토리 만들기"우리는 하나의 이야기다. - 한 사람의 삶을 정합적인 전체로 짜주는 것, 내가 그동안에..