본문 바로가기

전체 글

Spring Tool Suite 4에서 SVN connect 설치 안될 때 * 상황 STS에서 SVN을 이용하기 위해 설치하는데 방화벽 때문에 SVN connector가 다운로드가 되지 않았다. 그동안의 에러 메시지 SVN: '0x00400006: Validate Repository Location' operation finished with error: Selected SVN connector library is not available or cannot be loaded. If you selected native JavaHL connector, please check if binaries are available or install and select pure Java Subversion connector from the plug-in connectors update sit.. 더보기
30개 프로젝트로 배우는 프론트엔드 with React : 2강 이미지 슬라이더 만들기 완성 이미지 비기능적 요구사항 webpack 번들러 사용 기능적 요구사항 next, prev 버튼으로 이미지 이동 기능 제공 이미지 하단에 현재 몇번째 이미지를 보여주고 있는지 indicator 기능 제공 setTimeout, setInterval로 auto play 기능 제공 9be51d Chapter 2 Image Slider 강의에서 제공한 코드 강의로부터 새로 알게 된 점 setTimeout, setInterval의 차이점 추가 기능 및 리팩토링 0df836 refactor(chap2): add catch error when no access image - unsplash에서 api로 접근해서 image 가져와서 뿌려주기 - image url이 유효하지 않으면 로컬 image 보여주기 addIma.. 더보기
30개 프로젝트로 배우는 프론트엔드 with React : 1강 가상키보드 만들기 완성 이미지 비기능적 요구사항 webpack 번들러 사용 eslint, prettier로 포맷팅 기능적 요구사항 키보드 모양의 키보드가 있어야 함 다크모드를 지원하고, switch slider로 모드를 변경 font 변경 가능 특수키는 space, back space 말고 눌리지 않게 해야함 한글은 입력할 수 없음 2a74d3 Chapter 1 Virtual Keyboard 강의에서 제공한 코드 강의로부터 새로 알게 된 점 // html // js #onChangeTheme(event) { document.documentElement.setAttribute( "theme", event.target.checked ? "dark-mode" : "" ); } // css html[theme="dark-mode.. 더보기
2022 오픈소스 컨트리뷰톤 아카데미 : 어떤 사업인가요? 오픈소스 컨트리뷰톤 아카데미에 대해 오픈소스 컨트리뷰톤 아카데미란? 오픈소스 컨트리뷰션 아카데미는 언어, 개발문화, 시작의 두려움으로 인해 높게만 느껴지던 오픈소스에 대한 진입장벽을 허물고 선배 개발자와 함께 서로의 '컨트리뷰톤'을 응원하며 참여, 오픈, 공유, 협업하는 오픈소스 문화를 직접 경험할 수 있는 프로그램이다. 오픈소스 컨트리뷰톤 아카데미에 참여하게 된 계기 트위터로 개발 계정을 운영 중인데 트위터 타임라인에 계속 흘러들어와서 한번 해볼까 하는 마음이었다. 이미 참여해서 너무 좋았다는 후기들도 많았고, 무리하는 게 아닐까 라는 생각도 했지만 신청하는 건 무료니까 신청하게 되었다. 이후에 알았지만 우리 학과 선배나 동기도 꽤 참여한 이력이 있는 활동이었을 뿐 아니라 2016년부터 매년 진행된 활.. 더보기
[JavaScript] 객체의 메소드는 왜 인스턴스가 아닌 프로토타입에 추가해야하는걸까? 목차 1. 들어가며 2. 객체의 의미 3. 자바스크립트에서의 객체 4. 객체의 특징, 상속 5. 객체의 메소드를 프로토타입으로 선언하는 것이 인스턴스에 선언하는 것보다 왜 메모리적으로 나은 방법인가? 6. 결론 7. 참고자료 들어가며 모던 자바스크립트 입문 책의 객체 파트에서 프로토타입에 대한 이야기가 나왔다. 그런데 단 한문장으로만 설명되어있는 인스턴스에 메소드를 추가하는 것보다 프로토타입에 추가하는 것이 메모리 낭비를 하지 않는 방법이다 라는 문장이 의심되었다. 왜 프로토타입에 추가하는 것이 인스턴스에 메소드를 추가하는 것보다 더 메모리적으로 나은 방법일까? 이를 알기 위해서 객체의 의미, 자바스크립트에서는 어떻게 객체를 선언하고, 이 객체를 어떻게 상속하는지에 대해 가볍게 내 언어로 작성해보려고 한.. 더보기
[git] 추가하지도 않았는데 이전 커밋이 계속 들러붙을 때 * 상황 - 9월 4일에 package-lock.json을 커밋한 이력이 새로 브랜치 만들 때마다 계속해서 들러붙고 있다. * 이유 - 정확한 이유는 모르겠다 ... * 해결방법 - git reset --hard로 이전 커밋으로 이동해 package-lock.json을 변경한 이력 커밋을 날려버리고 git push -f 로 올리니까 사라졌다. 해당 내용으로 검색해봐도 package-lock.json을 커밋해야 하는 이유에 대해서만 나와서 답답했는데 도움이 될까 싶어 올린다. 그런데 git reset --hard는 조심해야한다 ... 나도 test할 겸 branch를 2개 정도 파서 테스트해보고 제대로 되길래 push -f했다. 더보기
tsconfig.json 분석 #2 compileOptions - baseUrl과 paths tsconfig.json 분석 #1 compileOptions - module과 target tsconfig.json 분석 #1 compileOptions - module과 target Typescript를 컴파일 하기 위해서는 tsconfig.json 파일이 필요하다. 그런데 PR로 올라온 코드를 리뷰하다보니 이 파일에 대해 분석해보고 싶은 생각이 들어서 궁금할 때마다 하나씩 분석해보려고 한다 dev-jejecrunch.tistory.com ./tsconfig.json 파일을 열어보면 다음과 같은 내용의 파일이 있을 것이다. 여기서 오늘은 baseUrl과 paths에 대해서 알아보겠다. baseUrl은 절대적이지 않은 모듈 이름을 확인하기 위해 기본 디렉토리를 설정할 때 사용하는 옵션이다. 현재 이 프.. 더보기
[React] Warning: Each child in a list should have a unique "key" prop. 현재 나는 오픈소스 컨트리뷰톤 githru 팀에서 활동하고 있다. 컨트리뷰톤을 진행하면서 PR로써 주고 받은 내용들 + 나도 조금 더 생각해볼만한 주제도 많아서 쓸 수 있는 만큼 최대한 자료를 조사해서 내 스스로의 기준을 만들어보려고 한다. nanoid 라이브러리를 추가하게 된 경위 key props 추가 내가 3주 동안 맡아서 구현한 파트는 Summary 부분인데 이 부분을 구현할 때 데이터를 가공해 map으로 span 태그를 뿌려주다보니 key없이 뿌려질 경우 콘솔에서 key prop을 전달해달라고 에러를 뿜는 것이었다. Warning: Each child in a list should have a unique "key" prop. 그렇다면 key props를 왜 지정해줘야하는 것일까? 이 포스트에 .. 더보기

반응형