코딩캠프

HTTP 개요 TCP (Transmission Control Protocol) 3 way handshake 데이터를 전송하기 전에 신뢰성있는 데이터 전송을 성립하기 위해 사용하는 연결 확인 방식 4 way handshake 세션을 종료하기 위해 사용하는 방식 TCP 패킷 중 헤더(Header)에 있는 TCP 플래그를 활용한다. SYN: 연결요청 플래그 ACK: 응답 플래그 FIN: 연결종료 플래그 HTTP Request Message 요청 라인 (Request Line) HTTP 메소드 (Method) GET, POST 등 HTTP 통신에서 사용되는 메소드 타겟 (URI) 클라이언트가 가져오고자 하는 리소스 프로토콜 버전 브라우저가 현재 사용하고 있거나 사용할 수 있는 HTTP의 버전 헤더 (Header..
HTTP 개요 프로토콜(Protocol) 이란? 통신 프로토콜 또는 통신 규약은 컴퓨터나 원거리 통신 사이에서 메시지를 주고 받는 양식과 규칙의 체계 (대화를 하기 위한 일종의 규약 또는 약속) HTTP (Hypertext Transter Protocol) HTTP는 HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다. HTTP는 기본적으로 무상태(Stateless) 상태를 유지하고 TCP와 같은 프로토콜은 Stateful 상태를 유지한다. 특징 요청과 응답 어떤 종류의 데이터라도 전송 가능 비연결성 (Connectionless) 무상태(Stateless) 메소드(Method) HTTP를 이용하여 클라이언트에서 서버로 요청을 보낼 때 어떠한 목적으로 요청을 하는 것인지 정의할 수 있다...
MAC주소란 무엇이고 어떻게 구성되는 것인가? MAC 주소 (Media Access Control Address) 는 네트워크 장치들이 고유하게 가지는 식별자이다. 이 주소는 네트워크 카드나 어댑터에 할당되고 이를 통해 장치들은 서로 통신하고 데이터를 교환한다. MAC 주소는 12자리의 16진수로 구성 앞 6자리는 제조업체 식별자 OUI (Organizationally Unique Identifier) https://hwaddress.com/ 에서 조회해볼 수 있다. 뒤 6자리는 해당 업체에서 할당 UAA (Universally Administered Address) MAC주소는 어떻게 사용되고 왜 사용되어야 하는지 알아보기 MAC 주소는 주로 로컬 네트워크에서 장치들을 식별하고 구분하기 위해 사용하고 ..
앞으로 2주간 백엔드 강의 내용 및 목표 강의 내용 1. 웹서버와 HTTP (Hypertext Transfer Protocol) 2. REST API (Representational State Transfer) 3. Fast API (with Python) 강의 목표 • 백엔드 개발자가 알아야 할 기초지식을 습득한다. • HTTP와 RestAPI의 기본 개념을 알고 있고 있는 수준에 도달한다. • Python의 대표 웹프레임워크인 FastAPI의 기본 사용 방법을 익히고 배포할 수 있는 수준에 도달한다. 웹서버 개요 웹서버는 소프트웨어를 보통 말하지만, 웹 서버 소프트웨어가 동작하는 컴퓨터를 말한다. 웹서버의 가장 중요한 기능은 클라이언트가 요청하는 HTML 문서나 각종 리소스를 전달해준다. 웹 브라우저..
Thread-safety와 unsafety란 무엇인가? Thread-Safety 멀티 스레드 프로그래밍에서 일반적으로 어떤 함수나 변수, 혹은 객체가 여러 스레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제가 없음을 뜻함. 하나의 함수가 한 스레드로부터 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하여 동시에 함께 실행되더라도 각 스레드에서의 함수의 수행 결과가 올바르게 나오는 것 데이터 손실이나 예기치 않은 결과가 발생 하지 않는것을 의미 Thread-Safe한 코드는 스레드 간의 경쟁 조건(race condition)과 같은 문제를 방지하고, 동시성을 효과적으로 다루는 것 Thread-Unsafety Thread-Safe의 반대?? 공유되는 데이터에 대하여 여러 스레들이 동시에 접근..
SQL의 JOIN 은 Sub-query와 다르게 어떤 과정을 거쳐서 연산이 되는지 찾아보고 스터디한 내용을 작성해서 제출하기. (선택 과제여서 나중에 할 예정) SQL의 CRUD와 Python의 Flask&Pymysql을 이용하여 본인의 DB를 연동하고 데이터를 SELECT 또는 INSERT 할 수 있는 구문과 코드를 작성하여 내가 만들어놓은 html 문서에 데이터를 넘겨보는 작업을 완료하기. 과제 제출 커밋 링크 과제: 8.03 Flask&Pymysql 이용해서 DB SELECT, INSERT 구현 · go-tiger/AI-web-camp@14830cb go-tiger committed Aug 3, 2023 github.com INSERT 부분 코드 fetch 를 사용하여 post 로 입력 값들을 보내..
관계형 데이터베이스개요 데이터베이스(DataBase: DB) 여러 개의 연관된 데이터를 구조화하여 효율적인 처리를 할 수 있도록 관리 데이터베이스는 일반적으로 테이블, 열, 행 등의 구조로 데이터를 저장하고 데이터의 조회, 생성, 수정, 삭제의 작업을 수행할 수 있다. 다양한 종류가 있고 관계형 데이터베이스(RDBMS), 비관계형 데이터베이스(NoSQL)이 대표적이다. 관계형 데이터베이스는 테이블 간의 관계를 이용하여 데이터를 저장하고 관리하는 방식이고 SQL을 사용하여 조작을 한다 비관계형 데이터베이스는 테이블 간의 관계를 갖지 않고 문서 형태로 데이터를 저장하고 관리하는 방식이다. 데이터베이스 종류 관계형 DB (Relational DB) PostgreSQL MariaDB MySQL Oracle SQ..
ERD 스크린샷 users 테이블 컬럼 데이터 타입 제약 조건 설명 id INT UNSIGNED PRIMARY KEY, AUTO_INCREMENT users 고유 id nickname VARCHAR(50) NOT NULL 유저 닉네임 email VARCHAR(50) UNIQUE 유저 이메일 password VARCHAR(200) NOT NULL 유저 비밀번호(암호화) shortUrl 테이블 컬럼 데이터 타입 제약 조건 설명 id INT UNSIGNED PRIMARY KEY, AUTO_INCREMENT shortUrl 고유 id originalUrl VARCHAR(200) NOT NULL 단축 되기전 원래 url 주소 shortUrl VARCHAR(200) NOT NULL 단축된 url 주소 userId ..
2023.07.31 - [캠프/AI 웹개발 취업캠프] - [AI 웹개발 취업캠프] 11Day - Python(1) 조건문과 반복문 조건문 주어진 조건식의 결과에 따라 다른 명령을 수행하도록 프로그램의 흐름을 제어하는 명령문을 의미 if문 if 조건식: 조건식의 결과가 참(True)일 때만 실행되는 명령문 if 조건식: 조건식의 결과가 참(True)일 때만 실행되는 명령문 else: 조건식의 결과가 거짓(False)일 때만 실행되는 명령문 if 조건식1: 조건식1의 결과가 참(True)일 때만 실행되는 명령문 elif 조건식2: 조건식2의 결과가 참(True)일 때만 실행되는 명령문 else: 조건식1, 2의 결과가 모두 거짓(False)일 때만 실행되는 명령문 for문 어떤 조건을 만족시킬 때까지 특정 ..
0. pandas 설치 및 my_data.csv 불러오기 pip install pandas data = pd.read_csv('my_data.csv') 1. Unnamed:0라고 표기되는 열을 지운다. 단 Unnamed:0라 쓰지말고 새롭게 컬럼 이름을 만들어서 지운다. df.rename(columns={'before':'after'}) 이런식으로 변경할 컬럼의 기존이름과 변경할 이름을 입력하면 된다. data = data.rename(columns={'Unnamed: 0': 'columnTest'}) 열 삭제는 데이터프레임명.drop(['칼럼명'], axis=1) 으로 해당 열을 삭제한다. data = data.drop(['columnTest'], axis=1) 1번 과제 실행 후 결과 2. 0,1,2..
1. 숫자끼리 비교하는 연산과 문자끼리 비교하는 연산 중 왜 문자끼리 비교하는 연산이 상대적으로 불리한지 이유에 대해서 정리해보고 샘플 코드를 구현해서 제출하기 숫자끼리 비교하면 비교 연산으로 크기를 비교한다, 반면 문자열 비교 연산은 유니코드(unicode) 또는 아스키코드(ASCII) 값으로 비교한다. 그래서 문자열 비교 연산은 길이가 다양하기 때문에 비교 연산에 더 많은 리소스가 필요하고 원하지 않는 결과가 나온다. 결과값을 보게 되면 숫자와 문자열 비교값이 다르게 나온다 2. 파이썬으로 일부 중복되는 element를 저장하고 최소 element가 10개이상 되는 배열을 만든다. 그리고 set() 구문 없이 오로지 for in 문으로 배열의 중복된 값을 없애는 코드를 작성하기 코드 arr1 = [1..
2023.08.01 - [캠프/AI 웹개발 취업캠프] - [AI 웹개발 취업캠프] 12Day - Python(2) 파이썬 소개 파이썬(Python)이란 1989년 12월 네덜란드의 귀도 반 로섬 프로그래머가 크리스마스 이전에 회사가 7일 쉬어서 취미로 만들었대.. ??? 이름은 코미디 프로를 보다가 파이썬이라는 단어가 나와서..?? 파이썬은 문법이 어렵지 않고 쉽게 작성할 수 있다 인터프리터에서 바로 실행하여 그 결과를 확인할 수 있다. 생산성이 높아 개발 속도가 빠르다 자료형과 변수 문자형 자료형 문자열(string)은 문자로 이루어진 데이터의 타입, 파이썬에서는 다음과 같이 다양한 방법으로 문자열을 표현할 수 있다. 큰따옴표(" ")로 감싸기 작은따옴표(' ')로 감싸기 큰따옴표 3개(""" """)..
고랑E
'코딩캠프' 카테고리의 글 목록 (5 Page)