CS 3

네트워크 프로토콜

👥인프런의 파이썬 프로그래밍 강의, 유튜브 강의를 참고하여 정리하였습니다.네트워크 통신이란?네트워크 통신과정네트워크 통신의 조건통신 방식프로토콜이란?프로토콜의 3요소프로토콜의 기능프로토콜의 종류네트워크 통신이란?컴퓨터와 컴퓨터가 연결된 것을 네트워크라고 합니다. 그리고 컴퓨터 간 통신을 네트워크 통신이라고 합니다.다음 과정을 통해 네트워크 통신이 이뤄집니다. 네트워크 통신과정https://www.inflearn.com/course/파이썬-프로그래밍/unit/17894클라이언트가 서버에 요청을 하면 listner가 듣고 socket으로 넘겨준다.서버는 클라이언트로부터 받은 요청에 대해 작업(데이터 베이스 작업 등..)을 한다.작업 결과물을 다시 클라이언트로 보내준다.여기서 패킷은 클라이언트와 서버 간 주고..

CS 2022.08.30

파이썬 - 객체지향 프로그래밍

🤖 인프런의 파이썬 강의를 수강한 후 정리한 내용입니다. 객체지향 프로그램이란? Object Oriented Programming 속성과 기능을 포함한 프로그램 단위로, 프로그램의 구성요소를 객체화 하는 것을 말한다. 클래스란? 객체를 생성하기 위한 틀로, 하나의 클래스로부터 여러개의 객체를 생성할 수 있다. # class01.py class Calculator: def __init__(self): self.result = 0 def add(self, num): self.result += num return self.result def sub(self, num): self.result -= num return self.result→ Calculator라는 클래스에는 숫자를 더하는 add기능과 빼는 sub..

CS 2022.08.25

파이썬 - 자료구조와 동작원리

성능 시간복잡도 시간복잡도란? 프로그래밍을 할 때는 언제나 비용을 신경써야한다. 그 비용 중 하나가 코드가 돌아가는데 필요한 실행시간일 것이다. 그리고 이러한 실행시간을 시간복잡도라고도 부른다. 시간복잡도를 정확히 예측할 필요는 없지만 그 시간을 개략적으로 예측하는 것은 필요하다. 시간복잡도를 표현할 때는 Big-O기법을 사용하는데, 이는 가장 빠르게 증가하는 항만을 고려하는 표기법이다. 즉, 가장 영향력이 큰 부분에 대해서만 시간 복잡도를 고려하는 것이다. 시간 복잡도는 대표적으로 다음 일곱가지 종류로 나눠볼 수 있다. 시간복잡도(증가함수) 종류 종류(빅오표기법) 명칭 설명 대표사례 문제크기가 100배 커질 때 예상 소요시간 O(1) 상수시간 고정된 수의 문장을 실행하므로 문제의 크기에 따라 시간이 변..

CS 2022.08.18