반응형

CS 15

[네트워크]네트워크의 기본 구조

네트워크의 기본 구조 네트워크(Network)란 여러 장치가 서로 연결되어 데이터를 주고받는 구조를 의미합니다.인터넷, 사내 네트워크, 스마트폰 통신, IoT 환경까지 모두 네트워크 위에서 동작합니다.모든 네트워크는 크게 다음 세 가지 요소로 구성됩니다.노드(Node) : 정보를 주고받는 장치간선(Edge) : 노드들을 연결하는 통신 경로메시지(Message) : 노드 간에 전달되는 데이터이 세 가지 요소만 이해해도 네트워크의 전체적인 구조를 파악할 수 있습니다.노드(Node)노드는 네트워크에 연결되어 데이터를 송수신할 수 있는 모든 장치를 의미합니다.예를 들어 다음과 같은 장치들이 모두 노드에 해당합니다.서버 컴퓨터개인 데스크톱 / 노트북스마트폰, 태블릿스마트 TV, 냉장고, 자동차(IoT 기기)라우터..

CS/네트워크 2026.01.18

[네트워크] 소켓(Socket)이란?

소켓(Socket) 이란?프로그램이 네트워크를 통해 데이터를 송수신하기 위해 사용하는 통신 인터페이스이다. 소켓이 필요한 이유프로그램은 혼자서 네트워크를 통해 데이터를 보낼 수 없다.OS가 제공하는 네트워크 기능을 이용해야하는데이때 프로그램과 OS 사이에 네트워크 통신을 가능하게 해주는 인터페이스가 바로 소켓이다. 소켓이 연결하는 대상같은 컴퓨터 내 프로세스 간 통신(IPC)웹서버 와 DB 네트워크를 통한 다른 컴퓨터와의 통신브라우저와 서버소켓을 식별하는 요소하나의 소켓은 보통 다음 정보로 식별된다.IP 주소 + 포트 번호 + 전송 프로토콜192.168.0.10:8080 (TCP)IP 주소 → 어떤 컴퓨터인지포트 번호 → 어떤 프로그램인지프로토콜(TCP/UDP) → 어떤 방식으로 전달할지 TCP 소켓과..

CS/네트워크 2026.01.02

애자일(Agile) 이란?

애자일(Agile) 이란?애자일은 은 변화에 유연하게 대응하면서 빠르게 고객에게 가치를 전달하는 방식입니다.하나의 거대한 결과물을 한 번에 만드는 것이 아니라, 짧은 개발 주기를 반복하며 점진적으로 완성도를 높여갑니다핵심 요약: 애자일은 사람 중심, 협업 기반, 반복과 피드백을 중시하는 개발 철학이며, 개발 방법론이라기보다는 개발 방식의 사고방식 또는 문화입니다.전통적 방법론(워터폴 등) 애자일 가치프로세스와 도구개인과 상호작용 포괄적인 문서화작동하는 소프트웨어 계약 협상고객과의 협업 계획을 따르기변화에 대응 애자일 실천 방법1️⃣ 스크럼(Scrum)가장 널리 사용되는 애자일 실천 방식스프린트(Sprint)→ 일반적으로 2~4주 단위로 기간을 정하고, 해당 기간 동안 개발할 목표 기능을 선정하여 집중 개..

CS/개발상식 2025.08.07

CSR vs SSR

CSR (Client-Side Rendering, 클라이언트 사이드 렌더링)서버에서 HTML, CSS, JavaScript 등의 파일을 받 브라우저(클라이언트)에서 JavaScript 가 실행되며 전체 화면을 렌더링 하는 방법대표적으로 React,Vue 등의 프레임워크가 이 방식을 사용함장점초기 로딩 이후 페이지 전환이 빠름동적 페이지에 유리함서버 부담 감소단점초기 로딩 속도가 느림검색 엔진 최적화가 어려움 : 초기에 빈 html을 받기 때문에 검색 엔진이 콘텐츠를 파악하기 어려SSR (Server-Side Rendering, 서버 사이드 렌더링)사용자가 요청할 때마다 서버에서 HTML을 완전히 생성해서 브라우저에 전달하면 브라우저는 렌더링대표적으로 JSP , PHP, Next.js 등이 있다.장점초기 ..

CS/개발상식 2025.07.08

[개발상식] OOP란?

OOP란?OOP(Object-Oriented Programming,객체지향 프로그) 은 프로그램을 객체 들의 상호작용으로 구성하는 프로그래밍 패러다임 이다.현실 세계의 사물이나 개념을 객체로 보고 그 객체를 구현하는 방식객체란?속성(데이터) + 동작(메서드)로 구성된 것을 말하면예를 들어 현실 세계에서 “자동차”라는 객체를 생각해보면:속성(필드): 색상, 브랜드, 속도, 연료량동작(메서드): 운전하다, 멈추다, 가속하다class Car { String color; int speed; void drive() { System.out.println("차가 달립니다."); } void stop() { System.out.println("차가 멈춥니다."); ..

CS/개발상식 2025.06.19

[최근동향] 생성형 AI, 이제는 작고 똑똑하게 – SLM 시대의 도래

생성형 AI, 이제는 작고 똑똑하게 – SLM 시대의 도래 최근 몇 년 사이, 인공지능은 비약적인 발전을 거듭해 왔습니다. 특히 GPT, Claude, Gemini 등 초거대 언어 모델(LLM)의 등장은 많은 사람들에게 “AI가 인간을 넘보는 시대”가 온 듯한 인상을 주었죠. 하지만 그 이면에는 환각(hallucination), 불신, 높은 비용, 그리고 모호한 책임 문제가 함께 자리하고 있습니다.이제 AI의 방향은 단순히 “크고 강력한 모델”을 지향하는 시대를 지나, 신뢰 가능하고 작지만 유능한 모델, 즉 SLM(Small Language Model) 중심으로 재편되고 있습니다. 왜 사람들은 AI를 믿지 못할까?KPMG와 멜버른대학교의 글로벌 AI 보고서에 따르면, AI를 신뢰한다고 답한 사람은 절반도..

CS/최근동향 2025.06.16

[개발상식]클린코드란?

클린코드란?가독성이 높고 유지보수가 쉬운 코드를 의미소프트웨어 개발에서 클린 코드를 작성하는 것은 코드 품질을 높이고 협업을 원할하게 하며 버그를 줄이는 중요한 원클린코드 작성법1. 의미 있는 변수 및 함수명 사용변수,함수,클래스 등의 이름은 코드의 의도를 잘 표현할 수 있도록 지어야 하며이름만으로도 코드가 하는 일을 예측할 수 있도록 해야한다.2.함수는 하나의 역할만 수행하나의 함수에 여러개의 기능을 수행하기보다는 여러개의 함수를 만들어 호출하는 방식으로 함수들을 분리하면 유지보수가 쉬워지고 가독성이 올라가면 테스에 용이하다.3. 서술적인 이름을 사용하라서술적인 이름을 사용하면 읽는 사람이 어떤 기능을 하는지 예측할 수 있도록 해준다.사각형 넓이 구하는 함수 ⇒ calculateSquare4. 객체 생..

CS/개발상식 2025.06.15

[네트워크]TCP/IP란?

TCP/IP란?패킷 통신 방식의 인터넷 프로토콜인 IP와 전송 프로토콜인 TCP를 의미하면 데이터를 주고 받을때 어떻게 나눌지,어디로 보낼지 ,어떻게 다 시 합칠지를 정의한다.IP의 역할은데이터를 목적지 까지 전달하는 역활을 한다.패킷이 제[대로 전달되었는지 확인하지는 않는다순서를 보장하지 않는다.TCP의 역할IP 위에서 동작하며 신뢰성 있는 통신을 보장한다패킷이 정확하게 도착했는지 확인보낸 순서대로 정렬하여 다시 조립TCP(Transmission Control Protocol)전송 제어 프로토콜로 osi 7계층에서 4계층인 전송 프로토콜에 해당한다.데이터 전송을 안정적으로 순서대로 에러 없이 전달한다.신뢰성 보장, 흐름제어, 혼잡제어 기능을 할 수 있다.흐름제어란? 데이터의 처리속도를 제어하여 수신자가..

CS/네트워크 2025.06.14

[네트워크]TCP/IP 와 OSI7 계층

계층을 나누는 이유각계층별 역할을 정의하여 서로다른 시스템에서도 원할하게 연결하기 위해문제해결의 용이성 문제가 발생하였을때 원인을 분석하기 쉽다.TCP/IP 4계층모델통신 규약(프로토콜)의 모음이다.인터넷에서 컴퓨터들이 서로 정보를 주고받는 데 사용되는 프로토콜의 집합을 설명하는 네트워크 아키텍처입니다1계층 - 네트워크 액세스 계층osi 7 계층에서는 물리계층과 데이터링크 계층에 해당실제 데이터를 전달하는 물리적인 계층입니다.전선, 광섬유, 무선 등의 매체를 통해 데이터를 전송합니다.이더넷 프레임을 통해 에러 확인, 흐름 제어, 접근 제어를 담당합니다.물리적 주소인 MAC 사용2계층 - 네트워크(인터넷)계층OSI 7계층의 네트워크 계층에 해당IP 주소를 사용하여 패킷을 목적지로 전송하는 역할을 합니다.I..

CS/네트워크 2025.06.14

아키텍처

아키텍처란?시스템의 구조, 행위, 뷰를 정의하는 개념적 모형시스템의 각 컴포넌트가 무엇이며 어떻게 상호작용하는지 정보가 어떻게 교환되는지를 설명한다.⇒ 서비스의 동작 원리를 나타낸다.구성요소구성 요소(Components)예: 모듈, 클래스, 서비스, 데이터베이스, 외부 API 등구성 요소 간의 관계(Interactions)예: 어떤 컴포넌트가 다른 컴포넌트에 어떻게 의존하고 통신하는가설계 원칙과 패턴예: 계층형 아키텍처, MVC, MSA(Microservice Architecture), 이벤트 기반 구조 등아키텍처가 중요한 이유구조화 및 표준화아키텍처는 프로젝트의 구조를 명확하게 정의하여 개발자들이 일관된 방식으로 시스템을 구축하도록 한다.유지보수 및 확장성아키텍처는 시스템의 변화에 쉽게 대응할 수 있도..

CS/개발상식 2025.05.13
반응형