일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 백엔드개발자
- 개발자
- 자바
- Java
- 코딩테스트
- IT
- 개발공부
- 백준
- 알고리즘풀이
- 백준 java
- IT개발
- apm 소스설치
- apm 수동설치
- 백엔드 개발자
- IT취업
- 백준 자바
- 프로그래머스
- 프리온보딩 백엔드 챌린지
- IT공부
- cs지식
- 백엔드
- 원티드
- 코딩
- 기술면접
- IT취준
- IT개발자
- 프리온보딩
- 알고리즘
- 코테
- 개발자취준
- Today
- Total
목록코딩 (17)
코이팅
📝 Week 2-1 절차지향 (Procedural Programming) 🟡 정의 순차적인 처리가 중요한 프로그래밍 방식입니다. 물이 위에서 아래로 흐르는 것처럼 순차적인 처리가 중요시 되며 프로그램 전체가 유기적으로 연결되도록 만드는 프로그래밍 기법입니다. 🟡 특징 대표적인 예로 C언어가 있습니다. 컴퓨터와 작업 방식이 비슷합니다. 데이터 위주의 thinking을 합니다. 객체지향 언어를 사용하는 것에 비해 더 빨리 처리 되어 시간적으로 유리합니다. 🟡 장단점 [장점] - 컴퓨터의 처리구조와 유사하여 실행속도가 빠릅니다. [단점] - 유지보수가 어렵습니다. - 실행 순서가 정해져있으므로 코드의 순서가 바뀌면 동일한 결과를 보장하기 어렵습니다. - 디버깅이 어렵습니다. 리팩토링 (Refactoring) ..
📝 Week 1-2 Nest.js로 객체지향 이해해보기 🟡 Controllers controller는 client의 요청을 받고, 응답을 다시 client에게 반환합니다. 어플리케이션을 향한 요청을 받는 첫번째 스텝입니다. 외부세계로 부터 들어온 요청이 어느 곳으로 가야하는지 안내하는 역할입니다. 하나 이상의 route를 가지며 각각 다른 action을 수행합니다. import { Controller, Get } from '@nestjs/common'; // @Controller : 해당 클래스가 컨트롤러라는 것을 명시합니다. @Controller('cats') export class CatsController { // @Get, @Post, @Put, @Patch... : REST API 메소드 @Ge..
1. Ajax란? 1) Ajax (Asynchronouse JavaScript XML) XMLHttpRequest 객체를 이용해서 웹 서버와 비동기로 통신하고, DOM을 이용해서 웹 페이지를 동적으로 바꿔주는 프로그래밍 기법입니다. 2) Ajax의 특징 페이지 새로고침 없이 특정 데이터만 reload 합니다. 서버로부터 데이터를 받고 작업을 수행합니다. 현재 XML을 사용하는 건 드물고 JSON을 사용합니다. **[Jquery와의 시너지] Ajax하면 Jquery에 대한 설명을 빼놓을 수 없습니다. 일반 Javascript만으로 Ajax를 하게되면 코딩량도 많아지고 브라우저별로 구현방법이 다른 단점이 있는데 jquery를 이용하면 더 적은 코딩량과 동일한 코딩방법으로 대부분의 브라우저에서 같은 동작을 할..
1. 스프링 배치(Spring Batch)란? 1) 스프링 배치(Spring Batch) 배치(Batch) : 일괄처리 사용자와 상호작용 없이 여러 개의 작업을 미리 정해진 순서에 따라 중단 없이 처리하는 것입니다. 스프링 배치(Spring Batch) 엔터프라이즈 시스템의 운영에 있어 대용량 일괄처리의 편의를 위해 설계된 가볍고 포괄적인 배치 프레임워크입니다. Spring의 특성을 그대로 가져왔기 때문에 DI, AOP, 서비스 추상화 등 Spring 프레임워크의 3대 요소를 모두 사용할 수 있습니다. Spring Batch는 로깅/추적, 트랜잭션 관리, 작업 처리 통계, 작업 재시작, 건너뛰기, 리소스 관리 등 대용량 레코드 처리에 필수적인 재사용 가능한 기능을 제공합니다. 또, 최적화 및 파티셔닝 기..
1. 시간복잡도(Time Complexity)란? [시간복잡도] 시간복잡도는 알고리즘을 수행하기 위해 프로세스가 수행해야하는 연산을 수치화 한 것입니다. 즉, 알고리즘의 성능을 설명하는 것입니다. 알고리즘의 로직을 코드로 구현할 때 시간복잡도를 고려한다는 것은 '입력값의 변화에 따라 연산을 실행할 때, 연산 횟수에 비해 시간이 얼마만큼 걸리는가?'를 뜻합니다. 시간복잡도는 주로 'Big-O 표기법'을 사용해 나타냅니다. 2. Big-O 표기법 [시간 복잡도를 표기하는 방법] Big-O 표기법은 일반적으로 입력 크기 측면에서 알고리즘의 시간 복잡도를의 상한을 표현하는 방법입니다. 알고리즘이 수행하는 작업 수에 대한 최악의 시나리오를 설명합니다. 불필요한 연산을 제거하여 알고리즘 분석을 쉽게 할 목적으로 사..
1. JWT(Json Web Token)란? JWT는 Json Web Token의 약자로 일반적으로 클라이언트와 서버 사이에서 통신할 때 권한을 위해 사용하는 토큰입니다. JWT는 웹표준(RFC 7519)으로서 두 개체에서 JSON 객체를 사용하여 가볍고 자가수용적인 방식으로 정보를 안전성 있게 전달해줍니다. 웹 상에서 정보를 Json 형태로 주고 받기 위해 표준규약에 따라 생성한 암호화된 토큰으로 복잡하고 읽을 수 없는 String 형태로 저장되어 있습니다. **[토큰 기반 인증방식] 토큰 기반 인증방식은 사용자의 인증이 완료된 이후에 토큰을 발급합니다. 클라이언트쪽에서 전달받은 토큰을 저장해두고 서버에 요청할 때마다 해당 토큰을 서버에 함께 전달합니다. 그 후 서버는 토큰을 검증하고 응답하는 방식으로..
1. Spring Security란? [Spring Security란 ?] Spring Security는 Spring 기반의 애플리케이션의 보안(인증, 권한, 인가 등)을 담당하는 스프링 하위 프레임워크입니다. 이 프레임워크를 사용하면 보안처리를 자체적으로 구현하지 않아도 필요한 기능을 쉽게 구현할 수있습니다. 즉, 보안과 관련해서 체계적으로 많은 옵션을 제공해주기 때문에 일일이 보안관련 로직을 작성하지 않아도 됩니다. Spring Security는 '인증'과 '권한'에 대한 부분을 Filter 흐름에 따라 처리하고 있습니다. **[인증(Authentication)] 인증은 해당 사용자가 본인이 맞는지 확인하는 절차입니다. 유저가 누구인지 확인하는 것, 회원가입과 로그인을 하는 것을 말합니다. **[인가..
Java 자료형의 유형 Java 자료형의 유형은 크게 기본 자료형과 참조 자료형으로 나뉩니다. 🟡 기본 자료형 (primitive data type) ≒ 기본 타입 (primitive type) ≒ 원시 타입 자바 컴파일러에 의해서 해석되는 자료형 실제 값을 갖는 자료형 자바에서 여러 형태의 타입을 미리 정의하여 제공 정수, 실수, 문자, 논리을 저장하는 자료형 🟡 참조 자료형 (primitive data type) ≒ 참조 타입 (reference type) 기본형을 제외한 타입들이 모두 참조 자료형입니다. 값이 아닌 객체의 주소를 가지고 있는 자료형 자바 라이브러리 API에서 제공되거나 프로그래머에 의해서 만들어진 클래스를 자료형으로 선언하는 경우 배열, 클래스, 인터페이스 타입 자료형 Java의 기..