백엔드

    [Koa] Koa를 사용한 웹 서버 만들기 - 1.프로젝트 생성 및 ESLint 설정 및 Koa 기본 사용법

    지금부터 Koa를 사용한 웹서버 만들기를 시작해보겠 습니다. Koa는 Node.js를 기반으로 하기 때문에 프로젝트를 생성할 때에도 Node 프로젝트를 생성하는 방식과 동일합니다. 1. 프로젝트 생성 웹서버 프로젝트를 만들기 위해 개발 폴더를 하나 생성해주고 해당 디렉토리에 yarn 명령어를 사용해 패키지 정보를 생성해줍니다. $ mkdir koa-server $ cd koa-server $ yarn init $ yarn add koa 2. ESLint 설정 프로젝트를 생성했다면 이제부터는 서버파일을 작성하기 전 자바스크립트 문법을 검토해주는 ESLint 라이브러리를 설치해서 적용하는 방법을 알아보겠습니다. 먼저 eslint를 설치해줍니다. $ yarn global add eslint 그 다음, 프로젝트..

    [Python] 파이썬 2장 - 파이썬 프로그래미의 기초, 자료형 - 숫자형

    지금 부터 파이썬의 기초 자료형에 대해 알아보도록 하겠습니다. 1. 숫자형 1-1.숫자형이란? 숫자형(Number)이란 숫자 형태로 이루어진 자료형으로, 우리가 이미 잘 알고 있는 것입니다. 우리가 흔히 사용하는 숫자를 생각해 봅시다. 123같은 정수, 12.34같은 실수 드물게 사용하긴 하지만 8진수나 16진수 같은 것도 있습니다. 다음 표를 설명하자면 숫자를 어떻게 사용하는지 간략하게 설명됩니다. 항목 사용예 정수형 123,-345,0 실수형 123.45,-1234.5, 3.4e10 8진수 0o34,0o25 16진수 0x2A, 0xFF 이제 이런 숫자들을 파이썬에서 어떻게 만들고 사용할지 알아봅시다. 1-2.숫자형을 만드는 방법 1-2-1.정수형 정수형(integer)이란 말 그대로 정수를 뜻하는 자..

    [Python] 파이썬 1장 - 파이썬 설치하기

    1. 파이썬 설치하기 (Windows) 이제 파이썬을 설치하는 방법을 알아보도록 하겠습니다. 저는 현재 윈도우를 사용하기 때문에 윈도우11을 기준으로 작성했습니다. Download Python The official home of the Python Programming Language www.python.org 먼저 파이썬 공식 홈페이지에 들어가서 가장 최신 버전의 파이썬을 설치해줍니다. 파이썬이 3.x버전으로 시작하는 버전중 가장 최근의 버전을 설치해줍니다. 설치파일을 실행하면 바로 아래 화면이 뜰텐데 밑에 파이썬이 어느 곳에서든 실행될 수 있게 Add python.exe to PATH 옵션을 반드시 체크해야 합니다. 그다음 INSTALL NOW버튼을 클릭후 설치가 완료되면 해당 창을 종료합니다. 윈..

    [Python] 파이썬이란 무엇인가?

    00장 들어가기 전에 점프 투 파이썬이 세상에 나온지 벌써 20년이 지났다. 책을 처음 집필하던 20년 전의 초보 시절의 마음과 지나온 20년 프로그래밍 경험을 잘 조합하면 더 좋은 책을 만들 수… wikidocs.net 파이썬 - 위키백과, 우리 모두의 백과사전 위키백과, 우리 모두의 백과사전. 이 문서는 프로그래밍 언어에 관한 것입니다. 그리스 신화의 괴물에 대해서는 피톤 문서를, 미사일에 대해서는 파이톤 5 미사일 문서를 참고하십시오. 파이썬Py ko.wikipedia.org 포스팅 이전 이 글은 wikidocs의 점프 투 파이썬 & 위키백과에 파이썬 문서를 참고해서 작성했습니다. 1.파이썬의 탄생 파이썬은 1991년 네덜란드계 소프트웨어 엔지니어 개발자인 Guido van Rossum(귀도 반 로..

    [Haskell] 하스켈 기초반 2강 - 진위값

    자 이제부터 2강에서는 진위값에 대해 알아보는 시간을 가져보겠습니다. 1.동등 비교와 기타 비교들 앞 장에서는 다음 코드처럼 등호를 사용하여 변수와 함수를 정의하였습니다. r = 5 이 코드를 프로그래밍적으로 평가하자면 (스코프 안에서) r을 모두 5로 치환한다는 뜻이 됩니다. f x = x + 3 다음 코드에서는 f다음 숫자에 (f의 인자) 가 붙는 모든 자리에 숫자 3을 더한 것으로 치환됩니다. 그렇다면 수학에서 등호는 중요한 요소가 되지만 미묘하게 다른 방식으로도 쓰이게 되는데 그 예로 x + 3 = 5 이 문제에서 우리의 괸심사는 값 5를 x + 3 으로 표현하거나 x + 3을 5로 표현한다는 것이 아닌 등식 x + 3 = 5를 명제(proposition)로서 보고, 어떤 숫자에 x를 3으로 더하..

    [NestJS] Heroku 에 Nest.js 프로젝트 배포하기

    이번 시간에는 Heroku를 사용해서 Nestjs 프로젝트를 배포하는 방법을 알아보도록 하겠습니다. Heroku에 Nestjs를 배포하는 시간은 단 10분만에 가능합니다. 먼저 간단한 Nestjs 프로젝트를 생성한후 Nodejs 서버를 돌려볼 수 있는 NestJS 프로젝트를 헤로쿠에 배포하려고 합니다. 환경 준비 Nest CLI 설치 Heroku App 생성 Heroku CLI 로그인 먼저 Nestjs 프로젝트를 생성합니다. $ nest new heroku-nest nestjs를 설치하지 않았다면 아래 명령어로 Nest를 먼저 설치해주세요 $ npm install -g @nestjs/cli Heroku에서 구동시 필요한 포트도 수정해줍니다. // src/main.ts async function boots..

    [PHP] Mariadb Nginx를 이용한 MediaWiki 만들기

    요즘들어 개인 공부를 위해 Wiki를 만들고자 하는데 좋은 참고 글이 있어 직접 세팅을 해보고 싶어 글을 작성해봅니다. 서버포럼 - 오픈소스 Wiki 프로젝트 Media Wiki란 무엇인가? 안녕하세요. 달소입니다. 이번에 소개시켜드릴 오픈소스프로젝트는 Media Wiki 입니다. 위키는 불특정 다수가 협업을 통해 직접 내용과 구조를 수정할 수 있는 웹사이트를 말합니다. 대표적인 사 svrforum.com 이번 글은 해당 사이트를 참고해서 제작한 프로젝트이며 상업적 요소로 사용하지 않고 제작하는 방향으로 포스팅하겠습니다. 사전 준비 및 환경 해당 프로젝트는 php 기반으로 준비해두시면 됩니다. OS: Ubuntu 20.04 Nginx 1.18.0 PHP-FPM 7.4.3 MariaDB 10.5.4 Med..

    [Koa] Koa를 사용한 웹서버 만들기 - Koa란?

    1.Koa 란? Koa란 Node.js에서 가장 인기있던 웹 프레임워크인 Express.js(익스프레스JS) 개발 팀이 Koa라는 웹프레임워크를 새로 제작한 프레임워크입니다. Koa(코아)는 기존의 Express의 경우엔 오픈소스의 소유권인 IBM 게열사인 StrongLoop로 이전이 되었으며, 유지보수는 되고 있긴 하지만 장기적으로 보면 이로 인한 인지도를 잃을 확률이 높은 언어입니다. 물론, 워낙 유명한 라이브러리이고 또한 지금 매우 많은 프로젝트에서 Express를 사용하가 있긴 하나, Koa로 마이그레이션 하는 프로젝트도 늘어나는 추세이며 Express와는 크게 차이가 없으며, 훨씬 가볍고, Node.js v7의 async/await기능을 아주 편하게 사용 가능하다는 점 입니다. 2.작업 환경 준..

    [Haskell] 하스켈 기초반 1강 - 변수와 함수

    1강의 모든 예제는 하스켈 소스 파일에 입력하고 그 파일을 GHC로 불러와서 평가할 수 있다. 어떠한 예제든 간에 "Prelude>" 프롬프트는 소스에 포함하는 것이 아니다. 이 프롬프트에서는 GHCi 같은 환경에 코드를 입력할 수 있다는 뜻이며 그 외의 경우에는 코드를 파일에 넣고 그 파일을 실행해야 한다. 1. 변수 (Variable) 앞선 장에서 GHCi를 계산기로 활용했는데, 물론 이런 것은 짧은 계산에나 쓸모가 있고, 더 긴 계산을 하거나 하스켈 프로그램을 작성하기 위해서는 중간 결과들을 보관해줘야 한다. 중간 결과에 이름을 할당하면 그 결과를 보관할 수 있다. 이런 이름을 변수라고 부른다. 프로그램을 실행하면 각 변수는 그 변수가 가리키는 값으로 치환된다. Prelude> 3.141592653..

    [PostgreSQL] Postgresql 강좌 - 6. 테이블 관리 (생성,변경, 삭제)

    PostgreSQL을 배운지 일주일 정도 지났습니다. 어느정도 해보니 재밌고 할만하네용 ㅎㅎㅎ 그럼 이번 시간에 배울 내용은 테이블 관리에 대해 알아보도록 하겠습니다. 테이블 생성 테이블을 생성하기 위해서는 CREATE TABLE table_name을 이용해 테이블을 생성할 수 있습니다. 테이블을 생성할 때는 명령어를 실행하는 USER가 테이블의 소유자가 됩니다. 테이블 생성에 대한 Syntax CREATE TABLE table_name ( [ column_name1 data_type [ COLLATE collation ] [ column_constraint [ ... ] ] column_name2 data_type [ COLLATE collation ] [ column_constraint [ ... ]..

    [PostgreSQL] Postgresql 강좌 - 5.제약 조건

    1.Check constraints Check constraints는 가장 일반적인 제약 조건입니다. 특정 컬럼의 값이 boolean식에 부합되는지 체크합니다. 예를 들어 물건의 가격에 대한 check constraint를 대입할 경우 입니다. products 테이블에서 price 컬럼의 가격이 0보다 큰지를 비교하는 제약조건입니다. CREATE TABLE products ( product_no integer, name text, price numeric CHECK (price > 0) ); 2. Not null Not Null의 제약조건은 지정한 컬럼이 null 값과 갖지 않야아 하는 조건입니다. products 테이블에서 product_no와 name 컬럼은 null값을 가져서는 안된다는 것을 의미합..

    [PostgreSQL] Postgresql 강좌 - 4. 데이터 타입

    Name Aliases Description Bigint int8 signed 8byte 정수형 Bigserial serial8 자동증가 8byte 정수형 bit [ (n) ] 고정길이 bit string bit varying [ (n) ] Varbit 가변길이 bit string Boolean Bool Boolean연산 (true/false) Box 평면 위의 직사각형 상자 Bytea 이진 data ("byte array") character [ (n) ] char [ (n) ] 고정길이 character string character varying [ (n) ] varchar [ (n) ] 가변길이 character string Cidr IPv4 or IPv6 network address Circle..