백엔드

    [Python] 파이썬 4강 - 파이썬 프로그래밍의 기초, 자료형 - 문자열 자료형 - 2.문자열 인덱싱과 슬라이싱

    이번 시간에는 파이썬의 기초 문자열 자료형에 문자열 인덱싱과 슬라이싱에 대해 알아 보겠습니다. 문자열 인덱싱이란? >>> a = "Life is too short, You need Python" 문자열 인덱싱은 위 코드에서 변수 a에 저장한 문자열의 각 문자마다 번호를 매겨 보면 다음과 같습니다. Life is too short, You need Python 0 1 2 3 0123456789012345678901234567890123 "Life is too short, You need Python" 문자열에 L부분은 첫번째 자리를 뜻하는 숫자 0, 바로 다음 i는 1 이런 식으로 계속 번호를 붙인 것이고 중간 short 부분에 s는 12가 됩니다. >>> a = "Life is too short, You..

    [Java] 자바의 변수와 자료형

    이번 시간에는 Java의 변수와 자료형에 대해 알아보도록 하겠습니다. 자바의 변수 자바의 변수는 쉽게 말하자면 변하는 수입니다. 프로그램이란 데이터를 조작하여 원하는 결과를 얻는 자동화 기계입니다. 데이터에 이름을 붙이면 바로 변수가 됩니다. 변수와 데이터(자료형)은 서로 뗄레야 뗄수 없는 관계인데, 변수는 데이터형이 지정되야 사용할 수 있습니다. 변수를 비트로 보면 PC에서는 최소 8byte ~ 64byte까지의 변수가 있습니다 데이터형에 따라서 비트 수는 차이가 발생합니다. 자바에서는 C언어와 같은 정적(static) 언어라고 합니다. 정적이라는 뜻은 변수의 데이터에 엄격하다는 의미입니다. 이와는 반대로 자바는 어려운 언어일 수도 있으나 그렇지만은 않은 언어입니다. 프로그래머가 자신의 데이터들의 속성..

    [Java] 자바 개발환경 세팅

    이번 시간에는 Java 개발환경 세팅을 알아보도록 하겠습니다. Java 설치 해당 버전은 윈도우 버전을 기준으로 리눅스 버전은 추후에 업로드 하도록 하겠습니다. IntelliJ IDEA – Java 및 Kotlin을 위한 최고의 IDE www.jetbrains.com 먼저 자바를 다운받기위해 자바를 기반으로 하는 에디터를 다운 받으셔야 합니다. 다운로드 페이지로 가면 Ultimate 버전과 Comunity 버전이 있습니다. 하나는 유로로 제공하는 IDE 또 하나는 무료로 제공하는 에디터 입니다. 학습과 교육목적으로 하는 버전은 커뮤니티 버전을 쓰고 실무나 작업을 할때에는 Utimate 유로 버전을 사용합니다. 설치 파일을 클릭하면 해당 화면에서 설치할 경로를 설정해주고 위 화면에서만 체크된거를 체크해줍니..

    [Python] 파이썬 3강 - 파이선 프로그래밍의 기초 , 자료형 - 문자열 자료형 - 1.문자열 연산하기

    이번 시간에는 파이썬의 기초 문자열 자료형에 대해 알아보도록 하겠습니다. 문자열이란? 문자열(String)이란 뜻 그대로 문자, 단어 등으로 구성된 문자들의 집합을 의미합니다. 예를 들어 다음과 같은 것들이 바로 문자열입니다. "Life is too short, but we need Python" "a" "123" 위 문자열을 보면 모두 큰따옴표(" ")로 둘려싸여 있습니다. "123은 숫자인데 왜 문자열일까"라는 의문이 들수 있는데 따움표로 둘러싸이면 모두 문자열로 보면 됩니다. 문자열을 만들고 사용하는 방법 위 예제에서는 문자열을 만들때 큰 따옴표(" ")만 사용했지만 이 외에도 문자열을 만드는 방법은 3가지가 더 존재합니다. 파이썬에서 문자열을 만드는 방법으로는 총 4가지가 있습니다. 1.큰 따옴표..

    [Haskell] 하스켈 기초반 3강 - 타입의 기초

    3강에서는 하스켈의 타입에 대해 알아보겠습니다. 프로그래밍에서 타입은 비슷한 값들을 범주로 묶는 역할을 합니다. 하스켈에서 타입 체계는 코드 상에 실수를 줄여주는 강력한 수단이 됩니다. 프로그래밍은 여러 종류의 개제(entity)를 다루는 일들을 합니다. 두 수를 더하는 경우를 생각해보면 2 + 3 2와 3은 무엇인가?라고 묻는다면 당연하게 숫자입니다. 가운데 더하기 기호는 무엇인가? 분명 숫자는 아닌데 이것을 숫자 두 개를 가지고 할 수 있는 연산 즉, 덧셈을 뜻합니다. 만약 본인의 이름을 물어보고 "Hello"라고 답하는 프로그램을 생각해 봅시다. 여러분의 이름도, Hello라는 단어도 숫자도 아닌데 그럼 이것들은 어떻게 설명할 수 있을까요? 우리는 모든 단어와 문자을 통들어 텍스트라고 부를 수도 있..

    [Rust] Rust 개념 - 1.보편적인 프로그래밍 개념 - 변수와 가변성

    이번 시간부터는 Rust에 보편적인 개념을 배워보도록 하겠습니다. 변수와 가변성 Rust에서 기본 변수는 불변성입니다. 이것은 Rust 가 제공하는 안전성과 손쉬운 동시성이라는 장점을 취할 수 있게 코드를 작성하게끔 강제하는 요소중 하나입니다. 하지만 여전히 가변변수를 사용하고 싶을텐데 어떻게 그리고 왜 Rust가 불변성을 애호하길 권장하는지 알아보면 그런 생각을 포기할 수 있을 것 입니다. 변수가 불변성일 경우 일단 값이 이름에 bound되면 해당 값을 변경할 수 있는데 시험 삼아서 variables 라는 프로젝트를 만들어 보겠습니다. cargo new --bin variables Filename: src/main.rs fn main() { let x = 5; println!("The value of ..

    [Rust] Rust 추리 게임 만들기

    이번 시간에서는 Rust로 추리 게임을 만들어보는 시간을 가져보도록 하겠습니다. 새로운 프로젝트 시작 새로운 프로젝트를 만들기 위해 이전에 Hello Cargo를 하던 프로젝트 폴더 새로운 프로젝트를 생성하도록 하겠습니다. Cargo를 이용해 새로운 폴더를 만들어 줍니다. $ cargo new reasoning_game --bin $ cd reasoning_game 첫 명령 문 cargo new는 프로젝트의 이름을 첫번째 인자로 받습니다. --bin 플래그는 Cargo가 바이너리용 프로젝트를 생성하도록 도와주는 명령어입니다. 두번째 명령문은 작업 디렉토리를 새로운 디렉토리로 이동하는 명령어 입니다. 생성한 프로젝트에 Cargo.toml 파일을 살펴봅시다. [package] name = "reasoning..

    [PostgreSQL] Postgresql 강좌 - 8.DML

    INSERT DML 사용의 예를 들기 위해 먼저 products 테이블을 생성합니다. products테이블에 integer형의 product_no, text형의 name,numeric형의 price컴럼을 생성합니다. CREATE TABLE products( product_no integer, name text, price numeric ); 테이블이 처음에 생성될 때는 테이블에 데이터가 하나도 포함되어있지 않습니다. 그래서 테이블 생성후에 테이터를 삽입해야 합니다. 테이블을 한번에 한 열씩 입력하게 되는데 이때 INSERT를 사용해 열을 생성합니다. products테이블에 product_no는 1, name은 Cheese, price는 9.99를 삽입합니다. INSERT INTO products VALU..

    [RUST] RUST 설치하기

    이번 시간에는 Rust라는 언어를 직접 설치하는 방법을 알아보도록 하겠습니다. [Rust] Rust란? 러스트(Rust)라는 프로그래밍 언어는 "안전하고, 병렬적이며, 실용적인"언어로 디자인되었으며 동시에 Rust를 사용해서 효율적인 시스템 소프트웨어를 빌드할 수 있고 순수 함수형 프로그래밍,액 koras02.tistory.com Rust는 아주 예전 포스팅에서 언급했던 안정적이고, 병렬적이며 실용적인 언어로 디자인된 언어입니다. Rust 설치 Rust를 설치하기 위해서는 3가지 OS에 따라서 설치방법이 다릅니다. rustupLinux 또는 macOS 설치 Linux or macOS에서 설치하기 위해서는 터미널에서 다음 명령어를 입력합니다. $ curl --proto '=https' --tlsv1.3 h..

    [ruby] Ruby 튜토리얼 1 - ruby 출력과 변수 주석처리법

    이번시간에는 Ruby를 출력하고 Ruby에서 변수를 사용하는 법을 알아보겠습니다. sudo apt-add-repository -y ppa:rael-gc/rvm sudo apt-get update sudo apt-get install rvm 먼저 ruby를 사용하려면 rvm 을 설치해야 합니다. 위 3개 명령어로 rvm을 설치해줍니다. sudo usermod -a -G rvm $USER 그리고 위 명령어로 권한을 등록해 줍니다. 그후 cmd를 재부팅 후에 rvm install ruby 위 명령어로 ruby를 설치해줍니다. Ruby 출력 하기 루비는 Perl, Python과 같이 interpreted langauge(인터프리터 언어) 이라 컴파일 과정없이도 해석기를 이용해 즉시 실행하고 그 결과를 확인 해볼..

    [PostgreSQL] Postgresql 강좌 - 7.SELECT 문법

    SELECT 문법 SELECT는 한 개 또는 여러 개의 테이블의 열을 검색할 수 있습니다. SELECT의 일반적인 형태는 다음과 같습니다. SELECT [ ALL | DISTINCT [ ON ( expression [, ...] ) ] ] [ * | expression [ [ AS ] output_name ] [, ...] ] [ FROM from_item [, ...] ] [ WHERE condition ] [ GROUP BY expression [, ...] ] [ HAVING condition [, ...] ] [ WINDOW window_name AS ( window_definition ) [, ...] ] [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ..

    [Koa] Koa를 사용한 웹 서버 만들기 - Nodemon 사용하기 koa-router 사용하기

    이번 시간에는 Koa를 사용해서 서버를 자동으로 실행해주는 Nodemon 요청이 들어왔을 때, 경로에 따라 다른 작업을 할 수 있게해주는 koa-router 를 배워보도록 하겠습니다. 1.Nodemon 사용하기 서버 코드를 변경할 때마다 재시작 해야 하는데 이런 번거로움을 Nodemon이 해결해줍니다. 먼저, Nodemon 라이브러리를 설치해줍니다. yarn global add nodemon 설치후 다음 명령어를 통해 서버를 실행하면 코드가 바뀔때마다 자동으로 재시작 해줍니다. $ nodemon --watch src/ src/index.js 위 방법이 안돼면 아래 방법 처럼 해봅니다. $ npx nodemon src/index.js 위 명령어를 해석하자면, src/ 디렉토리에서 코드변화가 감지되면 재시작..