왜? Git (3) - Branch
·
CS
Branch   Git의 브랜치는 여러 기능이나 변경 사항을 메인 코드베이스에 영향을 주지 않고 동시에 작업할 수 있는 별도의 개발 라인 을 의미한다. 브랜치를 사용하면 다양한 작업에 대한 격리된 환경을 만들고, 다른 사람과 협업을 쉽게 할 수 있게하며, 복잡한 Work flow 를 관리할 수 있다.    위의 그림을 보면 git branch가 있어 2번째 릴리즈에서 Feature 1 기능이3번째 릴리즈에서 Feature 2 기능이 포함될 수 있다.가만보면 1번째에서 2개의 브랜치로 나뉘어 작업되는 것을 볼 수 있다. git branch 명령어  1. 브랜치 목록 조회git branch 명령어는 현재 존재하는 브랜치 목록을 보여준다. 현재 체크아웃된 브랜치는 *로 표시되며, 여러 워크트리에 체크아웃된 브..
왜? Git (2) -Rep
·
CS
Git Repository Git Repositorygit initgit configLocal VS Global ConfigWorking VS Git Directorygit commitgitignore   Repository 는 저장소를 의미한다.저장소는 프로젝트의 코드, 문서 및 기타 파일을 저장하는 위치다. 협업, 버전 제어 및 코드 관리를 위한 중앙 허브 역할을 한다. 여러 사람이 서로의 작업을 덮어쓰지 않고도 동일한 프로젝트에서 작업할 수 있다.Git repository를 만듦으로써 여러사람과의 협업의 시작이 가능해진다.우리는 이제 Git repository 의 사용법에 대해서 알아보자.  git init   이 git init명령으로 새 Git 저장소를 만들 수 있다.기존의 버전 없는 프로젝트를..
왜? Git
·
CS
Git 여태 사용해 왔던 버전관리시스템Git에 대해서 알아볼 생각이다.Github, Gitlab등 여러가지를 이미 사용해왔지만그 기반이 되는 Git에 대해서 조금 더 깊게 이해하고 알아볼것이다.   Git 이란??Git은 모든 규모의 프로젝트를 속도와 효율성으로 처리하도록 설계된 분산 버전 제어 시스템입니다. 2005년 리누스 토발즈가 만든 Git은 소프트웨어 개발 중에 소스 코드의 변경 사항을 추적하여 여러 개발자가 비선형 개발에서 함께 작업할 수 있도록 합니다. Git은 모든 변경 사항의 전체 기록을 유지 관리하여 버전 간의 쉬운 롤백 및 비교를 가능하게 합니다. 분산된 특성으로 인해 각 개발자는 리포지토리의 전체 사본을 가지고 있어 오프라인 작업과 백업이 가능합니다. Git의 주요 기능에는 분기 및..
호스팅이란?
·
CS
호스팅이란?  호스팅이 무엇인지 알아보자.     호스팅 호스팅은 인터넷을 통해 사용자에게 웹사이트 파일과 애플리케이션을 저장하고 전달하기 위한 서버 공간과 리소스를 제공하는 서비스다. 호스팅 제공자는 웹사이트와 애플리케이션을 온라인에서 액세스할 수 있도록 하는 데 필요한 서버, 스토리지, 네트워크 연결과 같은 인프라를 제공한다. 공유 호스팅(여러 웹사이트가 단일 서버를 공유하는 경우), 가상 사설 서버(VPS), 전용 호스팅(단일 서버가 한 사용자에게 전용되는 경우), 클라우드 호스팅(서버 네트워크를 사용하여 확장 가능한 리소스를 제공하는 경우) 등 다양한 유형의 호스팅이 존재한다. 호스팅 서비스에는 종종 도메인 등록, 보안 기능, 기술 지원이 포함되어있다.  클라우드 호스팅 같은 경우 대표적으로 AW..
Domain Name 에 대해서
·
CS
위와 같이 도메인 이름이 있다고 가정할 때최상단의 . 이 Root 도메인org 가 Top-level 도메인wikipeida가 second 도메인en 이 sub 도메인이 된다.그림과 같이 Root 도메인은 Top-level 에 존재하는 com, org, net, uk 등의 도메인 이름과 그에 해당하는 IP주소를 가지고 있고 Top-Level 도메인인 org 는 wikipedia와 fsf 등의 도메인 이름에 해당하는 IP주소를 가지고 있다.마찬기자로 Second 도메인인 wikipedia는 sco, en 등의 도메인 이름에 해당하는 IP소를 가지고 있다.모든 컴퓨터는 Root 도메인의 IP 주소가 무엇인지만 알고 있다면 Root도메인을 통해 차차 내려가면서 전세계에 존재하는 수많은 도메인 Name에 해당하는..
브라우저와 그 작동원리
·
CS
브라우저는 무엇인가브라우저는 웹 페이지를 보여주는 웹 페이지를 표시하는 클라이언트 소프트웨어예요. 사용자가 입력한 URL을 통해 인터넷에 연결하고, HTTP/HTTPS 프로토콜을 사용해 서버와 통신해요. 웹 서버에 요청을 보내 데이터를 받아와 화면에 보여주는 역할을 해요. URL 입력과 파싱:사용자가 URL을 입력하면, 브라우저는 이를 파싱(parsing)하여 프로토콜, 도메인, 경로 등의 요소로 분리해요.예: https://example.com/page?query=value프로토콜: https도메인: example.com경로: /page쿼리: ?query=valueDNS 조회:브라우저는 도메인 이름을 IP 주소로 변환하기 위해 DNS 서버에 쿼리를 보내요. 이때 캐시를 활용하여 빠르게 조회하는데, 브라..
HTTP란?
·
CS
개발을 하다보면 HTTP를 자주 보게되요 그래서 HTTP에 대해서 잘 알고 있어야 훌륭한 백엔드 개발자가 될 수 있을거예요. HTTP는 이런 거예요. 하나의 규칙인거죠. 우리가 인터넷 쇼핑몰에서 쇼핑할 때, 물건을 고르고 결제를 하죠? 그 과정에서 물건을 고르고, 장바구니에 담고, 결제 정보를 입력하는 일련의 단계들이 있어요. 이 모든 걸 인터넷에서 할 수 있게 해주는 것이 바로 HTTP, 즉 'HyperText Transfer Protocol'이라는 친구입니다.HTTP가 하는 일은 간단해요. 웹 브라우저라는 쇼핑객이 웹 서버라는 쇼핑몰에 무언가를 요청합니다. "이 페이지 좀 보여줘!", "이 폼에 정보 좀 보내고 싶어!" 이런 식으로요. 그러면 웹 서버는 "알겠어, 여기 정보 있어!", "페이지 여기 ..
DNS와 그 작동원리
·
CS
DNS (Domain Name System)DNS가 도메인 이름 시스템인줄 처음 알았습니다.이전에 말했듯 인터넷의 모든기기는 IP주소를 통해 서로를 찾고 통신하는데요.naver.com 치면 될거를 굳이 125.209.222.141 이렇게 치고 들어가면 이거 못외우니까 쉬운 도메인 이름을 기기가 이해할 수 있는 IP주소로 바꾸어주는게 DNS라고 합니다.naver.com 치면 DNS조회를 통해서 도메인 이름의 IP를 찾는거죠 마치 주소록에서 내친구 김00 전화번호가 뭐더라랑 같은거죠.사용자가 요청을 하면 Resolver가 로컬 DNS 캐시를 확인해 요청된 도메인 주소가 최근에 이미 다녀와서 저장되어 있는지 확인하고 없다면 ISP의 Root DNS 서버로 전송되어서 물어봅니다.  나의 명령을 받은 리졸버 : ..
인터넷의 작동 원리
·
CS
CS 공부의 필요성을 느꼈습니다. 그래서 로드맵을 따라가며 하나하나 앞으로 적어나갈 예정입니다. 인터넷의 작동원리에대해 생각해 보았을 때 상당히 비전공자로서 어지러웠습니다. 궁금하기도 했지만 굳이 알려고 하지 않았던 것 같습니다.컴퓨터와 컴퓨터는 이더넷 케이블 또는 무선(Wifi 또는 bluetooth) 로 연결됩니다.이렇게 되는거죠 그런데 이게 두대뿐만아니라 3대 4대 늘어나면 이렇게 늘어나는거예요 컴퓨터는 2대늘었는데 연결선은 5개가 늘어났죠하지만 인터넷은 전세계가 연결되어있습니다. 그래서 라우터라는게 필요해진거죠이렇게 된겁니다. 8대가 연결되어있는데 선이 8개예요 엄청 효율적인거죠 근데 라우터하나가 전세계의 컴퓨터들과 연결된게 아니죠 그렇게 연결할 수도 없구요 이제부터는 라우터들의 싸움인거죠이거죠 ..
비트연산자
·
CS
위의 이미지로 모든 설명이 다 되긴한다.과거 디지털 공학 수업을 청강 하였을 때 공부한 적이 있었다. 회로에 관한 개념이었는데 Software에서 보다니 새삼 감회가 새로웠다. AND 연산자 (&)두 비트가 모두 1일 때만 1을 반환한다.예: 5 & 3 → 1OR 연산자 (|)두 비트 중 하나라도 1이면 1을 반환한다.예: 5 | 3 → 7XOR 연산자 (^)두 비트가 서로 다를 때 1을 반환한다.예: 5 ^ 3 → 6NOT 연산자 (~)단항 연산자로, 비트를 반전시킨다. 1을 0으로, 0을 1로 만든다.예: ~5 → -6 (2의 보수 표기법으로 인해 반전된 결과가 음수로 나온다.)왼쪽 시프트 연산자 (비트를 왼쪽으로 이동시키며, 오른쪽 빈 공간에 0을 채운다. 이동할 때마다 값이 2배가 된다.예: 5 ..