1. 재빨리 테스트를 하나 추가한다.
2. 모든 테스트를 실행하고 새로 추가한 것이 실패하는지 확인한다.
3. 코드를 조금 바꾼다.
4. 모든 테스트를 실행하고, 전부 성공하는지 확인한다.
5. 리팩토링을 통해 중복을 제거한다.
이러인해 얻을 수 있는것들.
- 각각의 테스트가 추가된 기능을 커버한다.
- 수없이 작은 단계의 리팩토링이 이뤄진다.
내가 보고들은것을 모아 기록하는 저장소
태그
Cocos2d-x
(7)
Cocos2d-x 3.0
(7)
뻘글
(5)
IT
(4)
cocostudio
(4)
C++
(3)
Skeletal Animation
(3)
Web
(3)
osx
(3)
MacOS
(2)
NAS
(2)
Xcode
(2)
iptime
(2)
javascript
(2)
잡상
(2)
A star
(1)
A*
(1)
Anroid
(1)
Facebook
(1)
Intent
(1)
Json
(1)
SVN
(1)
VMWare Fusion 6
(1)
brackets
(1)
iOS
(1)
iTunes
(1)
jQuery
(1)
parallels 9
(1)
pathfind
(1)
php
(1)
sass
(1)
경로탐색
(1)
맥북
(1)
삽질
(1)
시작하세요 Cocos2d-x 3.0프로그래밍(위키북스)
(1)
아이폰
(1)
알고리즘
(1)
애플
(1)
2018년 1월 23일 화요일
TDD를 공부해보고 있다.
켄트벡 저 테스트주도개발 책을 읽고 있다.
초장에 나오는 내용이 왠지 익숙하다.
생각해보니 객체지향을 처음 짤때 이런 식으로 일을 했었다.
호출을 원하는 형태로 만들고, 클래스에 메서드 스텁을 채워넣고 돌리고..
프로그래밍 일의 시작을 객체지향으로 시작한것도 있고, 공부를 시간에 치여서 하지 않고, 하고 싶어서 시작한 프로그래밍 언어였기 때문에 그게 올바른 객체지향 사용법이라고 스스로 느꼈었기 때문이다.
N**회사를 막 입사했을때, 손메모기능을 만들때 그렇게 만들었었다.
사람에 시달리고, 개발철학에 관련해서 온갖 망언들과 망언같은 코드들에 시달리면서 스스로가 많이 망가져갔었다.
먼길을 돌아온 기분이지만 다시 원래 내가 옳다고 생각했던 개발방향을 찾아가는 느낌이다.
어쩌면 다리가 부러져 일을 쉬는 이 시간이 내겐 개발자로서 재기할 수 있는 시간이 될 거란 생각이 든다.
너무 오랜 시간을 돌아왔지만...
초장에 나오는 내용이 왠지 익숙하다.
생각해보니 객체지향을 처음 짤때 이런 식으로 일을 했었다.
호출을 원하는 형태로 만들고, 클래스에 메서드 스텁을 채워넣고 돌리고..
프로그래밍 일의 시작을 객체지향으로 시작한것도 있고, 공부를 시간에 치여서 하지 않고, 하고 싶어서 시작한 프로그래밍 언어였기 때문에 그게 올바른 객체지향 사용법이라고 스스로 느꼈었기 때문이다.
N**회사를 막 입사했을때, 손메모기능을 만들때 그렇게 만들었었다.
사람에 시달리고, 개발철학에 관련해서 온갖 망언들과 망언같은 코드들에 시달리면서 스스로가 많이 망가져갔었다.
먼길을 돌아온 기분이지만 다시 원래 내가 옳다고 생각했던 개발방향을 찾아가는 느낌이다.
어쩌면 다리가 부러져 일을 쉬는 이 시간이 내겐 개발자로서 재기할 수 있는 시간이 될 거란 생각이 든다.
너무 오랜 시간을 돌아왔지만...
2017년 10월 31일 화요일
아이폰 복원 실패 해결("오류가 발생했기 때문에 아이튠즈가 누구누구의 아이폰을 복원할 수 없습니다.")
아이폰을 백업하고 나서 복구하려고 할때, 다음과 같은 메시지가 나오면서 복원이 안되는 경우가 있다.
"오류가 발생했기 때문에 아이튠즈가 누구누구의 아이폰을 복원할 수 없습니다."
해결방법으로 공장초기화를 해보거나 케이블을 바꾸거나 등 여러 방법이 있지만 다 안되는 경우에는 다음의 방법을 권해본다.
"Decipher Backup Repaire"툴을 사용해 보는것이다.
(https://deciphertools.com/decipher-backup-repair.html)
(http://blog.naver.com/PostView.nhn?blogId=luric&logNo=220993312472&parentCategoryNo=32&categoryNo=&viewDate=&isShowPopularPosts=true&from=search)

나도 해결방법을 찾아보다가 네이버 블로그에 있는 글을 보고 나쁘지 않은것 같아서 결제해보고 복구해보니..한번에 해결됐다.
가격은 29.99달러이며, 이 프로그램을 사용하고 복구가 안될 경우, 30일내 환불도 가능하다고 한다.
...복원 실패는 꽤 예전부터 있던 문제였는데... 애플은 아직도 해결을 못하고 있다.
...애플한테 여러모로 실망스럽다.
"오류가 발생했기 때문에 아이튠즈가 누구누구의 아이폰을 복원할 수 없습니다."
해결방법으로 공장초기화를 해보거나 케이블을 바꾸거나 등 여러 방법이 있지만 다 안되는 경우에는 다음의 방법을 권해본다.
"Decipher Backup Repaire"툴을 사용해 보는것이다.
(https://deciphertools.com/decipher-backup-repair.html)
(http://blog.naver.com/PostView.nhn?blogId=luric&logNo=220993312472&parentCategoryNo=32&categoryNo=&viewDate=&isShowPopularPosts=true&from=search)

나도 해결방법을 찾아보다가 네이버 블로그에 있는 글을 보고 나쁘지 않은것 같아서 결제해보고 복구해보니..한번에 해결됐다.
가격은 29.99달러이며, 이 프로그램을 사용하고 복구가 안될 경우, 30일내 환불도 가능하다고 한다.
...복원 실패는 꽤 예전부터 있던 문제였는데... 애플은 아직도 해결을 못하고 있다.
...애플한테 여러모로 실망스럽다.
2017년 10월 12일 목요일
Brackets에서 Brackets SASS플러그인이 안될때.
brackets에서 sass를 쓰기위해 brackets sass 를 설치했는데, "cleanup" 혹은 "
"best solution? just downgrade the brackets app to 1.7 uninstall the new brackets and reinstall 1.7. just give it a try." (https://github.com/jasonsanjose/brackets-sass/issues/180)
brackets sass플러그인 git페이지에서 이슈항목에서 답을 찾을 수 있었다.
브라켓을 삭제하고 1.7을 설치해서 해보니 매우 잘된다.
libsass bindings not found in..." 과 같은 오류가 날때 해결 방법."best solution? just downgrade the brackets app to 1.7 uninstall the new brackets and reinstall 1.7. just give it a try." (https://github.com/jasonsanjose/brackets-sass/issues/180)
brackets sass플러그인 git페이지에서 이슈항목에서 답을 찾을 수 있었다.
브라켓을 삭제하고 1.7을 설치해서 해보니 매우 잘된다.
2017년 7월 23일 일요일
괜찮았던 맥북 수리점.
숙대 뒷문 쪽인가..
상가 지하에 애플 제품 사설 수리점이 하나 있다.
아이폰이나 아이패드를 맡길일은 없었지만, 맥북은 몇차례 맡겼었다.
사장님과 이야기를 해보면 침수관련 사고가 많다고 한다.
내경우는 발열때문에 서멀좀 다시 바르고 펜 청소하다가 분질러 먹은 팬 교체작업을 받았었다.
비용은 혼자서고생하면서 알아본 노동을 대신하기엔 충분한 금액이었다고 생각한다.
...가게 이름이 기억이 안난다.
상가 지하에 애플 제품 사설 수리점이 하나 있다.
아이폰이나 아이패드를 맡길일은 없었지만, 맥북은 몇차례 맡겼었다.
사장님과 이야기를 해보면 침수관련 사고가 많다고 한다.
내경우는 발열때문에 서멀좀 다시 바르고 펜 청소하다가 분질러 먹은 팬 교체작업을 받았었다.
비용은 혼자서고생하면서 알아본 노동을 대신하기엔 충분한 금액이었다고 생각한다.
...가게 이름이 기억이 안난다.
MacOS 터미널에서 gedit명령을 쓰고 싶다.
환경변수 gedit등록.
vim편집기로 .bash_profile열기
vim ~/.bash_profile
vim편집기에서 다음을 추가.
alias gedit='open -a /Applications/TextWrangler.app'
/*
open -a 이후의 경로를 원하는 에디터 프로그램의 경로를 입력한다. 내 경우엔 텍스트랭글러를 애용하므로 텍스트 랭글러 경로로 잡았다.
*/
저장후 종료(:wq)
적용.
source ~/.bash_profile
실행(예시)
gedit textfile.txt
잘됨. 끝.
2017년 6월 23일 금요일
iptime nas에서 SVN세팅하기.
너무 욕심일지도 모르지만,
iptime nas관리툴에서 SVN을 설정하면,
개나소나 접근 가능한 SVN이 생성된다.
이상태로 쓰는건 문제가 있기 때문에,
다음과 같이 설정해서 쓰고 있다.
############ somesvn/conf/svnserve.conf 파일 ############
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = MY SOURCE
[sasl]
#####################################################
iptime nas관리툴에서 SVN을 설정하면,
개나소나 접근 가능한 SVN이 생성된다.
이상태로 쓰는건 문제가 있기 때문에,
다음과 같이 설정해서 쓰고 있다.
############ somesvn/conf/svnserve.conf 파일 ############
[general]
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
realm = MY SOURCE
[sasl]
#####################################################
############ somesvn/conf/passwd 파일 ############
[users]
dev1 = Anypassword1
dev2 = Anypassword2
design1 = Anypassword3
################################################
dev1, dev2, design1 계정을 만들었고,
각자 패스워드는 Anypassword1, Anypassword2, Anypassword3으로 했다.
############ somesvn/conf/authz 파일 ############
[aliases]
[groups]
worker = dev1, dev2, design1
[/]
@worker = rw
################################################
dev1, dev2, design1 계정을 만들었고,
각자 패스워드는 Anypassword1, Anypassword2, Anypassword3으로 했다.
############ somesvn/conf/authz 파일 ############
[aliases]
[groups]
worker = dev1, dev2, design1
[/]
@worker = rw
###############################################
작업자를 그룹으로 만들고,
작업자는 루트를 읽고 쓸 수 있게 했다.
이클립스나 기타 다른 개발툴에서 TAG와 BRANCH생성하려면 안될 것이다.
다음과 같이 TAG, BRANCH폴더를 만들어 줘야 한다.
참고로 iptime nas에서 SVN을 생성하면 파일시스템이 아닌 BDB로 저장되니 탐색기나 FTP로 접근해서 하는 시도는 의미 없을 것이다.(아마도..)
svn mkdir svn://mySvnServerUrlAnd:Port/mysvn/scratch_board/tags -m iNeedTags
브랜치도 만들어줘야 한다.
svn mkdir svn://mySvnServerUrlAnd:Port/mysvn/scratch_board/branches -m iNeedTags
끝~
안~~녀엉~~~
피드 구독하기:
글 (Atom)