728x90

분류 전체보기 138

[개발 공부 97일차] DB 개론 | 데이터베이스의 유형 및 특징

[들어가며] 저장 방법에 따른 데이터베이스 종류0. TL;DR1. 계층형 데이터베이스2. 네트워크형 데이터베이스3. 키 - 값 데이터베이스4. 관계형 데이터베이스    [들어가며] 저장 방법에 따른 데이터베이스 종류데이터베이스 종류에는 크게 4가지가 있다. 하나씩 자세히 살펴볼 것이다.계층형 데이터베이스네트워크형 데이터베이스키 - 값 데이터베이스관계형 데이터베이스  0. TL;DR계층형 데이터베이스: 데이터가 트리 구조로 구성돼 있고, 반복적인 부모 - 자식 관계 정보를 표현함네트워크형 데이터베이스: 데이터를 노드와 집합구조로 표현키 - 값 데이터베이스: NoSQL의 한 종류로, key - value를 1:1 대응해 데이터를 저장함관계형 데이터베이스: 데이터를 테이블 형태로 저장하며 열과 행으로 구성 우..

[개발 공부 96일차] DB 개론 | 데이터베이스 및 관리 시스템

0. TL;DR1. 데이터와 정보 차이2. 데이터베이스란?3. 데이터베이스 관리 시스템 | DBMS  0. TL;DR데이터: 단순히 현실 세계를 관찰하거나 측정해서 수집한 사실 or 값정보: 데이터를 목적에 맞게 처리해, 의미를 가지는 단위로 만든 것데이터베이스(DB): 논리적으로 연관된 데이터를 모아 일정한 형태를 저장해 놓은 것으로, 중복 데이터를 최소화해 조직의 목적에 맞게 관리함데이터베이스 관리 시스템(DBMS): 데이터 입력 / 수정 / 삭제 / 검색 기능 제공  1. 데이터와 정보 차이데이터: 단순히 현실 세계를 관찰하거나 측정해서 수집한 사실 or 값정보: 데이터를 어떤 방식으로 처리해, 의미를 가지는 단위로 만든 것. 즉, 의사결정에 유용하게 활용할 수 있는 결과물정보처리: 데이터에서 정보..

[개발 공부 95일차] 파이썬 | 파일 입출력, 예외 처리

0. 파일 입출력 (I/O)1. 예외 처리2. 예외 발생시키기  파이썬에서 파일 입출력과 예외 처리는 데이터를 저장하고 읽어오는 작업 및 프로그램의 오류를 다루는 중요한 기능이다. 파일 입출력과 예외 처리의 핵심 개념과 방법을 알아보자.  0. 파일 입출력 (I/O)파일 열기파일을 열 때는 open() 함수를 사용한다. 이 함수는 파일 객체를 반환하며, 다양한 모드로 파일을 열 수 있다.모드(Mode):'r': 읽기 모드 (기본값)'w': 쓰기 모드 (파일이 없으면 새로 생성, 있으면 덮어씀)'a': 추가 모드 (파일이 없으면 새로 생성, 있으면 끝에 추가)'b': 바이너리 모드 (예: 'rb', 'wb')'x': 배타적 생성 모드 (파일이 없을 때만 생성)# example.txt 파일을 읽기 모드로 엶..

[개발 공부 94일차] 함수형 코딩 | 함수형 도구 체이닝

[들어가며] 알아둬야 할 개념0. TL;DR1. 복잡한 반복문을 함수형 도구 체인으로 바꾸는 방법2. 반복문을 함수형 도구로 리팩토링3. 체이닝 디버깅을 위한 Tip    [들어가며] 알아둬야 할 개념시퀀스: 컴퓨터 과학 & 프로그래밍에서 ‘특정한 순서대로 내열된 데이터’를 표현하는 자료구조 or 데이터 유형데이터의 순서가 중요각 요소가 그 순서에 따라 접근할 수 있는 특성을 갖고 있음e.g. 자바스크립트에선 배열, 문자열이 해당항등 함수: 인자로 받은 값을 그대로 return 하는 함수아무 일도 하지 않지만, 아무것도 하지 않아야 할 때 유용하게 사용 가능  0. TL;DR체인: 여러 단계를 조합하는 것원하는 결과에 가까워지도록 데이터를 한 단계씩 변환기존에 있던 반복문을 함수형 도구 체인으로 리팩토링..

[개발 공부 93일차] 파이썬 | 데이터 타입 (리스트, 튜플, set, 딕셔너리)

0. 리스트1. 튜플2. 집합 자료형 | set3. 딕셔너리(Dictionary)  내가 사용할 자료들의 형태(Type)를 고민 → 자료형 결정 후, 담기 데이터 타입에는 리스트, 튜플, 집합, 딕셔너리가 있다.# 리스트 (대괄호)data_list = ["A", "a", 1, "@"]data_list # 출력 결과: ['A', 'a', 1, '@']# 튜플 (소괄호)data_tuple = ("A", "a", 1, "@")data_tuple # 출력 결과: ('A', 'a', 1, '@')# 집합 (중괄호)data_set = {"A", "a", 1, "1", "@"}data_set # 출력 결과: {'1', 1, '@', 'A', 'a'} # 딕셔너리 (중괄호)data_dictionary = {"A": "..

[개발 공부 92일차] 파이썬 | 터틀 라이브러리, 문자열 조작 명령어

0. 터틀 라이브러리1. 문자열(string)과 문자열 조작 명령어  0. 터틀 라이브러리이 챕터에서는 라이브러리를 불러오고, 사용하는 방법을 아는 것이 핵심이다.도서관의 책을 하나의 module(모듈)이라고 한다면, 내가 원하는 책 여러 권을 언제 어디서든 쓸 수 있게끔 하고 싶다고 가정해 보자. 그러려면 책들이 있는 도서관(library)을 불러와야 하는데, 이러한 라이브러리를 불러오는 명령어를 import라고 한다. # 기본 골격import turtleturtle.명령어(값)    1. 문자열(string)과 문자열 조작 명령어 배열에서 양수로 n번째 값을 출력할 때,0, 1, 2, 3, 4와 같은 식으로 수를 세는 건 알고 있었지만  음수로 수를 셀 때는-1, -2, -3, -4처럼 0이 아니고 ..

[개발 공부 91일차] 파이썬 | 반복문 (for, while)

0. while: 조건 반복1. for 반복 (iteration, 자료 순회)2. for문과 while문의 차이3. for ~ range ()4. continue, break  0. while: 조건 반복# 기본 골격while 반복조건(참): 수행할 명령# 예시i = 1while i number: print("Up") elif answer > number: print("Down") elif answer == number: print("Right") # 출력 결과: 예상 숫자를 입력해 보세요:  1. for 반복 (iteration, 자료 순회): 주어진 자료를 순회하는 for 반복  # 기본 골격for 변수명 in 리스트명: 수행할 명령# 예시a = ["호", "랑", "이"]for b in a:..

[개발 공부 90일차] 파이썬 | 컴퓨팅 사고력과 파이썬 기초

0. 전반적인 소감1. 프로그래밍 언어의 종류2. 컴퓨팅 사고력의 과정3. 파이썬 기초4. 알고리즘 & 의사코드    0. 전반적인 소감CS와 AI에 대한 강의를 듣고 있다. 전공생과의 차이를 줄이기 위해서도, 개발에 대한 베이스를 다지기 위해서도 꼭 필요한 내용이라 강의를 결제하여 열심히 듣는 중이다. 정말 대학 수업처럼 개강되는 시기가 파트마다 다른데, 지금까지 개강된 파트만 해도 벌써 60시간이 넘는다. 수학까지 다루다 보니 확실히 시간이 길 수밖에 없는 것 같긴 하다. 아직 초반이지만 내용 굉장히 재밌다 ㅎㅎ ; (세미콜론): 한 줄 안에 2줄에 해당되는 영역으로 쓰고 싶을 때 사용True: 1, False: 0 예전에 부트캠프 완전 초반에 코드에서의 세미콜론이 어떤 걸 의미하는지 튜터님, 그리고..

[개발 공부 89일차] 함수형 코딩 | 일급 함수 II

[들어가며] 알아둬야 할 개념0. TL;DR1. 카피-온-라이트 리팩토링2. 함수를 return 하는 함수   [들어가며] 알아둬야 할 개념일급 함수: 함수가 다른 데이터 타입(숫자, 문자열 등)과 동일하게 취급되는 것⇒ 함수를 변수에 할당하거나, 함수의 인자로 전달, 함수에서 반환할 수 있는 함수를 의미. 자바스크립트에서 함수는 일급 객체다.고차 함수: 함수를 인자로 받거나 함수를 반환하는 함수[차이점] 일급은 인자로 ‘전달’할 수 있음. 고차는 함수가 다른 함수를 인자로 ‘받을’ 수 있음  0. TL;DR고차 함수 사용 시, 장점패턴 or 원칙을 코드로 만들 수 있음 ⇒ 중복된 많은 코드를 없애줌 (사용하지 않으면 일일이 수작업 해야 함)함수를 리턴하는 함수를 만들 수 있음단점: 가독성이 안 좋을 수..

[개발 공부 88일차] 함수형 코딩 | 계층형 설계 II

[들어가며] 알아둬야 할 개념0. TL;DR1. 추상화 벽2. 작은 인터페이스3. 편리한 계층4. 호출 그래프   [들어가며] 알아둬야 할 개념소프트웨어 설계(software design): 코드를 만들고, 테스트하고, 유지 및 보수하기 쉬운 프로그래밍 방법을 선택하기 위해 미적 감각을 사용하는 것계층형 설계(stratified design): 바로 아래 계층에 있는 함수로 현재 계층의 함수를 구현해, 소프트웨어 코드를 계층으로 구성하는 기술  0. TL;DR추상화 벽: 신경 쓰지 않아도 되는 부분을 나누고, 계층 간의 역할과 책임을 명확히 하는 것[효과] 팀 간 커뮤니케이션 비용을 줄이고, 복잡한 코드를 명확히 함작은 인터페이스: 추상화 벽에 있는 코드를 최소화하고, 새로운 기능은 추상화 벽 위 계층에..

728x90