분류 전체보기
-
1. Intro 이번에는 웹 프로젝트 개발 환경을 구성해 보도록 하겠습니다. 2. 웹 프로젝트 환경 구성 2-1. 프로젝트 생성 먼저 프로젝트를 생성해 주겠습니다. 위와 같은 설정을 마치고 create 버튼을 누르면 해당 디렉터리에 파일이 생성되게 됩니다. 아래 사진과 같이 말입니다. 위 부분에서 저는 org.example이라는 패키지가 자동으로 만들어졌는데 혹시나 만들어지지 않으신 분들은 src > main > java 밑에 org.example이라는 패키지를 새로 만들어 주시길 바랍니다. 또한 그 밑에는 Main이라는 자바 파일이 있을텐데요 해당 클래스명을 위 사진과 같이 WebApplicationServer로 바꾸어 주었습니다. 이는 main 메소드를 실행했을 때 톰캣이 실행되도록 하기 위한 밑작업..
[Spring] Part 1-2. 나만의 MVC 프레임워크 만들기 | Gradle 개발 환경 구성하기 (with 도커|Docker)1. Intro 이번에는 웹 프로젝트 개발 환경을 구성해 보도록 하겠습니다. 2. 웹 프로젝트 환경 구성 2-1. 프로젝트 생성 먼저 프로젝트를 생성해 주겠습니다. 위와 같은 설정을 마치고 create 버튼을 누르면 해당 디렉터리에 파일이 생성되게 됩니다. 아래 사진과 같이 말입니다. 위 부분에서 저는 org.example이라는 패키지가 자동으로 만들어졌는데 혹시나 만들어지지 않으신 분들은 src > main > java 밑에 org.example이라는 패키지를 새로 만들어 주시길 바랍니다. 또한 그 밑에는 Main이라는 자바 파일이 있을텐데요 해당 클래스명을 위 사진과 같이 WebApplicationServer로 바꾸어 주었습니다. 이는 main 메소드를 실행했을 때 톰캣이 실행되도록 하기 위한 밑작업..
2023.01.09 -
1. Intro 시작에 앞서서 해당 내용은 패스트캠퍼스 10개 프로젝트로 완성하는 백엔드 웹개발(Java/Spring)의 내용을 토대로 정리한 것임을 알려드립니다. 저는 앞서서 Javascript 기반의 Node.js로 서버를 개발해 본 경험이 있지만 웹 전반적인 이해를 바탕으로 한 것이 아니라 우선 맡겨진 프로젝트를 수행하기 위해서 먼저 부딪혀 보고 하나씩 익혀한 경우였기 때문에 중간 중간 비어있는 개념이 있음을 느끼게 되었습니다. 그래서 이번 강좌를 들어보고 혼자 공부해 보면서 전반적인 기초 개념을 익히는데 중점을 두어 공부를 했고 이에 대한 내용을 정리한 포스팅이 되겠습니다. 2. 오리엔테이션 강의 목표 객체지향 프로그래밍에 대한 이해 HTTP 프로토콜 및 HTTP 웹 서버 동작 원리 이해 MVC ..
[Spring] Part 1-1. 나만의 MVC 프레임워크 만들기 | 시작 및 자바 설치편1. Intro 시작에 앞서서 해당 내용은 패스트캠퍼스 10개 프로젝트로 완성하는 백엔드 웹개발(Java/Spring)의 내용을 토대로 정리한 것임을 알려드립니다. 저는 앞서서 Javascript 기반의 Node.js로 서버를 개발해 본 경험이 있지만 웹 전반적인 이해를 바탕으로 한 것이 아니라 우선 맡겨진 프로젝트를 수행하기 위해서 먼저 부딪혀 보고 하나씩 익혀한 경우였기 때문에 중간 중간 비어있는 개념이 있음을 느끼게 되었습니다. 그래서 이번 강좌를 들어보고 혼자 공부해 보면서 전반적인 기초 개념을 익히는데 중점을 두어 공부를 했고 이에 대한 내용을 정리한 포스팅이 되겠습니다. 2. 오리엔테이션 강의 목표 객체지향 프로그래밍에 대한 이해 HTTP 프로토콜 및 HTTP 웹 서버 동작 원리 이해 MVC ..
2023.01.06 -
문제 https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, ..
[Baekjoon | 백준] 2798번 블랙잭 (파이썬/브루트포스, itertools;순열, 조합)문제 https://www.acmicpc.net/problem/2798 2798번: 블랙잭 첫째 줄에 카드의 개수 N(3 ≤ N ≤ 100)과 M(10 ≤ M ≤ 300,000)이 주어진다. 둘째 줄에는 카드에 쓰여 있는 수가 주어지며, 이 값은 100,000을 넘지 않는 양의 정수이다. 합이 M을 넘지 않는 카드 3장 www.acmicpc.net 카지노에서 제일 인기 있는 게임 블랙잭의 규칙은 상당히 쉽다. 카드의 합이 21을 넘지 않는 한도 내에서, 카드의 합을 최대한 크게 만드는 게임이다. 블랙잭은 카지노마다 다양한 규정이 있다. 한국 최고의 블랙잭 고수 김정인은 새로운 블랙잭 규칙을 만들어 상근, 창영이와 게임하려고 한다. 김정인 버전의 블랙잭에서 각 카드에는 양의 정수가 쓰여 있다. 그 다음, ..
2023.01.05 -
리액트 네이티브에 대한 소개와 개발 환경 세팅을 진행하면서 발생한 문제점들에 대해서 서술하였다. Chapter 1. 리액트 네이티브 개발 환경 갖추기 리액트 네이티브 소개 리액트 네이티브를 소개하기 전에 리액트 프레임워크에 대해서 먼저 알아보자면 리액트는 2013년에 페이스북에서 발표한 오픈소스 자바스크립트 프레임워크이다. 네이티브(native)라는 단어는 운영체제를 만들 때 사용한 프로그래밍 언어와 똑같은 언어로 만든이라는 의미를 내포하고 있는 것으로 네이티브 앱은 모바일 운영체제(안드로이드-자바, IOS-objectC, 오브젝티브-C)로 만든 앱을 의미한다. 네이티브 앱은 실행 속도가 빠른 장점이 있지만 습득해야 할 지식이 많고 똑같은 기능을 안드로이드와 ios용으로 따로 만들어야 한다. 그래서 크로..
[React Native] 리액트 네이티브 1-개발 환경 세팅 및 기본 다지기리액트 네이티브에 대한 소개와 개발 환경 세팅을 진행하면서 발생한 문제점들에 대해서 서술하였다. Chapter 1. 리액트 네이티브 개발 환경 갖추기 리액트 네이티브 소개 리액트 네이티브를 소개하기 전에 리액트 프레임워크에 대해서 먼저 알아보자면 리액트는 2013년에 페이스북에서 발표한 오픈소스 자바스크립트 프레임워크이다. 네이티브(native)라는 단어는 운영체제를 만들 때 사용한 프로그래밍 언어와 똑같은 언어로 만든이라는 의미를 내포하고 있는 것으로 네이티브 앱은 모바일 운영체제(안드로이드-자바, IOS-objectC, 오브젝티브-C)로 만든 앱을 의미한다. 네이티브 앱은 실행 속도가 빠른 장점이 있지만 습득해야 할 지식이 많고 똑같은 기능을 안드로이드와 ios용으로 따로 만들어야 한다. 그래서 크로..
2023.01.04 -
학습목표 정규표현식(re)에 대한 이해 및 숙지 정규표현식이란? regular expression 특정 패턴에 상응하는 문자열을 '검색', '치환', '제거' 하는 기능을 가짐 정규표현식의 도움없이도 패턴을 찾는 작업(Rule 기반)은 불완전하거나, 작업의 cost가 높음 ex) 이메일 형식 판별, 전화번호 형식 판별, 숫자로만 이루어진 문자열 등 raw string 문자열 앞에 'r'이 붙으면 해당 문자열이 구성된 그대로 문자열로 반환한다. a = 'abcdef\n' #escape 문자열 print(a) ''' abcdef ''' b = r'abcdef\n' print(b) ''' abcdef\n ''' escape string이란 escape sequence를 따르는 문자들로서 다음 문자가 특수문자임..
[Python] 정규표현식과 re모듈 사용법학습목표 정규표현식(re)에 대한 이해 및 숙지 정규표현식이란? regular expression 특정 패턴에 상응하는 문자열을 '검색', '치환', '제거' 하는 기능을 가짐 정규표현식의 도움없이도 패턴을 찾는 작업(Rule 기반)은 불완전하거나, 작업의 cost가 높음 ex) 이메일 형식 판별, 전화번호 형식 판별, 숫자로만 이루어진 문자열 등 raw string 문자열 앞에 'r'이 붙으면 해당 문자열이 구성된 그대로 문자열로 반환한다. a = 'abcdef\n' #escape 문자열 print(a) ''' abcdef ''' b = r'abcdef\n' print(b) ''' abcdef\n ''' escape string이란 escape sequence를 따르는 문자들로서 다음 문자가 특수문자임..
2023.01.03 -
데이터 베이스 기본 개념 데이터베이스 정의 데이터베이스 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합 데이터베이스 예제 은행: 계좌정보, 입출금 내역 등 항공사: 예약정보, 비행기 스케쥴 대학교: 학생정보, 수강 신청 온라인 쇼핑몰: 고객 기록, 주문 내역 제조업: 제품 목록, 주문, 재고, 공급망 회사 인사시스템: 직원정보, 연봉 데이터 베이스 특징 데이터베이스의 특징 -> 쇼핑몰 예제 실시간 접근 가능 -> 목록 조회 계속적으로 변환 -> 구입정보, 물건재고 정보 동시 공유가 가능 -> 많은 고객이 동시 접속, 구매 가능 저장된 주소가 아닌 내용으로 참조 가능 -> 가장 많이 팔린 제품은? 데이터의 유형 데이터베이스는 데이터가 모여 있는 집합 데이터의 유형 ..
[데이터베이스- simple버전] 1. 데이터베이스 정의데이터 베이스 기본 개념 데이터베이스 정의 데이터베이스 특정 조직의 여러 사용자가 공유하여 사용할 수 있도록 통합해서 저장한 운영 데이터의 집합 데이터베이스 예제 은행: 계좌정보, 입출금 내역 등 항공사: 예약정보, 비행기 스케쥴 대학교: 학생정보, 수강 신청 온라인 쇼핑몰: 고객 기록, 주문 내역 제조업: 제품 목록, 주문, 재고, 공급망 회사 인사시스템: 직원정보, 연봉 데이터 베이스 특징 데이터베이스의 특징 -> 쇼핑몰 예제 실시간 접근 가능 -> 목록 조회 계속적으로 변환 -> 구입정보, 물건재고 정보 동시 공유가 가능 -> 많은 고객이 동시 접속, 구매 가능 저장된 주소가 아닌 내용으로 참조 가능 -> 가장 많이 팔린 제품은? 데이터의 유형 데이터베이스는 데이터가 모여 있는 집합 데이터의 유형 ..
2023.01.03 -
이 포스팅에서는 주로 코딩 테스트를 준비하면서 알아가면 좋은 팁과 코딩 문제 풀이를 할 때 빈번하게 쓰이는 파이썬 코드들에 대해 작성할 것이며, 계속 새롭게 알게 되는 것이 생길 때마다 추가할 예정이다. 특정 숫자까지 리스트 만들기 list_a = [x for x in range(1, 10)] # [1,2,3,4,5,6,7,8,9] 소인수분해 리스트 만들기 N = 8 a = [x for x in range(1, N+1) if N % x == 0] 리스트 요소 개수 구하기 print(a.count(7)) # 리스트의 요수 중에서 '7'이 몇개인지 세준다. 리스트 요소 개수 구하기(딕셔너리) import collections a = {} test1 = ["a", "b", "a", "c", "d", "e", ..
[Tip] 코딩 문제 풀이 팁이 포스팅에서는 주로 코딩 테스트를 준비하면서 알아가면 좋은 팁과 코딩 문제 풀이를 할 때 빈번하게 쓰이는 파이썬 코드들에 대해 작성할 것이며, 계속 새롭게 알게 되는 것이 생길 때마다 추가할 예정이다. 특정 숫자까지 리스트 만들기 list_a = [x for x in range(1, 10)] # [1,2,3,4,5,6,7,8,9] 소인수분해 리스트 만들기 N = 8 a = [x for x in range(1, N+1) if N % x == 0] 리스트 요소 개수 구하기 print(a.count(7)) # 리스트의 요수 중에서 '7'이 몇개인지 세준다. 리스트 요소 개수 구하기(딕셔너리) import collections a = {} test1 = ["a", "b", "a", "c", "d", "e", ..
2023.01.02 -
1. Shortest Path Algorithms (최단거리 알고리즘) 1-1. Single-Source Shortest Paths 최단 거리 문제에서, 우리는 weight(가중치)가 부여된 방향 그래프(directed graph) G = (V, E)가 주어집니다. (앞으로 나오는 G=(V, E) 에서 대문자 V와 대문자 E는 각각 노드(vertex)와 간선(edge)의 집합을 의미합니다.) 가중치 함수(weight function)는 아래 식과 같습니다. 위 식의 의미는 edge를 real-valued weights(실수 가중치)에 매핑하겠다는 의미입니다.즉, 각 edge마다 주어지는 path에 대한 값이 존재한다는 것인데요. 특정 path의 weight를 의미하는 w(p) (p = 인 곳에서)는 해당..
[자료구조와 알고리즘 | 파이썬] Shortest Path Algorithms(최단 거리 알고리즘) & Dijkstra Algorithm(다익스트라 알고리즘) & Bellman-Ford Algorithm(벨만-포드 알고리즘) + 위상 정렬(Topology sort)1. Shortest Path Algorithms (최단거리 알고리즘) 1-1. Single-Source Shortest Paths 최단 거리 문제에서, 우리는 weight(가중치)가 부여된 방향 그래프(directed graph) G = (V, E)가 주어집니다. (앞으로 나오는 G=(V, E) 에서 대문자 V와 대문자 E는 각각 노드(vertex)와 간선(edge)의 집합을 의미합니다.) 가중치 함수(weight function)는 아래 식과 같습니다. 위 식의 의미는 edge를 real-valued weights(실수 가중치)에 매핑하겠다는 의미입니다.즉, 각 edge마다 주어지는 path에 대한 값이 존재한다는 것인데요. 특정 path의 weight를 의미하는 w(p) (p = 인 곳에서)는 해당..
2022.12.31