어린이 · CHAPTER 04

표준 도서관 — 225 내장함수와 24 라이브러리

한선씨의 책장에 뭐가 들었을까?

너도 레고를 만들 때 벽돌상자를 열어서 "어떤 벽돌이 들었나" 먼저 본다, 그치? 한선씨도 똑같아.

한선씨로 뭔가를 만들 때, 바닥부터 짜지 않는다. 표준 도서관이라는 책장에 이미 다 들어 있거든. 내장함수 225개, 표준라이브러리 24개, 그리고 규칙 에이전트 한 권. 손 안 대고 가져다 쓰면 된다.

손에 바로 쥘 수 있는 것 — 내장함수 225개

출력값 더해 빼기 곱하기 — 이런 것들이 내장함수다. 마치 손가락 같은 거야. 가져오기할 필요 없이, 프로그램을 쓰는 순간부터 손가락처럼 바로 쓸 수 있다.

225개가 어디에 들었나?

  • 글자 도구: 글자수 (글자가 몇 개?), 부분 (글자 일부만 뽑기), 포함 (이 글자 들어 있나?), 문자열변환 (숫자를 글자로)
  • 상자 도구: 길이 (몇 개 들어 있나?), 추가 (넣기), 꺼내 (빼기), 정렬 (순서 정렬)
  • 파일 도구: 읽기 (파일 열기), 쓰기 (파일 저장)
  • 숫자 도구: 거듭제곱 (2 × 2 × 2), 루트 (제곱의 반대), 무작위 (주사위 굴리기)
  • 연결 도구: TCP, UDP, 소켓 (컴퓨터들끼리 수다 떨기)
  • 암호 도구: SHA256 (비밀코드 만들기)
  • 그림 도구: GUI (화면에 그리기)

손가락처럼 쓴다 = 함수 이름을 영어로 외울 필요가 없다. 우리말 그대로다.

책장에서 꺼내 쓰는 것 — 24 표준라이브러리

책장이 있다. 24권의 책이 꽂혀 있다. 필요할 때마다 꺼낸다.

가져오기 "JSON.한선"

이렇게 한 줄만 쓰면, JSON 책 전체가 손에 들어온다.

24권의 제목:

  • 웹 만드는 책: 라우터, 미들웨어, 인증, 템플릿, 뷰, 스타일
  • 데이터 책: JSON, YAML, 저장소, 큐, 바이트버퍼
  • 컴퓨터 책: 설정, 환경, 프로세스, 날짜, 타이머, 로깅, 네이티브
  • 통신 책: 네트워크, TLS, 검증
  • 특이한 책: 하드웨어 (로봇 팔 움직이기처럼!)

규칙으로 생각하는 책 — 셀코어

1414줄짜리 책 한 권이 있다. 제목은 규칙 에이전트.

예를 들어, 게임에서 "점수가 100점 넘으면 다음 스테이지 가기" 같은 규칙이 있다, 그치? 셀코어는 그런 규칙들을 프로그램으로 만드는 책이다.

룰 = 룰생성("스테이지 올리기")
룰 = 룰조건추가(룰, "점수", ">=", 100)

이렇게 쓰면, "조건" "그럼 뭐 할지" 를 코드처럼 짤 수 있다.

손 안 대고 만들 수 있는 것들

이 책장들을 섞어서 만든 게 뭘까? 이미 도는 것들이야:

  • 웹사이트 (라우터 + 뷰 + 스타일)
  • 은행 (데이터 저장 + 암호)
  • 블록체인 (암호 + 규칙)
  • 채팅 (네트워크 + 메시지)
  • 로봇 (하드웨어 + 규칙)

다 한선씨 책장으로 만들었다.

책장이 아직 비어 있는 곳

정직하게 말할게. 책장이 완성되지 않은 부분도 있어:

  • 소수 계산 (완벽하지 않음)
  • 큰 숫자 (너무 크면 헷갈려함)
  • 무거운 일 (한 번에 한 가지씩만)

근데 알면 피할 수 있다. "이건 약해" 하고 미리 알면, 다른 방법을 쓰면 되지.

다음에 꽂힐 책들

도서관은 완성품이 아니라 자라는 책장이야. 다음 달에는 또 어떤 책이 들어올까? 아무도 몰라. 근데 한 가지는 확실해: 책장을 잘 알면, 무엇을 만들든 손가락처럼 자유롭다.

내 맘 –

독자 게시판 — 함께 읽고 남기는 곳

불러오는 중…

크라우니 책방에 가입하고 무료로 읽기

첫 번째 책은 선물이에요. 가입하면 100맘을 드리니까, 두 번째 책부터 자유롭게 읽을 수 있어요. 친구를 추천하면 50맘도 생겨요.