전체 글

코딩 실력을 키우기 위해 농부처럼 하루하루 열심히 공부하는 블로그입니다.
테스트

프론트엔드에서 TDD가 가능할까? (개인적인 생각 및 고충)

목차 프론트엔드에서 TDD는 어느정도?는 가능하다고 생각합니다. 우선 TDD에 대해 저의 생각을 말해보겠습니다. 저는 일단 프론트엔드(리액트 사용)로 TDD를 부분 도입하고자 했던 경험이 있고, 그 과정에서 겪은 감정, 생각들을 공유하려고 이 게시글을 작성합니다. 프로그래밍 개발 방법론에 다양한 방법들이 있고, 일하는 방식에도 여러가지 방법들이 있습니다. 폭포수 모델, 애자일과 같은 것이 있으며, TDD, BDD등 다양한 방법론이 있습니다. 그런 것들의 공통점은 무엇인지 생각을 해보았습니다. 결국에는 고객에게 가치를 전달하기 위해서 생겨난 것이라고 생각합니다. TDD같은 경우에도 테스트 코드를 작성해두면 시간은 걸리지만, 길게 보면 유지보수성이 높으며 문서의 대체재도 가능하며 코드에 자신감을 심어주는 등..

자바스크립트

react-query v3 에서 v4 (tanstack/react-query)로 올릴 때 꼭 주의해야할 사항! (+ 해결방안)

리액트를 사용하는 분들은 server와의 통신을 위해서 많은 state를 관리하기에는 불편함을 느껴서 react-query를 자주 사용하는 것으로 알고 있습니다. 저도 같은 이유로 사용을 하고 있는데 최근에 버전 업을 하면서 생각치 못한 버그가 발견되어서 주의하시라고 게시글을 작성합니다. isLoading이 계속 true가 되는 상황이 생긴다. 우선 react-query -> tanstack/react-query 로 바꾸면 Query key가 배열로 들어가야하는 것은 어차피 오류가 나니까 수정하면 됩니다. 하지만 제일 중요한 것은 isLoading의 상태입니다. 보통 isLoading을 이용해서 true일 때 로딩 컴포넌트를 보여주는 형식으로 이용을 하시는데, 버전업을 하시게 된다면 isLoading이 ..

자바

Java 데이터 타입 (실수형)

저번에는 정수형에 대한 데이터 타입을 알아보았는데, 이번에는 실수입니다. 데이터 타입은 어떤 것이 있을까? 두개의 데이터 타입이 존재하는데 float, double입니다. float는 4바이트의 공간을 차지하고, double은 8바이트의 공간을 차지합니다. 컴퓨터에서 실수는 어떻게 표현이 될까? 고정 소수점 방식 컴퓨터는 저희에게 익숙한 10진수 숫자 대신 2진수를 사용합니다. 정수는 2진수로 나타내기에 문제가 없을 것 같은데 실수는 소수점이 존재하는데 어떻게 표현할까요? 첫 번째로 3.14 와 같은 숫자가 있다면 정수인 3과 소수인 14를 나눠서 정수부, 소수부로 나누는 방식이 있을 것 같습니다. 3은 2진수로 0011, 14는 2진수로 1110 이므로 0011.1110 으로 표현할 수 있을 것입니다...

자바

Java 데이터 타입 정리 (정수형)

Javascript만 공부하다가 최근에 Java를 공부하고 있는데, 기존에 쓰던 언어는 많이 자유로워서 데이터 타입을 빡세게 잡지는 않아서 변수를 선언할 때 메모리에 대해서 생각을 안하고 리터럴의 크기가 어느정도인지 생각을 안하고 코드를 작성했었습니다. Java를 공부하면서 느끼는 점이 내가 참 부족했었구나라는 생각이 들었다. 그래서 정리를 해보려고 합니다. 정수 자료형 (Data-Type) 정리 자료형 바이트 크기 수의 범위 byte 1 -2^7 ~ 2^7 -1 short 2 -2^15 ~ 2^15 -1 int 4 -2^31 ~ 2^31 -1 long 8 -2^63 ~ 2^63 -1 변수를 선언할 때 그 변수가 차지할 메모리의 크기를 지정해줘야합니다. 만약에 1바이트만 사용해도 될 변수인데, 4바이트,..

타입스크립트

타입스크립트 덕타이핑, 초과 프로퍼티 검사

리액트 + 타입스크립트 사용 시 Props로 전달할 때 객체 리터럴을 넘기게 되면 인터페이스에 정의 되지 않은 프로퍼티가 들어있을 때 에러가 나는 반면에, 변수에 담아서 넘기게 되면 인터페이스에 정의하지 않은 프로퍼티를 넣더라도 에러가 나지 않는 상황 발생. 이러한 현상이 왜 발생하는 것인지 알아보겠습니다. 또한 해결방법을 몇가지 공유 하겠습니다. 덕 타이핑이란 - 컴퓨터 프로그래밍 분야에서 덕 타이핑(duck typing)은 동적 타이핑의 한 종류로, 객체의 변수 및 메소드의 집합이 객체의 타입을 결정하는 것을 말합니다. 클래스 상속이나, 인터페이스 구현으로 타입을 구분하는 대신 덕 타이핑은 객체가 어떤 타입에 걸맞은 변수와 메소드를 지니면 객체를 해당 타입에 속하는 것으로 간주합니다. 만약 어떤 새가..

초보가 왕초보에게 알려주는 웹 프론트엔드

!DOCTYPE HTML의 의미

현재 HTML 작성할 때 기본적인 구조는 다음과 같습니다.

초보가 왕초보에게 알려주는 웹 프론트엔드

프론트엔드 개발자는 어떤 일을 할까? (초보가 왕초보에게 알려주는 프론트엔드)

안녕하세요! 초보가 왕초보에게 알려주는 프론트엔드 두 번째 포스팅입니다. 프론트엔드에 대해서 배우기 전에 프론트엔드 개발자는 어떤 일을 하는 지 알아보고 가는 시간을 가지면 좋을 것 같습니다. 우선 프론트엔드를 뒤로하고, 개발자에게 대해서 이야기 해보겠습니다. 저는 개발자가 배우는 지식이 “공학” 이라는 학문과 비슷하다고 생각합니다. "공학"이라는 것은 어떤 것인가요? 저는 처음 "공학"에 대해서 배웠을 때 이렇게 들었습니다. 공학이란, 세상의 문제들을 해결하기 위한 학문이다. 저도 이 말에 동의를 했기에 암기하려 하지 않았는데, 아직도 외우고 있네요. 공학은 세상의 문제들을 해결하기 위해서 존재하는 학문입니다. 그러면 개발자는 어떤 문제들을 해결할까요? 개발자는 컴퓨터에서 일어나는 문제들을 해결하기 위..

초보가 왕초보에게 알려주는 웹 프론트엔드

초보가 왕초보에게 알려주는 웹 프론트엔드개발 시작!

안녕하세요. 오늘부터 초보가 왕초보에게 알려주는 웹 프론트엔드를 연재하려고합니다. 우선 제 소개를 하자면, 저는 비전공자로 프론트엔드 개발자로 근무한지 1년 정도 되었습니다. 코딩을 시작한 지는 거의 2년정도 되었는데, 제가 지식이 많지는 않아서 부족할 수 있지만, 열심히 준비해보겠습니다. 이 시리즈를 준비하게 된 계기는 단순한 질문에서 시작했습니다. 여러분들에게 질문을 하나 하겠습니다. "내가 어떤 것에 대해 '안다'라고 말할 수 있는 것은 어떤 의미일까요?" 사람마다 의견이 다르겠지만, 저는 어떤 것을 '안다'라고 말할 수 있으려면 '어떤 것'에 대해 모르는 사람들에게 설명할 수 있을 정도는 되어야 한다고 생각합니다. 매일 같이 공부와 근무를 반복하던 와중에, 저는 이런 생각이 들었습니다. "과연 내..

딩코농부
코딩농장