문자열을 나누는 split함수 구현하기 #split() 구현하기 -C++에서는 STL에서 split() 함수를 지원하지 않는다. 코딩테스트에는 문자열을 기준에 따라 쪼개는(split) 로직이 자주 등장하는데 때문에 C++에서는 직접 split함수를 구현해야 한다. 구현은 아래와 같이 한다. - 기본적인 문자열을 가공하는 함수들을 사용하지만 string::npos를 이용하여 while문을 돌리는 구문이 핵심이라고 할 수 있다. #include using namespace std; vector split(string input, string delimiter){//input: 입력문자열, delimiter: 구분자 vector ret; //빈 벡터 생성 long long pos = 0; //구분자의 위치를 ..
분류 전체보기
1. URL 파라미터란 무엇인가? 클라이언트가 서버로 요청을 할 때는 URL을 통해 요청이 이루어진다. 요청이 다양하기 때문에 URL매핑 만으로는 다양한 요청을 전부 처리할 수 없다. 무수히 많은 정보를 URL매핑을 통해서만 처리할 수 없기 때문에 URL 파라미터를 URL에 담아서 보내는 방법이 고안되었다. URL 매핑을 통해 요청하는 방법과 URL 파라미터를 URL에 담아서 요청하는 방법은 아래와 같다. 예) URL 매핑을통해 요청하는 방법(boardList를 받아오는 요청) http://localhost:7777/board/boardList 예) URL 파라미터로 값을 담아 요청하는 방법(특정 글의 정보를 받아오는 요청) http://localhost:7777/board/boardDetail/?boa..
1. 트리거란? 트리거(trigger)란 데이터의 변경(INSERT, DELETE, UPDATE)문이 실행될 때 자동으로 실행되는 프로시저를 말한다. 트리거를 설정해 놓으면 데이터가 변경되기 전(BEFORE)과 후(AFTER) 시점에 개입하여 원하는 로직을 실행할 수 있다. 트리거가 프로시저와 다른 점은 프로시저는 호출을 해야지 실행이 된다면 트리거는 조건이 충족되면 자동으로 실행된다는 것이다. 코드로 살펴보는 것이 이해가 빠를 것이다. 2. 트리거 기본 문법 CREATE [OR REPLACE] Trigger 트리거명 Before (or After) UPDATE OR DELETE OR INSERT ON 테이블명 --Trigger_event [FOR EACH ROW] DECLARE --변수선언부 BEGIN..
https://generalcoder.tistory.com/4 [Javascript]위도 경도로 두 점 사이의 거리 구하기 - 카카오 지도api https://generalcoder.tistory.com/3 [Javascript]카카오 지도, 주소api 사용해보기 최근 진행중인 사이드 프로젝트에서 당근마켓에서처럼 특정 범위 이내에서만 정보를 출력해주는 기능이 필요해졌다. 그래 generalcoder.tistory.com 지난 시간에는 위도와 경도로 두 점사이의 거리를 구하는 방법을 살펴보았다. 이번에는 내가 설정한 거리안에 있는 게시물만 출력해주는 기능을 구현해보려 한다. 지난포스팅과 연속성을 갖기 때문에 이해를 위해서 이전 포스팅부터 보는 것을 추천한다. 1. 게시물 리스트 만들기 1.1 HTML 정적..
https://generalcoder.tistory.com/3 [Javascript]카카오 지도, 주소api 사용해보기 최근 진행중인 사이드 프로젝트에서 당근마켓에서처럼 특정 범위 이내에서만 정보를 출력해주는 기능이 필요해졌다. 그래서 찾던 중 다음(현 카카오)api중에 주소 api가 있는 것을 발견했다. 코 generalcoder.tistory.com 지난 포스팅에서 카카오 지도와 주소 api를 연동하는 방법을 알아보고 테스트까지 해보았다. 이번시간에는 지도 api에서 얻은 경도와 위도를 가지고 두 점 사이의 거리를 측정하는 방법을 알아보려 한다. 두 점 사이의 거리를 구하기 위해서는 두 가지를 알아야한다. 첫째, 각 점의 위도와 경도를 얻어온다. 둘째, 위도와 경도를 가지고 두 점사이의 거리를 측정할..
최근 진행중인 사이드 프로젝트에서 당근마켓에서처럼 특정 범위 이내에서만 정보를 출력해주는 기능이 필요해졌다. 그래서 찾던 중 다음(현 카카오)api중에 주소 api가 있는 것을 발견했다. 코드만 가져다가 붙이면 바로 작동 할 수 있도록 잘 작성되어 있어서 바로 테스트를 해보았다. 다음 주소api예제 코드 테스트 test용 html을 선언한 후 코드를 붙여봤다. 카카오맵을 사용해야 하기 때문에 스크립트 영역에 카카오 개발자 센터에서 발급받은 API 키를 입력해준다. API키는 애플리케이션을 등록한 후 발급받을 수 있다. 카카오맵에서는 javascript 키를 사용한다. 위 코드 스크립트 태그 중에 "발급받은 API KEY를 사용하세요" 라고 써있는 곳에 키를 넣어주면 된다. 최종적으로 테스트 코드는 이렇게..
1. 동기와 비동기(Synchronous and Asynchronous) 자바스크립트를 배우다 보면 마주치는 장애물 중 하나는 바로 비동기와 동기라는 개념이다. 이번 포스팅에서는 동기와 비동기 개념을 이해하고 비동기처리가 왜 필요한지 그리고 그 방법에대해서 알아보자. 자바스크립트는 기본적으로 맨 윗줄부터 차례로 코드가 실행된다. 예를들어 이런 코드가 있다고 생각해보자. colsole.log("1") colsole.log("2") colsole.log("3") //1,2,3이 순서대로 출력된다. 당연히 위에서부터 코드가 실행되고 콘솔에는 1,2,3 순서로 값이 출력될 것이다. 이것이 바로 동기적으로 코드실행이다. 하나의 작업이 마무리 될때까지 기다렸다가 다음 작업이 순서대로 일어난다. ‘비동기적’ 이란 개..
지인의 추천으로 구글 Firebase를 알게 되었다. Firebase 기능은 간단하면서도 매우 강력하다. 백엔드에서 어렵게 구현해야 하는 인증이나 DB연동을 매우 간단한 방법으로 사용할 수 있도록 지원하고 호스팅도 지원하기 때문에 아이디어만 있다면 약간의 프런트엔드 지식만 가지고 파이어베이스를 이용하여 쉽게 프로젝트를 만들어볼 수 있다. 파이어베이스를 이용하여 간단한 마켓프로그램을 만들어봤다. 마켓 프로젝트를 통해 node.js환경에서 모듈을 입출력하는 방법과 파이어베이스 API를 내 프로젝트에 적용시켜보는 경험을 했다. 프로젝트 소개 프로젝트 명: Garden Market 사용한 툴(tool): -프론트엔드: HTML/CSS/Javascript -백엔드: Firebase -프레임워크: express(e..