분류 전체보기
-
SQL 연산Database 2021. 3. 2. 15:20
사칙 연산 덧셈 , 뺄셈, 곱셉, 나눗셈 + 나눗셈의 나머지 크게 이 두가지를 다룬다고 생각하면 된다. 당연히 수학에서와 동일하게 연산자의 우선순위가 있다. SELECT 구로 연산하기 select 구에는 열명을 지정한다 라고 알아보았었다. 이외에도 여러가지 "식"을 기술할 수 있다. SELECT 식1, 식2... FROM 테이블명; 아래의 가격 테이블로 예를 들어보자. price * 100 연산을 진행해보자 100이라는 값 대신 열을 지정하여 연산할수도있다. (price * quantity) SELECT price * 100 FROM prices; SELECT *, price * 100 FROM prices; 전체 열 추가 지정 열의 별명 지정하기 위 예제에서 price * 100이라는 열의 별명을 지정..
-
빅오 표기법 (O, big-O)Algorithm & Data Structure 2021. 2. 23. 16:55
빅오란 입력값이 무한대로 향할때 함수의 상한을 설명하는 수학적 표기 방법이다. 빅오는 점근적 실행 시간을 표기할때 가장 널리 쓰이는 수학적 표기 방법이다. 여기서 점근적 실행 시간이란 간단하게 n이라는 입력값이 무한대로 커질떄의 실행 시간의 추이를 의미한다. 따라서 충분히 큰 입력값에서의 알고리즘의 효율성에 따라 수행 시간이 크게 차이가 날 수 있다. 점근적 실행 시간을 달리 말하면 "시간 복잡도"라 할 수 있다. 시간 복잡도의 사전적 정의 어떤 알고리즘을 수행하는 데 걸리는 시간을 설명하는 계산 복잡도를 의미하며, 계산 복잡도를 표기하는 대표적인 방법이 빅오 표기법인 것이다. 빅오로 시간 복잡도를 표현할때는 최고차항만 표기힌다. 4n^2 + 3n +4 ==> O(n^2) 최고 차항만 표기 한다 -> O..
-
데이터베이스와 SQL 기초Database 2021. 2. 18. 17:43
데이터베이스란 무엇을 말하는걸까? 데이터란 컴퓨터 안의 기록되어있는 숫자를 의미한다. (0과 1) 이러한 데이터의 집합을 데이터베이스라 말한다. 넓은 의미의 데이터베이스는 컴퓨터 안의 기록된 모든 것을 말한다고도 할 수 있겠다. 데이터 베이스의 데이터는 영구 보존되어야 하기에 주기억장치에만 저장된다면 전원을 끄는 순간 데이터가 모두 날아가버릴것이다. (여기서 주기억장치란 H/W에서의 메모리 (ROM과 RAM이 있다) 중 램이라고 기억하고 넘어가자_ 램은 휘발성 메모리이다.) 따라서 하드디스크 또는 플래시메모리(SSD)와 같은 비휘발성 저장장치에 저장한다. (램에 저장하는 경우도 있다.) 데이터베이스를 효율적으로 관리하기 위한 소프트웨어를 데이터베이스 관리 시스템 (DBMS)라고 부른다. 데이터베이스를 왜..
-
[Git] RebaseGit & Git hub 2021. 2. 18. 16:31
Git rebase 란 일련의 커밋을 새 기본 커밋으로 이동하거나 결합하는 프로세스로 브랜치를 병합하는 전략 중 하나이다. 말 그대로 브랜치 히스토리들의 베이스를 변경하는 방법인데 여기서 베이스란 무엇일까? Git에서 베이스란 나의 브랜치를 딴 시점의 Master Base를 의미하며, Master Base란 Master Branch의 HEAD를 가르킨다. 결국 브랜치가 분기되기 시작하는 시점의 Master Branch의 HEAD를 베이스라 한다. 아래 이미지에서 ddf19c2 가 베이스를 의미한다고 보면 되겠다. Git rebase는 어떻게 동작할까? 위와 같은 상황을 가정하여 설명하자 현재 위치는 feature 브랜치로 head는 feature를 가리키고 있으며, 현재 베이스는 b인 상태이며 rebas..
-
자료구조와 알고리즘 왜 공부해야 할까?Algorithm & Data Structure 2021. 2. 18. 15:57
사실 누구라도 자료구조와 알고리즘이 중요하다는 사실을 알고 있다. 그렇다면 왜 중요한 걸까? 대체 왜?? 실제로 프레임워크나 프로그래밍 언어 능력이 조금 부족하더라도 자료구조와 알고리즘에 대한 이해가 탄탄한 사람이라면 고민 없이 함께하자고 손을 내민다고 한다. (실제로 요즘은 기업에서 인재를 영입하기 위해 유튜브 라이브를 통해 실시간으로 소통하는 일이 많은데 그 과정에서 듣게 된 이야기이다.) 많은 기업들이 왜 자료구조와 알고리즘으로 문제 해결 능력을 점치려 하는 걸까? 궁금하지 않은가 프로그램 = 자료구조 + 알고리즘 기본적으로 우리가 개발하는 모든 프로그램은 자료구조와 알고리즘의 합이라는 의견이 있다. 프로그래밍은 파이썬이나 자바로 만드는건데요 ? 틀린 말은 아니다. 하지만 이런 프로그래밍 언어를 사..
-
[Git] 브랜칭 전략Git & Git hub 2021. 2. 16. 21:47
Git branch 전략을 알아보자 1. Git Flow 2. Github Flow 3. GitLab Flow Git Flow란 고수준의 저장소를 관리하기 위한 Git의 확장 모듈이다. 터미널 환경에서도 사용할 수 있으며 보통 Git GUI 프로그램인 SourceTree에서 지원하여 사용되고 있다. Git-flow는 브랜치를 크게 4가지로 나누어 개발하는 전략이다. 마스터/메인 브랜치(Main branch) 피처 브랜치(Feature branch) 릴리스 브랜치(Release branch) 핫픽스 브랜치(Hotfix branch) 가장 중심이 되는 브랜치는 master와 develop 브랜치이다 .merge된 feature, release, hotfix 브랜치는 삭제하도록 한다. Master(Main) ..
-
[Github] Fork한 Repository 업데이트하기Git & Git hub 2021. 2. 11. 17:13
Fork 란 fork는 다른 사람의 Github repository에서 내가 어떤 부분을 수정하거나 추가 기능을 넣고 싶을 때 해당 respository를 내 Github repository로 그대로 복제하는 기능이다.흔히 포크를 뜬다고 표현한다. wecode-bootcamp-korea repo에서 내 개인 repo로 포크를 떠와 리팩토링과 기능을 추가하고자 하였다. 나는 당연히 포크로 떠온 개인 repo도 기존 repo의 변경사항이나 추가사항이 자동으로 업데이트되는줄 알고 있었는데 업데이트가 되어 있지 않았다. 포크를 뜰 당시의 상태에서 멈춰있는 문제를 발견하였다. 따라서 문제를 해결하기 위해 Fork한 Repository 동기화하는 방법을 찾아 해결 할 수 있었다. 1. 먼저 원본 Repo 를 rem..