센스 있게 일하는 BE (백엔드) 개발자 되기 [점핏] 백엔드 개발자 이야기 - 중요한건 인터페이스야 강연을 듣고 제 경험을 빗대어 정리한 글입니다. 중요한건 인터페이스야 🥰 강의 중요 포인트: 개발을 잘하는데에는 도움이 된다. 본론으로 들어가기 전에 제목을 보고 개발에서 사용하는 인터페이스를 생각했으나, 프로젝트 (제품) 에 대한 이야기가 주가 된 이야기를 들으면서 리드 개발자분은 어떤 생각을 하면서 업무에 임하는구나를 새삼 느끼게 되었습니다. 🤝 커뮤니케이션 - 프로젝트를 진행하면서 혼자가 아닌 팀 단위일 때 서로 커뮤니케이션이 중요한데 강연자님께서 경험을 빗대어 해결 과정들을 제시를 해주었습니다. 서버 개발자의 사례로 예를 들어보자면 A (서버 개발자) / B (클라이언트 개발자) 가 있는데 회원가..
전체 글
빠빠빠빰~ 빰빰! 레벨업 했습니다.Rust 언어에 대해 간단하게 정리하기 위해 작성된 포스트입니다. 변수 선언 🦀 fn main() { // rust가 x의 자료형을 유추합니다 let x = 13; println!("{}", x); // 자료형을 명시적으로 지정할 수도 있습니다 let x: f64 = 3.14159; println!("{}", x); // 선언 후 나중에 초기화도 가능하지만, 그렇게 하진 않습니다. let x; x = 0; println!("{}", x); } Rust에서 변수는 let 키워드를 사용하여 선언합니다. 필자가 주력으로 사용하고 있는 언어인 PHP와 동일하게 변수의 자료형을 유추할 수 있다는 공통정이 있습니다. 다만, 변수의 자료형을 유추할 수 있게 하면 다른 개발자들이 내가 의도한 방향을 이해하기 어려울 뿐..
보통 date() 함수를 사용할 때, 표시 시간이 다르면 timezone 설정을 바꾸면 되는데 일반적인 PHP 같은 경우는 php.ini 파일에서 date.timezone 값을 Asia/Seoul 로 바꾸면 한국 시간대로 나타나는데, Laravel 에서는 config/app.php 파일에서 아래 설정을 바꾸어야 합니다. /* |-------------------------------------------------------------------------- | Application Timezone |-------------------------------------------------------------------------- | | Here you may specify the default tim..
보통 라우트에 등록되지 않은 리소스를 요청할 경우 NotFoundHttpException 예외와 같은 NOT FOUND 화면이 노출이 됩니다. 하지만 production (운영) 환경에서는 이런 예외 케이스가 발생한 경우 어떤 부분이 잘못되었는지를 사용자에게 표시하는 별도의 에러 처리 화면을 제공하는 것이 바람직하다고 한다. 라라벨에서는 이를 처리하고자 하는 HTTP 응답 코드에 맞는 에러 화면을 만들 수 있는 기능을 제공한다고 합니다. > laravel new laravel-error 우선 예제를 만들기 위해서 라라벨 프로젝트를 생성합니다. ..... INFO Application key set successfully. INFO Application ready! Build something amazin..
composer와 php를 설치하고 laravel 프로젝트를 생성할 때 아래와 같은 오류가 발생한다. > laravel new example-app _ _ | | | | | | __ _ _ __ __ ___ _____| | | | / _` | '__/ _` \ \ / / _ \ | | |___| (_| | | | (_| |\ V / __/ | |______\__,_|_| \__,_| \_/ \___|_| Creating a "laravel/laravel" project at "./example-app" Info from https://repo.packagist.org: #StandWithUkraine Installing laravel/laravel (v9.3.10) - Installing laravel/..
PHP 스프레드 연산자는 기존 5.6 부터 함수 인자 전달할 때 사용되던 스프레드 연산자(...)가 7.4 버전 부터 Arrray (배열) 에 사용이 가능해지게 되었는데 아래의 예제처럼 배열 안에 [...[0, 1, 2]]과 같이 코드를 작성하면 [0, 1, 2] 로 나타나게 되는 연산자입니다.
SELECT * FROM 테이블 WHERE 조건문 ORDER BY id (FK) DESC OFFSET 페이지 번호 LIMIT 페이지 사이즈 보통 페이징 쿼리는 OFFSET / LIMIT으로 다음과 같은 형태로 데이터를 가져오는데 이 부분에서 한가지 문제가 발생한다. 데이터가 비교적 적을 때는 무슨 문제가 있나 느낌이 오지 않지만 뒤로 갈수록 느려진다는 큰 문제점이 있다. 왜 뒤로 갈수록 늦어지냐? 앞에서 읽었던 행을 다시 읽는다는 문제가 있기 때문이다. 예로 들어서 offset 50,000 / limit 20 이라고 가정한다면 최종적으로 50,020개의 행을 읽어야 한다는 것이다. 행을 50,020개를 읽는다는 부분도 문제지만 20개의 데이터를 얻기 위해 앞의 50,000 개 행이 버려진다는 것이다. 이..