목록분류 전체보기 (142)
뉴히의 개발 로그
맨날 바디가 없데 ㅡㅡ 다행히 이건 코드 오류가 아니라 api 요청시에 사용량 초과로 데이터를 못불러오는 문제였다 하지만 진짜 진짜 진짜 최종 문제는 데이터 타입!!ㅎㅎㅎㅎㅎ 인풋, 아웃풋 타입을 다 지정해줘도 자꾸 오류가 뜸 예로 데이터를 받아오면, 그데이터가 undefined 일 수 있다는!! 최초에.. 또는 삭제가 가능한경우 데이터가 0개 일 수 있다. 그럴때가 있을 수 있다고 타입스크립트가 알려줌 그럼몇몇가지 방법으로 수정해 줄 수 있다. if 문 데이터가 있을때만 실행한다. 데이터가 없을때 나타낼 페이지를 만들어둠 if (isError || !data || data.length === 0) { return 데이터를 불러오는 중에 오류가 발생했습니다.; } && const OBJ_GPX = dat..
미니 팀프로젝트! 지역별 산책로 코스를 소개해주는 앱니다. open API를 이용해서 산책로 정보등 보여주고, 지도에 산책로 코스를 띄워줘야한다. 제공해주는 api에 경로 path를 따와서 산책로를 지도에 그려줘야하는데 XML파일로 제공되었다. gpxparser @kazukinagata/react-xml-parser gpx-parser-ts 등등 XML을 읽어주는 파서라이브러리들을 써봤는데 어떤건 오래되서.. 어떤건 사용법이 제대로 나와있지 않아서 등드등 사용할만한 라이브러리 찾기가 힘들었음 겨우 찾은 라이브러리로 파싱이 성공하나 싶었는데 서버에서 서버로 요청은 파싱을 잘 해서 데이터를 가져왔는데 브라우저에서 CORS 에러가 떳다 ㅠㅠ OPEN API에서 제대로 불러오지못하는 ㅠㅠ 이러면 서버쪽에서 뭔가..
typescript 에서 계속 되는 오류!if문을 넣어주거나 했는데오늘 수업에서 꿀팁!! 또는 as String 이런식으로 넣어줘도 됨!또는 todo || [] 이런식도 가능!!! map 함수 돌릴때 오류가 많이 나는데배열의 타입을 제대로 명시하지 않았거나 잘못되었을때 발생한다.const a number[] | string[] = []a.map((item) => console.log(item))const a = (string | number)[] = []a.map((item)=>console.log(item)) 이렇게 명시해주면된다. a는 Array다~~~~(a as Array).map((item)=> console.log(item))오늘 선발대 수업은 아주 알찼다 ㅎㅎㅎㅎ superbase 수업이었는..
타입스크립트 쉬운거 같으면서 왜케어렵냐구요 자꾸 타입에 없다고...undefined일수 잇다고...naver엔 안된다고 ㅎㅎㅎㅎㅎㅎ 호호호 api 받아오는 객체 내용을 몽땅 긁어와서 넣으니까 오류는 해결되긴했다. 아직 어떻게 쓰는지 몰라서 자꾸 막히고 당황시러니 바보가 되는거같구 ㅎㅎㅎㅎㅎ 강의돌려봐도 똑같고~~ 많이 작성해보자 팀원분 그러니까 지금 플젝 팀장님은 계속 모든 타입을 넣어보고 클릭해서 들어가서 타입들보면서 찾아보고 하면서 공부를 하신다고했다. 그래 영상 백번봐바야 ㅎㅎ계속 간단한거라도 만들어보자
정말 고심하고 고심하여 API를 찾고 고르고 주제를 선정하고 와이어프레임짜고 API 명세 작성하고, S.A 작성하고 구현기능 세분화도 다~ 하고 했는데.... 실제로 데이터를 불러와서 뿌려주려하니 이게무슨일 API 초대박 개떡같아서 ... 쓸수가 없을것 같았다. 정말 막노가다로 데이터를 필터링해서 우리만의 데이터를 만들까도 했는데 API를 쓰는 이유가 무엇인고 ? 튜터님께도 찾아가보았다 ㅎㅎ결론은 크게 다르지 않았지만 [VSCode] Thunder Client 배워따 API 요청을 테스트하는 VS 코드 확장팩 ㅎㅎㅎ API URL을 넣고 요청넘겨보면, 불러오는 시간, 데이터 개수 등등 정보를 알 수 있다! 회사에서는 실제로 postman이 많이 쓰인다고 한다 잘 이용해보자. 무튼 정말 제대로된 open ..
갈수록 할것은 산더미! 인데 시간이 너무 빨리간다 ㅎㅎㅎ typescript도 아직 너무 어색하고.. 타입스크립트가 타입추론을 알아서하는데.. 넌왜 그렇게하니? 하는 부분이 아직 너무 많다 ㅎㅎㅎ 객체형태의 타입선언을하고 그 타입의 데이터를 뿌려주려하면 자꾸 undefined일 수 있다고 하는데 if문이나 or 연산자등으로 해결을 한다쳐도 왜인지 ... 잘모르겟다 ㅎㅎㅎ 좀더 공부해보고 튜터님께 여쭤봐야겠다. 그리고.. 알고리즘 문제가 점점어려워 지는데 너무 오래걸린다 ㅠㅠ 초반에 알고리즘 공부를 게을리한탓...이겟지 팀원분들은 정해진 시간내에 딱딱 푸시는데 나는... 자꾸 문제이해가 안된다 헛짓거리로 반이상은 날리는듯? 책을 읽어야 되나? 수학 공부를 해야하나 ㅠㅠㅠ 문제 이해하는데 시간을 너무 잡아먹..
단순히 동작하게 작성하는 것에서 남이 봐도 이해할 수 있도록 작성하는 것 으로 코드를 바라보는 생각의 패러다임을 변경해야한다 클린코드는 비단 깨끗한 코드 그 자체를 넘어 개발자의 마인드셋과 직결되는 문제!! 1. 의미 있는 변수명/함수명 짓기 camelCase kebab-case snake_case PascalCase 코드 컨벤션에 맞게 변수명을 만들면 팀원이 마치 한사람이 짠 코드처럼 코드를 작성할 수 있다. 규칙적인 변수명은 모르는 부분의 코드도 빠르게 파악할 수 있다. 명확한 의미를 담아서 작성 / 길더라도 (약속되지 않은) 줄임말은 쓰지 않기 //bad let a = 1; let b = 86400; const gmName = "kim"; const gf = undefined; //good cons..
[ DNS ] Domain Name Service : IP 주소록 Root Level Domain / Top level Domain / Second Level Domain / Subdomain / Protocol Root DNS Server Root DNS Server는 DNS 계층 구조에서 가장 상위에 위치한 DNS 서버입니다. 모든 DNS 쿼리는 먼저 Root DNS Server에 도착하여 해당 도메인의 TLD(Top-Level Domain) DNS Server의 주소를 알아내야 합니다. Root DNS Server는 인터넷 상에서 전 세계에 총 13개가 운영되고 있으며, 이들은 전 세계의 인터넷 서비스 제공 업체들에 의해 운영됩니다. TLD DNS Server TLD DNS Server는 도메인 이..