본문 바로가기
반응형

전체 글66

[CS] Maven이란 ? ✔️Maven이란? Maven은 Java 프로젝트를 더 쉽게 관리하고 빌드할 수 있도록 도와주는 프로젝트 관리 도구입니다. 💡Maven의 특징 의존성 관리: Maven은 프로젝트가 사용하는 외부 라이브러리 및 다른 프로젝트에 대한 의존성을 자동으로 관리합니다. 프로젝트 라이프사이클 관리: Maven은 프로젝트 빌드 단계를 정의하고 실행할 수 있는 라이프사이클을 제공합니다. 프로젝트 구조 표준화: Maven은 프로젝트 디렉토리 구조와 파일 명명 규칙을 정의하여 프로젝트 구조를 표준화합니다. 자동 빌드: Maven은 프로젝트를 빌드하고 패키징하는 작업을 자동화하며, 이를 통해 개발자가 더 효율적으로 작업할 수 있습니다. 프로젝트 문서화: Maven은 프로젝트 문서화를 위한 도구와 플러그인을 제공하여 프로젝트.. 2023. 9. 23.
[CS] TCP와 UDP ✔️TCP (Transmission Control Protocol)란? TCP는 신뢰성 있는 데이터 전송을 보장하는 연결 지향 프로토콜입니다. 💡TCP (Transmission Control Protocol)의 특징 연결 지향적: TCP는 연결을 설정하고 데이터를 주고받기 전에 항상 연결을 먼저 설정합니다. 이 연결은 신뢰성 있는 통신을 제공합니다. 신뢰성: TCP는 데이터 전송 중 손실된 데이터나 오류가 있는 데이터를 재전송하여 데이터의 무결성을 보장합니다. 흐름 제어: TCP는 데이터의 흐름을 조절하여 네트워크 혼잡을 방지하고 효율적인 통신을 지원합니다. 순서 보장: TCP는 데이터 패킷의 순서를 보장하여 수신 측에서 원래의 메시지를 올바르게 재구성할 수 있도록 합니다. ✔️ UDP (User Dat.. 2023. 9. 22.
[CS]Get방식과 Post방식 ✔️GET 방식이란? GET은 웹 서버로부터 정보를 요청하기 위한 HTTP 메서드 중 하나입니다. 이 방식은 주로 데이터를 서버로 보내는 게 아니라, 서버로부터 데이터를 받아오기 위해 사용됩니다. 💡GET 방식의 특징 URL에 데이터를 포함하여 요청합니다. 이 데이터는 주로 쿼리 문자열(query string)의 형태로 전달됩니다. 데이터는 URL에 노출되므로 보안적으로 민감한 정보를 전송하기에 적합하지 않습니다. 브라우저에서 주소 표시줄에 직접 입력하는 형태로 GET 요청을 수행하며, 브라우저 기록에 저장됩니다. 💡GET 방식의 사용 웹 브라우저 주소창에 URL을 입력하면 해당 페이지로 GET 요청을 보냅니다. 검색 엔진에서 검색어를 전송할 때 사용됩니다. 웹 페이지에서 링크를 클릭하면 GET 요청을 .. 2023. 9. 22.
[CS] 웹 서버(Web Server)와 웹 애플리케이션 서버(Web Application Server, WAS) 💡웹 서버(Web Server)의 역할 클라이언트(웹 브라우저)로부터 HTTP 요청을 받아들이고, 정적인 콘텐츠(HTML 파일, 이미지, CSS, JavaScript 등)를 제공합니다. 요청된 웹 페이지나 파일을 찾아서 응답으로 전송합니다. 주로 정적인 콘텐츠 제공, 로드 밸런싱, SSL 암호화와 같은 기능을 수행합니다. 💡웹 서버(Web Server)의 특징 정적 파일 서비스: 주로 HTML 파일, 이미지, 스타일 시트, 자바스크립트와 같은 정적 파일을 제공합니다. 처리 속도: 빠른 응답 속도를 제공하며, 정적 파일 서비스에 특화되어 있습니다. 대표적인 웹 서버: Apache, Nginx, Microsoft IIS 등이 있습니다. 💡웹 애플리케이션 서버(Web Application Server)의 역할.. 2023. 9. 18.
[CS] 동기와 비동기 동기와 비동기의 차이는 간단하게 동기는 맡은 일을 끝내고 다음일을 시작하며, 비동기는 응답여부에 상관없이 다음일을 시작합니다. ✔️동기 (Synchronous) 프로그래밍이란? 동기 프로그래밍은 작업이 순차적으로 실행되는 방식입니다. 간단히 말하면, 한 작업이 시작되고 완료될 때까지 다음 작업이 대기하는 방식입니다. 이것은 일반적으로 우리가 일상적으로 하는 작업과 유사합니다. 예를 들어, 요리를 할 때, 각 단계가 다음 단계를 기다리는 것과 같습니다. 💡동기 (Synchronous) 프로그래밍 특징 순차적 실행: 작업들은 순서대로 실행되며, 한 작업이 완료되기 전에 다음 작업은 시작되지 않습니다. 직관적: 코드가 순차적이므로 이해하기 쉽고 디버깅하기도 상대적으로 쉽습니다. 블로킹: 한 작업이 다른 작업을.. 2023. 9. 17.
프레임워크(Framework) vs 라이브러리(Library) ✔️프레임워크(Framework)란? 프레임워크는 소프트웨어 개발을 위한 뼈대나 기반 구조를 제공하는 추상적인 개념입니다. 이는 개발자들이 프로젝트를 시작할 때 필요한 구조와 규칙을 정의해놓은 것으로, 개발자가 해당 프레임워크를 사용하면 프로젝트의 전체 아키텍처와 흐름을 기반으로 작업을 시작할 수 있게 됩니다. 💡프레임워크(Framework) 특징 제어 역전 (Inversion of Control, IoC): 프레임워크가 개발자 대신 코드를 제어하며, 개발자는 프레임워크가 제공하는 규칙에 따라 코드를 작성합니다. 재사용성: 프레임워크는 다양한 프로젝트에 재사용할 수 있는 코드와 구성 요소를 포함하고 있어 개발 생산성을 향상시킵니다. 일관성: 프레임워크는 표준화된 방식으로 개발을 진행하므로 프로젝트 내에서.. 2023. 9. 16.
[CS] 오버라이딩(Overriding)과 오버로딩(Overloading) ✔️오버라이딩(Overriding)이란? 오버라이딩은 객체 지향 프로그래밍(OOP)에서 중요한 개념 중 하나로, 부모 클래스(또는 슈퍼 클래스)의 메서드를 자식 클래스(또는 서브 클래스)에서 다시 정의하여 사용하는 것을 의미합니다. 이를 통해 자식 클래스는 부모 클래스의 동일한 이름의 메서드를 가지고 있지만, 그 메서드의 동작을 자신의 필요에 맞게 변경할 수 있습니다. 오버라이딩은 다형성(Polymorphism)의 핵심 원칙 중 하나이며, 자식 클래스가 부모 클래스의 메서드를 덮어쓰는 것을 가능하게 합니다. 💡오버라이딩 규칙 메서드 이름, 매개변수의 수, 매개변수의 타입은 부모 클래스의 메서드와 동일해야 합니다. 자식 클래스에서 오버라이딩한 메서드는 @Override 어노테이션을 사용해 표시할 수 있습니.. 2023. 9. 15.
[Algorithm] 재귀함수 ✔️재귀함수란? 재귀 함수(Recursive Function)는 컴퓨터 과학 및 프로그래밍에서 중요한 개념 중 하나로, 함수가 자기 자신을 호출하는 것을 의미합니다. 이것은 어떤 문제를 해결하기 위해 주어진 작업을 반복적으로 수행하거나, 복잡한 문제를 간단한 단계로 분해하여 해결하는 데 사용됩니다. 이 글에서는 재귀 함수의 개념, 작동 방식, 예제 및 주의할 점을 자세히 설명하겠습니다. 💡 동작 방식 재귀 함수는 자신을 호출합니다. 호출될 때마다 함수는 주어진 입력에 대한 작업을 수행하고, 작업이 완료되면 자기 자신을 호출하여 똑같은 작업을 반복합니다. 재귀 함수는 종료 조건을 가지고 있어야 합니다. 종료 조건이 충족되면 재귀 호출이 멈추고 함수가 종료됩니다. 이렇게 하지 않으면 무한한 재귀 호출이 발생.. 2023. 9. 14.
반응형