일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- linux
- docker
- php
- For
- node.js
- javascript
- SQL
- CentOS
- fastapi
- python
- rabbitmq
- Redis
- laravel
- Babel
- Machine Learning
- AWS
- Node
- Backbone.js
- Redux
- 기초 수학
- 블레이드 템플릿
- mariadb
- nginx
- NCP
- React
- Go
- nodejs
- webpack
- Switch
- deep learning
- Today
- Total
목록전체 글 (201)
개발일기

0. 쿼리 빌더란? 개념 : 데이터베이스의 쿼리를 직접입력하는 것보다 간단한 방법으로 데이터베이스 안에 있는 내용을 조작할 수 있다. 장점 : 복잡한 쿼리문을 간단하게 작성할 수 있다. SQL구문이 아닌 메서드를 활용하여 작성하는 것이기 때문에 입문 난이도가 낮다. 단점 : JOIN 등의 복잡한 쿼리문을 작성할 때, 활용하기 어렵다. SQL 프로시저를 활용하는 상황일 때, ORM을 활용하기 어렵다. -- 기본 활용법 -- DB::table('table_name') $modelName:: table의 파라미터로 테이블명을 입력하여 사용하는 방법과 아랫줄처럼 생성된 모델객체를 활용하여 테이블을 사용할 수 있다. 모델 객체를 활용하기 위해서는 모델을 따로 생성해줘야 한다. 1. Select DB::table(..

지난 포스팅에 이어 블레이드 템플릿의 조건문에 대해 알아보겠다. 1. @if 대부분의 언어들과 조건을 지정하는 방법이 동일하다. @if 뒤에 조건을 지정한 후, 조건에 부합할 때 실행할 명령어들을 다음 줄에 서술하면 된다. 2. @elseif if 조건을 충족시키지 못했을 경우, 그에 대한 대안적인 조건을 지정하는 것이다. 예를 들어 number라는 변수의 값이 1이 아닌 3일 경우, if조건을 충족하지 못한다. 그렇기 때문에 다음 조건문은 elseif로 이동하여 조건검사를 진행하게 된다. 3. @else @if와 @elseif 조건이 모두 일치하지 않은 경우, 실행되는 부분이다. 하지만 그 전에 선언되었던 if와 elseif 중에 충족하는 것이 있으면 else를 실행시키지 않는다. 4. @endif @..

지난 포스팅에 이어 블레이드 템플릿의 반복문에 대해 알아보겠다. 1. @for 템플릿엔진이 아닌 프로그래밍언어를 통해 for문을 사용할 때는 이런 식으로, 초기 변수값과 증감값, 반복범위를 지정해준 후, 한 번 실행될 때 마다 실행될 코드를 작성하는 방식으로 반복문을 작성한다. 블레이드 템플릿에서도 for 반복문을 사용하는 방식은 이와 비슷하다. @for($i=0; $i < 10; $i++) good @endfor 아마 이미 눈치를 챘을 것이다. 명령어 앞에 @만 붙이면 된다는 것을 말이다. 하지만 중요한 것은 @endfor도 붙여줘야 한다는 것이다. 다른 언어의 for문과 다른점으로는 {} 중괄호가 붙어있지 않다는 것이다. 중괄호는 여러줄을 반복할 때, 반복문의 시작과 끝을 명시해주는 것이지만 블레이드..

지난번 포스팅은 라라벨 프레임워크 관련하여 포스팅을 다루었다. 요번 포스팅에는 라라벨 프레임워크에서 제공해주는 템플릿 엔진인 블레이드 템플릿에 대해 포스팅하고자 한다. 리액트, 뷰 등의 화면쪽을 담당하는 다른 언어를 사용해도 되지만, 자체적으로 제공되는 템플릿엔진을 사용하는 이유는 화면 코드안에서 php코드를 활용할 수 있다는 장점이 존재하기 때문이다. 0. 파일 생성법 기존 php파일은 index.php와 같이 파일명을 지정한 후 생성하게 된다. 하지만 블레이드 템플릿은 index.blade.php라는 형식으로 지정을 하게 된다. 기존 php파일에서 blade라는 문자가 추가된다. 1. @section과 @yield 블레이드 템플릿은 레이아웃을 나눌 수 있다. 레이아웃을 나눠 여러개의 컴포넌트로 구성하..

1. 프레임워크를 사용하는 이유는??? 다양한 프로그래밍 언어를 사용하다보면 체계적인 구조를 잡고, 추후에 유지보수를 쉽게하기 위해 프레임워크를 사용하곤 한다. 그 중에서 PHP라는 언어를 대표하는 프레임워크에 라라벨 프레임워크가 있다. PHP라는 언어가 하향세를 띄고 있고 대부분의 개발자들이 다른 언어를 사용하기 있기에 프레임워크의 기능이 상대적으로 빈약할 것이라고 추측하였으나, 의외로 많은 기능을 탑제하고 있어 놀랐다. API 통신, 리액트, 뷰 등 프론트3대장에 관한 기술적인 부분도 지원을 하기에 한 번 쯤은 관심을 가지고 사용해봄직한 것 같다. 2. MVC패턴 라라벨은 기본적으로 MVC패턴 구조로 이루어져 있다. MVC패턴에 대해 간략하게 설명하자면, 사용자가 컨트롤러를 통해 요청을 하면 모델을 ..

요번 포스팅은 레디스 설치 및 세팅에 이은 간단한 레디스 명령어에 관한 내용을 다룰 것이다. 필자는 php8.0을 사용하고 있다. 또한 라라벨 8버전을 사용하기 있기에 이보다 아랫버전을 사용하고 있을 경우에는 에러가 날 수 있다. 버전이 올라가면서 약간씩 달라졌기 때문이다. 1. 삽입 1-1. Set 명령어 레디스에서 기초가 되는 것이 바로 Set이다. Set을 통해 String타입의 문자를 저장할 수 있다. use Illuminate\Support\Facades\Redis; Redis::set('keyname', 'values'); 이것이 set을 사용하는 방법이다. 매우 간단하다. use를 통해 설치된 Redis를 import한 후, 명령구문을 쓸 때, Redis라고 입력하여 레디스를 사용한다고 명시..

1. Redis란 무엇인가? Redis는 다양한 NoSQL 중 한 종류이다. 기존의 RDBMS (Oracle, Mysql 등)같은 관계형 데이터베이스는 값들을 테이블 형식으로 지정한 후, 값을 저장하는 타입을 뜻한다. 하지만 NoSQL은 Key, Value 형식으로 값들을 저장한다. 이러하게 값을 저장하기에 사용하기에 쉽고, 문법구문도 간단하여 SQL 처음 접하는 사람들이(?) SQL의 맛을 보기 가장 좋은 방법이기도 하다. 2. Redis를 활용하는 이유? Redis를 활용하는 이유는 여러가지가 있을 수 있겠지만, 가장 주된 요소로는 속도이다. 관계형 데이터베이스에서 테이블에 속해있는 값들을 가져오는 속도와 Redis에 저장되어져 있는 값을 가져오는 속도를 비교해 보았을 때 관계형 데이터베이스보다 훠얼..

1. AWS S3를 활용한 이유??? 개인 프로젝트를 진행하면서 Quill 에디터를 활용하여 포스팅을 할 수 있는 기능은 구현하였다. 이 기능에는 이미지를 첨부할 수 있는 기능이 있는데 이 에디터를 통하여 이미지 첨부 시, Base64타입으로 경로가 변형되어 저장이 되는 것을 확인하였다. 여기서 간단하게 Base64에 대해 설명하자면 ASCII영역의 문자들로 문자열을 바꾸는 인코딩 방식을 뜻한다. 이 방식을 통하여 인코딩하여 업로드를 진행할 시, 문자열의 길이가 상상할 수 없을 만큼 많아지는 것을 확인할 수 있다. 간단한 이미지 파일 하나를 첨부하는데 48000글자로 변형이 되어 추가되었던 것을 겪어보았다. 이러한 방식으로 이미지를 업로드하여 DB에 저장할 시, DB가 많이 아파?할 수도 있다는 것을 느..