전체 글

전체 글

    [Haskell] 하스켈 이란? 함수형 프로그래밍

    하스켈 이란? 하스켈(Haskell)은 순수 함수형 프로그래밍 언어입니다. 함수형 프로그래밍 언어란 컴퓨터에게 해야하는 작업을 알려주는 것이 아닌(명령어 프로그래밍 언어), 어떤 작업인지를 알려주는 것이 바로 언어이다. 예를 들어 팩토리얼 1부터 N까지의 숫자를 모두 곱하는 값을 구하는 작업이라 알려주는 것처럼 이러한 작업들에 대해서 함수로 표현할 수 있다. 함수형 프로그래밍에서는 변수의 값을 변경할 수 없다. 그렇기 때문에, 함수가 하는 일은 주어진 작업에 한에서 계산하고 그 결과값을 반환해주는 일만 하면 된다. 절차형 프로그래밍 언어처럼 변수의 값을 변경할 수 없고 함수는 그 결과를 반환하는 일만 하면 되므로 주어진 매개변수가 동일할 시 동일한 결과를 보장하는 특징도 가진다(참조 투명성) 하스켈은 정..

    [PostgresQL] Postgresql 강좌 - 1. USER 조회와 생성 수정 삭제

    자 그러면 postgresql도 설치했으니 이번에는 psql을 이용해 유저를 생성하고 수정하고 삭제 조회 하는 기능을 알아보도록 하겠습니다. DATABASE에서 USER는 DATABASE를 사용하는 주체로 OS를 운영하는 USER와 분리되어 있습니다. USER는 소유하고 있는 DATABASE안에 OBJECT(오브젝트)의 권한을 변경하고 제어할 수 있습니다. 1.USER 조회하기 유저를 생성하기 위해서 처음으로 해야할 과정은 먼저 DATABASE안에 SUPERUSER(관리자)권한을 가지고 있어야 합니다. PostgreSQL에 SUPERUSER와 default 계정은 postgres 입니다. SELECT * FROM PG_SHADOW; 또는 \du 위 SELECT * FROM PG_SHADOW; 명령어는 현..

    [MySQL] MySQL 이해 및 실습 과정

    1.MySQL 이해 밎 실습 과정 들어가기전 다시한번 복습해보면 MySQL은 세계에서 가장 많이 사용하고 있는 오픈 소스 관계형 데이터 베이스 관리 시스템 MySQL은 오라클사가 소유하며, 불확실한 라이선스 정책으로 인해, 동일 소스를 기반으로 MariaDB(마리아DB) 가 파생되었다.(MySQL과 거의 유사 MariaDB가 오픈소스 라이센스를 따르고 있다고 보면 된다.) MySQL 설치 - 실습1 sudo apt-get update sudo apt-get install mysql-server - 설치 중간 비밀번호 설정시 주의!! - 만약 vi 명령이 없다면 다음과 같이 vi 설치 및 사용법 숙지 sudo apt-get install vim sudo vim /etc/mysql/mysql.conf.d/m..

    [MySQL] RDBMS(Relational Database Management System) 이해

    RDBMS(Relational Database ManageMent System) 이해 1. 데이터 베이스란? 데이터 베이스는 체계화된 데이터 모음으로 여러 응용 시스템들의 통합된 정보를 저장해 운영해 나갈 수 있는 공용 데이터 묶음이다. 논리적으로 연관된 하나 이상의 자료 모음으로, 데이터를 고도로 구조화함으로써 검색/갱신등의 데이터 관리를 효율화시킨다. DBMS: 데이터를 관리하는 시스템 테이터 베이스의 장점 1.데이터 중복을 최소화 2.데이터 공유 3.일관성, 무결성, 보안성 유지 4.최신 데이터 유지 5.데이터의 표준화 가능 6.데이터의 논리적, 물리적 독립성을 가짐 7.용이한 데이터 접근 8.데이터 저장 공간 절약 데이터베이스의 단점 데이터베이스의 전문가가 필요 많을 비용을 부담 시스템의 복잡화 ..

    [Tistory] 티스토리 무료 채팅(상담) 기능 추가하는 방법

    고객 획득 메신저 - 채널톡 사이트 방문객을 놓치지 마세요. 상담을 늘려서 영업기회를 높이거나, 자동화된 맞춤형 메시지로 전환율을 높일 수 있습니다. channel.io 블로그 운영을 위해서는 채널톡을 하나 추가해서 운영하는 것도 좋은 방식이다. 요즘 부트 캠프 사이트나 여러 사이트들에서는 고객과의 소통을 위해 채널톡을 넣어서 일종의 고객센터 역할을 담당하는 기능을 추가하고 있다. 먼저 상단에 있는 채널톡 사이트에 들어가 이메일을 입력해주고 무료료 시작하기 버튼을 클릭해준다. 채널톡 이메일은 본인이 가입한 블로그에서 사용하는 이메일을 넣어주면 된다. 버튼 클릭후 모달창이 뜨는데 바로 시작하기를 눌러 다음 창으로 넘어가준다. 약관 동의에 대해 클릭후 가입하기 버튼을 눌러준다. 이제 채널을 만들 수 있는데 ..

    [MySQL] DATABASE2 MySQL - 1. mySQL

    인류는 오랫동안 컴퓨터를 이용해 정보를 관리하기 위해 수많은 개발과정과 무수한 노력을 끝에 file(파일)이라고 하는 위대한 정보 관리 도구를 고안한다. 파일은 사용하기 쉽고 어디에나 있으면서 전송하기 쉽기에 지금도 사용하고 있고 미래에서도 사용할 것이다.이번 시간에 배우는 Database에 정보도 바로 file에 저장한다. 처음에는 File 만으로도 행복했지만 정보가 폭발적으로 증가하고 다양해지면서 파일 만으로는 정보를 효과적으로 입력 저장 출력하는것이 여려워진다. 즉 데이터를 잘 정리 정돈해 필요할 때 쉽게 꺼내 쓰고 싶다는 욕심이 생겨난 것. 1960년대 부터 파일의 한계를 극복하기 위한 시도가 본격적으로 시작되어 몇몇 거대 기업들과 천재적인 엔지니어들은 누구나 쉽게 데이터를 정리정돈 할 수 있는 ..

    [PostgresQL] 우분투 PostgreSQL 설치

    1. 기본 설치 확인 kim@kim-ThinkPad-X1-Carbon-Gen-8:~$ aptitude show postgresql | grep State State: not installed 2. postgreSQL 설치 kim@kim-ThinkPad-X1-Carbon-Gen-8:~$ sudo apt-get install postgresql 패키지 목록을 읽는 중입니다... 완료 의존성 트리를 만드는 중입니다 상태 정보를 읽는 중입니다... 완료 다음 패키지가 자동으로 설치되었지만 더 이상 필요하지 않습니다: libfwupdplugin1 libllvm11 linux-headers-5.14.0-1027-oem linux-headers-5.4.0-104 linux-headers-5.4.0-104-generi..

    [Ruby] 우분투 rvm + ruby 설치 + Ruby on Rails

    Ruby를 설치하기전 rvm을 사전 설치해야한다. 1. 개요 1-1.우분투 ruby-rvm 설치하기 1-2.우분투 RVM 설치 과정 수행 완료시 rvm, ruby, gem 설치 완료 2. rvm 설치 확인 GitHub - rvm/ubuntu_rvm: Ubuntu package for RVM Ubuntu package for RVM. Contribute to rvm/ubuntu_rvm development by creating an account on GitHub. github.com 먼저 우분투에서 rvm을 설치해야한다. 위 사이트에서 우분투 용 rvm을 설치한다. sudo apt-add-repository -y ppa:rael-gc/rvm sudo apt-get update sudo apt-get in..

    [Ruby] Ruby란

    Ruby Ruby란 무엇일까? Ruby를 사용하고 있는 개발자들을 Ruby가 아릅답고 기교가 뛰어난 언어이기 떄문이라고 설명한다. 하지만 이 말로는 부족한데 어떠한 점이 Ruby를 이처럼 매력적인 언어로 만드는 것일까? Ruby를 개발한 마츠의 목표 Ruby는 균형잡힌 언어이다. Ruby를 만들 유키히로 마츠모토(일명 마츠)는 그가 좋아하는 언어인 Prel, Smalltalk, Effel, Ada, Lisp를 섞어 명령형 프로그래밍 언어이자 함수형 언어인 새로운 언어를 만들었다. 그는 Ruby를 단순히 만드는 것이 아닌 자연스럽게 만들려고 노력한다라고 말하고 있다. Ruby는 우리의 삶을 반영하고자 한다는 뜻이다. Ruby의 성장세 Ruby는 1995년 처음 공개된 이후 전세계에 많은 Ruby 개발자가 ..

    [PostgreSQL] PostgresSQL이란?

    PostgresQL이란? postgreSQL은 오픈 소스 객체-관계형 데이터베이스 시스템(ORDBMS)으로, Enterprise급 DBMS의 기능과 차세대 DBMS에서 볼 수 있을 법한 기능들을 제공합니다. 약 20여년 동안 오랜 역사를 갖고 있는 PostgreSQL은 다른 관계형 데이터베이스 시스템과 달리 연산자, 복합 자료형, 집계 함수, 자료형 변환자, 확장 기능 등 다양한 데이터베이스 객체를 사용자가 임의로 만들 수 있는 기능을 제공함으로써 마치 새로운 하나의 프로그래밍 언어처럼 무한한 기능을 손쉽게 구현할 수 있습니다. PostgreSQL은 무료로 제공되고 있으며 1985년 개발을 시작해 1996년에 첫 출시가 된 언어입니다. Oracle(오라클) 개발자들이 대거나와 PostgreSQL 개발에 ..

    [Ubuntu] MongoDB 설치하기 (ubuntu 20.04)

    $ sudo systemctl start mongod 이번시간에는 Ubuntu 환경에서 mongoDB를 설치하는 방법을 알아보겠습니다. mongoDB를 설치하기전 우분투 버전을 확인해야 합니다. $ lst_release -dc 터미널 창에 위 명령어를 입력해 Description 부분을 확인하면 현재 설치된 우분투 버전을 확인할 수 있습니다. 패키지 관리 시스템에서 사용하는 public key 가져오기 터미널에서 다음 명령어를 실행해 https://www.mongodb.org/static/pgp/server-4.4.asc 에서 MongoDB public GPG key를 가져옵니다. $ wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo..

    [Doker] Docker를 사용한 React 환경 구성

    어드민 웹 배포 지금까지는 누가 접근하더라도 문제가 없는 공용 웹만을 개발해 배포했었지만, 어떤 서비스의 어드민을 직접 배포하는 적은 없었습니다. 그렇기에 하나의 서비스를 이용해서 어드민을 직접 배포할 수 있는 Docker를 알아보자는 취지에서 Docker 포스팅을 작성하고자 합니다. Docker를 사용하면 굳이 어드민을 추가하지 않고 Aws처럼 비용을 사용하지않기에 비용을 아끼면서 보안적인 Docker를 선택했습니다. 필요에 따라서 간편하게 run/stop도 할 수 있고.. 로컬환경에서 무언가를 하기에는 가장 적합하다 판단되었습니다. Dockerfile 작성 리액트 환경이 구성되었다면, 해당 프로젝트 환경을 이미지로 도커라이징 하기 위해 도커 파일을 생성해야한다. Docker 컨테이너를 생성하기 위해서..