Posts by Category

ios

CoreML

머신러닝 학습기능은 macOS에만 포함되어 있다. ```swift import CreateMLUI

swift 문법 총정리(11) Extension & Protocol

Extension 기존에 있던 클래스나 struct에 추가적인 기능을 하고싶을 때 사용한다. 전반적으로 추가하고 싶은 기능이 있을 때 사용하면 좋다. extension은 가장 바깥쪽에 정의. class같은거 안에 들어갈 수 없고 어디서든 접근이 가능하다.

swift 문법 총정리(8) Class

Class 구성요소를 만들 때, 일반적으로 쓰이는 형태. 참조를 한다. 값을 복사하지 않는다 라는 개념이 있다. 기능이나 형태를 묶어서 만든다고 생각하면 된다.

Back to top ↑

Algorithm

문자열 패턴 매칭

문자열 패턴 매칭 패턴 매칭에 사용되는 알고리즘 고지식한 패턴 검색 알고리즘 라빈-카프 알고리즘 보이어-무어 알고리즘 KMP 알고리즘

DP22

0-1 Knapsack 알고리즘 수행 FOR i in 0 -> n: K[i,0] <- 0 FOR w in 0 -> w: K[0,w] <- 0 FOR i in 1 -> W FOR w in 1-> W IF wi > w K[i,w] <...

DP

분할정복은 하향식 dp는 상향식 방법으로 접근 문제제시 : 계수 값 구하기 이항계수 구하는 공식 (n k) = n!/k!(n-k)! for 0<= k<=n

다익스트라 알고리즘

최단 경로 최단 경로 정의 간선의 가중치가 있는 그래프에서 두 정점 사이의 경로들 중에 간선의 가중치의 합이 최소인 경로 가중치가 없으면 BFS로 짜서 도착지에 도착하면 중단시키게 짜주면 간단하다. 하지만, 가중치가 있으면 중간에 끝낼수가 없어 유리하지 않다. 하나...

크루스칼 & 프림 알고리즘

서로소 집합(Disjoint-set) 서로소 또는 상호배타 집합들은 서로 중복 포함된 원소가 없는 집합들이다. 다시 말해 교집합이 없다. 집합에 속한 특정 멤버를 통해 각 집합들을 구분한다. 이를 대표자라고 한다. 서로소 집합을 연결하는 방법 연결리...

그래프

그래프 그래프는 아이템(사물 또는 추상적 개념)들과 이들 사이의 연결 관계를 표현한다. 정점(Vertex) : 그래프의 구성요소로 하나의 연결점 간선(Edge) : 두 정점을 연결하는 선 차수(Degree) : 정점에 연결된 간선의 수 그래프는 정점들의 집합과 ...

탐욕 기법 & 분할 정복

탐욕 기법 문제 제시 : 거스름돈 줄이기 손님이 지불한 금액에서 물건값을 제한 차액(거스름돈)을 지불하는 문제를 생각해보자 “어떻게 하면 손님에게 거스름돈으로 주는 지폐와 동전의 개수를 최소한으로 줄일 수 있을까?” => 큰단위의...

완전탐색 - 순열, 조합, 부분집합

완전탐색 완전 탐색 방법은 문제의 해법으로 생각할 수 있는 모든 경우의 수를 나열해보고 확인하는 기법 Brute-force 혹은 generate-and-test기법이라고도 불린다. 모든 경우의 수를 ㅌ테스트 한 후, 최종 해법을 도출한다 상대적으로 빠른 시간에 문제...

재귀

재귀 반복과 재귀 반복과 재귀는 유사한 작업을 수행할 수 있다. 반복은 수행하는 작업이 완료될 때까지 계속 반복 루프(for/while, do-while구조) 재귀는 주어진 문제의 해를 구하기 위해 동일하면서 더 작은 문제의 해를 이용...

Back to top ↑

server

동기 VS 비동기 , Promise 이해하기

동기(Syncronous)는 요청을 보낸 후 해당 요청의 응답을 받아야 다음 동작을 실행하는 방식. 비동기(Asuncronous)는 요청을 보낸 후 응답과 관계없이 다음 동작을 실행 할 수 있는 방식을 의미한다.

Rest API

Restful한 api를 만들기에 앞서 몇가지 규칙과 restapi가 무엇인지, 그리고 http method에 대해서 알아보도록 하자.

로그인 인증방식

현재 모바일이나 웹 서비스에서 가장 많이 쓰이는 통신 방식은 HTTP통신이다. http는 하이퍼 텍스트 전송 프로토콜의 약자로 서로 다른 시스템들 사이에서 통신을 주고 받게 하는 가장 기본적인 프로토콜이다.

서버와 클라이언트 이해하기

웹 어플리케이션은 일반적으로 아래와 같은 구조로 만들어진다. WEB, WAS, DB 서버는 물리적인 서버가 아닌 논리적인 구조이다. 물리적인 구성은 서버의 스펙과 사용자 수 , 보안 및 네트워크 구조 등에 맞춰 설계된다. 사용자가 URL을 통해 WEB서버를 호출하고 요청사항을...

Back to top ↑

vuejs

네비게이션 가드

네비게이션 가드 : 뷰 라우터로 특정 url에 접근할 때 해당 url의 접근을 막는 방법. 예를 들면 사용자의 인증정보가 없을시, 특정 페이지에 접근하지 못하도록 차단할 때 사용하는 기술 전역 가드: 애플리케이션 전역에서 동작하는 Ex) beforeEach() 라우터 가...

동기 VS 비동기 , Promise 이해하기

동기(Syncronous)는 요청을 보낸 후 해당 요청의 응답을 받아야 다음 동작을 실행하는 방식. 비동기(Asuncronous)는 요청을 보낸 후 응답과 관계없이 다음 동작을 실행 할 수 있는 방식을 의미한다.

Spring boot+Vue.js login프로그램 구현(1)

spring boot로 Restful api를 구현하고 vuejs로 프론트앤드를 개발하여 로그인 서비스를 구현해주려고 한다. 로그인 구현을 위해 알아야하는 개념 서버 서버와 클라이언트 이해하기 RestApi 로그인 인증방식 ...

Back to top ↑

Java

Comparable과 Comparator

Comparable과 Comparator Comparable 정렬 수행 시 기본적으로 적용되는 정렬 기준이 되는 메서드를 정의하는 인터페이스.(compareTo을 통해 구현) Comparator은 정렬 가능한 클래스들의 기본 정렬 기준과 다르게 정렬하고 싶을때 사용하는 인...

객체 직렬화(serialization)

객체 직렬화(Serialization) 객체를 저장하거나 네트워크로 전송하기 위해 연속적인 데이터로 변환하는 것 반대의 경우는 역 직렬화(deserialization) 직렬화 되기 위한 조건 Serializable 인터페이스를 구현할 것. ...

Exception Handling

Exception Handling 에러와 예외 어떤 원인에 의해 오동작 하거나 비정상적으로 종료되는 경우 심각도에 따른 분류 Error : 메모리 부족, stack overflow와 같이 일단 발생하면 복구 할 수 없는 상황. 프로그램의 비 ...

Back to top ↑

Login

Spring boot+Vue.js login프로그램 구현(1)

spring boot로 Restful api를 구현하고 vuejs로 프론트앤드를 개발하여 로그인 서비스를 구현해주려고 한다. 로그인 구현을 위해 알아야하는 개념 서버 서버와 클라이언트 이해하기 RestApi 로그인 인증방식 ...

Back to top ↑

database

JOIN

JOIN 둘 이상의 테이블에서 데이터가 필요한 경우 테이블 조인이 필요. 일반적으로 조인 조건을 포함하는 where절을 작성해야 한다.. 조인 조건은 일반적으로 각 테이블의 PK 및 FK로 구성됩니다. JOIN의 종류 INNER JOIN ...

MySQL

RDBMS 관계형 데이터베이스 시스템 테이블 기반의 DBMS 데이터를 테이블 단위로 관리 : 하나의 테이블은 여러개의 컬럼으로 구성 중복 데이터를 최소화 시킴 같은 데이터가 여러 컬럼 또는 테이블에 존재했을 경우, ...

Back to top ↑

JSP

JSP

Session & Cookie http protocol의 특징 client가 server에 요청 server는 요청에 대한 처리를 한 후 client에 응답 응답 후 연결을 해제 » stateless 지속적인 연결로 ...

JSP

JSP 자바 서버 페이지는 HTML내에 자바 코드를 삽입하여 웹 서버에서 동적으로 웹 페이지를 생성하여 웹 브라우저에 돌려주는 언어이다. Servlet : html in java (out.print를 사용하여 html을 작성한다. 불편하다.) JSP : java in ...

Back to top ↑

Spring

Spring boot+Vue.js login프로그램 구현(1)

spring boot로 Restful api를 구현하고 vuejs로 프론트앤드를 개발하여 로그인 서비스를 구현해주려고 한다. 로그인 구현을 위해 알아야하는 개념 서버 서버와 클라이언트 이해하기 RestApi 로그인 인증방식 ...

Back to top ↑

python

Python 기본 grammar

코딩테스트를 위한 파이썬 필수 분법에 대해 알아보자. 1.자료형 모든 프로그래밍은 결국 데이터를 다루는 행위이다. 자료형에 대한 이해는 프로그래밍의 길에 있어서의 첫걸음이라고 할 수 있다. 파이썬의 자료형으로는 정수형, 실수형, 복소수형, 문자열, 리스트, 튜플, 사전등이 있다. ...

Back to top ↑

develop

Thread & 이벤트 드리븐

이벤트 드리븐 방식과 thread개념을 알고있어야 관련 충돌이 발생하였을 때, 원인을 파악하기가 쉽다.

Back to top ↑

Front-End

HTML5 & CSS3

HTML HTML은 Hypertext Markup Language의 약자. 1990년도 이후 웹(Web, World Wide Web)에서 사용하는 문서 양식 문서에 하이퍼텍스트, 표, 목록, 비디오 등을 포함할 수 있는 tag(Tag)를 사용. 문서를 웹브라우저에 ...

Back to top ↑

MVC

MVC

Web Application Architecture jsp를 이용하여 구성할 수 있는 Web Application Architecture는 크게 model1과 model2로 나뉜다. jsp가 client의 요청에 대한 Logic 처리와 response page(view)에...

Back to top ↑