본문 바로가기

Web Technologies 🖥️18

API 명세서 자동화 - swagger (feat. express.js) Swagger의 주요 특징자동화된 API 명세서 생성코드 주석을 통해 API 명세서를자동으로 생성할 수 있다사용자 친화적인 UI누구나 API 명세서를시각적으로 이해할 수 있다API 테스트 기능직접 API를 호출하고테스트할 수 있는 기능을 제공 swagger 관련 패키지 설치npm install swagger-jsdoc swagger-ui-express  swagger 설정 파일 생성const swaggerJsDoc = require('swagger-jsdoc');const swaggerUi = require('swagger-ui-express');const swaggerOptions = { swaggerDefinition: { openapi: '3.0.0', info: { title.. 2024. 10. 10.
API 응답 구조화 (feat... 유틸 클래스) API 서버를 개발할 때클라이언트와 원활한 소통을 위해일관된 응답 구조 방식을 채택할 수 있다 API 엔드포인트에서성공 여부와 에러를 전달할 때일정한 포멧으로 응답을 주고 받으면클라이언트에서 예측 가능한 처리가 가능하다 유틸 클래스의 필요성API의 갯수가 많아질수록 동일한 형태의성공 / 실패 응답을 자주 사용하게 될 가능성이 높다이는 자연스래 중복된 코드로 이어지고유지보수 또한 까다로워진다 동일한 엔드포인트에서성공 / 실패 여부에 따른 응답을위와 같이 설정할 수 있다성공 시 응답 데이터{ "result": true, "errNum": null, "data": { "message": "Registration Success" }} 실패 시 응답 데이터{ "result": false, "err.. 2024. 3. 8.
람다(Lambda)란 무엇인가 (feat... 람다식) - JAVA "람다(lambda)" 수학과 논리학에서 비롯된 용어로 일반적으로 익명 함수를 의미한다 람다의 기본 개념 1. 익명성 람다는 이름이 없고 구현체만 제공하는 함수이다 이로 인해 간결성이 증가되고 단일 사용 목적을 가진 함수를 작성하기에 간편한 이점이 있다 주로 간단한 연산이나 다른 함수에 대한 인자 이벤트 헨들러 등에 사용된다 2. 클로저 람다는 정의될 때 주변 컨텍스트의 변수를 기억하며 정의된 외부 범위의 변수를 캡처하고 람다가 실행될 때 사용할 수 있는 특성이 존재한다 클러저를 통해 더욱 유연하고 표현력이 풍부한 프로그래밍이 가능하다 3. 간결한 정의 람다는 함수의 본문을 매우 간결하게 표현하기에 가독성을 향상시키고 복잡한 로직을 간단하게 표현할 수 있다 4. 퍼스트 클래스 시민 퍼스트 클래스 시민이란.. 2024. 1. 21.
제네릭(Generic)을 써보고 싶어요 - JAVA 아래 코드가 이해되시나요? 이해가 안 간다면 공부해 봅시다 "제네릭" public class Generic { private T content; public void setGeneric(T content) { this.content = content; } public T getGeneric() { return content; } public static void main(String[] args) { Generic genericForStr = new Generic(); genericForStr.setGeneric("Hello World"); Generic genericForInt = new Generic(); genericForInt.setGeneric(123456); System.out.println(.. 2024. 1. 20.
Java 로 테스트 코드를 작성하시나요? 그렇다면 "JUnit" 저번 시간에는 Test Code 가무엇인지 살펴보았으니,(Test Code 에 대해서 알아보러 가기) 이번 시간에는 java 에서 사용되는가장 대표적인 테스트 프레임워크인JUnit 에 대해서 살펴보겠습니다 JUnit 의 핵심 개념테스트 케이스JUnit 에서 각 테스트는테스트 케이스 클래스 내부에 정의되고보통 테스트할 클래스나 컴포넌트와동일한 이름으로 작성하며, 테스트 메소드를 포함한다(JUnit 4 이후부터는 TestCase 를 상속하지 않고, 단순한 Java 클래스로 작성해도 된다) @Test 어노테이션JUnit 4 이상을 사용하여 단순한 Java 클래스로 작성할 경우@Test 어노테이션을 사용하게 된다해당 어노테이션이 붙은 메소드의 경우, 테스트 메소드로 인식되고 실행된다 AssertJUnit 에서 .. 2024. 1. 19.
[jQuery] - ajax가 도대체 뭐야? (Asynchronous Javascript And Xml) ajax 란 JavaScript 의 라이브러리 중 하나이며 " 비동기식 자바스크립트와 xml " (Asynchronous Javascript And Xml) 의 약자이다 브라우저가 가지고 있는 XMLHttpRequest 객체를 이용하여 페이지를 새로고침하지 않고, 일부만을 새로 로드하는 기법(비동기식)이다 즉, 쉽게 풀어보면 JavaScript 를 통하여 클라이언트가 서버에 데이터를 비동기 통신으로 요청하는 것이다 비동기 통신이란? 페이지를 새로고침하지 않고도 데이터를 불러오는 방식이다 예를 들어 네이버 블로그나 카페에서 댓글을 작성하면 전체 페이지가 새로 로드되지 않고 댓글 영역 부분만 업데이트되어 새로 작성한 댓글이 적용되는 방식이다 그렇다면, 동기 통신이란? 쉽게 말해 페이지가 전체로 리로딩되는 것.. 2024. 1. 17.
728x90
반응형