본문 바로가기

Programming48

자바스크립트와 변수 자바스크립트에서 변수를 선언할 때에는 반드시 키워드를 앞에 붙여줘야 한다. 파이썬에서는 index = 0 처럼 선언하면 되지만, JS에서는 var index = 0; 이렇게.. 변수란? 10 + 20을 계산할 때 사람은 10, 20, +기호를 모두 머릿속에 기억하고 연산도 두뇌로 한다. 그러나 컴퓨터는 저장공간과 연산공간이 다르다. 10, 20은 각각 메모리 셀에 2진수로 기억되고, 각 셀은 고유의 주소를 갖는다. 그리고 메모리 셀에 저장된 값을 CPU라는 곳에서 연산을 한다. 그 연산 결과는 또 어떤 메모리 셀에 들어가게 된다. 이때 결과 셀의 주소를 알아야 다음에 또 참조를 할 수 있는데, 자바스크립트에서 개발자는 주소를 통해 값에 직접 접근할 수 없다. 그래서 '변수'라는 메모리 주소(공간)를 식별.. 2020. 12. 11.
자바스크립트(JavaScript)에 대해 가볍게 알아보자 나는 Vue.js로 여러 프로젝트를 진행했지만, 아이러니하게도 자바스크립트에 대해선 잘 모른다. 왜 이럴까 생각해본 결과, 프로젝트 당시에는 구현에 급급해서 필요한 문법이나 기능을 구글링해 써먹고 다음날 바로 잊어버리는.. 아무튼 제대로 각 잡고 공부를 안 해서 그런 것 같다. 그래서 이제 팀 프로젝트도 끝났고, 취준생 신분이지만.. 시간적 여유가 좀 있어서 JS를 배우며 디자인 + UI / UX + 프론트를 겸한 개인 프로젝트를 해보려고 자바스크립트 교재를 샀다. 교재로 JS를 배우며 알게된 것들, 느낀 것들을 기록하려고 블로그에 JS 카테고리를 만들었다. 우선 내가 구매한 책은 이 책이고, 가능하면 ebook으로 구매하고 싶었는데 아직 없는 것 같아 종이책으로 구매했다. 책 두께는 4cm정도의 둔기급.. 2020. 12. 11.
[쇼체크탈출 프로젝트] 공대생 남성을 위한 코디 추천 어플 SSAFY 최종 프로젝트로 내 전공(의류학)을 살려보고 싶어서 코디 추천 서비스 어플을 기획하였다. 함께 주제 선정을 해주신 팀원분들께 감사합니다 ^^ 개발 기간은 2020년 10월 12일부터 11월 16일 까지다. 약 5주 정도? 이번 프로젝트를 진행하면서 취업 준비도 병행해야 하기 때문에 우리 팀은 순위권은 포기하고 cute&tiny 하게 가기로 했다. 그런데 아이디어와 결과물이 좋아 결국 반 2등을 해서 뿌듯했다! cute&tiny&strong이 되어버린 프로젝트.. ㅎㅎ 이번 프로젝트에서 내가 가장 많은 시간을 투자한 파트는 데이터를 정제 + 마이닝하는 것과 추천 알고리즘을 구현한 것이다. 다른 팀원이 무신사에서 크롤링해준 데이터에서 빈 값이나 잘못된 값을 정제하고 (정말 노가다였다!) 코디 추천.. 2020. 11. 27.
플로이드 스타인버그 디더링 (Floyd–Steinberg dithering) 파이썬으로 구현하기 음악 스트리밍 서비스인 스포티파이(Spotify)의 셔플 알고리즘에 대해 공부하다가 플로이드 스타인버그 디더링을 응용하여 구현하였다길래 디더링이 무엇인지 찾아보고 구현해보았다. (설명 없이 코드만 보려면 맨 아래로..) 디더링? 디더링이란 제한된 색을 이용하여 음영이나 색을 나타내는 것이며, 여러 컬러의 색을 최대한 맞추는 과정이라고 한다. 찾아보니 이미지 외에 음악에도 사용되는 것 같은데, 고음질의 음원 (무손실 음원)을 최대한 오류를 줄이며 왜곡되지 않게 비트를 줄이는 것을 뜻하기도 한다. 압축과 비슷한 개념인가? 하는 생각도 들었다. 디더링 구현 전에 간단한 손 풀기 1 - 이미지 그레이 처리 from PIL import Image im = Image.open("fall.jpg") mode, siz.. 2020. 11. 20.
[식도랑 프로젝트] 맛집 기반 여행 추천 사이트 개발 회고록 - ROOT SSAFY 두번째 프로젝트로 맛집 데이터 기반으로 여행을 추천해주는 사이트를 만들었다. 프로젝트 진행 기간은 2020.08.31~2020.10.08 총 6주! 나는 이번에 프로젝트에서 테크리더 역할을 맡아 git 총괄을 했다. 컨설턴트님의 지시(?)로 중간에 젠킨스, 소나큐브 연결도 했는데, 제대로 활용은 못하고 그냥 연결만 했다.. 팀원은 5명으로 모두 비전공자라 팀명을 비전파이브라고 지었다. 저번 프로젝트와 동일하게 gitlab과 JIRA, Webex를 사용했다. 그리고 모바일 웹앱 서비스를 목표로 만들었기 때문에 저번 프로젝트보다 심플하게 디자인하였다. 이번 프로젝트는 빅데이터 특화 프로젝트라 여러 기술을 다뤄보았다. 나는 프론트를 맡아 대부분 vue만 사용했지만, 첫번째 주에 pandas와 mat.. 2020. 10. 26.
[YOGART 프로젝트] 요가 학습 사이트 개발 회고록 - ROOT SSAFY 2학기 첫 프로젝트로 요가 AI 코칭 + 1:1 PT 서비스를 제공하는 플랫폼인 '요가트'를 만들었다. 7월 20일부터 8월 21일까지 약 한 달간 진행한 프로젝트! 팀원은 총 5명이며, 2명의 전공자와 3명의 비전공자이다. 전공자는 spring boot로 backend를 맡았고, 비전공은 vue.js로 frontend를 맡았다. 팀 회의는webex로 주로 진행했고, gitlab에서 branch를 나눠서 작업했으며 JIRA를 통해 스크럼 방식으로 프로젝트를 관리하였다. 스크럼 포커 앱도 활용해봤는데, 서로 제시한 숫자에 대해 토론하는 게 재미있었다. 그리고 본선까지 진출해 우리반 1등으로 우수상도 받았다 ㅎㅎ 다음 프로젝트부터는 반별 경쟁이 아닌 전국 경쟁도 있다고 하니 더 열심히 해야겠다. .. 2020. 8. 23.