일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- range
- Golang
- 리뷰
- GO 언어
- JavaScript
- Close
- Linux
- C
- 영화
- tcp
- write
- window
- windows
- install
- http
- go언어
- go
- 책
- channel
- json
- c++
- bitcoin
- mutex
- package
- Sync
- FOR
- Python
- File
- API
- Callback
- Today
- Total
목록전체 글 (203)
Code Habit
윈도우 기반 어플리케이션을 개발할 때 디버깅이 불편할 수 있다. 이 때 콘솔창을 띄워 printf 함수를 사용해 편하게 디버깅 할 수 있는데 다음 함수를 사용하면 된다. BOOL WINAPI AllocConsole(void) 매개변수는 없고 성공 시 0이 아닌 값을 반환한다. 콘솔을 생성하면 프로그램 종료 시 다음 함수로 해제 할 수 있다. BOOL WINAPI FreeConsole(void) 콘솔 생성 후 만약 printf함수가 출력 안될 시 AllocConsole다음에 아래와 같이 적어주자 ! freopen("CONOUT$", "wt", stdout ); 이제 윈도우 베이스 프로그램에서 번거로웟던 디버깅을 편리하게 할 수 있다 !
golang은 구글에서 개발한 언어로 간결하고 신뢰성 있으며 효율적인 소프트웨어를 손쉽게 만들기 위한 오픈소스 프로그래밍 언어이다. golang은 간결하며 편리하며 타 언어에 비해 배우는데 많은 시간을 할애하지 않는다. 컴파일 또한 직접적인 참조하는 라이브러리만 해석하므로 빠르다. golang에는 메모리를 관리해주는 가비지 컬렉션이 존재한다. 즉 c, c++처럼 직접 메모리를 할당하고 해제하는 번거로운 작업을 하지 않아도 된다는 얘기다. 다음은 golang을 이용한 기초 예제이다. package main func main() { println("golang 시작 !") } c와 같이 프로그램의 시작점을 제시해주는 main합수가 존재한다.
Vue는 사용자 인터페이스를 만들기 위한 프로그레시브 프레임워크 이다. 단일형 프레임워크와 달리 Vue는 점진적으로 채택할 수 있도록 설계되었다. 핵심 라이브러리는 뷰 레이어만 초점을 맞추어 다른 라이브러리나 기존 프로젝트와의 통합이 매우 쉽다. 그리고 Vue는 현대적 도구 및 지원하는 라이브러리와 함께 사용한다면 정교한 단일 페이지 응용프로그램을 완벽하게 지원할 수 있다. 다음은 간단한 예제이다. {{ message }} var app = new Vue({ el: '#app', data: { message: '안녕하세요 Vue!' } }) // 출력 결과 안녕하세요 Vue!

생각코딩. 코딩관련 서적인 줄 알고 구매했던 책이다. 사고보니 코딩관련 서적이 아닌 머리를 어떻게 하면 잘 쓰는지에 대한 내용을 풀어낸 책.. 어떤 일을 할때 무턱대고 하지 말고 생각을 정리해서, 즉 미리 기획하고 계획해서 잘 활용하라는 내용. 생각코딩부터해서 공부코딩, 업무코딩까지 다양한 분야에 대해 무엇이 문제이고 이를 해결하기 위해 어떻게 접근해야 하는지에 대해 다루고 있다. 일단 책의 장점으로는 머리 쓰는 방식에 관한 워낙 다양한 분야에 대해 정리해 놓았기 때문에 다양한 지혜를 얻기 좋은 책이었다. 그러나..호소력을 위한 것인지 다소 억지스러운 주장이 강한 부분이 있었고, 또 조금은 복잡하게 방법들을 제시해 "이 부분은 조금은 간결하게 풀어나가도 될거 같은데 이렇게까지 쪼개서 생각하고 다뤄야 하나..

제목에서 알수 있듯이 자기계발 서적이다. 사람이 성장하는데 필요한 항목과 무엇때문에 성장해야 하는지, 성장을 위해 무엇을 내려놔야 하고 "지금당장 !"의 의미를 강조한 책. 요즘 성장관련 자기계발서나 성공을 이룬 사람들의 조언들을 찾아보는데 그 사람들이 얘기하는 공통적인 항목이 있다. "당신이 무엇인가를 이루고 싶다면 지금 당장 시작해라" "실패를 두려워 하지 말아라" 너무 당연한 얘기 같지만 내 인생을 돌이켜 보면 많은 부분에서 와닿는 글귀들이다. 무엇인가를 이루기 위해 너무나도 힘들게 참아내면서 억지로 하는것은 옳지 않다. 당장 2~3년 빡시게 공부하고 열매를 맺을 수 있는 수험생도 아니고 앞으로는 100세 시대니까.. 꾸준히 성장하고 있는 자신의 모습에 보람을 느끼고 재미를 느껴야 하지 않을까. "..
회사에서 다루는 프로젝트들은 거의 협업으로 같이 개발을 하게 된다. 이때 소스와 버전을 관리하기 위해 사용하는 것이 Git이다. Git을 사용하게 되면 원격저장소에 다수의 사람들이 버전별로 소스코드 관리 및 머지(합치기)를 하는데 용이하다. Git으로 관리하는 프로젝트를 올려둘 수 있는 Git 호스팅 사이트는 다음과 같이 크게 세가지가 있다. - GitHub.com - GitLab.com - BitButcket.org Git에 소스코드를 올려두면 시간, 공간의 제약 없이 협업할 수 있다. 또한 프로젝트를 공개저장소로 만들면 전 세계 개발자와 협업할 수도 있다.
윈도우 어플리케이션에 Crash가 발생 하였을 때 우리는 이벤트 뷰어에서 죽은 모듈과 offset 정보등을 가져와 오류상황을 분석할 수 있다. 분석은 빌드 할때 생성한 mapfile과 cod 파일을 이용한다. 이벤트 뷰어를 읽어오는 함수로는 ReadEventLog가 있다. 사용하기 전 OpenEventLog로 이벤트 로그를 열고 CloseEventLog로 이벤트 로그를 닫아줘야 한다. 예제 소스는 다음과 같다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 HANDLE handle; PEVENTLOGRECORD pstRecord = NULL; DWORD dwRecord, dwRead, dwNeeded, dwCbAlloc =..

역사상 가장 위대한 왕인 세종과 천재 과학자 장영실이 같은 꿈을 품고 조선의 시간을 측정할 수 있는 천문 의기들을 만드는 이야기를 그린 영화. 결국 외의 압력에 못이겨 세종은 어쩔수 없이 극단의 조치를 취하지만 장영실에 대한 애정과 신뢰를 잃지 않고 장영실 또한 어려운 상황속에서도 세종에 대한 충심만큼은 절대 변하지 않는다. 스토리도 스토리지만 이 영화의 흥행 이유는 역시 세종과 장영실을 각각 연기한 두 배우 때문이 아닌가 싶다. 누구나 인정하는 오랜 관록의 연기파 배우 한석규와 최민식의 연기는 영화에 몰입하게 만들기에 충분했다. 가족과 함께 보기에 괜찮은 영화였고 나 역시 부모님을 모시고 함께 보았다. 개인적인 얘기지만 영화를 볼 때 당시 잠이 부족한 상태여서 영화에 대한 집중도는 조금 떨어졌지만 가족..