티스토리

Pay it forward
검색하기

블로그 홈

Pay it forward

pungwa.tistory.com/m

변기원 님의 블로그입니다.

구독자
3
방명록 방문하기

주요 글 목록

  • 텍스트 편집 시 다른사람에게 실시간으로 알리기 이번에 고민해서 구현한 기능은 아래와 같습니다. 웹소켓으로 구현하면 좋겠지만 이번 프로젝트에 realtime database를 사용해서 조금 아쉽습니다. 그래도 상상한 기능은 비슷하게 구현된 것 같습니다. 이번에 배운 포인트는 총 세가지입니다~ 1. 모든 참여자가 실시간으로 동일하게 받는 이벤트가 필요합니다. 즉, 한 명이 onBlur 이벤트가 발생한다고 해서 모두에게 onBlur가 발생하는 건 아닙니다. onBlur 이벤트에 css를 바꿔주면 나한테만 보입니다. 2. 무수히, 산발적으로 발생하는 이벤트 와중에 적절한 타겟을 골라와야 합니다. 3. setTimeout이 동시에 여러 개 돌아가야 합니다. 즉, 변수명이 동적으로 바뀌는 함수가 여러개 필요합니다. 처음에는 textarea의 onChange이벤.. 공감수 0 댓글수 0 2022. 5. 30.
  • 이미지 업로드 용량 줄이기 browser-image-compression 이번에 첫 프로젝트를 배포하면서 PWA에 대해 공부하다가 알게 된 lighthouse! 크롬에서 제공하는 홈페이지 성능 측정도구?라고 합니다. 처음 배포하고나니 점수가 영 별로네요.. 근데 생각보다 부족한 부분에 대해 정확히 짚어주기 때문에 잘 읽어보고 따라 하면 홈페이지 성능을 높일 수 있습니다. 우리 서비스의 가장 큰 문제는 performance 부분이었는데, 그 이유도 "이미지"가 대부분이었습니다. properly size images는 실제로 유저에게 보이는 사진 크기에 비해 이미지 데이터가 너무 크다는 말 같습니다. serve images in next-gen formats는 이미지 포맷을 적절하게 맞추라는 뜻 같은데, 저는 가이드에 따라 webp라는 파일로 바꿔서 사용했습니다. 검사에서 걸린 .. 공감수 0 댓글수 0 2022. 5. 27.
  • 1차 베타테스트 오픈 안녕하세요! 항해 6기 B반 1조 "너나들이" 입니다 :)저희 "너나들이" 는 실시간으로 여행 계획을 짜는 서비스입니다. 더 이상 혼자서만 계획하지 말고 같이 계획을 만들어보세요! 링크로 친구들을 초대해서 함께 여행 계획을 만들어보고, 다른 사람들의 계획도 구경해보세요 * 5월 24일 (21:00)부터 6월 4일(18:00)까지 서비스 피드백 이벤트를 진행합니다. 정성스러운 피드백은 더 나은 서비스를 제공하는 큰 힘이 됩니다! 1등 : 롯데월드 자유이용권 2인 (1명) 2등 : 배달의 민족 상품권 (2명) 3등 : 스타벅스 아메리카노 기프티콘 (Tall) (20명)* 당첨자 발표 및 상품 발송 (당첨자분들께 개별 연락드릴 예정입니다!) : 2022년 6월 11일 토요일* 더 나은 서비스를 만들기 위해 U.. 공감수 0 댓글수 0 2022. 5. 24.
  • DB문제 해결, 큰 문제의 원인은 아주 사소한 것 https://pungwa.tistory.com/103?category=999643 DB의 데이터가 갑자기 사라진다 추가: 문제와 원인을 자세히 살펴보니 데이터가 갑자기 사라지는 건 아닙니다! 위 영상은 저 혼자 테스트할 때 영상입니다. 모두 실시간으로 다른사람에게도 보이는 화면입니다. 프론트에서 real pungwa.tistory.com 위 포스팅의 문제를 해결한 방법입니다. 생각해보니 문제가 이거면,, dayNow도 onChange 발생할 때마다 업데이트해주면 되지 않을까요? 왜 다른 값만 onChange에서 가져와서 다른 dayNow에 넣고 있는거지? 그럼 현재 내가 글을 쓰고 있는 textarea는 몇 번째 dayNow에 있는건지 매번 제대로 찾아가서 저장되게만 해주면 문제가 없다는 생각이 들었습.. 공감수 0 댓글수 0 2022. 5. 20.
  • DB의 데이터가 갑자기 사라진다 추가: 문제와 원인을 자세히 살펴보니 데이터가 갑자기 사라지는 건 아닙니다! 위 영상은 저 혼자 테스트할 때 영상입니다. 모두 실시간으로 다른사람에게도 보이는 화면입니다. 프론트에서 realtime database를 사용해서 만들었습니다. day1, day2같은 날짜를 클릭해서 해당 날짜에 해당하는 정보를 불러오는데요, day마다 페이지를 나눠놓은 게 아니라 day버튼을 클릭할 때 state만 바꿔주고 realtime db에서 바로바로 state에 맞는 정보를 불러와서 리스트와 폴리라인을 뿌려주도록 만들었습니다. 배포하고 여러명이 테스트를 해보니 같은 day에서 작업을 할 때는 괜찮습니다. 몇 명이 들어와서 작업을 하든, input에 전부 잘 반영이 됩니다. 문제는 personA가 day1에서 편집을 하.. 공감수 0 댓글수 0 2022. 5. 20.
  • JWT인증, Access, Refresh token에 대하여 진행중인 너나들이 프로젝트 현재 로그인 기능은 소셜로그인(카카오, 구글)과 JWT로그인 인증 방식을 사용하고 있습니다 우리는 Access token만 사용해서 jwt인증을 구현해놨는데 기술멘토님께서 Refresh token까지는 무조건 하는거라고 하셔서 한번 적용해보려고 합니다. access token 과 refresh token 의 개념을 이해하기 위해 jwt인증이 무엇인지, 그 전에 쿠키와 세션은 무엇인지에 대해서 이해하면 좋을것 같습니다. https://inpa.tistory.com/559 [WEB] 📚 JWT(Json Web Token )란? 💯 이해하기 쉽게 정리 Cookie & Session JWT 토큰을 배우기 앞서 쿠키와 세션에 대한 개념이 있으면, 토큰이 왜 사용이 되는지 ..등 보다 명.. 공감수 1 댓글수 0 2022. 5. 15.
  • 배포 중 에러! React Uncaught SyntaxError: Unexpected token '<' 로컬에서 정상적으로 작업을 하고 build 후 s3에 올려 배포를 했다. 지도api가 들어가는 페이지에서 새로고침을 했을때 해당 js,css파일을 찾을 수 없다는 Not Found 404에러가 떳다. 구글링을 해보니 react-router-dom를 사용했을때 나타나는 문제였고 cloudfront에서 에러핸들링을 해줘야 한다는 블로그를 봤다. Cloudfront에서 위와같이 에러를 처리해주었더니 404 NotFound에러는 사라졌다 하지만 React Uncaught SyntaxError: Unexpected token ' 공감수 0 댓글수 0 2022. 5. 10.
  • 트랜잭션 동시성 제어 필요! 기획 멘토링 때 피드백받았던 내용 중 동시성 제어에 관심을 가지라는 말씀 일단 영상과 같이 realtime DB를 통해 같은 input과 value를 공유하는 기능까지 완성. 대체 동시성제어가 뭐지? 왜 관심을 가져야 한다는 걸까? 저번에 팀원과 노션에서 API를 구성하면서 동시에 같은 내용을 수정한 경험이 있다. 근데 내가 수정한 내용도 아니고 팀원분이 수정한 내용도 아니고, 그냥 일부분이 사라져 버린 경험을 했었다. 뭐지? 에러가 난건가? 그런 게 바로 동시성이 아닐까? 영상에서는 나 혼자 input을 수정하니까 괜찮지만 만약 내가 보는 브라우저에서도 input이 focus 되어있는 상태고 상대방이 보는 브라우저에서도 Input이 focus 되어있다면 무슨 일이 일어날까? 그때 나의 realtime .. 공감수 0 댓글수 0 2022. 5. 4.
  • realtime database 쿼리정렬 (orderByChild not working?) 2차 기획 멘토링 결과 1. 경로를 중간에 추가하거나 수정하거나 다른 날로 옮기는 기능은 무조건 추가! 2. 동시성제어 라는것에 관심을 가지고 해결할 것 3. 챌린징하는 부분이 많으니 음성채팅 기능의 스코프를 1:1로 줄이던가 없애던가 하는 방향도 고려해 볼 것 기존에는 내가 파이어베이스를 통해 query라는 개념을 사용할 수 있다는 것도 몰랐기 때문에 장소를 추가하면 무조건 차례대로 push 되는 형태로 일정이 뒤로 달라붙는 기능만 있었다. 그래서 이범규대표님의 피드백을 반영하여 일단 중간에 추가하는 기능을 넣고 추후에 시간을 수정하는 기능도 넣어보자 일단 뭔가 DB의 중간에 들어가려면 query라는 것을 써서 어떤 기준에 따라 정렬해주면 될 것 같다는 생각이 들었다. 하지만 우리가 기존에 받는 정보는.. 공감수 0 댓글수 0 2022. 5. 4.
  • 실시간 텍스트 편집 기능 처음 시작할때 팀원분들한테 무조건 할 수 있습니다! 시간이 필요할 뿐이지 시간과 노력이 들어가면 무조건 할 수 있습니다! 했었는데 솔직히 많이 부담이 됐었다 무조건 할 수 있겠지만 진짜 3주안에 할수있을까..? 실전프로젝트가 시작된 이후 약 10일간 몰입끝에 지도api부터 시작해서 파이어베이스를 이용한 실시간 기능까지 구현했다. 오늘 텍스트 기능까지 구현하고 나니 아 3주안에 할 수 있겠다 하는 확신이 들었다. input태그에 onChange이벤트를 걸어서 텍스트가 바뀔때마다 realtime database에 update시키고 동시에 다시 데이터를 받아와서 input태그에 value로 넣어주었다. 이게되네..? 근데 여러 브라우저에서 테스트를 하다보니 뭔가 자꾸 제대로 동작하지 않고 됐다가 안됐다가 좀 .. 공감수 0 댓글수 0 2022. 5. 2.
  • Realtime database에 랜덤한 키값으로 접근하기 이번 프로젝트를 하면서 정해진 기간 내에 모든 기능을 구현하기 위해 프론트에서 시각적인 부분의 실시간 기능은 파이어베이스를 통해 구현하기로 했다. 다행히 Realtime database가 많이 어렵지는 않았다. 공식문서도 보기 쉽고 코드도 쉽게 사용하도록 되어있다.. 구글최고! 오늘 해결한 부분은 랜덤한 키값을 가져와서 삭제하는 기능이다. 일단 allPlan/day1/ 아래로 랜덤하게 지정된 key가 있다. 나는 저 key에 접근해서 remove()를 써줘야하는데... 매번 다르게 지정되는 key에 어떻게 알고 접근할 수 있을까..? 고민을 하다가 일단 저 key를 가지고 오기만 하면 뭔가 가공을 할 수 있을거라고 생각했다. 그럼 처음 가지고 오는 부분에서 snapshot의 모양을 한번 확인해보자.. 스.. 공감수 0 댓글수 0 2022. 5. 2.
  • useState와 for가 무슨상관이 있을까..? 현재까지 realtime database를 이용하여 실시간 기능까지 구현하고 이제 여행계획 일차수에 맞게 db에 추가하고 읽어오는 기능을 구현하려 했다. 각 버튼을 함수형컴포넌트를 이용해 동적으로 생성했고, dateCnt를 받아서 해당 날짜 수만큼 출력했다. 그리고 각 버튼에 onClick이벤트를 주어 해당하는 일차를 클릭할 때 마다 state를 바꿔가며 관리하려고 했다. 일단 처음에 아무 날짜도 선택하지 않았을때 역시 검색이 잘 된다. 근데 날짜를 day3으로 선택하고 검색을 해보니 뭔가 에러가 나왔다. 하나하나 찍어가며 찾아보니 검색과 동시에 15개의 정보는 제대로 가져오지만 state가 지정됐을때는, 그 정보를 토대로 마커를 생성하는 for문이 제대로 돌지 않는다는 에러를 발견했다. 에러는 마커가 .. 공감수 0 댓글수 0 2022. 5. 1.
  • 실전 프로젝트 기획 드디어 마지막 실전 프로젝트! 아이디어 회의부터 기획, API설계 중 7주간 자바스크립트부터 리액트를 거쳐 한번의 미니프로젝트, 클론 프로젝트 그리고 드디어 실전프로젝트이다. 우리는 스타트업이 아니라 개발자로 성장하고 싶어하는 사람들이기 때문에 기획의 목적은 실제 서비스를 고려하기보다는 우리 팀원들에게 도전이 될만한 기술들을 써보는 프로젝트를 기획했다. 여행계획을 참여자들이 동시에 작성하는 서비스이다. 실시간 음성채팅 + 실시간 텍스트 편집 기능을 조합해서 구현하고자 한다. 그 계획에 지도 api는 간단하게 해결하고 넘어갈생각이였는데.. 지도 api도 꽤나 어려워보인다. 무엇보다 리액트에 적용하려니 아직 응용이 안되어서 일단 자바스크립트로 코딩하고 있다. 어찌저찌 검색기능에 이벤트 추가를 해서 적절한 데.. 공감수 0 댓글수 0 2022. 4. 28.
  • 항해99 5주차 WIL 겸 그냥 일기 항해 처음 시작할때 매니저님들이 몰입에 대해서 많이 강조하셨다. 직접 해보니 알것같다. 주100시간정도의 몰입은 2주간 매주50시간 집중하는것과 다르다. 진짜 한 100시간정도는 넘어가야 '몰입'의 경지에 오르게 되는 것 같다. 학창시절에 알았다면 더 좋았을텐데 ㅋㅋㅋ 꿈꿀때도 코딩하고 잠꼬대도 데이터가 어떻게오냐고 중얼거리고 참 .. 얼마전에 블로그 이름을 이타적 프로그래밍이라고 바꿨다. 내가 이타적으로 프로그래밍을 하겠다는 의지의 표현이나 그렇게 하고있다는 자랑이 아니라 프로그래머가 프로그래밍을 하는 모든 순간에 이타적이어야 하고 모든 프로그래밍은 이타적이다. 그냥 하다보니 그런생각이 들었고 나보다는 사용자에게 집중하고 몰입하는 경험을 하고나니 나도 감히 한 1분쯤은 무아지경이란걸 경험하지 않았을까 .. 공감수 0 댓글수 0 2022. 4. 11.
  • 항해99 4주차 WIL 3주차만 해도 리액트가 너무 낯설었는데 1주일만에 이제 좀 친해진 느낌이다. 주특기 숙련주차에는 전역상태관리가 가능한 리덕스를 집중적으로 학습했다. 이번주 주특시 심화주차에는 리덕스를 더 파워풀하게 활용하여 로그인 기능을 공부하고 있고, 청크 미들웨어를 사용해서 리덕스에서 비동기 처리를 하는 것에 집중하고 있고, 불변성관리가 편한 immer도 사용해보고 있다. 다음주에는 불변성과 immer에 대해 심도있게 생각해보는 시간을 가지려 한다. 이번주 WIL주제는 컴포넌트 라이프사이클과 리액트 훅이다. 1. 컴포넌트 라이프사이클 프로그래밍 개념에 대해 공부하다보면 너무 추상적이라서 시각적으로 표현되면 참 공부하기 좋겠다. 생각하는데 이 라이프사이클이라는 주제만큼은 참 잘 나와있는 것 같다. 위 사진이면 이해가 .. 공감수 0 댓글수 0 2022. 4. 4.
  • 항해99 2주차 WIL 이번주는 알고리즘 기초1주차를 끝내고 드디어 리액트기초에 진입했다. 알고리즘 기초를 혼자하면서 뭘 배울수 있을지 살짝 걱정이 되었지만 약 45문제정도를 풀어보면서 수시로 콘솔에 찍어보고 기능을 구현하다보니 어느새 손에 익고 구글에 검색하는게 어색하지 않게 되었다. 그리고 기본적인 for,if는 수도없이 작성해봤고 배열과 문자열에 대한 메소드도 많이 공부하면서 자바스크립트로 기능을 구현하는데 많이 익숙해진 것 같다. 이번주는 map, forEach, filter, while, 3항연산자 등 다양한 메소드를 많이 배울 수 있었다. 리액트는 처음 시작하면서 엄청 어색했다. 바닐라자바스크립트로 유튜브 클론코딩도 해보고 꽤 많이 해보면서 익숙해졌는데 자바스크립트와 이렇게까지 다를줄은.. 가상돔 개념부터, 클래스형.. 공감수 0 댓글수 0 2022. 3. 21.
  • 같은 숫자는 싫어! / filter 메소드 중복을 없엔다? Set이 생각나서 한번 해봤다. 아.. 그럼 뒤에 1도 중복이라서 없어지지? 그럼 일단 arr의 맨 앞 요소를 answer에 넣어두고 shift로 배열에서 제거하고 arr의 맨앞이랑 answer의 맨뒤를 비교해서 같으면 그냥 shift시키고 다르면 다시 answer의 맨 뒤에 넣고 shift하고 이걸 arr의 length가 0이될때까지 반복하면 되겠다! 이렇게 효율성 테스트에서 실패해서 알아보니 shift 가 문제인 것을 알았다.shift를 쓰면 배열의 앞에서 숫자를 빼고 뒤에 있는 숫자를 한칸씩 앞으로 당기는 과정이 있다. 인덱스 2번을 1로, 3번을 2로, 4번을 3으로, 계속 당기는데 만약 그 length가 문제에서처럼 1,000,000이라면? 그래서 효율성 테스트에서 실패했다. 그.. 공감수 0 댓글수 0 2022. 3. 15.
  • 항해99 1주차 WIL 항해라는 이름을 참 잘 지은 것 같다. 물론 실제로 항해를 해본 적은 없지만, 진짜 항해를 하면 이런 느낌일 것 같다. 폭풍우가 겁나지만 결국 내가 이겨낼 것을 알기에 그 힘듦이 기대된다 해야 되나? ㅎㅎ 이번 주는 월요일부터 목요일까지 미니 프로젝트를 진행하고 금~토는 알고리즘 스터디를 진행했다. 알고리즘은 게임을 하듯이 정말 즐거웠다. 특히 "이상한 문자 만들기"라는 문제를 풀고 나서 map,forEach,3항연산자에 대해 배우게 되었다. 그 뒤로도 map, forEach, 3항연산자를 떠올려보면 코드가 짧아지고 문제가 쉽게 풀리는 경우가 많았다. 미니프로젝트는 '센스 있는 개발자를 위한 아이템 추천'이라는 서비스 페이지를 만들었다. 첫 미니프로젝트에서 필수로 공부해야 할 개념은 서버사이트랜더링과 J.. 공감수 0 댓글수 0 2022. 3. 14.
  • 콜라츠 추측 / while 처음 든 생각 1. 작업을 반복하고 그 반복작업의 횟수를 세어라? for를 한번 돌때마다 횟수가 +1 2. 1이 나올때까지 반복? 그럼 for에서 값이 1이 될때 return 해준다. 3. 500번 반복해도 1이 안나오면 -1? for문을 500번 도는 동안 return을 만나지 않으면 그냥 -1 보낸다. 숫자가 들어오면 for문을 500번동안 도는 동안, 계산을 거치게 된다. 그리고 다시 for문으로 돌아와서 1인지 아닌지 확인하고 아직 1이 안됐으면 또 for문을 돌린다. 6의 경우 for문을 8번 돌면 1이 된다. 6>3>10>5>16>8>4>2>1 1이 되면 else로 들어와서 for문을 몇번 돌았는지에서 그 몇번에 해당하는 숫자가 answer에 배정된다. 만약 500번이 다되도록 1이 나오지 않.. 공감수 0 댓글수 0 2022. 3. 12.
  • 메소드를 잘 알면 몸이 편하다. / map(), 삼항연산자 너무 즐거웠던 알고리즘 첫날!! 오늘 가장 많은 시간을 투자했던 문제에서 정말 많은 것을 배웠다. 일단 이 문제를 보고 든 생각 1. 만약 4글자의 단어가 올수도 있고 단어마다 홀짝자리수를 판단해야 되니까 빈칸을 경계로 쪼개야 된다. 2. 각 단어마다 toUpperCase, toLowerCase를 쓰고 다시 합쳐야겠다. 창피하지만 이렇게 만들었다. 한 세시간 한듯..? 자.. 일단 "try word hello world"를 빈칸을 기준으로 나눈다. split(" ")을 하면 변화된 배열을 리턴한다. 그럼 fullArr는 ["try" , "word" , "hello" , "world"]가 된다. 근데 또 단어마다 홀짝 자리수에 대문자, 소문자 바꾸려면 알파벳 단위로 나눠야 되겠네? 모든 단어를 다 한글자씩.. 공감수 0 댓글수 0 2022. 3. 12.
  • flask, jinja2 / 항해 1주차 프로젝트 최대의 난관 내가 하고싶었던 것은 이렇게 제품 상세 카드를 클릭하면 뜨는 팝업창에 댓글을 남기고 그 댓글을 띄워주는 기능을 만들고 싶었다. 그래서 db에 item 마다 innercomment라는 키를 만들고 빈 array를 넣어줬다. 그리고 누군가 댓글을 달면 누가, 어떤제품에 어떤 댓글을 달았는지 찾아서 그 댓글을 제품데이터 안에 innercomment array에 object형태로 owner와 content라는 키를 만들어서 넣어줬다. 이제 나는 어떤 제품에 어떤 사람이 넣은 어떤 댓글을 모두 갖추었다! jinja2로 for 문을 돌려서 출력하면 끝이라고 희망회로를 돌려본다. 잘나온다!!! 다른 제품카드를 두번세번 만들어도 문제 없겠지? 난관봉착 아무리 댓글을 넣어도 해당 텍스트가 아니라 "" 이렇게 내용이 비어.. 공감수 0 댓글수 0 2022. 3. 10.
  • 항해99 사전학습 4주차 이번 주 강의는 1,2주 차에 배운 프론트와 3주 차에 배운 백엔드의 조합이다. 브라우저와 서버가 서로 티키타카 되는 모습이 그려져서 정말 재미있었다. 유튜브 클론코딩을 할 때보다 훨씬 작은 프로젝트를 가지고 프론트,백을 다루니 서로 무슨 관계인지 더 쉽게 파악이 되었다. 유튜브클론코딩을 할 때 너무 추상적으로 느껴졌던 req, res는 뭔가 python과 javascript 서로를 이어주는 포탈 같은 느낌이랄까? 데이터를 담아서 request, response포탈로 던져주면 파이썬이나 자바스크립트가 받아서 작동하는? 그리고 데이터베이스로 데이터를 보내고 가져오는것도 너무 신기하다. 이제는 단순히 html로 그림을 찍어서 보내주는 것 말고도 사용자로부터 데이터를 입력받고 그 데이터를 보여주는 기능을 할 .. 공감수 0 댓글수 0 2022. 2. 7.
  • 항해99 사전학습 3주차 1주, 2주 차에는 그나마 나에게 익숙한 html, css, javascript를 배워서 진도가 쭉쭉 나가고 이해도 잘 되었지만 3주 차에는 처음 접하는 파이썬과 mongoDB를 배웠다. 1,2주 차에 프론트엔드를 배우고 3주 차에 서버를 만들 수 있는 언어인 파이썬과 데이터베이스의 기초를 배우면서 이제 빨리 둘을 합쳐보고 싶다는 욕심이 든다. 그리고 모르는 부분에 대해 구글링도 하고 더듬더듬 해결해가면서 자신감도 많이 생기고 있다. 이제 아 데이터 크롤링이라는게 이런 거였구나, 데이터베이스라는 게 어떻게 생겼구나, 정도는 이해할 수 있는 수준이 되었다. 백문이불여일견이라는 말이 피부로 느껴진다. 프론트엔드가 뭐고 백엔드가 뭐고 서버, 데이터베이스는 뭐라고 아무리 찰떡같은 비유를 들어서 설명해준다고 해도.. 공감수 0 댓글수 0 2022. 2. 4.
  • 항해99 사전학습 2주차 또 하루만에 2주차 강의를 모두 끝냈다. 이번에는 완전 처음들어보는 jQuery 와 ajax라는 것에 대해 배웠다. jQuery란 자바스크립트 라이브러리라고 한다. 라이브러리란 자주 반복적으로 사용하는 코드들을 재사용할수있는 형태로 가공해 놓은 코드이다. 즉 자바스크립트로 반복적으로 사용하는 기능을 가공해놓은 코드라고 할 수 있겠다. 아주 기초적인 내용을 잠깐 배워본 경험에 의하면 엘리먼트를 정확하고 빠르게(css셀렉터를 이용해서) 지정하고 쉽게 제어할 수 있는 방법들을 제공하고 있다. ajax는 클라이언트에서 서버로 데이터를 요청하고 그에대한 결과를 돌려받을 수 있게 해주는 기술이다. 덕분에 서울시 날씨정보나 따릉이 api를 이용해서 데이터를 받아오고 그 url을 이용해서 데이터를 클라이언트로 가져올 .. 공감수 0 댓글수 0 2022. 2. 3.
  • 항해99 사전학습 1주차 유튜브 클론코딩 강의를 듣다가 이제서야 사전학습 1주차를 수강했다. 책도 보고 클론코딩도 해보면서 어느새 익숙해진걸까 1주차 과정을 3시간만에 끝내고 실습까지 끝냈다! 아주 기초적인 html과 css를 기반으로 단순한 프론트 페이지를 만들었다. 이번 강의에서 부트스트랩이란 것을 처음 알게됐다. 붓을 잡는 방법을 아는것과 그림을 잘 그리는게 다르다는 비유를 들어서 부트스트랩의 존재이유를 잘 설명해주셨다. 근데 나는 css를 만지는것도 아직 재미있고 디자인도 직접 하는게 더 마음에 들어서 부트스트랩을 자세히 살펴보지는 않았다. 그래도 어떻게 써야하는지는 잘 배웠다. 중간중간 직접 만들어보고 실습해보고 익숙해질 시간을 준다는게 너무 좋았다. 그리고 과제가 수업만 들으면 혼자서 충분히 응용해볼 수 있는 수준이라.. 공감수 0 댓글수 0 2022. 2. 2.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.