개발 13

Node.js란 뭘까 - what, why, pros and cons

1. What is Node.js ?한줄요약 : 웹 브라우저 외부에서 javascript 코드를 실행하는 오픈 소스 크로스 플랫폼 javascript 런타임 환경JavaScript 런타임 : Node.js는 Google Chrome의 핵심 엔진이기도 한 V8 JavaScript 엔진 에서 실행됩니다. 그러나 브라우저 컨텍스트와 달리 Node.js는 브라우저 외부에서 JavaScript 코드를 실행합니다 .단일 프로세스 모델 : Node.js 애플리케이션은  단일 프로세스 내에서 작동하므로 모든 요청에 ​​대해 새 스레드를 생성할 필요가 없습니다. 이러한 디자인 선택은 Node.js의 성능에 기여합니다.비동기 I/O : Node.js는  표준 라이브러리에서 비동기 I/O 기본 요소 세트를 제공합니다. 이러..

개발/백엔드 2024.08.16

[react] 코딩애플 리액트 강의 정리

리액트 설치1. node.js 설치2. 터미널에 npx create-react-app 프로젝트명 state를 쓰는 이유그냥 변수는 value가 바뀌어도 자동 재렌더링이 안됨 캐시 때문인가? Component 기능백개 천개 난립하는 div중 원하는 부분만 떼와서 하나의 component로 축약할 수 있는 기능어떤 걸 컴포넌트로 만들면 좋은가반복적인 html 축약할 때큰 페이지들자주 변경되는 것들컴포넌트의 단점state 가져다 쓸 때 문제 생김(A함수에 있던 변수를 B함수에서 가져다 쓸 수 없음)

오버로딩 오버라이딩 그게뭔딩

오버로딩한 클래스 안에 같은 이름의 메서드 여러 개 정의하는 것보통은 매서드 이름 : 매서드 가 일대일 매칭인데, 일대다 매칭을 하면 오버로딩이라 한다load를 over하게 했다 뭐 그런 뜻 오버라이딩상속받은 조상의 메서드를 자신에 맞게 변경하는 것덮어쓰기 라기엔 좀 그렇고 추가하기?수정하기? 정도?오버라이딩의 조건선언부가 조상 클래스의 메서드와 일치해야 한다접근 제어자를 조상 클래스의 메서드보다 좁은 범위로 변경할 수 없다예외는 조상 클래스의 메서드보다 많이 선언할 수 없다

개발/자바 2024.06.17

프레임워크란 무엇인가?

프레임워크(Framework)는 소프트웨어 개발에서 사용되는 개념으로, 특정한 기능을 수행하기 위해 필요한 구조나 틀을 제공하는 것이다. 프레임워크는 개발자가 보다 효율적으로 작업할 수 있도록 반복적인 작업을 자동화하고, 공통적인 기능을 미리 구현해 제공하는 역할을 한다. 프레임워크는 코드의 재사용성을 높이고, 일관된 구조를 유지하며, 개발 속도를 향상시키는 데 도움이 된다.프레임워크는 다양한 종류가 있으며, 주로 다음과 같은 분야에서 사용된다:웹 개발 프레임워크: 웹 애플리케이션 개발을 위한 프레임워크로, 서버 사이드와 클라이언트 사이드를 모두 지원한다.예시: Django (Python), Ruby on Rails (Ruby), Spring (Java), Express.js (Node.js)모바일 개발..

개발 2024.06.14

[spring] 스프링 부트 라이브러리 정리 spring boot libraries

스프링 부트 라이브러리spring-boot-starter-web spring-boot-starter-tomcat: 톰캣 (웹서버) 톰캣이 뭐임?spring-webmvc: 스프링 웹 MVC 웹MVC가 뭐임?spring-boot-starter-thymeleaf: 타임리프 템플릿 엔진(View) 타임리프 템플릿 엔진이 뭐임?spring-boot-starter(공통): 스프링 부트 + 스프링 코어 + 로깅spring-boot spring-core spring-core가 뭐임?spring-boot-starter-logging logbackslf4j테스트 라이브러리spring-boot-starter-testjunit: 테스트 프레임워크mockito: 목 라이브러리assertj: 테스트 코드를 좀 더 편하게 작성하게..

개발/백엔드 2024.06.14

spring-boot-starter-logging

Spring Boot에서 spring-boot-starter-logging은 로깅 기능을 쉽게 설정할 수 있도록 도와주는 스타터입니다. 이 스타터는 기본적으로 SLF4J(Simple Logging Facade for Java)와 Logback을 사용합니다. 이 두 가지는 자바 애플리케이션에서 로깅을 처리하는 데 중요한 역할을 합니다.SLF4J (Simple Logging Facade for Java)SLF4J는 다양한 로깅 프레임워크에 대한 추상화 계층을 제공합니다. 즉, SLF4J를 사용하면 애플리케이션 코드는 SLF4J API를 통해 로깅을 수행하고, 실제 로깅 구현은 런타임에 선택할 수 있습니다. 이를 통해 로깅 구현체를 쉽게 교체할 수 있습니다.장점:로깅 프레임워크 교체의 용이성: SLF4J를 사..

개발/백엔드 2024.06.14

spring-core가 뭐임?

Spring Core는 스프링 프레임워크의 핵심 모듈로, 스프링 프레임워크의 모든 기능과 특성을 제공하는 기반을 형성합니다. Spring Core 모듈은 IoC(Inversion of Control, 제어의 역전)와 DI(Dependency Injection, 의존성 주입) 패턴을 지원하여 애플리케이션 컴포넌트 간의 결합도를 낮추고, 유연하고 테스트 가능한 코드 작성을 가능하게 합니다.주요 구성 요소 및 기능:IoC 컨테이너:Inversion of Control: 객체의 생성, 구성, 생명 주기를 애플리케이션 코드가 아닌 컨테이너가 관리합니다.Dependency Injection: 객체 간의 의존성을 외부에서 주입하여, 코드의 유연성과 테스트 가능성을 높입니다.Spring에서는 다양한 방식으로 DI를 지..

개발/백엔드 2024.06.14

타임리프 템플릿 엔진이 뭐임? what is thymeleaf template engine?

타임리프(Thymeleaf)는 자바 기반 웹 애플리케이션을 위한 템플릿 엔진입니다. 타임리프는 서버 사이드에서 HTML을 생성하고, 이를 클라이언트에 전달하여 동적인 웹 페이지를 구성하는 데 사용됩니다. 특히, Spring Framework와의 통합이 잘 되어 있어 많은 Spring 애플리케이션에서 사용됩니다.더보기서버 사이드에서 HTML을 생성한다고? SSR인가? -> 맞다고 함 요리할 때 쓰는 허브 이름(타임)에서 따온 건가? -> 맞다고 함 자연 템플릿: 타임리프의 가장 큰 특징 중 하나는 템플릿이 브라우저에서 그대로 유효한 HTML로 볼 수 있다는 점입니다. 마치 요리에서 타임이 다양한 요리에 자연스럽게 어우러지는 것처럼, 타임리프도 기존 HTML에 자연스럽게 어우러집니다.심플함과 유연성: 타임이..

개발/백엔드 2024.06.14