본문 바로가기

개발163

[오픈소스][React] react-custom-swipe 모바일 앱을 그대로 웹으로 옮기면서 좌우 스와이프를 통한 인피니티 스크롤을 구현해야했다. 관련해서 여러 제약 조건들을 충족 시켜주는 오픈소스 라이브러리를 찾을 수 없어서 스와이프 기능을 분석하고 하드코딩으로 개발을 하였는데 해당 기능에 흥미를 느껴서 오픈소스로 개발해서 정리를 해보고 싶은 생각으로 개발 해보았다. 개인적으로 찾아본 결과로는 기존 웹사이트나 관련 오픈소스의 경우 스와이프에서 레이지로딩이나 페이지네이션을 지원하는 케이스를 발견하지 못했다.(핀터레스트 등) 보통 스와이프 기능이라고 부르는 스와이프 모션과 플립 모션을 감지하여서 데스크탑과 모바일에서 스와이프 기능을 제공해준다. 또 내부 아이템들이 페이지네이션처럼 비동기적으로 추가되어도 index 쿼리스트링을 통해서 데이터(item)의 index.. 2022. 8. 3.
기술부채에 대하여. 개발자는 좋은 소프트웨어를 만들기 위해서 노력해야 한다. 그렇다면 좋은 소프트웨어라는 것은 무엇일까? 견고한 아키텍처와 잘짜여진 코드? 물론 맞다. 많은 사용자가 사용하는 소프트웨어가 견고한 아키텍처를 가져서 안정적이고 잘 짜인 코드로 기능의 개선이나 확장이 용이하면 잘 만들어진 소프트웨어다. 다만 소프트웨어 자체의 품질 이전에 결국 소프트웨어는 사용자에게 중요한 가치를 제공 할 수 있어야 한다. 이것을 다른 사람들은 비즈니스로 표현하던데 좀 더 간단히 말하면 그냥 목적이다. 해당 소프트웨어를 통해서 이루고자 하는 목적에 적합한 소프트웨어가 좋은 소프트웨어다. 그게 잘 만들어졌다면 더 좋고, 그럼 잘 만들어지고 좋은 소프트웨어가 된다. 이건 굳이 개발이 아니라도 당연한 것이다. 어떤 행위는 특정 목적에 .. 2022. 5. 11.
SOLID 원칙에 대하여 SOLID: 단일 책임, 개방 폐쇄, 리스 코브 치환, 인터페이스 분리, 의존성 역전 원칙을 두 문자어 법칙으로 정리한 용어. 객체 지향 설계에 대한 원칙이라고 하지만 사실 모던 프로그래밍 전반에 널리 적용되는 클린 코드 원칙이라고 볼 수 있다. 해당 원칙을 한마디로 간단히 정리하면 하나의 책임 단위로 코드를 잘 분리해서 잘 추상화 시키고 추후 변경이 적게 설계해라이다. 단일 책임 원칙의 경우 하나의 객체가 하나의 책임을 가지도록 설계하는 원칙이다. 그 책임에는 명확한 범위가 없다. 예를 들어서 식사라는 프로그램을 만들려고 하면 식사라는 행위 자체가 하나의 책임이 될 수 있고 그 식사를 사람과 메뉴, 식기, 예절, etc 등의 세부적인 책임으로 분리할 수 있다. 이걸 어떻게 분리하는지는 판단에 따라 다르.. 2022. 5. 4.
프론트엔드 관련 링크 모음 2 https://velog.io/@gomjellie/You-dont-know-type 너희는 전혀 타입하고 있지 않아 타입 레벨 프로그래밍 velog.io https://black7375.tistory.com/79 [스압/데이터주의] 웹 최적화 방식 모음 - 3. Layout 및 렌더링 [스압/데이터주의] 웹 최적화 방식 모음 - 0. 전반적 원칙과 원리 [스압/데이터주의] 웹 최적화 방식 모음 - 1. 다운로드 [스압/데이터주의] 웹 최적화 방식 모음 - 2. 파싱 및 렌더링 트리 [스압/데이 black7375.tistory.com 2022. 5. 3.