Develop Log 12

처음 완성한 Toy Project - 푸코의 진자

처음으로 Toy Project를 완성한 기념(?)으로 기록을 남겨둔다. 회사에서는 여러 프로젝트를 해보았지만, Toy Project 로도 참 많은 시도를 해보았다. 하지만 번번이 끝까지 완성한 적이 없었는데, 참 여러 가지 이유로 실패했던 것 같다. Toy Project야 완성보다도 과정이 중요하긴 하지만 완성된 무언가를 만든다는 것은 중간에 그만두는 것보다 꽤 힘들다. 그래서 완성할 수 있었던 이유가 무엇인지 스스로 돌아보고 시행착오가 무엇이었는지도 돌아보기 위해 이 글을 적어본다. 먼저 내가 만든 프로젝트는 "푸코의 진자"이다. 푸코의 진자는 지구가 자전한다는 증거 중 하나이다. 일반적인 단진자 운동은 x-z 단면에서만 움직이는데, 푸코의 진자는 위도에 따라서 서서히 진자가 회전한다. 나는 이 때 진..

Develop Log 2021.03.26

Jest 와 Enzyme 으로 unit test code 짜봤다.

npm, ES6, react, jest, enzyme 을 써서 테스트 코드를 작성했었다. enzyme 테스트 코드는 꽤나 유용한데, 내가 적기는 귀찮고 아래 링크를 참조하면 좋다.https://www.zerocho.com/category/React/post/583231469a87ec001834a0ec react 환경에서는 component 별로 unit test 코드를 작성하면 매우 편하다.enzyme 에서 shallow를 쓰면, 내부 컴포넌트도 중복 없이 테스트할 수 있어서 그것도 참 편하다. ...코드 안 짜려고 했는데, 조금 짜야겠네.예를 들면, 아래처럼 wrapper.find() 로 하위 컴포넌트도 가져올 수 있다. (참고로 돌아가는지는 안해봤다. 혹시라도 복붙하지 마시길;; )shallow 대신..

Develop Log 2017.04.23

Spark API 언어 고르기

사실 하고 싶은 건 단순히 1000 여 건 될까말까한 데이터를 저장하고 싶은데,완전 오버스펙이지만 공부한다고 생각하고 Spark 를 해보려고 한다. AWS 에 올리려다가 일단 로컬에서 한 번 돌려보자는 생각이 들어서, 로컬에 다운 받고 해보았다.다운이야 공식 사이트 https://spark.apache.org 여기서 다운 받았고,참고는 역시 조대협씨 블로그를 참고 했다. Spark에서 지원하는 언어를 고르려고 하는데 참 고민이 많이 된다.Scala / Java / Python / R 중에서 고르면 되는데, R은 아예 할 줄 모르기도 하거니와 새로 공부해서 하기에는 Spark 만으로도 새로 익히기 벅찬데R을 익히느라 스트레스 받고 싶지 않았다.Java는 그냥 너무 답답하고(...) 지겹고 싫어서 탈락. 나..

Develop Log 2017.04.15

아 책이 너무 어렵다아

같이 스터디? 같이 읽자고 하는 책들이 많아서 읽고 있는데, 아 빌어먹을 진짜 어렵네... 못 읽겠어.... 티스토리는 왜 책 정보 못 넣지..네이버는 되는데.. "7가지 동시성 모델" 이랑 "컴퓨터 프로그램의 구조와 해석" 읽고 있다.정신 나간거야 이런 걸 쓴 놈들은... 다 없애버리고 싶다...기초 공부한다고 왜 인지 C++ 하다가 다시 자바 토할 것 처럼 하다가낮에는 회사에서 javascript 로 조진다....-_- 그 외에 다른 표현을 생각할 수가 없네... 아 피곤.. 개인 프로젝트도 해보긴 해야하는데할 수가 없네.아이고...

Develop Log 2016.10.06

간만에 기초 공부

같이 일하는 개발자가 기초 공부를 해보지 않겠느냐고 해서자료 구조 강의를 들었다. 코세라에 Data structure 인데...학교 졸업하고 한 번도 다시 자료 구조 같은 거 돌아보지 않았는데 꽤 도움이 된다.오랜만에 Double Linkly List 도 짜보니 그것 참 옛날 생각이 소록소록 그리고 겨우 몇 시간만에 익숙하지도 않은 VI 로 짜놓고 나니왜 옛날에는 그렇게 해맸나 싶었다.지금은 주로 JAVA 나 scala, javascript 같은 걸로 해서 c++ 같은 건 거의 기억도 안나는데도 금방 짰다. 그동안 C++ 스펙도 많이 바뀌었구만...다음에는 트리나 A* 알고리즘이라도 짜봐야겠다. 그것 참 오랜만에 짜니까 재밌네ㅋㅋㅋ짜놓고 보니 조교들은 어떻게 다 채점을 했나 몰라...위대한 조교몬...

Develop Log 2016.10.02

Redux 의 존재 이유를 알았다

같이 일하는 개발자들이 전부 훌륭해서 다행이다.반대로 말하면 난 안 훌륭함 후하하ㅏ Redux 의 존재 이유는 간단히 말하면 "상태 State 의 저장"이다. 제아무리 react 라고는 해도 각 컴포넌트 별로 props 걸어서 상태를 저장해버리면, 컴포넌트 안에서든 컴포넌트 간에서든 상태가 관리가 안되기 시작할 것이다. 예를 들어(지금 대충 생각한 예시라서 적절한지는 모르겠지만), 텍스트 입력 창이 있는 컴포넌트 A가 있고, 그 컴포넌트랑 연결 되어서 텍스트 창의 입력값을 간단히 몇 글자만 보여주는 다른 컴포넌트 B가 있다고 해보자. 그런데 A 에 라디오 버튼 같은 걸 달아서 말머리를 단다거나, B 컴포넌트가 서버에서 API를 콜해서 글쓴이가 소속된 그룹 이름같은 걸 자동으로 텍스트 창 안에 입력시킨다거..

Develop Log 2016.09.23

Socket.io 랑 play 는 결합이 안되나..

Socket.io 좀 써보려고 했더니 play 에서는 쓸 수가 없는 듯하네.. https://github.com/milliondreams/socket.io.play 이런게 있길래 써보려고 했더니3년 전에 업데이트 되고 그 이후로는 아무 발전이 없어 보이고..서버도 node.js 로 할까 했으나 지금까지 해온게 아깝고... 흠.. 어쩌지.. Spring boot 에서는 팡팡 잘 되는데 아쉽네.그냥 Web socket 써야겠다. 공식 문서에서도 지원하니까 이렇게 써야겠네 그냥.https://www.playframework.com/documentation/2.5.x/ScalaWebSockets 뭐 딱히 서버에서 푸쉬를 던지거나 할 일이 있을까 싶긴하지만, 둘러보는 김에 그냥 조사.

Develop Log 2016.09.19

npm 에 react 올려봄

결국 play 에서 화면 부분은 떼어내기로 했다. 생각해보니 js 부분 복잡한데 js 프레임워크를 쓰는게 장기적으로 좋을 것 같았다.장기적으로.. 할 일은 아닌 것 같지만 일이 커짐. 에휴 npm 이건 react 건 많이 써본게 아니라서 -_-;;남이 만든 거에 코드만 올려봤지 영 익숙하지 않아서 삽질을 좀 예상했는데..생각보다 쉽게 해냈다. 세상이 많이 좋아졌어 음. 다른 거 없이 https://velopert.com/814 이 블로그만 잘 따라해도 금방 설치 된다.설치는 처음이지만 코드 올려보는 건 몇 번 해봐서 이제 코드만 치면 됨ㅋ 한가지 더 살펴보고 싶은건 redux 를 올릴까 말까 생각 중.올리면 잘 쓸 수 있으려나. react 는 확실히 잘 쓸 수 있을 것 같은데 redux는 좀 고민된다.r..

Develop Log 2016.09.14

젠장 Babel 너무 좋은데...

JS 로 요즘 Babel을 써봤는데, 너무 좋아서 두 번 좋아서 매우 좋아서... 개인 프로젝트에도 붙여보려고 했는데 play 에서는 어떻게 써야할지 모르겠다.아아 React JS 는 붙여놨는데 아아 Bable 은 어떻게 붙이는 거냐 안타깝다... 이렇게 된 이상 play 는 그냥 서버로 하고, front 는 node.js 로 가야 하나아아 새로 올리자니 귀찮아 ... Bable 에 관한 정보는 아래로 http://babeljs.io/ 간단히 설명하자면, Javascript 컴파일러 (라고 위의 링크에 크게 써있다) 인데,컴파일러인 만큼 자바스크립트를 컴파일 언어처럼 쓸 수 있다. 막 class, constructor, import, extends 같은 걸 쓸 수 있는데 안타깝네. 어쩌지. 이거에 rea..

Develop Log 2016.09.04