- 2011년독서모임 . . . . 356 matches
* 테마를 정하고 그 테마에 맞는 책을 각자 정해서 읽는다.
* [송지원] - 마리아 칼라스 내면의 열정의 고백 (앤 에드워드)
* '''책에 대해..''' 무대 위의 프리마돈나 마리아 칼라스.. 하지만 그녀의 어렸을적 환경을 돌아보면 재능이 있어 노래를 시키려고 했던 독한 엄마, 자신 때문에 인생을 포기해야만 했던 언니, 타국에서 달달이 돈을 보내주고 온 정성을 쏟았지만 가족들을 버렸다고 오해받은 아버지... 이런 환경에서 자라면서 친구 하나 사귀지 못하고 폭식증에 걸리며, 못생긴 얼굴 때문에 외톨이여야만 했다. 죽는 순간까지 그녀는 외로운 영혼이었고, 오직 무대에서 가장 크게 빛났다.
* '''느낌''' 우선!! 책읽기 모임에 참여하면서 오랜만에 독서를 하는 계기가 되었다. (전공 서적, 영어책 이외의 독서를 안한지 오래되었다는...OTL) 책을 전부 읽지는 못했지만 어렸을 때부터의 마리아를 보며, 그녀의 아름답기보단 압도적이고 풍부한 음색을 이해하게 되는 계기가 되었다. 이제는 마리아 칼라스의 노래를 들으면 어쩐지 그녀의 한이 느껴진다.
* 안철수는 아버지의 뒤를 이어 의사가 되기를 기대하는 부모님의 모습에, 자신의 생각을 접고 의대에 갔다. 그러다 자신이 쓰던 컴퓨터가 고장난 원인이 "바이러스"임을 알게되고 여러 자료를 찾아가며 치료제를 만들었다. 당시, 바이러스라는 존재를 모르고 당하는 사람이 많아, 안철수는 무료로 바이러스 백신을 배포하여 사람들한테 도움이 되고자 했다. 그대로 갔으면 의사로서 앞 날이 창창했겠지만, 자신을 찾는 사람이 있고 자신도 원하던 일을 하기 위해 "안철수 연구소"를 차리게 되었다. 그 모습을 지켜본 아내도 초기에 자리잡기 힘들었을 때 돈을 대주고, 지금은 반대로 자신이 원하는 일을 하기 위해 꿈을 찾아 갔다. 잘될거라는 긍정적인 마인드로 자신의 길을 관철해 나아가는 모습이 멋졌다. 늦었다고 포기하지 말고, 내가 진짜 원하는 일이 무엇인지 고민해보아야 겠다.
* 스페인의 위대한 건축가였던 가우디의 죽음을 살해되었다라는 가정을 바탕으로 시작된 소설이다. 어떠한 비밀을 가진 가우디는 비밀을 빼앗으려는 무리에 의해 살해 되지만, 비밀은 빼앗지 못하고 가우디와 같이 있던 아이에게 그 비밀이 전해진다. 시간이 흘러 아이는 할아버지가 되었고, 할아버지는 손녀에게 그 비밀을 전해주게 되면서 비밀을 빼앗으려는 무리에게 쫓기는 신세가 되면서 그 비밀을 파해쳐 간다.
* 가우디라는 사람에 대해서는 알고 있던 바가 적었으나, 이 책을 읽으면서 가우디가 어떤 사상을 가지고 있었는지, 왜 가우디의 건축물이 그러한 모양을 하고 있는지, 왜 사그라다 파밀리아 성당이 100년이 지난 지금도 지어지고 있는지에 대해서 조금이나마 자세히 알 수 있었다. 스페인에 갔었을 때 이러한 것을 알고 갔었다면 조금더 그 건물들을 보는 느낌이 달랐지 않았을까 하는 아쉬움이 남았다.
* 데미안은 싱클레어의 성장소설이다. 자신도 친구들과의 대화에 끼기 위해 물건을 훔쳤다고 거짓말을 한 싱클레어는 프란츠 크로머가 주인한테 일러 포상금을 타겠다는 협박을 하자 크로머의 온간 잡일을 맡게되며 무마를 시도한다. 하지만 나쁜 일을 하게 되면서 점점더 약점이 잡혀간다. 그러던 그를 데미안이 구제해준다. 하지만, 싱클레어는 그 일을 금새 잊고는 자유를 누린다. 그러다 술+담배+여자(!)의 막장 길을 타다가 우연히 길에서 스치듯 지나간 여자를 보고 정신을 차리기도 하고, 자신의 이상형을 손이 가는데로 그렸는데 데미안과 비슷한 인상의 사람이 그려지기도 했다. 이 그림은 싱클레어의 성장에 맞춰 점점 데미안의 모습에 가까워진다. 교회에서 만난 피아노 치는 사람한테서 '''압락사스'''의 존재에 대해 심도있게 알게되고, 불 앞에 엎드려 명상을 하면서 깨달음을 얻기도 한다. 데미안과 그의 어머님을 만나 깨달음은 극에 이르고, 전쟁이 발발하면서 징병나간 그곳에서 마침내 데미안과 하나가 된다.
* 어렸을 때는 말도 어렵고, 내용 자체가 이게 뭔 말인지 이해가 안갔었다. 지금은 인간으로서 선한 쪽 일만 할 수 없기 때문에 선+악이 공존하는 압락사스가 등장했다는 것과, 어려워질 때마다 등장하여 이끌어준 데미안이라는 존재에 가까워져가는 싱클레어의 성장기라는 것은 이해가 간다. 하지만 싱클레어의 내면 중에 데미안의 어머님을 엄마 혹은 연인으로 동일시하는 것과 데미안이 프란츠 크로머로부터 구해줘도 고마워하지 않는 것은 이해가 가지 않는다. 나중에 한번 더 읽어야 할 필요성을 느꼈다. '''이해가 안갔던 영화'''에 대해서도 이야기를 나눴는데 내가 생각한 것은 [http://movie.naver.com/movie/bi/mi/basic.nhn?code=17368#story 마법의 빗자루]였다. 편지를 받아가며 공부했던 견습 마녀 1명 외에 다른 사람들은 편지를 보낸 사람이 사기꾼인지 인식 못했다던지, 사기꾼이었던 브라운 교수가 가진 나머지 반의 책을 찾기 위해 시장에 갔다가 그 책을 노리는 또 다른 무리를 만났는데 어느 순간 안보인다던지, 마법의 주문을 찾기 위해 애니메이션 세계로 갔는데 그 곳에서 가져온 물건은 사라진다던지, 사물을 움직이는 마법 주문을 공부하려던 이유가 전쟁에 도움이 되기 위해서이었다는 사실이라던지 무언가 내용 구성 측면에서 허술하고 이해 안가는 전개가 많았다. 하지만 침대를 통해 원하는 장소로 이동이 가능하고, 사물을 움직이고, 토끼로 변하는 등 어렸을 때 가족끼리 보기에는 좋았다.
* 몰입을 위해서는 외적, 내적 동기화가 필요하다는걸 잘 알려주는 책입니다. 일과 재미의 경계를 허물자는 내용이 메인으로 담겨있고, 그를 뒷받침하는 분야별 몰입, 통계자료가 많이 나옵니다.
* 몰입에 대한 얘기가 참 많이 나오지만 몰입하기 참 어려운 책이었습니다. 동기화를 한다고 해도 '절실함'이 없으면 몰입하기 어렵고 실천하기 어렵다는게 제 생각인데 그런 부분에 대한게 별로 없어서 아쉬웠습니다. 자신이 몰입으로 이러한 성공을 거두었다는 내용이 있었으면 몰입의 효과에 대해 더 와 닿았을지 모르지만 자신이 연구를 위해 조사했던 남얘기 위주입니다.
* 영화 중에 제작자의 의도가 이해하기 어렵다고 느낀 영화는 장쯔이, 금성무, 유덕화 주연의 영화 '''연인'''이었습니다. 아름다운 엔딩 장면을 만들기 위해서 였겠지만, 장쯔이는 자신의 가슴에 박힌 칼을 빼서 금성무를 구하려고 하여 죽게 됩니다. 그러나 칼 맞아서 죽은줄 알았던 장쯔이가 봄,여름,가을,겨울까지 금성무와 유덕화가 싸우고 급 일어난 부분과, 유덕화가 사실은 금성무에게 칼을 던지지 않고 던지는 '척'만 하여 결국 장쯔이의 희생이 개죽음이 되어버린 부분은 다소 아쉬웠습니다. (너무 결과만 보는 걸까요...) 극적인 반전을 위해 스토리적 공감을 포기한 부분이었다고 생각되었습니다.
* 저는 그냥 '몰입'이라는 책을 읽었습니다. 비슷한 내용인 것 같아요. 거기서 몰입하는 방법에 대한 방법이 아주 짧게 나와있는데, 몰입할 대상을 의식적으로라도 계속 생각하면 자연스럽게 몰입이 가능하다는 말이 있었어요.. 연구원들이 쓰기에 좋은 방법이라고 하더군요.. - [서지혜]
* 알랭 드 보통의 왜 나는 너를 사랑하는가라는 책은 처음 이 책을 받았을 때 단순한 소설이라는 생각을 가지고 있었지만, 조금 읽고 나니 이 책은 단순한 소설이 아니라는 것을 알게되었습니다. 책에는 우리가 이성과의 만남과 교재 중 벌어지는 일 (예를들어, 다툼이라던지 연인과의 첫 키스라던지..) 그리고 헤어짐에 대하여 단순히 그런 일이 있었다가 아닌 이러한 일이 일어나게 된 철학적인 분석과 여러가지 (확률이랄지..)가 어우러져 그 효과를 독자에게 전달하고 있다. 그래서인지 어느정도는 이해가 되다가 나중에 가서는 '뭐 어쩌라는거임....' 이라는 생각도 들게 하는 책이었습니다.
* 어렸을 때 가족들이 영화를 보고 있길래 옆에서 그냥 같이 봤었던 (제목은 기억 안나고..) 영화 두편이 있었습니다. 하나는 (독서모임때는 베트남이 배경이라고 이야기 했는데,, 생각해 보니까 인도였습니다 -_-;;) 인도에 주둔하던 영국군이 나오는데.. 정확한 스토리는 기억 안나 패스 하겠습니다.. (죄송;) 다른 한 편의 영화는 한 시나리오 작가가 한 시나리오로 소위 대박을 터뜨리고, 그로 인해 영화사에서 얼마든 시간을 줄테니 시나리오를 써 달라고 합니다. 처음에는 시나리오가 딱히 생각이 나지를 않아 고민하고 있을 때 영화사 사장은 뭐든 생각나는 것을 자유롭게 써 달라고 합니다. 그 때, 옆에 있던 영화사 사장 비서가 작가에게 나같으면 사장님께 지금 머리에 있는것을 자유롭게 이야기 하겠다면서 어서 이야기 하라고 하다가 짤립니다 -_-; 뭐 그렇게 작가는 시나리오를 써 가는데 옆집에 사는 남자와 친하게 지냅는 장면이 나옵니다. 사실 그 이웃사촌은 살인마였습니다. 하루는 그 이웃사촌이 작가에게 상자를 하나 맡기고 (중요한 거라고 이야기 하면서) 잠시 어디를 좀 갔다 오겠다 하고 사라집니다. 그렇게 작가는 다시 글을 쓰는데 그 작가의 책상 위 벽에는 해변에 비키니를 입은 여자 사진이 있습니다. 뭐 이곳에 가고 싶다는 둥의 이야기를 한 거 같은데.. 뭐 아무튼.. 그러고 얼마 안가 작가는 자신이 생각하는 엄청난 시나리오를 만들게 됩니다. 하지만, 영화사 사장의 마음에는 들지 않았습니다. 그리고 당시 배경이 제 2차 세계대전으로 애국심이 불타오르던 시기여서인지 사장은 그러한 영화를 원한다고 말하고 그 짤랐던 비서를 다시금 데려와야겠군 이라며 나갑니다. 그러고 집에 돌아오니 낯선 남자 둘이서 작가의 시나리오를 읽고 있었습니다. 그들은 옆집에 살던 살인마를 쫓아 왔다며, 행방을 묻습니다. 그러면서 이웃이 주고 갔던 상자에 사람의 목이 들어있다고 말합니다. 그때 옆집 남자가 돌아오고 낯선 남자 둘과 싸움이 납니다. 작가의 집은 불타고 작가와 살인마는 몇마디 주고 받더니 작가는 정장을 입고 유유히 집을 빠져나갑니다. 그렇게 작가는 어느 해변가에 도달하고 해변가에서 어느 비키니를 입은 여자와 몇마디 주고 받더니 작가의 벽에 걸려 있던 사진과 같은 장면이 연출이 되면서 끝이 납니다..... 생각나는데로 시나리오를 적은건데.... 뭘 말하는건지는 모르겠습니다. 별 다섯개를 받은 영화인데 -_-;; 언제 인터넷 검색을 해서 좀 찾아봐야 될 것 같은 생각을 가지게 된 시간이었습니다.;
* 책의 주인공인 스기하라는 일본에 사는 교포입니다. 그런 교포의 관점에서 바라본 일본 사회의 모순과 조국에 대한 생각과 관점, 연예기 등을 다루고 있습니다. 결국 스기하라는 이러한 일본 사회에 커다란 '즐 -_-;;' 을 날리고 끝난다고 보면 되는데요, 이 책을 읽고 난 후 우리나라에 살고 있는 많은 외국 국적을 가진 사람들이 격고 있는 바가 이와 다르지 않다는 것 같다는 생각이 들었고, 만약 제가 외국에 나가 살게 된되서 이와 같은 상황에 국면하게 되면 과연 나는 어떻게 대응하게 될까 라는게 궁금했습니다.
* 이와 관련해서 외국 음악이랑 외국 영화에 나오는 한국에 대해 찾아보려 했는데요,, 급 귀차니즘 때문에 외국 음악에 나오는 한국 관련된 것만 찾았다는...; 뭐,, 그래서 찾은 것이 Gary Moore의 Murder in the skies 라는 노래인데, 이 노래는 1983년 9월 1일에 뉴욕에서 출발한 한국행 비행기가 소련의 영공에 침범 했나(? -_-;; 죄송;;) 그래서 소련의 전투기가 Kal기를 격추시키는 일이 발생하였는데, 그것을 내용으로 소련의 만행으로 무고한 사람들이 죽음을 당했다는 것을 비판한 노래라 소개 했었고, 또 하나 찾아봤었던게 Deftones의 Korea라는 노래인데... 알고보니까 그냥 노래 내용이 어떤 소녀에 대한 이야기인데 그 소녀의 이름이 한국인 성과 비슷해서 그냥 그렇게 썻다고 해서 패스했습니다.
* 먼지의 여행은 대학을 졸업하고 변변찮은 직장조차 얻지 못하고, 뒤늦게 자신이 해왔던 일이 무의미했었다 좌절하던 주인공이 우연히 순례자 부부를 만나면서 하게된 여행기입니다. 돈을 벌어 악착같이 살아야한다는 강박에서 벗어나 돈 없이 세계여행을 갑니다. 처음에는 순례자 부부를 따라다니며 그 사람들을 따라하려하지만, 이 역시 그저 남의 경험을 얻어먹으려는 행위로 밖에 여겨지지 않아 자신이 혼자 여행을 떠납니다. 콜키타에 있는 마더하우스에서 고아원 봉사활동을 하며 아이들의 순수함을 보며 깨달음을 얻고, 그 때 그 때를 즐기는 삶을 살게 됩니다. 돈 없이도 사람이 행복할 수 있다는 것을 깨닫습니다.
* 주변의 바람에서 벗어나 자신이 진정으로 하고싶은 일이 무엇인가 자아를 찾아가는 과정이 인상깊었습니다. 특히, 남이 나보다 더 오래 살았고, 많은 경험을 했으니까 나한테 맞는 조언을 해줄 수 있을 거라는 막연한 생각이 잘못되었다는 말에 충격을 받았습니다. 외국인 부부한테 조언을 구했지만 주인공한테 왜 그걸 남이 정해주느냐는 말을 했습니다. 이 책의 주인공이 깨달은 것처럼 타인의 삶이 영향을 끼칠 수는 있지만, 자신의 삶을 개척하는 것은 결국 자신인듯 합니다. 스터디를 할 때, 나보다 잘 하는 사람이 내가 어떻게 해야할 지 도와줄꺼라 생각하고 나는 약간 비껴서서 참여하는 경향이 있었는데, 작은 것부터 주체적으로 되야할 필요성을 느꼈습니다.
* 이상한 나라의 앨리스의 2부라고 말은 많이 들었는데, 실제로 읽어본 건 이번이 처음이었어요. 내용이 이어지는 건 아니고, 그냥 처음과 끝의 구성이 비슷하고 앨리스가 등장한다는 것 외에는 없는 듯 합니다. 앨리스는 7살 하고도 6개월인 호기심이 왕성한 나이여서 그런지 모든 것을 신기한 관점에서 바라봅니다. 거울 건너편은 이쪽세계와 비슷한듯 하지만 좌우가 뒤바뀌었고, 실제로 안 보이는 부분은 이쪽세계와 다를지도 몰라! 라고 생각하고, 거울 건너편 세계를 구경하고 싶어 합니다. 그래서 손을 댓는데, 어느 순간 건너편 세계로 넘어옵니다. 거울에 비치지 않았던 부분은 과연 색다른 모양을 하고 있었고, 조그만 체스 왕과 여왕이 움직이는 것이 보여, 말을 걸지만 앨리스를 보지도 듣지도 못합니다. 문 밖을 나와 언덕에 가려하는데 아무리 이동해도 제자리로 돌아와 있어, 반대로 이동하니 언덕으로 이동하는 것은 거울이 반대편이라 그런듯 합니다. 곤충에게 이름이 붙여있는 이유는 사람들이 부르기 편한게 아니라, 실제로 이름을 불러주면 대답을 해올거라 조언해주는 모기나, 땅 침대가 푹신하지 않고 딱딱하기 때문에 꽃들이 잠들지 않고 재잘재잘 말을 할 수 있게 되었다던지, 체스 사람들이 밖에서 앨리스만큼 커진 이유는 밖이 탁하지 않기 때문이라던지 독특한 관점이 많습니다. 앨리스의 이동은 체스 말의 이동에 비유되어 처음에는 졸로서 한 칸씩 이동하다가 여왕을 잡고 잠이 깹니다. 초반에 잠을 자고 있던 왕 체스 말이 꾼 꿈인지, 아니면 앨리스가 꾼 꿈인지 묻는 질문과 함께 이야기가 끝납니다.
- MoreEffectiveC++/Miscellany . . . . 214 matches
좋은 소프트웨어는 변화를 잘 수용한다. 새로운 기능을 수용하고, 새로운 플랫폼에 잘 적용되고, 새로운 요구를 잘 받아 들이며, 새로운 입력을 잘 잡는다. 이런 소프트웨어는 유연하고, 강하고, 신뢰성있고, 돌발 상황(사고)에 의해 죽지 않는다. 이런 소프트웨어는 미래에 필요한 요소를 예상하고, 오늘날 구현시에 포함시키는 프로그래머들에 의해서 디자인된다. 이러한 종류의 소프트웨어는-우아하게 변화하는 소프트웨어- ''program in the future tens''(매래의 프로그램:이하 영문 직접 사용)을 감안하는 사람들이 작성한다.
''program in future tense''는, 변화의 수용하고, 준비한다. 라이브러에 추가될 새로운 함수, 앞으로 일어날 새로운 오버로딩(overloading)을 알고, 잠재적으로 모호성을 가진 함수들의 결과를 예측한다. 새로운 클래스가 상속 계층에 추가될 것을 알고, 이러한 가능성에 대하여 준비한다. 새로운 어플리케이션에서 코드가 쓰이고, 그래서 새로운 목적으로 함수가 호출되고, 그런 함수들이 정확히 동작을 유지한다. 프로그래머들이 유지 보수를 할때, 일반적으로 원래의 개발자의 영역이 아닌, 유지 보수의 몫을 안다. 그러므로, 다른 사람에 의해서 소프트웨어는 이해, 수정, 발전의 관점에서 구현하고 디자인된다.
이런 좋은 소프트웨어를 만들기 위한 방법으로, 주석이나, 기타 다른 문서 대신에 C++ 내부에 디자인으로 구속해 버리는 것이다. 예를들자면 '''만약 클래스가 결코 다른 클래스로 유도되지를 원치 않을때''', 단시 주석을 헤더 파일에 넣는 것이 아니라, 유도를 방지하기 위하여 C++의 문법을 이용한 기술로 구속 시킨다.;이에 대한 방법은 '''Item 26'''에 언급되었다. 만약 클래스가 '''모든 인스턴스를 Heap영역에 생성시키고자 할때''', 클라이언트에게 말(문서)로 전달하는 것이 아니라. '''Item 27'''과 같은 접근으로 제한 시켜 버릴 수 있다. 만약 클래스에 대하여 복사와 할당을 막을려고 할때는, 복사 생성자와 할당(assignment) 연산자를 사역(private)으로 만들어 버려라. C++은 훌륭한 힘과, 유연성, 표현성을 제공한다. 이러한 언어의 특징들을 당신의 프로그래밍에서 디자인의 정책을 위해서 사용하라.
"변화한다.", 험난한 소프트웨어의 발전에 잘 견디는 클래스를 작성하라. (원문:Given that things will change, writeclasses that can withstand the rough-and-tumble world of software evolution.) "demand-paged"의 가상 함수를 피하라. 다른 이가 만들어 놓지 않으면, 너도 만들 방법이 없는 그런 경우를 피하라.(모호, 원문:Avoid "demand-paged" virtual functions, whereby you make no functions virtual unless somebody comes along and demands that you do it) 대신에 함수의 ''meaning''을 결정하고, 유도된 클래스에서 새롭게 정의할 것인지 판단하라. 그렇게 되면, 가상(virtual)으로 선언해라, 어떤 이라도 재정의 못할지라도 말이다. 그렇지 않다면, 비가상(nonvirtual)으로 선언해라, 그리고 차후에 그것을 바꾸어라 왜냐하면 그것은 다른사람을 편하게 하기 때문이다.;전체 클래스의 목적에서 변화를 유지하는지 확신을 해라.
원리를 구현하기 위해 특이하게 하지 마라.:연산자와 함수를 자연스럽고 명시적인 문법으로 제공하라. built-in(기본 자료) 형으로 구현하라:의심될때는 int로 하라
어떤이가 무언가를 '''할수있다는것''' 알게되면 그들을 그것을 '''할것이다.''' 그들은 예외를 던질 것이다. 그들은 그들 스스로에게 객체를 할당할 것이다. 그들은 값을 제공하기전에 객체를 사용할 것이다. 그들은 객체를 제공하겠지만, 결코 사용하지 않는다. 그들은 커다란 값을 제공할 것이다. 그들은 아주 작은 값을 제공할 것이다. 그들은 null 값을 제공할 것이다. '''일반적으로 만약 컴파일이 되면 어떤이가 그것을 할것이다.''' 결과적으로 당신의 클래스를 정확히 사용하는건 쉽게, 이상하게 사용하는건 어렵게 만들어라. 클라이언트가 실수를 하도록 해라 그리고 당신의 클래스들이 그러한 에러들을 방지하고, 찾고, 수정할수 있게 만들어라. (예를들어 Item 33 참고)
이식성 있는 코드를 만들어라. 이식성 있는 프로그램의 제작은 그렇지 않은 경우보다 매우 어려운게 아니다. 그리고 눈에 보일 만큼 성능면에서 이식성 없는 코드를 고집해야 하는 경우는 희귀하다.(Item 16참고) 특정한 하드웨어를 위한 프로그램의 디자인에서도, 얼마 안있어 하드웨어 성능이 동일한 수준의 성능을 가져다 주므로, 이식성 있도록 만들어라. 이식성 있는 코드의 작성은 플랫폼 간의 변환에 쉽고, 당신의 클라라이언트 기반을 공고히 하고, 오픈 시스템의 지원에 관하여 좋다. 만약, 한 OS에서 성능이 실패해도, 쉽게 복구할수 있다.
당신의 코드를 변화가 필요할때, 그 효과를 지역화(지역화:localized) 시키도록 디자인 해라. 가능한한 캡슐화 하여라:구체적인 구현은 private 하라. 광범위하게 적용해야 할곳이 있다면 이름없는(unamed) namespace나, file-static객체 나 함수(Item 31참고)를 사용하라. 가상 기초 클래스가 주도하는 디자인은 피하라. 왜냐하면 그러한 클래스는 그들로 부터 유도된 모든 클래스가 초기화 해야만 한다. - 그들이 직접적으로 유도되지 않은 경우도(Item 4참고) if-than-else을 개단식으로 사용한 RTTI 기반의 디자인을 피하라.(Item 31참고) 항상 클래스의 계층은 변화한다. 각 코드들은 업데이트 되어야만 한다. 그리고 만약 하나를 읽어 버린다면, 당신의 컴파일러로 부터 아무런 warning를 받을수 없을 것이다.
이와 같은 내용들을 아무리 반복해서 말하곤 하지만, 대부분의 프로그래머들은 현재의 시류를 그대로 고집한다. 훌륭한 안목의 C++ 전문가가 말하는 충고에 관해서 생각해라.
* 당신은 B*가 가리키고 있는 D를 제거할때 가상 파괴자를 필요로 한다.
그 의미는 클라이언트 코드에 대하여 약간의 변화가 -delete문-결과적으로 클래스 B의 정의까지 변화해야 하는 필요성을 보여준다. 그런한 상황이 발생하면, B의 클라이언트들은 모두 재 컴파일 해야 한다. 아까, 이 필자의 충고를 따르면, 확장 코드에 대한 클라이언트의 라이브러리도 재 컴파일, 재 연결해야 한다. 이는 소프트웨어 디자인에 효과를 미틴다.
* 만약 public base class가 가상 파괴자를 가지고 있지 않다면, 유도된 클래스나, 유도된 클래스의 멤버들이 파괴자를 가지고 있지 않다.
이렇게 반복에서 말하는거 같이 현재의 시류를 생각하는걸 주시하라. 클라이언트가 '''지금''' 늘어나고 있는 의견들에 대하여 어떻게 해야 하는가? 어떤 클래스 멤버가 '''지금''' 파괴자를 가지고 있는가? 계층상에 어떤 클래크가 '''지금''' 파괴자를 가지는가?
미래의 시류로 생각하는 관점은 완전히 다르다. 지금 어떻게 클래스를 사용하느냐를 묻는것 대신에, '''어떻게 클래스를 디자인 하느냐를 묻는다.''' 미래 지향적 생각으로는 이렇게 말한다. 만약 기초 클래스로 사용된 클래스가 '''디자인''' 된다면 그 클래스는 가상 파괴자를 가져야 한다. 그러한 클래스는 지금과 미래 모두 정확히 동작해야 한다. 그리고 그들오 부터 클래스들이 파생될때 다른 라이브러리의 클래스에게 영향을 끼쳐서는 안된다. ( 최소한, 파괴자로 인한 논란 만큼, 영향이 없어야 한다. 추가적인 변화가 클래스에 필요하면 다른 클라이언트들오 아마 영향을 받을 것이다.)
상업용 클래스 라이브러리(C++표준 라이브러리 상의 string 스펙의 날짜를 앞당기려는 회사)는 가상 파괴자를 가지고 있지 않은 sting클래스를 포함한다. 그 벤더의 설명은?
확실히 vtbl 문제는 합법적인 접근이다. (Item 24참고) 대다수 String클래스의 구현에서 오직 하나의 char*를 각각의 String 객체가 가지고 있다. 그래서 각 String객체에 추가되는 vptr도 두배의 양을 차지한다. 허용하지 않으려는 이유는 이해하기 쉽다. String같은 클래스를 무겁게 사용하면 눈에 띠는 성능 저하가 있다. 앞서 언급한 경우 클래스당 성능 저하는 약 20%정도를 가지고 온다. (Item 16참고)
문자열 객체에 대한 메모리의 할당은-문자의 값을 가지고 있기 위해 필요로하는 heap메모리까지 감안해서-일반적으로 char*이 차지하는 양에 비하여 훨씬 크다. 이러한 관점에서, vtpr에 의한 오버헤드(overhead)는 미미하다. 그럼에도 불구하고, 그것은 할만한(합법적인,올바른) 고민이다. (확실히 ISO/ANSI 포준 단체에서는 그러한 관점으로 생각한다. 그래서 표준 strnig 형은 비 가상 파괴자(nonvirtual destructor) 이다.)
어떤 것이 더 많은 문제를 일으키는 것으로, 밴더들의 주목을 받고 있을까? "우리는 String*을 사용하는 목적을 가지지 않는다. 그래서 이는 별 문제가 되지 않는다." 그건 아마 사실일 것이다. 하지만 그들의 String클래스는 수많은 개발자들이 사용가능한 것이다. 수많은 개발자들이 C++의 수준이 제각각이다. 이러한 개발자들이 String상에서의 비가상 파괴자(no virtual destructor)를 이해할까? 그들이 비가상 파괴자를 가진 String때문에 String으로 유도된 새로운 클래스가 모험 비슷한 것을 알고 있을까? 이런 벤더들은 그들의 클라이언트들이 가상 파괴자가 없는 상태에서 String*를 통하여 삭제가 올바르게 작동하지 않고, RTTI와 String에 대한 참조가 아마 부정확한 정보를 반환한다는걸 확신시킬까? 이 클래스가 정확히 쓰기 쉬운 클래스일까? 부정확하게 쓰기 어려운 클래스일까?
대안으로 C++을 사용할때 유도를 제한해 버리는 것이다. Item 26에서 어떻게 객체를 heap에 만들거고 auto_ptr객체로 heap객체를 조정하는 방법에 관해서 언급하였다. String을 위한 인터페이스 생성은 아마 독특하고 불편한 다음과 같은 문법 을 요구한다.
물론, 필요하다면 현재 감안하는 생각으로 접근한다. 당신이 개발중인 소프트웨어는 현재의 컴파일러에서 동작해야만 한다.;당신은 최신의 언어가 해당 기능을 구현할때까지 기다리지 못한다. 당신의 현재 가지고 있는 언어에서 동작해야 하고. 그래서 당신의 클라이언트에서 사용 가능해야 한다.;당신의 고객에게 그들의 시스템을 업그레이드 하거나, 수행 환경을(operating environment) 바꾸게 하지는 못할것이다. 그건은 '''지금''' 수행함을 보증해야 한다.;좀더 작은, 좀더 빠른 프로그램에 대한 약속은 라이프 사이클을 줄이고, 고객에게 기대감을 부풀릴 것이다. 그리고 당신이 만드는 프로그램은 '''곧''' 작동해야만 한다. 이는 종종 "최신의 과거"를 만들어 버린다. 이는 중요한 속박이다. 당신은 이를 무시할수 없다.
- Linux/필수명령어/용법 . . . . 153 matches
그외에도 홈 디렉토리에 사용하는 셸 등을 계속 물어오는데, 대괄호 속에 내정된 것을 그냥 사용하고자 한다면 엔터키만 누르면 된다. 패스워드 등을 입력하고 나면 지금까지 입력된 정보를 보여주고, 몇 가지 생성 작업을 화면으로 보여준 후 작업을 종료한다.
/etc/at.allow 파일이 있다면 이 파일에 명단이 있는 사용자만이 at 명령을 사용할 수 있다. /etc/at.allow 파일이 없다면 /etc/at.deny 파일을 찾는다. 이 파일에 목록이 있는 사용자는 at 명령을 사용할 수 없다. 두 파일 모두 찾지 못한다면 오로지 슈퍼 유저만이 at 명령을 사용할 수 있다. 그리고 /etc/at.deny 파일이 비어 있다면 모든 사용자가 at 명령을 사용할 수 있다.
시간을 지정할 때 상당히 다양한 방법을 사용할 수 있다. hhmm 혹은 hh:mm 형태도 가능하며, noon, midnight이나 오후 4시를 의미하는 teatime이라고도 할 수 있다. 오전 오후를 쉽게 구분하려면 am pm 문자를 추가해도 된다. 이미 지나간 시간이라면 다음 날 그 시간에 수행될 것이다. 정확한 날짜를 지정하려면 mmddyy 혹은 mm/dd/yy 아니면 dd.mm.yy 형태 중 선택하라.
현재부터 얼마의 시간이 경과한 후에 수행할지를 지정하려면 기호를 사용하라. 이 기호뒤에 숫자를 명시하고, 다시 뒤에 그 숫자의 단위가 무엇인지 지정하면 된다.
이것은 리눅스의 Boume 셸이다. sh를 사용하면 sh가 bash를 호출하여 실행한다. bash를 직접 사용하지 말고 sh를 사용하도록 하라.
유닉스 셸은 사용중이라도 주기적으로 전자우편의 수신 여부를 점검한다. 만일 사용자가 전자우편이 도착하는 즉시 알고자 한다면 biff를 사용하여 그것을 지시할 수 있다. 또는 언제라도 그 기능을 해제할 수도 있다. biff는 인수없이 사용되면 현재 어떤 상태로 되어 있는지 보여준다. 기능 설정과 해제 여부는 y 혹은 n 인수를 주어서 결정한다.
- is n ,,전자우편 수신 즉시 통고 기능은 설정되어 있지 않음
-s : 중복되고 겹치는 빈 행은 하나의 빈 행으로 처리한다.
유닉스 시스템은 기본적으로 텍스트 자료들을 처리하는 것을 매우 중요시 여겼다. 많은 초기 설정 작업들이 텍스트 문서로 이루어지고, 텍스트 문서를 처리하는 수많은 명령들이 있다. cat 명령은 그러한 것들 중 기본적인 것이다.
이렇게 하면 키보드로부터 입력을 받고, ^d로 입력이 끝나면 다시 표준 출력 장치인 화면으로 출력한다.
디렉토리 이름과 cd 명령 사이에 반드시 공백이 있어야 한다. 디렉토리 이름을 주지 않고 수행하면 사용자의 홈 디렉토리로 이동한다. 자신이 이동하고자 하는 디렉토리는 자신에게 실행 권한(execution permission)이 있어야 한다.
파일의 소유자나 슈퍼 유저만이 파일의 그룹 소유권을 바꿀 수 있다. chgrp 명령 뒤에 원하는 옵션을 사용한 후 목적하는 그룹의 이름을 명시하고 대상 파일의 이름을 명시한다.
두 번째 형식은 어떤 사용자 레벨을 바꿀 것인가 어떻게 바꿀 것인가를 개별적으로 정하는 방법이다. 숫자를 사용하지 않고 ls 등을 사용할 때 실제로 볼 수 있는 기호 문자를 사용한다는 것과 특정 권한을 줄 것인가 뺄 것인가 지정할 수 있다는 장점이 있다. 특정한 경우 두 번째 형식이 편리하겠지만 고유한 값의 권한을 지정하는데에는 첫 번째 형식이 훨씬 편리할 것이다. 8진법을 다루는 것은 조금만 알면 너무나 쉽기 때문이다.
- $ chmod 666 broadboard ,,파일을 모두가 읽고 쓸 수 있도록 한다.
파일 소유자는 실행권한을 추가하고, 그룹은 쓰기 권한을 금지한다.
만일 중간에 다른 점을 발견한다면 더 이상의 작업은 중단하고 차이를 발견한 지점을 알려주고는 종료한다. 또한 계속해서 일치해 나가다가 두 파일 중 어느 하나가 끝나는 경우가 있을 수 있다. 다시 말해, 한 파일이 다른 파일의 앞부분에 해당하는 경우이다. 이때는 어느쪽 파일의 end of file 표시를 만나게 되었는지를 알려주고 종료한다.
오프셋을 지정하면 파일의 어느 부분부터 비교할 것인지를 정할 수 있다. -s 옵션이 왜 필요한 지를 이해하지 못할 테지만, cmp 명령이 보이지 않게 리턴값을 들려준다는 점을 알면 이해할 수 있을 것이다. cmp는 비교 후 두 파일이 일치한다고 판단하면 0을 리턴하며, 그렇지 않으면 1을 리턴한다. 셸 스크립트 상에서 비교 결과만을 원하고 화면에 메시지가 출력되는 것을 원치 않을 때에는 이러한 옵션을 사용할 수 있을 것이다. C 언어를 아는 사람이라면 금방 이해할 수 있었으리라 생각된다.
-f : 수행 결과 파일과 같은 이름의 파일이 있다면 물어보지 않고 덮어쓴다. 또한 파일의 크기가 줄어들지 않더라도 파일 이름에 .Z를 추가한다.
압축된 파일은 이름에 접미사 .Z가 추가된다. 압축 알고리즘에 의해 크기가 줄어드는 경우만 압축을 수행한다. -d 옵션은 역으로 압축을 풀지만 uncompress를 사용하면 옵션을 주지 않고 압축을 풀 수 있다. 압축을 푸는 경우 파일 이름 뒤에 접미사 .Z를 생략할 수도 있다.
-d : 심볼릭 링크는 심볼릭 링크로 복사한다. 그리고 원본 파일과의 하드 링크 관계를 유지한다.
- EffectiveC++ . . . . 115 matches
define 된 ASPECT_RATIO 란 상수는 1.653으로 변경되기때문에 컴파일러는 ASPECT_RATIO 란것이 있다는 것을 모르고 symbol table 에?들어가지 않는다. 이는 debugging을 할때 문제가 발생할 수 있다. -인택
typedef string AddressLines[4]; // 개인 주소는 4개의 줄을 차지하고
그러나, 나중에 이렇게 만든 클래스를 누군가가 개선될경우 그리고, 개선된 클래스에서 포인터 멤버를 추가하게[[BR]]
그리고, class내 에서 operator new와 set_new_handler를 정해 줌으로써 해당 class만의 독특(?)한 [[BR]]
내 생각에는 이런게 있다라고만 알아두면 좋을것 같다. --;
''- 할당 루틴들이 new 핸들러 함수(memory 할당시 예외 처리같은 거들) 를 지원하고 [[BR]]
// 위한 최선의 방법은 다음과 같이 "잘못된" 양의 메모리를 요청하고 있는
크기를 나타내 주는 추가적인 정보를 같이 붙여 memory를 할당해 준다고 합니다. 그런데, operator new연산자를 [[BR]]
DeleteMe 그런 의미보다 String 이나, linked list 혹은 기타 여러 기타 데이터 형으로 많은 수의 할당을 통해서 쓸수 있는 인자의 경우에는 사용자 정의 new를 이용하여 가능하면 공용 메모리 공간에서 활동시켜서, 메모리 할당 코드를 줄이고 (메모리 할당의 new와 alloc는 성능에 많은 영향을 미칩니다.) 메모리를 줄이고 효율적 관리를 할수 있다는 의미 같습니다. 그런 데이터 형으로 쓰이는 인자가 아닌 한 app안에서 단 한번만 사용되는 클래스라면 구지 new를 성의해서 memory leak의 위험성을 증가 시키는 것보다, 일반적인 new와 생성자 파괴자의 규칙을 쓰는것이 좋을겁니다. --상민
객체 a의 포인터는 문자열 "Hello"를, 객체 b내의 포인터는 "World"문자열을 담고 있는 메모리를 가리킨다.[[BR]]
이 상태는 적어도 두가지의 문제점을 가지고 있다.[[BR]]
* b에서 가리키고 있던 메모리가 삭제 되지 않았지 때문에, 영원히 일어버리게 되는 문제점인 memory leak.
// 그러나, c와 a는 같은 곳을 가리킨다. 그리고, c의 소멸자가 호출 되면 위에서 삭제된 곳을 다시한번
// 그래서, doNothing이 수행을 마치면, localString은 여역을 벗어나고, 소멸자가 호출된다.
첫째는 초기화만 가능한 const멤버 변수를 초기화 할수 있다는 의미에서이고, [[BR]]
(왜.. 효율성이 좋아지는지는 각자 생각~ 책에도 나와있고.. 생각만 해보면 알수 있는 문제~)[[BR]][[BR]]
만약, 초기화 리스트에 나열된 순서대로 멤버 변수가 초기화 된다고 가정 하고 이 예를 보자. [[BR]]
w1과 w2의 멤버들은 다른 순서에 따라 생성될 것이다. 그리고, 다시 그 객체들(string 객체)을 소멸하기 위해서[[BR]]
모든 객체에 대해서 생성자와 소멸자의 호출 순서는 동일하게 되어 있고, 초기화 리스트에 나열된 순서는 무시된다.[[BR]]
삭제하려고 하며, 베이스 클래스는 가상 소멸자를 가지고 있지 않은 경우. 그 결과는 정의되어 있지 않다. 이것은 컴파일러로 [[BR]]
- 데블스캠프2002/진행상황 . . . . 108 matches
강사/진행자들의 후기 페이지입니다. 이 또한 ["ThreeFs"] 를 생각하기 바랍니다. 오늘의 글들이 다음날, 또는 내년에 쓰일것임을 생각하시길. 그날 자신이 했던 일들 (또는 다른 사람이 했던 일들)을 확인하고, 그에 대해서 무엇이 잘되었는지, 왜 잘되었는지, 무엇이 잘 안되었는지, 왜 안되었는지를 확인하고, 앞으로의 대안을 생각해보도록 작성합시다.
* 목요일의 ["RandomWalk2"] 에 대해서 다시 CRC 디자인 세션과 구현시간을 가져보았다. (["ScheduledWalk/재니&영동"], ["ScheduledWalk/창섭&상규"]) 이번에는 신입회원팀과 기존회원팀으로 나누어서 디자인 세션을 가지고, 팀별로 구현을 하였다. (신입회원 팀에서의 클래스 구현에서는 1002가 중간 Support)
* 남훈아 수고 했다. 후배들에게는 당근 어려웠겠지만, 개인적으로는 유익했던지라; ^^; traceroute 의 원리 설명은 정말; TCP/IP 동영상을 먼저보여주는게 더 쉬웠을려나 하는 생각도.
* 일요일, 그리고 목요일, 금요일 동안 지겹도록 풀었을것 같은 RandomWalk 가 이렇게 다양한 모습을 보여주었다는 점에선 꼭 푸는 문제 수가 중요하지 않다라는 점을 확신시켜주었다.
* 마지막 날에 온 사람이 3명. 그리고 문제를 푸는데 참여한 사람이 2명 밖에 안남았다는 점은 데블스캠프를 준비한 사람들을 좌절하게 한다. 그나마 한편으로 기뻤던 점은, 아침 7시가 되도록 컴퓨터 하나를 두고 서로 대화를 하며 RandomWalk를 만들어가는 모습을 구경했다는 점. 그 경험이 어떻게 기억될지 궁금해진다.
* 화이트 보드 - 목요일 세미나 이후 화이트보드를 5층 피시실에 그냥 두었다. 처음엔 들고 갈까 했었다가 귀찮아서 두었는데, 중간에 후배가 어제 배운 내용에 대해 질문했을 때 '오. 마침 화이트보드가 있네?' 어제 했었던 방법으로 적어나가면서 편리함을 느꼈다.
게다가 피시실에 서 있는중 중간중간 아이디어가 떠오를때 화이트보드를 쳐다보고 있노나니 내용 없는 빈 보드를 가만히 두고 싶어지지 않는다. 손이 근절근절해지도록 일종의 NoSmok:어포던스 를 제공한다고 할까. 칠판과는 다르게 손도 잘 안더러워진다.
피시실에 컴퓨터만 바꿀 것이 아니라, 화이트보드를 놓는 것도 좋은 피시실 환경을 제공하는데 도움을 주리라 생각한다. (과 사무실에서 디지털 카메라를 빌릴 수 있다면 더더욱 좋겠다. 화이트보드로 아이디어를 적고, 디지털 카메라로 찍어서 바로 올리고..)
* 세미나나 스터디를 준비할때 앞 세미나의 흐름이 연결되었을 경우 그 진행이 더 쉽다. 앞에서의 세미나 내용을 이용하여 설명하면 강사나 학습자나 서로 시간낭비를 줄일 수 있으니까. 추후 이러한 세미나 준비를 할때 그 체계성을 고려해야 할 것이다.
이번 세미나의 부제를 단다면 "우리는 어떻게 사고하고 어떤 과정으로 프로그래밍 하는가" 정도가 될 것이다. 지금 학생들의 프로그래밍 과정과 사고 과정을 밖으로 끄집어 내어서 함께 관찰하고, 함께 논의할 수 있도록 했고, 동시에 선배/전문가들의 사고 과정과 프로그래밍 과정을 직접 보여주어서 그 차이를 느끼고, 거기서 학습이 일어나도록 했다.
우리는 수학문제에 대해 달랑 답만 달아놓으면, 설령 답이 맞더라도 "과정이 없다"고 문제를 틀리기도 한다. 프로그램은 최종적인 "답"이다. 우리는 그 답이 나오는 과정에 너무도 무관심하다.
* OOP를 바로 설명하기 전에 나의 프로그래밍 사고 방식을 깨닫고, StructuredProgramming 의 경우와 ObjectOrientedProgramming 의 경우에는 어떠한지, 그 사고방식의 이해에 촛점을 맞추었다.
* 일단 지난시간에 만들었었던 RandomWalk 의 스펙을 수정한 RandomWalk2 를 사람들로 하여금 풀게 한뒤, 그 중에 완성한 두명을 뽑아 (상규와 현민) 자신이 어떻게 프로그래밍을 했는지에 대해 창준이형의 진행으로 질답을 하면서 설명해나갔다. 그리고 코드를 프로젝터와 노트북을 이용, 신피의 벽에 비추며 설명하였다. (["RandomWalk2/상규"], ["RandomWalk2/현민"])
* StructuredProgramming - 창준이형이 역사적인 관점에서의 StructuredProgramming에 대해 설명을 하셨다. 그 다음 ["1002"]는 ["RandomWalk2"] 문제에 대해서 StructuredProgramming을 적용하여 풀어나가는 과정을 설명해 나갔다. (원래 예정의 경우 StructuredProgramming 으로 ["RandomWalk2"] 를 만들어가는 과정을 자세하게 보여주려고 했지만, 시간관계상 Prototype 정도에서 그쳤다)
* ObjectOrientedProgramming - ["RandomWalk2"] 에 대해서 창준이형과 ["1002"] 는 서로 이야기를 해 나가면서 하나씩 객체들을 뽑아내가는 과정을 설명했다. 일종의 CRC 카드 세션이었다. 그러고 나서는 프로젝터를 통해, 직접 Prototype을 만들어 보였다. OOP/OOAD로 접근하는 사람의 사고방식과 프로그래밍의 과정을 바로 옆에서 관찰할 수 있었다.
* Python 기초 + 객체 가지고 놀기 실습 - Gateway 에서 Zealot, Dragoon 을 만들어보는 예제를 Python Interpreter 에서 입력해보았다.
Python으로 만든 스타크래프트 놀이는 참가자들이 무척이나 좋아했다. 또 그 직전에 Python Interactive Shell에서 간단하게 남자, 여자, 인간 클래스를 직접 만들어 보게 한 것도 좋아했다. 아주 짧은 시간 동안에 OOP의 "감"을 느끼게 해주는 데 일조를 했다고 본다.
또한, JuNe과 ["1002"]의 CrcCard 세션을 (마치 주변에 사람이 없는 듯 가정하고) 보여줬던 것도 좋은 반응을 얻었다(원래는 ["1002"]가 혼자 문제를 푸는 과정을 보여주려고 했다가 JuNe이 보기에 두 사람의 협력 과정을 보여주는 것도 좋을 듯 했고, 분위기가 약간 지루해 지거나 쳐질 수 있는 상황이어서 중간에 계획을 바꿨다.) 선배들이 자신이 풀어놓은 "모범답안"으로서의 코드 자체를 보여주는 것은 했어도 분석하고 디자인하고, 프로그래밍 해나가는 과정을 거의 보여준 적이 없어서, 그들에게 신선하게 다가간 것 같다.
또, 동일 문제를 여러번 하는 것의 교육적 효과를 다시금 확신하게 되었다. 내용이 이어지고 연계가 되니, "현재의 주제를 벗어난 것들에 에너지를 덜 소모하면서" 많은 학습이 가능했다. 최소한 문제를 매번 새로 설명하고, 그걸 이해시키게 하는 시간은 주제가 바뀔 때마다 아낄 수 있었다.
참가자들 중 대표로 몇 명의 코드를 프로젝터를 통해 직접 보면서 하나 하나 짚어 나갔다. 그 사람이 어떤 순서로 프로그램을 만들었고, 어떤 의도에서 이걸 이렇게 했는지. 한 줄 한 줄 정말 "많은 것을 가르쳐주고, 배울 수 있겠다" 하는 생각이 들었다. 우리는 "교사/정답에게서만 배운다"는 사고에서 자유로워질 필요가 있다.
- 데블스캠프2012/둘째날/후기 . . . . 107 matches
* '''후기 쓸 때 반드시 참고하세요 : [ThreeFs]'''
* [김태진] - 상민선배님이 오셔서 웹 전반에 관한 이야기를 해주신건 작년 성년식때도 그렇고(그땐 아이폰이었지만) 참 유익한 배경지식들을 많이 얻을 수 있는 기회인거 같아요. 후반부에 git에 관한 이야기를 따로 잠깐 해주신거도 꽤나 유용한 정보였구요. 다들 이런식으로 각 세션에 대해 후기를 작성해주면 된답니다.
* [권순의] - 웹에 대한 많은 이야기를 들을 수 있어 좋았습니다. 선배님의 굉장한 호기심?이라고 해야하나.. 그런 알고자 하는 열망이 정말 즐기고 있구나 라는 생각이 들었습니다. 정말 행복해 보이시더군요. 웹이라는 것이 정말 무궁무진하다라는 생각도 들었습니다. 그리고 월간 마소도 좀 많이 봐야겠군요. 1년 정기 구독 했으니 많이들 봐 주시길...
* [김도현] - 새내기인데다가 가벼운마음으로 왔다가 영혼이 빠져나갔습니다. 그래도 유익했어요 엄청나게 . 오늘 안왔더라면 앞으로 언제나 들어볼까하는 분야였고 그런 기회를 가질수 있어서 좋았습니다
* [이재형] - 아직은 새내기이고, 아는 것도 거의 없어서 듣는데 많이 힘들긴 했지만 제가 컴퓨터 공학부 학생으로서 앞으로 이 길을 걷는데 도움이 될만한 정보들을 많이 얻은 것 같습니당. 웹서버가 실제로 어떻게 구성되고 그를 위해 무엇이 쓰이는지 사실 아직도 제대로된 이해가 되지 않지만 좋은 '익숙함'을 얻은 것 같아서 기분이 좋았습니다. 감사합니다~~
* [김민재] - XE를 다루면서 MySQL에 대해서는 조금 알았지만, 오늘 이야기를 들으면서 많은 종류의 DB와 프레임워크가 있다는 것을 처음 알고 놀랐습니다. 아직 실력이 많이 부족한 탓에 이해를 못한 점도 있었지만, 웹에 대한 전반적인 이야기를 들으면서 웹에 대해 많이 이해할 수 있었습니다. 특히 우리가 사용하는 웹 서비스 하나를 위해 140대나 되는 Queueing Server가 필요하다는 점에 놀랐습니다. 앞으로는 여러가지 분야에 호기심을 가지고 관심을 가지도록 해야겠습니다.
* [김윤환] - 이히히 ㅠㅜ 무슨말이죠 ㅋㅋㅋㅋㅋㅋ 시간 내내 말하시는 용어 찿고 공부하느라 못따라갔습니다. ㅠㅜ 그래도 용어 같은건 많이 알게 된것 같아요
* [서민관] - 유상민 선배님께서 오실 줄은 몰랐는데 정말 귀중한 시간을 써 주신 것 같습니다. 개인적으로 웹이나 서버 쪽에도 관심이 많아서 관련 이야기를 좀 들을 수 있어서 좋았습니다. 개인적인 사정으로 이야기를 자세히 못 들어서 좀 아쉬웠지만 잠깐 듣기에도 꽤 흥미가 가는 내용이었습니다. 그리고 집에서 월간 마이크로소프트를 현재 보고 있는데, 말씀하시는 걸 들어보면 월간 마소 좀 보면서 이것저것 해 보는 게 좋을 것 같네요. 여담이지만 형진 선배가 정말 이상한 걸 잘 하시는군요... 삼성도 참 문제가 많은듯...
* [서영주] - 웹 개발을 위해 필요한 전반적인 지식에 대해서 알 수 있어서 좋았습니다. DB관련해서 어떤 것이 있는지, 주 언어에는 어떤 것들이 있는지. 어떤 것들을 공부해야 하는지 방향성을 알 수 있었던게 컸던 것 같습니다. 그리고 개인적으로는 개인 서버 구축이나 취미로 하는 공부도 나중에 현업에 나가서 도움이 되는 것이 많다는 얘기에는 상당히 끌리는 부분이 있었습니다. 나중에 개인 서버를 만들어서 유용하게 써봐야겠습니다. 감사합니다.
* [안혁준] - 웹서비스를 위한 전반적인 사항을 깔끔하게 정리해주셔서 많은 도움이 되었습니다. 가끔은 이렇게 전반적인 것을 정리할 필요가 있다고 느끼지만서도 제 지식이 짧아서 스스로 하지 못하고 있었는데, 이번이 정말 좋았던 기회인것 같습니다.
* [변형진] - 이번 데블스캠프에 웹 관련 주제가 많기도 하고, 다들 웹에 관심도도 높아 보이는 게 바야흐로 웹의 전성 시대가 확실한 듯 합니다. 혹시 더 관심있는 분들은 여름방학에 함께 공부할 기회를 만들어드릴게요. ㅎㅎ
* [김준석] - 웹서비스는 학교에서 배울수 없기에 강의주제로 잡았었는데 거기에 배우는 Skill 트리나 개발자로서 '1년후에나 쓸모있는 마소'를 읽는법을 가르쳐주셔서 좋았습니다. 현재 하시는일 잘되시길바라고 부족한 제 세미나를 채워주셔서 감사합니다.
* [정진경] - 웹 서비스를 하고 싶을 때 기반이 되는 옵션이 쭉 정리된 느낌입니다. 각 언어별 프레임워크에 대해서는 잘 와닿지가 않았던 것 같네요. 아마도 아무 것도 안만져봐서 그런 것 같습니다. 하나 골라서 써봐야겠습니다. 새로운 것에 대한 도전으로는 루비온레일스가 끌리네요.
* [권순의] - 앞에서 한 내용으로 인해 날로 먹기 강의가 되었군요. 뭐 APMSetup을 설치하고 FileZilla로 서버 사용한 것 까지는 해 봤는데 블로그 만들고 하는 짓은 안 해봐서 뭐.. 새로웠습니다. 근데 본인 특성상 블로그는 운영 안 할 것 같네요. 지워야 하나.. 아 컴터 하나 사서 서버로 쓰고 싶네
* [김태진] - 음, 저는 맥에서 APM 설치해보다가, 윈도우에도 충분히 쉬운 툴이 있는걸 보고 참 쉽죠? 가 생각났네요. 전반적으로 설명은 상민선배님께서 잘 해주셨고, 그에 따른 실습으로 적당했다고 생각합니다. 워드프레스가 생각보다 이쁜데, 음.. XE보다 잘 만든거 같네요.-ㅅ-ㅋ
* [김해천] - 가끔씩 뻘짓으로 웹호스팅에서 빌린 걸로 제로보드나 뭐 이상한 걸 많이 해 보기는 했습니다만, 이렇게 자기 컴퓨터로 이런 걸 재현할 수 있다는 것에 신기했습니다. 설정에 관련된 것을 알아가는 시간이여서 좋았습니다. 워드프레스는 글 포스팅 할 때 환경설정에 들어가서 뜯어고치는 것 같다는 생각을 지울수 없네요ㅠ_ㅠ. 위키는 꼭 나중에 따로 설치해서 구동을 해 봐야 겠습니다.
* [권영기] - 겁먹어서 시도하려 하지도 않았던 개인 위키가 이렇게 쉽게 만들어질 수 있다는 사실을 알고 놀랐습니다. 오늘부터 당장 써먹어도 좋을 것 같아요. 개인용 서버를 만들어봐야겠네요.
* [이재형] - 정말 박진감 넘치는 세션이였습니당!!! 맨처음엔 따라하기만도 바빴는데 혼자 이것저것도 해보고 정말 재밌었습니다. 이게 가능하다니! 라고 감탄도 했구요. ㅎㅎ 그냥 느낌이라면... 워드프레스가 미디어위키보다 좀 더 세련된 느낌 같아서 좋았고 플러그인도 나름 편했고 등등이 있네요~
* [안혁준] - 전 운영체제가 주로 리눅스기 때문에.. APMSetup은 윈도용이더라고요. 리눅스용을 못찾는건가.. 설치형 블로그를 체험할수 있는 기회가 되어서 좋았습니다.
* 리눅스에서는 데비안 계열의 Aptitude와 레드햇 계열의 YUM을 쓰면 "훨씬" 편리하고 서버로 쓰기 적절한 설정으로 설치되고 업데이트도 쉽게 되니깐... - [변형진]
- 데블스캠프2011/다섯째날/후기 . . . . 103 matches
* 파이썬의 기본적인 프로그램을 배우고 (python에서 제공하는 학습용 라이브러리인 turtle을 사용하였습니다.) 네트워크에 관한 간단한 설명들을 들었습니다. 네트워크라는 부분을 공부해 본적이 없어서 처음 네트워크에 대해 이해하는 것이 어렵긴 했지만 알기쉬운 설명덕분에 그럭적럭 이해하고 넘어갈 수 있었습니다. server와 Client측에서 네트워크를 구성하는 부분을 파이썬으로 작성하였는데 코드는.. 긁어 왔다ㅋ 헌데 파이썬의 장점처럼 코드가 무지하게 짧았던게 인상깊었다.
* turtle을 이용해서 파이썬의 문법에 대해서 간단하게 다루어보고 파이썬의 소켓을 이용해서 서버/클라이언트를 만들어보고 와이어샤크를 이용해서 실제 주고 받는 패킷들을 보는 일을 했습니다. 그리고 중간중간에 최대한 알기 쉽게 네트워크에 대한 개략적인 설명이 끼어 있었지요. 개인적으로는 여러모로 마음에 드는 세미나였습니다. 우선은 전체적인 방향성을 잡아주는 세미나였다는 점에서 괜찮았다고 생각합니다. 사실 데블스에서는 특정 주제를 다루어도 자세히 다루기에는 시간적인 한계가 있는 만큼 이렇게 흥미를 유발할 수 있는 세미나가 좀 더 바람직하지 않은가 싶습니다. 그리고 현태 선배 스타일로 듣는 사람이 알기 쉽게 예를 들어가면서 설명을 하는 것도 듣기 좋았고요. 그리고 개인적인 의견으로는 간만에 현태 선배를 만난 것도 좋았습니다 ㅋ 나중에는 좀 더 네트워크에 대한 부분을 공부를 해 봐야겠지요. 현태 선배 덕분에 파이썬도 배우게 됐는데 네트워크도 공부하게 되는 건가...
* 옛날에 c로 TCP/IP 프로그래밍 책을 본 적이 있었는데 그쪽에서 소켓을 이용하는 부분을 생각해보면 c에 비해서 파이썬쪽에서는 참 쉽게 되는구나 싶었습니다. 그리고 개인적으로 좀 신기했던게 리턴 값이 하나 이상 있을 수 있는 함수도 있다고 한 부분이었습니다. 이건 파이썬쪽의 특성인지 아니면 다른 인터프리터쪽 언어도 이렇게 될 수 있는지 궁금하네요. 네트워크쪽에 대한 기본적인 설명도 좋았습니다. 와이어샤크쪽에 대해서는 제대로 알려면 공부가 더 필요할 듯. -_-
* turtle를 보면서 이것 저것 파이선에 어렵지 않게 접근할 수 있어 좋았습니다. 누구처럼 노가다는 안시켜서 좋았네요. (그러고 보니 그 누구도 파이선을 가지고 했었네;;) 여하튼 파이선으로 채팅 프로그램을 소스 복사(-_-) 해서 써 보니 재미있었습니다. 자바로도 그런거 했던 게 기억나네요. 전반적으로 쉽게 그리고 재미있게 설명을 해 주신 세미나였습니다. 재미있게 3시간이 지나간 것 같네요. 다만, 하라고 하셨던 것이 잘 구현이 안 되었던 것 같아 그런 거 빼곤요. 그리고 와이어샤크는.. 보면서 음..... 이런게 있구나 하고 넘어가서인지 좀 더 많이 써 봐야 할 듯 싶네요a
* 갑작스런(?) 세미나였지만, 좋은 내용이었습니다. 루비와 비슷한 면이 많은 것 같네요. 와우하는 사람들이 크게 관심을 가진 것 같던데,, 전 와우를 안해서 -ㅅ-;; 그래서 준석이가 옆에서 루아 책 가지고 이게 왜 작동이 안되냐고 성질내고 있네요.(응?) 이제 됬나보네요. 쩝.. 여하튼 간단하게 들을 수 있고 선배님의 좋은 말씀 들을 수 있어 좋았습니다.
* 4년만에 정직 선배의 세미나를 들을 수 있었습니다. 선배님의 수준에서 설명하지 않고 1학년 학우들도 알아들을 수 있도록 하나하나 차근차근 설명해주시는 걸 보면서 '나도 정직 선배처럼 세미나를 하고 싶다'고 느꼈습니다. 이전 후기에도 언급했지만 정말 스크립트 언어 하나쯤은 공부할 필요를 느꼈어요ㅠㅠ
* 루아에 대한 간단한 소개와 문법의 설명. 사실 바쁘실텐데 와서 짧은 세미나라도 하고 가신 것만 해도 참 대단하시다는 생각이 듭니다. 사실 루아에 대한 이미지는 세미나 때 전체적인 분위기도 그렇듯이 와우 UI에 사용하는 언어라는 정도만 알고 있었는데 조금 더 자세한 설명을 들을 수 있었습니다. 개인적으로 세미나를 듣고 든 생각은 두 가지군요. 하나는 객체가 없다니??? 하는 것과 다른 하나는 크기가 작다는 게 그렇게까지 큰 메리트가 될 수 있는가? 하는 점이었습니다. 사실 요즘 이런저런 곳에서 게임 로직을 루아로 만든다는 얘기를 들었는데, 특정 작업에서 쓰는 사람들이 있다는 것은 그 부분에서 인정할 만한 뭔가가 있다는 뜻이겠지요. 하지만 개인적으로는 아직도 조금 더 손을 대 봐야 할 언어들이 있어서 당장은 건드려 볼 일이 없을 것 같다는 느낌이 좀...
* 루아에 대해서 찾아보니까 주목받는 이유는 역시 용량이 작기 때문인 것 같은데 폰쪽에서 일하셨다는 부분도 그렇고 역시 임베디드쪽인가 싶었습니다. 임베디드에서 루아로 프로그래밍을 하기 위한게 따로 있다고 하신 부분이 좀 궁금했습니다. 이번에 파이썬에 루비, 루아까지 스크립트 언어쪽을 많이 본 것 같습니다. 다들 문법적으로는 비슷한 느낌인데 어떤걸 쓰는지는 용도 나름인 것 같습니다.
* Ruby 와 비슷하다는 생각이 많이들었습니다. 사실 Ruby가 루아와 비슷하다고 해야 맞겠지만요. 와덕냄세가 심하게 났던 세미나..였네요
* 형진이 형이 정말 자세히 가르쳐 주셨는데,, 새내기들한테는 그래도 어려운 거 같네요. 저도 1학년이었다면 그런 느낌이었겠죠 -ㅅ-;; 확실히 설명하는게 더 힘드네요. 계속 설명을 하는데 뭔가 부족하고 그래서 그거 때문에 고생했던? 뭐 그런 시간이었습니다. 책에서 이런 내용을 봤었는데 이렇게 하라고만 했지 어떻게 하라고 잘 나와있지 않아 그랬는데, 이렇게 하게 되어서 좋았습니다.
* 수경이의 String 코드 레이스에서 저의 프로그래밍 달리기를 너무 빡세게 했던게 부끄러워서 이번엔 1학년 학우(저 같은 경우 성화수 학우)에게 설명해주고 그 학우가 하고 싶은 스펙으로 함께 프로그래밍 하고자 많이 노력했습니다. 파트너 교체 후 순의랑 파란 바를 만들어버리는 실수를 저지르긴 했습니다만 제가 부족한 탓이었구요-_-;; 개인적으로 화수의 '0층부터 지하까지' 아이디어는 신선했어요. 형진이가 처음에 의도했던 엘레베이터 문제(밖에서 누르고 층을 누르는 케이스)는 다른 클래스도 필요하고 일단 화수를 이해시키는데에 초점을 둬서 그걸 못 푼 점은 좀 아쉬웠어요.
* Java를 통한 TDD (비스므리한) 것을 실습했죠. 좀 신기한 방식이라 신기했던거(??) 같습니다. 테스트 케이스를 만족하도록 코드를 만들거어간다라.. 확실히 다른사람의 코드이고 주석이 없는데도 대략적으로 이해할 수 있다는 점은 좋은 거였던거 같습니다. 여러사람들이 한개의 프로젝트를 다루게 된다면 이런식의 것도 필요할거같네요. ..하지만 그럼에도 불구하고 테스트 케이스만 만족하면 된다는 사상도 있어서 어려움이 완전히 해소될것이리라! 라는건 아닌거 같네요. (사실 남의 스펙을 자신이 구현했기 때문에 발생했던 문제겠지마는,.) SVN도 써보고 TDD나 이런 저런 기법들을 데블스에서 처음 접해봐 신선했습니다.
* 코드 잘 짜는 법. 신경써야 할 부분을 최소한으로 줄이자. 필요한 것을 먼저 쓰고 구현은 나중에 한다. 자주, 많이. very very many many
* 개인적으로 항상 고민하는 부분 중의 하나입니다. 어떻게 하면 코드를 잘 짤 수 있을까. 그리고 회고 때에도 말했듯이 제가 작년 데블스 마지막 때 세미나를 하고 싶다고 했던 주제이기도 합니다. 변명삼아 말하자면 아직도 스스로가 남에게 이야기 할 수 있을 만큼의 능력과 자신감이 없어서 세미나를 피한 것도 있습니다 ;;; 사실 제가 한다고 하면 생각을 코드로 만드는 법(형진 선배의 말하듯이 코딩하기 부분) + 남이 만들어 둔 라이브러리의 사용 으로 하려고 했는데 과연 그게 괜찮은 방법인가에 대한 확신은 역시 좀 부족하군요... 하지만 모르긴 몰라도 언어에 사로잡히지 말고 로직이 우선해야 한다는 생각은 기본에 둬도 괜찮을 것 같습니다.
* 이후에는 역시 자주 짜고 많이 짜 봐야겠지요. 그리고 개인적인 생각으로는 생각을 코드로 옮기는 것은 역시 알고리즘 쪽을 공부하는 것이 아닐까 합니다. 컴공 쪽에서도 제일 수학에 가깝다는 생각이 드는 분야군요... 그리고 개인적으로 제일 자신이 없는 분야기도 하고 -__-
* 현재 구현해야 하는 부분을 해당 기능 하나로 좁혀서 거기에만 집중해야 한다. 해결해야 하는 문제의 범위를 최소한으로 줄이는게 코드를 잘 짜는 비결이다. 라고 하셨었는데 하다 보면 이것 저것 고려할게 많아지는 것 같습니다. 그래도 앞으로는 이번에 배운 것들을 코드를 짜는데 적용해보려고 노력해야 할 것 같습니다. 다만 이렇게 문제의 범위를 최소한으로 줄였는데도 해결을 못한다면 어떻게 하면 좋을지 하는 생각이 들지만 -_- 거기는 개인의 실력 나름인가 싶습니다.
* 남이 짠 스펙을 보고 구현한다는건 처음이었습니다. 대개는 학교 프로젝트 할 경우에는 무슨 기능이 필요하다는걸 처음부터 생각하고 만드는데 실제 일하는 쪽에서는 그렇지 않을테니 좋은 경험이 됐다고 생각합니다. 유닛 테스트에서 해당 테스트 케이스가 스펙이 될 수 있다는 부분에 대해서도 잘 생각해보고 또 적용해보기 위해 노력해봐야겠습니다. 근데 TDD의 단점에 대해서는 크게 말이 없었던 것 같아서 그 부분이 좀 아쉽습니다.
* QDD는 정말 신세계였죠. 그리고 스펙을 먼저 두고 구현한다는것이 무슨말인지 처음에 잘 이해가 안되서 간단한 스펙만을 제시했더니 결과는... 누가 나쁜놈일까요
* 중앙광장에서 10분, 6층에서 20분간 서성이다가 용기를 내어 5P에 아무 연락도 없이 찾아갔습니다. (예전부터 제로페이지에 가입하고 싶었지만 1학기동안 내적으로 정리가 안된 것이 있어서 찾아오질 못했었습니다). 강의는 100% 이해 안되었지만 많은 도움이 되었고, 강소현 선배님께서 잘 알려주셔서 '이런게 있구나' 이정도 느낌은 받았습니다.
* 수경누나가 해주신 정보보호는 중학교때인지 고등학교때인지 어렴풋이 들었던게 있는 부분이었던거 같습니다. 공개키/비공개키 부분이요. 공인인증서 부분은 정말 어떤 천재가 이런걸 만들었나 싶을정도였습니다. 으아니 이런식으로 신뢰할 수 있는 공개키를 만들어 낸다니! 만든놈들 진짜 머리좋네!! 랄까요, 수경누나가 시작하기 직전에 했던 말이 저한테서도 나왔습니다.
- 새싹교실/2012/주먹밥 . . . . 92 matches
* [김준석] : 기존 기획했던 커리큘럼 프로젝트 결과물 3개 이상. 그리고 C언어의 파일입출력 및 네트워크 프로그래밍까지 가르치겠다. 그외 잡식은 +@
* [한원표] : 다양한 컴퓨터 프로그램에 익숙해지고 커리큘럼을 열심히 따라가겠다.
* Wiki작성 법 및 회고 작성법 논의
=== 회고 ===
* 한원표 : 새싹교실 첫 수업이었다. 박도건, 용상훈이라는 동기들과 같이 하게되었는데 앞으로 친해졌으면 좋곘다. 처음에는 새싹교실을 하는 이유와, 진행방식 등에 대해 선배님께 설명을 들었다. 그리고 wiwki에 가입해서 앞으로 우리가 새싹교실에서 배운것, 느낀것을 직접 편집할 수 있다는 것이 좋았다. 그 후에 Virtual Box라는 것으로. Hello World라는 프로그램을 짯는데 새로운 환경을 볼 수 있어서 좋았지만 한편으로는 처음보는 환경이라 어색한 감이 있었다. 그리고 어플 프로그램을 보여주셨는데. 친구들은 이해하는것 같은데 나만 잘 못하는 것 같았다.
* 용상훈 : 오늘 경험했던 일은 새싹교실은 "어떻게 된다"라고 설명하는 시간이었다. 처음에 새싹교실에 들어가면 무지 어색할 것 가았는데 그렇지 않았다. 컴퓨터 3대를 앞에두고 wiki에 한해서 처음 이야기를 들었다. 생소한것이어서 많이 신기하셨다. 그리고 버츄얼 박스 받고 리눅스 환경를 처음보았다. 재미있을것 같다. 그리고 가장 신기한 일은 고등학교 선배님인 박성현 선배님을 뵙는데 너무 신기 하였다. 먼저 인사를 드렸어야 했는데.. 인사드리고 전화번호도 알려드렸다. 신기한 하루였다.
* 김준석 :용상훈, 한원표, 박도건을 이끌고 새싹을 캡실에서 진행해보았다. 우리반의 징크스는 끝나지 않았다. 꼭 걸러내도 기본을 아는 친구들이 아무것도 모르는것처럼 들어와. 여튼, 그래도 새로 새싹을 가르칠수 있고 좀 알고 있는 학생들이 들어와서 좋다. 강의를 다음시간에 팍팍나가도 될것 같다. 2주차에 대해 코딩하는것이나 앞으로의 진로에 대해 물어보았고 현재 전체적인 진도나 수준을 간접적으로 알 수 있게 된것이 가장 큰 성과다.
* 한글 띄어쓰기에 문제가 발견되고 코딩 띄어쓰기에 대한 중요성을 알지 못하는것을 알게됨 - [김준석]
* 디버깅하는 방법을 앞에서 직접 보여줌. 몇번째 라인에 몇번쨰가 잘못된 라인이라고 나오죠? 이걸통해 원표와, 상훈이의 디버깅을 고쳐주었습니다. 띄어쓰기 잘하고 괄호 잘닫으라고.
* if문, switch()case: default:}, for, while문의 생김새와 존재 목적에 대해서 알려주었습니다. 말그대로 프로그램의 중복을 없애고 사용자의 흐름을 좀 더 편하게 코딩할수 있도록 만들어진 예약어들입니다. 아 switch case문에서 break를 안가르쳤네요 :(
* 박도건 - 게임했습니다. 카트라이더 했습니다. 1주일 내내. 프로그래밍했습니다. map editor만드는거 굉장히 노가다에요. 빡쳐요. 학교수업은 선대가 매우 짜증나요. C는 할만해요. 교수님이 훅훅 지나가는데 전 상관없음. 나 좀 짱임. 고등학교 친구들과 만나서 막창고기 먹음. 돼지 되겠음.
* 용상훈 - 과제에 치여살음. 학교 짜증남. 고등학교 친구 살짝 만나고. 주말에는 MT를 빠지고 할머니 댁에 갔습니다. 참잘했어요. 그리고 가족들 외식했었음. 과제했음. 소설이나 자기계발서 읽는거 좋아해서 그거 읽고. 운동했습니다. 매일. 달리기. 웨이트도 하고 삽니다. 전 건강해 질꺼에요 뿌잉뿌잉 *^^*
* 김준석 - 아이패드 개발을 하는데 데드라인은 지났어. 그래서 교수님께 사과메일을 보냈어. 그리고 캡스톤 설계실에서 새로운 프로젝트를 제안을 받습니다. 원래 댄스스포츠 동아리를 하고 있는데 발레를 배우게 됬음. 수요일마다 운동과 건강 조교활동을 하고 있고 목요일은 교수님 애를 봐줌. 어제 지인중에 상당한 분이 있어서 밤새서 지켜주고 한빛 리더스에서 독후감쓰는거 했음. 휴학생인데 학교에 24시간 있고 영어학원 10시에 일어나는거 너무 힘듬. 난 아침에 못일어나~ 그리고 새싹 강사들 교육하는 거 4타임 너무 귀찮음=ㅂ= 강사가 못알아 먹어!!!! 뭐 여튼 원표도 와서 4시간 와서 배우고 갔음. 일주일이 부족함. 시간을 대출해줘!
* 변수타입 - C언어는 고급언어이다. 왜냐. 사람이 쓰기 좋게 만들기때문이다. 편하게 만들어주는 것중 하나가 변수 타입이다. int는 정수, char는 문자, float는 실수. 참 편하지 않은가? 사람을 위해 만들어진것이다. 언제까지 0과 1로 대화할텐가?
else printf("아니면 말고.\n");
* 변수가 저장되는곳 : 변수는 메모리에 저장되는데 int는 4byte 저장공간에 저장된다 그리고 그것의 보관장소는 어떤 '''주소값(address)'''를 가진다.
* 포인터 : 포인터변수는 32bit 버전 컴파일러에서 4byte 64bit 버전 컴파일러에서 8byte의 크기를 가집니다. 어떤타입이든 말이죠 (void *), (int *), (float *) 모두 말이에요. int *a는 4byte를 할당받고 a에는 '''주소값(address)'''을 가지게 됩니다. 포인터 (*)를 붙이게 되면 그 해당 주소가 가르키는 '''값'''을 찾아가게 되죠. int형 값말이에요 그러니까 4byte만 찾아오겠죠?
* 함수의 추상화와 더불어 중요한건 함수의 목적에 따른 '''이름짓기(naming)'''입니다. 함수 이름을 보고 용도를 파악할 수 있어야되요!
* 배열(array)는 같은 타입을 한꺼번에 관리하게 해줍니다 {{{ int a[10];}}}이라하면 a는 int형 10개가 생겨있고 0~9까지의 인덱스(index)를 지니죠.
///pcal은 음식 40개가 들어갈수 있는 구조체 배열의 주소값을 넘겨받는다고 정의합시다.
- 이영호/64bit컴퓨터와그에따른공부방향 . . . . 88 matches
현재 머리가 제정상은 아니지만 다시 다른 충격적인 것을 목격한바 짧은 고민 끝에 공부 방향을 바꾸기로 했다.
컴퓨터 구조를 자세히 알고 어셈블리를 자유자재로 다루며 그러한 실력으로 32비트
윈도우 커널을 조사하고 그것을 이용하다니.
32비트 -> 64비트 가 되면 기존에 가지고 있던 책들의 내용도 바뀌게 된다.
패러다임을 따라 편하자고 C++과 같은 것을 파고 든다면
결코 기초가 탄탄하고 높은 사람의 벽을 뛰어넘을 수 없다.
Assembly이다. Assembly를 현재 나와 있는 가장 발전된 언어라 생각하고 Assembly를 누구보다 깊게 파고 들어야한다.
이젠. Assembly와 함께 내가 그나마 깊게 아는 C언어를 파고들겠다.
Assembly를 마음껏 다루도록 286AT를 창고에 꺼내서 마음껏 테스트를 하겠다.
└저도 C (배우게 된다면 Assembly도.ㅎ)를 좋아 합니다.ㅎ 무엇보다 빠른 연산속도와 하드웨어 제어(해본적은 없지만), 포인터를 통한 메모리 접근등 좋은 점이 많아요.^^* 그렇지만 예를 들어 1만 팩토리얼을 출력하는 프로그램을 작성하시오. 라고 문제가 주어졌을때, C로 짜면 한나절이지만 파이썬으로 작성하게 되면 5분도 안걸리게 됩니다. 물런 연산속도가 느리기는 하지만 말입니다.^^ 이런 점에서 봤을때, 속도가 중요하다거나 특화된 프로그램을 작성해야할 경우에는 C와 같은 언어가 좋지만 보편적으로 사용하는 워드프로세서라든지 기타 응용프로그램이나, 제작해야할 프로그램의 제작시간이 짧을 경우에는 상위레벨의 언어가 좋을거라고 봅니다.^^ 뭐 이렇게 말은해도.. 사실 서로의 장점을 그때그때 맞춰서 섞어쓰는게 가장 좋지 않을까요?ㅎ (게임을 만들때 하위레벨의 언어로 하드웨어를 직접 사용한다 하더라도, 다이렉트를 이용하지 각각의 그래픽 카드에 맞춰서 프로그램을 만들지 않는것과 비슷한것 같아요.^^) 이상 지나가는 행인1의 잡다한 생각이었습니다.^^* - [조현태]
(우선 제 지문의 맥락을 담은 질문부터. 과연 Java와 Python 개발자들이 Assembly+C개발자와 같이 좋은 효율의 다른언어 컴파일러를 만들 수 있을까요. 현재 함수보다 좋은 함수를 생각해 냈는데 그것을 구현하려면 low level의 지식이 필요한데, 자신은 Java와 Python 들만 알고 Assembly를 모른다면 어떻게 해야할까요?)
음. 아쉽게도 그런 용도로 Assembly를 평가 한게 아닙니다. 우수하고 못하다의 평가는 여기서도 나오는군요. 한가지만 파면 성공한다와 같은 맥락이랄까요... 저는 미래의 직장보다도 현재의 지식욕을 채우고 싶을 뿐입니다. 누구보다도 이것에 대해 많이 알고 싶고 또한 그렇게 되길 바랄뿐입니다. 과연 Java나 Python등을 공부하다보면 컴퓨터에 대한 가장 기초적인 지식들을 얻기 쉬울까요? 그렇기 때문에 Assembly에 대한 직접적인 접근을 하려고 하는 것입니다. 지식욕이 아니더래도 현직에 계시는 프로그래머분들께 컴퓨터에 대한 기초가 부족하고 프로그램만 짤 줄 아는 신참 직원들은 항상 한계에 다다르면 좌절한다라는 말을 들은적이 있습니다. 한번쯤은 생각해 볼 문제입니다. Assembly > C++을 평가한 것은 이런 맥락입니다. 컴퓨터에 대한 기초가 있느냐 없느냐. Assembly를 만지고 C++을 만진 사람의 경우는 모르겠지만 C++만 만지고 Assembly를 공부하지 않은 사람의 한계는 언젠가는 드러나게 되죠.
전 어제 제가 평생 해도 따라가지 못할것 같은 사람을 보았습니다. 그 사람과의 벽이랄까요. 물론 그분이 연륜이 있으시지만 컴퓨터 자체에 대한 기초적이고 깊은 지식은 따라가질 못하겠습니다. 그분의 소싯적에 C언어로만 짠 프로그램들은 컴퓨터에 대한 깊은 이해가 없으면 불가능한 것들이었습니다. 그분이 Assembly를 배우지 않고 C를 처음부터 만졌다면 어땠을까요? 그런 프로그램들을 짤 수 있었을까요? 이상, 우물 밖으로 튀어나온 개구리였습니다.
(64 비트로 변할 때에는 프로그래머가 3가지 아키텍쳐(32비트 때에는 32비트 아키텍쳐 한가지)에 대한 것을 모두 생각해야하기 때문에 32비트만 취급할 수는 없겠죠. 호환성때문에. 결국 64비트 아키텍쳐에도 공부할 시간을 할애해야하고 32비트의 공부시간이 줄어든다는 말이었습니다.) - [이영호]
이러고 보니 현직 프로그래머들의 싸움이 되고 있군요. System 프로그래머와 일반 Application 프로그래머의 싸움. 한가지... 모두가 다 그런것은 아니겠지만, 전 Coder에 머무르고 싶지는 않습니다. 저 높은 수준까지는 아니더래도 Programmer로서 Guru정도의 위치에는 가고 싶군요. - [이영호]
그냥 시스템 프로그래머와 어플리케이션 프로그래머의 차이정도로만 생각하겠습니다. 언어 관련 논쟁과 다른 레이어간 논쟁에 대해서는 정말정말 재미없습니다. ^^ 의도하는 바도 아니고요. 단지, '시스템 프로그래머' 컨텍스트가 붙지 않았을 경우에는 다른 사람들에게는 좀 갸우뚱할 상황이여서 쓴 것일 뿐입니다. (그렇다고 시스템에 대한 이해의 중요성을 무시하려는것은 당연히 절대로 아니고요.)
참고로, 어플리케이션 개발쪽에서는 다른 이야기들이 이슈가 됩니다. 순수하게 프로그래밍 부분만을 생각한다면(조금 개인적인 생각이 짙습니다만)
* 어떻게 하면 정해진 시간 내에 원하는 스펙을 충족시키고, 최선의 성능을 발휘하는 결과물들을 만들어낼까?
* Global Optimization 관점에서, 어느 부분은 생산성을 살리고 어느 부분은 퍼포먼스를 추구할까? 퍼포먼스를 추구하는 모듈에 대해서는, 어떻게 하면 추후 퍼포먼스 튜닝시 외부 모듈로의 영향력을 최소화할까? (InformationHiding)
* 어떻게 하면 확장성과 교체성이 뛰어나고 코드 상의 중복이나 Dependency 문제를 적게 일으키는 모듈을 만들어낼까?
- MoreEffectiveC++/Exception . . . . 84 matches
일단 여러분은 파일에서 부터 puppy와 kitten와 키튼의 정보를 이렇게 읽고 만든다. 사실 Item 25에 언급할 ''virtual constructor''가 제격이지만, 일단 우리에 목적에 맞는 함수로 대체한다.
방법은 올바르다. 예외시에 해당 객체를 지워 버리는것, 그리고 이건 우리가 배운 try-catch-throw를 충실히 사용한 것이다. 하지만.. 복잡하지 않은가? 해당 코드는 말그대로 펼쳐진다.(영서의 표현) 그리고 코드의 가독성도 떨어지며, 차후 관리 차원에서 추가 코드의 발생시에도 어느 영역에 보강할것 인가에 관하여 문제시 된다.
그리고 해당 auto_prt의 적용한 모습은 다음과 같이 보인다.
자 당신이 멀티미디어 주소록을 만든다고 상상하고, 프로그램을 짜보자 전화번호, 목소리, 사진, 이름 따위가 들어가야 할것이다. 다음 대강의 구현 코드들을 보면
각각의 BookEntry는 이름과 더불어 다른 필드를 가지고 있으며 기본 생성자는 다음과 같다.
그리고 생성자의 코드를 이렇게 한다.
이렇게 아무것도 해주지 않아도 객체가 같이 파괴되고 리소스가 새는 것을 방지 할수 있다.
자 이건 괜찮아 보인다. 하지만 저 logDestruction상에서 예외가 발생한다면 어쩌게 할것인가? 해당 소스는 Session의 파괴자 안에서는 예외를 잡지 못한다. 그래서 해당 파괴자를 호출한 자에게 예외를 던진(전달한)다. 그렇지만 다른 에러들이 던져진 상황에서 파괴자가 스스로 자신을 부른거라면 함수의 종료가 자동으로 이루어지기를 원할 것이다. 그리고 당신의 프로그램은 이쯤에서 머추어 버릴 것이다. -해석이 이상하군, 암튼 다른 예외 처리시에 세션 파괴자 로그시 예외가 발생한다면 프로그램이 멈춘다는 소리다.
하지만 이것도 원래의 코드보다 안전할 것이 없다. 만약 operator<< 부를때 exception이 발생한다면 파괴자가 던지는 exception으로 다시 우리가 해결하고자 하는 원점으로 돌아가 버린다. 그렇다면
이렇게 아무런 처리를 하지 않는다면 logDestuction에서 발생한 예외가 전달되는걸 막고 프로그램 중지를 위하여 스택이 풀려나가는걸 막을수는 있을 것이다.
하지만 이런 두번째의 생각도 파괴자에서 발생하는 모든 에러를 막아 버리고 그냥 넘어가 버린다는 단점이 있다.
그래서 아마 함수호출에서 인자 전달과 과 예외가 전달되는 것이 기본적으로 같은것이라고 생각 할지도 모른다. 분명 둘은 비슷한 면이 있다. 하지만 중요한 차이점 역시 존재 한다.
// 이 소스는 위의 Widget의 일환이라고 생각하면 무리 없겠다.
localWidget이 operator>> 로 전달될때는 복사의 과정이 일어나지 않는다. 대신 operator>> 안의 참조 w가 localWidget과 묶여서 어떠한 과정을 처리하게 된다. 하지만 예외의 처리에서 localWidget은 좀 다른 이야기를 만들어 나간다. 예외가 값이나, 참조를 잡든 잡지(pointer는 잡지 못한다.) 않든 상관 없이 localWidget의 사본이 만들어지고, 그 사본은 catch로 저낟ㄹ 된다. 왜냐하면 passAndThrowWidget의 영역을 벗어나면 localWidget의 파괴자의 호출이 되기 때문에 반드시 이렇게 되어야 한다. 이것은 C++ 에서 예외는 항상 사본으로 전달된다는 이유가 된다.
해당 사본은 구지 복사할 필요가 없을 것이다. 하지만 catch 는 복사해 나가고 그래야만 catch 에서 localWidget의 사본을 편집해서 이용할수 있다. 이러한 복사의 규칙은 함수 전달과 예외 인자 전달의 차이점을 설명해 준다.
예외처리시에 다른 객체의 사본이 전달 된다는 점은 예외가 계속 전달(퍼져나갈때,propagate)에도 한가지의 고려사항이 발생한다. 다음의 두가지의 catch 블럭은 차이점이 있다. 하지만 외견상 같은 역할을 한다.
throw; // 해당 객체를 다시 복사하지 않고 던지며, 해당 예외를 propagete 한다.
주석에 되어 있는데로, 생각해 보라. throw가 복사생성자를 호출하지 않아서 효율적이다. 그리고 throw는 어떠한 형이든 예외를 전달한는데 상관하지 않는다. 하지만, 사실 예외자체가 그 형에 맞게 던져지므로 걱정이 없다. 하지만 catch문에서 예외를 던지는 객체의 형태를 바꿀 필요성이 있을때 후자를 사용해야 겠다.
그럼 이들의 차이점을 살펴보고 예외 객체들을 리턴해 보자.
우린 아직 포인터 전달에 의한 걸 의논하지 않았다. 하지만 포인터를 이용해 예외를 던지(전달:throw)하는 것은 함수상에서 포인터를 전달(pass)하는 것과는 다른걸 알수 잇을 것이다. 즉, 포인터의 복사본이 이동하는데, 이렇게 되면 pointer를 전달하는 쪽의 영역에서 throw에 의해 튀어 나가면 포인터가 가리키고 있는 객체는 소멸되므로 포인터에 의한 예외 전달(던지는것:throw)는 피해야 한다. (전역의 static 객체의 포인터라면 이야기는 달라진다. 뒤에 다룬다.)
- 고한종 . . . . 83 matches
>중앙대 컴퓨터 공학 11학번 고한종입니다.
하고 싶은 일만 하고 살아도 아무도 뭐라고 하지 않는 사람 되기
마땅히 해야 할 일이라고 생각하는 일을 하려 할 때, 생계를 걱정하며 주저하는 사람이 되지 않기
하고 싶은일이 아무것도 없을때 정말 아무일도 하지 않아도 되는 그런 사람 되기
사단법인 제로페이지를 만들고 싶다.
~~공해라고 표현해도 좋을 만큼 시시콜콜한것도 다써서 솔직히 부끄럽다~~
- [고한종/업적/WinAPI를 통한 테트리스]
- ~~[고한종/업적/WinAPI로 만든 학과주점 포스기]~~
- [고한종/업적/Math-Explorer] (...)
* 내 1학년 겨울방학을 전부 잡아 먹고, 2학년 1학기, 여름방학 전반부도 잡아먹은 녀석 (...), 지금보면 정말 허접한 App인데, 아직도 이 소스의 도움을 받고 있다. 가끔 들여다보면 전부 싹다 갈아 엎어버리고 싶은 생각이 가끔 든다. [황현]선배의 마음이 약간은 이해가 된다. 이해가 안되는건 갈아 엎는 걸 개강직전에 하고 여름방학에도 하고 그랬다는거지 (...), 이걸 안 했으면 지금의 나는 좀 다른 사람이었을 것 같다. - [고한종], 13년 3월 16일
- [고한종/업적/Androshoot]
* 2학년 JAVA 팀플용으로 만든 것. 얼마전에 엄마 갤S2에 그대로 남아 있는걸 보고 놀람. - [고한종], 13년 3월 16일
* 개인적으로 이거 덕분에 안드로이드 할 수 있게 되어서 좋기도 한데... 그래도 기분 나쁨. 다른 의미로 내 실패를 상징하는 작품이라... - [고한종], 13년 3월 16일
- [고한종/업적/AutoSugang]
* JAVA의 Swing으로 만든 시간표 대신 만들어주는 프로그램 (...) 사실 만들어 놓고 안쓴다. 2학년 말에 만들어 놓고 이번 학기(2013년 1학기)에 본인조차 안 쓴걸 보면 기획부터가 잘못된 물건. 일단 소개를 하자면, 수강신청 기간이 되면 포탈에 그 학기에 개강될 과목들을 정리해서 xls 파일로 올려줍니다. 이걸 받아서, poi 라는 JAVA 라이브러리? 에 넣고 돌리면 "[cell값]" 형식으로 String이 나옵니다. 그럼 이걸 stringTokenizer에 ]와 [를 토큰으로 해서 잘게 쪼개줍니다. (애초에 그런거 없이 CSV로 나오면 최고겠지만.. 할줄 모름 ㅠ). 사실 그냥 엑셀에서 CSV로 만들어 쓰면 되는 데, 그때 당시엔 사용 편의성을 도모한답시고 뻘짓 함. 어짜피 아무도 안 쓸텐데 ㅠㅠ 그렇게 얻어낸 과목의 시간정보를 ArrayList에 넣고, 그걸 가지고 backtraking인지.. 를 했던것 같음. 결국 속도는 처참했지만 -_-... 모든 결과가 나오는 것도 아님. 마지막으로 코드를 수정하고나서 테스트로 돌렸을때, 내가 실제로 수강신청했던 시간표는 나오지 않았음 ㅇㅈㄴ... - [고한종], 13년 3월 16일
* 근데 이거 덕분에 JAVA로 작업할때는 모든 것을 얕은 복사라고 생각해야 한다는 것을 발견함. 아니 ArrayList에서 빼고 싶어서 빼버리라고 하면, 다른 ArrayList에서도 빠져버리는 건데?! (Objective-C 처럼 말하자면, release를 원했는데 dealloc이 되어버림.) 결국 그냥 모든 대입문에 .clone을 붙였더니 메모리 폭발, 속도 안습. - [고한종], 13년 3월 16일
- [고한종/업적/DrawPicture]
* 완성은 못 했고, 이때는 멀티스레드 쓸 생각을 전혀 못 했는데, 이제는 할 줄 아니까 지금 붙잡으면 고칠 수 있음. 이거 만들땐 AppStore에 올려서 돈벌 생각을 했었는데... 얼마전에 이거보다 훨씬훨씬 훨씬 훌륭한게 이미 나와버려서.. -_-;; 몇몇 사람들에겐 보여줬으니 알지도... [권순의]선배 사진가지고 많이 테스트해봤다. 테스트할려고 찍은 인물사진중엔 제일 좋은결과가 나왔었음. - [고한종], 13년 3월 16일
-[고한종/업적/MALogin]
* 여태까지 만들었던 것중에 가장 잘나간 것. 하지만 속 알멩이는 여태까지 만든 것 중 가장 쓰레기. 이걸 OOP개념이라던가, 좋은 유지보수가 가능하게 코딩하려면, 프로젝트를 버리고 다시 시작해야 할듯. 소개하자면 이걸 공개한게 13년 1월 8일인가 하는데, 12년 12월 20일에 확산성 밀리언 아서라고 일본 ~~T~~CG(트레이드가 없어....) 게임이 들어왔다. 애니팡으로 한국 모바일 게임시장이 열린 상황 (그 전에는 미친 법 때문에 스토어에 게임 카테고리가 없었지....), 퍼즐류는 애니팡이 먹고, 슈팅게임은 드래곤플라이트, 레이싱(?)은 다함께차차차, 캐쥬얼은 윈드러너가 먹은 상황에, ~~T~~CG라는 새로운 장르가 수입이 되니.. 그야말로 공급이 없어서 단숨에 유저 확보. 지금 대략 생성된 계정은 못해도 80만개를 넘었다고 한다. 게임소개는 여기까지하고, 이 게임이 1기긱 1계정으로 기기종속 게임인데, 온라인 게임인데 부캐를 돌리고 싶은것은 어찌보면 당연!. 사람들이 로그아웃 하는 방법을 찾아놓은게 있다. 근데 겁나 불편하다 (...) 그래서 그걸 안드로이드 어플로 자동화시켜서 터치한번이면 되도록 만들었다. 그리고 공개 -> 2달이 지난 지금 1만 5천명이 내 블로그를 들렸다 나갔다. 아마 못 해도 1만은 다운로드 까진 해보지 않았을까 싶다. - [고한종], 13년 3월 16일
- 새싹교실/2011/무전취식/레벨10 . . . . 81 matches
김준석 : 5월이 막바지를 지냈어. 6월초에 프로젝트 발표가 4개 있어. 그래서 프로젝트에 치여삽니다. 하지만 잠도 잘자고 술도 잘먹어요. 그리고 구남영을 면회갔습니다. 소요산 근처 연천에 근무를 하는데 내가 옛날에 근무했던 지역에서 30분 정도 걸린지역이었다. 그래서 8시간이 걸렸음. 그래서 어제 힘들어죽는줄 알았다. 요즘 또 춤은 잘추고 있어요. 댄스스포츠 정말 잘 듣고있어요. 너희도 하고 싶으면 오세요. 프로젝트 한 기억밖에 없다.
이소라 : 수요일에요. 누가 숙제를 도와달라고 해서 원래 그날 창설모이는 날이었는데 1시에 끝나서 도와주고 창설 할려고했는데 다해서 축제도 보고 싶어서 오고있었는데 "끝났음"이라고 문자가왔음. 그리고 전날에 화요일에 6시에 오기로 했는데 새싹때문에 늦어서 문자 보냈더니 만난지 30분만에 "끝났음"이라고 문자옴. 이진영 : ㅋㅋㅋㅋ 그리고 못보고 목요일날 갔는데 퍼펙트 성공 이진영 : 이씨~~ ㅋㅋ 그리고 목요일에 축제라서 친구가옴. 6시에 왔는데 낮에 있던거 다 닫고 주점만 있어서 두바퀴오르락 내리락하다가 저기 블랙바니가서 또 꿀꿀꿀 퍼묵퍼묵 하는데 남자친구가 와서 학교 구경 시켜줄려고 올라왔는데 볼게 없어서 걔 아는 형이 저기 병원에 있다길래 만나서 노래방감. 그날 낮에 풍선 미끄럼틀가서 이진영: ㅋㅋㅋㅋ 애들이랑 다 탐. 근데 엄청 재밌게 탔는데 어떤애가 타다가 바지가 찢어짐 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ킨ㄹ이ㅓㅋㅋㅋㅋㅋ 그래서 진영이가 잘봤음. 그리고 금요일에 티셔츠 받으려했는데 줄이 너무길어서 그 전날 다른애한테 뺏은 L사이즈 내가 입음. 완전 하의실종임 ㅋㅋ 그리고 김장훈왔었는데 완전 좋았음.
이진영 : 화요일에 새싹 끝나고 선전부 회의를 가서 처음으로 자보를 썻음. 암튼 재밌었음. 그러고 화요일 수요일에 창설을 하느라 집에 계속 새벽 1시에 들어감. 근데 결과는 첫번째 할때 로봇 팔이 떨어져서 Fail 그리고 두번째는 퍼펙트를 했음. 그래서 돌만 없었으면 완전 퍼펙성공인데 짜증났었음. 그리고 화요일에 너무 배고팠는데 창설 4피에서 할때 홍병우 교수님에게 "교수님 배고파요"이랬더니 4피 사람들한테 다 쏨. 매우맛있었음. 애들이 절 찬양했음. 그리고 축제는 재밌었음. 아 그리고 목요일에 시청에 가서 거기 앞에서 군악대랑 사물놀이 연주하는 봤는데 되게 재밌었음.
서원태 : 수요일날 자다가 종하형한테 문자왔음 "경진대회 감독좀 맡아라" 그래서 갔는데 문제좀 봤는데 하나도 모르겠음. 그래서 인터넷 쓰는사람 계속 잡았는데 치완이네 조가 인터넷 쓰는건 몰랐는데 알아서 말해서 강퇴시킴. 그리고 끝나서 같이 밥먹고 집에감. 목요일에는 가족 저녘약속있어서 축제 구경못하고 집에 감. 금요일날 축제 구경할려고했는데 문예사 프로젝트 발표 준비때문에 구경 못함. 내년 축제는... 아 군대가있지. 군대갔다오면 3년정도 뒤에 볼수 있을듯.
정진경 : 작년 기출보고 갔는데 4문제 나왔는데 너무 어려움 . 삽질하다가 2문제 풀었는데 목요일날 결과 나왔는데 2등해서 넘 좋았음. 경진대회 전에 동양철학의 이해 수업이 있었는데 거기서 잠깐 졸았는데 귓속에 주문이 들어왔다 "양명학 주장학 " 그래서 깨고 보니까 머리가 아팠다. 10만원 현금으로 받고 부상있는데 기계식 키보드랑 무선 마우스. 1등부터 선택하는거임
아마 기계식 키보드는 못쓰고 무선 마우스가 선택될것 같음. 끝.
김태진 : 저번주말에 부산에 내려갔습니다. 목요일 저녘에 갔기때문에 금요일 창설은 다해놓고 구경하러갔습니다. 그리고 금요일 저녘에 들은 소식은 Fail Fail~~~ ㅠㅠ. 축제도 못본건 아쉽긴 하지만 그래도 집에가서 이런저런거 먹고 잘 쉬다온건 행복했음. 프로그래밍 경진대회 나갔는데 한종이랑 송치완이랑 같이 나갔음. 분명 MSDN까지만 쓰기로 되있었는데 송모군이 MSDN하면서 www.google.co.kr를 통해 검색을 하다가. 야. 이거 문제 똑같애 하다가 들켜서 강퇴당함.
강원석 : 집에 강아지가 생겼음 종류는 말티즈 "콜" 네달됬는데 짱임. 남자임. 중성화 아직 안함. 해야한다던. 똥오줌 가려서 완전 신기함. 애가 첫날 왔는데 신문지 위에서 비비빅하더니 오줌거기서 싸고 똥도 거기서 사고 완전 신기함. 거실에서 따로 재움. 그럼 방문열고 들어옴. 이번주 창설 1등했음. 완전 좋음. 축제때 애들이랑 술만먹음. 구경은 안했음.
//그리고 좌우대칭을 확인??
// 최고 하고 최소를 찾음.
// 최고 최소 뺌.
강원석 : 앞으로 지각 안하겠습니다. 그리고 요즘에 C수업을 안들어서. 오늘 처음보는게 많았습니다. 어.. 그리고 오늘 숙제 짯는데 옆에서 쪼아줘서 참 고마워요. ㅎㅎㅎㅎ 정진경씨께 쪼아줘서 감사하단 말씀을 드리고싶습니다.
정진경 : 간만에 오니 진도 많이 빠졌군요. 그래도 아직 코딩을 하는걸 두려워하는것 같아요. 다음에 먹을거 싸들고 오겠습니다.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 개념 정리에 대해서는 그다지 많은 가르침이 없었습니다. 오늘의 집중 항목은 여러명이 코딩하는 방법과 직접 코딩을 해보는것이었죠. 지각에 대해서도 한마디했군요!! 지각할때 상대방의 양해를 구하지 않는것은 상대방에게 크나큰 실례입니다~ 모두 지각한다면 먼저 알려주는 센스쟁이가 되주세요. 오늘은 진경이가 와줘서 너무 기쁩니다. 든든한 조교가 있으니 강사가 무능해도 잘 진행되는군요. Show me the money!!! 담시간을 기대하시라!! 또한 태진이도 들으러와서 신나보이는 새싹이었습니다. 이런 수업방식이 적응이 안될수도잇죠. 신나고 신나게 배우고 먹고 마시는것입니다. 이게 맞는지는모르겠지만 학생들이 모쪼록 제 배움을 즐겁게 받아들여주었스면 좋겠습니다. 다음시간에도 Coding Coding입니다!! 얏후!! 후기써라. - [김준석]
* ㅋㅋㅋ오늘도 일등입니당*_* 위키올라오기전에 미리 확인한 건 처음이에요. 과제하다가 들어와서 써용. 오늘 코딩해본 1, 2번은 다했습니다. 스스로 생각해보고 스스로 코딩해보는게 중요한 것 같아욧!! 문제를 보고 어떻게 해결할까 고민하는 과정이 실력을 키우는 것 같네용... 여태까진 다른사람 생각을 그대로 옮기는 코딩을 했다면 이제부터는 제 스스로 생각해보고 코딩을 해야겠어요히히*-_-* 하하핫 이제 3번을..... - [이소라]
* 무능무능해진 소라. 그래도 가장 코딩을 잘하는군요. 역시 경험자는 달라=ㅂ=. 1등은 이쁘니까 과자한개 사주고싶은 마음만 줄께. 과제를 올라오기 전에도 했군용. 잘하고있습니다. 계속 고민하고 디버깅하는 과정이 프로그래머에겐 필요한 과정이지. 이번주에는 코딩만해서 딱히 많은 것을 느낄것이 없었지만 그래도 충실하게 후기를 써줘서 고마움. - [김준석]
* 오랜만에 참여해서 C 과제를 풀었습니다. 어느새 1학기가 끝나가네요. C수업도 구조체, 파일입출력만 들으면 끝나는 것 같고, C언어에 익숙해질 수 있었던 1학기가 되었기를ㅋㅋ c 과제 저는 밤 새서 구현 다 했지만, 새로 다시 짜봐야할 것 같습니다. ㅋㅋ 4, 5번 문제는 꽤 소스가 길어지는 것 같네요. 스스로 직접 짜본다면 실력이 많이 늘듯... - [정진경]
* 간만에 참석해서 신나는 C수업. 조교로 참석하니까 신나지? ㅋㅋㅋ 혼자짜는건 참 많은 도움이 되지 숙련도가 쑥쑥 올라가니까. 하지만 혼자 짜는것보다 여러명이 머리를 맞대고 짜는것도 많은 도움이 됩니다. - [김준석]
* 으앜 오늘도 자느라 교양과목을 빼먹게되네요. 과제는 금요일 C수업까지 듣고 해보려고 합니다~ 코딩은 아무도 모르게 혼자 하는것이 편한것 같아요ㅋㅋ 누가 보고있으면 두려워서 제대로 못하겠어요. 자신감을 키우기위해 반복해서 코딩을 해보는게 관건이겠지요? 다음시간에도 코딩을 해야하니까 새싹교실수업에 앞서 코딩연습좀 해보고 수업에 임해야겠습니다. 그리고 주석달기 숙제 여기다 쓰는건줄 알았는데 소라가 안쓴거 보니까 다른곳에 올리는건가???? 주석도 짜면서 1,2번은 한번 해보려고 합니다. 마지막 과제인데 어렵네요. 모든강의가 다 마지막 과제는 어렵게 나오나봐요ㅋ - [서원태]
- SmallTalk/강좌FromHitel/강의2 . . . . 78 matches
원래 Dolphin Smalltalk는 상용과 공개용 Smalltalk 환경을 같이 배포하고
재 필자가 사용하고 있고 또한 자료실에 올려진 환경은 1.1판입니다. 그러므
바로 바로 넘어갑니다. 고칠 사항이 있는 사람이라면 알맞게 고
처음 Dolphin Smalltalk를 설치하여 실행할 때에 화면에 경고 상자가 나타납
니다. 대강의 내용은, 지금 사용하고 있는 Dolphin Smalltalk는 아직 등록
능을 가지고 있습니다. 그러나 지금 우리가 주목해야 할 창은 'Untitled -
리고 Smalltalk 프로그래밍에 대한 흥미를 느낄 수 있도록 짤막한 Smalltalk
프로그램을 실행하고 그 결과를 알아보는 방법을 알아봄으로써, Smalltalk
여러분이 보고 있는 Workspace를 "일터"라고 부릅니다. 여기는 여러분이
지고 있습니다. 즉 흔히 사용하는 텍스트 문서 편집기와 비슷한 동작 방식을
가지고 있다는 말입니다.
스트 편집기와 다른 점은, 이곳에는 Smalltalk의 명령들이 들어가고, 이 명
른 문장들은 Smalltalk의 명령을 어떤 방식으로 실행하는 것인지, 그리고 실
행 결과를 어떻게 얻어낼 수 있는지에 대해서 설명하고 있습니다.
이제 글쇠판에서 <Ctrl-D>를 누르십시오. 그리고 화면을 살펴봅시다. 커서가
내려진 명령이라고 합니다. Object Arts사는 1995년 2월에 자사의 Dolphin
위의 문장 끝에 커서를 갖다 놓고, 앞서 사용했던 <Ctrl-D> 글쇠를 사용해서
와우! 200!을 구하는데 1ms정도의 시간밖에 걸리지 않는다고 그러는군요.
각 명령을 실행하기 위해서는 해당 명령 끝에 커서를 위치하고 <Ctrl-D>글쇠
를 누른다는 것쯤은 기억하고 계시겠지요?)
- HowToStudyDataStructureAndAlgorithms . . . . 76 matches
DataStructure와 알고리즘은 어떻게 공부해야 할까..
처음접하는 것이라면 배열 -> 스택 -> 큐 -> 리스트 -> 트리 순서로 나가는 것이 좋을듯. 정렬과 해싱 이하 뒤의 꺼는 아마 이번달내로 나가기 힘들것 같은데. 트리나 그래프까지만 목표로 잡아도 성공이라고 생각함.
그리고, 자료구조 레포트 선배들이 한 것이 있으니까, 그 문제들 구현을 목표로 잡아도 좋고. (원한다면 보내줄께.) ex) 스택:스택 구현, postfix 의 구현, 계산기 구현. 큐:큐 구현. 리스트:다항식 덧,뺄셈 & 곱셈 구현 (polynomial) 트리:2진트리구현
자료구조는 일단 1. 각각의 자료구조들의 특징을 이해하고. 2. 실제의 구현법을 익히며 (뭐.요새는 collection library들을 제공하므로 직접구현할 일이 줄어들었긴 했지만. 그래도 여전히 기초가 됨) 3. 해당 문제상황에 적절한 자료구조를 선택할 수 있는 눈을 다듬어야 함. --석천
제가 생각컨데, 교육적인 목적에서는, 자료구조나 알고리즘을 처음 공부할 때는 우선은 특정 언어로 구현된 것을 보지 않는 것이 좋은 경우가 많습니다 -- 대신 pseudo-code 등으로 그 개념까지만 이해하는 것이죠. 그 아이디어를 Procedural(C, 어셈블리어)이나 Functional(LISP,Scheme,Haskel), OOP(Java,Smalltalk) 언어 등으로 직접 구현해 보는 겁니다. 이 다음에는 다른 사람(책)의 코드와 비교를 합니다. 이 경험을 애초에 박탈 당한 사람은 귀중한 배움과 깨달음의 기회를 잃은 셈입니다. 참고로 알고리즘 교재로는 10년에 한 번 나올까 말까한 CLR(''Introduction to Algorithms, Thomas H. Cormen, Charles E. Leiserson, and Ronald L. Rivest'')을 적극 추천합니다(이와 함께 혹은 이전에 Jon Bentley의 ''Programming Pearls''도 강력 추천합니다. 전세계의 짱짱한 프로그래머/전산학자들이 함께 꼽은 "위대한 책" 리스트에서 몇 손가락 안에 드는 책입니다. 아마 우리 학교 도서관에 있을 것인데, 아직 이 책을 본 적 없는 사람은 축하드립니다. 아마 몇 주 간은 감동 속에 하루하루를 보내게 될 겁니다.). 만약 함께 스터디를 한다면, 각자 동일한 아이디어를 (같은 언어로 혹은 다른 언어로) 어떻게 다르게 표현했는지를 서로 비교해 보면 또 배우는 것이 매우 많습니다. 우리가 자료구조나 알고리즘을 공부하는 이유는, 특정 "실세계의 문제"를 어떠한 "수학적 아이디어"로 매핑을 시켜서 해결하는 것이 가능하고 또 효율적이고, 또 이를 컴퓨터에 어떻게 구현하는 것이 가능하고 효율적인지를 따지기 위해서이며, 이 과정에 있어 수학적 개념을 프로그래밍 언어로 표현해 내는 것은 아주 중요한 능력이 됩니다. 개별 알고리즘의 카탈로그를 이해, 암기하며 익히는 것도 중요하지만 더 중요한 것은 알고리즘을 생각해 낼 수 있는 능력과 이 알고리즘의 효율을 비교할 수 있는 능력, 그리고 이를 표현할 수 있는 능력입니다.
첫번째가 제대로 훈련되지 못한 사람은 알고리즘 목록의 스테레오 타입에만 길들여져 있어서 모든 문제를 자신이 가진 알고리즘 목록에 끼워맞추려고 합니다. DesignPatterns를 잘 못 공부한 사람과 비슷합니다. 이 사람들은 마치 과거 수학 정석을 수십번을 공부해서 문제를 하나 던져주기만 하면, 생각해보지도 않고 자신이 풀었던 문제들의 패턴 중 가장 비슷한 것 하나를 기계적, 무의식적으로 풀어제끼는 "문제풀이기계"와 비슷합니다. 그들에게 도중에 물어보십시오. "너 지금 무슨 문제 풀고있는거니?" 열심히 연습장에 뭔가 풀어나가고는 있지만 그들은 자신이 뭘 풀고있는지도 잘 인식하지 못하는 경우가 많습니다. 머리가 푸는 게 아니고 손이 푸는 것이죠.
두번째가 제대로 훈련되지 못한 사람은 일일이 구현을 해보고 실험을 해봐야만 알고리즘간의 비교를 할 수 있습니다. 특히 자신이 가진 카탈로그를 벗어난 알고리즘을 만나면 이 문제가 생깁니다. 이건 상당한 댓가를 치루게 합니다.
세번째가 제대로 훈련되지 못한 사람은, 문제를 보면 "아, 이건 이렇게 이렇게 해결하면 됩니다"라는 말은 곧잘 할 수 있지만 막상 컴퓨터앞에 앉혀 놓으면 아무 것도 하지 못합니다. 심지어 자신이 생각해낸 그 구체적 알고리즘을 남에게 설명해 줄 수 있기까지 하지만, 그들은 그걸 "컴퓨터에게" 설명해 주는 데에는 실패합니다. 뭔가 생각해 낼 수 있다는 것과, 그걸 컴퓨터가 이해할 수 있게 설명할 수 있다는 것은 다른 차원의 능력을 필요로 합니다.
그리고 마지막으로, 자료구조/알고리즘 공부를 할 때에는 가능하면 실질적이고 구체적인 실세계의 문제를 함께 다루는 것이 큰 도움이 됩니다. 모든 학습에 있어 이는 똑같이 적용됩니다. 인류의 지성사를 봐도, 구상(concrete) 다음에 추상(abstract)가 오고, 인간 개체 하나의 성장을 봐도 그러합니다. be 동사 더하기 to 부정사가 예정으로 해석될 수 있다는 룰만 외우는 것보다, 그러한 다양한 예문을 실제 문맥 속에서 여러번 보는 것이 훨씬 나은 것은 자명합니다. 알고리즘/자료구조 공부를 할 때 여러 친구들과 함께 연습문제(특히 실세계의 대상들과 관련이 있는 것)를 풀어보기도 하고, ACM의 ICPC 등의 프로그래밍 경진 대회의 문제 중 해당 알고리즘/자료구조가 사용되는 문제를 -- 이게 가능하려면 "이 알고리즘이 쓰이는 문제는 이거다"라는 가이드를 해줄 사람이 있으면 좋겠죠 -- 같이 풀어보는 것도 아주 좋습니다.
'''알고리즘/자료구조 교육에 대한 불만'''
우리는 알고리즘 카탈로그를 배운다. 이미 그러한 해법이 존재하고, 그것이 최고이며, 따라서 그것을 달달 외우고 이해해야 한다. 좀 똑똑한 친구들은 종종, "이야 이거 정말 기가막힌 해법이군!"하는 감탄을 외칠지도 모른다. 대부분의 나머지 학생들은 그 해법을 이해하려고 머리를 쥐어짜고 한참을 씨름한 후에야 어렴풋이 왜 이 해법이 그 문제를 해결하는지 납득하게 된다. 그리고는 그 "증명"은 책 속에 덮어두고 까맣게 사라져버린다. 앞으로는 그냥 "사용"하면 되는 것이다. 더 많은 대다수의 학생은 이 과정이 무의미하다는 것을 알기 때문에 왜 이 해법이 이 문제를 문제없이 해결하는지의 증명은 간단히 건너뛰기를 한다.
이런 학생들이 주어진 알고리즘을 사용하는 소위 "객관식" 혹은 "문제출제자"가 존재하는 시험장 상황 하에서는 뛰어난 성적을 보일것임은 자명하다. 하지만 스스로가 문제와 해답을 모두 만들어내야 하는 상황이라면, 알고리즘을 완전히 새로 고안해내야 하는, 또는 기존 알고리즘을 변형해야 하는 대다수의 상황이라면 어떨까?
교육은 물고기를 잡는 방법을 가르쳐주어야 한다. 어떤 알고리즘을 배운다면, 그 알고리즘을 고안해 낸 사람이 어떤 사고의 과정을 거쳐서 그 해법에 도달했는지를 구경할 수 있어야 하고, 학생은 각자 스스로만의 해법을 차근 차근 "구성"(construct)할 수 있어야 한다(이를 교육철학에서 구성주의라고 하는데, 레고의 아버지이고 마빈 민스키와 함께 MIT 미디어랩의 선구자인 세이머 페퍼트 박사가 주창했다). 전문가가 하는 것을 배우지 말고, 그들이 어떻게 전문가가 되었는가를 배우고 흉내내라.
''고등학교때부터 흘러온 교육방식의 폐해가 아닐까 하네요. '무엇을, 왜' 라는 질문 이전에 '어떻게' 가 머릿속에 들어와버리는. --석천''
왜 우리는 학교에서 "프로그래밍을 하는 과정"이나 "디자인 과정"을 배운 적이 없을까? 왜 해답에 이르는 과정을 가르쳐주는 사람이 없나? 우리가 보는 것은 모조리 종적 상태의 결과물로서의 프로그램 뿐이다. 교수가 어떤 알고리즘 문제의 해답을 가르칠 때, "교수님, 교수님께서는 어떤 사고의 과정을 거쳐, 그리고 어떤 디자인 과정과 프로그래밍 과정을 거쳐서 그 프로그램을 만드셨습니까?"라고 물어보자. 만약 여기에 어떤 체계적인 답변도 할 수 없는 사람이라면, 그 사람은 자신의 사고에 대해 사고해 본 적이 없거나, 문제 해결에 어떤 효율적 체계를 갖추지 못한 사람이며, 따라서 아직 남을 가르칠 준비가 되어있지 않은 사람이다. --김창준
알고리즘을 공부하면 큰 줄기들을 알아야 합니다. 개별 테크닉들도 중요하지만 "패러다임"이라고 할만한 것들을 알아야 합니다. 그래야 알고리즘을 상황에 맞게 마음대로 응용할 수 있습니다. 또, 자신만의 분류법을 만들어야 합니다. (see also HowToReadIt Build Your Own Taxonomy) 구체적인 문제들을 케이스 바이 케이스로 여럿 접하는 동안 그냥 지나쳐 버리면 개별자는 영원히 개별자로 남을 뿐입니다. 비슷한 문제들을 서로 묶어서 일반화를 해야 합니다. (see also DoItAgainToLearn)
이와 관련해서 Anany Levitin의 ''A NEW ROAD MAP OF ALGORITHM DESIGN TECHNIQUES''(DDJ, 2000 Apr)를 권합니다. 그는 알고리즘 디자인 테크닉을 다음 네가지로 크게 나눕니다:
자료구조와 알고리즘은 프로그램을 만드는 데 있어서 중요하다고 생각합니다. 남이 만든 자료구조와 알고리즘을 이용하는데 그치지 말고 스스로 생각하여 만드는 경지에 오르면 좋겠습니다. -[강희경]
DeleteMe) 1학기끝나가는 마당에 후회 막급임. 모든 것들을 한번씩 구현해보고 갔어야하는데... 새로 들으시는 분들 꼭 한번씩 구현해보세요. 지금 생각해보니 정작 중요한 것을 등한시한 느낌입니다 - [eternalbleu]
- ProgrammingPartyAfterwords . . . . 76 matches
다음은 파티 전체(파티 준비부터 뒷풀이 막판까지)에 대한 공동 기사로 가능하면 NoSmok:다큐먼트모드 를 지킨다 -- 자기는 분명히 알고있는 사건(event)인데 여기에는 아직 기록되어 있지 않다면 그냥 적당한 자리(!)에 직접 보충해 넣도록 하고, 묘사가 미진하다면 좀 더 치밀하게(!) 가다듬는다. 페이지 마지막에는 NoSmok:쓰레드모드 로 개인적인 감상, 소감 등을 적도록 한다.
''보통, 전체 모임/파티 동안 한 사람이 참여하는 대화는 전체 발생 대화로 볼 때 극소수에 해당합니다(게다가 동일한 대화에 참여했으면서도 인식하는 것과 기억하는 것에는 개인차가 큽니다). 각자가 나눴던 이야기 같이 사실적인 것들은 모두 다큐먼트모드로 여러사람이 협동을 해서 채워나가도록 하면 좋겠습니다. 집합적 기억이 되는 것이죠 -- 개개인이 갖고있는 기억의 전체 합집합. "내가 있었던 테이블에서는 어쩌구에 대해 이야기 했는데, 저쪽에서는 저쩌구를 이야기 했군! 이야, 재미있는 걸. 저쩌구에 대해 좀 더 써달라고 부탁해야겠다." 그러면 모두가 이득을 볼 것이고, 심지어 그 뒷풀이에 오지 못했던 사람들도 뭔가 얻는 것이 있을 겁니다. --JuNe''
금요일, 토요일, 토요일 밤 약간 깊숙히 - 이번 심사와 Mentor 역할을 맡은 김창준, 채희상, 강석천은 임시 위키를 열고 문제 만들기 작업 관련, Moderator 로서의 역할을 정했다.
12시 구근은 신촌역에 도착하여 ZP 사람들을 기다림. 12시 30분쯤 모두 모여서 밥먹으러 감. 밥을 다 먹고, ZP 일행등은 쵸코파이와 과자 2봉지를 사가지고 Sun 랩으로 향하였고, 1시 30분쯤 Sun 랩에 도착하였다. 인수는 신촌에서 희록이형,구근이형,석천이형을 만나 밥을 먹고 서강대로 갔다.
"문자 날려보면 되겠죠. 희상이가 친구 핸폰 번호 주면서 문자날리면 전화한다고 했어요. (툭 툭툭...)"[[BR]]
서강대의 희상, 성근, 경훈은 미리 와서 리눅스에 Eclipse 를 깔고 그들을 기다리고 있었다.
1시 40분 경 문을 열고 들어오는 이가 오늘의 Mentor 중 한명인 김창준씨와 신제용씨였다. 그들은 오늘 프로그래밍 파티의 경기 규칙이나 룰, 시간 같은것을 말해 주었다. 2시 10분경 상협군이 헐러벌떡 뛰어 왔다. 쫌 전에 창섭이와 혁기도 왔다.
2시가 조금 넘어서 파티를 시작했다. ZP팀 중에 불참 인원이 두 명이 있어서 인원 조정을 했다. 그 결과로, 다음과 같은 배정이 되었다. 각 팀에는 한 명 씩의 멘터(도우미)가 붙었다. 그들은 문제 해결에 관련된 직접적인 조언은 피하고, 개발 과정이나 여타 문제에 대한 도움을 주기로 했다.
모두 리눅스에서 개발을 했고, MOA팀은 C+ViImproved 를 사용했고, ZP#1, ZP#2는 모두 Java+["Eclipse"]를 사용했다.
먼저, 김창준씨가 앞으로 나와서 인사를 하고 이 파티의 의의를 설명했다. 그리고는 바로 파티의 스케쥴과 간략한 참가방법을 설명했다. 멘터(Mentoror)와 퍼실리에이터(Facilliator)의 역할, 소개 등이 있었고, 심사방법이나 심사 요소에 대한 자세한 설명이 있었다..
먼저 ZP#1팀은 Mentor 채희상씨와 함께 요구분석을 시작하였으나 어떤 방법으로 이루어져야 하는지 어떤 형식으로 하여야하는지 서로 명확히 몰랐기 때문에, 아무도 말을 하지 않고 있었다. 희록님이 생각하기에 '이렇게 아무말도 없다면, 시간만 흘러가게 될 것이다. 내가 약간 분위기를 만들어야겠다'는 생각을 했다. 그래서 "자 우리 모두 자기가 생각하는 요구사항을 말해보기로 하자"라고 하였고, 우리는 서로의 요구사항에 대한 논의가 있었다.
시간이 좀 흘렀을 때, 희록님의 생각은 '우리 모두 이 프로그램을 짜는데서 왜 알고리즘이 사용되어야 하는지 모르고 있다. 이는 문제를 제대로 파악하지 못했다는 것을 의미한다' 라는 생각을 하였다. 그 때, 누군가가 입력 형식에 관해서 Mentor에게 물었다. 하지만 아쉽게도 입력형식에 대해서 명확한 답을 얻을 수는 없었지만, 몇가지 새로운 사실들을 알수 있었다. 하지만 진행은 계속 지지부진하게 되었다. 희록님은 다시 그것을 깨고자 "CRC카드를 한번 사용해서 문제를 다시 한번 생각해보자"라고 하였다. 우리는 CRC카드를 작성하기 시작하였고, 우리가 CRC카드를 이용해서 시뮬레이션을 실행해보고서는 요구사항을 분석하는데는 크게 도움이 되지 않았지만, 우리가 프로그래밍시에 어떤 객체들이 필요할지와 그 속성들에 대해서는 약간 명확해졌다.
그 때쯤인가, ZP#2팀의 Mentor이신 김창준님이 '슬쩍' 오셔서 Design이 잘 떠오르지 않는다면, 비슷한 아키텍쳐를 가진 문제를 풀어서 그 아키텍쳐를 재사용해 보라는 말씀을 하셨다. 하지만, 우리 팀원중 아무도 그것에 대해선 이후에 언급하지 않았다.(묵살되었다. --) 그러다가 우선 요구분석에 대한 이해를 높이고, 디자인을 상세화하기 위해서(디자인->코딩->디자인->코딩 단계를 반복하였다.) 코딩을 시작하기로 하였다. 상협군과 인수군은 매직펜을 맡았고, 희록군은 키보드를 맡았다. 희록군은 Unix환경에서의 Eclipse의 작업 문제로 인해 심각한 스트레스를 받고 있었다. 그러다가 컴퓨터를 한번 옮겼으나 그 스트레스를 줄이진 못했다. 아무래도 공동으로 프로그래밍 하는거에 익숙하지가 않아서 좀 서투룬 감이 있었다. 그래도 해야 겠다는 생각을 하고 문제의 요구 사항을 분석하고 어떻게 설계를 해야할지 의논했다.
이 때 ZP#2팀은 Mentor 김창준씨가 지켜보는 가운데 바로 요구사항 분석에 들어갔는데, 이를 보던 김창준씨가, "저라면 시간 계획을 먼저 세우겠습니다"라고 말을 해서 그들은 이에 동의하며 시간계획을 먼저 짰다. 20 분 정도를 요구 분석, 다음 20분을 디자인, 그리고 남은 시간엔 구현과 디자인 반복하기로 계획을 세웠다. 구현, 디자인 반복을 하는 방법은 멘터의 조언에 따라 두명이 짝으로 구현, 나머지 한명은 디자인 다듬기로 하였다. 팀원은 긴장한 채로 문제에 집중하려 애썼다.
요구분석을 마치고 디자인을 하기로 한 시간이 되었기에 팀원들은 한 테이블에 모였다. 그리곤 CRC 카드를 이용해서 디자인에 들어가기 시작했다. 암묵적으로 ["구근"]님이 ZP#2의 무게중심이 되어서 디자인 회의가 시작되었다. 어떤 클래스들이 필요한가, 어떤 이벤트를 누가 발생시키고 그 이벤트를 누가 알아야하는가에 대한 이야기가 오가는 가운데 ["데기"]는 문제파악 조차 제대로 안되어서 무척 혼란스러웠다. 서로 요구분석 이해에 차이가 있었음에도 불구하고 디자인은 계속 진행되었고, 시간은 계속 흐르고 흘러서 구현을 시작하기로 한 시간을 훌쩍 넘어버렸다.
한편 실습실 구석에서 Mentor 1002씨가 함께한 Moa팀은 처음에 책상 하나를 두고 4명이서 서로 대화를 하면서 Requirement 를 이해해나갔다. 그러다가 중간에 2명은 Person - Elevator 의 전반적 구조를, 2명은 Elevator 알고리즘에 대해 생각을 전개해 나갔다.
'오.. 대화진행속도가 빠르다!' 1002 가 본 moa 의 마치 평소 손발을 맞춰본 팀같았다. 근데, 토론하는 것을 들으면서 1002가 생각하기엔 '음.. 근데, 너무 초반에 Algorithm-Specific 하게 생각하는게 아닐까. 일단은 문제를 간단한 문제로 분해하는(보통 1002가 'Design' 을 간단하게 정의하라고 할때 저렇게 표현한다.) 과정이 더 중요할것 같은데'
3시 40분쯤. 1002는 시간이 너무 지체된다고 판단, '처음부터 일반화 알고리즘을 생각하시는 것 보다는, 사람수 한명일때라 생각하시고 작업하신뒤 사람수는 늘려보시는것이 더 편할겁니다' 라고 했다. 이는, 금요일, 토요일때 미리 엘리베이터 시뮬레이션을 만들때 느낀점이긴 했다. Moa 팀에서는 동의를 했고 직원 한명에 대한 여정부분을 Hard-Coding 해나갔다.
중간 4시가 넘어간 즈음, 1002는 시간이 지체된다고 판단, 프로그래밍에 들어가기를 유도했다. '처음부터 디자인을 해 나가시는 방법도 있겠지만요. 디자인을 도출해 내기 위해 프로그래밍을 병행하시는 방법도 있습니다. 대강의 디자인이 나왔으면 약간 코딩해보신뒤 다시 모여서 재디자인해보세요.'
그리고. Moa 팀의 열혈플밍모드 돌입.~!
- 열린제로페이지 . . . . 74 matches
'숨쉬는독'군은 평소 관심이 많던 보안 관련 스터디를 하고 싶은데 어떻게 시작하면 좋을지 잘 모르는 초보자이다. 앞서 공부했던 선배의 조언을 듣고 싶고, 또 같이 공부할 사람이 있으면 좋겠다는 생각이 들었다. 그리고 자신이 공부한 내용을 나중에 공부할 사람과 공유하며 같이 발전하길 원했다. 그러나 그가 속한 '우드페이지'란 학회에는 보안에 관심이 있는 사람이 그렇게 많지 않았다. 결국 '숨쉬는독'군은 선배, 동기를 모아(공교롭게도 그들은 '우드페이지' 회원이 아니었다.) 보안학회 '까스'를 만들기로 결심을 한다. 그러나 관련 분야 초보자가 새로운 학회를 만들기란 무척 버거운 일이었다. 결국 그가 만든 보안학회는 좌초되었다.
'숨쉬는독'군은 평소 관심이 많던 보안 관련 스터디를 하고 싶은데 어떻게 시작하면 좋을지 잘 모르는 초보자이다. 앞서 공부했던 선배의 조언을 듣고 싶고, 또 같이 공부할 사람이 있으면 좋겠다는 생각이 들었다. 그리고 자신이 공부한 내용을 나중에 공부할 사람과 공유하며 같이 발전하길 원했다. 그래서 그는 과내 학회 '오픈페이지'에 보안 스터디 그룹 '까스'를 조직하고 사람을 모았다. 중앙대학교 컴퓨터 공학과 학생이라면 누구나 거리낌없이 참여할 수 있는 학회 '오픈페이지'에 보안에 관심있는 사람들이 새로 모였다. 보안 스터디 '까스'는 '오픈페이지'의 위키위키에 보안에 대한 화두 정도를 던져놓고 해체되었다.
'배장이'군은 새내기 시절 사람과 어울리는게 마냥 좋아서 전공 공부는 뒷전이고 선배, 동기들과 어울려 노는게 제일 좋았다. 그러나 학년이 올라가면서 실속을 차려야겠단 생각이 들었고, 이에 따라 전공 공부에 관심과 열의를 조금 늦게 갖게 되었다. 마침 늦바람을 자극하는 주제인 MFC 스터디가 학회 '우드페이지'에서 시작되려한다는 것을 알았지만 '배장이'군은 '우드페이지' 회원이 아니기에 아쉬워 하며 술잔만 비운다. 그러다 '배장이'군은 평소 친분이 있는 집행부 선배와 동기들과 같이 방학동안에 스터디를 한다.
'배장이'군은 새내기 시절 사람과 어울리는게 마냥 좋아서 전공 공부는 뒷전이고 선배, 동기들과 어울려 노는게 제일 좋았다. 그러나 학년이 올라가면서 실속을 차려야겠단 생각이 들었고, 이에 따라 전공 공부에 관심과 열의를 조금 늦게 갖게 되었다. 마침 그의 늦바람을 자극하는 주제인 MFC 스터디가 학회 '오픈페이지'에서 시작되려한다는 것을 알고서 '배장이'군은 '오픈페이지' 에 스터디 동참 의사를 밝힌다. 비록 스터디 팀원들과는 학번 차이는 나지만 비슷한 실력으로 인해 '배장이'군은 무리없이 스터디에 합류하고 성과를 얻을 수 있었다.
이 생각에 반대 의견이 무척 거세리라고 생각되지만 정보 공유의 진입 장벽이 될 뿐인 '''제로페이지의 명확한 회원 구분은 불필요하다'''는 주장을 해봅니다. 앞선 네개의 가상 시나리오 중 1-1, 2-1번 시나리오는 실화를 바탕으로 작성했습니다. 1-2, 2-2번 시나리오는 주관적이며 희망적인 방향으로 서술했습니다. 현재의 제로페이지는 연초에 모은 사람들 중 꾸준히 학술적 활동을 하는 사람들만이 제로페이지 회원이 될 수 있는 폐쇄적인 학회입니다. ["열린제로페이지"]로 방향을 잡는다면 학회에서 교류되는 정보의 질과 양을 높일수 있지 않을까요.
물론 현실적으로 지금 당장 ["열린제로페이지"]로 가는 데에는 많은 무리가 따르리라 생각됩니다. 그러나 현재 제로페이지 회원들이 ["열린제로페이지"]가 되기를 원하는 마음을 갖고 시간을 두고 노력을 하며 학과 동문들이 그 노력을 이해해준다면 불가능한 일은 결코 아니라고 생각합니다. 다른 회원들의 생각이 궁금합니다. (저는 이 글을 쓰기 위해 무척 오랜시간을 고민했습니다. 즉각적인 반응보다는 이 문제에 대해 진지하게 생각해본 후의 반응을 보고싶습니다.)
전체적인 부분에 대한 고민은 부족하지만, 한가지 사실을 간과하는듯 하여 글을 남깁니다. 현 시점에서 제로페이지는 자선 단체가 아닙니다. 누군가 자신의 잉여 시간을 투자하여, 원할한 스터디나 프로젝트를 위해 돕는게 아닙니다. 시나리오 1-1, 2-1에서의 이유는 '누군가 뒷바라지를 안해줘서', '기대고 들어올 틈이 보이지 않아서' 라는게 주요한 이유로 보이지만, 현재로선 이러한 상황에 대한 여유가 없었고 또한 학회가 생긴 본래의 목적은 아니었기 때문입니다. 오히려 반문해볼 수 있습니다. 제로페이지에 들어오는데 누구도 막은 일이 없는것으로 알고 있습니다.(제가 학교에 없을때의 일은 모르겠습니다.) 진입장벽 이야기는, 어느 모임에나 있습니다. '모임에 처음나갔는데 아는 사람끼리만 이야기 하고 너무 서먹하더라'로 귀결되는 이야기는 여타의 동호회에서도 쉽게 찾아볼 수 있는 문제점 입니다. 모임에 들어오고자, 모임에서 어떤 내용을 얻고자 한다면 노력이 있어야 하는건 당연합니다. 애초에 그러한 접근 자체를 차단한다면 문제가 되겠지만, 현재는 말이 제로페이지로 묶여있는 상태이지 교류는 제한을 두지 않는것으로 압니다. 예를들어, 나우누리라는 통신회사가 자료를 누구나 쓸 수 있게 공개를 하지 않았다 하여, 나우누리는 정보 공유의 진입 장벽이 될 뿐이다. 라고 비난할 수는 없는 노릇입니다.
다른 관점에서 살펴봅시다. 주변을 둘러보면 모임이 참 많습니다. 그러한 모임들은 왜 생겨난 것일까요. 전체가 하나라면 장벽도 없고 좋을텐데 말이지요. 하지만, 전체가 해결하지 못하기에 부분이 생겨난 것이고, 그러한 부분들이 묶여서 전체가 되는게 실제 입니다. 제로페이지가 생겨났던 이유도 비슷합니다. 중앙대학교 컴퓨터공학과에서 해결하지 못하는 부분이 생겨났고, 이를 위해 제로페이지가 만들어졌습니다. 대부분은 모임의 특성상 구성원이 필요하고, 이를 위해 지속적인 활동을 요구하게 됩니다. 한가지 중요한 점은 제로페이지가 외부와의 연결고리를 차단한 바는 없고, 자유롭게 교류할 수 있다는점이 현재 이야기한 ["열린제로페이지"] 역할 을 한다고 생각합니다. 물론, 그러한 참여방법을 보다 세련되고 원할하게 만들자는 이야기에 대해서는 찬성합니다.
제로페이지는 자선 단체가 아니라고 하신 말씀에 동의합니다. 그리고 전 제로페이지에서 자선을 베풀자는 얘기를 하지 않았습니다. 시나리오 1-2, 2-2 와같은 상황에서 제로페이지가 손해를 보면서 베푼것이 무엇인지요. 오히려 제로페이지의 학술 정보 교류가 양적, 질적으로 긍적적인 방향으로 이루어지지 않았는지요. 시나리오 1-1, 2-1 의 상황 같이 공부는 하고 싶은데 '' '누군가 뒷바라지를 안해줘서', '기대고 들어올 틈이 없어서' '' 와 같은 생각을 하는 사람에게 학회가 필요한것이 아닐까요. ["열린제로페이지"]를 주장하는것은 궁극적으로 제로페이지의 발전을 위해서 입니다.
또, 제로페이지의 진입 장벽에 대한 얘기를 하겠습니다. ''모임에 처음 나갔는데 아는 사람 끼리만 이야기 하고 너무 서먹하더라.'' 만으로도 어차피 진입 장벽이 생긴다고 말씀 하셨습니다. 옳은 말씀입니다. 하지만 제 주장은 진입장벽을 없애자는 것이 아니라 현재 제로페이지의 두터운 진입 장벽을 완화하자는 것입니다. 제로페이지 회원을 모집하는 때가 아니면 제로페이지 회원이 되기 위해 길게는 일년을 기다려야 합니다. 말씀드렸듯이 현 제로페이지는 폐쇄적인 조직이기에 거기에 섞이려면 남다른 각오도 있어야합니다. 지금 제로페이지는 언제든 자유롭게 활동할 수 있는 조직이 아닙니다. 저는 이런 회원 모집 방식이 불필요한 진입 장벽이라고 생각합니다.
''대부분은 모임의 특성상 구성원이 필요하고, 이를 위해 지속적인 활동을 요구하게 됩니다.'' 에 대해서 제로페이지의 활동은 지속적이어야 한다고 생각합니다만 그 구성원이 반드시 지속적이여야 한다고 생각하진 않습니다. '''현재 활동중'''인 회원이 ["열린제로페이지"]내에 항상 필요한 만큼(최소한 지금의 회원 수 만큼)은 남아있으리라 생각합니다.
예전에..아주 예전에..당나귀와 당근이론(-.-)을 설명하던 때에 잠시 언급했던 제 의견과 유사한 의미의 내용이었기에 도움이 될까해서 당시 있었던 이야기를 한번 적어 봅니다.(어쩌면 회의록에 있을까요?) 그 때, ZeroPage회원 관리를 인력 풀 형식으로 하자는 의견을 냈었습니다. 자신이 같이 공부할 혹은 같이 프로젝트를 진행할 사람이 필요하면 학회에 그런 선전을 하고 그렇게 마음이 맡는 사람들끼리 단위 작업을 수행하는 식으로 학회를 꾸렸으면 좋겠다고 했었습니다. 하지만, 그 때 제기된 문제점은 그러한 방식은 조직의 결속력을 화해시킬 우려가 있지 않을까 하는 점이였습니다. 자신이 필요할 때는 학회를 찾다가 학회에서 자신에게 이익이 되지 않는 일을 할때는, 가령 전시회 준비를 한다거나 , 나 몰라라는 식이 될 수도 있다는 점이 문제점이였던 것 같습니다. 이런 일이 반복되게 되면 회원들 간의 유대관계가 느슨해질거라는 우려를 해결한 방안이 없었기에 더 이상의 의견을 주장하지 못하였습니다.
적극성이면 무엇이든 된다는, 이런 경우도 있습니다. 저희 고등학교 졸업때, 폐쇄적인 천체 관측 동아리의 회장은, 2학년때(1학년이 아닌) 중간에 그냥 끼어서 회장이 된 케이스가 있었구요. 좀 특별한 케이스죠. 저도 1학년때 축구하고 싶어서 어느날 무작정, 일요일 아침에 축구하는 동호회에서 껴서 한적이 있었지만(지금이야 그만 뒀지만 --;).. 대체 zp가 어떻게 해야 할까요? [[BR]]
학교에 있을때, pc실에서 후배들과 이야기를 하는 도중에는 항상, "ZP는 언제나 열려있고, 관심있으면 아무때나 누구나 들어올수 있다." 라고 했지만, 그리 효용이 없었습니다. 이 이상 할수있는 노력이 무엇일까요?
1. 과내에서 '''공부''' 하면 '''ZeroPage'''라고 떠오르는 이미지를 만들어, 이제 주기적으로 정해진 정모 때, 문열고 들어오는 학우들이 있도록 하는것입니다. 하지만 문제는 어떻게 이런 이미지를 '''광고'''해 나갈것인가가 문제입니다. 이 광고의 방법이라면, 전시회, 세미나 정도인데, 전자를 올해 할수있을지 저는 확신없고, 후자는 할려는 사람이 얼마나 될지 모르겠습니다.
1. 좀 황당한건데, ZP전원이 과 석차에서 앞에 등수를 다 해먹으면, 관심을 끌수 있겠지요. 하지만 좀 신경만 쓰면, 불가능하다고 생각도 안합니다. 비슷하게, 올해 있을 30주년 학술제에 몽땅 작품 내는것이지요. 제작년 부터 건축 공학과에서 졸업생 작품 전시회가 있는것으로 기억하는데요, 올해를 기점으로 학술제가 그렇게 발전했으면 좋겠네요.
제가 보는 열린제로페이지 는 결국 더 많은 회원들의 모이기를 바라는 것입니다. 더 많은 회원이 모여도 운영의 최소화를 위해 정모때 언급처럼 회의의 최소화, 발표의 최대화가 이상이라고 생각합니다.
zp 가 학회이지만, 과 내의 모든 공부를 책임져야하는 것 같은 맨 위의 시나리오는 마음에 와닫지 않는다. 원한다면 얼마든지 스스로 길을 찾으라고 하고 싶다. 두리뭉실하게 zp 가 열려있다면 구성원들의 구속력이 불분명한 패닉에 빠질것이다. --박지환
'''과내의 모든 스터디 그룹, 프로젝트 팀은 제로페이지를 통해 공부해야만한다.''' 라고 주장한 사람은 없습니다. 스스로 길을 찾되, 찾은 길이 학과내 사람들과 학술적 정보를 공유하는 장으로서의 제로페이지라면 막지 말아야 한다는 주장입니다. 목적성이나 운영체계가 명확하지 않고 두리뭉실한 상태의 ["열린제로페이지"]라면 패닉상태에 빠질것이란 말에는 공감합니다. --이덕준
["열린제로페이지"] 론에 대해서는 회원모집 방식 외에 다른 점은 그다지 보이지 않네요. (Web 에 대해서는 우리가 Closed User Group 을 표방하는 것도 아닌이상) 그렇다면 회원 모집방식에 촛점을 맞춘다고 할때, 회원 모집방식을 수시모집방식으로 하던지. 정모가 이제는 한달 2번이니까, 그때 논하는 방식으로 바꿀 수 있겠죠. 하지만, 기존 데블스 통합때의 약속에 대해 생각해볼 필요가 있다고 보이네요.
- 정모/2011.4.11 . . . . 74 matches
* 어떤 것이 거짓말인지 알 것같으면 손을 들고 맞춘다.
* Spring Framework에 대해 공부하고 있다.
* [HolubOnPatterns]를 읽으면서 스터디하고 DB 프로젝트를 통해 실습한다.
* 텍스트로 된 던전 앤 드래곤(?)을 만들고있다.
* 동네 ZeroPage 게시판을 태그 게시판으로 만들고있다.
* 지난주엔 판타지 배경이 나오는 책을 읽고 이야기했다. 판타지 요소는 많아도 판타지 배경은 찾기가 힘들었다.
* 정모 퍼실리테이터는 아니지만 정모 중에 자기가 진행해보고 싶은 활동이 있다면 주저없이 제안해주세요. 이것 역시 자유게시판에 글을 남기거나 회장에게 연락 주시면 됩니다.
* 멘토와 함께 프로젝트도 진행하고, 금전적 지원도 받을 수 있습니다. 5월 13일까지 지원할 수 있으니 많이들 지원하세요!!
* 다음 OMS는 중간고사 끝나고 합니다.
* 각 팀은 1분 15초 안에 최대한 많은 답을 맞춰야하고, 최대 15문제를 풀 수 있다.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 항상 그렇듯 정모할때 궁금한건 Ice Breaking 시간이군요. 녹화 재방이라도 제발 보고싶은 마음입니다. 정모시간에 소개해주신 LETSudent는 참석해봐야겠습니다. 유익한 정보군요. 새로온 21기 학우들 반갑습니다. 얼굴 기억했어요. Zeropage의 생활을 맘껏 즐겨보아요. 새얼굴들이 보였는데 이제 새로 새내기들을 한번 정모에 참여할때가 되었다는 생각이 잠깐 들었던 시간입니다. 권순의 학우의 OMS는 배경이 아야나미 레이라서 기쁨반 안타까움 반으로 배경을 지켜보았고 안티짓도 좀 올렸었습니다만, 그거 알잖아요 안티도 팬입니다. OMS에서 소개된 노래들에 대해 다시한번 들어보고 생각해보게 되었던 시간은 기쁩니다. 창작자의 의미가 가득차있는 것을 알게해주었으니까요. 그사람들도 기쁠겁니다. 회장님이 만들으셨던 스피드 퀴즈는 정말 신선했어요. '우리도 올해는 이런 레크레이션을 다하는구나'는 뿌듯한 생각이 들었습니다. 전 이런거 좋아하니까요. 저도 어느정도 공통된 경험이 쌓인사람들과 만난다면 해보는게 좋을것 같습니다. 다음주 소풍은 정말 꽃이 만발했으면 좋겠단 생각이드네요 한번 이건 알아봐야겠습니다. 비는 안오겠죠. 시험기간 전이라 걱정이될 사람도있겠지만 경험상, 시험기간 전에는, 시험기간 중에는, 시험기간 후에는 노는겁니다. Enjoy EveryThing이죠. 항상 늦지만 이렇게라도 정모에 참석해서 후기를 남길수있는게 가장 즐겁습니다. 다음주에는 즐거운 소풍준비를 해가야겠군요 - [김준석]
* 앗 비… 비 생각은 못 했네요. 비오면 어쩌지ㅜㅜ 확인해볼게요……………… 확인 결과 안 온다고 합니다!! 야호!! - [김수경]
* Ice Breaking .. 재밌는데 너무 시간이 오래 걸리는거 같습니다. 이거 오래하니까 뒤에 준비된 순서를 시간에 쫓겨서 하네요. 진경이 맨날 기숙사 엘리베이터에서 어색하게 인사만 하고 지나갔는데.. 오늘 보니 반가웠습니다. OMS의 영화에 나온 음악 하니까 최근에 영화관에서 레드 라이딩 후드 보다가 MUSE의 노래가 나오길래 깜짝 놀란 기억이 납니다. 영화도 되게 재밌었어요. 그리고 네이트 주소를 적어두질 못했는데 다시 한번 올려주시면 저도 파일방 이용을 좀...ㅎ 다음주 소풍 정말 기대됩니다. 항상 정모 나올 때마다 느끼는거지만 뭔가 하고 간다 라는 느낌을 확실히 받는거 같네요. 정모 준비하느라 고생하시는 회장님 감사합니다~ - [정의정]
* ㅋㅋㅋㅋ사실 쫓기는 건 맨날 내가 할 걸 오버해서 들고오는 탓도 있음ㅜㅜ 안 그래도 그거땜에 시간 계산 잘 해야지 하고 다시 한번 생각했지 ㅋㅋㅋ - [김수경]
* 이번 정모에는 11학번 학우분들이 참여하여 반가웠습니다. Ice Breaking때는 화기애애한 분위기가 마음에 들었습니다. 다들 웃으면서 ㅎㅎ 재미있는 시간이었던 것 같습니다. 일일 퍼실리테이터... 어떤 느낌일지는 모르겠지만 한번 해 보는 것도 재밌지 않을까라는 생각도 했습니다. 이번 OMS를 진행하면서.. 음... 역시 배경이 문제였었던 같습니다 -ㅅ-;; 그리고 생각했던거 보다 머리속에 있는 말이 입 밖으로 잘 나오지를 않아가지고 제가 생각했던 것들을 모두 전달하지 못했던 것 같습니다. 사실 음악을 좋아하다 보니까 영화나 TV를 보다가 아는 음악이 나오면 혼자 반가워 하고 그랬는데,, 그 안에 있는 의미를 찾아보는 일은 많이 하지 않았었습니다. 다만, 이런걸 해 보겠다고 생각했던게 아이언맨 2 보다가 (보여드렸던 장면에서) 처음에는 Queen의 You're my Best Friend라는 노래로 생각하고 저 장면과 되게 모순이다라고 생각했었는데 그 노래가 아니라 다른 노래라 조금 당황했던 것도 있고, 노래 가사를 보면서 아 이런 의미가 있을 수도 있겠구나 라는 생각을 했습니다. 그래서 이것 저것 찾아보게 되었던 것이 계기가 되었던 것 같습니다. 그리고 이번 스피드 퀴즈는 그동한 제로페이지에서 했던 것들이 많았구나 라는 생각과 함께, 제가 설명하는데 윤종하 게임이 나올줄이야 이러면서 -ㅅ-;; ㅋㅋㅋ 마지막으로 다음주 소풍 기대되네요 ㅋ - [권순의]
1. Ice Breaking을 제가 많이 해 본 것은 아니라 원활한 진행이 잘 안 되네요. 당장은 할 일들이 쌓여있으니 바로 공부하겠다고 하면 거짓말이 될테고… 방학 중에 Ice Breaking에 대해 알아보고 2학기땐 더 즐거운 시간이 될 수 있도록 해야겠습니다.
1. 이번 OMS는 영화 속 음악에 대한 내용이었는데 매우 흥미로웠습니다. 소개하신 노래들 중 제가 좋아하는 노래가 있었던 것도 좋았구요!!! 미처 생각해보지 못한 영화 속 음악의 의미에 대한 설명을 들으니 뭔가 좀 더 교양있는 사람이 되는 것 같은 느낌이예요. 요금제때문에 한 달에 두 편씩은 꼭 영화를 보는데 앞으로 영화 볼 때 나오는 음악에 대해서도 더 관심을 가지고 들어봐야겠습니다.
1. 스피드 퀴즈는 이번에 처음 시도해봤는데 다들 어떠셨어요? 저는 역시 스피드라 그런지 정신이 없더라구요. 그 정신없는 점이 재밌기도 했지만요 ㅋㅋㅋㅋ 다음에는 스피드 퀴즈 말고 칠판을 이용한 캐치마인드를 한번 시도해볼까합니다. - [김수경]
* 처음 참여한 제페 정모! 재밌었습니다.ㅋㅋ 재밌는 아이스브레이킹. 처음이라 그런지 적정 수준의 문제를 내는게 꽤 난감했고... 제페에 현재 어떤 스터디가 진행중인지 알게 됐습니당, 그리고 ACM 스터디가 열리면 참가하게 될 것 같구요ㅋㅋ, 현재 웹 구축을 진행하고 있어서 자바스크립트도 관심이 있는데, 지금은 데이터베이스 때문에 자바스크립트는 커녕 코딩도 못하고 DB만 만들고 없애고 반복 중이라 ㅜㅜ엉엉.. 디비짜고 기본틀 갖춰지면 HTML, CSS, PHP 거치고 나서야 자바스크립트를 볼 수 있을 것 같아요.. 처음 본 OMS는 어째서인지 배경화면만 기억에 남아있네요...ㅋㅋㅋ 수업 듣고 과제하고 놀고만 반복하다가 오랜만에 신선한 자극을 받은거 같습니당. 다음주는 갈 수 있을지 모르겠어요, ㅜㅜ 선형대수학+동양철학의 압박;; 주자의 격물치지에 대해 아시는 분??! - [정진경]
- 새싹교실/2012/AClass . . . . 73 matches
* 코딩과제는 완전한 프로그램으로 써 주시고(에러나지 않도록), 서술하는 문제는 간단하게(1~3줄) 써 주세요.^^
* 코딩한 것은 그냥 파일에 복사붙여넣어도 되고, .c파일을 보내주셔도 됩니다.
1. 컴파일(Compile), 빌드(Build), 링크(Linking)에 대해 책에서 찾아보고 써 주세요.
1. 상수형, 변수형에 관해서 쓰고, 그 예를 2개만 들어주세요.
1. #include, 전처리과정이 무엇인지 쓰고, include의 예를 들어주세요.
1. #define이 무엇을 의미하는지 쓰고, 이것을 사용한 '간단한' 프로그램을 하나 작성해보세요.
1. 함수가 무엇인지 쓰고, 예제 프로그램을 하나 만들어 주세요.
1. 함수형이 무엇인지 쓰고, void타입은 왜 return하지 않는지 써주세요.
1. 배열이 무엇인지 쓰고, 왜 배열이란 개념이 나타났는지(왜 쓰는지) 써 주세요.
1. 배열에 숫자를 넣고, 그 배열에 특정 값이 있는지 찾는 프로그램(Search)을 작성해 주세요.
--> 프로그래밍 언어를 어셈블리어로 변환하고 그 어셈블리언어를 기계가 읽을 수 있는 언어로 변환 시켜주는 것
열심히 하겠습니다. ..ㅋㅋㅋ오늘 공백을 넣는 부분 여러번 설명해줘서 고마워요~
다음에는 반성문말고 씬나서 쓸게욤
앞으로 열심히 해서 이해도 잘하고 알아서 척척 할께요!
* 한자리 숫자이다가 2자리 숫자이면서 깨지는 것은 예외처리해주셔도 되고 하지 않으셔도 됩니다.
8.아래 프로그램을 참고하여 60점 이하는 F, 61~70점 D, 71~80 C, 81~90 B, 90~ A인 프로그램을 작성해주세요.
15.배열에 {7,4,2,9,3,1,2}가 들어있습니다. 이 배열에서 2가 있는지 없는지를 검사하고, 있다면 어디에 있는지 전부 출력해주는 프로그램을 작성해주세요.
16.배열에 {7,4,2,9,3,1,2}가 들어있습니다. 이 배열을 정렬(오름차순으로)하고, 출력하는 프로그램을 작성해주세요.
1. 2차원 배열이 무엇인지 쓰고, 어떻게 선언하는지도 작성한 뒤, 이를 이용한 간단한 프로그램을 작성해주세요.
1. srand()함수가 무엇인지 찾아쓰고, time()을 이용해 랜덤으로 숫자를 하나 출력하는 프로그램을 작성해주세요.
- 새싹교실/2012/startLine . . . . 73 matches
* 처음이라 간단하게 하려고 변수와 연산에 대해서만 말을 했는데, 간단하게 하려고 하니까 너무 내용이 간단해져서 뭔지 모르는 사이에 내용이 다 끝나버렸습니다. 그렇다고 잘 했느냐고 하면 그것도 딱히 아닌 느낌이네요. 앞으로는 실습 위주로 하면서 조금 더 자세하게 진행을 해야 하지 않을까 싶습니다. 경우에 따라서는 완전히 다른 방법을 써야 할지도 모르겠지만... 어쨌든 아는 것과 가르치는 것은 다르다는 것을 새삼 느낀 시간이었습니다. - [서민관]
* 서민관 - 간단하게 재현이가 C문법 알고있는 부분 알아보기, 함수 만들어보기, 전체적인 계획 설명, gcc 사용법. 일단 제어문과 간단한 함수 문법까지도 알고 있는 것 같다. 어제 일도 있어서 긴장을 많이 했는데 그래도 생각보다 어렵지는 않았다. 앞으로는 좀 더 예제등을 준비해야겠다.
* 최재현 - 아는 범위를 확인하고 앞으로의 방향에 대해 얘기 했습니다. 다음에는 모르는 것들에 대해 배우고 아는 것은 확실히 배워야겠습니다.
* 박환희 - 오늘은 제어문에 대한 내용을 배웠고 느낌은 마음이 편하였고 제어문에는 이러한 종류가 있다는것을 알았고 앞으로 문법을 좀더 익혀야겠다는것을 생각했습니다.
* 서민관 - 제어문의 사용에 대한 수업(if문법, switch.. for...) 몇몇 제어문에서 주의해야 할 점들(switch에서의 break, 반복문의 종료조건등..) 그리고 중간중간에 쉬면서 환희가 약간 관심을 보인 부분들에 대해서 설명(윈도우 프로그래밍, python, 다른 c함수들) 저번에 생각보다 진행이 매끄럽지 않아서 이번에도 진행에 대한 걱정을 했는데 1:1이라 그런지 비교적 진행이 편했다. 그리고 환희가 생각보다 다양한 부분에 관심을 가지고 질문을 하는 것 같아서 보기 좋았다. 새내기들이 C를 배우기가 꽤 힘들지 않을까 했는데 의외로 if문이나 for문에서 문법의 이해가 빠른 것 같아서 좀 놀랐다. printf, scanf나 기타 헷갈리기 쉬운 c의 기본문법을 잘 알고 있어서 간단한 실습을 하기에 편했다.
* 간단한 이전 시간(if문, 반복문)의 복습과 배열의 사용에 대해 알아보았다. 그리고 이번 시간에 주로 한 내용은 함수가 왜 필요한지와 함수를 만드는 법, 함수를 사용하는 법 등이었다. 개인적으로는 함수를 꽤 중요하게 생각하는 만큼 함수의 필요성을 잘 캐치해 줬으면 좋겠다. 그리고 새삼 드는 생각이지만 환희의 질문이 중요한 부분을 잘 찌른다는 생각이 든다. 별다른 언급도 없었는데 함수 내에서 변수의 scope나 함수 내부의 이름 겹침 등에 대한 질문이 있었다. 그리고 중간에 함수 사용의 예제로 printf문을 약간 이상하게 쓴 코드를 보여줬는데 의외로 감을 잘 잡은 것 같았다. 현재 진행상황으로는 다음에 포인터를 다뤄야 할텐데 함수를 쓰는 것을 조금 더 연습을 시킬지 바로 포인터를 나갈지 고민이다. 당장 포인터를 했다가 어려워하지 않을까 모르겠다. - [서민관]
* swap 함수를 만들어보고 문제점 확인.
* 처음에 간단하게 재현, 성훈이의 함수에 대한 지식을 확인했다. 그 후에 swap 함수를 만들어 보고 실행시의 문제점에 대해서 이야기를 했다. 함수가 실제로 인자를 그대로 전달하지 않고 값을 복사한다는 것을 이야기 한 후에 포인터에 대한 이야기로 들어갔다. 개인적으로 새싹을 시작하기 전에 가장 고민했던 부분이 포인터를 어떤 타이밍에 넣는가였는데, 아무래도 call-by-value의 문제점에 대해서 이야기를 하면서 포인터를 꺼내는 것이 가장 효과적이지 않을까 싶다. 그 후에는 주로 그림을 통해서 프로그램 실행시 메모리 구조가 어떻게 되는지에 대해서 설명을 하고 포인터 변수를 통해 주소값을 넘기는 방법(call-by-reference)을 이야기했다. 그리고 malloc을 이용해서 메모리를 할당하는 것과 배열과 포인터의 관계에 대해서도 다루었다. 개인적인 느낌으로는 재현이는 약간 표현이 소극적인 것 같아서 정확히 어느 정도 내용을 이해했는지 알기가 어려운 느낌이 있다. 최대한 메모리 구조를 그림으로 알기 쉽게 표현했다고 생각하는데, 그래도 정확한 이해도를 알기 위해서는 연습문제 등이 필요하지 않을까 싶다. 성훈이는 C언어 자체 외에도 이런저런 부분에서 질문이 많았는데 아무래도 C언어 아래 부분쪽에 흥미가 좀 있는 것 같다. 그리고 아무래도 예제를 좀 더 구해야 하지 않을까 하는 생각이 든다. - [서민관]
* 포인터의 기초와 포인터를 이용한 swap 함수 구현, 값 변환. 그리고 malloc의 형태 기초와 좀 더 쉽게 쓰는 법 익힘. 다음엔 malloc을 이용한 응용프로그램 구현을 해보고 싶다. - [최재현]
* 저번시간에 했던 swap 함수에 대해서 간단하게 복습을 하고 swap 함수의 문제점에 대해서 짚어보았다. 그리고 포인터의 개념과 함수에서 포인터를 사용하는 방법 순으로 진행을 해 나갔다. 새삼 느끼는 거지만 call-by-value의 문제점을 처리하기 위해서 포인터를 들고 나오는 것이 가장 직접적으로 포인터의 필요성을 느끼게 되는 것 같다. 그리고 개념의 설명을 하기에도 편한 것 같고. 그 후에는 포인터에 대한 부분이 일단락되고 성훈이나 재현이처럼 malloc이나 추가적인 부분을 진행할 예정이었는데 환희가 함수의 사용에 대해서 질문을 좀 해 오고 그 외에도 약간 다른 부분을 다루다 보니 진도가 약간 늦어졌다. 그래도 포인터에서는 이해가 가장 중요하다고 생각하는 만큼 조금 천천히 나가는 것도 괜찮다고 본다. 그리고 앞으로의 목표는 일단 처음에 잡아둔 목표까지 무사히 완주하는 것이다. 원래 첫 진도 예정에 다양한 것들이 담겨있는 만큼 목표만 이루어도 충분히 괜찮은 C 실력이 길러지지 않을까 싶다. - [서민관]
포인터변수가 가지는 값과 *, &연산자의 사용법을 잘(은 익혔는데 아직도 긴가민가하고..) 배웠구요..
그리고 밑의 과제... 이중 포인터라뉰ㅋㅋㅋㅋㅋㅋㅋㅋㅋ - [이성훈]
* 포인터 변수에 값을 주어 초기화 하려면 어떻게 해야 하는가(malloc 함수의 사용)와 메모리 해제(free 함수)에 대한 이야기를 했다. 그리고 배열과 포인터에 대한 이야기를 했는데, 배열도 결국 연속된 메모리를 잡는다는 점에서 포인터와 같고 값의 참조도 포인터 변수와 똑같이 할 수 있다는 것을 다뤘다. 그 후에는 포인터 변수(배열)를 인자로 받는 함수를 만드는 법을 배우고, 배열을 인자로 받을 때는 반드시 길이를 관리해줘야 한다는 이야기를 했다. - [서민관]
* 포인터 2회차. 포인터 변수에 대해서 잠깐 리뷰를 하고 그 후에 구조체와 typedef에 대해서 다루었다. 그리고 구조체를 인자로 받는 함수에 대해서도 다루었다. 그 후에 typedef int* SOMETHING이라는 표현을 써서 이중 포인터에 대해서 이야기를 해 봤는데, 이쪽은 역시 약간 난이도가 있는 것 같다. 특히 int **twoDim에서 twoDim[0]에 다시 malloc을 해 줘야 한다는 부분이 어려운 것 같다. 차근차근 해보자. 개인적으로 성훈이가 가르친 부분들을 잘 따라오려고 한다는 것을 (*s).age에서 느꼈다. ->연산자가 아니라 *연산자 후에 .연산자로 내용물을 참조한다는 것은 나름대로 메모리의 구조를 생각하려고 애를 썼다는 얘기다. 좀 고마웠다. - [서민관]
* 포인터 변수와 이중 포인터, 구조체에 대해 알게 되었고, 자신이 만든 헤더는 "#"로 전처리함을 알았다. 또한 typedef에 대해서도 익혔다.
* 오늘은 동적할당(malloc)과 구조체, 구조체 포인터, typedef에 대해 개념정리를 하고 그에 대한 간단한 예제와 메모리 그림을 통해서 쉽게 접근을 했다. 또, 구조체와 구조체 포인터의 접근 방법에 대해 숙지하고 함수에 대해 자세히 다뤄서 많은 이해를 했다. 다음엔 다차원 배열과 포인터를 해보고 그에 대한 이해를 해야 할 것 같다. - [최재현]
* 정모 전에 두 시간, 정모 끝나고 두 시간이 걸린 정말 긴 새싹이었습니다. ;;;; 처음 계획으로는 재현이나 성훈이랑 비슷하게 구조체 문법과 사용에 대해서 간단하게 다룰 생각이었는데 환희가 왜 구조체가 필요한지에 대한 이야기를 하면서 이야기가 많이 다른 방향으로 흘러갔네요. 일단 구조체가 필요한 이유를 추상화의 관점에서 추상화 한 타입(구조체)과 타입에 관한 연산(함수)을 제공하기 위해서라고 말을 했는데 그래도 직접 피부에 와 닿았을지 어떨지는 좀 걱정입니다. 역시 이런 부분은 직접적으로 경험을 해 보지 않으면 안 될 것 같네요. 한 시스템(도서관 관리 프로그램이나 은행 시스템 등)을 재현이, 성훈이랑 셋이서 쪼개서 만들어 보게 하거나 하는 게 좀 괜찮지 않을까 싶습니다. 나중에 시켜봐야지. - [서민관]
좋았던 점 : 시험 때문에 희...미...했던 기억이 되살아서 좋았고, 함수에 대한 이해도가 높아진 듯해서 좋았다. 오늘은 C스러움이 많이 느껴져서 흡족하다. 컴공다운 걸 해서 보람이 느껴진다. - [이성훈]
* 함수와 구조체 문법에 대한 복습과 '함수형 프로그래밍'에 대해서 다루었다. 복습은 시험이 끝나고 잊어버렸을 테니까 한 것이고 중요한 것은 뒤쪽에서 했던 함수형 프로그래밍 부분이다. 전체적인 내용은 프로그램을 의미단위(함수)로 쪼개는 의사코드를 적고 함수의 껍데기를 만든 후에 내용물을 채워 나가는 방식이었다. 개인적으로 내 새싹에서 꼭 다루고 싶었던 내용의 절반에 해당하는 부분이라 고민을 많이 했는데, 그래도 전하기는 잘 전한 것 같다. 다음으로는 가르쳐야 할 나머지 절반인 설계에 대한 실습을 좀 해 봐야 할 것 같다. - [서민관]
오늘 했던 내용을 생각하면서 함수를 만드는 도중에 자신이 필요하다고 생각하는 부분은
- 새싹교실/2012/세싹 . . . . 73 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 참고로 ZeroWiki는 MoniWiki Engine을 사용하며 Google Chrome이나 Mozila Firefox, Safari보다는 Internet Explorer에서 가장 잘 돌아가는 것 같습니다.
3) Virtualbox실행 -> 새로 만들기 -> 운영체제 : Linux 버전 : Ubuntu -> 메모리1024MB로 설정하고 나머지 디폴트 설치
1) 자기 페이지 만들기 - 로그인후 자신의 이름으로 검색하여 페이지를 작성하시면 됩니다. 기본적인 프로필과 하고싶은말을 적어주세요.
2) 후기 작성 - 아래 회고란에 편집을 눌러 후기를 남겨주시면됩니다. 위의 feedback 항목을 참고하세요.
1) virtual box로 linux 설치 후 hello world 작성하고 컴파일하여 스크린샷을 강사 메일로 보내주세요.
1) w3schools에서 html파트 읽고 실습해보기
* 새싹 첫시간을 가졌습니다. 다른 새싹반들과는 다른 커리큘럼으로 진행을 해야해서, 무엇을 수업해야할지 고민이 많습니다(멘붕 일보직전). 학교수업 듣는것처럼 하지말고 자유로운 분위기에서 진행되면 좋겠습니다. - [정의정]
* 새싹 첫시간을 가졌습니다. 이곳 Wiki가 매우 흥미로웠고, 캡스톤실에 대해서도 궁금점을 해소하여 좋았습니다. 이름만 들어보고 좀처럼 볼 일이 없던 것들을 보게되어 좋았습니다. 앞으로 잘 부탁드립니다. - [김희성]
* 숙제를 수행하기 위해 버추얼 박스를 설치하였습니다. 설치파일이 정상적으로 실행 않는 문제가 있었는데 인터넷으로 강제 압축해제하는 방법을 듣고 7z으로 압축을 해제하는 방법으로 해결하였습니다. 데몬이 없어 iso파일도 7z으로 풀었습니다. - [김희성]
* 그리고 실패하였습니다. 7z 젠장... 여러단계를 한번에 풀어주는거 같군요. 메뉴얼을 읽어보니 cmd로 풀라고 합니다. 시키는데로 하니 msi 파일이 나오는군요. -[김희성]-
* amd64버전을 쓰려고 했더니 cpu문제로 가상머신에서 설치되지 않는군요. i386버전으로 깔았습니다. -[김희성]
- link : 노드와 노드간에 데이터를 주고받는 역할을 합니다. 스위치, 브릿지등이 포함됩니다.
- 인터넷 소켓(Internet socket, socket' 혹은 network socket 라고 부르기도 한다)은 네트워크로 연결되어 있는 컴퓨터의 통신의 접점에 위치한 통신 객체다.
네트워크 통신을 위한 프로그램들은 소켓을 생성하고, 이 소켓을 통해서 서로 데이터를 교환한다. - wikipedia
- 는 훼이크고 :P 간단히 설명하면 서버와 클라이언트가 byte stream을 주고 받는 것을 마치 파일 입출력을 하듯 해주는 것입니다.
5) 자세한 사항은 http://forum.falinux.com/zbxe/?document_srl=441104 를 참고하세요.
1) 위 참조 페이지의 소스를 참고하여 서버와 클라이언트 코드를 직접 짜봅시다.
3) 난이도가 다소 높을 수 있으므로 완성을 요구하지 않습니다. 한번 해보고 금요일날 다시 이야기 나눠보겠습니다.
* 이 반의 수업내용을 보니 저도 참여하고 싶어지는군요 =_=ㅋ 재밌겠네요 ㅋㅋ - [김태진]
- SmallTalk/강좌FromHitel/강의4 . . . . 72 matches
있고, 나머지 하나는 "untitled - workspace"라는 제목이 붙여진 "일터"가
그것입니다. 물론 Smalltalk 환경에는 이 두 가지 창 말고도 다른 여러 가지
의 창이 있습니다. 각각은 저마다의 독특한 쓰임새를 가지고 있으며, 이들은
공부를 계속하시라고 권합니다. 세상은 멀티미디어화 되어가고 있지만 아직
문에, 그림을 곁들이고 싶은 필자의 간절한 마음이 반영되지 못하기 때문입
로써 바로 Smalltalk 환경이 시작되는 것이고, 이 창이 닫힘으로써
Smalltalk가 종료되는 것입니다. 즉 이 창은 Smalltalk 환경과 동고동락한다
고 해도 과언이 아닐 정도로, Smalltalk 환경이 실행되어 있다면 언제든지
도 하고 뛰기도 하면서 이 일터를 누빕니다. 머리를 쓰는 일이라면 이 일터
에서 글을 쓰기도 하고 지우기도 합니다. 여러분이 회사의 사장이라면 일터
에서 아랫사람들에게 여러 가지 지시를 내립니다. 그리고 지시를 받은 사람
쓸 수 있습니다. 이 글이 Smalltalk에게 내리는 명령이 될 수도 있고, 명령
일터에서 여러분은 Smalltalk에서 명령을 내리고 그 결과를 시험합니다. 그
리고 프로그램의 어떤 부분을 만들기 전에 여기서 기본적으로 여러 가지 명
그리고 각각의 일터에 기록된 글들을 따로따로 저장하거나 불러올 수 있습니
다고 했습니다. 그럼 다음과 같이 명령해 보십시오. 글쇠를 사용해
좀 번거롭더라도 지금 여러분이 읽고 있는 명령을 그대로 일터에 글쇠판으로
쳐 넣고 실행하여 결과를 관찰하는 것이 훨씬 좋습니다. 단순히 복사해서 붙
을 읽어서 머리에 기억되게 되고, 기억된 것을 글쇠판으로 치면서 일터에 나
타난 명령을 보게 되고, 명령을 실행하면서 세 번째로 명령을 보게 됩니다.
- 우리가나아갈방향 . . . . 69 matches
우이동으로 MT안가는 MT의 치밀한 계획이 우리가 나아갈 방향 쿨럭 이건 아니고.
Gof 꺼 올려놨으니 그거 먼저보라니까.. 충고 안듣으시더니. -_-; DPSC가 더 어려울텐데.. 흡. --석천
암튼. 누차 강조하지만. 공부하기위해 모이지 않기를. 공부한 내용을 가지고 모일 수 있기를.. 경쟁과 협동이 자신들 이익과의 같은 방향노선속에서 적절하게 싹틀수 있기를. 학술연구회라는 거창한 이름이 아니더라도, 하고자 하는 욕망이 있다면 그 길은 저절로 열리는 것임을. '빛이 있으라' 라는 한마디가 세상에 빛을 열어놓은 것처럼. 모임 자체가 억지로 만들어주는 것이 아닌, 자신들이 만들어가야 할 것임을.
ZP는 인력 Pool 이고, 모임의 장으로서의 역할만이라도 충실할 수 있다면. 학교가 그 역할을 제대로 못해주고 술자리로도 그 허전함을 채울 수 없을때 ZP가 그 역할을 제대로 해줄 수 있다면. 그것을 ZP의 정체성으로 정의해도 좋지 않을까. 홈 브루 컴퓨터 클럽을 꿈꿀 수 있을지도.--석천 [[BR]]
홈 브루 컴퓨터 클럽을 그 대상으로 한다면 참 좋은것 같다. 우리의 정모가 해당 모임이 될수 있을 것이고, 과거에도 그렇게 하려고 노력했것만, 호응도가 낮았다고 생각한다. 뭐 하지만 계속 바위에 계란을 던지다 보면 언젠가 이끼라도 끼지 않을까. 할수있는 최상은 제자리에서 열심히 --상민
''암튼. 누차 강조하지만. 공부하기위해 모이지 않기를. 공부한 내용을 가지고 모일 수 있기를.. --석천''
이 말의 의도는 충분히 이해를 하지만 오해의 소지가 있을 것 같아 사족을 답니다. 모여서 할 수 있는 공부가 분명히 있습니다. 이것은 혼자서만 할 수 있는 공부와는 다릅니다. 모여서 하면 아주 좋은 성과를 볼 수 있는, 그러나 혼자서는 하기 힘든 그런 공부가 분명히 있습니다. 수프를 먹으면서 포크의 "비어있음"을 탓하고 스푼의 "차있음"을 찬양하지만, 과일을 먹으면서는 포크의 "비어있음"을 고마워하고 스푼의 "차있음"을 비난하는 법입니다. 사건(event)과 물건(thing), 즉 사물에는 "나"와의 관계 속에서 그것의 "도"를 밝혀주는 길과 쓰임이 생깁니다. 그 길로 다니면 편하고 자연스럽고 쓸모를 얻지만, 자신이 길을 억지로 내려고 하면 불편하고 거북하며 쓸모를 얻지 못합니다. --김창준
''DeleteMe) 오해의 소지가 있게 쓰긴 했네요. 본래의 의도는 (01들은 내가 한 이야기를 들어서 알겠지만) 스터디를 할때, 책을 미리 읽고 난 뒤의 생각이나 프로그래밍을 했을때의 경험들을 들고 올 생각을 하지 않고, 모이고 난 뒤에 그제서야 책을 읽을 생각을 한다는 점을 지적하고 싶었습니다. 모임자체를 하나의 시스템으로 보고 공부하지 않은 자신을 시스템으로 억지로 묶어보려고 하는 모습같아서.. 그 점을 지적하고 싶었습니다. 같이 공부했을때의 효율이 혼자서 할때보다 높기 위해서는 (장점을 가질 수 있으려면) 사전에 공부하려는 해당 부분에 대한 의미를 조금이라도 파악해두어야 한다고 생각합니다. --석천''
따스한 5월의 봄날에 맞이한 제로페이지의 10주년을 진심으로 축하합니다. 10년이라는 적지 않은 시간동안 우리 학회가 만들어온 크고 작은 모습 하나하나는 선배님들과 여러 동기 여러분 그리고 후배님들의 학문에 대한 열정과 서로에 대한 이해와 배려가 일구어낸 아름다운 자화상이라고 생각해봅니다. 우리 제로페이지는 중앙대학교 컴퓨터공학과의 최대 학회이며 여러 학생들의 학술적 비젼을 제시해 주고 있는 중요한 학회입니다. 이런 제로페이지가 좀 더 발전적이고 원숙한 모습을 갖추기 위해서 당부하고 싶은 것들을 몇가지 말씀 드리고자 합니다.
시대의 흐름을 바로 읽어 우리가 해야 할 것들에 대한 명확한 목표를 제시하고 서로 도와가며 공부할 수 있는 분위기를 조성하는데 주도적인 역할을 하길 바랍니다. 낯선 학문에 대한 설레임과 막연한 두려움 때문에 어느 곳부터 손을 대야 할 지 몰라 고민하는 신입생들이 많이 있습니다. 또 프로그래밍 언어 1~2가지를 익혔으나 그 다음에는 무엇을 해야하는지 내가 이 도구를 공부해서 무엇에 써야하는지 몰라 일관성 없는 학습만을 반복하여 제자리를 맴돌고 있는 친구들도 많이 있습니다. 우리 학회에는 훌륭한 선배님도 많이 계시고 능력있는 회원님들도 많이 있다고 자부하고 있습니다. 이런 분들이 배우고자 하는 회원들에게 방향을 제시하고 또 배우는 사람들은 자발적으로 학습하며 자신의 능력을 개발해 나가는 것이 중요합니다.
그리고 타성에 빠지지 않으려는 노력이 중요합니다. 늘상하는 같은 종류의 세미나가 학회 활동의 대부분을 차지하는 일이 매년 반복되어서는 안됩니다. 1,2학년때는 열심히 참여하다가 3,4학년때는 별로 배울것이 없다하여 많은 수의 회원들이 활동을 하지않는 모습에대해 비판만 할것이 아니라 반성해보는 자세를 가져야합니다. 최신기술에 대한 순회 세미나와 조직화된 프로젝트팀을 활성화시켜서 회원들의 동기유발을 유도해야합니다. 컴퓨터의 시작은 하나의 뿌리였지만 지금은 수만갈래로 나뉘어져 혼자서는 각각에 대한 기본적인 지식조차 얻기가 어렵습니다. 항상 새로운 주제로 많은 회원이 온/오프라인상에서 꾸준히 공부하고 그것을 나누는 분위기를 조성할 것을 제안합니다.
돌이켜보면 제가 말한 두가지는 이미 여러차례 논의되어 왔던 것이지만, 실제로 옮겨지기까지는 많은 회원들의 노력이 필요한 부분입니다. 10년이면 강산도 변한다는 말이 있듯이 이제 제로페이지는 예전의 그늘에서 벗어나 우리만의 새로운 모습으로 바꿔가는 의지가 절실해지는 때입니다. 이 행사를 준비하기 위해 밤낮으로 고생한 후배님들깨 감사를 전하며 제로페이지가 항상 신선한 모습으로 우리 곁에 남아있기를 진심으로 바랍니다.
CauGlobal을 다녀오고 느낀점이 많았습니다. 그 가운데 여태까지 제가 제로페이지 활동을 하면서 아쉬웠던 점이 많이 떠올랐고, 제로페이지가 나아갈 방향에 대해 느낀점도 있었습니다. 이를 여기에 적어봅니다.
이번 방학에도 어김없이 프로젝트나 스터디가 열리고 있습니다. 프로그래밍 언어를 좀더 잘 다루려고, 공부나 프로젝트를 같이 해보는 경험을 쌓으려고, 자신이 공부해서 알고 있는 내용을 다른 사람에게 설명해주려고, 아니면 그냥 재미로 참여하는 분들이 많으리라 생각합니다. 그러는 가운데서 지식과 경험을 쌓을 수 있기에 제로페이지 활동은 현재로도 분명 값어치가 있습니다.
하지만 개인 경쟁력 강화와 경력 관리라는 측면까지 고려해서 제로페이지 활동을 한다면, 지금보다 더 많은 가치를 얻을 수 있을 것 같습니다. 특히 게임이나 유틸리티 같이 쓸 목적으로 프로그램을 만드는 프로젝트를 한다면, 프로젝트 하나하나가 자신의 경력을 쌓을 수 있는 기회라는 생각도 해보면 좋겠습니다.
우리나라의 기업은 인턴쉽 제도가 발달되어 있지 않기 때문에, 대학생들이 방학이 되어도 자신의 전공과 관련된 경험을 쌓은 기회를 잡기가 쉽지 않아 보입니다. 그나마 아르바이트를 구하는 경우에는 프로그래밍 언어를 다루는 능력이 뛰어나고 경력이 있는 사람을 선호합니다. 그렇기 때문에 경력도 없고 프로그래밍 실력이 뛰어나지도 않은 대다수의 학부생이 방학 때 경력을 쌓기란 어렵습니다.
이러한 상황에서 학부생이 경력 관리를 하는 한 가지 방법으로 제로페이지 활동을 할 수 있을 것입니다. 실제로 기업에서 일하는 수준엔 못 미치더라도, 자신의 실력을 보여줄 수 있는 포트폴리오를 만드는 것이지요. 자기가 혼자 만들고 즐기는 것이 아니라 남에게 보여줄 것이기에 어느정도 완성도를 지녀야 할 것입니다. 이게 별 것 아닌 것 같지만, SourceForge같은 공동체도 대다수가 경력 관리를 위해 오픈 소스 프로젝트에 참여하고 있다고 합니다.
다른 한 가지 나아갈 방향으로 인맥을 만들고 정보를 공유하는 제로페이지가 되었으면 합니다. 현재 재학중이고 자주 만나는 제로페이지 회원들끼리는 서로 알고 있습니다. 하지만 그 외 회원들, 선배님과는 연락망이 거의 없다시피 합니다. 졸업하신 선배님을 통해서 정말 많은 정보를 얻을 수 있는데도 제로페이지 전체 회원 연락망이 없다는 사실은 참으로 안타깝습니다.
학교를 따라 인맥이 형성되는 현상은 그다지 바람직하지는 않아 보이나, 없는 것보다는 낫다고 생각합니다. 인맥이 문제가 되는 것이 아니라, 아는 사람이라고 무조건 우대하는 눈먼 인맥이 문제이니까요. 인맥을 통하면 자신이 모르는 정보를 얻을 수도 있고, 자신이 하고자 하는 일에 도움을 받을 수도 있습니다. 아르바이트도 아는 사람을 통해서 구하는 경우가 태반입니다.
연락망을 만드려면 연락처를 구하는 일이 가장 먼저 이루어져야 한다고 생각합니다. 현재 제로페이지 회원 연락망이 회장단에게 물려져 내려오고 있지만 연락처가 부정확한 경우가 상당수 있습니다. 연락이 가능한 회부터 시작하여 꼬리에 꼬리를 물고 연락처를 구해나갈 수 있을 것입니다. 그 다음으로 현재 활동하지 않는 회원들에게도 가치를 돌려줄 수 있는 정보 공유의 장이 마련되어야 하리라 봅니다. 무조건 도움을 받기만을 바라고 이러한 인맥을 만든다면 그다지 많은 호응을 얻어낼 수도 없을 것이기 때문입니다.
- 제12회 한국자바개발자 컨퍼런스 후기/유상민의후기 . . . . 67 matches
* 원문 내용중에는 내용 중 메모, 지적질(?), 아이디어들이 뒤섞여 있어서 내용은 제거. JCO 의 pdf 찾아보면 됨. 없다고 판단되는 내용만 남김 --NeoCoin
다만, '기술 변화의 중심에 서라 (한국오라클 최윤석 전무)'건은 내용은 의미 없었는데, 발표자 '최윤석'씨의 부지런함에 놀랐다. 왜 한국 오라클에서 일하는 사람이 저렇게 해야하는지 이해가 안갔다. 추측할수 있는건 두가지, 오라클 전무 그만두고 사업 준비 하던가, 오라클 전무 자리가 정말 할일이 없어서 자신이 좋아하는 취미생활 하기.
* 아쉬운점 ~ 요소중 두가지 대해서 핵심에 동의 안한다. 중요한 부분을 잘못 이해하고 말하는것 같다. 혹은 내가 잘못 이해하고 있는거 같다.
듣다 보면 피곤하다. 1시간 제약인데 말이 느리고 동일 리듬으로 반복된다.
내용을 들으면서 '이거 너무 워터폴인데?' 라고 생각했는데, 문서에 써 놓은거에 양에 비해서 비해서 잡아놓은 워크샵 일정이 매우 짧다. 앞뒤가 안맞는거 같다.
* 메뉴얼 주었을때 따라하는 사람은 없을 것 같다. 그래서 보조자가 중요하다고 했는데, 위의 내용은 회의의 주최나 진행자만 자세히 알고 있으면 될것 같다. 이걸 가지고 질문하는 분들이 안쓰럽게 느껴졌다.
* 자신의 이론을 세웠다면, 이를 패턴화 하고 용어를 만들고, 사례를 만들고, 통계를 뽑고, 결과를 반영해야 이정도 발표를 해야하지 않을까. 싶다.
* 많은 방법론과 경험을 통해 정립했다고는 하지만.. 글쎄.. 10년전에 소프트웨어 공학 책 그대로 읽는것과 별 차이를 못느끼겠다. 액션에 대한 부분의 용어 설명이 필요한 부분이 너무 많은 것 같다. 절차가 너무 많다. 이걸로 중소기업이나 소기업을 실행하게 만드는건 무리가 있다고 느낀다.
* 나는 듣는 내내 발표자 본인이 확신을 가지지 못한다고도 느낀다. 짧은 시간에 너무 많은 내용을 읽어줘버려서 발생하는 문제로 생각한다. 그래도 이렇게 많은 정보를 이야기 하려면, 눈을 반짝이면서 신나게 해야 동조 할까말까 한데.. 너무 방어적으로 남 이야기 하는거 같았다.
* 지금 발표하신걸 '이건 뭐뭐 이다.'라고 부를만한 명확한 용어가 있나?
* 중간에 말씀하신 것 중에 많은 자료를 참고해서 개념 정립을 했다고 말씀하셨다. 그렇다면 이 요구사항 문석 역시 아이디어의 근원이 될수 있는 방법론 중 참조한걸 알수 있을까?
* 이전 타임(손영수)와 출발 가정이 너무 다르다. 이건 마치 모두가 상황을 잘 알고 있을때 이야기 같다. 그렇지 않은가?
보조자라는 표현은 잘못이라고 생각한다. 이 사람이 주제하는 사람에게 회의가 어느 단계로 가고 있는지 알려주고 회의 내역을 기록한다고 하였다. 이건 진행자 롤인데? 왜 보조자가하지? 보조자는 '기록자'에 가까운건데? 상상에 아마 컨설팅했던 본인의 롤이 보조자가 아니었나 싶다. 워크샵 주체인 팀장 옆에서 진행 가이드하고 내용을 본인이 기록한건 아닌가 싶다. 이러면 당연히 '보조자'라는 모호한 용어의 롤이 제일 중요하지.
하지만, 과거 교수가 가르쳤을때 소프트웨어의 규모가 '매우 컸을때'라는 전가의 보도로 이렇게 많은 액션들이 필요하다고 이야기 할수 있을것 같은데, 저렇게 자세하고 많은 절차를 제시하고 놓고 워크샵 참여 인원과 숫자는 몇명 수준이고, 이 많은 절차를 2일간에 하라는건 좀 이상하다.
소프트웨어 진흥원에서 이런식으로 가이드를 한다는 부분이 충격이었다. 컨설팅 후 참여 인원이 지속하기 너무 어렵지 않을까 싶다. 본인이 정립했으므로, 시중에 참고할 만한 관련 서적은 당연히 없고 용어 정의 부터 모호하다. 인상 깊은건 중간에 발표자와 프로그래머의 '행복'에 대한 언급을 많이 하는데.. 난 이거 듣고 많이 우울해 졌다.
* 지금 귀찮아서 memcached 제거 안하고 기본 세팅 쓰고 있는데, 듣고나니 큐로쓰고 있는 redis를 캐시로도 쓰고 싶어진다.
* memcached 와 mysql 벤치 마크중에서 mysql query hit을 99% 수준으로 놓고 테스트 해봤냐?
큰 의미 없는 내용들 나열시작, 피쳐폰과 WAP 이야기에 10분을 쓰고 있는 중이다. 발표자가 시간 배분 못한다는 느낌을 시작하고 5분만에 받을 수 있었다. 아마 후반에는 Android, iOS, Widow Mobile, Tizen 이 있다로 끝날 것 같다.
시작할때 발표를 위해 열심히 오랜 시간 준비했다고 하였는데, 마치 대학생들에게 리포트 시켰을때 책만들어서 온 느낌이다. 예전에 심리학과 생명공학 발표때 그런 사람들 있었는데, 아마 그런 노력의 긍정 피드백(괜찮은 학점)이 누적되어서 이런 발표까지 이어진건 아닐까 상상의 나래를 펼쳐본다.
중간에 자신에 경험을 섞어서 이야기할 가능성이 있지만 그냥 포기하고 이동. 사람이 많아 움직이기 부담스러워서 이 홀에 있으려고 했는데 내용이 나를 내 쫓는다.
- ProjectVirush/Idea . . . . 66 matches
첫째 '실시간'이다. 실시간으로 돌아가는 프로그램은 커다란 제약을 가지게 된다. 무엇보다 '슈퍼 울트라 복잡한 연산을 해서는 안된다.'는 것이다. 맵이 너무나도 큰 나머지, 또는 맵을 검색하는 알고리즘이 너무 자세한 나머지 "왼쪽 끝에서 오른쪽 끝까지 이동하도록 명령하니 1분동안 길을 찾느라 멈추었어요." 라는 소리를 들어서는 안된다. 물런 이런 과장된 일은 없겠지만, 실시간으로 진행되는 만큼 끊김없이 느껴질 수 있는 부드러운 연산이 가능해야 한다는 것이다. 더욱이 멀티플레이인 만큼 이 문제는 더욱더 중요해 진다. 플레이어 1이 복잡한 연산을 수행시켜버렸다고 해서 플레이어2까지도 버벅되서는 조금 곤란해 진다. 이러한 문제를 감안해서 어떻게든 연산을 빠르게 만들어야 한다.
또한 실시간이라는 점은 사용자가 접속하지 않아도 돌아가는 것을 의미한다. 사용자가 하루, 이틀 쉬었다가 접속하였을때 플레이어의 바이러스들이 전부 죽어있는 광경을 연출해서는 안된다. 그렇기 때문에 바이러스들은 플레이어가 없어도 꿋꿋하게 살아나갈 수 있는 인공지능을 가지고 있어야 한다.
이 문제는 위의 '실시간'이라는 점과도 연계가 된다. 다른 플레이어들이 잠자러 간사이... 올빼미족의 한 플레이어가 나타나서 전 플레이어의 바이러스를 사살해 버리고 도망가 버린다거나, 타 플레이어의 바이러스를 포위해 버려서 더이상 증식이 불가능하게 만드는 난처한 상황이 발생해서도 안된다. 물런 '상대방의 바이러스를 사살할 수 있다.' 와 같은 규칙은 정해진 바 없지만, 다른 플레이어가 자리를 비웠을때 한 플레이어가 다른플레이어의 캐릭터에게 영향을 미칠 수 있다는 점도 고려를 해야한다.
셋째 '게임' 이다. 게임은 무엇보다도 재미가 있어야 한다. 이것이 어떻게 보면 가장 큰 난제라고도 할 수 있다. 이게 쉽다면 그 많은 게임들이 도데체 왜 사장되었겠는가... 우리
의 게임도 이런 길을 걷지 않도록 노력은 해보아야 할것이다. 실시간이라고 해서 강한 인공지능을 부여했더니 몇년동안 자리를 비워도 꿋꿋하게 성장해서도 안된다. 또 규칙이 단순해서 오늘은 '성장' 내일은 '정지' 이런식으로 반복하면 수학적으로 최적화된 성장 알고리즘이 나온다. 와 같이 되면 재미가 없어질 것이다.
A. 빠르고 단순한 연산이어야 한다. 그러면서도
B. 높은 AI를 가지고 있어야 한다. 또
D. 난이도가 쉬워서도 안된다. 그렇다고
그렇지만 몇가지 아이디어는 내어 볼 수 있다.^^ 그래서 요 며칠간 짬짬이 생각한 아이디어를 서술해 보겠다. 많이 부실해도 예쁘게 봐주고 보충해 주면 좋겠다.^^
J. 생물학적인 사람들이 플레이를 즐겨 해야하며, 그렇다고 너무 심오해서
K. 일반인이 플레이를 못할 정도가 아니어야 한다는 점을 대강 고려해서 만든 규칙은..
1. 자신의 모든 바이러스는 AI를 가지고 있다. (B)
2. 이 바이러스들은 자신의 염기서열(이하 DNA)을 바탕으로 AI를 구성하여 움직이고, 분열하고, 다른 세포에 침투한다. (J)
4. 백혈구는 각 인간의 고유한 DNA의 일부를 통해서 적, 아 를 구분한다. (J)
5. 백혈구의 일부는 유전자 알고리즘을 통해 바이러스를 잘 잡도록 진화한다. (D)
(이는 플레이에 잘 대응하기 위해서이기도 하지만, 이렇게 진화 한다면 오래 플레이해서 세력이 큰 플레이어는 고생하고, 막 시작한 플레이어는 비교적 덜 고생할 것이다.)
7. 백혈구는 더듬이 알고리즘과 유사한 간단한 알고리즘을 통해 길을 찾고 바이러스를 찾는다. (A)
8. 백혈구는 플로킹과 같은 간단한 알고리즘(A)을 통해 뭔가 있어 보이게끔 움직여야 한다. (F)
16. 만일 바이러스가 DNA에 의해 분열할 때가 되었음에도 불구하고, 해당 세포의 영양소가 부족하다면 바이러스는 부족한 DNA만을 가지고 분열한다. (D)
18. 각각의 세포는 종류 및 만들어진 시간, 공급받은 영양분에 따라 서로 다른 영양소를 가지고 있다. (D)
- 새싹교실/2011/무전취식/레벨8 . . . . 66 matches
김준석 : 이번주금요일에 IFA 에 참여를 합니다. Ice breaking같은 커뮤니케이션 기술, 회의 진행. 지난주에 체육대회 개최한걸 다사다난하게 끝냈습니다. 스티브 잡스에 관한 발표도 잘했어. 강원석 : 저도 스티브잡스 책봐요 ICon:스티브잡스! 사람들이 평가를 했는데 '교수님보다 잘갈킴' 기분이 좋았음. 어제 ZP 스승의 날 행사를 해줌. 춤은 여전히 잘배우고 있습니다.
이소라 : 저번주 목요일날 모여서.별로 한게 없음. 어제한거 말씀드림. 어제 집에가서요. 친구 대타로 알바하게되었음. 걔가 축제를 하는데 공연을 해야한다고 알바를 대신해야한다고 그랬음. 축제가 수목금이라 월화는 안가도 될줄 알았는데 교육을 받으래서 2시간 일찍가서 교육받고 알바함. 8~12시까지 할것도 없음. PC방이었음. 그래서 일을 더했는데 사람이 2~3시되면 사람도 없는데 40대 아저씨가 이상한 창을 띄우고 보는걸 카운터에서 봄. 그리고 빨리 닫음. 문화충격. 어제 잠을 못자서 스트레스를 받아서 라면, 햄버거 먹고 먹고 먹고 먹고 잘수 있었는데 친구랑 나가서 놀음.
강원석 : 지지난주 엄마가 동생이랑 일주일간 해외여행가서 아빠랑 둘이서 쓸쓸히 밥먹고, 거의 일주일간 폐인생활했는데 엄마가 오니까 좋아요. 4월말에 헬스 등록해서 헬스 하는데 트레이너랑 일주일에 3번씩 합니다. 근데 트레이너가 식단까지 관리해서 맘대로 먹지도 못함. 그리고 운동하고 집에오면 탈진하기 직전이라 아침에 코피남. 3주동안 5kg빠짐. 2달남았는데 10kg더 빼겠습니다. 선대 점수 나옴. 앞에서 20등 내외. 완전 잘찍음.
그리고 주말에 고등학교 동아리 선생님보고 애들이랑 같이 밥먹고 놀았더니 주말이 지났다. 집에 새벽 3시에 들어옴. 느낀게 정말 심야택시에 시외넘어가면 비싸다.
이진영 : 일요일에 야구장에 갓음. 잠실. 'ㅅ' 두산 vs SK=> 0:5 이겨서 신남. 그리고 어제 남자친구가 학교를 옴. 문예사를 같이 들음. 필기를 대신해줌 ㅋㅋㅋㅋ 소라 : 그래서 내가 옆에 못앉음 ㅠㅠ 남자친구앉고 내가 앉고 이종성이 앉음. 그래서 남자애들이 주목해서 욕함 ㅋㅋㅋ 학교가 좋아 보인다능. 대학교처럼 보인다고함. 그리고 월미도에 감. 바이킹을 탓는데 90도 넘어서 무서웠음 ㅠㅠ 그리고 하나 타고 밥먹으로 나감. 그리고 카페갓다 집에갔는데 아빠 생신이었음. 근데 엄마 아빠가 없어서 둘이 데이트하러나가셨나 보다해서 봤더니 아빠가 제가 안와서 속상해서 술마시러 가심 ㅠㅠ 아빠가 술먹고 제방에서 주무심. 죄송합니다 아빠. ㅠㅠㅠㅠㅠㅠ
서원태 : 토요일에 고3애들 만나자고 해서 부평 호프집에 감. 그리고 술마시는거 애들이 신기하다고함 죽일려고 계속 맥주잔에 소맥해서 2~3잔 먹임 거의 죽을려고 하는데 애들이 클럽에 간다고함 저는 안감. 잠깐 졸았는데 깨어나니까 맥도날드임. 그리고 친구들이 햄버거 먹고있고 그리고 집에가면 혼날까봐 당구장가서 술좀 깨고 집에 무사히 들어감. 그리고 오늘 영어 중간고사 결과가 나왔는데 교수님이 제 점수 주면서 뭐라 말함. 그래서 잘나와서 봤나 했는데 점수는 생각보다 잘받았는데 늦게봤다고 -5 되서 최하점. 그래서 종이 버림.
* Struct(구조체) : 간단하게 사용자 정의 배열이라고했습니다.
강원석 : 파일입출력을 포인터로 배웠는데 포인터를 처음부터 배워야할것 같아요. 포인터랑 Array도 그렇고 할것이 많네요
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* Ice Breaking이 날이갈수록 흥미진진한 얘기가 나옵니다. 재밌네. 오늘은 복습을 좀 많이 했죠. 기초가 중요한겁니다 기초가. pointer도 쓰는법은 생각보다 간단하지. 간단한 파일입출력도 해봤고. 정말 정말 잘하고있어. 수업태도도 나아지고있고. 이제 앞으로 나머진 들러리지만 알아두면 좋을 팁이라고 생각합니다. 하지만, 앞에서 배운 많은 개념을 잊어먹은것 보니까 이건 사태의 심각성이 있네 역시 복습하길 잘했어. 그리고 winapi사이트좀 자주가. 거긴 볼것이 많아. 그리고 후기좀 자세히봐=ㅂ= 후기쓸때도 그날 배운것 배껴서라도 올려내고!! - [김준석]
* 훗 1등. 지난주에 못와서 복습을 했어도 좀 아리까리 하네요. array쪽부터 차근차근 다시 복습을 해봐야 할것 같습니다. 오늘 파일 입출력을 배웟는데 신기했어요. 저런걸 pointer로 하는지는 몰랐는데.... 그리고 구조체에 대해서 간단하게 배웠어요. 앞으로 계속해서 저랑 마주하게 될 아이들이니깐 열심히 공부해야 할것 같아요. - [강원석]
* 오.. 1등 ㅊㅋㅊㅋ. 기특하군 새벽에 메신저에 있는거보니 뭐하는진 모르겠지만. 재밌길. 파일pointer가 좀 신기하긴 하지 사실 난 저걸 배울때 그냥 문법으로 알았는데 생각해보면 pointer라는것을 깨달은게 정말 오래걸렸달까? 구조체는... 나중에 진화한단다 그걸 위해서 고생좀 해봐야지. 그래 우리가 앞으로 더욱 레벨업된 몬스터를 상대하게 될꺼야. - [김준석]
* 파일 입출력을 처음 보게되었는데 어려워도 해보면 정말 재미있을것 같아요. 여태 많이 봐왔던 파일들의 위치를 나태내어주던(주소창에 막 써졌던 것들)것에 대해 오늘 배운 파일 입출력에서 실체를 알게되었습니다ㅋ 포인터는 정말 중요한것 같아요. 반드시 여러번 이용해보면서 포인터에대해 익숙해 져야겠습니다. 그리고 저도 C관련 책을 하나 구해서 따로 자습을 해야 할것 같아요. - [서원태]
* 음.. 포인터 없는 C란 존재할수 없지. 다음번에는 어떤 예제를 해볼까 두근두근 하구나. 원태 열심히는 하지만 이부분 외에도 다른부분에 신경써보면 좋겠어. 이시간에 집중하고 다른시간에 딴것을 해보렴. 다른것도 받쳐줘야 프로그래밍도 잘한단다. - [김준석]
* 파일 입출력 처음 배웠습니다! 완전히 처음봤어요. 근데 html인가? 하여튼 웹프밍배울때 배웠던 파일입출력이랑 조금 비슷한 것 같아요. fgets는 이해 안가요 ㅠㅠ 왜 저렇게되는지 모르겠어요 흑흑. 수업은 파일입출력까지 안나가겠지만 그래도 확실히 알아두고싶습니다+_+ 오빠 월요일에 안가서 죄송해요..헤헷.. @>----- 꽃...하핳... 그래도 오빠한테 항상 감사하고있어용♥ 앞으로도 잘부탁드려용 -[이소라]
* 아이고 그래도 소라가 이쁜짓 하는구나 꽃 잘받음. html일때 파일입출력 해봤다니. 그말은 안했잖아!! 뭐 여튼.. 이번 기회에 4년동안 확실히 프밍할 기반을 잡았으면 좋겠다. 더욱 열심히 노력할께. - [김준석]
* 파일 입출력...을 배웠지요 저 나름 열심히 쳐다봤는뎅 잘 모르겟네욧.. 구조체란 것도..너무 생소 해요!! fgets도 ㅠㅠ 으아아악 모르는거 투성이가 나와버렸어요@.@ 제눈은 빙글 빙글..ㅋㅋ 음 저도 왠지 고등학교 때 html 잠깐 아주 조금 배웠었는데 이런것 한 것 같기두 해용..히히 저도 죄송하여요 선생님♥..오빠가 없었다면 전 C 찌질찌질 왕찌질이 였을꼽니당...ㅎㅎ 근데 지금 포인터때매 너무 혼란하네용 더 알려주세요>.< 복..습도 할꼽니당!! -[이진영]
* 우왕=ㅂ= 귀엽게 써주었네~! 진영이 너무 귀엽다 ㅠㅠ 파일 입출력은 다음시간에 복습할겁니다. 이렇게 한번씩 생각해본다니 신난다!! 뭘해볼까!? 빠지지 말고 와야되요!!! 그리고 포인터에 대한 질문 고마워요. 뒤에 또 다시 복습 하겠습니다. 포인터는 중요하고 중요하고 중요한것이니까요. 아싸 신난다~! - [김준석]
- 요정 . . . . 66 matches
아주 오랜 옛날 인간은 이 세계에 있던 모든 것 (자연현상까지도) 을 의인화했다. 이것이 요정이란 상상의 존재를 만들어 낸 것일수도 있다. 그러나 목격했다는 말을 믿는다면 다음의 이야기도 수긍이 갈 것이다. 요컨대 원래부터 그 터에 살고 있던 주민이라는 것이다. 그 후에 나타난 민족에 쫓겨난 사람들이 동굴따위에 숨어 그 이야기가 전승되는 동안에 요정이라는 존재로 미화되었다는 것이다.
'성스러운 것' 과 '사악한 것' 어디에도 속하지 않는다. 보통때는 사람들과 다를 것도 없는 생활을 한다. 무리를 만들어 사는 것도 있으며 혼자서 사는 경우도 있다. 나무나 물의 정령처럼 자연계에 오랫동안 살기도 하고 모습을 감추고 살기도 한다.
육지에 사는 것, 물 속에 사는 것이 있으며 성질도 가지각색으로 인간에게 도움을 주는 것 (아일랜드의 레프리콘) 도 있지만 요정의 화살을 쏘아서 마비시키는 (콘월의 픽시) 등 나쁜 짓을 하는 것도 있다. 땅의 풍토나 자연에 따라 가지각색의 요정이 있다. 요정은 스스로 선택해서 모습을 나타내기 때문에 사람이 요정을 만나기는 쉽지 않다. 다만 느낄 수는 있다. 눈보다 귀로 요정의 존재를 아는 사람이 훨씬 많다는 걸 알아두어야 한다. 발소리나 노래 소리 따위는 요정의 짓이 대부분이다. 요정은 보기도 어렵지만 보게 되더라도 눈깜짝할 순간에 놓쳐버리고 만다. 투시 능력이 있는 사람에게는 보인다고도 하지만 보통 인간에게도 간단한 방법이 있긴 하다. 네잎 클로버를 머리 위에 올려놓고 요정이 바르는 약을 눈에 붙인다. (다만 약 만드는 법은 요정만이 알고 있다)
영국의 웨일즈 지방 어딘가는 그곳을 왕래하다가 헛발을 디뎌 넘어지면 순간 요정이 보이는 1평방 야드 정도의 땅이 있다고 한다. 보기 쉬운 시기는 5월 1일, 6월 24일 (하지), 10 월 31일 (할로윈) 따위, 시간은 태양이 머리 꼭대기에 오는 정오, 한밤중, 황혼 무렵이다.
대개 요정은 우리가 먹는 것과 같은 것을 먹는다. 다만 유럽인들은 요정이 히스풀 줄기, 사슴과 산양의 젖, 보리, 밀 등을 주식으로 삼는다고 생각했다.
작은 산이나 물속, 숲 근처에 사는 요정이 많은 듯하다. 물론 사람 근처에 사는 걸 즐기는 요정도 있다. 요정 나라는 작은 산의 입구부터 대지 밑, 또는 해변의 동굴부터 바다밑까지 널리 퍼져있다. 또 요정들은 호수나 냇물 속, 나무 구멍이나 뿌리 사이, 언덕에 뚫린 굴속에 사는 것으로 여겨졌다. 그들은 달빛을 받으며 춤을 추는 걸 즐겼는데, 사람들은 항상 '요정의 링' 을 보고 그들이 맘에 들어 한 무도장을 발견할 수 있다. 그것은 버섯이 점점이 줄지어 완전한 원형을 만들어 놓은 것으로, 그 원 속의 풀은 주위의 풀보다 짙은 녹색을 띈다. 사람들은 이 순수한 원을 피해 가야한다. 만약 그 원 속에 발을 디디거나 그 속에서 잠을 잔다면, 요정들에게 유괴될지도 모른다고 생각했기 때문이다. 요정들에게 유괴되어 그들이 사는 지하에서 몇 분 있다 돌아오면 지상에서 는 이미 몇 년이 지나있다고 한다.
대체로 남을 돌봐주길 좋아하는 밝고 쾌활한 성격으로, 마음에 드는 인간에게 선물을 하거나 집안일을 도와주지만 그것을 떠들어대거나 감사해서는 안된다. 프라이버시를 침해하거나 요정이 다니는 길을 방해하면 그들은 심술궂은 마음을 갖게 된다. 빌려주고 꿔주는 것도 귀찮아 한다. 가령 요정에게 음식을 꿨다면 돌려줄 땐 똑같은 양이 아니면 안된다. 만약 조금이라도 많다면 화를 내며 두번 다시 꿔주지 않는다. 반대로 빌려준다면 두 배로 돌려준다고 한다. 요정은 친근한 성격이지만 대체로 요정 쪽에서 친구를 선택한다. 집에서 가사를 도와주는 '브라우니' 따위각 그 대표적인 예이다. 브라우니는 근심 걱정을 해결해 주는 요정으로 어려움에 처한 가족을 도와주었던 이야기들이 각지에 남아있다. 도움 받은 사람들은 대개 가난하지만 바른 마음을 가지고 살아가는 사람들이다.
후이돌이라고 불리는 바이올린의 일종을 빠른 템포로 연주하고, 스텝을 밟기 쉬운 곡이라면 어떤 곡도 좋지만 특히 '지그 (jig- 만화영화 '인어공주' 에서 선상에서 나왔던 음악이죠. 춤추기 좋은 민속음악의 일종입니다)' 라고 불려지는 곡은 요정들의 댄스곡으로서 친숙한 것 같다.
집단으로 사는 요정 중에서도 궁전 형태를 갖춘 요정들에게는 분명 남녀의성차가 있다. 또 남성을 유혹하는 요정인 라난시는 여성, 여성을 유혹하는 요정 간코나는 남성이다. 그 밖의 요정에게는 남성이나 여성도 있지만 그 양쪽을 합쳐서 가지거나 또 어느 쪽도 아닌 것도 있다고 한다
벌레 정도 크기부터 인간과 같은 정도도 있고 커지거나 작아지거나 변신할 수 있는 종류도 있다. 아름다운 요정만 있는게 아니라 추한 요괴 모습을 한 것도 많다. 덥수룩한 수염을 하고 있어 보기만 해도 두려움에 몸서리 쳐지는 녀석들도 꽤있다.
우선 그들과 이야기 할 때 요정이라고 부르는 것을 피하고 ' 저 사람들' 이라든가 '마음씨 좋은 사람들' 이라고 말을 골라 쓰는것도 요령이다.또 다른 사귀는 요령은 두리번거리며 주위를 살피지 말아야 하고 어떤 질문이라도 정중히 답하는 것이다. 하지만 격식을 갖춰 말하는 것을 싫어하는 요정인"야레리 브라운" 같은 요정도 있으니 주의할 것.
모두가 해질녘까지 적당한 장소에서 잠을 잔다. 예전엔 난로에 연결된 굴뚝 속이나 냄비를 걸어 두는 쇠사슬 위에 솜씨 좋게 붙잡고 잠자는 브라우니가 목격되기도 했다. 항간에는 만약 잠자고 있는 요정을 보더라도 잠을 깨우거나 하는 바보같은 짓은 하지 않는게 좋다고 한다.
모두 서로 다른 취향을 갖고 있어 멋내기를 즐기는 듯 하다. 숲속에 사는 정령들은 숲에서 얻을 수 있는 소재를 사용해서 능숙하게 옷을 만들어 입고 인간의 주위에 사는 요정들은 인간에게 빌린 물건으로 꾸려 나가는 경우도 있는 듯 하다.
뇌출혈에 의해 발생하는 반신불수나 수족마비를 '중풍'이라고 하지만 이것은 요정의 짓이라고 전해지고 있다. 류마티즘이나 피부병, 결핵, 게다가 종아리에 갑자기 쥐가 날 때, 경련이 일어날 때도 옛날 유럽 사람들은 요정 탓이라고 했다. 부딪힌 기억이 없는데도 몸에 시퍼런 멍이 들 때가있는데 그것은 요정이 손가락으로 꼬집은 것이다. 부도덕, 불결을 싫어하는 요정이 인간에게 준 벌인 것이다.
무슨 놀이인지는 알 수 없지만 하링이라는 놀이를 좋아한다고 한다. 혹 요정들이 게임을 같이 하자고 유혹하더라도 자신이 없으면 하지않는게 낫다. 요정은 지기 싫어해서 술수를 써서라도 이기려고 하니까 승산이없다.
가끔 요정들은 사람에게 일종의 마성을 띈 꿰뚫어보는 힘인 '천리안'을선물하곤 했다. 그것은 요정이 사람의 눈꺼풀 위에 고약 (또는 요정의 침)을 바르는 순간 생기는데 이 시력은 마술적 환상을 꿰뚫어 볼 수 있게 했다. 즉 마법으로 만든 각종 가구, 장식품 등이 실제로는 나무 등걸이나 짚더미인 것을 알아챌 수 있게 한 것이다.
믿을 수 없지만, 유럽에는 요정의 물건을 소장하고 있는 박물관이 많다.에딘버러에 있는 박물관에는 '요정의 관' 이 있다. 스코틀랜드의 서쪽에 떠있는 루이스 섬의 근처에 픽시의 작은 섬이 있다. 16 세기와 17 세기에 인간의 것으로 보기에는 너무나 작은 뼈가 발견돼었다는 기록이 남아 있다. 그러나 20 세기에 들어서 발견된 뼈가 바다새나 작은 포유동물의 것으로 판명됐기 때문에 과거에 발견된 뼈도 요정의 것은 아닌 것으로 보인다. 요정을 찍은 사진 중에서도 수정이나 이중 촬영한 흔적이 보이는 것이 많다.(참고로 빅토리아 시대엔 요정의 존재를 꽤 믿었다고 합니다. 이 시대에 초심령현상에 대한 열풍이 불기도 했지요.)
콘월 지방에 사는 난쟁이 픽시 (pixie)는 빨간 뾰족모자에 푸른 옷을 입고 둥근 눈과 귀를 가지고 있는데, 꽤 짓궂은 장난을 치기 좋아해 길에서 여행자가 길을 잃게 하고 집에서는 물건을 숨기거나 촛불을 불어 꺼 버렸다. 콘월 지방 사람들은 픽시를 세례를 받기 전에 죽은 갓난아기의 영혼이라 믿었다. 또 픽시의 땅 '가리토 랩 (가리트립스라고도 함)' 에 잘못하여 발이 닿으면 요정의 화살에 맞는다고 한다. 콘월의 옛 광산 갱도에는 '노츠카' 라는 광산의 요정이 살고 있어 친절한 사람에게는 바위를 울려서 광산이 있는 장소를 알려주었다고 한다.
아일랜드를 대표하는 레프리콘은 사람들에게 전혀 해코지하지 않는 아주 온순한 요정으로, 땅굴 속에 숨어 살면서 언제나 한쪽 구두만 만든다고 한다. (공포영화에 주연으로 나오기도 했지만..원래는 착한 요정이랍니다) 식사를 대접해 준 구둣방 노부부를 위해 밤새 구두를 만들어 주었다는동화 속 난쟁이 요정들은 바로 이들이다. 아일랜드의 또다른 요정 밴시는 늙은 여자의 정령으로 죽음이 찾아오려 하는집밖에서 울부짖는다고 전해진다. 밴시는 머리를 길게 기르고 푸른 옷에 흰색 망토를 입은 창백한 여성으로 직접 사람들을 해치지는 않지만 섬뜩한 울음소리 덕분에 두려운 요정으로 알려져 있다. 아일랜드에는 라난시라는 요정이 또 있는데 매우 아름다운 용모로 자기에게 매혹된 남자들의 생명을 앗아간다고 한다. 이 요정은 시인이나 예술가에게 영감을 주는 요정으로, 그리스 신화의 뮤즈들과 흡사한 점이 많다.
북유럽 신화에 등장하는 드워프는 손 기술이 뛰어나 무엇이든 잘 만드는 재주꾼이다. 드워프는 긴 수염과 작으면서도 단단한 몸집, 그리고 대단한 먹성으로 유명한데 동화 백설공주와 일곱 난장이들의 난쟁이의 모티브가 되었다고 한다.
- 문서구조조정토론 . . . . 63 matches
문서 구조 조정이 되고, 원래 있었던 자리를 잃으니 '몇번째주 무슨요일'하는게 제일 첫단에 와 있군요. 이전에 보았다면 알겠지만, 그건 주가 되는 내용이 아니었습니다. 문서 구조 조정을 할때는, 관련된 내용에도 더 신경을 써야겠군요 --이선우
직접 바꾸건, 누군가 바꾸어 주느냐의 문제가 아니고, 또 단순히 글 자체에 대한 의도가 맞지 않아졌음을 이야기하는게 아닙니다. 문서 조정의 결과로 어울리지 않는 내용이 나타나는것 보다 큰 문제는, 다른 이들에게 잘못된 이야기들을 파생시킬 수 있는 점입니다. --이선우
DeleteMe) 현재의 해당 스레드는 정모에 관한 모든것을 다루는 것이라 생각해서 말씀하신 주제를 포용한다고 생각합니다. 하지만, 의도의 전달이 잘못되었다면 작성자가 고치기를 간절히 바라고 있습니다. 현재 문서 구조조정이후 고치는 사람이 별로 없는거 자체가 약간 걱정이 되지요. --상민
계속 대화의 핀트가 어긋나고 있습니다. 내용 자체가 전달하려는 의도와 어긋난 것이라면, 해당 작성자가 고치는게 가장 맞는 방법이라는데 동의합니다. 제가 제기한 이야기는 그러한 부분이 아님을 말씀드립니다. 서로 연관된 문제에서 위치를 바꾸는등의 문서 구조 조정 이야기 입니다. 이 경우, 내용 자체의 변화는 없지만, 문서 구조 조정자가 관련글의 위치를 바꿈으로써 잘못된 의미를 전달할 수 있고, 그 결과로써의 파생 결과를 우려하였습니다. 이는 해당 문서 작성자보다, 문서 구조 조정자가 좀 더 신경을 쓰는 편이 맞다고 생각합니다. --이선우
["neocoin"]:말씀하시는 문서 조정은 문서 조정은 문서 작성자가 손대지 말아야 한다라는걸 밑바탕에 깔고 말씀 하시는것 같습니다. 문서 조정자는 특별히 문서 조정을 도맡는 사람이 아니고, 한명이 하는 것이 아니라, 다수가 접근해야 한다는 생각입니다. "다같이" 문서 조정을 해야 된다는 것이지요. 문서 조정을 한사람의 도맡고 이후 문서 작성자는 해당 문서에서 자기가 쓴 부분만의 잘못된 의미 전달만을 고친다라는 의미가 아닌, 문서 조정 역시 같이해서 완전에 가까운 문서 조정을 이끌어야 한다는 생각입니다. 즉, 문서 구조 조정이후 잘못된 문서 조정에서 주제에 따른 타인의 글을 잘못 배치했다면, 해당 글쓴이가 다시 그 배치를 바꿀수 있고, 그런 작업의 공동화로, 해당 토론의 주제를 문서 조정자와 작성자간에 상호 이해와 생각의 공유에 일조 하는것 이지요.[[BR]] 논의의 시발점이 된 문서의 경우 상당히 이른 시점에서 문서 구조조정을 시도한 감이 있습니다. 해당 토론이 최대한 빨리 결론을 지어야 다음 일이 진행할수 있을꺼라고 생각했고, thread상에서 더 커다랗게 생각의 묶음이 만들어 지기 전에 묶어서 이런 상황이 발생한듯 합니다. 그렇다면 해당 작성자가 다시 문서 구조 조정을 해서 자신의 주제를 소분류 해야 한다는 것이지요. 아 그리고 현재 문서 구조조정 역시 마지막에 편집분은 원본을 그대로 남겨 놓은 거였는데, 그것이 또 한번 누가 바꾸어 놓았데요. 역시 기본 페이지를 그냥 남겨 두는 것이 좋은것 같네요.(현재 남겨져 있기는 합니다.) --상민
'문서 조정은 문서 작성자가 손대지 말아야 한다' 라는 어처구니 없는 내용을 어떻게 끌어냈는지 모르겠습니다. 어느 부분에서 도대체 '구조 조정은 구조 조정자의 몫이다'라는 식의 이야기를 했다는지 궁금하군요. 제 이야기는 현재의 잘잘못을 따지고, '문서 구조 조정은 ''누군가 그 일을 할 사람''이 알아서 해라'라는 식의 이야기가 아닙니다. 문서는 누구나가 노력을 해서 고쳐가되, 다만 문서 구조 조정자는(누가됬건 현재 문서를 구조 조정하고 있는 사람은), 자신이 한 결과에 따라 어울리지 않는 글이 될 수 있으므로 해당 문서 구조 조정의 시점에서 더 신경을 써야 한다는 뜻입니다. 물론, 해당글의 작성자가 나중에 발견하고 이를 고칠수도 있지만, 처음 시점부터 좀 더 신경을 쓰는 방법이 효과적이라 생각한 이유입니다. 한번 더 강조하자면, 문서 구조 조정자가 신경을 쓸 필요가 있다라는 이야기가 해당 글의 작성자 자체가 '나는 문서를 구조조정할 필요가 없다'라는 의미는 절대 아님을 이야기합니다. 모로가도 서울만 가면 되지만, 더 편한 방법이 있다면, 그런 방법을 택하는게 자연스러운건 자명한 이치입니다. --이선우
["neocoin"]: 그렇다면 저에게는 지금까지 페이지가 나온 이유 자체가 모호해 집니다. 그럼 말씀하시는 주제가 결국 "문서 구조 조정은 신중히 해야한다." 이것이라고 생각합니다. 이것은 의견이라기 보다 문서 구조 조정시의 기본 명제라 생각하며, 이중에 말씀하신 "문서 구조 조정시에 위치 변경은 글쓴이의 의도의 방향을 바꾼다."라는 것도 문서 구조 조정을 신중히 겠지요. 이런 것은 당연히 동의 합니다. [[BR]] 이것에 반대한다는 말이 없고, 이는 해당 의견의 암묵적 동의라고 생각하고, 잘못된 부분에 대하여 다시 구조조정을 해 주십사 원한 것인데, 다시 대화가 다른 방향으로 전개되어서 "문서 구조 조정자"와 "문서 작성자"로 나뉘어서 접근하시는 말씀인것으로 받아 들였습니다.[[BR]]해당 글처럼 잘못 된 부분의 지적 이후, 고치지 않는다면 다른 이가 해당 문서를 더 고치지 못하는 위화감 이랄까요. 그런것이 발생한다고 생각합니다. 현재 위키에 00들와 01들이 이러한 "조심스러움의 유발 요인" 때문에 활발히 글을 날리는데 방해가 될것이라고 생각합니다. 글을 장려하는 입장에서 글을 계속 올리다 보니, 대화의 주제가 어긋난 것 같습니다. --상민
["혀뉘"] : 위키 사용에 있어서 , 기존의 게시판과 같은 '글' 편집의 독자성,일관성 을 보장받지 못하다보니 이런 토의가 필요하게 된것 같군요. 사실 위키는 이러한 편집의 권리를 많은부분 '공유' 한다는 개념에서 나온것이기 때문에, 이를 너무 의식하면 위키 본래의 기능을 상실할 수 밖에 없을것 같습니다. 이런 일이 생기는 이유가, 그동안 ZP 의 움직임에 대해서 토론할 주제들이 많았기 때문에, 위키를 토론의 목적에 사용해서 그렇지 않았나 싶군요. 누구든지 글을 수정 할 수 있다는 위키의 장점이, '토론' 분야에 적용하면서 단점으로 바뀌게 되었다고 봅니다. '토론' 분야 만큼은 편집의 독자성을 보장 하는것이 어떨까요? 문서의 종류에 따라, 사실에 기초한 문서는 여러사람이 손을 대서 '완전에 가까운 문서' 를 만들어낼 수 있겠지만, '의견' 에 기초한 문서는 여러사람이 손을 대면 댈 수록 본래 의견제시를 했던 사람의 '의견' 은 훼손됩니다. 편집의 독자성이 필요하다고 생각됩니다. 망치로 대패질 할 수는 없는게 아닐까 합니다. 망치를 쓸 곳에 대패를 사용하려면, 대패 몸이 조금 상하겠지만, 휘둘르는 방법으로 못을 박아야지요 :)
위키에서 편집의 권리를 '공유'하고 고쳐나가는 개념이 제대로 적용되는 것은, 위키를 쓰는 사람들이 점점 익혀나가야 할 부분입니다. 토론과 관련된 부분에서 위키의 방식이 단점으로 작용한다고 보지 않습니다. 예를 든다면, KLDP의 토론란을 보면 더더욱. 스레드가 길어질수록 주제와 맞지 않는 글들이나 중간에 일어나는 감정싸움들은 걸러져야 할 것임에도 불구하고 그 자리를 차지하고 있습니다. 스레드가 길어질수록 결국은 논제를 벗어납니다. 위키스타일이라면, 문서구조조정을 통해서 그러한 것을 어느정도 줄여줄 수 있을 것이라 생각됩니다.
문제는 문서구조조정인데, 이는 문서구조조정자가 신도 아니고. -_-; 하지만, 본 저자의 의도가 벗어나지 않도록 문서구조조정을 해야 하는것은 당연한 것이며, 추구해나가야 할 부분이겠죠. 저번에 문서구조조정 (데블스 관련) 을 했을때는 상민이랑 제가 넷미팅을 공유하고 대화하면서 문서구조조정을 했었습니다. (원래라면 데블스쪽에 있는 사람과 해야 더 무게균형이 있었겠지만) 중요한 토론이라면 이런식의 방법도 고려해볼만 하겠죠. (단, 역시 cost가 더 크긴 하겠죠.)
그리고 이건 논제와 약간 다른데, 성급하게 'Document' 를 추구할 필요는 없다고 봅니다. Thread 가 충분히 길어지고, 어느정도 인정되는 부분들에 대해서 'Document' 화를 해야겠죠. (꼭 'Document' 라고 표현하지 않아도 됩니다. 오히려 의미가 더 애매모호합니다. '제안된 안건' 식으로 구체화해주는 것이 좋을 것 같습니다.) --석천
저는 PairProgramming을 가르치기에 앞서 NoSmok:PairDrawing 을 경험하게 합니다. 여기에는 여러가지 방법이 있는데, 구체적인 대상(사람 얼굴이나 동물 등)을 정해놓고 서로 한 줄 씩 번갈아 가며 그리는 방법이 있고, 아니면 아무것도 정하지 않고, 혹은 대강의 주제만 정해놓고 그냥 "멋진 그림"을 그리자는 합의하에 번갈아 가며 한 줄 씩 그리는 방법이 있습니다. 모두 그리는 중엔 말을 하지 않습니다. 여기서, 후자 경우 적극적으로 상대방의 의도를 이해하려는 노력이 없으면 좋은 그림이 나오기 어렵습니다 -- 한사람은 사람을 그리려고 하고 다른 사람은 나무를 그리려고 하는(혹은 상대가 나무를 그리려고 하고 있다고 오해한) 경우를 생각해 보세요. 상대의 의도를 이해하려고, 또 그것이 더 잘 드러나도록 서로 노력하다보면 혼자 그린 그림보다 더 좋은 그림이 나오는 경우가 종종 있습니다.
해당 공동체에 문서구조조정 문화가 충분히 형성되지 않은 상황에서는, NoSmok:ReallyGoodEditor 가 필요합니다. 자신이 쓴 글을 누군가가 문서구조조정을 한 걸 보고는 자신의 글이 더욱 나아졌다고 생각하도록 만들어야 합니다. 간단한 방법으로는 단락구분을 해주고, 중간 중간 굵은글씨체로 제목을 써주고, 항목의 나열은 총알(bullet)을 달아주는 등 방법이 있겠죠. 즉, 원저자의 의도를 바꾸지 않고, 그 의도가 더 잘 드러나도록 -- 따라서, 원저자가 문서구조조정된 자신의 글을 보고 만족할만큼 -- 편집해 주는 것이죠. 이게 잘 되고 어느 정도 공유되는 문화/관습/패턴이 생기기 시작하면, 글의 앞머리나 끝에 요약문을 달아주는 등 점차 적극적인 문서구조조정을 시도해 나갈 수 있겠죠.
- PairProgramming . . . . 62 matches
* 5분 Pair-Change - 장과 단이 존재하긴 하는데. 장점으로 본다면, 자신의 프로그래밍 차례가 빨리 돌아오면서 Pair 끼리의 Feedback 이 빠르다는 점에서 집중도가 높다는 점이 있다. 단, Junior 의 경우 자신의 사고가 성숙해질 시간을 방해할 수 있다. 이 경우 5분으로 시작, 점차적으로 Change 의 기간을 늘려주는 방법이 있다.
* 코드 에러율의 감소 - 내가 간과하고 넘어가기 쉬운 에러들에 대해서 지적이 빠르다.
* Protocol Analysis, 지식의 전달 - Seminar:CognitivePsychology 참조. 다른 사람의 사고과정을 관찰하고, 또한 자신의 사고과정을 다른 사람으로 하여금 관찰할 수 있게 해준다. 이는 자신의 프로그래밍 과정중 잘못된 부분을 고치는데 도움을 준다.
* Pair 중 Expert는 Junior에게 많은 설명을 해줘야 한다? - 이는 Junior 의 Feedback 을 보고 결정하는 것이 좋다. 처음부터 Expert 가 꼭 '선생님'이 될 필요는 없다.
동문서버 프로그래밍 팀의 인수인계용으로 이용되었었다. PP를 주로 하고 한두번의 VPP를 했다. 해당 소스를 같이 만들어가면서 기존의 프로그램을 설명했다.
Expert : Junior . 즉, 해당 분야에 대한 전문가 : 초심자 의 문제이다. 이 경우 그 진행이 늦어질 수 있다. (Expert : Expert는 최고의 효율성을 가진다. 물론 이것도 열린 마음을 바탕으로 한다. Junior : Junior 도 나름대로(?) 빨리 움직인다. (제대로 움직인다는 보장은 못한다. -_-;)) 그리고 Expert가 해당 프로그래밍에 대한 답 (코드)을 이미 알고 있는 경우 Expert의 집중도와 긴장감을 해치게 된다.
이 때에는 Expert는 놀지말고 (-_-;) Observer의 역할에 충실한다. Junior 의 플밍하는 부분을 보면서 전체 프로그램 내의 관계와 비교해보거나, '자신이라면 어떻게 해결할까?' 등 문제를 제기해보거나, reference, 관련 소스를 준비해주는 방법이 있다.
* Pair 의 진행을 이끌어가는 것 - 프로그래밍의 흐름이라고 해야 할까. 디자인을 어느정도 선정도로 맞추고 어떠한 문제를 풀 것인가에 대한 약간의 선이 필요할 것 같다. 이 경우에는 초반 디자인이 허술했었다는 약점이 있었다. '전체적인 관점에서 무엇무엇을 하면 프로그램이 완성될 것이다' 라는 것. UserStory 만 생각하고 EnginneringTask 를 간과한 것이 큰 문제였다. (그때 EnginneringTask 에 대한 개념이 없었었다는. 어디서 함부로 주워만 지식. --; 사고를 하자 사고를. -_-)
* Pair 의 분배 - TFP를 공부하느냐고 시작한 것이였던지라, 상대적으로 CppUnit 에 익숙하지 않은 사람에게 코딩을 주도하게 했다. 한 1주일정도 되는 프로젝트라면 Junior로 하여금 경험을 쌓게 함으로써 오히려 장점으로 작용할 수도 있을 것 같다. 하지만, 역시 적절하게 분배를 했었어야 할 것 같다.
* 집단 삽질. --; - 이것은 헤프닝이라고 보는 것이. -_-;; Test Code 에서 둘이 라디안 구하는 공식을 거꾸로 쓰고 '왜 값이 틀리다고 하는거야!' 하며 1시간을 삽질했다는 후문이 있다는. --;
* 아직은 효율성이.. - 일종의 Learning Time 이라고 해야 할까? 대부분 실험에서 끝난다는 점. 퍽 하고 처음부터 효율성을 극대화 할 순 없을 것이다. 참고로 이때는 아날로그 시계 만드는데 거의 3시간이 걸렸다. Man-Hour 로 치면 6시간이 된다.
집중도는 거의 최고라는 점! (이 점에서 둘이 서로 동의를 했다.) 평소 혼자 프로그래밍할때는 중간에 웹서핑을 하는 등 주위가 산만해지는 경우가 많았다. 하지만 이 Pair 중에는 사람들이 프로그래밍과 토론에만 전념할 수 있었다. (오히려 중간중간 일부러 10분 휴식을 두어야 했다.)
* Junior 로서의 실수 - 기존 앞에서의 경험에서는 상대적으로 내가 Expert 의 위치에서 작업을 하였다. 이번에는 Junior 의 입장에 서게 되었는데, 기존에 Junior 의 위치에 있었던 사람들의 실수를 내가 하게 되었다. 어려운 부분에 대해서는 이해를 제대로 하지 못했음에도 불구하고 Expert의 속도를 저해할지도 모른다는 생각을 하며 대강 넘어갔었다. (다른 Junior 의 경우도 PP에서 어려움을 겪는 부분중 하나가 이것일지도 모른다. 특히 선후배 관계의 경우) 하지만, 이는 오히려 사태를 악화시킬 수 있다. 프로그래밍 작업을 계속 Expert에게만 의존하게 되기 때문이다. 확실하게 개념을 공유해야 Observer 의 역할과 Driver 의 역할 둘 다 잘할 수 있다. (쉬운 일은 아니다. 확실히)
* 상황에 따라서는 말로 하는 것 보다 코드로서 이야기하는 것이 더 직관적일 때가 많다. 코드로 이야기 하고, 다시 의견을 듣고 수정하거나 키보드를 넘겨서 리펙토링 하는 식으로 대화할 수 있겠다.
* 자존심문제? - Pair를 의식해서여서인지 상대적으로 Library Reference나 Tutorial Source 를 잘 안보려고 하는 경향이 있기도 하다. 해당 부분에 대해서 미리 개인적 또는 Pair로 SpikeSolution 단계를 먼저 잡고 가벼운 마음으로 시작해보는 것은 어떨까 한다.
* On-Side Customer 와의 PairProgramming - 프로젝트 중간에 참여해서 걱정했었는데, 해당 일하시는 분과 직접 Pair를 하고 질문을 해 나가면서 전체 프로그램을 이해할 수 있었다. 특히 내가 ["BioInfomatics"] 에 대한 지식이 없었는데, 해당 도메인 전문가와의 Pair로서 서로 상호보완관계를 가질 수 있었다.
* 대화 - 상대방이 '알고 있을 것이다' 라는 점도 실제는 모르고 있는 경우가 많다라는 생각을 해본다. 친한친구 이더라도, 상대방을 잘 안다라고 생각하더라도, 상대로부터 읽지 못한 정보는 너무나 많기에.
* 보간법의 오차를 줄이려면 Control Point 를 늘리고, 간격을 좁혀야 할것이다. 잦은 대화는 그 자체가 부하일지 모르겠지만, 또한 오해를 줄일것이다.
* 협동 - 이번경우는 비교적 협동이 잘 된 경우라고 생각한다. Python 으로 문제를 풀기 위한 프로그래밍을 하는데는 석천이, Idea 와 중간에 데이터 편집을 하는데에는 정규표현식을 잘 이용하는 상민이가 큰 도움을 주었다. 적절한 때에 적절하게 주도하는 사람이 전환되었던 것으로 기억.
* 집중 - 이번 경우에는 '시간제한' 이라는 것까지 있어서인지; 석천은 더더욱 프로그래밍 자체에 집중했다. (스크립트 언어 스타일의 접근방법과 이전의 TDD 연습도 한몫 거든듯. 조금씩 만들고 결과 확인해보고 조금 또 만들어보고 결과 확인을 했다. 단, 이번엔 Test Code 를 안만들어서, 뒤에가서 버그가 났을때 대체를 못했다는.-_-; 잘될때는 문제가 아니다. 잘 안될때, 문제상황에 대한 대처가 중요하다고 생각.)
- Java Study2003/첫번째과제/장창재 . . . . 61 matches
- 자바(Java)를 이야기할 때 크게 두 가지로 나누어 이야기 할 수 있습니다. 먼저, 기계어, 어셈블리어(Assembly), 포트란(FORTRAN), 코볼(COBOL), 파스칼(PASCAL), 또는 C 등과 같이 프로그래밍을 하기 위해 사용하는 자바 언어가 있고, 다른 하나는 자바 언어를 이용하여 프로그래밍 하기 위해 사용할 수 있는 자바 API(Application Programming Interface)와 자바 프로그램을 실행시켜 주기 위한 자바 가상머신(Java Virtual Machine) 등을 가리키는 자바 플랫폼(Platform)이 있습니다. 다시 말해서, 자바 언어는 Visual C++와 비유될 수 있고, 자바 플랫폼은 윈도우 95/98/NT 및 윈도우 95/98/NT API와 비유될 수 있습니다.
자바 언어(Java Language)를 이용하여 작성한 자바 프로그램(Java Program)은 자바 컴파일러(Java Compiler)를 이용하여 자바 바이트코드(Java Byte code)로 컴파일 되고, 이 자바 바이트코드는 자바 가상머신에 의해 해석되어 실행되는데, 이때 자바 가상머신은 자바 바이트코드에 대한 해석기 즉 인터프리터(interpreter)로 동작하게 됩니다. 이렇게 자바 프로그램은 컴파일 방식 및 인터프리터 방식이 모두 적용된다는 것입니다.
자바 바이트코드 명령어를 해석하고, 이를 자바 인터프리터가 설치되어 있는 플랫폼(윈도우 95/98/NT, 유닉스, 매킨토시 등)에 맞게 실행시켜 줍니다. 자바 인터프리터는 자바 바이트코드를 실행시켜 주기 위한 기능을 명세하고 있는 자바 가상머신을 구현해 놓은 것으로서 자바 가상머신과 같은 의미로 사용되며, 주로 자바 가상머신으로 많이 사용됩니다.
자바 바이트코드는 자바 가상머신에서 실행되는 기계어라고 생각하면 됩니다. 그리고, 모든 자바 인터프리터는 자바 가상머신을 구현해 놓은 것으로, 자바 가상머신과 자바 인터프리터를 같은 것으로 생각할 수 있습니다. . 이러한 자바 가상머신은 JDK(Java Development Kit)에 포함되어 있을 수도 있고, 자바 호환 웹 브라우저 내에 내장되어 있을 수도 있습니다. 또는, 자바 칩과 같이 하드웨어에 직접 구현될 수도 있습니다. 자바 바이트코드는 “write once, run anywhere”라는 말을 가능하게 해 줍니다. 다시 말해서, 자바 언어를 이용하여 작성한 자바 프로그램을 각 플랫폼(윈도우 95/98/NT, 리눅스, 유닉스, 매킨토시 등)에 맞게 제공되는 자바 컴파일러를 통해서 바이트코드로 컴파일 할 수 있습니다. 그리고, 이 바이트코드는 자바 가상머신이 있는 어떤 곳에서도 실행될 수 있습니다.
자바 API는 윈도우 API와 같이 운영체제에서 제공해 주는 라이브러리와 같은 것입니다. 다시 말해서, 자바 프로그램을 개발하기 위해 사용할 수 있는 라이브러리 또는 클래스들이라 할 수 있습니다. 이러한 자바 API는 서로 관련된 클래스들을 묶어서 패키지 단위로 제공되고 있습니다.
자바의 주된 특징은 기존의 C/C++ 언어의 문법을 기본적으로 따르고, C/C++ 언어가 갖는 전처리기, 포인터, 포인터 연산, 다중 상속, 연산자 중첩(overloading) 등 복잡하고 이해하기 난해한 특성들을 제거함으로써 기존의 프로그램 개발자들이 쉽고 간단하게 프로그램을 개발할 수 있도록 합니다.
자바는 C++와는 달리 처음부터 객체지향 개념을 기반으로 하여 설계되었고, 객체지향 언어가 제공해 주어야 하는 추상화(Abstraction), 상속(Inheritance), 그리고 다형성(Polymorphism) 등과 같은 특성들을 모두 완벽하게 제공해 주고 있습니다. 또한, 자바의 이러한 객체지향적 특성은 분산 환경, 클라이언트/서버 기반 시스템이 갖는 요구사항도 만족시켜 줄 수 있습니다.
자바는 컴파일 시에 에러 검사를 철저하게 하고, 실행 시에 발생할 수 있는 에러에 대해서도 실행 시에 철저하게 검사를 수행함으로써 신뢰도가 높은 프로그램을 작성할 수 있도록 해 줍니다. 또한, C/C++ 프로그램 개발자들을 가장 혼란스럽게 하고, 프로그램의 치명적인 오류를 발생시킬 수 있는 포인터 및 포인터 연산을 자바에서는 사용하지 않게 함으로써, 포인터를 사용함으로써 프로그래머가 범할 수 있는 오류를 없앴다는 것입니다.
아키텍쳐 중립적(Architecture-neutral)이고 이식성(Portable)이 높다:
자바는 서로 다른 이종(Heterogeneous)의 네트워크 환경에서 분산 되어 실행될 수 있도록 설계되었습니다. 이와 같은 환경에서는 응용 프로그램들이 다양한 하드웨어 아키텍쳐 위에서 실행될 수 있어야만 합니다. 이를 위해 자바 컴파일러는 이종의 하드웨어 및 소프트웨어 플랫폼에서 효율적으로 코드를 전송하기 위해 설계된 아키텍쳐 중립적인 중간 코드인 바이트코드를 생성합니다. 이는 동일한 자바 프로그램의 자바 바이트코드가 자바 가상머신이 설치되어 있는 어떤 플랫폼에서도 실행될 수 있도록 하는 것입니다. 또한, 자바는 기본 언어 정의를 엄격하게 함으로써 효율적인 이식성을 제공해 주고 있습니다. 예를 들어, int 형과 같은 기본 데이터형의 크기를 플랫폼과 무관하게 일정하게 하고, 연산자의 기능을 확실하게 규정하고 있습니다. C 언어를 이용하여 int 형을 선언할 때, 도스에서는 16비트, 윈도우 95/98/NT 등 32비트 운영 체제 환경에서는 32비트, 유닉스에서는 32비트 등 그 플랫폼에 따라 크기가 다르지만, 자바에서는 플랫폼에 상관없이 32비트로 고정되도록 하였습니다. 이는 자바 프로그램이 실행되는 환경이 자바 가상머신으로 동일하기 때문입니다.
자바 언어로 작성된 자바 프로그램을 중간언어 형태인 자바 바이트코드로 컴파일하고, 이렇게 생성된 자바 바이트코드를 자바 인터프리터가 해석함으로써, 자바 인터프리터와 런타임 시스템이 이식(porting)된 모든 플랫폼에서 자바 바이트코드를 직접 실행할 수 있습니다.
자바는 몇 가지 단점을 가지고 있는데, 자바의 단점이라 할 수 있는 문제들과 그에 대해 자바에서는 어떤 기술 또는 방법을 이용하여 해결하려 하고 있는 지에 대해 살펴보도록 하겠습니다.
먼저, 자바는 기계어 코드를 직접 실행시키는 것이 아니고, 플랫폼 독립적인 중간 코드 형태인 바이트코드를 자바 가상머신이 해석하여 실행시키는 인터프리터 방식을 취하고 있으므로 느린 수행 시간을 갖습니다. 일반적으로 C보다 평균 8배 정도 느리고, 최대 20배까지 느립니다. 이렇게 느린 수행 시간을 해결하기 위해 다음과 같은 기술을 사용할 수 있습니다.
두 번째, 자바 애플릿을 웹 서버로부터 웹 클라이언트가 다운로드하여 실행시켜 주게 되는데, 이 때 네트워크 속도가 느리다는 문제가 있습니다. 이런 문제점에 대해서는 다음과 같은 기술을 사용하여 해결하려 하고 있습니다.
다운로드 받은 애플릿과 애플릿 관련 파일들은 웹 클라이언트의 디스크에 캐싱합니다. 예를 들어, 웹 클라이언트가 애플릿이 포함된 페이지를 보다가 다른 페이지에 잠깐 들렀다가 애플릿이 포함된 페이지로 다시 돌아올 경우, 애플릿과 관련된 모든 파일들을 다시 다운로드하는 것이 아니고 웹 클라이언트의 디스크에 캐싱 되어 있는 애플릿 관련 파일들을 사용하게 됩니다. 이렇게 함으로써, 느린 네트워크를 이용하여 애플릿과 관련된 파일들을 다시 다운로드 하는데 걸리는 시간을 없앨 수 있습니다.
세 번째, 모호한 언어적 특성, 비결정적 자바 가상머신, 표준화된 실시간 API가 없는 문제 때문에 실시간 응용이 어렵습니다. 이를 위해, 자바에서는 다음과 같은 기술을 개발하고 적용함으로써 실시간 응용을 가능하게 할 수 있습니다.
이러한 문제는 자바가 스레드 스케줄링 정책 구현에 의존하고, synchronized 명령어가 모니터 기반의 동기화 기법만 제공하고 큐 대기 시간을 예측할 수 없으며, notify() 메소드가 스레드를 깨우는 순서가 불명확하고, 우선순위 역전(priority inversion_의 가능성이 있습니다. 이러한 문제는 API 수준에서 해결되어야 하고, 실시간 타스크 처리를 위한 우선순위 레벨을 확장하고, 우선순위 상속(priority inheritance) 또는 우선순위 최고 한도 제한(priority ceiling) 등과 같은 우선순위 역전 방지 (priority inversion avoidance) 프로토콜을 사용하고, MuteX, 이진 세마포어(Binary Semaphore), 계수 세마포어(Counting Semaphore) 등을 사용할 수 있습니다.
이러한 문제점은 느린(Lazy) 클래스 로딩에서 발생하거나 메모리 할당과 가비지 콜렉션이 비결정적이고 느린 최악의 경우(worst-case) 특성을 가지며 stop-start 방식으로 모든 스레드를 멈출 수 있다는 문제점이 있습니다. 이를 해결하기 위해 클래스를 미리 로딩(class preloading)한다거나 정적 초기화(static initializer)를 제거하여 패키지 라이브러리에 대해서는 가상머신 초기화를 사용하고 응용프로그램에서는 명시적인 초기화 를 사용하게 하는 등의 기법을 사용할 수 있습니다. 그리고, 메모리 할당과 쓰레기 수집(garbage collection)에 대해서는 정해진 시간 내에 입터럽트 가능한 쓰레기 수집을 하는 것입니다. 또는 표준화된 실시간 API를 제공함으로써 해결할 수 있습니다.
C언어를 이용하여 C 프로그램을 작성한다면 반드시 main이라는 시작 함수를 정의해 주어야 하고, 윈도우 응용프로그램을 작성한다고 하면 WinMain이라는 함수를 꼭 작성해 주어야 하지요. 이러한 것을 규약(protocol)이라 합니다. 마찬가지로, 자바 언어를 이용하여 여러 가지 종류의 자바 프로그램을 작성할 수 있는데, 이 때 각 자바 프로그램의 종류에 따라 해당 규약이 서로 다릅니다. 이렇듯 자바를 이용하여 자바 프로그램을 작성한다는 것은 각 자바 프로그램에서 제시하고 있는 규약을 지켜 프로그램을 작성한다는 것입니다. 자바 언어를 이용하여 작성할 수 있는 자바 프로그램의 종류를 살펴보면 다음과 같습니다.
JDK와 함께 제공되는 자바 가상머신에 의해 독립적으로 실행될 수 있도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 컴퓨터에서 윈도우의 도스창 또는 유닉스 쉘 등과 같은 쉘에서 자바 가상머신을 이용하여 실행시키는 자바 프로그램입니다. 위에 나오는 그림은 자바 애플리케이션의 실행 과정을 자세히 보여주고 있습니다.
- 정모/2011.3.21 . . . . 60 matches
* wiki에 페이지를 만들테니 참여하고싶은 학우는 이름을 써주세요
* 현재 ZeroWiki Url에 대한 제안이 올라왔습니다. 가서 읽어보시고 의견을 달아주세요.
* 3월 회고가 진행됩니다.
* 이번주에 집부 모집으로 인해 정모 참여율이 약간 저조하기도 했고, 아직 학생들과 수업을 진행하지 못한 반이 많아 트레이드는 다음주에 진행됩니다.
* 신입생 설명회에서 ZeroPage 활동 안내를 받고 싶다고 의사를 밝힌 새내기들에게는 문자로 활동 안내 연락이 감.
* 3월 회고가 새내기가 참여할 구석이 별로 없는 활동이고
* 애들 앞에 두고 회비 걷는 것도 좀 그렇잖아요…
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* Emacs & Elisp 후기 :의 소개를 보면서 다양한걸 사용하는 승한형에게 잘맞는 프로그램이라 생각됬다. 그 프로그램을 사용하기에 다양한걸 좋아하기도 하고 내가 가장많이쓰는건 Eclipse와 그걸 지원하는 플러그인이지만 여러가지를 개발하는 개발자에게 저것은 좋은프로그램이라 생각된다. 하지만 나에게는 아직도 Eclipse를 다루는것조차 아직은 버겁기에 우선 Eclipse를 하자는생각이 들었다.
WoW 소개의 후기를 쓰자면 OMS를 한 사람으로 준비를하면서 게임광고를 공개석상에서 할때 하는 방법에 대하여 여러가지로 연구해보았다. 그리하여 게임광고가 우리의 시각적이고 환상적인 분야를 자극하기위해 영상에 공을 들였다는걸 알았단 점. 그리고 일상에서 주위사람들에게 가장 큰 게임의 광고효과는 내가 재밌게 게임을 하는것이라 생각되었다. - [김준석]
* 이번에 승한이 형의 Emacs. Elisp 세미나를 들었다. 세미나를 들어보니 Emacs는 매우 자신에 맞게 전환 할 수 있는 도구 인 것 같다. 와우 에드온 같이 자기에게 딱 맞게 설정하는 재미가 있을꺼 같다. 기회가 되면 한번 다뤄봐야겠다. 그리고 다음 OMS로 주제를 키넥트에 관해서 하고싶은데 아직 사지도 않아서!!! 뭘해야될지 고민이다... 그냥 요즘 새로나온 게임 인터페이스들에 대해 통짜로 해버릴까...고민중임 - [임상현]
* 간만에다시온 제로페이지는 그대로 이더군요. 준석이의 충격적인 세미나는 역시 와우는 나같은 사람은 손대면 안된다는 걸 확신하게해 주었습니다. 후밴들이많아서더 맛있는걸 못 사준게 좀 아쉽고, 발표는 사람들이 잘 집중해 줘서 너무고마웠습니다. 빨리 더 많은걸 배워서 세미나 해주고 싶습니다.. 마지막으로 회장님 화이팅ㅋㅋㅋ - [이승한]
* 혹시 괜찮으면 세미나 자료를 제로페이지 자료실에 올려주실 수 있으세요? 개인적으로 emacs에 관심이 좀 있어서 약간 쓰고 있는데 어떻게 세미나를 하셨는지 상당히 관심이 생겨서 그러는데 - [서민관]
* ''그대로'' 라고 말씀하신 것이 약간 충격적입니다ㅋㅋ ZeroPage가 어떤 면에서 그대로라고 느끼셨는지 궁금해요~ - [김수경]
* 현이의 이번 아이스 브레이킹은 새로운 시도였던 것 같았는데, 아쉽게도 처음이라 그런지 시행착오를 겪은 것 같았습니다. 다음 아이스 브레이킹때 이번에 아쉬웠던 점이 보안되면 더 재미있는 시간이 되지 않을까 생각합니다. 승한이 형의 Emacs & Elips 세미나를 듣고 나서는 한편으로는 저런 것을 써 보는 것도 괜찮을 것 같다라는 생각도 들었지만.. 아직은 지금 쓰고 있는거 부터 잘 다룰 줄 알고나서 접근하는 게 좋지 않을까라는 생각도 들었습니다. -_-;; 워낙 초보인 나 자신이 부끄럽기도 한 시간이었습니다. 쩝. 그 이후엔 일이 있어서 먼저 갔는데... 저.. 참가자에 제 이름이 없네요 -ㅅ-ㅋ (먼저 가서 그런가 ㅋ) - [권순의]
* 수정했어요~ 빠진 내용이 있다면 주저하지 마시고 고치기~ - [서지혜]
1. 키워드 전기수가 생각처럼은 진행되지 않았습니다. 아마 첫 시도라 그렇겠죠? 현이가 낸 아이디어가 매우 좋아서 지난 한 주간 이 활동을 굉장히 기대했는데 생각해보니 제가 글을 못 쓴다는 사실을 망각한 채 기대만 했어요… 다음주엔 더 재미있게 진행될 수 있도록 시간제한이나 키워드 수 등 방식을 고민해보겠습니다:)
1. 오랜만에 승한선배께서 오셔서 세미나 해주시니 좋네요!! 피자도 사주시고ㅜㅜㅜ 잘먹었습니당 :9 승한 선배 세미나 덕분에 정모가 더 알찬 시간이 된 것 같습니다. emacs는 전에도 [데블스캠프]에서 소개해주신 것이 기억납니다. 그때 간단히 써보았는데 파워풀한만큼 처음에 적응하기는 많이 힘들다는 느낌을 받았었어요. 그런데 다시 봐도 어려워 보이네요T_T 하지만 단축키를 사용하여 많은 작업을 할 수 있다는 것이 매력적입니다. 빠르고 효율적인 것도 그렇지만 제 노트북 터치패드가 고장인데다 마우스도 가끔 정신이 나가거든요…….
1. 준석 선배의 OMS는 와우에 대한 소개가 주제였는데, 프리젠테이션에서 게임을 해보지 않은 사람들도 즐겁게 볼 수 있도록 하기 위해 많이 고민하신 것이 느껴졌습니다. 저는 와우를 플레이한 적이 있기때문에 보여주신 영상들을 전에 몇번 봤었는데 혼자 노트북으로 보는 것과 프로젝터로 앞에 크게 틀어놓고 다같이 보는 것은 느낌이 또 달라서 재미있었습니다.
1. 정모를 매주 2시간 정도로 생각하고 있는데 시작하기 전에 지연되는 10~15분 정도의 시간때문인지 항상 2시간을 넘기게 되네요. 저야 어차피 정모 이후에도 주로 학교에 남아있으니 괜찮은데 다른 분들 일정과 충돌하지 않으려나 싶은 생각이 들었습니다. 이것에 대해 다음주 3월 회고에서 이야기해보고 싶어요. - [김수경]
- 상협/Diary/7월 . . . . 59 matches
* 초반에는 여러가지것들을 균형있게 하려고 한거 같다. 그러다가 중반 넘어가서는 거의 한가지일에만 메달린거 같다. 그리고 영어 공부가 많이 부족했다. 그리고 생활도 초반에는 좀 착실하게 하려고 한거 같은데 후반에 가면, 목적의식 같은게 없어진거 같다. 앞으로는 한달에 할것들의 목적을 세워야 겠다.
* 그리고 무엇보다 충격적인 것은 다읽은 책(교양)이 하나도 없다는 것이다. ㅡㅡ;;
* 오늘은 그냥 일찍 자고 싶당.~
* 오늘은 뭔가 막 할라고 했는데.. 결국은.. 별로 못했다는 사실.. ㅡㅡ;
* 3D쪽 은선 및 은면 제거 보는데, 갈수록 이해 안가는건 늘어가고.. 보는데 걸리는 시간도 늘고..아자 화이팅~
|| 할일 || 분량 || 체크 || 비고 ||
|| 3D || 3장 끝까지 || 하기는함 || 소스를 대충보고 이해 안가는 부분도 많아짐 ||
* 오늘은 이것저것 계획만 잔뜩 잡고 여러가지 일들을 제대로 못했다.
* 그리고 포기할거는 포기해야 할거 같은 느낌이.. ㅡㅡ;;
* 오늘은 어제 계획만 세우고 제대로 안했으니깐. 하고 나서 적어야 겠다.
* 오늘은 별로 한게 없당... 오늘 기숙사에서 기분이 좀 나빠지는 일이 있었다. 그때는 막 화가 났는데, 조금만 다르게 생각하자 그렇게 나빴던 기분도 풀렸다. 역시 사람은 화를 내는것보다 웃는게 훨씬 나은거 같다.^^ 옛날에 어디서 그런 연구 결과를 본거 같다.(화를 내는 경우와 웃는 경우 신체적 호르몬 분비나 스트레스 해소나 축적 정도...) 화내는것은 자기만 손해이고 스트레스만 쌓이는거 같다. 차라리 상대편 사람에게 화난점을 말하거나 그러한 여건이 안되면, 그 사람의 입장을 이해해 보려고 노력해 보거나 그사람이 나한테 잘해줬던 일들이라도 생각해보던지 해야겠다. 그리고 사람이 한번 소심해지면 한없이 계속 소심해지는거 같다. 오늘 기숙사에서의 일도 여러가지 방향과, 여러 사람의 입장에서 다양하게 생각해보면 그렇게 기분 나쁠일은 아닌거 같다. 소심해 지지 말잣~
|| 할일 || 분량 || 체크 || 비고 ||
* 오늘은 과외도 갔다오고 이것저것 하기도 하고, 영화를 한편 봐서 딴거 할시간이 줄어 들었다.
|| 할일 || 분량 || 체크 || 비고 ||
|| 3D || 4장 마저 보고 matrix 구현 || 그럭저럭 || 쩝..||
|| 할일 || 분량 || 체크 || 비고 ||
|| 3D || 책1,2장 보고 17장좀 보다가 잘 안되서 웹사이트의 tutorial 봄(5/16) || 보는바와 같음||흠. ||
* 오늘은 하루종일 3D만 했다.(가끔 워크3도 하고..) 벽돌깨기를 만들어야겠다는 일념으로.. ㅡㅡ;
|| 할일 || 분량 || 체크 || 비고 ||
* 오늘은 뭘할까~~~ 갈수록 체계가 없어지는거 같당~~, 대충 대충 하고~
- 회원정리 . . . . 59 matches
모임에 참가를 잘 못하고, 프로젝트 활동이 미진한 사람에게 처벌이 필요하나요? 모임에 참가를 안하고 프로젝트 활동이 부진한 것 자체가 일종의 처벌이 되는 경우는 없을까요? 처벌이 아니고 보상으로써 적극성을 이끌어 낼 수는 없을까요?
한번 강제 탈퇴 당한 사람이 자기의 친구들이 자신이 관심있어 하는 내용을 공부하려고 사람을 모으는 걸 알았습니다. 과연 참여할 수 있을까요? 그 사람이 "제로페이지"라는 임의적 단체의 가상적 "선(線)" 때문에 함께 공부를 못한다면, 그럴 가치가 있을까요?
경영학에서는 최근들어 조직이론에 패러다임 이동이 있습니다. 흔히들 말하는 군대식, 위계식, 고정적 조직에서 네트워크식, 수평적, 동적 조직으로의 변화이지요. 이합집산이 쉬워졌습니다. 조직과 조직간, 개인과 개인간의 결합력(coupling)이 약해졌습니다. 하지만 한번 모인 이상 응집력(cohesion)은 높습니다. 꼭 원하는 사람들만 모일 수 있죠. 대학사회에서도 비슷한 현상들이 나타나고 있지 않나 생각합니다. 예전에는 뭔가 큰 조직에 발을 담궈놓아야 편안함과 안정감을 느꼈는데 이제는 그렇지 않습니다. "개인주의적"이라고 비판을 받기도 하지만 현실을 부정할 수는 없을 듯 합니다. 그렇다면 변화하는 패러다임에 맞는 동아리 활동은 어떤 모양새여야 할까요?
저도 상당부분 동의합니다. 그런데 제가 아직 변화에 따르지 못하는 것인지.. 아니면 아직도 대학사회가 변하지 않는 것인지는 모르겠지만 비교적 저학년에 속해있고 스스로에 익숙치 않은 1,2학년들에게는 위와같은 모습을 기대하기가 생각만큼 쉽지는 않을것 같습니다. 물론 이미 대학을 거쳐(점차 대졸출신이 많아지므로 이렇게 말하겠습니다.) '비교적 스스로에 익숙한' 사람들이 있는 사회에선 위와같은 모습을 기대할 수 있을 것이라는 것에는 공감을 하고 동의합니다. 만약 제가 시대의 흐름에 뒤따라가지 못하고 있다면 고쳐보고 싶습니다. (물론 학회차원에서가 아니라 개인적 차원에서입니다.. :) )
(참고로 이것들은 한번 생각해보자는 의미에서 꺼내는 질문들이지 어떤 비판을 목적으로 한 것이 아닙니다.)
회원정리의 기준은 회칙에서 정해진 대로 '사전 연락없이 정모 연속 2회이상 불참' 에 근거하였습니다. 미처 게시판,위키에 연락하지 못하고 회장에게 연락한 경우도 감안을 하였습니다. 또한 프로젝트, 스터디 등을 하면서 ZeroWiki 상에서의 활동여부도 참작을 하였습니다. 활동사항이 전혀 없으면서 정모에 연속 2회이상 불참이 경우가 회원정리의 대상이었습니다.(공교롭게도 이렇게하여 나온 명단의 사람들은 정모에 2,3달 이상 불참하였습니다. 자진 탈퇴라고 보아도 될 정도로 말이죠. 아무런 연락도 없이 불참하였으니까요.) 분명히 정모를 하기 전에 '회원정리를 합니다' 라고 명시를 했었고 그에 대하여 아무런 의견도 없었습니다. 회칙을 정모에서 정했던 만큼 동의하는 것으로 간주하여 회원정리 당일 정모에 참여했던 회원들끼리 회칙 기준에 맞추어 회원정리를 단행하였습니다.
그리고 사과의 말씀 FrontPage에도 올렸지만 다시한번 드립니다. 일처리를 함에 있어 경솔하였고, 성급했던 점.. 그리고 회칙을 좀더 눈여겨 보지 않고 회원정리를 한 점에 대하여 회원들은 물론 선배들께 우려를 끼쳐드린점 죄송합니다. 이런 일이 없도록 하겠습니다. 같은 과친구들끼리 서로 웃으며 대하는 친구들끼리 회원정리라는 것때문에 실관계가 서먹해지는 것은 저도 우려하는 바입니다. 홈페이지까지 삭제하는 일은 지나치다는 생각이 들었습니다. 회원정리는 개개인의 추방을 목적으로 하는 것이 아니라 학회의 부흥을 목적으로 하기 때문입니다. 그리하여 상민이 형이 Delete This Page 대신에 ZeroPagers 를 ZeroWikian 으로 바꿔놓으며 차후 연락하여 활동재개의 여지를 남겨놓으신 일에 감사드리며, 형이 미쳐 손대지 못한 홈페이지도 제가 마저 ZeroWikian 으로 바꿔놓았습니다. ZeroPagers 가 아니더라도 ZeroWikian 으로 같이 공부할 수 있다면 좋을 것입니다.
그리고 회원정리의 근거가 된 정모의 참여여부를 말씀드리자면 정모에 규칙적으로 나옴으로써 친목을 다져 스터디, 프로젝트 등의 활동에 활기를 불어넣고자 함이었습니다. 처리할 안건이 있으면 이날 모인 김에 처리할 목적도 있었구요. 그리고 정모를 '무한 자유'로 할경우 참여가 저조하다는 지적이 있어 강제성을 부여하고자 '회원자격상실'이라는 처벌을 두게 된 것입니다. 2002.1에 제로페이지와 데블스의 통합할때 '학회활동의 저조함의 원인' 의 하나로써(전부가 아니라 일부라는 점을 다시 말씀드립니다.) 정모의 불참으로 인한 회원들간의 결속력 상실을 꼽았던 걸로 기억합니다. Z&D 로 페이지 검색하면 나오는 페이지들이 당시 통합과정에서 남은 문서들입니다. 아무튼 그리하여 정모에 강제성을 두고자 회원자격박탈이라는 벌칙이 만들어졌고 일년이 지난 지금 시행하게 되었습니다.
전체 회원들의 참여도를 높게 유지해야만 하는가에 대해서는 '예' 라고 하고 싶습니다. 물론 모두의 의미로 말씀드리는 것은 아닙니다. 거의다의 차원에서 말씀드립니다. 회원들 간에 참여도가 높은 사람들과 낮은 사람들이 생기는 것은 바람직한 학회의 모습이 아니라고 봅니다. 보상이든 처벌이든 무엇으로 하든지 회원들의 참여도를 높게 이끌어가는 것이 학회의 모습이라고 생각합니다. 만약 학회내에 참여도가 높은 사람들과 아닌 사람들이 나뉠수 있게된다면 참여도가 낮은 사람들이 소외감을 느껴 결국은 ZeroPagers 라고 등록은 되어있지만 실질적으로 ZeroPagers 라고 보기 어렵게 될 것입니다. 이것은 결국 암묵적 회원정리가 됩니다. 이러한 회원들을 '유령회원'이라고 하겠습니다.(참여도라는 말에는 활동의 활발함도 포함시킬 수 있겠습니다. 써놓고 보니 의미가 부족한 것 같아 덧붙입니다.)
유령회원들은 ZeroPagers 라는 이름으로 등록되어있지만 실제로 활동은 0에 가깝습니다. 아니 0 인 경우가 더 많겠지요. 이러한 회원들을 굳이 ZeroPagers 에 포함시킬 이유는 없다고 봅니다. 학회는 살아있어야 한다는 것이 제 입장입니다. 활동이 0에 가까운 사람들은 학회가 살아있도록 한다기보단 학회의 인적규모만 표면적으로 늘릴 뿐 실질적 활동사항은 0에 가까워지게 한다고 봅니다. '겉으로는 인원이 많은 거대규모의 학회, 하지만 안으로는 활동사항이 미진한 학회.' 제가 보는 '망해가는 학회'의 모습입니다. 표현이 극단적일지는 모르겠으나 이렇게 되는 것은 하루아침에 되는 것이 아니라 서서히 참여도가 줄어들면서 만들어 질수 있는 모습이라고 생각됩니다. 이런 모습을 막기 위해서라도 회원정리라는 방법이 필요하다고 생각합니다.
제 글에 이상한 점이나 의문점이 있다면 언제든지 지적해주세요. 아직도 배울 점이 많은 후배입니다. 계속해서 관심가지고 조언해주시면 감사하겠습니다. ^^;
회원 정리는 잘 모르겠으나 경고의 경우에는 그사람들에게 이메일같은걸로 알려주어야 할거 같네여. 그래야 경고의 의미가 살거 같구여. 회원 정리는 알려야 하나 말아야 하나.. -_-;; --["상협"]
경고는 회칙에 있지 않은 조치였습니다. 경고라기 보다는 앞으로 열심히 해달라는 식의 공지였습니다만 그럴만한 정당성도 없거니와 할 이유가 없어 삭제하였습니다. 회원정리의 경우 회칙에 명시된대로 개인 연락을 하기로 하였습니다. --["창섭"]
--다시 쓰기엔 번거롭기도 하고 페이지 낭비이기도 하므로 반복하지는 않겠습니다. 위의 창준이 형에대한 제 답글을 읽어주세요. :) --["창섭"]
회원정리는 회칙에 규정되어있는걸로 알고 있습니다. 회원정리에 대해서 빠른 시일내에 공지가 있을겁니다. --["상규"]
회칙에 적혀 있는 내용에 의하면 '본인 의사로 회원 자격을 상실한다'인것으로 알고 있습니다만. '정리대상'에 오른 회원들의 의사를 확인하였나요? (글을 보면, 회원정리가 먼저고 공지가 뒤에 이루어지는 것 같은데.. 이건 순서가 안맞는것 아닌가요?)
그리고, 위의 글에서도 언급되었듯이, 특히 사람과 관계된 문제에 대해서는 좀 더 근본적인 부분에 대해 생각해보아야 하지 않을까 합니다. (수업때건 언제건 매일같이 얼굴 볼 사람들입니다.) 약간 더 극단적이라면, 현재의 'ZeroPage' 라는 그룹이 다른 대다수의 회원들(정리 & 경고 대상의 회원들이 현재의 소위 '활동회원' 수 보다 더 많은 것 같은데)에게 아무런 장점이나 이익을 제공해주지 못하고 있진 않은가에 대해서도 생각해보아야 하지 않을까요.
3년이 지난 지금. 갈수록 심해지는 분위기를 보면서 '학과 분위기야.. 어쩔수 없어...' 라는 말을 하곤 하지만, 정말로 대안은 없는 것이였을까 하는 질문을 해봅니다. 그리고, 올해 똑같은 일을 하기전에, 미리 생각하고 고민해봐야 할 문제일 것입니다. 그 전에, 우리가 추구해야 할 올바른 상태가 무엇인지에 대해 먼저 질문해야 하실것이고요. --["1002"]
중요한건 저의 '지시' 가 아닙니다. ('지시'가 되어서도 안되고요.) 정말 중요한건, 위에 나온 질문들에 대해 어떤 답을 만들어낼 것인가 입니다. --["1002"]
결코 '지시'로 받아들이지 않습니다. 선배님들의 따뜻한 충고로 받아들일 뿐입니다. 앞으로도 계속 지적해주시면 감사하겠습니다. :) --["창섭"]
- 새싹교실/2011/데미안반 . . . . 58 matches
||컴공 core||자료구조||알고리즘|| ||
으로 위쪽으로 갈 수록 상위개념이라 합니다. 선형대수학 때 배운 내용의 일부가 수치해석(3-1학기)에 들어있습니다. 그리고 그래픽스(4-1학기) 수업에서 수치해석을 전제로 수업을 합니다. 수업시간에는 '''선형대수학을 포기하라'''했었는데, C라이브러리로 그래픽을 만드는 식의 컴퓨터 그래픽스 수업에 관심이 있으신 분은 '''절대 포기하지 마세요 ㅎㅎ'''
* 아무래도 성과가 바로바로 눈에 보이게 출력하여 확인할 수 있는 함수이다 보니, 초보자가 바로 이해하기 어려움에도 불구하고 처음에 배우게 되는 듯 합니다.
* A언어 : ALGOL을 말합니다. 고급 프로그래밍 언어(어셈블리나 기계어를 저급 프로그래밍 언어라고 합니다)로 각광받던 포트란ForTran에 대항하기 위해 유럽을 중심으로 개발된 프로그래밍 언어입니다. ALGOL은 Algorithm Language의 약자로서, 이름 그대로 알고리즘 연구개발을 위해 만들어졌습니다. 하지만 ALGOL은 특정한 프로그래밍 언어를 지칭하기 보다는 C언어나 파스칼과 같이 구조화된 프로그래밍 언어를 지칭하는 말(ALGOL-like programming language)로 쓰입니다. [http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=68855131&qb=Q+yWuOyWtCBC7Ja47Ja0IEHslrjslrQ=&enc=utf8§ion=kin&rank=1&search_sort=0&spq=0&pid=ghtBIz331ywssZ%2BbORVssv--324794&sid=TYBj6x1TgE0AAE@GUeM 출처 링크! 클릭하세요:)]
아직 어렵지만 열심히 배우도록 하겠습니다. 소현누나 고마워요.
assert(val1 < val2 && val2 == 12); //val2값이 val1값보다 크고, val2값이 12와 같으면 정상작동. 아니면 오류 출력
assert(val1 != 7);//printf 도 안쓰고 값을 출력할 수 있다니 assert의 정체가 궁금 하네요.
//음 그리고 이거 실행하면 에러가 나는데 값이 7과4 맞으니까 에러 안뜨지 안나요???
return 0; //이게 왜 오류가 뜨는지 알 수 없네요 ;; 그리고 main() 괄호 안에 void 넣든 안넣든
// 그리고 float이란 실수를 정의해 주는건가요???
* assert는 '''강하게 주장하다'''라는 의미로 위와 같은 경우 val1이 7이 아니다! val2가 4가 아니다! 라고 주장한다는 의미입니다. 하지만 val1값은 7이고, val2의 값은 4니까 에러창을 띄워 주장이 잘못됐다고 알려주는 거에요. 전체적으로 의문사항은 assert문보다는 '''!='''의 의미를 잘 몰라서 그런 듯 합니다. == 는 같다, !=는 아니다라는 의미의 관계연산자입니다.
* 원래는 원칙상으로 void라고 명시해서 매개변수를 사용하지 않고 비어있다!!고 알려야하지만, 아무것도 안 쓰는 것도 비어있다는 의미로 허용해서 그렇습니다.
* [박성국] - 오늘 다양한 연산자에 대해 배우고 printf 와 scanf 에 대해 잘 이해 할 수 있었어요. 감사합니다.^^
* [강소현] - 4피에서 수업이 없는 줄 알고 괜히 이동했다가 다시 6피로 이동하는 번거로운 일을 했었는데, 앞으로는 얌전히 6피에서만 수업을 해야겠어요. 수요일 11시부터 12시까지 딱 새싹 시간에 다른 수업이 있는 줄 몰랐었어요 ㅠㅠ printf와 scanf에서 시간을 많이 투자해서, 급하게 연산자를 쭉쭉- 설명하고 끝내느라 기억에 남지 않을 것 같습니다. 따라서 연산자에 관한 간단한 과제를 내어 익히도록 하겠습니다.(?!) 준비를 잘 해와야하는데, 계속 부족한 강의라고만 하는 것은 겸손이 아니라 그냥 자기비하란 생각이 문득 들었습니다. 그 동안 푸념을 들어주어 미안했고, 앞으로는 그런 일이 없도록 할 것입니다.
* 2의 보수는 뭐고, 왜 사용하나요?
*[http://ko.wikipedia.org/wiki/2%EC%9D%98_%EB%B3%B4%EC%88%98 2의 보수]에 2의 보수에 대한 설명이 있습니다. 왜 0000 0010 의 음수 형태를 1000 0010 으로 하지 않고, 2의 보수 형태인 1111 1110 을 사용했냐! 이건 컴퓨터가 음수와 양수를 이용한 계산을 편리하게 하기 위해 그런듯합니다. 2-2를 우리야 바로 0이라고 계산할 수 있지만, 컴퓨터는 2+(-2)형태로 바꿔서 0000 0010 과 1111 1110을 더해 0000 0000 이 나오게 합니다. '''컴퓨터에서 가산기를 사용하여 뺄셈을 하기 위해 음수의 표현으로 자주 사용된다'''라고 사전에 나오네요ㅠㅠㅋ
그리고 자료형의 실수형/정수형 등등의 표현법을 배웠습니다. 평소 취약하던 부분이었는데 오늘 해결될 수 있었습니다.
* [박성국] - 오늘은 printf 를 쓰지 않고 for 과 while or do while을 사용하여 어떻게 문장을 반복하는지에 대하여 자세히 배웠다. 이해가 차근차근 잘되어서 좋은 수업 이었다.
* [강소현] - 반복문은 괜찮지만, 중첩을 하면서 안드로메다로 간 듯 합니다. 다음 시간에 다시 중첩을 해보도록 하겠습니다. 좀 더 쉽게 설명할 방법이 없을까 고민되네요 @ㅁ@;; 그리고...준영이가 콩나물 잘 못먹는다는 의견을 무시하고 콩불을 먹으러 가서 죄송합니다ㅠㅠ 소수의 의견을 묵살하지 마세요!하면서도 가길래 ㅋㅋ 아...성국이는 매운 거 잘 못 먹는 줄 몰랐고..저는 또 늦게 먹었다고 속쓰리고 ㅋㅋㅋㅋㅋㅋㅋ 이래서 의견은 존중해줘야 하는 거였군요!!(?!) 앞으로는 모두의 의견을 종합하여 해결봐야겠어요 ㅠㅠㅠㅠㅋ
printf("그리고 학교에 갔다.\n");
- CleanCode . . . . 56 matches
* 쩌네 이런데가 있네요. 안경끼고 손가락질 하는 분 엉클 밥 같으신데..? - [서지혜]
* [http://dogfeet.github.io/progit/progit.ko.pdf git 사용과 관련된 pro git이라는 책의 한국어 번역본. 상당히 자세히 나와 있다고 하네요]
* -List 라는 식의 이름을 지을 때는 정말로 List의 API들을 지원할 때에만 -List라고 붙여주는것이 좋다. 이름을 저렇게 지으면 -List의 API들을 지원할 것 같은 느낌이 들기 때문에 아닐 경우에는 -s나 다른 방식으로 하는게 좋을 것.
* 문제를 들었을 때 테스트코드를 먼저 생각하는 습관을 들여야 할 것 같다. 문제를 해결하는 코드를 먼저 짜려고 하면 결국 테스트코드 작성이 아니라 직접 테스트를 하게 되는 듯 하다.
* 피드백을 빨리 받기 위해서 테스트를 실시. 피드백을 받고 고칠 때까지의 주기가 짧아야 함. 코드를 짜고 유닛테스트를 만드는 것도 안되는건 아님. 피드백을 바로 받을 수 있으면 됨.
* 코드를 깨끗하게 하고 싶으면 테스트 코드도 깨끗하게 유지해야 한다. 테스트 코드가 더러워지면 테스트를 잘 안하게 되니까 코드도 더러워지게 된다.
* 테스트 시에는 올바른 input이 제대로 들어오는지를 먼저 확인하고 나서 코드가 잘못되었는지 생각해볼 것.
* [http://alblue.bandlem.com/2011/02/gerrit-git-review-with-jenkins-ci.html 참고 데모 동영상]
* [http://whatwant.tistory.com/419 위와는 좀 다른 참고 사이트] - 이쪽이 전체적인 흐름이나 아파치 설정 관련은 좀 더 보기 괜찮은 것 같다.
* 헐ㅋㅋㅋ 번역하니까 인스토루디레쿠토리로 나온닼ㅋㅋㅋ 전 그냥 환경변수 설정 해버렸습니다. 절대경로 쓰다가 베이스 디렉토리 한번 날려먹고 가능하면 피해범위 적도록 경로 이동해서 조작하거든요. - [서지혜]
* 함수는 하나의 일을 하는게 좋다고 하는데 플래그를 쓴다는 것은 함수가 플래그의 값에 따라서 다른 값을 한다고 말하는 것이므로.
* String.append와 PathParser.render는 둘이 서로 문자열을 합치는 작업을 하더라도 직접적인 연산을 하는 것과 추상적인 연산을 하는 것의 차이로 서로 추상화 수준이 다르다고 할 수 있다.
* 추상화 레벨이 달라지는 것을 막기 위해서는 코드를 짧게 하고 메소드로 많이 나누면 한 코드 내에서 추상화 레벨이 달라지는 것을 막을 수 있다.
* F : 시간을 컴팩트하게 진행하고 싶다. 늘어지는 경향이 있다.
* - : 본인의 코드를 리뷰받고 싶었는데 정리가 되지 않아 받지 못했다.
* F : 스터디를 제대로 하고 있는지 알고싶다. (멘토가 있었으면 좋겠다?)
* 코칭을 받고 싶다는 말인듯 - [서지혜]
* 가르쳐주는 것 까지는 아니고 잘 하고 있는건지 아닌지를 알 수 있었으면 좋겠다는거죠. 목표 얘기 하신건 확실히 제대로 하고 있는지 참고가 될 것 같습니다. - [서영주]
* 네 그래서 일부러 코칭이라고 썼어요ㅋㅋ 멘토링은 아닌 것 같고 티칭은 지양하고싶고, 스터디가 잘 되어가고 있는지를 확인하고 싶다는 맥락에선 코칭이 제일 유사한 것같아서리.. - [서지혜]
* F : 스터디 첫날 정했던 각자의 목적과 목표(어디갔지?)를 통해 스터디가 제대로 진행되어 가고 있는지 체크할 수 있을것.
- joosama . . . . 55 matches
[[HTML(<span style="font-size:9pt; letter-spacing:-1px;"><font face="Verdana" color=navy><b>)]] 3월 25일 근황보고~(∀`)」
다들 초롱초롱 메뉴를 기다리고 있었습니다.
암튼...짬뽕을 맛있게 먹고나서 집으로 가는길에..
상도역까지 걸어가자는 모선배님의 말씀을 잘 듣고.^^
라고는 하지만 집부엠티 안간게 좀 아쉽네요 ㅎㅎㅎ
이기면 자장면 사준다고 해서 응원 열심히 하면서 기다렸습니다.
이렇게 저의 근황보고를 마칩니다.~=_=)//
<시마네현아 고맙다>
그러면서 느낀것이 늘 공허한 외침으로 끝나버리고 마는 안타까움이었다.
독도문제만 하더라도,일본의 지리교과서는 물론이고, 일본에서 발행되는 어떤 지도이든지 간에 독도를 한국영토로 표기한 지도는 없다.
그러므로 당연히 일본에서 교육을 받고 자라나는 국민들은 독도가 일본영토라고 생각한다.
아니 다께시마가 아닌 독도라는 이름으로 한국이 실제적으로 지배하고 있다는 것을 알려주고 싶었다.
그러나 이번에 시마네현에서 독도 문제를 공론화 한답시고, 조례를 제정하는 바람에 일본 전국에 알려지게 되었고,
우리국민들의 분노도 분노로 끝나지 않고 향후의 적극적인 정부의 대책을 요구하게 되어,
그렇다면 우리정부는 왜 이렇게 미온적으로 대처하고 있는 것일까. 어떤 이는 독도의 소유권이 불명확해서 그렇다고 생각하는 사람도 있다.
일본이 주장하고 있는 근거의 부당성을 일일이 지적하고, 우리의 영토임을 명백히하는 여러논문과 저서등의 출판으로,
일본의 양심있는 관계학자들도 이에 대부분 동조하고 있는 실정이다.
그렇다면 시마네현과 일본의 우익들이 이렇게 자신 있게 자신들의 영토라고 주장하는 근거는 무엇인가.
조국의 경제 발전이 급선무라고 생각하여, 식민지배 보상금을 받아내는 과정에서
일본이 거론한 독도문제를 분명하게 못을 박지 못하고 못들은 척 협상에 임한 까닭이다.
- 이학 . . . . 55 matches
from 히로나카 헤이스케 NoSmok:학문의즐거움 중 '자기발견 - 묻고, 듣고, 또 묻고' 중에서..
하버드 대학에는 법률, 경제, 교육, 생물, 종교학 등 여러 분야의 유학생들이 있었다. 요사이 유행하는 말로 하면 '學際的 분위기' 라고도 할 수 있는 것이었다. 현재 의학이나 생물학에서는 무엇이 제일 문제인가? 경제학을 전공하는 사람의 최근 관심사는 무엇인가? 미국의 교육학이나 종교학은 무엇을 가르치고 있는가? 여러 학문 분야의 사람들이 마음대로 이야기하는 분위기는 그야 말로 학구적인 것이었다.
나는 그런 유학생들과 이야기하는 가운데 여러가지 이학(耳學)을 할 수 있었다. 이 점에서 내가 유학한 것은 정말로 잘한 일이라고 생각한다.
일반적으로 미국에서는 이학이 발달되어 있는데, 그 이유로는 미국이란 나라가 높은 봉급으로 교수를 고용하기 때문에 여러 나라에서 우수한 인재들이 모여 있다는 점을 빼놓을 수 없다. 이학이라는 것은 책에서 배우는 것이 아니라 직접 사람과 접하면서 그 사람이 갖고 있는 지식이나 사고 방식을 배우는 거을 말한다. 따라서 우수한 인재가 모여 있다는 것은 그만큼 '이학'이 발달될 소지도 크다는 것이다.
미국에서 '이학'이 발달하고 있음을 잘 나타내 주는 예로서 자주 거론되는 것으로 미국 사람들은 질문하는 기술이 좋다는 것이다. 사실은 기술이 좋다라기 보다 모르는 것은 무엇이든지 질문하는 습성이 있는 것이다.
이것과 관련하여 컬럼비아 대학에 있었을 때 만난 한 제자 생각이 난다. 멀리서 그의 모습이 보이면 교수들이 피해갈 정도로 만날때마다 질문을 해대는 학생이었다. 학교에서뿐만 아니라 밤 늦은 시간에도 교수 집에 전화를 해서 한 시간씩이나 질문을 하기도 했다. 외모는 뛰어났지만 컬럼비아 대학에 들어올 정도의 실력이 못 되는 학생이었기 때문에 (경력이 특이하고, 면접시 추진력을 인정받아서 입학시킨 학생이었다.) 그의 질문은 대부분 전혀 조리가 안 맞고 초점이 없었다. 나도 대학이나 집으로 걸려 오는 전화를 통하여 그의 왕성하긴 하나 시시한 질문에 몇 번이나 손을 들었다.
그런데 입학해서 2년 정도 지나니까 그는 더 이상 시시한 질문만 하는 학생이 아니었다. 가끔 질문다운 질문을 할 때도 있었고 4학년이 되어서는 마침내 우수한 논문을 써내어 학계 일류의 논문지에 발표할 정도로까지 성장하였다. 그는 그 후 내가 하버드 대학으로 옮길 때 강사로 따라왔다가, 스탠퍼드 대학의 조교수를 거쳐 지금은 캘리포니아 대학의 교수가 되었다.
이 학생에게서 전형적인 예를 보듯이 미국에서는 질문을 통해 배운다. 즉, 귀로 배우는 '이학'이 학문의 한 방법으로 널리 쓰이고 있다. 일본 사람들은 일반적으로 '좋은 질문' 과 '시시한 질문'을 구별하고, 실제로 답을 알면서도 자기 재능이나 발상을 과시하기 위하여 질문하는 경향이 있다. 미국 사람들은 좋은 질문이나 시시한 질문에 상관없이 모르는 것은 무엇이든지 질문하고 할 수만 있다면 질문만으로 다 배워 보겠다는 자세가 있다.
일류 대학의 학생이라면, 이 이학만으로 단기간 내에 상당한 수준까지 배울 수가 있다. 가령, 3,4백 페이지 분량의 책에 씌어진 내용을 배우려고 할 때, 학생은 교수에게 가서 "이 책에는 무엇이 씌여져 있습니까?" 라고 일본의 대학에서는 상상도 할 수 없는 질문을 한다. 다소 유치하고 대략적인 질문이지만, 질문받은 교수는 그에 대해서 학생에게 열심히 설명한다. 그러면 그 설명에 대해서 또 질문하고, 그것을 몇 시간에 걸쳐서 되풀이하는 동안에 학생은 그 책의 요점을 파악해 버린다. 두꺼운 책을 몇 페이지 읽다가 이해하지 못해 포기하는 것보다 질문을 하는 것이 결과적으로 좋은 효과를 내는 셈이다. 물론 상세한 부분은 스스로 읽어야 되겠지만, 대체적인 요점이나 골격을 파악하면 책에 대한 이해는 훨씬 빠르다.
학생과의 관계에서 자주 경험하는 일인데, 일본 학생은 'why' 라든가 'how'라고 질문하는 경우가 매우 많다. 말할것도 없이 'why'라는 것은 '왜'라는 것인데, 이것은 '진리(眞理)'를 물어 보고 있는 것이다. 이에 반해 미국 학생은 'what'이라는 형태의 질문을 많이 한다. "그것은 도대체 무엇이냐?" 라는 식으로 물어본다. 이것은 '사실(事實)'을 묻는 것이다.
요컨대 일본 학생은 사실의 배후에 있는 진리를 구하고 있다고 해석할 수 있다. 'why' 라고 묻는 것이 사실만으로 만족할 수 없기 때문이라면 나름대로 훌륭한 질문이 될 수 있다. 그러나 경우에 따라서는 정보(情報)를 진리로 착각할 때도 있고, 사실을 모르면서 진리라는 말을 혼동하여 자기 만족에 빠지는 경우도 있을 수 있다.
한편 사실을 확실히 알지 못하고 출발하는 것도 위험하다. 사실로 진리를 통하여 간파하는 것은 자기의 일이며 딴사람에게 물어서 해결하는 것이 아니라는 태도도 있다. 어느 쪽이 좋다고 얘기하기는 힘들지만 미국과 일본과는 그러한 차이가 있다는 것을 알아두는 것도 좋을 것이다.
'이학'은 단순히 학문에서뿐만 아니라 여러 방면에서 이용된다. 예를 들어 일본에 대해서 알고 싶어하는 미국 사람은 일본에 관해서 쓴 책을 읽기 보다 우선 주변의 일본 사람에게 자꾸 질문한다. 나도 주변의 미국사람에게서 일본에 대한 여러 가지 질문을 받은 적이 있다. 질문을 받으면 대답해야 한다. 대답해 주지 않으면 자기도 상대방에게 그와 비슷한 질문을 할 수 없기 때문이다.
어떻게 대답하면 좋은가? 일본이란 어떤 나라인가, 일본인이란 어떤 성격을 가진 국민인가? 자기 스스로도 생각해 보고 책을 읽고 배워야 한다. 가르치기 위해서는 배워야 한다. 바꾸어 말하면 배우기 위한 방법의 하나는 남에게 가르치는 것이다.
이러한 경험을 되풀이하는 동안에 일본이라는 나라의, 눈에 안보이는 특성이나 일본 사람 특유의 생활 감정, 사고방식 등에 대해서 상당한 것을 발견하게 되었다.
정말 흥미로운 내용이네요. 전국투어팀은 선배님들을 찾아가서 학문에 대한 내용에만 국한되지않은 훌륭한 ["이학"]을 하고 있겠죠? 대학 시절에 ["이학"]을 통해서 빨리 배울 수 있는 분위기가 만들어졌으면 좋겠어요. 전공에 관련한다면 위키위키가 그 대안이 될 수 있을까요?
단. 목적과 방향성없는 질문. 그리고 [http://kldp.org/KoreanDoc/html/Beginner_QA-KLDP/ 잘만들어진 메뉴얼을 읽지 않은 상태에서의 질문] 은 조금 생각해봐야 하지 않을까요. 이미 좋은 문서가 있는 가운데에서 선배들이 할 일은 '고기낚는 법' 을 가르쳐주는 것일지도.
우리는 컴퓨터공학인이라고 말하기전에는 그냥 일반적인 사람일텐데요.
공부를 효율적으로(비용 대 수익 면에서) 잘 하는 사람들을 보면, 질문하기를 잘(자주)하고 또 잘(능숙하게) 합니다. 또 하나 관찰할 수 있는 것은, 어느 누구에게 무엇을 묻든 꺼리거나 부끄러워 하지 않으면서도, 물을 때는 주변에서 가장 적당한 사람, 최적의 사람을 찾아 묻는다는 점입니다.
노벨 물리학상을 받은 리차드 파인만(그의 전기는 물리학과 인연이 없는 사람들에게도 추천합니다. 밤을 단숨에 샐 겁니다)은 이런 질문하기의 기술과 용기를 두루 갖춘 사람이었습니다. 그가 모 프로젝트의 중간에 투입되었을 때 관련 기술지식을 전혀 갖고 있지 못했습니다. 그 프로젝트의 현장 기술자들을 불러놓고 그들에게 끊임없이(대여섯시간?) 질문을 해서 순식간에 그들의 지식을 흡수한 이야기는 전설로 회자되기도 합니다.
- MineFinder . . . . 54 matches
* 추후 DP 로 확장된다면 StrategyPattern 과 StatePattern 등이 이용될 것 같지만. 이는 추후 ["Refactoring"] 해 나가면서 생각해볼 사항. 프로그램이 좀 더 커지고 ["Refactoring"] 이 이루어진다면 DLL 부분으로 빠져나올 수 있을듯. ('빠져나와야 할 상황이 생길듯' 이 더 정확하지만. -_-a)
* 지뢰찾기 프로그램의 윈도우 핸들을 얻고 해당 메세지를 보내어서 지뢰찾기 프로그램을 구동하는 루틴 관련 SpikeSolution. (아.. UnitTest 코드 넣기가 애매해서 안넣었다. 궁리해봐야 할 부분같다.)
* 지뢰찾기 프로그램의 윈도우 핸들을 얻은뒤 DC를 얻은후 화면 캡쳐. 그리고 캡쳐한 비트맵을 근거로 하여 데이터로 변환하는 루틴 관련 SpikeSolution
* 알고리즘 최적화 궁리. 3가지정도 대안 모색.
* Begineer mode 최고기록 1초, 평균 4-7초.
* Middle mode 최고기록 21초, 평균 30~50초 안쪽.
* Expert mode 최고기록 151초. 단, 깰 수 있는 확률 낮음. -_-; 아. 확률높은 찍기 알고리즘이 필요하다는. --;
* Expert mode 51초, Middle mode 11초 기록. 알고리즘 최적화에 대한 다른 관점 잡음. (하지만, 여전히 깰 수 있는 확률 낮음)
* 디자인 부분에서의 TFP의 중요성을 놓친것이 화근이 되었다는. -_-; 추후 알고리즘 부분으로 들어가면서 TFP를 게을리 한 점과 프로그램 돌아간다는 점에서의 즐거움에 시간낭비가 좀 심했다는..~
* 미션 크리티컬한 문제였다면 그냥 넘어가면 안될 일이지만. -_-; 장난감 가지고 노는 기분으로 한 일이였던지라.~ 그리 무게감을 가지고 한 일이 아닌 관계로 특별히 나쁘진 않았다.
* 현실에서 가상으로 다시 현실로. 암튼 '1002 보기에 좋았더라'. 여전히 멍청한 넘이고 주사위 던지는 넘이지만 (오호.. Random Open 때 주사위 돌리는 애니메이션을 넣을까. ^^;)
* 지금쯤 다시 짜라고 한다면 TFP를 좀 더 제대로 추구할 수 있을 것도 같다. (이 점에서 TFP를 할때 SpikeSolution 에 대한 어느정도의 충분한 시간을 두는 점이 좋을 것 같다는 생각이 들었다. 초기 SpikeSolution 으로 해당 부분을 간단하게 대강 해보고, Test를 할 수 있는 부분에 대한 구체화하기.)
[1002] 뭐. 어차피 노가다를 해도 컴터가 하는 것을. -_-v 이로서 즐기게 되는 게임이 하나 줄어버리는건가. --;; A.I. 라고 붙이기엔 너무 단순해서 좀 쪽 팔리는군. --;[[BR]]
["NSISIde"] 소스를 만지작 거리던중 피곤해서 지뢰찾기를 하게 되었다. 조옴 무리를 했는지(?) 손목이 저려오기 시작했다. 그러다가 갑자기 '퍽' 하고 동시 다발적으로 여러가지 생각을 하게 되었는데, 하나는 예전에 학교에서 열렸던 '선배님들과의 만남' 에서 소프트캠프에 있는 환국선배가 했던 말이였다.
''프로그래밍이 뭐라고 생각하세요? 여러가지 답이 나올수 있겠지만, 저는 현실세계에 있는 것들을 가상세계로 모델링하는 것이라고 생각했어요.''
자.. 노가다를 하고 있는 나의 저려오는 손목을 모델링해보자. -_-..
* 컴퓨터는 현재의 지뢰찾기 프로그램 상황을 알아서 판단하고, 해당 행동을 결정한다.
* Visual C++ (2개 열어두고 쓴다. 하나는 해당 부분부분 연습용 코드 만들 곳. 하나는 메인소스 만들 곳)
글쌔. 무엇부터 해 나가야 할 것인가. 일단은 지뢰찾기 프로그램을 제어할 수 있는 프로그램이여야 하고, 지뢰찾기 알고리즘도 필요할테고.. 우어. 정신없다. 일단은 생각나는 것들에 대해 하나하나 잡아봐야겠다.
beginner 에 해당하는 메뉴클릭시 발생하는 메세지는 WM_COMMAND 이고, ID는 wParam 으로 521이 날라간다. 즉, 해당 메뉴의 ID가 521 인 것이다. (우리는 컨트롤 아이디를 쓰지만 이는 resource.h 에서 알 수 있듯 전부 #define 매크로 정의이다.) 각각 찾아본 결과, 521,522,523 이였다.
- EightQueenProblem2Discussion . . . . 52 matches
당신은 어떤 식으로 이 문제에 접근을 했고, 어떤 사고의 과정을 거쳤으며, 어떤 과정으로 프로그래밍을 했으며, 어떤 디자인 결정을 했습니까? 만약 실패했다면 당신이 했던 것 혹은 하지 않았던 것 중 무엇이 실패의 주요인이었다고 분석을 하십니까?
이번 경험을 통해 배운 것은 무엇입니까? 별로 없습니까? 그러면 다시 한번 생각해 보십시오. 남의 경험을 듣고, 남과 토론해 보십시오. 배운 것도 없는 일에 몇 시간을 투자하는 것은 아까운 일입니다.
처음 문제를 해결할 때, 아무 어려움이나 장애도 없었나요? 지금 뒤돌아볼 때에 자신이 거친 과정 중에 "개선되었으면 하는 부분"이 있나요? 만약 이 문제를 다시 처음부터 새로 풀기 시작한다면 역시 똑같은 방식으로 프로그래밍을 할 것 같습니까(see also EightQueenProblemSecondTry)? 조금 더 깔끔하고 쌈박하게 푸는 방법도 있을까요? 어떻게 처음에 접근했더라면 더 "깨끗한" 코드가 나올 수 있었을까요? 비슷한 문제에 직면했을 때 일반적으로 적용할 수 있는 어떤 "추상적 패러다임" 같은 것을 발견할 수 있을까요? 그 코드를 난생 처음 보는 사람이 있다고 했을 때 몇 분만에 그 코드를 이해시킬 수 있겠습니까? 만약 그 사람 혼자 그 코드를 본다면 쉽게 이해할 수 있을까요? 주석이 없이도요? 혹시 코드 내에 중복되는 정보는 없습니까? 본인의 의도가 모두 분명히 드러나고 있습니까? --김창준
이미 알고리즘 수업 시간을 통해 생각해본 문제이기에 주저없이 백트래킹(BackTracking) 기법을 선택해서 슈도코드를 종이에 작성해보았고 그를 바탕으로 구현에 들어갔습니다.(''그냥 호기심에서 질문 하나. 알고리즘 수업에서 백트래킹을 배웠나요? 최근에는 대부분 AI쪽으로 끄집어 내서 가르치는 것이 추세입니다만... 교재가 무엇이었나요? --김창준 Foundations of Algorithms Using C++ Pseudocode, Second Edition 이었습니다. ISBN:0763706205 --이덕준'') 백트래킹은 BruteForce식 알고리즘으로 확장하기에 용이해서 수정엔 그리 많은 시간이 걸리지 않았습니다. 만일 EightQueenProblem에 대한 사전 지식이 없었다면 두번째 과제에서 무척 당황했을것 같습니다. 이번 기회에 코드의 적응도도 중요함을 새삼 확인했습니다. --이덕준
이문제는 처음 접해본 문제라 먼저 종이에 체스판을 그리고 직접 문제를 풀려고 해보았습니다. 그리고 생각해낸것을 종이에 적고(1여왕은 가로,세로,대각선 같은줄에 있음 안된다. 2,먼저 첫번째 여왕을 놓고 두번째 여왕이 놓일 위치를 결정한다. 3 검사하는 방법은 가로->세로->대각선 순으로 한다. 4 여왕8개가 다놓이면
놓인 자리를 알려주고 끝난다.) 이 적은 것을 토대로 코딩을 하였고 처음 여왕은 0,0에 놓았습니다. 생각한대로 코딩을 했다고 생각하고 실행을 하자 무한루프를 돌았습니다. 전 처음 여왕이 어느 위치에 놓이던간데 거기에 맞는 답이 있는거라고 생각했는데 그것이 잘못되었다고 생각합니다. 처음부터 이 문제의 답을 알고있었다면 프로그램을 짜는데 좀더 간결한 코드를 짤수있었을텐데 란생각이 들어서 코딩을 멈추고 종이를 꺼내 문제를 풀기 시작했습니다. 하지만 답은 나오지않았고 제가푸는방식(여왕을 먼저 아무위치에나 놓고 그위치에 맞게 가로세로대각선에 없는 곳에 놓는다)을 그냥 코딩을 하였습니다. 처음 여왕의 위치를 8*8에 돌아가면서 놓고 검사를 하였습니다. 무식하긴하지만 답은 나왔습니다. 두번째 과제는 처음 코딩할때부터 판의 크기와 여왕의 숫자를 define해서 썻기 떄문에 숫자만 바꾸어 주었습니다. 하지만 답이 맞는지 확신이 서지 않습니다. 그이유는 이문제의 대한 알고리즘을 모르기 때문이라고 생각합니다. 그리고 c++을 썻는데 방학동안 쭉 자바로 플밍하다가 c++을 쓴이유가 비주얼툴의 디버깅을 이용하려는 생각이었는데 무슨문젠지 디버깅을 할수없어서 참 난감했습니다. 디버깅하면 금방알수있는 문제를 눈으로 차근차근 훓으면서 봐야했습니다. --최광식
두번째 문제에 답이 있었군요.. 역시 제답이 틀리군요 실패의 원인은 제대된 알고리즘이 없다는 것이라고 생각합니다 BackTracking 알고리즘을 보고 왔지만 이문제에 대한 설명도 보왔습니다. 하지만 알고리즘에 무지해서 그런지 잘 눈에 들어오지 않습니다. 그래도 밤새 풀면서(엉뚱한 답이다도) 오래만에 재밌었습니다. ^^-최광식
''기본적으로 이 문제는 알고리즘을 스스로 고안(invent)해 내는 경험이 중요합니다. BackTracking 알고리즘을 전혀 모르는 사람도 이 문제를 풀 수 있습니다. 아니, 어떻게 접근을 해야 BackTracking을 전혀 모르는 사람도 이 문제를 쉽게 풀 수 있을까 우리는 생각해 보아야 합니다.''
저는 뭐 아무것도 없이 문제만 보고 뛰어들었습니다. 일단 두번의 실패 (자세한 내용은 EightQueenProblemDiscussion)이후 세번째로 잡은 생각은 일단 한줄에 한개만 말이 들어간다는 점이었습니다. 그 점에 착안하여. 8*8의 모든 점을 돌게 만들었습니다. 좀 비효율적인데다가 아주 엉망인 소스 덕분에.. 문제는 풀었지만.. 수정/보완에 엄청난 시간이 걸리더군요(종료조건을 찾을수가 없었다는.. 그래서 수정에 30분 이상 걸렸습니다.) 후...... 이래저래 많은 생각을 하게 한 소스였습니다. ㅡ.ㅡ;; 왠지 더 허접해 진 느낌은.. --선호
원래 만들어놓은것이 전체가 표시되는 것이여서 특별히 고친것은 없었습니다. (단, 디버깅문제로 소스수정문제 빼고는..)
BackTracking 이야기가 나오는데, 대강 수업시간에 들은것이 있었지만 그냥 연습장에 판을 그리고 직접 궁리했고요. 결국은 전체 방법에 대한 비교방법이 되어서 (8단계에 대한 Tree) 최종 구현부분은 BackTracking의 방법이 되어버리긴 했네요. (사전지식에 대해 영향받음은 어쩔수 없겠죠. 아에 접해보지 않은이상은. --;) --석천
저는 일단 10*10배열을 만들었습니다.(경계선 생각하면 귀찮아지므로..) 그다음에 1~8까지 랜덤한 수를 두번 찾아서 보드의 아무 위치에다 Queen상수를 찍어줍니다. 그리고 그 주변의 8방향을 또 다른 상수 Other로 설정해줍니다. 이제 루프 돌면서 겹치지 않게 골라주면서 Queen으로 설정해주다가 8개가 되면 종료하게.. --인수
저는 문제를 보고 각 줄별로 작업을 해도 되겠지만, 맵에 퀸이 들어갈 수 있는 자리를 정하는 것을 위주로 햇습니다.
어제 서점에서 ''Foundations of Algorithms Using C++ Pseudocode''를 봤습니다. 알고리즘 수업 시간에 백트래킹과 EightQueenProblem 문제를 교재를 통해 공부한 사람에게 이 활동은 소기의 효과가 거의 없겠더군요. 그럴 정도일줄은 정말 몰랐습니다. 대충 "이런 문제가 있다" 정도로만 언급되어 있을 주 알았는데... 어느 교재에도 구체적 "해답"이 나와있지 않을, ICPC(ACM의 세계 대학생 프로그래밍 경진대회) 문제 같은 것으로 할 걸 그랬나 봅니다. --김창준
(위키 역시 머리털나고 처음인데... 이거 상당히 매력적이네요..^^;;
학교에서 알고리즘 시간에 너무 많이 놀았기 때문인지.. -_-;; 우리 학교에서는 BackTracking이 AI시간에 배우는 부분이라서 그런지..
BackTracking에 대해 찾아보니 결국 제가 한 방법이 그 방법이군요. 알고리즘자체는 좀 틀리지만 (전 리커시브를 이용...)
특히 자료구조나 알고리즘같은 기본 과목을 소홀히 했던게 너무 후회가 되는...T_T
내가 조금 성장하는 만큼 세상이 점점 넓어지는게 느껴집니다. 세상은 넓고 고수는 많다~~~
- neocoin/Log . . . . 52 matches
* 감기걸려 죽도록 고생;;
* 개학하자 정신이 없다. 1학기 보다는 더 여유로운데 불구하고, 종종 놓치는 것이 발생된다. 이것이 지난달에 잃어 버린 스케줄러의 역할이 었으리라.
* 주어진 비트맵 파일의 정보중 2x2 픽셀의 평균값으로 모자이크 복사본을 제작하고, 저장할수 있다.
* 책에 대한 기록을 느낌을 적게 기록하고, 기억남는 문구의 인용으로 대체하여 보았다.
* pc실의 컴퓨터 나르고, 덕분에 용철이형 알게됨
=== 방학때 하고 싶은 일 마구 적어놓고 고르기, 방학 초기에 적힌것 ===
* 다시 위의 확장으로 GJ 학습, Java의 Polymorphism과 무슨 차이가 있는가 성능상 차이는 어떤가, 보고서 작성: 마소에 나온 관계로 유보
* 이번달 마소를 보니, Tiger에서 추가될 개념이 C#에서 구현된 것이 많다. 대체 무슨 이점이 존재하는가 보고서 작성, 추가되기를 원하는 기능과 삭제되기 원하는 기능에 대한 보고서 작성
* 학습에 대한 의견, 사실 보고서 작성
* ["ProjectZephyrus"] : 이게 한 20일에 시작한줄 알았는데, 기록을 보니 12,3일 경에 시작한듯 하다. 남는 자원을 이쪽에 최대한 할당을 하려고 했는데, 욕심에 차지는 않는다. 일단, 본 궤도에 오른것 같고 부가적인 코딩 작업만이 남은것 같다.
* 4월까지 책의 저자들이 나에게 말해 준것들에 관한 분류, 기억에 남는 것들에 대한 기록을 소흘히 했다. 물론 마인드 맵식으로 설명하라고 하면 설명 하겠지만, 역시나 아쉬운 감이 있다.
* 5월이 끝나는 시점에서 Read의 수를 세어 보니 대략 55권 정도 되는듯 하다. 200까지 145권이니, 여름방학 두달동안 60여권은 읽어 주어야 한다는 결론이 난다. 부담으로 다가오는 느낌이 있는걸 보니 아직 책에 익숙해지지 않은것 같다. 휴, 1,2학년때 너무 책을 보지 않은 것이 아쉬움으로 남는다. 남들이 4년에 읽을껄 2년에 읽어야 하니 고생이다.
* 스케줄러를 보면 이번달도 그리 한가한 달은 아니었다. 하지만, 고질적인 문제점인 금요일에 헤이해 지는 것을 고쳐야만 한다.
* 4월달에 많이 읽을 생각이었지만, 복병인 중간고사가 나를 괴롭힌다. Green gables of Ann 이 2권 남긴채 저 만치로 관심에서 벗어났다. 5월달에 끝내리
* 4월 한달은 그저 학교 공부에 읽고 싶은 읽은 책을 읽은 정도이다. +알파 에 해당하는 것들을 많이 안했다고 할까. 그나마 책을 읽은 것도 목표 한바를 채우지 못해 아쉽다.
* 중간고사 때문에 정신력, 의욕이 많이 소진된것 같다.
* 각종 도표나 자료에 한국에 대한 희망적인 소식들로 채워져 나가는 느낌이다. 대선 막바지에 정권 재창출을 위한 언론에 눈가림일까? 아님 정말로 한국이 흑자를 보는 것인가. 중고등학교때 무역 도표에서 몇년째 적자인 나라가 왜 잘 돌아가는지 의문을 IMF가 답해 주었는데, 진짜 2만불까지 갈수 있을까.
* ["MoreEffectiveC++"] : 03.08 완료. 해당 책에 내용이 완료 되었다. 방학중에 나 뿐만 아니라 다른 한국인도 알아 먹을수 있게 고칠 생각이다.
* 3월달은 13.5 권을 보았다. 양적 측면에서는 1,2월에 본 것에 2배 정도를 본것 같은데, 양적 측면에서 따지면 더 늘어 난다. 4월에는 중간 고사가 있겠지만, 20권 정도를 목표로 잡고 있다.
* ["OpenGL_Beginner"] : 3월중에 관련 내용을 딱 두번 보았지만, 문서화 시킬만한 꺼리는 아니다. 유보 할것이고, 포기하는 만큼 학교 공부를 하자.
- 위키설명회2005/PPT준비 . . . . 52 matches
자신이 하고 싶은 공부를 뜻이 같은 여러 학우들과 모여 서로 도움을 주며 스터디를 하는 곳이다.
그리고 단순히 공부만 하는 학회도 아니다.
주소 영역을 8bit 만 사용, 상위 8bit 은 00 으로 가정하고 addressing 을 하면
$0000~$00FF 가 됩니다. 이렇게 주소지정 을 해서 더 빠른 access 가 가능했다고 합니다.
이 메모리 주소 영역을 zero page 라고 하는군요.
시간과 장소를 과게시판, 과방, 위키, 엘레베이터에 미리 공지하고, 당일에 늦게 오는 사람을 위해 구피에 모이는 장소를 공지한다.
일단 제로페이지에서 있는 자료를 중심으로 내용을 만들어 봤어요. 수정할 부분 있으면 적절히 해주세요. 그리고 금요일에 모이는 거 맞죠? -[윤성만]
그래 수고했다. ppt열심히 만들어보마. 근데 금요일에 모이다니? --[강희경]
저자동성 고유연성. 효과적인 지식공유 방법
- 세계에서 가장 큰 위키위키는 위키백과사전인데. 많은 사람들이 한 글자씩 더하여 완벽한 백과사전을 만들고자 하는 위키 백과사전입니다.
- 한국에서는 노스모크가 최초로 실용적인 위키를 도입하였고, 한국에서 가장크고 세계에서 10번째 내외의 큰 위키입니다.
일일업무보고, 블로그
저항 : 책임만 주어지지 않으면 쉽다. 도입하고자 하는 이의 노력필요
많은 사람이 참여하지 않아서 위키가 널리 퍼지지 못하고 있지는 않을까 생각해 봅니다.
- 위키에 익숙해지다 보면 솔직히 디자인은 그다지 신경 쓰이지 않고, 어떤 CSS를 쓴다면 눈이 편할까에 집중하게 된다. 물론 위키 전도사가 되려면 초보자들을 위한 배려에 대해 많이 고민해야 한다.
쓰레드 모드란 게시판에서 볼 수 있는 '답변달기' 식의 방식이고 도큐먼트 모드란 존재하는 텍스트에 수정을 가하는 방식이다.
쓰레드 방식은 최근 올라온 순서대로 게시물을 보여주기 때문에 이전에 있었던 질 높은 게시물들은 사장되고 이러한 이유로 해서 게시물들 간의, 이용
자들 간의 소통이 반복되고 방해받게 된다. 이에 대한 대안으로서 도큐먼트 방식은 이미 완성된 텍스트가 아닌 점점 완성되어가는 텍스트를 지향하고
누군가가 텍스트를 올렸는데 그것에 잘못된 부분이 있다고 생각되면 누구라도 그 텍스트를 변화시킬 수 있다. 또 그 변화가 적절하지 못하다면 다시
누군가가 돌려놓을 것이다. 이러한 과정을 겪으면서 텍스트는 풍부해지고 정교해지는 방식이다.
- 정모/2011.7.18 . . . . 51 matches
* 참가자 : [김수경], [서지혜], [권순의], [김준석], [송지원], [임상현], [김태진], [정진경], [고한종]
* 주자 : [고한종]
* 요즘 다니는 학원 선생님 왈.. 긍정적인 자세는 좋지만, 무작정 긍정적인 자세 보다는 현실을 직시하는 것이 우선이다. 라고 하시며 자신이 아는 50대 정도의 아저씨 이야기를 해 주셨는데 50대가 되면 이 나이대 절반의 남성은 불행하고, 그 나머지는 고군분투한다. 즉, 세상은 우리가 생각하는 것 만큼 만만한 곳이 아니니 무작정 난 잘된다라는 것 보다는 현실을 직시할 줄도 알아야 한다라고 하셨네요 - [권순의]
* 긍정적으로 행동하고 부정적으로 계획하는 능력이 필요합니다. '왜 일하는가'라는 책에서 읽었는데 아이디어나 목표를 정하고 추진하는 것은 긍정적인 사람에게(책에서는 가연성 인간이라고 표현했음) 계획과 평가는 부정적인 사람에게 맡기면 좋다고 했었습니다. 낙관적인 것도 현실적인 대안 없이는 그저 생각없는 사람일 뿐이라 생각합니다만 그렇다고 긍정의 자세를 버리는 것도 생각없는 사람인듯.. - [서지혜]
* ACM문제를 풀면서, 코드짜면서 생각하는게 더 빠른거 같아~ 라는건 헛소리라는걸 깨달았습니다. 코드를 짜기에 앞서 여러번 생각해보고 많은 예외상황을 고려한 후에 확신이 들때서야 코딩하는게 서너번씩 새로 짜지않고 바로 좋은 코드를 짤 수 있는 방법인거 같았습니다. -[김태진]
* 막상 떠오르는게 없어서 진짜 리빙포인트를 얘기해버렸는데... 근데 정말로 3근에 만 원 하는고기 콜라에 담가뒀다 먹으면 먹을만 하긴 해여모름지기 싼고기는 양념을 해먹어야 평타/ 다음엔 진지하게 생각해서올게요...-[고한종]
* 고기 냄새 빼는데는 마늘만한게 없답니다. - [지원]
* 그렇게 진지할 필요는 없지만 정모는 한정된 시간동안 진행되는거니까 조금 더 함께 알면 좋은 걸 공유하는 시간이 되었으면 좋겠어요:) + 사실 고기는 비싼 고기를 사먹는 게 최고라고 생각합니다... 엥겔 지수가 높아지더라도... - [김수경]
* '''문제를 인식했을 때 일단 멈춰서 생각하는 게 중요하다''' 매번 브레이크를 거냐라고 생각이 들겠지만 문제가 스스로 사라지는 일은 거의 없는데다 스스로 자라는 성질이 있어서.. 특히 팀플레이에서는 문제인식을 공유하는게 중요하다고 생각해요!! 나중에 피바람이 붑니다. - [서지혜]
* [wiki:JosephYoder방한번개모임]을 참고해주세요.
* (아이폰 사파리가 스크롤이 없어서 잠시 새치기 할께요 ㅠㅜ)첫 OMS를 하게 되었습니다. 사실 내용이 참 빈약해서... 아 재미 없고 망하는거 아닌가 걱정했는데 다른 후기들 보니까 생각보단 반응이 좋네요. OMS끝난뒤에 했던 활동은 저에겐 너무 어려워서 졸고 말았습니다 .. 죄송해요분명히 OMS시작 5분전만해도 잘되던 팀뷰어가 잘안돼서 당황했음 - [고한종]
* 후기는 작성한 순서대로 쓸 필요 없으니 새치기해도 괜찮아요~ OMS는 원래 거창한 세미나라기보단 관심사를 공유하는 코너라서 부담가질 필요 없답니다. 그리고 내용 전혀 빈약하지 않았어요!! - [김수경]
* 방학중 정모에서 제가 공부한 것을 공유하는 코너를 진행하겠다고 했는데 지난번엔 정모를 짧게 끝내느라, 이번주는 다른 공유들이 있어서 계속 안 하게 되네요 ㅋㅋ 사실 시간 떼우려고 생각해낸 코너라 못하게 되는 게 바람직한 것 같습니다(?) 이번 OMS는 리눅스 서버를 직접 돌려보는 것에 대한 내용이었는데 저는 1학년때 리눅스가 뭔지도 그냥 들은 정도로만 알고있었던 기억이 납니다. 그런데 새내기가 직접 서버 구축하고 그 내용을 정모에서 공유하는 걸 보니 부럽네요ㅠㅠ 저도 그런 경험을 해봤으면 좋았을텐데... - [김수경]
* 처음 OMS를 보면서 우리집 컴퓨터도 이제 6년차에 돌입했는데.. 저렇게 써야하나 라는 생각이 들다가 그냥 이상태로 쓰지 뭐 이런 생각이 든 -_-;;; 암튼.. 저도 1학년땐 리눅스를 사용하는 모습만 보고 직접 써 보지는 못했었는데 사용하는 모습을 보니 대단하다는 생각이 드네요. 리빙포인트를 하면서 학원에서 들었던 이야기랑 삼수때 겪었던 이야기가 믹스되어 말하게 되었네요. 원래는 그냥 학원 이야기만 하려고 했는데 -ㅅ-a Joseph Yoder 와의 만남 후기를 들으면서 스티브 맥코넬씨가 쓴 Code Complete라는 책에서 이야기 하는 내용과도 많이 겹치는구나 라는 생각을 했습니다. - [권순의]
* 한종이가 집에 남는 컴퓨터를 굴리는 방법을 OMS해 주었죠. 서버쪽은 아직 관심이 없어서 전혀 손대보지 않고 있었는데, 한종이는 진규한테 여러모로 들었다거나 혼자 여러가지를 연구해보아 많은 것을 알고 있는거 같았어요. (그러나 리눅스에 대한 관심이 일어나지는 (아직) 않았습니다..ㅠㅠ) 지원이누나가 해준 DB2에 대한 설명(과 IBM에 대한 설명)에서는 우리과에 관련된 스키마를 여러가지 얻을 수 있어 좋았던거 같았어요. 항상 ZP형누나들이 많은걸 알려주셔서 정말 즐겁네요. ㅎㅎㅎ-[김태진]
* 과에 대한 스키마는 어디까지나 예시였고 뭔가 세미나가 아니고 이런걸 하겠다~ 였는데 알려줘서 즐겁다니 부끄럽군요 - [지원]
* 늦잠자서 늦게갔는데 마에땜에 중간에 나갔어요.. 흑흑 부외활동을 하면서 새삼 느꼈는데 지피 정모는 정말 좋은 활동입니다.진짜진짜로. 전공 관련 정보들도 얻을 수 있고 몰랐던 내용을 소개받을 수도 있고 남이 공부해서 떠먹여주기도 하고 외부 활동 정보도 얻을 수 있고 영어나 책읽기등 전공외 활동이야기도 들을 수 있고 이런 모임이 세상에 어디있나요ㅠㅠ 방학이라고 학교 오기 귀찮으신건 알겠지만 정말 유익한 자리입니다. 같이해요ㅠㅠ - [서지혜]
* 점점 새내기들의 수준이 높아지고 있어요. 이 졸업반 누나는 절망하고 있답니다. 지혜 말마따나 유익한 자리이고 선배가 그런 유익한 자리를 만들어줘야 하는데 제가 참 해줄 수 있는게 많이 없어서 슬프네요.. - [지원]
* 인원이 적었던게 아쉬웠습니다. 좋은 얘기는 그래도 여전히 많이 나오네요. OMS는 점점 익숙해져가는 단계인것 같아서 좋습니다. 갑자기 서버를 만들고 싶어지네요. 프로젝트를 발표하면 Addon을 만드는 결의를 다지고 갑니다. 다음주에도 좋은 정모가 되기를 - [김준석]
* 전에도 있었는데 한동안 안 했을 뿐.. 돌아온 OMS지. 그리고 지난 몇년간 위키를 활발히 안 써서 했던 활동도 위키에 기록이 잘 안 남아있어 ㅋㅋ - [김수경]
- 조현태/놀이/지뢰파인더 . . . . 51 matches
그런데 작동 시간이 길고 성공률이 낮았던 기억이..(맞는지는 모르겠다.)
머리는 여러가지 알고리즘을 바탕으로 구상중이다.
음.. 위에 두 메시지가 직접 클릭했을때고, 밑의 4개가 '손'이 보낸 메시진데..
뭐 잘 작동하니..~.~ 뭐 어떻게든 되겠지... 공부를 해야하는데 공부도 안하고 남이 만든거 분석도 안하고
혼자서 마구 만드니 뭔가 잘못되가고 있는 느낌이..;;
그런데 클래스란거 배우지도 않고 막 써도 되는건가..ㅠ.ㅜ 나쁜습관이 들지도..^^;;
한 클래스에서 다른 클래스를 붕어빵 찍듯이 찍어내고, 또 그 클래스가 여러개로 찍혀나가게 했는데..
거기다 알고리즘이 생각보다 복잡해서 머리를 썩히고 있다. 끄응...역시 자료구조를 정하는게 가장 중요한 일인겨..;;
내일 레인져의 머리를 완성하고, 모레 레인져의 머리가 돌아가도록 짜주면 완성될 듯 하기도 하다.
만들고, 고치고, 지우고... 거의 없는시간에 만들려니 힘들다.^^
거기다 알고리즘이 정확하지 않아서 여러번 수정하다보니.... 에휴..ㅎㅎ
* 어제 피곤해서 일지 적는걸 잊어서 오늘 적고 일하러 감..^^
자면서 작성했더니, 소스가 이상해졌다. 본인도 뭐가 뭔질 모를뿐더러, (사실 자면서 짜서 지금 어디 짜는지도 모르고 작성했다.)
디버깅 작업이 난관에 부딫혔다. 끄응.. 수정해나가면서 일단 완성하고 봐야겠다. 만들고나면 전체적으로 대대적인 수정작업을
킁..ㅠ.ㅜ 재앙이다..;;ㅁ;; 앞으로는 이렇게 짜지 말자는거 이외에는 뭐라 할말이 없다. 오랫동안 손대지 않았던 터라, 알고리즘이 잘 생각이 나질 않는다. 그래도 내가 짜서 그런지 금방 알고리즘을 생각해내는데는 성공했지만... 많은 부분을 수정했으나, 더 많은 재앙들이 초롱초롱한 눈빛으로 나를 반기고 있다. 이쁜 아가씨면 반겨주겠지만 이런 버그덩어리라니.. 도데체 어느 부분에서 잘못된 메모리를 엑세스 하는건지..흑흑 어빠햐가 잘못해떵..ㅠ.ㅜ 제발 정상적으로 작동해줘..ㅠ.ㅜ API의 특징인지...내가 못해서인지.. 테스트가 콘솔창보다 용의하지가 않다. 수없이 조각조각 나있는 할당된 메모리의 파편을 일일이 추적하자니.. 트리나 링크드리스트 형식의 문제점이라고나 할까..;;ㅁ;; 도데체 어디서 잘못된겨~!!! !@#$%^&*()...... 그래도 실행하면 지뢰 한 2-3개.. 숫자 한 2-3개는 찾고 뻗으니위안은 된다.(참고로 아직 지뢰를 건드린적은 없다!!) 수정해야할 부분 태산.. 만들어야 할 부분 태산.. 휴가가 극도로 짦은걸 보면 방학중에도 만들어야 할지도... 뭐 나름대로 앞으로 프로그램을 어떻게 짜야 할 지에대해서 조금은 도움이 되겠지뭐..ㅠ.ㅜ 흑.. - [조현태]
계획 전면 수정. 알고리즘 및 소스 재작성 돌입. 과거 단순 "로봇을 이용해서 마호로매틱 쵸비츠..는 아니고 어쨋든 멋지게 만들어 보자!" 에서 "로봇만 이용하는건 넘흐 어려벙~ 다른걸 섞어봐야겠어~!" 로 변경. 사용하기가 편하고 검색속도가 빠른 기존의 방법과 정확도가 높은 로봇을 밀가루와 팥이만나 붕어빵이 되듯.. 잘 섞어보기로 결정했다. 새로 모든소스를 작성하고 기존 소스의 심각한 문제점이었던, 어설픈 분할과 최악의 테스트 조건(윈도우 지뢰찾기는 실행해서 어떤 맵이 나올지 모른다. 또한 테스트 시간이 길고 준비가 필요하다)을 극복하기 위해서 수정을 가했다. 좀더 체계화된 분할로 좀더 보기편하고 소스에 간지가 흐르도록 하였으며, 테스트 주도개발의 내용에서 눈꼽의 반만큼을 이용, 편리한 테스트 환경을 만들었다. (나름대로 진보환 환경과 소스!) 가슴은 아팠지만 재앙보다야 나을거라고 생각한다. 그리고 로봇..그 부분은 아직 경험이 없어서(데블스 캠프에 만들어 본게 다..)그런지 조금 빡세다. 뭐 그래도 한번 실패도 했으니, 더 쉽게 만들어 질 것이라고 생각하고 만들기로 결정했다. - 2005.08.13
드디어 로봇 완성. 저번보다 더 간지나는( 구조화가 잘된) 알고리즘 표현과, 훨씬 편한 테스트 환경으로 저번에 비하면(어디까지나 비해서다. 아직 어려운 점이 많아 고생을 많이 했으며, 새로운 자료구조가 본인이 만든 탓인지 뭔가 복잡하다.ㅎ) 순풍에 돛을 단듯 아주 순조롭게 진행되었다. 그래서 로봇을 완성. 손과 눈을 api로 바꿔주고 지뢰찾기를 향에 발싸~!... 실패... 만능은 아니라서 시작한 지점에 2가 떡하니 나와준다면.. 얘도 찍어야 한다. (물런 찍어야 하는 상황에서 사람보다야 높은 적중률을 보이도록 설계했으나.. 이런 최악의 상황은 사람이나 프로그램이나.. 오히려 사람이 낮다.) 두번째.. 오옷..1초만에 성공... 세계신기록이야~ ~_~ 후후후.. 아~ 이날아갈듯한 기분..ㅎ (혼자 행복에 겨워서 뒹굴었다.ㅎ) 세번째.. 알수없는 오류가 깊은산속 옹달샘에서 발생.......OTL.ㅎ 그래도 어쩄꺼나!!! 성공시켰다. 후후후.. 이제 남은 디버그따위..ㅎ 사뿐히 해결해주짓..(역시 테스트 환경이 좋으니 작업이 잘 진행된다. 꼭 염두해두자.ㅎ) 어쨋든 오류가 떠도 지금은 행복하다.ㅎ ~_~ 일해야 되서 지금은 못해도.. 시간나는데로 해서 완성시켜주마~ >ㅁ<;;; - 2005.08.14
고급... 생각외로 풀기 어려웠잖아~'ㅇ')////
|| 2005.07.10 || 머리역활을 하는 레인져(이름을 레인져라고 붙였다!!^^)에게 다리를 달아주었다. ||
|| 2005.07.12 || 레인져의 머리를 95%작성. 머리의 생각알고리즘을 25%작성..||
- DesignPatterns/2011년스터디/1학기 . . . . 50 matches
1. 여름방학때 1, 2학년들과 함께 OOP 스터디를 진행하고싶다.
1. 0장 읽어오고 밑줄긋기(안함), 내용에 대해 이야기 나누기
1. 좋은 설계는 천재 프로그래머에 의해 한번에 만들어지는게 아니라 고민하는 프로그래머에 의해 지속적으로 만들어 지는 것 이다. 용기를 주는 말입니다.
* 왜 디자인 패턴을 쓰느냐?, SOLID를 공부했습니다. 오랜만에 공부를 잘 안돌아갑니다. , 열심히 공부해야겠습니다. 삽질을 덜하고 싶습니다.
1. 알면 알수록 오류는 정정되고 지식은 쌓이는 기분.
1. 이번 스터디는 책도 미리 읽어보고, 밑줄도 다들 열심히 그어서 더 재미있었다.
1. 책에 나온 교차 통풍 패턴을 예로 들어 말하자면, 정적인 구조를 볼 때 마주보는 양 쪽 벽 비슷한 높이에 창문이 있는 사무실은 교차 통풍 패턴에 속하는 것처럼 보일 수 있다. 그러나 창문 앞에 커다란 건물이 있으면 바람을 막아서 창을 통해 바람이 들어오지 않는다. 교차 통풍 패턴은 마주보는 양 벽에 각각 창이 있다는 그 자체로 실내 공기를 쾌적하게 만드는 것이 아니라 창을 통해 바람이 불어들어오고 불어나감으로써 실내 공기를 쾌적하게 만드는 것이다. 따라서 교차 통풍 패턴에서 마주보는 양 벽에 창이 존재한다는 정적 구조 보다는 창을 통해 바람이 들어오고 나가는 동적인 행동 양식과 그것을 통해 실내 공기를 쾌적하게 만든다는 의도가 중요하다고 할 수 있다.
1. 책의 일부 내용으로 미루어보아 절차지향적 패러다임이 판칠때 OO를 들고 나와 절차지향의 수호자들''--절차지향으로 코드 잘 짜지도 못 하는 허접들--''과 격한 키배를 수도 없이 펼치지 않았을까…
1. 무엇이든 생각없이 받아들이지 말고 장점과 단점을 모두 생각한 후에 지금 사용하기 적절한지 판단하고 적용하라는 아주 중요한 메세지가 반복되어 나온다. 다시 한번 되새기는 시간이 되었다.
* 처음에 모든 기능을 고려하기 보다는(미래의 것까지) 기능을 확장할 수 있도록 유연하게 설계하라.
4. 자구 과제를 하면서 이렇게 짜면 안되는데 이러면 코드가 개판인데 느끼고 있으면서 그렇게 밖에 할수 없는 능력이 슬펐습니다. 더 공부해서 잘짜야겠습니다.
1. 밑줄긋기 시험 끝나고 하겠습니다.
2. 프로젝트 설계를 하는게 매우 신기했습니다. 가장 최근에 했던 프로젝트가 약 2년 전이라 하나도 모르겠는데 모듈을 잡고 그 모듈의 역활을 잡고 그에 따라 인터페이스를 만들고 하는 걸보고 생각없이 그냥 순차적으로 프로그래밍 하려고했던 제가 참 답이 없었던거 같습니다.
3. "어떤 작업을 수행하는데 필요한 데이터를 요구하지 말라!!! 대신 정보를 가지고 있는 객체에게 일을 해달라고 부탁하라!" 항상 데이터를 get으로 꺼내와 바꿔놓고 set으로 넣어놨던 제 자신을 반성해 봅니다.
4. DB 수업을 듣지 않아서 완전히 참여는 하지 않았지만 DB팀이 하는 프로젝트가 진행되는 모습을 계속 보고 싶습니다.
1. 드디어 1장을 다 읽었다. 1장에 정말 중요한 내용이 많다는 것을 후기를 쓰려고 돌아보며 다시 한번 느낌. 이 책을 읽으면서 1장을 건너뛰고 각 패턴에 대한 설명만 찾아보는 사람이 있을 거라 생각하니 답답함. -L-
1. CRC 모델링에 대해 설명하는 부분에 '''도메인 영역의 언어로 문제를 기술하라'''는 말이 인상적이었다. get과 set을 사용할 필요가 없다는 걸 와닿게 하는 말이었다. 언젠가 정모에서 ''체험 OO 현장''같은 활동을 해보고 싶음. 우리 모두 객체가 되어보아Yo :)
* 2장 103쪽 전까지 읽어옵시다. 그리고 ["HolubOnPatterns/밑줄긋기" 밑줄을 그어요~]
1. 상속구현이 나쁘다고 말한다. 그래서 그런지 나뻐보인다. 코드가 꼬이니까.
1. 쩌는 형님들은 잘 쓰시겠지만 코드가 꼬이는 모습을 보니 내가 하는 상속구현은 일단 슬퍼질 가능성이 매우 높으므로 생각에 생각을 해서 쓰던가 아니면 닥치고 인터페이스 구현을 해야겠다.
- 데블스캠프2011/둘째날/후기 . . . . 50 matches
* 사실 스크래치를 접해보는 건 이번이 두 번째군요. 2009년 데블스캠프에서도 한 번 다루었던 걸로 기억합니다. 스크래치는 원래 아동 교육용으로 만들어진 프로그래밍 언어라고 들었습니다. 그런데 아동용이라고 대충 넘기기에는 기능도 생각보다 훨씬 다양하고 능력도 강력한 것 같아요. 1학년 떄는 이래저래 미숙한 부분이 많아서 그런 부분을 볼 여유도 없었는데 다시 보면서 약간 여유가 있어서 그런지 잘 만들었다는 느낌이 새삼 들었습니다. 그리고 이번에도 2009년 때처럼 게임을 만들기로 했었는데, 이번에는 다행히도! 제대로 돌아가는 게임을 만들었습니다. 사람이 그래도 발전이 있긴 하군요. 앞으로도 열심히 해야겠습니다.
* 겉모습에서 일단 코드가 나오지 않으니 확실히 잘 모르는 사람도 생각하기 쉬울 것 같습니다. 다만 반복문 구문 블록이 여러개로 나뉘어 있는데 비슷비슷해 보여서 좀 불편하기도 하더군요. 하지만 중요한건 언어의 사용법이나 형태가 아니라 만드는 사람의 실력에 달렸다는걸 만들면서, 그리고 다른 분들이 만든 물건들을 보면서 다시 한 번 느꼈습니다. 어릴 때부터 이런걸로 교육받고 자라면 코딩 잘하려나 -_-
* Scratch참 재밌었습니다 ㅋㅋ. 하다보니까 로보랩느낌도 나고 코딩도 미리 만들어져있는 명령어 끌어다하니까 다른 언어보다 쉽게 느껴지구요. 고양이 움직이는 것도 귀여웠고 생각보다 꽤 다양한 것을 구현할 수 있어 놀랐습니다. 마지막에 핑퐁게임을 만들었는데 생각보다 버그가 많아서 아쉬웠네요 ㅜㅜ.
* 처음해보는 Scratch 였습니다. 그림을 끌어다 놓고, 명령어들을 끌어다가 추가시키면서 프로그램 진행을 구성하고... 독특하고 신기했습니다만 정작 익숙해지기에는 힘들었습니다. 코드로만 하다가 이렇게 짜여진 틀을 움직인다는게 어색해서 짜고있던 게임을 완성시키지는 못 한것이 아쉬었다.
* 제가 처음 준비했던 컨텐츠였는데 성현이가 세미나를 진행하니 감회가 새로웠습니다. 저는 09년 때 간단한 인터페이스만 가르쳐줬는데 학우들이 창의적인 컨텐츠를 많이 만든 반면 성현이는 기능 하나하나 상세히 설명해주어서 제가 몰랐던 기능도 많이 알게 되었습니다. 수업을 들으면서 플래시 같은 애니메이션을 만들었는데 갑자기 게임을 만들라고 해서 소닉이 좌우로 이동하는 것밖에 못 만들어봤네요 ㅋㅋ 그래도 이동할 때의 모습을 바꾸는 데에서 삽질 끝에 성공해서 뿌듯뿌듯했습니다. 저의 Scratch 작품의 포인트는 역시 '음악' 입니다.
* Scratch를 어제 블럭 쌓기라고 해서 무슨 테트리스 같은 거라고 생각했는데, 오늘 보니 아 이런거구나 하는 것을 알게 되었습니다. 꼭 프로그램 짜기 전에 의사 코드로 하는 것 같더군요a. 마지막에 성현이가 게임 만들으라고 해서 뭐 할까 하다가 슈퍼마리오 배경도 있고 해서 그걸로 좀 비슷하게 하려고 했는데, 파이프에 닿았을 때 그걸 넘어가게 하는 걸 하려다 망했네요 ㅋㅋㅋ 그러다 보니 그냥 마리오가 움직이고 뛰기만 하는 걸로 끝났습니다. 좀 더 도구를 잘 활용하지 못함이 아쉽긴 했습니다.
* Scratch!! 오늘 했던것중에는 가장 재밌게 했습니다. (하나는 약간 강의위주였고, 하나는 저희에게는 좀 어려웠으니까요..;) 저는 학점 나올 시즌이 되었기에 그에 걸맞게(?) A학점 잡기 게임을 만들었어요. F학점의 추격을 피하며 B학점을 챙기고, 최종적으로는 A를 몰아넣어서 잡으면 되는거 였지요. 사실 다른데서 만들어 놓은 마우스 피하기에 약간 영감을 받은거였지만.. 아무튼 3시간이 부족하다 느낄정도로 재밌게 했어요. 다만 끝에 시간이 모자라 다른사람들이 한것들을 함께 보지 못한건 좀 아쉬웠던거 같아요.
나중에 기회가 된다면 좀더 넓은(?) 세계를 보여드리고, 거기서 생각할 수 있는 정보보안 기법에 대해서도 이야기해보도록 하겠습니다!
* Hacking != Cracking. Cheat Engine, 자바스크립트를 이용한 사이트 공격? 툴을 이용한 Packet Cracking 등 개인적으로 무척 재미있던 세미나였습니다. 뭐... 사실 많이들 관심은 있지만 실제로 하는 걸 보는 건 흔치 않은 만큼 이번에 세미나를 볼 수 있었던 것은 여러모로 행운이었다고 생각합니다. 더군다나 질문을 꽤 많이 했는데 선배님이 친절하게 답변을 해 주셔서 정말 감사했습니다. 웹 쪽은 이래저래 공격을 당할 가능성도 높은 만큼 나중에 그쪽으로 가게 된다면 관련 기술들도 배워둬야 하지 않을까 싶군요.
* 직접 디버거로 바이너리를 수정하고 어셈 코드를 수정하는 모습이 참 신기했습니다. 또 책에서 패킷이 이러저러하다 하는 것 보다 주고받는 그 패킷의 모습을 직접 보는 느낌도 또 좋았습니다. 개인적으로 군대에서 크랙미를 몇 개 리버싱 해보기도 하고 흥미를 가지고 있던 부분인데 누군가가 그런걸 직접 하는걸 보는게 역시 많은 공부가 되는 것 같습니다. 웹쪽 보안에 대해서는 그렇게 많이 생각해본 적이 없었는데 실제로 보니까 흥미가 많이 생기네요. 이쪽도 나중에 추가로 공부해보고 싶습니다.
* Craking이 우리가 보통때 말하는 Hacking이었다는걸 처음(사실 저번에 한번 들은거 같지만) 깨달았네요. 또, 이전까지 그런 툴을 만드는 사람들은 도대체 어떻게 만드는가! 싶었는데 어셈을 이용해서 만들곤 한다는 걸 보며, 음.. 좋군(?) 쇼핑몰중에 지금도 간단한 방법으로 털리는 곳이 있던데, 비밀번호까지 털 수 있다거나 하는걸 보니 정보보안의식에 대한 자각이 들었던거 같기도 하구요.(캐시 충전사건으로 문제가 생긴적이 있다는걸 듣고 충격!) 뚫을 수 있는 사람이 막을 수도 있다고 하니 정보보안쪽을 공부해보고 싶다면 Craking에 대해서도 아는게 좋을거 같군요. 저는 처음보는 형이었는데, 형 세미나에서 많은걸 배울 수 있었던거 같습니다.
* 리버싱 프로그래밍 하는 것을 보고, 패킷을 주고 받는 것을 얻어서 사용한다던지 또 웹에서 javascript injection으로 쿠키를 얻어서 그것을 사용할 수 있는 사이트에서 다른 아이디로 로그인 하는 것도 보았다. 정말 신기했지만 그렇게까지 하기 위해서는 무지하게 다양한 내용을 알아야 할 것 같았다.ㅜ
* 역시 실전 Cracking은 다른 사람 앞에서 보여주려고 하면 잘 안되는 것 같아요. 동준이가 다년간 쌓아왔던 노하우를 그냥 보여주지는 못하게 하는군요 ㅋㅋ 많이 노력한 동준이에게 큰 박수를!!
* 이번 주제는 1학년 때 새싹 스터디 하면서 잠깐 보여주었던 내용을 다시금 보게 되어서 재미있었습니다. Cheat Engine을 직접 사용해 볼 수 있는 부분도 상당히 매력있었습니다. 많이들 듣던 해킹에 대한 정확한 정의도 알게 되었고 그 과정이 어떻게 되는지 조금이나마 알 수 있었던 부분이었습니다. 세미나에서 보여주고자 했던 게임이 생각되로 되지 않아 아쉽긴 했지만, 한편으로는 저렇기 때문에 보안이 중요하다는 것도 다시금 생각할 수 있었습니다.
* 씐나는 Cheat-Engine Tutorial이군요. Off-Line Game들 할때 이용했던 T-Search, Game-Hack, Cheat-O-Matic 과 함께 잘 사용해보았던 Cheat-Engine입니다. 튜토리얼이 있는지는 몰랐네요. 포인터를 이용한 메모리를 바꾸는 보안도 찾을수 있는 대단한 성능이 숨겨져있었는지 몰랐습니다. 감격 감격. 문명5할때 문명 5에서는 값을 *100 + 난수로 해놔서 찾기 어려웠는데 참. 이제 튜토리얼을 통해 어떤 숨겨진 값들도 다 찾을 수 있을것 같습니다. 그리고 보여주고 준비해왔던 얘제들을 통해 보안이 얼마나 중요한지 알게되었습니다. 보안에 대해 많은걸 생각하게 해주네요. 유익한시간이었습니다. 다음에 관련 책이 있다면 한번 읽어볼 생각이 드네요.
실제 Real World 에서 어떤 방식으로 프로젝트가 진행되고 (물론 Base이긴 하지만) 이것이 어떻게 작동하게 하는지, 또한 작동중 얼마나 많은 노하우가 들어가는지
* 나중에 식을 보고 다시 만들어봐야겠습니다. 문제점이 쌓였군요 정말.
* 코드도 올려야하는데 이거 원 안좋아서 망설여지네요. hashmap으로 다시 짠 걸 올립니다. 식을 잘못 계산했더니 천단위의 양수가 나와버리는 경우가 있었습니다. 어익후 확률계산식을 잘못 줄였었네요.. 이런 순수 알고리즘 재미있군요ㅋㅋ
* 수식은 어떤식으로 문서를 분석하는건지 알것같은데.. 파일입출력을 제대로 못해서 시도조차 못해봤습니다.ㅠㅠ 기초 능력이 부족한 탓이네요, C로 train 파일을 입력받아 변수에 단어별로 저장하고 단어의 개수를 세는것까지는 했지만 그 이상은 하지 못했습니다.. 능력부족을 실감했어요
* 거기까지 했으면 거의 다 한거네, 읽어온 단어 갯수가지고 확률식 적용하면 돼~ 다시해봥ㅋㅋ - [서지혜]
- 프로그램내에서의주석 . . . . 50 matches
아..["Refactoring"] 하라는 거군요.. 사실 설계 자체에서도 빠진 상태라 전체 구조 이해하는데 가장 크게 애를 먹었습니다. 아무튼 진짜 이해한 후에 코드를 수정해 놓는 것도 좋은 방법인건 분명하다고 생각합니다. ^^; --창섭
처음에 Javadoc 을 쓸까 하다가 계속 주석이 코드에 아른 거려서 방해가 되었던 관계로; (["IntelliJ"] 3.0 이후부턴 Source Folding 이 지원하기 때문에 Javadoc을 닫을 수 있지만) 주석을 안쓰고 프로그래밍을 한게 화근인가 보군. 설계 시기를 따로 뺀 적은 없지만, Pair 할 때마다 매번 Class Diagram 을 그리고 설명했던 것으로 기억하는데, 그래도 전체구조가 이해가 가지 않았다면 내 잘못이 크지. 다음부터는 상민이처럼 위키에 Class Diagram 업데이트된 것 올리고, Javadoc 만들어서 generation 한 것 올리도록 노력을 해야 겠군.
요새들어서 주석을 잘 안쓰고 코드를 알아보기 쉽게 쓰려고 노력하긴 하는데, 아직 수련이 부족해서인지 코드는 코드대로 어렵고 주석은 주석대로 없나 보다. 흐흐;
약간 변명이라면, 개인적 경험에서는 주석이 달린 코드는 주석에 시선이 먼저가고, 주석이 없는 코드에는 함수 프로토타입에 시선이 먼저간다라는 것. 하지만, 의도가 전해지지 않았다면 역시 뭐 무의미한것이겠지. --석천
내가 가지는 주석의 관점은 지하철에서도 언급한 내용 거의 그대로지만, 내게 있어 주석의 주된 용도는 과거의 자신과 대화를 하면서 집중도 유지, 진행도 체크하기 위해서 이고, 기타 이유는 일반적인 이유인 타인에 대한 정보 전달이다. 전자는 command.Command.execute()이나 상규와 함께 달은 information.InfoManager.writeXXX()위의 주석들이고,후자가 주로 쓰인 용도는 각 class 상단과 package 기술해 놓은 주석이다. 그외에 class diagram은 원래 아나로그로 그린것도 있지만, 설명하면서 그린건 절대로 타인의 머리속에 통째로 저장이 남지 않는다는 전제로, (왜냐면 내가 그러니까.) 타인의 열람을 위해 class diagram의 디지털화를 시켰다. 하는 김에 그런데 확실히 설명할때 JavaDoc뽑아서 그거가지고 설명하는게 편하긴 편하더라. --["상민"]
자네의 경우는 주석이 자네의 생각과정이고, 그 다음은 코드를 읽는 사람의 관점인 건데, 프로그램을 이해하기 위해서 그 사람은 어떤 과정을 거칠까? 경험이 있는 사람이야 무엇을 해야 할 지 아니까 abstract 한 클래스 이름이나 메소드들 이름만 봐도 잘 이해를 하지만, 나는 다른 사람들이 실제 코드 구현부분도 읽기를 바랬거든. (소켓에서 Read 부분 관련 블럭킹 방지를 위한 스레드의 이용방법을 모르고, Swing tree 이용법 모르는 사람에겐 더더욱. 해당 부분에 대해선 Pair 중 설명을 하긴 했으니)
그리고 개인적으론 Server 쪽 이해하기로는 Class Diagram 이 JavaDoc 보는것보다 더 편했음. 그거 본 다음 소스를 보는 방법으로 (완벽하게 이해하진 않았지만.). 이건 내가 UML 에 더 익숙해서가 아닐까 함. 그리고 Java Source 가 비교적 깨끗하기에 이해하기 편하다는 점도 있겠고. (그래 소스 작성한 사람 칭찬해줄께;) --석천
좌절이다. 일단 자네 의견에 동의 정도가 아니라 같은 의도의 말이었다. 위의 자네 말에 대한 내가 의미를 불확실하게 전달한거 같아서 세단락 정도 쓴거 같은데.. 휴 일단 다시 짧게 줄이자면, "프로그래머의 낙서의 표준"인 UML과 {{{~cpp JavaDoc}}}의 출발은 아예 다르다. 자네가 바란건 디자인 단위로 프로그래밍을 이해하길 원한거 같은데, 그것을 {{{~cpp JavaDoc}}}에서 말해주는건 불가능하다고 생각한다. Sun에서 msdn에 대응하기 위해(?) {{{~cpp JavaDoc}}}이 태어난것 같은데 말이다. [[BR]]
하지만, "확실히 설명할때 {{{~cpp JavaDoc}}}뽑아서 그거가지고 설명하는게 편하긴 편하더라."라고 한말 풀어쓰는 건데, 만약 디자인 이해 후에 코드의 이해라면 {{{~cpp JavaDoc}}} 없고 소스만으로 이해는 너무 어렵다.(최소한 나에게는 그랬다.) 일단 코드 분석시 {{{~cpp JavaDoc}}}이 나올 정도라면, "긴장 완화"의 효과로 먹고 들어 간다. 그리고 우리가 코드를 읽는 시점은 jdk를 쓸때 {{{~cpp JavaDoc}}}을 보지 소스를 보지는 않는 것처럼, 해당 메소드가 library처럼 느껴지지 않을까? 그것이 메소드의 이름이나 필드의 이름만으로 완벽한 표현은 불가능하다고 생각한다. 완벽히 표현했다면 너무나 심한 세분화가 아닐까? 전에 정말 난해한 소스를 분석한 적이 있다. 그때도 가끔 보이는 실낱같은 주석들이 너무나 도움이 된것이 기억난다. 우리가 제출한 Report를 대학원 생들이 분석할때 역시 마찬가지 일것이다. 이건 궁극의 Refactoring문제가 아니다. 프로그래밍 언어가 그 셰익스피어 언어와 같았으면 하기도 하는 생각을 해본다. 생각의 언어를 프로그래밍 언어 대입할수만 있다면야.. --["상민"]
난해한 코드일수록 주석이 필요한 것일것이고 (또는 그 반대로 쉽게 알아볼 수 있도록 짤 방법을 강구해야 한다면 억지쓰는 것이려나.) 개인적으로 읽어본 가장 긴 낯선 코드가 3000~4000 라인을 못넘어 본 관계로 아직은 '정리' 단계로만 끝날 것 같다. CVS 의 history 가 코드 진화과정을 따라가는데 도움을 줄것이라고 생각했지만, 아직은 먼 이야기일듯.
내가 Comment 와 JavaDoc 둘을 비슷한 대상으로 두고 쓴게 잘못인듯 하다. 두개는 좀 구분할 필요가 있을 것 같다는 생각이 들어서다. 내부 코드 알고리즘 진행을 설명하기 위해서는 다는 주석을 comment로, 해당 구성 클래스들의 interface를 서술하는것을 JavaDoc으로 구분하려나. 이 경우라면 JavaDoc 과 Class Diagram 이 거의 비슷한 역할을 하겠지. (Class Diagram 이 그냥 Conceptual Model 정도라면 또 이야기가 달라지겠지만)
그리고, JDK 와 Application 의 소스는 그 성격이 다르다고 생각해서. JDK 의 소스 분석이란 JDK의 클래스들을 읽고 그 interface를 적극적으로 이용하기 위해 하는 것이기에 JavaDoc 의 위력은 절대적이다. 하지만, Application 의 소스 분석이라 한다면 실질적인 implementation 을 볼것이라 생각하거든. 어떤 것이 'Information' 이냐에 대해서 바라보는 관점의 차이가 있겠지. 해당 메소드가 library처럼 느껴질때는 해당 코드가 일종의 아키텍쳐적인 부분이 될 때가 아닐까. 즉, Server/Client 에서의 Socket Connection 부분이라던지, DB 에서의 DB Connection 을 얻어오는 부분은 다른 코드들이 쌓아 올라가는게 기반이 되는 부분이니까. Application 영역이 되는 부분과 library 영역이 되는 부분이 구분되려면 또 쉽진 않겠지만.
이번기회에 comment, document, source code 에 대해서 제대로 생각해볼 수 있을듯 (프로그램을 어떻게 분석할 것인가 라던지 Reverse Engineering Tool들을 이용하는 방법을 궁리한다던지 등등) 그리고 후배들과의 코드에 대한 대화는 익숙한 comment 로 대화하는게 낫겠다. DesignPatterns 가 한서도 나온다고 하며 또하나의 기술장벽이 내려간다고 하더라도, 접해보지 않은 사람에겐 또하나의 외국어일것이니. 그리고 영어가 모국어가 아닌 이상. 뭐. (암튼 오늘 내일 되는대로 Documentation 마저 남기겠음. 글쓰는 도중 치열하게 Documentation을 진행하지도 않은 사람이 말만 앞섰다란 생각이 그치질 않는지라. 물론 작업중 Doc 이 아닌 작업 후 Doc 라는 점에서 점수 깎인다는 점은 인지중;) --석천
그리고 계속 이야기 하다보니 주석(comment)과 {{{~cpp JavaDoc}}}을 나누어 설명하는 것이 올바른 생각인듯 하다. 그런 관점이라면 이번 코딩의 컨셉이 녹색글자 최소주의로 나갔다고 볼수 있다. 머리속으로는 특별히 둘을 나누지 않고 있었는데, 코딩 습관에서는 완전히 나누고 있었던거 같다. 녹색 글자를 쓰지 않을려고 발악(?)을 했으니.. 그래도 보이는 녹색 글자들 보면 죄의식이 이것이 object world에서 말하는 "프로그래머의 죄의식"에 해당하는 것이 아닐까. --["상민"]
주석이 실행될 수 있는 코드가 아니기 때문에, 반드시 코드가 주석대로 수행된다고 볼 수는 없지만 없는것 보다는 낳은 경우도 많다. 코드 자체는 언어의 subset 이기 때문에 아무리 ''코드가 이야기한다(code tells)''라 할지라도 우리가 쓰는 언어의 이해도에 미치기가 어렵다. 이는 마치, 어떤 일을 함에 있어서 메뉴얼이 존재함에도 불구하고 경험자에게 이야기를 듣고 메뉴얼을 볼 경우, 그 이해가 쉽고 빠르게 되는것과 비슷하다.
// 자식들 다 쥑이고...
// 형제의 연을 다 끊고...
// 입양을 갈때, 자식들은 항상 데리고 다니지만, 부모나 형제와는 떨어지는 것을 원칙으로 한다.
우리는 충분히 이성적이기에 주석 자체만을 보고 모든것을 믿으려고 할 만큼 어리석지는 않다. 주석을 먼저 거쳐간 사람의 숨길로 느끼고, 재미로 느낄 수 있게 되면 코드 리뷰가 항상 지루하지는 않을 것이다.
코드 자체로서 의미를 이야기할 수 있도록 이름을 잘 짓는 것은 분명 중요하지만, 그에 못지 않게 코드를 읽고 작성하는 주체가 사람임을 생각할때 주석은 이들을 위한 작은 배려라 할 수 있다.
- MIT박사가한국의공대생들에게쓴편지 . . . . 49 matches
내용을 보면 'MIT 박사' 가 아니고, 'MIT 박사과정에 있는 어떤 사람'이 맞는 것 같지만, 일단, 퍼온곳에 그리 되어 있으므로..., 저작권에 걸리진 않겠죠? 여러분들도 공대생이니까요. :-)
저는 6년전 MIT에 유학와서 박사학위를 받고 지금은 미국에서 회사에 다니고 있습니다. 처음 1년 이 곳에서 공부할때 저는 제가 한국에서 대학교육을 받은데 약간의 자부심을 갖고 있었습니다. 주위의 많은 한국 유학생들이 서울대 과 수석 또는 서울대 전체 수석도 있고 한국 대학원생의 80% 이상이 서울대 출신이니까 미국 학생들을 바라 보면서 그래 너희가 얼마나 잘났나 한번 해보자라는 생각마저 들었습니다. 한국에서 하던 대로 이곳에서도 한국 학생들이 시험은 아주 잘 보는 편입니다.
특히 한국 중 고등학교에서 가르치는 수학의 수준이 미국의 그것보다 훨씬 높기 때문에 공대생들로서는 그 덕을 많이 보는 편이죠. 시험 성적으로 치자면 한국유학생들은 상당히 상위권에 속합니다. 물론 그 와중에 한국 유학생들 사이에서 족보를 교환하면서 까지 공부하는 친구들도 있습니다. 한번은 제가 미국인 학생에게 족보에 대한 의견을 슬쩍 떠본일이 있습니다. 그랬더니 정색을 하면서 자기가 얼마나 배우느냐가 중요하지 cheating 을 해서 성적을 잘 받으면 무얼하느냐고 해서 제가 무안해진 적이 있습니다. (물론 미국인이라고 해서 다 정직하게 시험을 보는 것은 물론 아닙니다.)
어느덧 시험에만 열중을 하고 나니 1년이 금방 지나가 버렸습니다. 이제 research 도 시작했고 어떤 방향으로 박사과정 research 를 해나가야 할지를 지도교수와 상의해 정할 때가 왔습니다. 물론 명문대이니 만큼 교수진은 어디에 내놓아도 손색이 없습니다. 한국에서 교수님들이 외국 원서를 번역하라고 학생들한테 시킬때 도대체 어떤 사람들이 이런 책을 쓸 수 있을까 의아하게 생각하던 바로 그 저자들과 만날 수 있다는 것은 굉장한 체험이었습니다. 과연 그런 사람들은 다르더군요.
태어나서 처음으로 아 과연 천재라는 것은 이런 사람들이구나 하는 것을 느꼈습니다. 그 사람들의 상상력과 창의력앞에 존경심이 저절로 생겨났습니다. 그동안 제가 갖고 있던 미스테리가 풀렸습니다. 그동안 교과서에서만 보던 바로 그 신기하기만 하던 이론들을 만들어내고 노벨상도 타고 하는 사람들, 그런정도가 되려면 이런 정도의 천재가 되어야 하는구나 하는 생각이 들었습니다. 그때부터 걱정이 되었습니다. 과연 내가 얼마나 잘 할 수 있을까? 도대체 비밀이 무엇일까? 저런 사람들은 어떤 교육을 받았을까? 물론 지금까지 수업도 착실히 듣고 시험도 그런대로 잘보고 해서 어느정도 유학생활에 자신감은 있었지만 이 부분에는 영 자신이 없었습니다. 하지만 세계제일의 공학대학에서 이 정도 교수는 갖추고 있는게 당연하고 나와는 다른 차원의 사람들이다라는 식으로 위안을 삼았습니다.
주위에 있는 미국인 학생들을 보면서 그래도 내가 한국에서 어려운 교육도 받았고 (대학교 수학도 한국이 더 수준이 높습니다) 저 아이들보다는 잘할 수 있겠지라고 생각했습니다. 그런데, 시간이 지나면서 소름이 오싹 돋는 일이 자꾸 생겼습니다. 하나 둘씩 주위에 있던 몇몇 미국인 학생들이 점점 두각을 나타내면서 점점 더 어려운 문제를 해결해 나가고 벽에 부딪치면 새로운 길을 스스로 파헤쳐 나가는 등 저를 놀라게 하였습니다. 초기에 제가 미분기하학이란 이런것이야라고 설명해주던 미국애가 이제는 제가 알아듣지 못하는 이론을 제게 설명해 줍니다. 뭐 그럴수도 있지라고 처음에는 생각 했습니다. 자기한테 맞는 분야를 잘 정했겠지라고 생각했습니다. 그런데 점점 더 많은 그런 케이스를 보면서 또 그들이 발전해나가는 모습을 보면서 생각 했습니다. 이들중 몇명이 내가 천재라고 생각하던 그런 교수님들 처럼 되는 것이 아닌가. 바로 그랬습니다. 바로 그런 학생들이 그런 교수가 되는 것이었습니다.
그때부터 왠지 슬퍼지더군요. 저뿐만 아니라 대부분의 한국 유학생에게 넘을 수 없는 눈에 보이지 않는 어떤 장벽이 있음을 느꼈습니다. 우리나라 인구수로 따지자면 이미 노벨상 수상자가 여러명 나왔어야 하고 우리나라 사람들의 교육열로 보면 이미 세계적 수준의 과학기술자가 전세계에서 활약하고 있어야 할 시점에서 왜 한국에서 일류 교육을 받은 한국 유학생 들이 MIT 에서 기가 죽어 지내야 하는지 알 수 없었습니다. 학교 도서관에서 책만 읽어서는 그 이유를 알 수 없었습니다. 시간이 더 지나고 미국 친구도 사귀고 미국 사람들의 생활을 보면서 차츰 차츰 미국에서의 교육에 대하여 조금이나마 알게 되었습니다.
일단 갓난아기때 부터 한국과 미국의 교육이 달라 지더군요. 우리나라에서는 부모가 감정적으로 때로는 분에 못이겨 매를 드는 반면, 이곳에서는 모든것이 논리 정연하게 말로 설명이 되었습니다. 아이가 왜 안되느냐고 물어보면 그것은 이렇고 저래서 그렇다고 꼬치꼬치 자세하게 설명해 주고, 투정을 부리면 온갖 기발한 계략으로 아이의 관심을 돌립니다. 부모가 항상 아이에게 말을 시키려 하고 자기 자신들이 그들의 부모로 부터 물려받은 삶의 지혜를 전해주려 노력합니다. 거의 대화가 없는 우리나라 가정과 꽤나 대조적 이라는 생각이 들었습니다. 저도 아이가 있지만 도저히 그들처럼 할 수 없습니다. 그런식으로 대대로 물려받은 몸에 밴 경험이 대부분의 우리나라 사람들과 저에겐 없기 때문입니다. 과연 이렇게 시작이 다른데 미국에서 애를 잘 키울 수 있을까 걱정이 듭니다.
그들이 학교에 가면 차이는 더 벌어집니다. 우리나라 학생들이 암기력과 약간의 사고력, 이해력의 계발에 중점을 두는 동안, 이곳에서는 창의력, 상상력, 사회성 등을 키워나갑니다. 바로 이런것들이 거름이 되어 아까와 같은 천재들이 대학원에서 두각을 나타내는 것이 아닌가 합니다. 한마디로 우리나라 학생들이 남들이 만들어놓은 포장된 지식을 주입받는 동안, 이 곳 학생들은 생각하는 법을 배웁니다. 자발적 참여 및 토론에 의한 학습, 스스로 탐구하는 학습, 작문력, 발표력, 논리적 사고가 중요시 되는 교육을 받고 이들은 비록 미분 적분에 대하여 우리보다 늦게 배울망정 인생에서 창의력이 극대화되는 20대가 되면 어렸을때 생각하는 법을 배웠기에 스폰지처럼 지식을 습득하고 새로운 것을 창조해나갑니다.
이곳에 와서 한가지 더 놀란것은 미국사람들의 호기심 입니다. 새로운 것을 알고 싶어 하는 열정이 우리나라 사람의 몇배는 되어 보였습니다. 우리나라에서 금속활자, 물시계, 해시계 등을 발명해 놓고도 더 발전 시키지않고 있는 동안, 서양에서는 만유인력의 법칙을 발견하였고 이를 발전시켜 결국 오늘날의 과학기술로 바꾸어놓았습니다. 우리나라에서는 유치하다고 아무도 거들떠 보지 않았을 automaton (자동 인형 - 태엽 등의 힘으로 스스로 정해진 순서에 따라 움직임) 이 유럽에서는 이미 수백년 전에 유행하여 자동으로 연주되는 피아노, 날개짓하며 헤엄치는 백조, 글씨쓰는 인형등 갖가지 기발한 발명품이 쏟아져 나왔고 바로 이것으로 부터 발전하여 나온것이 자동으로 계산하는 기계, 즉 컴퓨터입니다.
제가 미국 친구들을 집에 초대하여 조금이라도 신기한 것을 보여주면 이것은 어떻게 만들었느냐 무슨 원리로 동작하느냐는 등 질문을 쏟아 붓습니다. 심지어 하수구를 고치러 온 미국사람도 똑같은 관심을 보이면서 돈을 줄테니 자기 아들을 위해 하나 만들어달라고 조르던 적도 있습니다. 반면 MIT의 박사과정 한국 유학생들은 시선이 1초 이상 머무르지 않고 전혀 관심을 보이지 않고 술만 마십니다. 과연 우리가 세계를 주도해 나가는 과학기술 수준을 이룩할 수 있을까요? 우리가 단지 선진국이 되기 위해 또는 노벨상을 받기 위해 과학기술을 하기 싫지만 억지로 연구하는 동안 이곳에서는 너무나 좋아서 신기해서 알고 싶어서 과학기술을 연구하는 사람들이 너무도 많습니다. 자기가 하는 일이 좋아서 하는 사람들의 열정은 절대 따라갈 수 없습니다.
- 정모/2011.3.7 . . . . 48 matches
* 그리고 아영선배께서 오랜만에 들렀다 가셨어요~!!!
* 실존 인물이 다뤄진 책을 읽고 이야기를 나눔.
* 신입생 설명회를 이미 진행하였기 때문에 ZeroPage에 대해서는 간단히 설명하고 새싹 교실 오리엔테이션 안내 및 ZeroPage 홍보물 배포.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 활동 공유로 읽었던 책을 간단히 소개하면서 내용을 되새김질하는 계기가 되어 좋았다. 루비를 다운받아 irb를 사용해 실습을 해보았다. 성현이가 OMS로 영화 재해석을 했다. 동영상도 실행되고, 효과음도 나왔다면 더 재밌는 발표가 될 수 있었을 텐데 강의실이나 상황이 열악해서 안타까웠다. 마지막에 시간이 모자라서 코드레이스를 하지 않고, 간단히 Snowball Keyword 게임을 했는데 규칙을 잘못 이해하고 얘기하여 바로 탈락했다. 다음에는 좀 더 의도를 잘 파악하도록 집중해서 들어야 겠다. - [강소현]
* 이번 정모에서 루비 세미나 - 문법실습 - 을 준비했었습니다. 잘 할수 있을까 걱정했는데 예상대로 설명도 제대로 못하고 강사주제에 들으러 오신분들께 물어보고 시간도 두배나 초과하는 추태를 보였습니다. 혼자서는 다 아는것 같은 내용도 남들 앞에서 설명하려니 제대로 떠오르지가 않네요.. 앞에서 말하면서도 얼른 끝내고 도망가고싶다는 생각이 자꾸 들었습니다ㅠ 이래서 연습이란게 중요한가 봅니다. 다른사람을 가르치려면 가르칠 사람보다 세배네배 더 공부해야 한다는 말을 뼈저리게 새기는 하루였습니다. 혹여 또 세미나를 한다면 벽보고 연습이라도 하겠습니다. 그때는 이런 괴로운 세미나를 들려드리지 않을게요ㅠㅠ - [서지혜]
* 루비는 선배들을 통해 이런게 있다라는건 들었었지만, 막상 실제로 접해보지는 못했었는데 이번 세미나를 통해 루비라는 언어에 대해 직접 접해 볼 수 있는 기회가 되어서 좋았습니다. 이제 직접 좀 찾아보면서 루비라는 언어를 좀 더 접해보고 싶다는 생각이 들었습니다. 그리고 폐차쿠차를 통해 알고 있던 영화가 정말 다양하게 해석될 수 있다는 사실이 재미있었습니다. 동영상으로 보여주려 했던 영화는 뭐 저런 사기 캐릭이 있나라고 생각하면서 봤던 영화였는데, 동영상이 재생되었더라면 다시금 그때의 그 황당함을 다시금 느낄 수 있었지 않았을까 아니면 다른 느낌을 받았을까 하는 생각이 듭니다. - [권순의]
* 정모에서 세미나와 페챠쿠챠만 참여하게 되었습니다. OMS할 때는 학교 컴퓨터를 이용했는데, BGM과 동영상이 재생이 안되더군요. 안타까웠습니다. 그리고 루비를 보면서 느낀게 참 신기하더군요. 가장 신기한게 'nil'이었습니다. 보면서 여러가지 질문이 생각나더라고요. ''왜 nil이 라고 용어를 붙여놨어. Null이랑 헷갈리게!'', ''실제로 가볍게 활용을 하려면 어떻게 이용해봐야 할까?'', ''루비의 가장 큰 특징이 뭐지? 왜 좋다고 이야기 할까?'' 블라블라~. 그리고 루비 위키페이지에 적어놓으셨던 문법들이 정상적으로 작동하지 않는 걸 깨달았습니다. '<'로 상속이 안돼! 이 깍쟁이 irb야~ 내가 너를 Some이라 불러줬으니 나에게로 와서 Some2가 되어달란 말이야 ㅜㅜ. 앞으로는 다음에 언어 세미나를 들을 때 ''왜 이 언어와 문법이 등장하였는지''를 좀 생각하면서 들어야겠습니다. 그냥 생각없이 들으니까 금방 까먹어 버리네요. - [박성현]
* 루비의 null은 java의 null과 같습니다. null이 객체의 할당이 일어나지 않는것이고 nil은 빈 객체가 할당되는 것입니다. - [서지혜]
* 활동보고에서 책읽기 모임 보고를 하면서 간만에 정말 정식활동 시작!! 한번쯤 해보고 싶었던 루비 프로그래밍 실습도 하면서 알찬 정모가 되지 않았나 느꼈습니다. 아쉬웠던 점은 시간 안배인데, 정모의 시간에 대한 제한은 없으나 어느 정도 deadline은 잡아야 하지 않나 하는 생각이 들었습니다. (예를 들면 늦어도 9시까지는 끝낸다 라던가..) 책읽기모임 활동보고의 소요시간이 약간 길었는데, 각자 읽은 책에 대해서 정모에서 나누는 것이 가장 효과적이긴 하나 모임 때 나눴던 얘기의 단순 요약판이니 이제부터는 위키를 참조하는 것도 좋지 않을까 싶네요. 그리고 루비 코드 레이스는 참여자를 봐서 다음주 정모 때 하는게 어떨까요 - [송지원]
* 학생회 회의 떄문에 늦어서 루비 세미나 뒷부분부터 참석한 관계로 많은 프로그램을 놓쳐버렸습니다 OTL 아쉽더군요... 우선 새싹의 경우는 나름 담당자 인데 정모에 참여를 못해서 아쉽습니다. 그리고 성현이형의 영화 해석을 보면서 깨달은건데 그렇게 영화가 해석되는지 몰랐습니다. 그리고 JavaScript 스터디에 야매로 참가하면서... 알게된 내용이지만 인터프리터 언어에도 객체지향 언어가 존재하고 종류가 꽤 많다는게 신기하네요. 제가 어디서 주워 듣기로는 Python도 OOP가 가능하다고 하던데;; 아무튼 늦게 들어간게 죄입니다 ㅠ -[윤종하]
* 세미나가 예상외로 긴 시간을 잡아먹고 노트북의 부재로 아쉬운시간을 가졌습니다. 하지만 루비 세미나는 꽤나 유용한 세미나였던것으로 기억합니다. 예전 루비를 혼자 배워볼때랑 달리 친절한 설치도 지원해주고 제가 처음 배웠던 부분과 다른 부분을 배울수 있어 좋았습니다. 후기에 계속 나왔던 말이지만 루비는 불완전한 언어라는 말보다는 현재 루비로 지원해주는 많은 라이브러리가 부족한것이지 언어자체는 굉장히 뛰어나다고 할수있습니다. 루비에 대해 다시 떠올리는것으로 좋은 시간이었습니다. - [김준석]
* 뛰어난 언어인지는 잘 모르겠습니다. 단순히 제 이해도가 낮은것이 아니라 현재 루비에서 펄의 잔재를 제거하는 일명 순수주의 활동이 일어나고 있는데, 개인적인 생각이지만 베껴 만들었다가 표절이야기 듣기 싫어 뜯어 고치는 느낌이라서요.. - [서지혜]
* 제 2공학관에 강의실이 얼마 없는지 공대 행정실에서 자꾸 봅스트홀을 빌려주려고 하네요. 번거롭게 왔다갔다 해야했던 점이 아쉽습니다. 정모 활동을 회의보다는 세미나 등 학술 활동 위주로 가려다보니 전보다 많은 시간을 소요하게 되었습니다. 개강하니 정모를 늦게 시작해서 그 점이 난감하네요. 정모에서 할 수 있는 짤막한 활동들을 기획해보겠습니다. 그리고 프로젝트/스터디 했던 것들을 공유할 때 좀 더 재미있고 효과적으로 공유할 수 있는 방법도 함께 생각해보았으면 좋겠습니다. :) - [김수경]
* 루비에 대해 알게 되었습니다. 매우 흥미로웠지만, 별로 실용적으로 쓸 일은 없을 것이라는 생각이 들었습니다. 좋아하던 영화들을 다른 관점에서 보고 나니 "아 그럴 수도 있군! 이거 재미있는데?"라는 생각이 들었습니다. 갑자기 새싹스터디 커리큘럼 작성에 부하가 걸리기 시작했습니다. 새로운 thread를 열어서 job을 분담하지 않는다면 timeout이 날 것 같아 걱정 중입니다. 다음 페차쿠차로 Objective-C에 대해 발표 해보아야겠습니다. - [황현]
* Objective-C 기대된다!! OMS는 페챠쿠챠로 진행해도 좋고 다른 방식의 프리젠테이션도 좋으니 편한대로 진행해~ 내가 지난 정모에서 성현이한테 페챠쿠챠 아니라고 되게 뭐라 한 것 같은 느낌이라 덧붙임... - [김수경]
* 루비로 만들어진 프로그램 많아요!! 대표적인 Ruby on rails랑 redmine도 있고.. 어디서는 요즘 GUI 대세는 루비라고도 하던데ㅎㅎ 루비가 별로 쓸일이 없는건 제가 루비를 잘 몰라서였습니다 하하ㅠㅠㅠ 덧)Objective-c를 아예 날잡고 세미나 하는것도 좋을거같아요 - [서지혜]
* Redmine이 Ruby로 만들어져있다는건 첨 들었네요. 오오 새로운 지식~ 그런데 'Ruby 曰: "GUI 대세 나임 ㅋ"' 라고 쓰신 이유가 궁금해서 찾아보니 이런 동영상이 있네요. [http://www.youtube.com/watch?v=PoZ9bPQ13Dk Ruby GUI programming with Shoes]. 코드 보니까 직관적이고 좋네요 ㅋㅋㅋㅋ - [박성현]
- DataCommunicationSummaryProject/Chapter8 . . . . 46 matches
* 고객과 네트워크의 마지막 연결이다. 베이스 스테이션은 에어 링크 범위에 포함되지 않는다.
* 전화기의 교환기 처럼, MSC는 사용자들을 기억하고 있다가 필요할때 부른다.
* 네트워크는 많은 MSC를 가지고 있고, 하나의 MSC는 여러 무리의 셀들을 맡고 있다.
* 모든 고객은 특정한 MSC에 등록되어 있다.
* MSC에 저장되어 있는 모든 핸드폰의 위치를 가지고 있다.
* 자신이 포괄하는 범위내의 사용자에 대해서만 정확한 지리적인 정보를 가지고 있다.
* MSC가 포괄하는 위치안에 있는 사용자에게 call 요청이 오면 사용자의 home HLR가 새로운 셀의 VLR에 접촉하고, 사용자에 연결되게 해준다.
* 그래서 많은 네트워크들은 현재 MAP(Mobile Application Part)라고, HLR과 VLR을 오직 한번만 찾아봐서 가능하면 지역안에서 연결되게 하는 새로운 시스템을 구현하고 있다.
* 전화 번호랑 연계하여서 핸드폰을 구분하기 위해서 사용되는 고유의 번호를 가지고 있다.
* 전화요금이 정확하게 매겨지게 하고, 도난당한 핸드폰의 정보등을 가지고 있어서 도난당한건 사용못하게 하도록 한다.
* 이것은 네트워크에서 각각의 폰에 대해서 그 핸드폰에도 있는 보안 인증 코드의 복사본을 가지고 있다.
* SMS 메시지를 다루고, 핸드폰으로 들어오가 나가는 메시지를 라우팅해준다.
* MSC처럼 이것은 다양한 데이터 베이스(위치를 찾고, 인증 하는거..)에 연결되어 있다.
* PCU와는 다르게 SGSN을 네트워크에 연결하는데 명확한 기준이 정의 되어 있어서 운영자가 제조업자를 마음대로 고를 수 있다.
* SGSN의 유형은 운영자가 타겟으로 삼는 고객이 어떤 종류인지에 따라서 채택될것이다.
* 대부분의 운영자들은 그들이 서비스를 제공하는 영역안에 SGSN들을 설치하여, 점차 거대한 데이터 네트워크를 만들 계획을 한다. 이것이 GPRS Backbone 이라고 알려져 있다.
* The Point-to-Multipoint Service Center(PTM SC), Qos 문제를 다루는 서버이다. 돈을 더 많이 낸 고객에게 통신에서 우선권을 준다. 그리고 소리와 그림과 같이 데이터의 종류에 따라 우선권을 달리 준다.(소리가 더 속도에 민감하다.)
* 다른 운영자의 GPRS 네트워크에서 roaming 하는 GPRS 가입자가는 여전히 인터넷에는 접근할 수 있을지라도, 그들이 의존하고 있는 다른 서비스는 못받는다.
* Internet Roaming : 단순히 인터넷을 통해서 특화된 서비스를 위한 연결을 보낸다. 이것은 싸고, 간단한 해결책이지만, 느리고 보안 문제가 있다.
* GRX Roaming : GPRS Roaming Exchange(GRX) 라고 불리우는 새로운 형태의 서비스 공급자를 사용한다. 이것은 다양한 GPRS 네트워크에서 GTP 트래픽을 운반한다. 더 비싸다
- TAOCP/BasicConcepts . . . . 46 matches
== 알고리즘 E(유클리드의 알고리즘(Euclid's algorithm)) ==
E1. [나머지 구하기] m을 n으로 나누고 나머지를 r이라 하자.(0 <= r < n)
E2. [그것이 0인가?] r = 0 이면, 알고리즘은 끝난다; n이 답이다.
E3. [줄이기] m <- n, n <- r 으로 설정한다, 그리고 E1단계로 돌아간다.■
Fig 1. 알고리즘 E의 순서도
m = 119 와 n = 544 가 주어졌다고 하자
E1 단계에서 시작. m을 n으로 나누면 몫은 0이고 나머지는 119이다. 그러므로 r <- 119
다시 E2는 적용되지않고
마지막으로 51을 17로 나누었을때, r <- 0, 그러므로 E2에서 알고리즘은 종료된다
== 알고리즘의 5가지 중요한 특징 ==
알고리즘은 유한한 단계 후에 항상 종료되어야 한다
알고리즘의 각 단계는 정확히 정의되어야 한다
알고리즘은 0개 이상의 입력을 가진다
알고리즘은 하나 이상의 출력을 가진다
알고리즘은 보통 효율적으로 수행되도록 기대된다
== 알고리즘의 개념을 수학적 집합론의 관계로 나타내기 ==
x0 = x 이고 xk + 1 = f(xk) (k >= 0)
Ω에 속하는 xk 에 대하여 k가 가장 작은 정수라면 계산수열은 k단계에서 종료된다고 한다. 그리고 이 경우에 x로부터 결과 xk가 생성된다고 한다.
알고리즘 E는 다음과 같이 이런 관계로 형식화된다.
여기서 더해진 주소를 M, M에 들어있는 값을 CONTETNS(M)이라고 한다.
- 데블스캠프2013/셋째날/후기 . . . . 46 matches
[김태진], [고한종], [김윤환], [서민관], [권순의], [김해천], [김현빈], [박희정], [이예나], [김남규], [지영민], [조영준], [김도형], [원준연], [임지훈], [김홍기], [엄기용], [안혁준], [이봉규], [순의형], [백주협], [ ], [ ], [정종록], [장혁수], [박성현]
* 사실 자바를 약~간 깨작거렸지만 다른 사람들이 GUI를 사용하는 프로그램을 만드는 것을 보고 어떻게 하는 것인지 굉장히 궁금하였는데 이번 기회에 알게 되어서 너무나도 기뻤습니다 :D - [조영준]
* 회장님이 자바실습시험때, 이걸 이용해서 짜면 편하다고 추천해 준 것이었는데, 하지만 코드가 은근히 어려워져서 세세한 부분을 건드릴 때에는 더 많은 시간이 걸릴 것 같아서 안 쓴 윈도우빌더군요! 사실, 이 단점은 GUI 툴킷 프로그램이 짊어지고 가야 할 문제일 수도 있지만, 이번에 나름대로 빠른 프로그램 제작에는 편하겠구나라는 생각을 가지게 되었습니다. - [김해천]
* 자바를 처음 써봐서 매우 신기했습니다! 미리 배워보는 거 같아 유익했던 것 같고요 쉽게 따라할 수 있어서 좋았습니다. - [김남규]
* windowBuilder 쓸 줄 안다고 생각 했었는데 세미나 참여해보니 생각보다 많은 기능을 제공하는 플러그인 이었네요. 그래도 툴에 의존하면 안되니 Swing을 더 파야겠습니다. -[고한종]
* 사실 소켓 프로그래밍을 새싹교실에서 했었는데 복습을 안 해서 반 쯤 까먹었다가 (...) 이번 기회에 다시 기억을 되살리고, C#이 아닌 C로도 짜니 어려웠지만 흥미로웠습니다. 특히 마지막에 웹 서버가 제일 인상깊었네요. 인상깊었던 만큼 휙 지나간게 아쉬웠습니다 :Q - [조영준]
* 음... 사실 정말 열심히 준비를 해서 최대한 차근차근 쉽게 설명을 해 보자고 생각을 했는데... 그래도 역시 처음 접하는 것이라 그런지 그렇게 간단하게 진행되지는 않은 것 같아서 마음에 아쉬움이 남습니다. 새내기들이 파일 포인터랑 파일 입출력을 조금이라도 알고 있었으면 훨씬 수월했을텐데 말이죠. 그래도 제가 할 수 있는 전력을 다 했다고 생각하고, 앞으로 똑같은 주제로 세미나를 한다고 해도 더 낫게는 못 할 겁니다. 따라서 앞으로 같은 주제로 세미나를 할 일은 아마 없지 않을까 싶습니다. 부탁이라도 들어오지 않는 이상. 이것 때문에 마음 걱정이 커서 밥을 먹어도 먹는 느낌도 없었는데, 그래도 스스로 만족스러울 만큼은 한 것 같아서 속이 후련하고 또 조금은 아쉽기도 합니다. - [서민관]
* 올해 데캠에서는 유난히 네트워크를 이용한 것이 많이 나오는 군요! 네트워크 매니아인 저를 불타오르게 하는 세션이였네요.(하지만, 저는 네트워크가 어떤 것인 지 공부했을 뿐, 어떻게 만드는 지는 공부를 안해서... 실습 때 애를 좀 먹었습니다..) 만드는 것이 더 어렵군요! 사이언스가 엔지니어링만큼 중요하지만서도, 역시 엔지니어링이 훨씬 더 대단한 일을 하고 있다는 것 느낍니다! - [김해천]
* 소켓이라는 개념을 처음 들었는데도 굉장히 잘 설명해주신 덕분에 충분히 이해했고, 친숙한 언어로 짜다보니 더욱 인상깊었습니다! - [원준연]
* 소켓프로그래밍은 언젠간 공부해봐야지 하면서도 안하고 있다가 단면을 알게될 기회를 갖게되서 좋은 세션이였습니다. 이런 소켓프로그래밍을 가지고 놀면 재밋는것도 나올 수 있겠다라는 응용여지가 많아서 더 재미있는 세션이였습니다. - [김윤환]
* 이 강의를 보면서 NXT 생각도 나고 (...) 무엇보다 사고싶다는 생각이 강하게 들었습니다 *-_-* 하나 가지고 이것 저것 달면서 코딩하고 돌려보면 재밌을것 같아요. 세상은 넓고 새롭고 재밌는건 많네요. - [조영준]
* 저도 갑자기 NXT가 생각나는데요.. 그래도 집에 한개 쯤 가지고 생각날 때마다 납땜하고 코딩하면 좋을 것 같네요. 신세계를 보여주셔서 감사합니다. :D - [남근우]
* 정말 보면 볼수록 아두이노 정말 완소.. 인데 (한번 만져봐서 얼마나 만지기 쉬운지도 알고..) 주변 부품이 너무 비싸서 ㅠㅠㅠㅠ -[고한종]
* 아두이노,,, 우노..게다가 우노..에 대한 안좋은 추억이..ㅠㅜ 물론 세션 내용은 흥미롭게 들을 수 있었습니다. 다만, 우노를 가지고 블루투스 모듈을 연결한 다음 안드로이드랑 통신할때 이게 문자열을 해석 잘 못하는 경우를 당해서 맨붕한적이 있어서... - [김윤환]
* 역시 명불허전 머신러닝! C언어 입출력에서 이렇게 나를 괴롭힐줄이야.. 코딩하면 코딩할수록 '내가 지금 펜을 잡고 생각을 정리해야하는데, 왜 타자기만 잡고 있는 것인가'라는 생각을 하게 되었습니다. 페어 프로그래밍이어서 더 떨렸습니다... 멍청한거 들킴; 제출된 코드 중 파이썬 코드가 있었는데 참 맘에 들더군요. 로직에만 집중할 수 있도록 해주는 언어! 파이썬! - [박성현]
* 제 바램대로 '데캠에 참석한 모두가' '열심히 코딩을 하며' '모두가 멘붕을 겪는다' 가 이뤄졌네요. 1학년때 상협선배님이 해주신 머신러닝이 가장 기억에 남았는데, 제 방식대로 그런걸 새로 풀어낼 수 있었네요. 새내기들이 이 분야에 감이라도 잡고(추상적인 인공지능에서 논리적인 기계학습으로..-) 선배들도 충분히 집중해야하는, 잘 조화된 세션이 될 수 있었던거 같아 다행이네요. -[김태진]
* 개인적으로 좀 아쉬움이 큰 세션이었습니다. 물론 머신 러닝이 쉬운 주제가 아니라는 건 맞습니다. 하지만 오히려 그렇기 때문에 강사 입장에서는 최대한 난이도를 낮추기 위한 노력들을 할 수 있지 않았을까 하는 생각이 조금 남습니다. 적어도 새내기나 2학년 들이 머신 러닝이라는 뭔가 무서워 보이는 주제 앞에서 의욕이 사라질 수 있다는 생각을 했다면, 전체적인 알고리즘의 간단한 의사 코드를 보여주거나, DataSet을 줄인다거나 해서 조금 현실적인 시간 내에 결과를 보고 반복적으로 소스 코드를 손을 볼 수 있게 할 수 있지 않았을까요. 적어도 간단한 샘플 소스를 통해서 이 프로그램이 어떻게 돌아가는가, 어떤 input을 받아서 어떤 output을 내는가 등에 대해서 보여주었다면 더 재미있는 실습이 될 수 있지 않을까 하는 생각이 듭니다. 머신 러닝은 흥미로운 주제지만, 흥미로운 주제를 잘 요리해서 다른 사람들에게 흥미롭게 전해줄 수 있었는가를 묻는다면 저는 좀 아쉬웠다는 대답을 할 것 같습니다. - [서민관]
* 물론 Socket을 재미있게, 쉽게 설명하지 못 한 제가 말하는 것도 좀 입이 아픈 얘기긴 한데, 그래도 Socket에 대해서는 제가 생각하기에 정말 난이도를 낮추기 위해 최선을 다 했다고 생각하는데 머신 러닝 세션은 난이도가 조금... - [서민관]
* 제가 아는 김태진 형님이 맞습니다. 난이도는 확실히 어려웠습니다만, 새내기는 나름대로 생각해 볼 만한, 2~3학년 분들에게는 고민을 하게 하는, 모든 사람들이 대부분 도전해 볼만한 난이도였다고 봅니다. 저는 새내기가 생각하는 방향을 그대로 따라가면서 코딩을 해 줬는데, 잘 하더군요. 다행이었습니다! 아쉬웠던 점이라면, 데이터량이 너무 많아서 코딩하는 시간보다 검증하는 시간이 더 오래 걸렸네요. 다음에 이런 것을 하시게 될 사람이 있으시다면, 데이터량을 1/10 정도로(4000개는 넘지 말아 주세요..ㅠ) 줄여주셨으면 합니다. 프로그램이 실행해서 다 돌아가는 데 15분이 걸리다니요!!..ㅠㅠ 멀티코어를 쓰시던 분도 10분을 돌리셨다고 하더라고요.. - [김해천]
* 새내기들을 위해서... 용어와 이론 설명을 좀 더 해주셨으면 좋았을 것 같습니다. 그래도 직접 알고리즘을 구현하는 과정을 보면서 머신러닝에 대해 대략 감이 잡히게 되었습니다.(물론 멘붕은 어쩔 수 없지만...ㅠㅠ) - [남근우]
- 토비의스프링3/밑줄긋기 . . . . 46 matches
* [https://sites.google.com/site/xperdokdo/ xper dokdo]참고
* 스프링을 사용하는 개발자들은 자연스럽게 자바와 엔터프라이즈 개발의 기본에 충실한 베스트 프랙티스를 적용할 수 있고, 이상적인 개발 철학과 프로그래밍 모델을 이해하게 되고, 좋은 개발 습관을 체득하게 된다.
* 잘 동작하는 코드를 굳이 수정하고 개선해야 하는 이유는 뭘까?
* 이 문제의 핵심은 변하지 않는, 그러나 많은 곳에서 중복되는 코드와 로직에 따라 자꾸 확장되고 자주 변하는 코드를 잘 분리해내는 작업이다.
* 일반적으로 DI는 의존관계에 있는 두 개의 오브젝트와 이 간계를 다이내믹하게 설정해주는 오브젝트 팩토리(DI 컨테이너), 그리고 이를 사용하는 클라이언트라는 4개의 오브젝트 사이에서 일어난다.
* 고정된 작업 흐름을 갖고 있으면서 여기저기서 자주 반복되는 코드가 있다면, 중복되는 코드를 분리할 방법을 생각해보는 습관을 기르자.
* 템플릿과 콜백을 찾아낼 때는, 변하는 코드의 경계를 찾고 그 경계를 사이에 두고 주고받는 일정한 정보가 있는지 확인하면 된다고 했다.
* 예외를 처리할 때 반드시 지켜야 할 핵심 원칙은 한 가지다. 모든 예외는 적절하게 복구되든지 아니면 작업을 중단시키고 운영자 또는 개발자에게 분명하게 통보돼야 한다.
* 그래서 숫자 타입을 직접 사용하는 것보다는 자바 5 이상에서 제공하는 이늄(enum)을 이용하는 게 안전하고 편하다.
* 테스트를 만들면 작성한 코드에 확신을 가질 수 있고 마음이 편해지는 건 사실이지만, 귀찮다고 대충 작성한 테스트는 오히려 찾기 힘든 버그와 사고의 원인이 될 수도 있으니 조심하자.
* DAO는 데이터를 어떻게 가져오고 조작할지를 다루는 곳이지 비즈니스 로직을 두는 곳이 아니다.
* 데이터 액세스 로직이 바뀌었다고 비즈니스 로직 코드를 수정하는 일이 있어서는 안 된다.
* 이 정도 코드라면 한 번 살펴보는 것 만으로도 오류가 있는지 쉽게 찾아낼 자신이 있는 개발자도 있겠지만, 정말 뛰어난 개발자라면 아무리 간단해 보여도 실수할 수 있음을 알고 있기 때문에 테스트를 만들어서 직접 동작하는 모습을 확인해보려고 할 것이다.
* 이정도~ 부분을 읽고 자신있어한 내가 부끄럽다.. 헐리우드에 가서 jesus=heaven no jesus=hell 판들고 행진하는 사람들처럼.. - [서지혜]
* 객체지향적인 코드는 다른 오브젝트의 데이터를 가져와서 작업하는 대신 데이터를 갖고 있는 다른 오브젝트에게 작업을 해달라고 요청한다. 오브젝트에게 데이터를 요구하지 말고 작업을 요청하라는 것이 객체지향 프로그래밍의 가장 기본이 되는 원리이기도 하다.
* 한 가지 변경 이유가 발생했을 때 여러 군데를 고치게 만든다면 중복이다.
* 비즈니스 로직을 담고 있는 UserService 메소드 안에서 트랜잭션의 경계를 설정해 관리하려면 지금까지 만들었던 깔끔하게 정리된 코드를 포기해야 할까? 아니면, 트랜잭션 기능을 포기해야 할까? 물론 둘 다 아니다. 스프링은 이 딜레마를 해결할 수 있는 멋진 방법을 제공해준다.
* UserService는 자신의 로직이 바뀌지 않았음에도 기술환경에 따라서 코드가 바뀌는 코드가 돼버리고 말았다.
* 어떤 클래스든 스프링의 빈으로 등록할 때 먼저 검토해야 할 것은 싱글톤으로 만들어져 여러 스레드에서 동시에 사용해도 괜찮은가 하는 점이다. 상태를 갖고 있고, 멀티스레드 환경에서 안전하지 않은 클래스를 빈으로 무작정 등록하면 심각한 문제가 발생하기 때문이다.
* 단일 책임 원칙은 하나의 모듈은 한 가지 책임을 가져야 한다는 의미다. 하나의 모듈이 바뀌는 이유는 한 가지여야 한다고 설명할 수도 있다.
- Gof/Mediator . . . . 45 matches
예로써 어떤 GUI상에서 다이얼로그 박스의 구현을 고려해보자. 하나의 다이얼로그 박스는 작은 도구들(버튼, 메뉴, 입력 필드)의 모음을 표현하는 하나의 윈도우를 사용한다.
별개의 mediator 객체에서 집단의 행위로 encapsulate하는 것에 의해서 이런 문제를 피할 수 있다. 하나의 mediator는 객체들 그룹 내의 상호작용들을 제어하고 조정할 책임이 있다. 그 mediator는 그룹내의 객체들이 다른 객체들과 명시적으로 조회하는 것을 막는 중간자로서의 역할을 한다. 그런 객체들은 단지 mediator만 알고 있고, 고로 interconnection의 수는 줄어 들게 된다.
예를 들면, FontDialogDirector는 다이얼로그 박스의 도구들 사이의 mediator일 수 있다. FontDialogDirector객체는 다이얼로그 도구들을 알고 그들의 interaction을 조정한다. 그것은 도구들 사이의 communication에서 hub와 같은 역할을 한다.
다음 interaction diagram은 객체들이 리스트박스의 선택에서 변화를 다루기 위해 협동하는 방법을 묘사하고 있다.
여기서는 list box에서의 선택이 entry field 로 전달되고 있는 이벤트들의 흐름이 있다.
1. 리스트 박스가 그것의 director에게 그것이 변했다고 말한다.
DialogDirect는 다이얼로그의 전체 행위를 정의한 추상 클래스이다. client들은 화면에 다이얼로그를 나타내기 위해서 ShowDialog 연산자를 호출한다. CreateWidgets는 다이얼로그 도구들을 만들기 위한 추상 연산자이다. WidgetChanged는 또 다른 추상 연산자이며, 도구들은 director에게 그들이 변했다는 것을 알려주기 위해서 이를 호출한다. DialogDirector subclass들은 CreateWidgets을 적절한 도구들을 만들기 위해서 override하고 그리고 그들은 WidgetChanged를 변화를 다루기 위해서 override한다.
* 어떤 객체들의 집합이 잘 정의되었지만, 복잡한 방법으로 통신할 때. interconnection의 결과는 구조화되지 못하고 이해를 어렵게 한다.
* 어떤 객체를 재사용하는 것이 그것이 많은 다른 객체들과 관련이 있고 통신을 하기 때문에 어려울 때.
자신의 colleague들을 알고 관리한다.
Colleague들은 Mediator 객체에게 요청을 보내고 받는다. Mediator는 적절한 colleague에게 요청을 보냄으로써 협동 행위를 구현한다.
2. MediatorPattern은 colleague들을 떼어놓는다. Mediator는 colleague들 사이에서 loose coupling을 촉진한다. colleagued와 Mediator를 개별적으로 다양하게 할 수 있고, 재사용 할 수 있다.
4. MediatorPattern은 객체가 협동하는 방법을 추상화 시킨다. Mediation를 독립적인 개념으로 만들고 하나의 객체에 캡슐화하는 것은 여러분으로 하여금 객체의 행위는 제쳐두고 그 interaction에 집중하게 해준다. 이는 객체가 시스템 내에서 어떻게 interact하는 방법을 명확히 하는데 도움을 준다.
2. Colleague-Mediator communication. colleague들은 그들의 mediator와 흥미로운 이벤트가 발생했을 때, 통신을 해야한다. 한가지 방법은 mediator를 Observer로서(ObserverPattern을 이용해서) 구현하는 것이다. colleague 객체들은 Subject들로서 작동하고, 자신의 상태가 변했을 때, 지시를 Mediator에게 전달한다. Mediator는 변화의 효과를 다른 colleague들에게 전달하는 반응을 한다.
또 다른 방법은 colleague들이 보다 더 직접으로 communication할 수 있도록 특별한 interface를 mediator에게 심는 것이다. 윈도우용 Smalltalk/V가 대표적인 형태이다. mediator와 통신을 하고자 할 때, 자신을 argument로 넘겨서 mediator가 sender가 누구인지 식별하게 한다. Sample Code는 이와 같은 방법을 사용하고 있고, Smalltalk/V의 구현은 Known Uses에서 다루기로 하겠다.
우리는 DialogDirector를 Motivation에서 보았던 것처럼 font dialog를 구현하기 위해서 사용할 것이다. 추상 클래스 DialogDirector는 director들을 위한 interface를 정의 하고 있다.
Widget 은 widgets들을 위한 추상 기초 클래스이다. 하나의 widget은 자신의 director를 알고 있다.
ListBox, EntryField, Button은 특화된 사용자 인터페이스 요소를 위한 DialogDirector의 subclass들이다. ListBox는 현재 선택을 위해서 GetSelection연산자를 제공한다. 그리고 EntryField의 SetText 연산자는 새로운 text로 field를 채운다.
FontDialogDirector는 그것이 display하는 widget을 추적한다. 그것은 widget들을 만들기 위해서 CreateWidget을 재정의하고 그것의 reference로 그것들을 초기화한다.
윈도우용 Smalltalk/V의 application구조는 mediator 구조에 가반을 두고 있다.[LaL94] 그런 환경에서 application은 윈도우를 pane들의 모음으로 구성하고 있다. library는 몇몇의 이미 정의된 pane들을 가지고 있다. 예를 들자면 TextPane, ListBox, Button등등이 포함된다. 이러한 pane들은 subclassing없이 이용될 수 있다. Application 개발자는 단지 inter-pane coordination할 책임이 있는 ViewManager만 subclassing할 수 있다. ViewManage는 Mediator이고 각각의 pane들은 자신의 owner로서 단지 자신의 ViewManager를 알고 있다. pane들은 직접적으로 서로 조회하지 않는다.
- RandomWalk2 . . . . 45 matches
첫 줄의 M,N은 판의 행과 열로 판의 크기를 말하고, 다음 라인의 숫자 두 개는 바퀴의 초기 위치로 행과 열의 순서다. 다음 줄에는 바퀴의 여정이 나오는데 0부터 7 사이의 숫자가 이어진다. 0부터 7 사이의 숫자는 방향을 의미한다. 0이 북쪽이고, 시계방향으로 1,2,3,...7이 배치된다. 마지막 줄은 999로 끝난다.
10행 10열의 판의 0행 0열 지점에서 바퀴가 출발하고, 처음 다섯 칸을 동쪽으로 움직인 다음, 다섯 칸을 남쪽으로 움직이고, 마지막에 남서쪽으로 한 칸 움직인 다음 끝난다.
만약 열이 N-1일 때 동쪽으로 움직이면 같은 행의 0열로 이동하고, 열이 0일 때 서쪽으로 이동하면 동일 행의 N-1열로 나온다.
만약 행이 M-1일 때 남쪽으로 움직이면 같은 열의 0행으로 나오고, 행이 0일 때 북쪽으로 이동하면 동일 열의 M-1행으로 나온다.
첫 번 째 줄은 바퀴가 총 움직인 횟수(처음 바퀴가 놓이는 것은 움직인 것으로 치지 않는다)이고 한 줄은 띈 다음, 판의 각 칸에 바퀴가 방문한 횟수를 행렬로 출력하되, 동일 행의 칸은 빈칸(스페이스)로 구분하고, 각 행은 하나의 줄을 차지한다.
대부분의 프로그래밍 문제나, 경시대회 문제는 한번 주어진 문제에 한번 대응하면 그걸로 끝난다. 하지만 현실은 그렇지 못하다. 한번 개발한 프로그램을 요구사항 추가/변경에 따라 몇 번이고 수정하고 다시 개발해야 할 때도 있다. 우리가 말하는 문제풀이 능력에는 이미 만든 프로그램을 유지보수하는 작업도 포함되어야 한다.
교육에 있어 이런 작업이 중요한 이유 중 하나는, 자신이 만든 프로그램이 해답을 제대로 내느냐는 것을 확인하는 데에는 한 문제를 한번 푸는 것으로 족하지만, 거기서 코드의 디자인 질을 확인할 수가 없다는 문제가 있기 때문이다. 하지만, 요구사항 변경에 따라 자신이 개발한 프로그램을 다시 수정하게 되면, 이전에 만든 코드의 질에 따라 그 노력에 현격한 차이가 난다. 디자인 질이 높으면 아주 짧은 시간 안에 간단하게 요구사항 변화에 대응할 수 있을 것이고, 질이 낮았다면 장기간에 걸쳐 여기저기를 들쑤시고 골치를 썩혀야 할 것이다.
이런 경험을 하게 되면 "디자인의 질"이 무엇인가 직접 체험하게 되고, 그것에 대해 생각해 보게 되며, 실패/개선을 통해 점차 디자인 실력을 높일 수 있다. 뭔가 잘하기 위해서는, "이런 것이 있고, 난 그것을 잘 못하는구나"하는 "무지의 인식"이 선행되어야 한다. (see also Wiki:FourLevelsOfCompetence )
다음은 코드 디자인이 좋지 못했을 경우 고생을 할 요구사항 변경들이다. 그냥 대충 생각나는 대로 아무것이나 나열한 게 아니고, 순서나 변경사항이나 모두 철저하게 교육적 효과를 염두에 두고 "디자인"되었다.
변경사항은 순서대로 "누적적"이다. 변경1을 볼 때는 변경2를 보지 않는다. 현재의 변경을 모두 완료한 후에야 다음 변경을 볼 수 있다. 따라서 변경3을 하고 있다면, 사실상 현재의 코드는 {{{기본 요구사항+변경1+변경2}}}를 이미 충족하고 있어야 한다.
만약 자신이 작성한 코드를 위키에 올리고 싶다면 {{{RandomWalk2/아무개}}} 패턴의 페이지 이름을 만들고 거기에 코드를 넣으면 된다. 이 때, 변경사항을 하나씩 완료함에 따라, 코드의 어디를 어떻게 바꿨는지(예컨대, 새로 클래스를 하나 만들어 붙이고, 기존 클래스에서 어떤 메쏘드를 끌어온 뒤에 다른 클래스가 새 클래스를 상속하게 했다든지 등) 그 변천 과정과 자신의 사고 과정을 요약해서 함께 적어주면 자신은 물론 남에게도 많은 도움이 될 것이다. 또한, 변경사항을 하나 완료하는 데 걸린 시간을 함께 리포팅하면 한가지 척도가 될 수 있겠다.
바퀴벌레의 마리수가 두마리로 늘어난다. 그리고 "턴"(turn)의 개념이 생긴다. 턴은 일종의 단위시간으로, 한번의 턴에 두 마리의 바퀴벌레는 각각 자신이 예정한 방향으로 이동을 한다.
첫번째 바퀴는 0행0열에서 22222444445의 여정으로 여행하고, 두번째 바퀴는 행7열에서 121212645372의 여정을 따른다. (두 바퀴의 시작점이 같을 수도 있다)
처음 턴에 1번 바퀴는 2방향으로 한칸 움직이고, 2번 바퀴는 1방향으로 한칸 움직인다. 둘 중 한쪽 바퀴의 여정이 끝나도 다른 하나의 바퀴 여정이 끝나지 않으면 게임은 종료하지 않는다. 하지만, 두 바퀴 중 어느 누구의 여정도 끝나지 않았더라도 판 위의 셀이 모두 방문되었다면(즉, 1이 방문한 셀과 2가 방문한 셀의 합집합이 전체 셀이라면) 게임은 종료한다.
바퀴에 두가지 종류가 있다. {{{SuperRoach}}}와 {{{NormalRoach}}}가 그것이다. {{{NormalRoach}}}는 한번에 한칸,{{{SuperRoach}}}는 한번에 두칸을 쓸고 지나간다.
어떤 슈퍼바퀴가 0행0열에서 출발하고 여정이 224였다면 그 바퀴가 지나간 판의 상태는 다음과 같다.
정상바퀴가 슈퍼바퀴가 된 동안에 다시 음식을 먹으면 "임시 슈퍼바퀴"의 기간이 현 시점에서 5턴만큼으로 재설정된다. 예컨대, 처음 음식을 먹고 슈퍼바퀴가 된 상태에서 2턴이 지난 다음에 다시 음식을 먹으면 앞으로 5턴 동안 슈퍼바퀴가 된다.
1. 만약 우선순위가 같은 바퀴가 음식을 놓고 경쟁한다면 처음 입력했던 순서가 2차 우선순위가 된다.
판의 크기는 총 10행10열이고, 2행6열, 3행9열, 4행8열, 4행7열에 음식이 미리 비치되어 있다(이 때 행과 열은 앞서와 마찬가지로 각각 0부터 시작). -1은 음식정보의 끝을 의미한다.
출력정보는 앞서와 유사하다. 한번에 두칸을 움직이면 움직인 횟수도 두번이고, 한번 쉴 때에는 움직인 횟수가 증가하지 않는다. (고로, 결국 "움직인 횟수"는 움직인 거리와 비슷하다고 보면 된다) 판의 정보는 예전과 동일한 양식으로 출력한다.
- 논문번역/2012년스터디/이민석 . . . . 45 matches
오프라인 필기 글자 인식을 위한 시스템을 소개한다. 이 시스템의 특징은 분할이 없다는 것으로 인식 모듈에서 한 줄을 통째로 처리한다. 전처리, 특징 추출(feature extraction), 통계적 모형화 방법을 서술하고 저자 독립, 다저자, 단일 저자식 필기 인식 작업에 관해 실험하였다. 특히 선형 판별 분석(Linear Discriminant Analysis), 이서체(allograph) 글자 모형, 통계적 언어 지식의 통합을 조사하였다.
본 논문에서는 은닉 마르코프 모형에 기반한, 어휘(lexicon)-free 오프라인 필기 인식 시스템을 소개하고 완전한 영어 문장 데이터베이스에 관한 몇 가지 실험을 저자 독립식 그리고 대조를 위해 다저자, 단일 저자식으로 수행했다. 전처리와 특징 추출 방법을 소개하고 이에 더해 선형 판별 분석, 이서체 글자 모형의 사용, 통계적 언어 모형 같은 더욱 정교한 기법들을 조사한다. 그 뒤의 절에서는 오프라인 필기 인식에 대한 관련 작업들을 짧게 검토한다. 우리가 사용한 데이터베이스는 3절에서 소개한다. 그 다음 전처리, 특징 추출 방법, 통계적 모델링과 인식을 위한 기법을 설명한다. 평가 결과는 제안한 방법의 효율성을 입증하기 위해 7절에서 소개한다.
최근 몇 년간 오프라인 필기 인식 분야는 상당히 진전하였다. 특히 우편 주소나 legal amount 읽기를 위한, 적은 어휘를 사용한 개별 단어 인식 시스템은 높은 인식률을 달성했고 인식 정확도뿐 아니라 처리 속도를 고려해봐도 개선할 여지가 거의 없다. [2] [8]
반면에 방대하거나 아예 한계가 없는 어휘를 이용한 제약 없는 필기 글자 인식은 훨씬 어렵다. 이는 개별 단어 처리 시스템에 본질적으로 있는 문맥 지식과 단어 분할 정보가 없기 때문이다. 이런 난조에도 제약 없는 필기 글자 인식 시스템이 몇 개 개발되었다. [1, 9, 11, 18, 15, 17] 이들 시스템은 주로 추출한 특징의 종류와 한 줄이 인식 전에 단어별로 분할되는 지 아닌지에 차이가 있다. 은닉 마르코프 모형(HMM) 그리고 순환형 신경망과 HMM의 융합을 이용한 분할 기반 방법의 예로 각각 [1, 18]과 [15]가 있다. [15]의 실험은 단일 저자로부터 얻은 데이터베이스를 가지고 수행한 반면 [1, 18]의 실험은 여러 저자의 자료를 가지고 검사하였다. [16]에서는 오프라인 필기체 단어 인식을 광범위하게 조사하였다.
한 줄을 초기에 분할하여 발생하는 오류를 피하기 위해 [9]에서는 분할을 하지 않는, 즉 한 줄 전체를 인식 모듈에 넘기는 방법을 제안한다. 이 시스템은 단일 저자에 대해 검사되었고 통계적 언어 지식과 결합하여 유망한 인식 결과를 달성한다. [11]은 저자 수백 명으로부터 제작하고 보다 큰 데이터베이스에서 검사된, 저자에 무관한 제약 없는 글자 인식을 위한 발전된 시스템을 서술한다. 앞으로 나올 절에서 설명하는 시스템은 전처리와 특징 추출 방법이 약간 다른 비슷한 접근법을 사용한다. 그에 더해 이서체 글자 모형, 즉 글자 종류별 HMM 집합과 통계적 언어 모형의 사용 뿐 아니라 특징 벡터의 선형 판별 분석(LDA)을 적용한 결과도 조사한다.
훈련과 인식을 위한 입력 데이터는 완전한 영어 문장 데이터베이스에 의해 제공되고 각각은 Lancaster-Oslo/Bergen 말뭉치에 기반한다. [7] 저자 독립식 뿐 아니라 다수 저자에 관한 실험을 Bern 대학의 IAM에서 수집한 필기 형태 [10]의 데이터베이스를 사용하여 수행하였다. 데이터베이스 전체는 다양한 글 범주(출판 글자, 종교, 인기 설화, 픽션...)를 포함하고 500명 이상 저자의 1200개 이상 필기 형태로 구성된다. 우리는 250명 이상의 저자가 저자 독립식 실험을 위해 제작한 범주 [a..f]의 form과 여섯 저자가 다저자식을 적용하여 제작한 하위집합 c03을 사용한다.
필기 글자의 이미지가 주어진 상태에서 먼저 전체 이미지의 기울임을 교정하여 스캐닝 도중 양식의 비정확한 배치나 글을 쓸 때 지속적인 "밀려남(drift)"에 의한 오류를 바로잡는다. 따라서 이미지는 이진화된 이미지의 수평 밀도 히스토그램이 최소 엔트로피를 가지기 전까지 회전된다. [4] 이 전처리 단계를 IAM 데이터베이스의 서식에는 적용하지 않았는데 저자들이 양식 아래의 두 번째 시트에 자를 쓰도록 요청받았고 서식 자체는 스캐닝하면서 정확히 정렬되었기 때문이다.
글을 한 걸음 더 처리하기 위해 각각의 줄을 추출하여야 한다. 그러기 위해 이미지를 필기 라인의 핵심 영역(core region)들 사이를 분리한다. 핵심 영역, 즉 텍스트 라인의 위 베이스라인과 아래 베이스라인 사이의 영역은 threshold를 적용하여 찾는다. threshold는 줄들이 핵심 영역에 속하기 위해 필요한 전방foreground 픽셀들의 최소 개수를 나타낸다. 이 threshold는 이진화한 필기 영역의 수평 밀도 히스토그램을 이용하여 Otsu의 방법 [12]를 적용하면 자동으로 결정된다. 그 다음 수평 투영 히스토그램에서 각 줄의 검은 픽셀의 개수가 축적되고 이미지는 이 투영 히스토그램의 minima를 따라 핵심 영역별로 나눠진다.
다양한 저자의 글씨체 때문에 인식 작업을 단순화하기 위해 필기를 정규화한다. 특히 수직 위치, 기울임, 경사(slant)의 교정이 전처리에서 중요함이 드러났다. 그 이상의 정규화는 필기의 크기와 그레이레벨의 강도를 고려한다.
수직 위치와 기울임은 [15]에 서술된 접근법과 비슷한 선형 회귀(linear regression)를 이용한 베이스라인 측정법을 적용하여 교정한 반면에, 경사각 계산은 가장자리edge 방향에 기반한다. 그러므로 이미지는 이진화되고 수평 흑-백과 백-흑 전환을 추출하는데 수직 stroke만이 경사 측정에 결정적이다. canny edge detector를 적용하여 edge orientation 자료를 얻고 각도 히스토그램에 누적한다. 히스토그램의 평균을 경사각으로 쓴다.
필기의 크기를 정규화하기 위해 각 줄의 극값(local extrema) 개수를 세고 줄의 너비와의 비율을 얻는다. 비례(scaling) 계수는 이 비율에 선형인데 비율이 클 수록 글씨체는 더 좁아지기 때문이다.
마지막 전처리는 그레이 레벨을 정규화하여 다양한 펜과 배경색으로 인한 변화에 대처하는 것이다. 이미지의 그레이 레벨 구간은 어두운 강도는 0이 되고 밝은 쪽은 255가 되도록 조정한다. 말뭉치의 통상적인 한 줄에 이들 전처리를 적용한 결과가 그림 3에 나타나있다.
필기 줄을 전처리한 이미지는 특징 추출 단계의 입력 자료로 사용된다. sliding window 기법을 [11]이 설명하는 접근법과 비슷하게 적용한다. 우리의 경우 이미지의 높이와 열 네 개 크기의 창이 이미지의 왼쪽에서 오른쪽으로 두 열씩 겹치면서 움직이고 기하 추출의 쌍을 추출한다.
강도 분포의 평균값의 변화 뿐 아니라 하단 contour와 상단 contour의 방향을 고려하기 위해 추가적으로 세 가지 방향성 특징을 계산한다. 말인 즉 우리는 네 lower countour 점, upper contour 점, sliding window 내 평균값을 통해 줄들을 재고 선 방향들을 (8), (9), (10) 특성으로 각각 사용한다. (뭔 소리) 더 넓은 temporal context를 고려하여 우리는 특징 벡터의 각 성분마다 근사적인 수평 미분을 추가로 계산하고 결과로 20 차원 특징 벡터를 얻는다. (윈도우당 특징 10개, 도함수 10개)
특징 벡터들을 decorrelate하고 종류 분별력을 향상하기 위해 우리는 훈련 단계와 인식 단계에서 LDA를 통합한다. (cf. [6]) 원래 특징 표현을 일차 변환하고 특징 공간의 차원을 점차 줄이며 최적화한다. 일차 변환 A를 구하기 위해 훈련 자료의 클래스내 분산(within class scatter) 행렬 Sw와 클래스간 분산(between class scatter) 행렬 Sb를 이용하여 고유 벡터 문제를 해결한다. 이 분산(scatter) 행렬들을 계산하여 각 특징 벡터의 HMM 상태와 함께 이름표를 붙여야 한다. 우리는 먼저 일반적인 훈련을 수행하고 훈련 자료들을 상태를 기준으로 정렬한다. 분산 행렬을 구했으면 LDA 변환은 다음 고유 벡터 문제를 풀어 계산한다.
𝜇𝑖와 𝐴𝑇𝜓𝑖는 𝑆𝑤−1𝑆𝑏의 고유값과 고유벡터다. 차원 reduction(경감?)은 가장 큰 m개 고유값에 속하는 m개 고유 벡터만을 구하여 얻어진다. 모든 특징 벡터를 LDA 변환한 후에는 완전히 새로운 HMM 훈련이 수행된다.
전처리에서 벌충할 수 없는 서로 다른 글씨체 사이의 변동을 고려하기 위해 우리는 [13]에 서술된 접근법과 비슷한, 다저자/저자 독립식 인식을 위한 글자 이서체 모형을 적용한다. 이서체는 글자 하위 분류, 즉 특정 글자의 서로 다른 실현이다. 이는 베이스라인 시스템과달리HMM이이제서로다른글자 하위 분류를 모델링하는 데 쓰임을 뜻한다. 글자별 하위 분류 개수와 이서체 HMM 개수는 휴리스틱으로 결정하는데, 가령 다저자식에 적용된 시스템에서 우리는 이서체 개수가 저자 수만큼 있다고 가정한다. 초기화에서 훈련 자료는 이서체 HMM들을 임의로 선택하여 이름표를 붙인다. 훈련 도중 모든 글자 표본에 대해 해당하는 모든 이서체에 매개변수 재추정을 병렬 적용한다. 정합 가능성은 특정 모형의 매개변수가 현재 표본에 얼마나 강하게 영향받는 지를 결정한다. 이서체 이름표가 유일하게 결정되지는 않기에 이 절차는 soft vector quantization과 비슷하다.
위 식에서 P(W)는 글자 시퀀스 w의 언어 모형 확률이고 P(X|W)는 이 글자 시퀀스를 그 글자 모형에 따라 입력 데이터 x로서 관찰한 확률이다. 우리의 경우 absolute discounting과 backing-off for smoothing of probability distribution을 이용한 바이그램 언어 모형을 적용하였다. (cf. e.g. [3])
우리의 필기 인식 시스템을 평가하기 위해 단일 저자식, 다저자식, 저자 독립식 인식 이렇게 세 가지 실험을 수행했다. 표 1에 이들 실험의 글자 오류율이 있다. 처음 두 열은 실험 종류, 3열은 언어 모형을 적용하지 않은 오류율, 4열은 바이그램 언어 모형을 글자 수준에서 적용한 결과다. 언어 모형은 IAM 데이터베이스의 [a..d] 범주의 모든 글을 사용하여 생성하였고 실험 내내 일정하다. 표 2에는 어휘-free 단어 인식과 어휘 기반 단어 인식이 나타나있다.
단일 저자식 실험은 Senior 데이터베이스에서 훈련에 282줄, 검정에 141줄을 써서 수행했는데, 글자 수준에서 검정 집합의 바이그램 perplexity는 15.3이다. 베이스라인 시스템의 오류율 13.3%는 바이그램 언어 모형을 채택하여 12.1%로 감소했다. LDA 변환한 특징 공간의 차원이 12로 내려갔지만 오류율은 그다지 커지지 않았다. 단일 저자 시스템의 단어 오류율(표 2)은 어휘 없이 28.5%, 1.5k 어휘가 있으면 10.5%다. 이 결과들은 우리가 같은 데이터베이스를 이용하여 literature(문학 작품은 아닌 것 같다)에서 얻은 오류율과 비교되긴 하지만, 훈련 집합과 검정 집합의 크기가 달라 비교하긴 어렵다. [17]에서 오류율은 글자의 경우 28.3%, 어휘 없는 단어의 경우 84.1%, 1.3k 어휘가 있는 단어의 경우 16.5%다. [15]의 보고에서 단어 오류율은 어휘가 있는 경우 6.6%, 어휘 free인 경우 41.1%다. [9]에서 최고의 어휘 기반 단어 오류율은 15.0%다.
- 새싹교실/2011/무전취식/레벨6 . . . . 45 matches
김준석 : 지난주에 시험기간. 댄스스포츠를하고. 댄스스포츠 동아리를 들어갔어. 5주를 나가서 신입회원이 됬다. 내가 거의 젤 어림. 요즘에 춤바람이 났다고 주위사람들이 얘기함. 그리고 게임을 너무 많이 했음. 심시티4 를 너무 열심히함. 그리고 이번주 프로젝트 발표가 3개가 있어. 이번주 금요일날 죽을것 같음. 전체적으로 시험은 B이상은 나올것 같음.
강원석 : 선대 잘봤음. 다른과목에 비해서는. c보는 날 선대수업듣고 시험봄 그래서 망했나봄. 생일인데 청룡탕은 안들어갔고 애들한테 밥사주고 술은 하늘이가 쏨 ㅋㅋㅋ 와인 파티가서 1만원내고 한잔 마시고나옴 그래서 소개해준 친구가 다 내줌 총 4명이서 갔었음 다신 거기 안감 거기서 그리고 치킨도 먹음. 그리고 옆동네가서 심야영화보고 애들데려다주고 집에 4시에 들어갔음 재밌는 날이었음.
서원태 : 선대 망. C언어 보고 정통부 애들끼리 모여서 술먹음. 그리고 PC방가서 게임하고 집에가서 또 게임함 4시까지 하고 그것때문에 다음 영어시험은 아예 못봐서 침울함. 그래서 교수님께서 한번더 기회주셔서 다음주 월욜 10시까지 오라했는데 그날도 못옴. 그래서 중간고사 F.
이진영 : 생일인데 비왔었음. 한강가려했었는데. 그러고 선대시험봤는데 망함. 친구랑 그래서 인천가서 카페에서 한 3시간 떠들음. 그러고 다른친구를 만나서 그 친구 한명만 보는줄 알았는데 친구들이 깜짝파티 해줌. 창설했는데 맵을 잘못따라가서 실패할줄 알았는데 56초만에 성공함. 난 생물의 기원과 진화 점수 평균 넘음.
이소라 : 저요 물리시험을 봤는데. 1등함. 96점. 난좀 천재임. 그리고 천둥번개 엄청쳤음. 그때가 100일날이어서 놀러갈려했는데 못감. 슬픔 ㅠㅠ 그리고 창설 전 한게 없는데 1등함. ㅋㅋㅋㅋ 잘부려먹었다. 캐치마인드 해서 하나 마스터함. ㅋㅋ 그래서 똥별됨 ㅋㅋㅋ.
김태진 : 지난주에 부모님 만남. 창설을 새로운 알고리즘을 급조해서 써보려했으나 완전 망함. ㅋㅋㅋ 그리고 원래껄로도 새로하려했는데 원래껄로 하면 되는줄 알았는데 또 Fail. 결국 Fail Fail. 지난주에 C시험을 치자마자 원석이를 찾았는데 원석이 사라짐. 애들이 타함께 찾다가 청룡탕으로 가는걸 봣으나 그 뒤를 모름. 생물의 기원과 진화 점수 18점 맞음.
* Factorial 짤때 중요한건 Stack Call!! 함수 호출시. 스택에 돌아올 주소를 넣어두고 함수가 종료되면 스택에서 빼와서 돌아간다. 너무 많은 자기 자신을 호출하는 함수라면 스택에 너무 많이 쌓여 오버 플로우(Over Flow)로 에러가 나게 된다. 항상!! 종료조건을 정하고 함수를 설계하자.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 이걸 너무 늦게 올리게 되는군. 내가 Array를 이때 가르쳤었구나 이렇게. factorial은 중요하긴 한데 더 중요한건 Stack Call이라는 설계입니다. 잘 기억하시고요. 이때 케잌을 먹었는데 기억하면 신나는군요 자 다음 레벨 7로 갑니다. - [김준석]
* 배열 너무 어려워요... Stack은 그림으로 조금이나마 이해해서 다행인것 같아요. C과제가 새로 나왔는데 배열을 써서 풀 수 있는게 있다고 했는데 배열을 아직 잘 이해를 하지 못해서 배열을 쓰지는 않았어요. 복습을 빨리 해야하는데 시험도 끝나고 하니까 너무 게을러졌어요ㅋㅋ. 빨리 정신 차리고 C공부를 계속 해야겠습니다. - [서원태]
* 안하고 게으르다고 생각하는게 정상이다. 그렇지만 너가 아무것도 안하는것도 아니지 이렇게 새싹 교실에 참여하는것만으로도 너의 실력은 올라간단다. - [김준석]
* 어쩐지 저는 이 반도 아닌데 육피에 거주하다보니 (그리고 우리반 새싹은 거의 질문형식이다보니) 다른 이런저런 새싹을 보게되고 끼네요. 덕분에 ICE Breaking에 제 이름이..- 사실 지금 후기를 쓰는것도 피드백 갯수를 채우려는 속셈...응? 배열은 C시간에도 이제 막 배우고 있는건데 여기는 제대로 연습안했다간 망하기 쉬운곳이라더군요. 삽질열심히 해야겠어요. -[김태진]
* 태진이 후기 써줘서 고맙다. 다른반에대한 훌륭한 피드백이 되는구나. 내가 진도가 좀 빠른것은 맞아 ㅋㅋ 심심하다 들으면 재밌지. - [김준석]
* stack과 array 에 대해 배웠습니당..ㅎㅎ 근데 이날은 케잌과 과자를 무진장 먹고 엄청 졸았던 걸로 기억되네요...그래서 이 날 수업은 @.@ 이상태에서 들었어요..죄송해요..흑흑 근데 이거 다음주에 복습을 다시 한번 해서 >.< 좀 알 것 같아요!! 근데 stack이 이해가 가긴 가는데 완전히 가지는 않아요ㅠㅠ 그...네모난 그릇밖에 생각이 안납니당...ㅎㅎ대충은 알겠는데 ㅠㅠ 더 올바른 이해가 필요합니당! -[이진영]
* 네모난 그릇이 스택의 모양이지요~~ 꼭 정해진건 아니지만 이해하기엔 좋답니다. Array에 대한 자세한 설명을 더 써주었으면 좋은데@_@ ㅋㅋ 진영이 졸고 있어도 잘 듣고있는거 보고있어요. 착한 어린이=ㅂ= 과자나 먹여봅세 - [김준석]
* 후기 늦게써서 죄송해요...ㅠ_ㅠ 스택은 어렵습니다. 별로 신경써야하는 부분이 아니라고 생각하고있었는데 그래서 재귀함수를 못했나봐요. 배열도 완전히 까먹고있던걸 새로배우는 마음으로 배웠어요. 배열~포인터까지는 다시한번 복습이 필요할것같아요! -[이소라]
- 프로그래밍언어와학습 . . . . 44 matches
DeleteMe) 제목짓는 센스가 없는 관계로;; 원글의 뜻에 맞게 제목을 고쳐주시기를; Rename & Refactor This Page; --석천
토크백까지 같이 읽어야 할 것 같고. -_-; (물론 쓸데없이 화내는 사람들이 많아보여서, 쩝..) 그 글에 대해서 약간 한계를 생각한다면.. (뭐. 그 글 쓴 분의 의도는 대강 알겠지만.)
* 학교에서 C++ 배운다고 하드웨어 건드리나. -_-; (전전공이라면 몰라도..) 컴퓨터공학과의 경우 학교에서 C++ 배워도 어셈블러 레벨까지 다루는 사람이 별로 없다고 할때, C++ 을 배웠다고 시스템레벨 까지의 깊은 이해가 필요없었다는 점인데.. 글을 읽으면, 마치 '교육용 언어로 C, C++ 을 배웠다면 시스템 레벨까지 이해할 것' 처럼 쓴 것 같다고 생각. (C, C++ 포인터를 레퍼런스 이상의 개념으로 쓴적이 있었나.. --a) 차라리 '우리는 전전공 출신에 하드웨어제어 해본 사람 뽑습니다' 라고 할것이지..쩝. Domain-Specific 한 부분을 생각치 않고서는 시스템 프로그래머에게서는 늘 자바와 Script Language 는 '군인을 나약하게 만드는 무기' 일 수밖에 없으니까.
언어로서 C나 C++의 (수학적, 논리적) 규칙을 정리하면 A4용지 몇장이면 충분합니다. 흥미로운 것은 그런 규칙과 요소들이 서로 조합될 때(그리고 조합된 것을 다시 조합할 때 -- 라이브러리, 프레임웍)의 변용입니다.
> 교육기관에서는 문법적 특성과 알고리즘 이외에도
> 컴퓨터 시스템을 어떻게 제어하고 어떤 식으로 영
하지만 이제는 컴퓨터 시스템에 대한 저차원적인 이해 없이도 얼마든지 뛰어난 프로그램을 만들 수 있는 영역이 늘어나고 있습니다. 언제든지 저차원에 대한 이해는 도움을 주지만 이제는 저차원의 정의가 조금 더 상향 조정된 문제 영역이 훨씬 많습니다. (컴퓨터 발전 초기에는 적용도메인이 협소했습니다)
하드웨어를 "뼈 속 깊이 꿰뚫고 있는 사람"과 그런 거라곤 하나도 모르는 사람이 동일한 문제에 접근했을 때 후자의 경우가 더 훌륭한 프로그램을 더 빨리 산출해낼 가능성은 얼마든지 있습니다.
> 스템을 이해하지 못하게 하고, 시스템 자체에 대한
> 에 대해서 관심도 높고 좋은 언어라고 생각한다. 하
> 아서 쉽고 편하게 접근할 수 있지만, 더 깊이 공부할
맥락을 제거한 언어의 우열 논의는 비생산적입니다. 또, 우리는 언어 자체말고도 (그 언어에 잠재해있는) 광막한 세계를 접합니다. C언어가 깊이가 있니 Java언어가 깊이가 있니 하는 것은 난센스입니다. 언어는 모두 깊이가 같습니다. see also [처치튜링논제]
C가 하드웨어를 조작하게 해주고, 따라서 컴퓨터 시스템을 제대로 이해하게 해준다는 것은 좀 과장된 주장으로 생각됩니다. "C 언어"가 보여주는 컴퓨터 시스템은 이미 몇계단 왜곡되어 있습니다.
아프리카 말로도, 중국어로도, 영어로도 "심오하고 사람을 감동시키는 효과적인 말"은 얼마든지 할 수 있습니다. 그것은 말을 어떻게 그 언어 규칙에 맞게 잘 조합하느냐의 문제입니다. 이 변용의 능력은 "언어"만 후벼파서는 절대 얻지 못합니다. "언어"가 구성해주는 2차원의 메타적인 세계를, 혹은 그 메타 세계의 메타 메타 세계를 후벼파야 합니다.
영작을 수십년간 공부한 사람을 알고 있습니다. 맨날 관용구를 외우고, 문법을 익히고, 날마다 영작을 한 편 씩 해서 미국의 교수에게 그 글을 보내고 검사를 받아온 사람입니다. 그 사람이 몇 년 전 제게 고백을 했습니다. 자기 영작 공부는 후회스러운 것이라고. 그 사람은, 훌륭한 글을 쓰는 것은 단순히 언어적, 문법적인 요소를 떠나서 얼마나 훌륭한 아이디어를 갖고 있느냐에 일차적으로 좌우되는 것이라고 깨닫고, 후학들에게 다양한 주제의 책을 접하라는 충고의 글을 썼습니다. 명료한 글을 쓰려면 언어가 명료하기 이전에 사고가 명료해야 하며, 풍부한 글을 쓰려면 언어가 풍부하기 이전에 사고가 풍부해야 합니다.
한국에서 일찍부터 컴퓨터를 접했던 소수의 "특권" 계층은 자신이 익숙하게 사용해온 것들이 인기를 잃는 것에 대해 개탄하고, 신세대들은 공부가 부족하다며 비판하길 좋아합니다. 그들의 진정한 문제는 겸손하지 못하다는 것입니다. 자신이 하고 있는 것이, 자신이 있는 영역이 더 본질적이고 더 어려우며, 더 고수준의 것이라고 생각하기 쉽습니다.
이 문제는 어디를 가도 비슷합니다. 학교시절에 어렵게 공부를 한 기득권층은 최근의 "열린교육"이나 "대안교육"에 대해 상당한 불만을 갖고 과거회귀를 주장하기 마련입니다. "너희는 몰라."
p.s. 토크백에서 여러분은 일반 게시판 모델의 폐악을 여실히 보고 있습니다. 거기는 사람이 축이 되어 있습니다. 위키에서는 논점이 축이 됩니다. 논점을 축으로 그 글들을 재정리 하면 양이 1/10로 줄고 질은 10배 높아질 것이라고 생각합니다.
p.s.2 토크백에 자바를 대학에서 가르칠 것을 주장하며 "파스칼 따위는 이제는 버려야죠"라는 말이 있는데, 버리려면 먼저 가지고 있어야 할 뿐 아니라, 파스칼을 갖거나 버리거나 하는 것은 이제 큰 의미가 없습니다. 구조적 프로그래밍 같은 파스칼을 주축으로 한 패러다임을 배우는 것이 중요합니다. OOP는 구조적 프로그래밍을 감싸안고 더 자라난 것이지 뒤에 남겨두고 진보한 것이 아닙니다.
- ZeroWiki에서 언어습관 . . . . 43 matches
# 관찰된 글을 일부 발췌하고 이름을 연예인처리(?) 하였습니다.
당연히 환영이지 누구든 하고픈 사람 같이 해도되~! - 박수홍
오늘은 씨++ 숙제를 하고... 스터디들도 빨리 해봐야 겠어요 ^^
오호~ 강호동이다^^ 열심히 해보자고!! - 김원희
최근에 이모티콘 관련표현들이 많은건, 이전에 위키를 써온 사람들의 방식에 대해 제대로 모르는 상황에서, 사람들이 익숙하던 방식으로 쓰는 중이라는 생각을 해봅니다. 그리고 그에 대한 지적이 아주 심하진 않았고요. --[1002]
''과거 [노스모크]의 전례를 보았을때, 기존 회원들은 자연계처럼 자정작용이 언어습관에 적용되기를 바란것이 아닐까요? 제가 읽는 대부분의 커뮤니티에 저런 패턴의 글들이 자연 소멸했습니다. 지금 저 글을 읽기 힘들다는 느낌 자체가 신기한 경험입니다. 마치 "그놈은 멋있었다."를 읽다가 눈이 피곤한 느낌이라고 할까요? ''--NeoCoin
저는 약간의 벽이 느껴집니다. 제가 읽은 책중 읽다가 던저버린 두편의 책을 생각며 이유를 고민했습니다.
요즘 제로위키 글을 읽다보면, 전자라서 읽다가 그만두는 경우가 종종 발생합니다. 심하게, '글쓴이가 글이 남에게 읽힐때의 고민이 전무하다' 라고 표현할까요? 읽다 보면, 기존에 쓰여진 글들이 매우 딱딱한 문장이 아님에도 채팅과 같은 글들이 밑에 있어서, 딱딱하게 보입니다. 기말고사 시험지에 써있는 낙서, 생각의 흔적들이랄까요? 묘하게 배치된 글들을 보면서, 시간과 공간의 경험이 서로 다른 사람들의 생각과 글들이 융화되기가 참 힘들다는 생각을 가집니다. --NeoCoin
[제로위키]에서 쓰는 어떠한 언어습관이 관습화되고 있는건가요? 아니면 [제로페이지]에 새로 들어온 회원들이 원래 쓰던 언어습관과 '''다르게''' 자꾸 글을 써서 아직 관습화되진 않았는데 '''관습화 처럼''' 느껴지는 건가요? 로마에 가면 로마법을 따르라지만, [제로위키]에는 어떠한 법이 있나요? --[Leonardong]
지적하신 내용에 공감합니다. 기존 사용자 층의 글이 자연스럽게 줄어들고, 새로운 사용자 층이 증가하면서, 형성되는 언어습관이 재미있어서 주목하고 있는것 이지요.
아시다 시피 위키는 과거글이 꾸준히 읽히고, 타인이 고칠수 있는 시스템입니다. 그래서 모두가 읽는데 의미 전달의 변이가 적은 표준어, 서술 형식으로 수렴되는 것을 당연하게 생각했습니다. (반대로, 게시판은 한번 쓰면 타인이 못고치고 다시는 읽지 않으니 분위기가 수렴되거나 하는 것이 적겠지요.) 그런데, [제로위키]는 최근 2년간의 모습이 재미있거든요?
특히 NoSmok:단락나누기 와 같은 위키 쓰기에 관련한 교육이나 고민을 공유하는 시간이 적은 상태에서 진행방향은 점차 더 달라 지는 것 같습니다. 몇년후 [제로위키]는 상당히 특별한 색깔을 가지게 되지 않을까요? --NeoCoin
[제로위키]가 다른 위키나 커뮤니티의 글처럼, 의미 전달의 변이가 적은 표준어나 서술 형식으로 수렴하지 않는다는 말씀이시군요. 요새만 그런 것이 아니라 최근 2년동안 죽 그래온 것으로 보아, 앞으로 이모티콘이 가득가득한 위키라는 특별한 색깔을 [제로위키]가 가지리라는 의견이시고요.
문단의 내용이 확인을 부탁하는 것 같아서 답변 답니다.(그렇지 않다면, 중복 문단의 존재 이유가 없겠지요?) 전자의 문장은 잘 정리하셨습니다. 허나, ''앞으로 이모티콘이 가득한 위키라는 특별한 색깔을 [제로위키]가 가지리라는 의견이시고요.'' 에는 전체 긍정을 할수 없습니다. 아직 예단할수는 없지요. '가득가득'이라니요. 내년 신입 회원이 기대되기는 하지만요. --NeoCoin
왜 그럴까 그 이유를 생각해보았습니다. 제가 생각하기에 한 가지 이유는 [제로위키]에서는 과거 글이 꾸준히 읽히지 않는다는 것이고, 다른 이유는 과거 글을 타인이 고치지 않는 것이라고 봅니다.
'' ...전략...위키는 과거글이 꾸준히 읽히고, 타인이 고칠수 있는 시스템입니다. 그래서 모두가 읽는데 의미 전달의 변이가 적은 표준어, 서술 형식으로 수렴되는 것을 당연하게 생각했습니다. (반대로, 게시판은 한번 쓰면 타인이 못고치고 다시는 읽지 않으니 분위기가 수렴되거나 하는 것이 적겠지요.) 그런데, [제로위키]는 최근 2년간의 모습이 재미있거든요? ...후략...'' --NeoCoin 윗글 인용
이것이 지켜진다면, 당연히 [제로위키]의 글도 표준어, 서술형식으로 수렴할 것입니다. 두 가지 이유 가운데서도 과거 글을 - 오래되면 오래 될 수록(?) - 타인이 잘 안 고치는 경향이 있습니다. 건드릴 엄두가 나지 않지요. 따라서 새로 만드는 페이지에 주로 글을 쓰고, 새로 만드는 페이지가 주로 생기기 때문에 새로운 언어습관이 관습화된 것 처럼 보인다고 생각합니다. --[Leonardong]
''과거 글이 꾸준히 읽히지 않고 타인이 고치지 않는다는 점에 대하여...''
* 예, 꾸준히 제기되는 문제입니다. 과거 글이 읽히는 것까지 위키라는 시스템이 책임지지는 않지요. 이제 [제로위키]도 2000페이지가 넘었고, 각 페이지당 A4 한장이라고 생각해도, 1000장의 두꺼운 사전이니까요. 휴~, 그 중 우리가 읽고 키울것은 많게 잡아도 20% 내외 일것입니다. (200~300 페이지) 당장 사용하는 것은 10% 정도? 그러나 위키 시스템의 철학적인 면에 대한 학습과 토론의 장이 전무한 상황에서 당연한 결과 같네요. [위키요정]과 NoSmok:문서구조조정 NoSmok:WikiGardening 등의 노력이 적은게 아쉽습니다.
''타인이 남의 글을 잘 안고치는 경향 에 대하여...''
- SmallTalk/강좌FromHitel/강의3 . . . . 42 matches
지금까지 우리는 Smalltalk를 시작하고 끝내는 방법과 함께, Smalltalk 명령
도록 하고 있습니다. 이는 Dolphin Smalltalk를 사용하는 사람들이 어떤 계
층인지, 그리고 이 사람들이 어떤 것을 원하는지를 조사하기 위한 수단이라
고 생각합니다. 또한 사용자 지원을 위해서도 필요한 사항이라고도 합니다.
저장하겠느냐고 묻는데, 이 물음에 <예>라고 대답합니다. 그러면 "Locked
지, 그리고 어떻게 등록을 해야 하는지가 설명되어있습니다.
터넷에 연결되어있는지 확인하고 이어서 이 단추를 누르면 Object Arts사의
* Product: 사용하고 있는 Dolphin Smalltalk의 종류. 우리는 1.1판을 고르
Dolphin Smalltalk에 대해 처음어로 접한 매체를 고릅니다.
이전에 Smalltalk를 사용한 경험을 묻고 있습니다.
여전히 화면에 큼지막한 디지털 시계가 표시되고 있을 것입니다. 이제 File
Smalltalk는 현재의 상태를 저장하겠느냐고 묻습니다. <예>를 선택하십시오.
유지하고 움직이는 것입니다. 신기하지 않습니까?
체지향적 언어라고 말합니다. 따라서 Smalltalk에서 모든 것은 객체라는 사
있습니다. 그리고 이는 Smalltalk를 종료할 때 그대로 저장되었다가 나중에
재의 Smalltalk 상태'를 "본"(image)이라고 부르고, 이러한 본을 저장해 두
는 것을 "본을 뜬다"고 말합니다. 본에는 Smalltalk 환경에서 살아서 돌아가
환경이 다시 시작될 때 이전에 뜬 본을 그대로 가지고 와서 객체들을 재생시
때로는 새로운 객체가 만들어지기도 하고, 이미 있던 객체가 없어지기도 하
객체를 지웠다고 생각해 봅시다(물론 이러한 일을 Smalltalk가 묵묵히 지켜
- ZeroPage_200_OK . . . . 42 matches
* 각자 자신의 Cloud9 IDE Dashboard에서 Workspace를 만들어 과제를 진행하고 URL을 공유합시다. 과제는 "메뉴 만들기"였는데 어떤 모습으로 구현해도 좋습니다!
* 혹시 여전히 Cloud9 IDE이 동작하지 않으면 이번 내용은 클라이언트 구현만 있으므로 JSFiddle에 Save하고 URL을 링크하거나 [ZeroPage_200_OK/소스] 페이지에 올리셔도 됩니다.
* 웹은 다양한 이론적 배경을 바탕으로 탄생하고 발전해 왔습니다. 우리 스터디에서는 그런 통합적인 지식을 바탕으로 여러분들에게 현재의 웹 기술에 대한 이해는 물론이고 웹 이후의 새로운 경향을 고민하고 연구하기 위해 필요한 단서를 제공하는데 목표를 두고 있습니다. 물론 굳이 모르고 있어도 단순 웹 개발을 하는데 무리는 없으나, 관련된 문제해결 과정이나 새로운 기술 이해를 위해서 중요한 능력이 될 수 있습니다.
* 우리 스터디에서 다루는 이론은 학부 2~4학년의 여러 교과를 포괄할 뿐 아니라 그 범위를 초월할 수 있습니다. 하지만 앞으로도 학부 1학년도 쉽게 이해할 수 있도록 대부분의 이론 각론은 교과 수업을 바탕으로 하지 않고 설명하는 방향으로 진행하겠습니다.
* form 관련으로 사용자 입력을 받을 수 있었던 부분 실습을 주로 배웠습니다. 근데 궁금한게 도중에 html5 얘기를 하시면서 <a href=""><button>abc</button></a> html5에서는 이렇게 사용할 수 있는데 이런게 자바스크립트를 쓸 수 없는 경우에 된다고 하셨는데 그럼 원래 버튼의 onclick같은 on~는 자바스크립트인건가요? - [서영주]
* 이번 주제는 형진이형한테 여러번 들었던 내용이었네요. 확실히 여러번 들으니까 무슨 이야기를 하는지 조금 더 빠르게 이해할 수 있었던 것 같습니다. 그리고 지난번 들을 때에는 궁금한게 생각 안 났었는데 이번엔 궁금한게 생기더군요. 뭐지 -ㅅ-;; ㅋㅋ 다만 다음주에 할아버지 팔순이라 참여를 못 하게 되어서 좀 아쉬울 뿐.. -_-a 그리고 공모전과 관련해서 끝나고 이런 저런 이야기가 많이 나왔었는데, 잘 진행되어 우리 잘 하고 있어요~ 라는 모습을 보여줬으면 하네요 - [권순의]
* https는 정말 어려운 주제 같네요. 일단 이해 되고 나면 쉬운데 뭔가 이것 저것 얽혀있는 느낌이네요. 따지고 보면 레이어 하나 추가되었을 뿐인데 난이도는 급 상승. 세션이나 쿠키같은경우에는 나오게 된 배경을 알게되어서 확실하게 이해하고 가는 느낌이네요. - [안혁준]
* 개인적으로 이래저래 많이 듣기만 한 용어들(쿠키, HTTPS 기타 등등)에 대해서 자세하게 들을 수 있어서 좋았습니다. 보안 관련은 예전 데블스 때도 잠깐 들을 기회가 있었는데, 그 때는 잘 이해를 못 했었는데 반복해서 들어서 그런지 이번에는 이해가 잘 됐습니다. 다음으로는 자바스크립트 문법에 대해서 다루신다고 하셨는데 어떤 방향으로 나갈지 궁금하네요 - [서민관]
* 자바스크립트의 기초적인 부분이었는데 잘 몰랐던 구조에 대해서 알게 되어 좋았습니다. 실행 컨텍스트는 특히 잘 알아두고 갈 필요가 있다는 생각이 들었습니다. - [안혁준]
* 자바스크립트에서 자주 this 얘기가 나오던데, 이번에 이야기를 들을 수 있어서 좋았습니다. 개인적인 느낌을 말하자면 함수가 데이터로 취급되는데 함수 내부에서 함수를 호출한 객체(execution context)의 정보를 사용하기 위해서 this를 사용한다는 느낌이는데 맞는지 모르겠군요. p.print를 넘기는 것도 실제로 class p에 있는 함수를 넘기는 게 아니라 p.print에 바인딩 된 어떤 함수를 넘기는 것이니까 내부의 this가 기존 OOP와 같이 해당 class의 인스턴스는 될 수 없겠죠. 그리고 제일 마음에 들었던 것은 역시 예전에 했던 스터디에서 다뤘던 자바스크립트의 네 가지 특징에 대해서 들을 수 있었다는 점이었습니다. 사실 예전 스터디 떄 무척 듣고 싶었는데 개인적인 사정으로 참가를 할 수 없어서 꽤 아쉬웠던 터라 ;;; 마지막에는 개인적인 사정으로 시간이 안 맞아서 좀 급하게 나갔는데, 그래도 최대한 들을 수 있는 데까지 듣기를 잘 한 것 같은 느낌이 들었습니다. - [서민관]
* 자바스크립트의 언어 특성에 따라서 배우고 기본적인 사용 문법에 대해서 배웠습니다. 명령형 구조적 프로그래밍 언어적인 부분에 대해서는 그렇게 어려운건 없었는데 그 뒤의 함수형 선언적 프로그래밍 언어 부분에서 클로저랑 함수에 함수를 인자로 주는 부분이 같이 쓰이니까 좀 복잡했었습니다. 조금 더 공부해야 할 것 같습니다. var Person = function(){}; 같은 부분나 this가 new를 했을 때에만 제대로 동작한다는 부분도 특이했습니다. 문법적인 부분 자체는 그렇게 어려운 것 같지 않은데 함수를 중첩해서 쓰거나 그런 부분이 약간 알아보기 힘든 것 같습니다. - [서영주]
* 서버에서 데이터를 가져와서 보여줘야 하는 경우에 싱글스레드를 사용하기 때문에 생기는 문제점에 대해서 배우고 이를 처리하기 위한 방법을 배웠습니다. 처음에는 iframe을 이용한 처리를 배웠는데 iframe 내부는 독립적인 페이지이기 때문에 바깥의 렌더링에 영향을 안주지만 페이지를 이동하는 소리가 나고, iframe이 서버측의 데이터를 읽어서 렌더링 해줄 때 서버측의 스크립트가 실행되는 문제점 등이 있음을 알았습니다. 이를 대체하기 위해 ajax를 사용하는데 ajax는 렌더링은 하지 않고 요청 스레드만 생성해서 처리를 하는 방식인데 xmlHttpRequest나 ActiveXObject같은 내장객체를 써서 요청 스레드를 생성한다는걸 배웠습니다. ajax라고 말은 많이 들었는데 구체적으로 어떤 함수나 어떤 객체를 쓰면 ajax인건가는 잘 몰랐었는데 일반적으로 비동기 처리를 하는거면 ajax라고 말할 수 있다고 하셨습니다. 그리고 중간에 body.innerHTML을 직접 수정하는 부분에서 문제가 생겼었는데 innerHTML을 손대면 DOM이 다시 만들어져서 핸들러가 전부 다 사라진다는 것도 기억을 해둬야겠습니다. - [서영주]
* Element를 찾을 때 CSS 문법을 이용하여 작업을 할 수도 있고 jQuery의 메소드를 이용해서 작업을 할 수도 있는데, 복잡한 대상을 한 번만 찾아서 작업을 할 경우에는 CSS 문법을 이용하는 것이 좋고, 찾은 대상에서 여러 작업을 할 경우에는 jQuery 함수를 사용하거나 해당 Element를 변수에 저장해 두었다가 사용하는 것이 성능 면에서 좋다.
* 대상 Element를 찾든 못 찾은 항상 배열을 반환하기 때문에 반환 결과에 상관 없이 배열에 대한 처리만 고려하면 된다.
* 웹 초기에 css설명했을 때 css셀렉터 문법도 설명을 해주셨었는데 많이 까먹어서 헷갈렸었습니다. -_- 역시 한 두 번 본걸로는 금방 잊어버리기 쉬운 것 같습니다. jQuery함수의 대부분은 호출 후 jQuery객체를 리턴하기 때문에 함수의 체이닝이 가능하다는 얘기를 하셨었는데 구글의 guava도 그렇고 요즘은 이런 형태의 구현이 많은건지 궁금합니다. 그리고 결과 값을 받아서 계속해서 다른 작업을 하는 경우가 아니라면 체이닝이나 그냥 한 번에 계산하는 방식이나 별 차이가 없는건가요? - [서영주]
* $(document).ready() - 처음에 자바스크립트 코드를 해석할 때 해당 객체가 없을 수 있기 때문에 DOM 객체가 생성되고 나서 jQuery 코드가 실행되도록 코드를 ready() 안에 넣어주어야 한다.
* 이벤트 메소드 - 이벤트 메소드에 함수를 인자로 주지 않고 실행시키면 이벤트를 발생시키는 것이고, 함수 인자를 주고 실행시키면 이벤트 핸들러에 해당 함수를 등록한다. (ex. $(".add_card").click() / $(".add_card").click(function() { ... }))
* CSS -> HTML -> JavaScript 순서로 html을 작성한다. - CSS가 뒤에 있으면 HTML 렌더링을 한 후에 CSS가 적용된다. JavaScript가 앞에 있으면 JavaScript가 다 받아지고 나서 뒷부분이 실행되기 때문에 속도에 문제가 있을 수 있다.
* <script async - html 파싱을 하면서 script에 대한 요청을 병렬적으로 보내고, 먼저 처리가 된 script를 먼저 처리한다. 요청의 순서가 지켜지지 않는다.
* JSONP - Same Origin Policy를 어기지 않고 Cross Site Scripting을 하기 위한 방법. callback 함수를 만들고 사이트에 특정한 요청을 보내면 callback 함수로 감싼 데이터를 넘겨준다. callback 함수로 감싸진 데이터는 이쪽의 callback 함수의 내용대로 실행된다.
- 프로그래밍잔치/첫째날후기 . . . . 42 matches
(이 부분은 Document Mode 이며, 해당 한 일들을 기억하는 사람들끼리 기억을 모아서 만듭니다. ^^ 그날 했었던, 일어난 일들에 대해 기억나는대로 간단히 정리해봅시다. 너무 길어지면 '프로그래밍잔치첫째날' 식으로 페이지를 나누어도 좋겠고요. )
일단 간단하게 ["프로그래밍잔치"] 소개를 하고 위키에서 ~~ 한 부분에 대해 설명을 하였다.
["상민"] 과 ["1002"] 는 위키에서의 대화에 대해 간단한 시연을 보여주었다. [1002/MP3공유프로그램] 에서 가상의 인물 1002, 상민, 쩡직 등이 대화를 하면서 페이지내용을 조금씩 정리하고, 점차 [음악공유프로그램], [소리바다와그누텔라] 페이지로 나누어져가는 모습을 중간중간 버벅이는 설명과 함께 시연을 했다.
* 위키에서의 자유로운 링크가 오히려 위키를 읽는데 어려움을 가져오기도 한다. (링크를 따라가다보면 내가 처음에 읽었던 글로 다시 돌아오지 못하고 방황함)
* 계층위키에 대해서 - 개인 페이지 내에 계층위키로 페이지를 열고 시작한다면, 처음 쓰는 입장에선 특별히 편집에 대해 구애받지 않아서 좋을 것 같다.
* 오늘 위키의 간단한 룰로서 들고 나온 개인페이지 내 '/' 구분자를 이용하는 계층위키에 대한 사람들의 생각
* 사람들마다 글쓰기 스타일이 다르며, 정리하는 스타일도 다르다. - 위키 스타일의 글쓰기는 사람들이 글쓰기 페이지를 만드는데 주저하게 만든다. 글을 쓰기 전에 고려해야 할 사항이 너무 많다.
* 위키를 쓸때 이미 도큐먼트모드화 되어버린 글들이나, 시작부터 도큐먼트모드식으로 잘 정리된글들은 뭐라고 더 스레드 자체를 붙이기가 어렵다. 이미 도큐먼트모드화 된 글에 대해서 굳이 더 스레드를 붙일 이유도 없다.
* '말없이 고치기' 에 대해서
* 개인 페이지에 대해서 '말없이 고치기' 의 경우 해당 사람의 기분을 상하게 할 수도 있다.
* 구체적으로 '~한 점이 잘못되었다' 라고 길게 설명하는 것 보단, 그냥 조용히 적절하게 고쳐주는 것이 좋을 수도 있다.
위키 관련 토론발표, 정리가 끝난뒤, 잠시 휴식시간을 가지고, 간식으로 샌드위치를 먹었다.
7 개의 언어 Set 중 사람들은 1개씩 골랐다. 같은 언어를 고른 사람들끼리 Pair 를 구성, 해당 언어로 문제를 풀기 시작했다.
Scheme을 고른 상규, 창섭은.. ~ 을 했다.
한편, Smalltalk을 고른 인수, 재동은.. ~ 을 했다. 가끔 '피 토하겠다'는 말을 했다;
그리고, Haskell을 고른 덕준, 진균, 상협은.. ~ 을 했다.
저 쪽의 Ruby를 고른 상욱, 정직은 .. ~ 을 했다.
Python 을 고른 은지, 세연, 기웅, 재니는.. ~ 을 했다.
사람들은 서로가 고른 언어로 만든 Hello World, 구구단 을 시연하면서 각자의 개발환경, 프로그래밍 방법 등을 보여주었다. 그리고 JuNe 은 중간에 Smalltalk (Squeak)의 OOP 적인 특성, Scheme, Haskell 의 함수형 언어 페러다임에 대해 보충 설명을 했다.
질답시간에는 JuNe의 도움하에 여러 이야기들이 오고갔다.
- SoftwareEngineeringClass . . . . 40 matches
=== 참고 자료 ===
* ''Software engineering'', Ian Sommerville : 최근 세계적으로 가장 많이 쓰이고 있는 SE 교과서. 탁월.
* 컴퓨터 공학과 전공 수업을 통틀어 다섯 손가락 안에 꼽을 수 있을 정도로 중요한 역할을 하는 과목이다. 그러나 중앙대학교 컴퓨터 공학과에서 이 과목의 위상은 그다지 크지 않은 듯 하다. 내가 생각하는 첫번째 문제는 교재에 있다. 두번째는 비현실적인 실습내용이다. 구체적이고 실용적인 실습이 필요하다. 세번째는 학생들의 인식부족이다. 소프트웨어 공학 수업이 자신의 프로그래밍 커리어에 얼마나 많은 실질적 효용을 줄 수 있는지 전혀 깨닫지 못한다. 물론 이것은 대부분 수업 자체의 문제에서 연유한다.
* 수업에서 원하는 것을 얻지 못하는 경우 수강은 하되 독학 혹은 학생 차원의 그룹 스터디를 할 것을 강력하게 권한다. 졸업 후 어디를 가건 두고 두고 유용하게 쓰일 것이다. 외국 유명 대학 경우 AOD/VOD로 수업 내용을 볼 수 있는 곳이 많이 있다.
* 본인은 거의 독학으로 SE 공부를 했다. 수업시간에 구조적 프로그래밍(structured programming)에 대해 설명을 들었을 때는 전혀 감흥이 없었고 졸음까지 왔다. 기억나는 내용도 없다. 하지만 스스로 공부를 하면서 엄청난 충격을 받았다. OOP는 구조적 프로그래밍의 패러다임을 완전히 벗어나지 못했다! 구조적 프로그래밍을 Goto 제거 정도로만 이해하는 것은 표피적 이해일 뿐이다! 구조적 프로그래밍 하나만 제대로 익혀도 내 생산성은 엄청나게 향상될 것이다! (참고로 정말 구조적 프로그래밍이 뭔지 알고 싶은 사람들은 다익스트라의 6,70년대 이후의 저작들을 읽어보길 권한다. 칸트 철학을 공부하는 사람이 칸트의 1차 저술을 읽지 않는다는 게 말이 되겠는가.) --김창준
["fnwinter"]: 수업이 잼있다는 것은 동감...수업 내용이 너무 방대하는 것도 동감..또한...수업이 실제적이지 못하다는 것도 동감...수업에서 너무 많은 내용을 다루어서 그런가 싶다..결론...수업을..듣고..얻은.것이..무엇인가..라는 의문점이 남는다.
으어 나의 허접한 필기는 보이기도 부끄럽구나. 최근 약학과 교양 듣는 학우가 필기하는거 보고 느낀점 --["상민"]
* 저도 이 과목의 중요성은 많이 들었습니다만 학교수업으로는 크게 느끼지 못한것 같습니다. 수업도 지루하게 느껴지고 실제적으로 필드에 나갈때나 몸에 와 닿으려나요.. - 임인택
* 지금 듣는 사람들의 이야기를 들어서는 실습을 하는 과정이 투자하는 시간에 비해서 얻는 것이 좀 적은 것 같다는 생각들을 많이하던데... 실제로 팀을 이룬 사람들중에서 실무를 확실하게 경험해 보지 않은 사람들만 있는 경우에는 이게 더 심하다고 합니다. 전 내년에나 이거 들을 차례가 올것 같은데... 이경환 교수님께서도 이번을 마지막으로 하신다고 하고... 이 과목을 반드시 들어야하나 그런 생각도 좀 드네요. 저의 경우에는 이걸 청강(or 도강;;)식으로해서 이론적인 것을 듣고, 그냥 DB, PL을 들으려고하는데.. 어떨지 모르겠네요. (그런데 컴파일러 과목은 언제 생기는 거지 ㅡㅡ;;) - 박영창
''수업을 청강 할 정도로 내용이 있지는 않아. 그 이유는 딱 한 번만 이경환 교수님 수업을 들어 보면 알게돼. 차라리 관련된 책을 몇 권 보는 게 더 낳을 듯 해. 여튼 개인적으로는 여차여차해서 재수강으로 인해 이번 학기까지 2번째 듣고 있지만 수업 내용 보다는 우리과 수업중 가장 규모가 큰 (기간이나 팀인원수나) 팀 프로젝트를 해 보는 게 이 수업에서 가장 크게 배울 점이라고 생각해. 많은 팀원과 개발 계획부터 시작해서 최종 테스트까지의 일련의 프로젝트 개발 과정을 해 본다는게 확실히 도움이 되지. 그리고 배 보다 배꼽이 더 큰 문서가 좀 성질 나기는 하지만 경험상 해보는 것도 괜찮은 듯 해. --재동''
* 저희 반 같은 경우에는 현재 컨설팅을 하고 있는 박사과정 선배님이 수업을 맡고 있죠. 가끔가다가 자신이 컨설팅 하는 경험담을 들을 수 있어서 좋다고 생각합니다. 교수님반보다 프로젝트 실습 과정에서 피드백도 더 많은 편이고요. 사실 개인적으로는 소프트웨어 공학에서 요구하는 내용을 경험한 사람이 많지 않기 때문에, 더 자주 피드백이 필요하다고 느끼지만요.
대신에 소프트웨어 개발 과정을 이것이 정답이다라고 정해주려는 면이 있어서 조금 아쉬워요. 이를테면 현재 모든 팀에게 MBase 기반의 LCO를 요구하고 있습니다. 고객의 요구 사항을 포함한 여러가지 의견을 한 번 듣고는 마는 셈이죠.
* 나의 생각에 SE 수업을 제대로 배우고 있다면 학기가 지나면서, 혹은 최소한 학기가 끝난 후에 내가 혹은 내 팀이 프로그래밍 과제(꼭 해당 수업 것만 말고)를 하는 "생산성"에 향상이 있어야 한다. 아니 적어도 그런 과제를 수행하는 과정을 이전과는 다른 각도에서 볼 수 있어야 한다. 이것이 Here And Now의 철학이다. 조그마한 학기 프로젝트 정도를 진행하는 데에 소프트웨어 공학은 필요없다고 생각할런지 모르겠으나, 작은 것도 제대로 못하면서 큰 것을 논한다는 것은 어불성설이다 -- 특히 프로젝트 규모가 커질수록 실패확률이 몇 배 씩 높아지는 통계를 염두에 둔다면.
* 또한, 예컨대 지금 하도급 SI 업체에서 일하는 PM을 한 명 초대해서 그가 이 수업에 대해 생각하는 바를 경청하고, 또 반대로 그에게 조언을 해줄 수 있어야 한다. 만약 현업을 뛰는 사람이 이 수업에서 별 가치를 느끼지 못한다면 그것은 수업자체의 파산이다. 이것 역시 Here And Now의 철학이다. 우리가 배우는 것은 지저분한 진흙탕 세계에 대한 것이 아니고 깔끔한 대리석 세계에 대한 것이라고 생각할런지 모르겠으나, 지금 여기의 현실에 도움이 되지 않는다면 도무지 SE가 존재할 이유가 어디에 있겠는가.
* SE 교육은 첨탑 끝에서 계단 위로 내려와야 한다. 천상의 공부만 하고 지상으로 내동댕이쳐진 학생들은 다시 천상에 들어갈 기약없는 그 날까지 모든 것을 망각하게 된다 -- 더군다나 천상에 돌아가더라도 여전히 망각의 심연을 헤매거나 혹은 그 때 천상은 이미 또 다른 천상으로 떠나있는 상황이 종종 벌어질 것이다.
''SE는 문서''란 말을 실감했습니다. 수업에서 요구하는 바는 모든 작업을 하기 전에는 계획서를 작성하고, 계획서에 근거해서 작업을 수행한 뒤, 보고서를 작성하는 것으로 보입니다. 처음 만드는 계획서라 시간이 오래 걸렸겠지만, 다시 계획을 세울 때에 재활용 할 수 있을 것 같습니다. 계획된 프로젝트 진행을 연습해보는 좋은 시간이었던 것 같습니다.
하지만 역할별, 작업별로 만드는 계획서와 보고서에 쏟는 시간이 너무 많다는 생각은 저 뿐만이 아닐 것입니다. 심사시에는 계획서에서 언급하지 않은 활동을 실행했다고 딴지를 걸 정도로, 계획서대로 실행된 내용을 변경없이 실행하는 것이 프로젝트의 반복가능성을 평가하는 기준인것 같습니다. 설계와 구현 사이에서 계획대로 실행 안되는 부분을 극단적으로 느꼈는데, 예를 들어 클래스 다이어그램과 시퀀스 다이어그램이 [Refactoring]과 같은 코드 재구성 작업을 할 때마다 바뀌어야 했습니다. 다이어그램이 코드로 매칭되지 않기 때문에 코드를 바꿈은 물론 다이어그램을 바꾸는 이중의 수고를 겪어야 했습니다. :( --[Leonardong]
- 토비의스프링3/오브젝트와의존관계 . . . . 40 matches
* 사용자 정보를 JDBC API를 이용해 DB에 저장하고 조회할 수 있는 간단한 DAO 만들기.
* 간단히 빈이라고도 한다.
* 파라미터가 없는 디폴트 생성자를 가지고 있고
* 그럼에도 불구하고 UserDao 클래스 코드에는 여러가지 문제가 있다.
* 단 몇 줄의 코드만 수정하고 수정한 뒤에도 문제 없이 작동함을 보여주는데 5분이 걸리는 개발자 > 코드를 수정하는데 5시간이 걸리고 수정한 뒤 문제 없이 작동하는지 확신할 수 없는 개발자
* '''분리와 확장'''을 고려한 설계
1. 사용자 등록/조회를 위한 SQL문을 담을 Statement를 만들고 실행하는 것.
1. 작업이 끝나고 리소스를 close하는 것.
* 앞으로 수백개의 DAO 메소드를 만든다고 하면
* 내부 설계가 개선되어 코드를 이해하기 편해지고 변화에 효율적으로 대응할 수 있다.
* 추상클래스를 만들어놓고 상속을 통해 변화를 구현하는 방법 -> 불편하다
* 코드의 크기가 작고 간단해도 클래스와는 다른 독립적인 관심사를 가지고 있다면 분리해야한다.
* 런타임 사용관계 : 오브젝트 사이의 관계란 런타임시에 한 오브젝트가 다른 오브젝트의 레퍼런스를 가지고있는 것.
* 클래스나 모듈은 확장에는 열려 있어야 하고 변경에는 닫혀 있어야 한다
* 변경이 필요한 알고리즘을 인테페이스를 통해 외부로 분리시키고, 이를 구체화한 클래스를 필요에 따라 바꿔 사용하게 하는 패턴
* 객체의 생성 방법을 결정하고 만들어진 오브젝트를 돌려준다.
// ConnectionMaker를 설정하고 생성하는 코드가 반복됨
* 빈(bean) : 스프링이 제어권을 가지고 직접 만들고 관계를 부여하는 오브젝트. 자바빈에서 말하는 빈과 비슷한 오브젝트 단위의 애플리케이션 컴포넌트. 스프링이 직접 생성과 제어를 담당하는 오브젝트만을 빈이라고 부른다.
* 빈 팩토리(bean factory) : 빈의 생성과 관계설정 등의 제어를 담당하는 IoC오브젝트. 스프링의 IoC를 담당하는 핵심 컨테이너. 일반적으로 직접 사용하지 않고 이를 확장한 애플리케이션 컨텍스트를 사용한다.
* 애플리케이션 컨텍스트(application context) : IoC방식을 따라 만들어진 일종의 빈팩토리. 별도의 정보를 참고해서 빈의 생성, 관계설정 등의 제어 작업을 총괄한다. 설정 정보를 따로 받아와서 이를 활용하는 IoC엔진이라고 볼 수 있다. 주로 설정에는 xml을 사용한다.
- MoreEffectiveC++/Operator . . . . 39 matches
'''operator<<'''는 처음 Raional 이라는 형에 대한 자신의 대응을 찾지만 없고, 이번에는 r을 ''operator<<''가 처리할수 있는 형으로 변환시키려는 작업을 한다. 그러는 와중에 r은 double로 암시적 변환이 이루어 지고 결과 double 형으로 출력이 된다.[[BR]]
뭐 이런 암시적 형변환을 막을려면, 형전환 시키고 하는 암시적 사용을 하지 않고, 다른 함수로 명시적으로 해 줄수 있다.
이런 예로 C++ std library에 있는 string이 char*로 암시적 형변환이 없고 c_str의 명시적 형변환 시킨다.
첫번째 생성자는 배열의 lowBound~highBound 사이로의 크기 제한자이고, 두번째 생성자는 해당 크기로 배열 공간 생성인데, 이 두번째의 생성자가 형변환을 가능하게 만들어서 무한한 삽질에 세계에 당신을 초대한다. (실제로 이런 의미로 써있다. --상민)
7줄 ''if ( a == b[i] )'' 부분의 코드에서 프로그래머는 자신의 의도와는 다른 코드를 작성했다. 이런 문법 잘못은 당연히! 컴파일러가 알려줘야 개발자의 시간을 아낄수 있으리, 하지만 이런 예제가 꼭 그렇지만은 않다. 이 코드는 컴파일러 입장에서 보면 옳은 코드가 될수 있는 것이다. 바로 Array class에서 정의 하고 있는 '''''single-argument constructor''''' 에 의하여 컴파일시 이런 코드로의 변환의 가능성이 있다.
이런 애매한 상황을 피할수 있는 가장 효과적인 방법은 C++에서 등장한 새로운 키워드인 '''explicit''' 의 사용이다. 이 키워드가 붙은 생성자로의 형변환에서는 반드시 명시적인 선언이 있어야 가능하다. 즉 위의 코드를 다시 작성하여 '''explicit'''의 사용을 알아보고 문법상 유의 사항도 알아 보자
만약 당신의 컴파일러가 엄청 낡은 거거나 제작자가 깜빡해서, 혹은 explicit를 죽어도 넣기 싫다고 할때에는?[[BR]]
여기에 나온 Array 예제를 한번 고쳐서 마치 explicit 를 쓴것처럼 해보자
이렇게 '''Array''' 안쪽에 '''ArraySize ''' 를 선언하고 public으로 불어서 이렇게 생성하면
*후기:이번껀 너무 길다. 다른거에 두배에 해당하는거 같은데 다음부터는 딴청 피우지 말고 해야지 --상민
보고 있자면 정말 아이디어 괜찮은듯 그럼 구체적인 구현부에 관해서 간단히 논한다.
*작성자 사설: 아 나는 정말 이런 리턴이 이해가 안간다. 참조로 넘겨 버리면 대체 컴파일러는 어느 시점에서 oldValue의 파괴를 하냔 말이다. C++이 reference counting으로 자원 관리를 따로 해주는 것도 아닌대 말이다. 1학년때 부터의 고민이단 말이다. 좀 명쾌한 설명을 누가 해줬으면..
* 작성자 사설:본문에서는 그 뒤부터는 아예 이런걸 쓰지 말자는 필요성의 언급니다. 차후 추가의 필요성이 있을때 추가합니다. [[BR]]그냥 i++ 두번 쓰고 말지..
자 이 두경우 모두를 생각해 보면 1,2 양쪽 다 expression1, expression2 의 결과 값이 필요한 상황이다. 즉, operator && 나 operator || 의 경우 양쪽이 class인자든, 어떤 형태이든 반드시 결과 값이 필요하다. 위에도 언급했지만, 이미 많은 개발자들이 &&와 ||의 특성을 잘 알고 사용하고 있으며, operator &&, ||의 overload는 구동되지 말아야할 코드가 구동되는 의도하지 않은 오류가 발생 소지가 있다.
"comma operator" 역시 마찬가지다. comma operator가 대체 뭐냐고? [[BR]]
결론은 overload로 언어상의 이녀석들 원래의 능력 발휘하기가 힘들다. 이런 위험은 감수할 필요 없지 않은가? 참고로 다음을 알자
이 코드는 new operator를 사용한 것이다. new operator는 sizeof 처럼 언어 상에 포함되어 있으며, 개발자가 더 이상 그 의미의 변경이 불가능하다. 이건 두가지의 역할을 하는데, 첫째로 해당 객체가 들어갈 만한 메모리를 할당하는 것이고, 둘째로 해당 객체의 생성자를 불러주는 역할이다. new operator는 항상 이 두가지의 의미라 작동하며 앞에서 언급한듯 변경은 불가능하다.
이건 과거 C에서의 malloc처럼 초기화 되지 않은 size만큼의 메모리를 할당해서 그걸 가리키는 void형의 pointer를 돌려주는 것이라고 예측할수 있겠다.(맞다) 개발자는 operator new를 overload할수 있지만 첫번째 인자는 항상 size_t가 되어야 한다.
다음과 같은 코드는 컴파일러 단에서 이렇게 교체된다고 볼수 있다.
당신은 생성자를 직접 호출하기를 원할때가 있을 것이다. 하지만 생성자는 객체(object)를 초기화 시키고, 객제(object)는 오직 처음 주어지는 단 한번의 값으로 초기화 되어 질수있기 때문에 (예-const 인수들 초기화에 초기화 리스트를 쓰는 경우) 생성자를 이미 존재하고 있는 객체에 호출한다는건 생각의 여지가 없을 것이다.
- 정모/2012.11.26 . . . . 39 matches
* [신형준] - 규모가 큰것은 좋으나 학교에서 데려다주고 방목, 거시서 멀 하려는지 정확하게 볼 수 없었음. 제대로 된것이 없었다.다른 학교도 잘하는 것을 느끼고 옴. 특히 금오공대. 거미모양에 프로펠러를 달아 날아다니는 것이 신기.
* [박상영] - 시간이 짧았고 우리학교 출전작중에 아는 동아리가 없어서 아쉬움. 다음에는 우리도 출전했으면.
* [이민규] - 부스는 많은데 정리가 안된느낌. 시연을 하는것을 보고싶어도 제대로 할수 없는 환경. 볼게 없었음
* [김윤환] - 하드웨어적인 부분들이 다수를 차지하고 있어서 조금 아쉬웠습니다. 좀더 소프트웨어적인
* 제출도 있고 내년에 신입생 모집때 사용 가능함
* 지금 버리기로 했고 딱지 때문에 일단 버리고 와보기
* [신형준]: 종하형 oms는 .. 음 .. 하하하하하 정리가 잘 안된거 같네요 ㅜㅜ .공학교육 페스티벌 다음에 우리도 프로젝트 내보아요 ㅋㅋㅋㅋ . 종하형 oms 수고하셧습니다.
* [권영기]: 오늘 종하형 OMS는 10분도 안들었지만 충격과 공포였습니다. 허허허, 지금 생각해도 머리가 아파오네요. 그리고 공학교육 페스티벌 후기 공유는 들으면서, 다른 사람들도 다 비슷한 생각을 했구나 싶더라구여.. 아 그리고 종록이형 다음 OMS가 기대되네여. ㅎㅎ
* [김민재]: 오늘따라 ZP 정모가 끌리길래 왔더니 과자(포카칩, 스윙칩, 빈츠, 초코하임, 초코송이, 떡볶이 과자, 계란과자, 오사쯔 등등 맛있는 과자들)들이 +_+ 참 맛있었어요. 종하형의 OMS는 멘붕이었지만... 유익했고, 종록이형 OMS 기대됩니다ㅋㅋㅋ
* [이재형]: 저..절대 과자 준다고해서 오랜만에 간..건 아니지만요. 그..그래서 후기 쓰는 것도 아니지만요. 오늘 OMS를 들으면서 '아 제로페이지라는 집단에는 정말 본받을 분들이 많으시구나' 다시 한 번 느꼈습니당. 공학교육페스티벌 후기 공유 시간도 다시 생각해볼 수 있는 기회라 오히려 감사했구요. 활동내역 정리 맡은 바 최선을 다하겠습니당 ㅎㅎ. 종록이형의 OMS를 기대하며 끄읕~!
* [이민석]: 발표 자료를 훑어보니 디지털 영상 처리의 로우-패스 필터 같은 신호 처리 기법도 나오고 흥미로운 주제인데 발표 앞부분을 놓쳐서 아쉽습니다.
1. 과자 파티를 했는데 잔뜩 집어먹었더니 저녁에도 배가 별로 안 고프더라구요.
1. 아, 그리고 오늘 정모에서 스터디/프로젝트 진행에 대한 공유가 없었던 것이 아쉬웠습니다. 제가 참여하고 있는 스터디 외에 다른 스터디들이 어떻게 진행되고 있는지도 궁금했고, 또 제가 하고 있는 스터디들 공유하고 지원을 요청하고 싶은 내용들도 있었거든요. 오늘 회장님께 은퇴 처리를 신청했고 사실 다음 주 정모에 갈 수 있을지 여부가 불투명하긴 하지만 어쨌든 다음 주 정모에서는 스터디/프로젝트 공유가 진행되었으면 좋겠습니다.
* [김태진] - 드디어 과제를 끝냈네요.. 새벽 5시입니다.(는 쳐 놀다 시작해서 그럼) 저번과 이번 정모는 스터디.프로젝트 공유보다 초점이 약간 다른데 가있었죠. 임기가 2개월 남짓 남은 상황에서 이제서야 여러가지 좀 다른 시도들을 해보는 중입니다. 정모에 다른 활동들을 넣어본다던지.. 위키를 활성화 시켜본다던지.. 스터디 프로젝트는 작년부터 올해까지 계속 느껴온거지만 하는 사람/하지 않는 사람 차이가 심하고 하지 않는 사람은 하는 사람의 말을 이해하기 어렵다는 점이 항상 아쉬웠습니다. 그 점을 보완해 다른 방향을 생각 중이네요. (가령 초등학생에게 이 프로젝트를 설명한다면? 코너, 내가 이 프로젝트를 하는데 이게 지금 부족한거 같다 코너. 등) 좋은 의견 환영합니다.
* 다음주는 늦었지만 11월 회고를 진행해야겠어요. 기년회 날짜도 확실히 정하구요.
* 다음주 다과때 뭐 먹고 싶나요? 여기 써주시면 적극 반영할게요. (설령 한두명 후기를 덜 쓰더라도)
* 전 과일 먹고 싶어요. 다음주에 가게 될지 모르겠지만... 과자가 배불러서 배 덜 부른 걸 생각해보니 과일이 떠올라서ㅋㅋㅋㅋㅋㅋ - [김수경]
* [서민관] : 제가 후기의 마지막을 장식할 것 같군요. 좀 평소 정모와는 다르게 HOT한 주제가 있었지만 그래도 괜찮게 넘어간 것 같아서 다행이었네요. OMS는 알아듣기가 많이 힘들었습니다. 내년에 공수나 다른 관련 과목들을 들어야 할지 고민을 해야 할 레벨이네요 ㅠㅠㅠㅠㅠ 그리고 활동 내역 정리 관련으로 일을 할 생각인데, 태진이한테 민폐 안 끼치고 잘 처리 할 수 있으면 좋겠군요. 올 한 해 ZP의 활동이 왕성한 것 같아서 무슨무슨 활동들을 했는지 보는 보람은 꽤 있을 것 같습니다. 재밌겠죠. 여담이지만 종록이 위키 정리 속도는 정말 신이 들린 레벨이지 싶습니다 -_-;;
* [http://scienceon.hani.co.kr/media/34565 인지부하]에 대한 글인데 참고해 주셨으면.. 이 글은 데블스 캠프나 새싹이나 기타 강의/세미나를 하시려는 분들이 참고해도 좋을 것 같습니다.
* 시장터처럼 시끄러운 정모가 나쁘다고 생각지 않습니다. 사람들을 말하게 하는 것은 매우 중요한 일이죠. 왠지 모르지만 말많은 사람들이 ZP에 많기도 하고.
- 데블스캠프2009/수요일후기 . . . . 38 matches
* '''서민관''' - kernal이나 어셈블러 언어 등 전까지 별로 접할 일이 없던 생소한 개념들이 많이 나와서 솔직히 쉽지는 않았습니다. 그래도 OS의 구조나 Ring system 같은 것들은 개념적으로라도 알아두면 괜찮을 것 같네요. 그리고 전날 혁준 선배가 설명해준 dll에 대해 잠깐 다시 복습할 수 있었던 것도 좋았고요. 아쉬웠던 점은 역시 수업이 너무 고수준이라서 대략적인 이해만 하고 넘어가야 했던 것입니다. 그리고 수업 이후에 개인적으로 VMware의 사용법을 가르쳐 주신 것은 정말 감사합니다. 선배가 제 구세주입니다.
* '''박준호''' - 처음으로 해킹과 관련된 내용을 보아서 정말 좋았습니다. 제가 해킹쪽에 관심이 있어서 언젠가 해보고 싶고 보고 싶었는데 오늘 처음으로 경험하게 되어서 좋았구요 저도 한번 공부해야겠다는 생각이 들었습니다.
* [송지원] - 사실 들으면서 이걸 컴구나 OS를 안들은 1,2학년 애들이 쉽게 받아들일까 생각했고 컴퓨터로 딴짓을 하며 놀고 있는 애들을 보며 살짝 걱정했는데 위의 1학년 애들 후기를 보니 그렇지도 않은거 같다=_=;; 다만 병윤이 수업 자체가 실습 없는 강의 수업이였는데 여기저기서 타자소리가 들리고 마우스클릭 소리가 들렸던건 아쉬웠다. 물론 위키페이지 고치느라 버벅댔던 나도 할말은 없다;;
* '''서민관''' - 계속 말이 많던 객체 지향 프로그래밍. 전날의 추상화 수업에서도 객체의 개념은 잠깐 나왔었고, 개인적으로도 객체에 대해서 조금 더 들을 기회가 있어서 그렇게까지 이해하기가 어렵지는 않았던 것 같습니다. 의사코드나 플로우 차트를 이용한 프로그래밍은 확실히 무작정 코드를 쓰고 보는 것 보다는 플로우 차트 -> 의사코드 -> 실제 코드 순으로 하는 것이 간단하면서도 정확한 프로그래밍을 할 수 있을 것 같아서 괜찮다고 생각합니다.
* [송지원] - 기대 이상의 세미나였다. 준석이가 데블스 전부터 자신의 세미나에 대해 엄청 자신없어했고 형진이가 Abstractionism을 하며 강의가 좀 확장되어 준석이가 가르칠 범위까지 해버리는 바람에 준석이가 할게없다고 걱정하던데, 오히려 형진이의 강의로 토스를 받아 붕어빵 예시로 스파이크를 날려준 느낌이다. 그래도 OOP란 개념 자체가 확 와닿기 쉽지 않은지라 마지막엔 내가 괜히 오지랖 부렸다..;;
* [김준석] - 강의 내내 속으로 피말렸다. 강의 도중에 이해하기 쉽게 설명할걸 몇몇 빼먹은게 자꾸 떠올라서 천천히라도 설명하려했으나 설명해놓고 보니 좀 엉뚱한데서 설명해버린 안타까운 현실. 현역 군인이라 OOP 강의에 대해서 그렇게 많은 준비는 못한것이 사실이라 강의할때 도움도 좀 받았고. 휴가 나오기전에 1~2시간씩 코딩없이 강의 할만한 내용을 찾다가 C++을 사용할 1,2학년에게 좀 중요한 내용을 잡게 됬는데.. 휴가 나오고 PPT를 작성하는데 3일동안 하루 3~4번은 고치고 내용추가를 고민하는등 긴장을 좀 많이 탓다. OOP를 이해시키고 학교생활중 설계의 중요성을 몰라 삽질을 반복했기 때문에 그 후에 코딩하기 전에 설계하는법에 좀더 중점을 둔 시간을 가지고 싶었다. 그냥 무작정 달려들어서 Run&Fix도 하기 쉽지 않은 중복많은 2~3백자리 코딩을 하기 보다는 전날 Abstractionism에서 형진이가 말했듯이 20줄 이내의 코딩, 잘 설계된 잘나뉜 코딩은 어딘가를 목표로 갈때 지도나 정보를 모아 쉽고 편한 길로 가는것과 같다. 돈도 절약되고. 안힘들고. 문제가 생겨도 모아온 정보로 해결할수 있는.. 문제를 풀어 결과를 도출해놓는것도 좋지만.. 주위에는 답을 똑같이 도출해놓을수 있는사람이 90%는 될것이다. 그렇다면 짧고 보기쉬운것이 좋겠지. 정말 아쉬운 점이라면 API나 로보코드때 이걸 설명하고 했더라면 들은 학우들에게 더 많은것을 이해할수 있었던 시간일것이라고 생각하는데.. 좀더 빨리 준비했었어야됬어.
* '''서민관''' - 수요일 수업에서 제일 마음에 들었던 부분입니다. 이클립스를 써 본 것도 좋았고, 무엇보다 JUnit test는 정말 마음에 드네요. 앞으로 갈수록 프로그램의 크기가 커질텐데 이클립스를 통한 svn 사용이나 JUnit test나 둘 다 팀 프로젝트용으로는 정말 좋은 기능이라고 생각합니다. 정말 뭐라고 더 칭찬을 해야 할 지 말이 안 나올 정도로 마음에 들었어요. 한 방에 제대로 프로그램을 못 짜는 저한테는 메인 함수 없이도 버그 수정이 가능하다는 건 정말 고마운 기능이죠.
* '''박준호''' - 처음으로 JAVA 에 대해 제대로 코딩도 해보고 접해본 시간 이였습니다. JUnit test 라는 것을 이용하여 팀플에서 얼마나 유용하게 쓰일지는.. 정말 무궁무진 할꺼 같습니다. 저도 빠른 시일내에 까먹지 않고 쓸 수 있게 되었으면 좋겠습니다.
* [송지원] - 사실 너무 아쉬웠다. JUnitTest를 위해 예로 제시한 계산기 클래스도 함수 하나 정도밖에 테스트 해볼 수 없는 이상한 설계의 클래스였다(너무 OOP 다음수업이라 캡슐화에만 신경을 썼던듯). 한 마디로 Java도, JUnit도 맛보기만 해준 꼴이 된것 같다. 하지만 '''JUnit은 확실히 강한 라이브러리다'''. 내가 몸소 느끼고 자발적으로 세미나한 이유도 그렇다. 내 세미나는 즈질이였지만 많은 1,2학년 학우들이 Java로 개발을 진행할 때 도움이 되었으면 한다.
- 프로그래밍잔치/둘째날후기 . . . . 38 matches
* 팀원간 Communication 이 잘 이루어져야 하고, 역할분담이 어느정도 뚜렷해야 한다. 팀원간에 서로가 무엇을 하는지 잘 알아야 한다. (양팀 서로 나온 의견)
샌드위치를 먹으며 마저 Requirement 정리를 하고, 7피로 올라가서 팀 프로젝트를 진행하기 시작하기 시작했다.
전자수첩을 하기로 하고.. 샌드위치를 먹으며 각자의 역할과 작은 팀을 나누었고 칠피에 올라가서 시작.. 언어는 C++, MFC 툴킷을 사용하기로 했다. 그러나.. 총 개발시간의 절반을 MFC 와 싸우다가.. 인수군의 제안과 창섭군과 은지누나의 동의로 JAVA 로 언어를 바꾸고.. 인수군은 전자계산기를 기웅군, 은지누나와 페어를 하며 짜고 창섭군은 상욱군과 함께 전화번호부를 짜던 중 창섭군의 JAVA 실력 부재와 swing 경험 부족으로 인해(ㅜ.ㅜ) 은지누나와 상욱은 페어를 바꾸고.. 결국 어설픈 틀의 전화번호부와 계산기를 합치고 C++ 로 짜여진 상욱군의 만년달력을 끝으로 시간종료.
Error Message 팀은 JuNe 의 도움에 따라 그날 한 일을 정리하는데 Activity Diagram 을 이용하는 방법에 대해 알게 되었다. 그리고 Activity Diagram 을 이용, 그날 한 일들을 정리해본다.
Error Message 팀에서는 잘된점으로 문제 사이즈를 적절하게 잡은 점을 뽑았다. 잘못된 점으로는 사람들의 개개인 능력을 정확하게 고려하지 않고, MFC 를 고른점과 역시 Pair 에서의 문제점, 그리고 '팀 이름이 안좋았다' 라는 의견이 있었다. 그리고 대화가 잘 이루어지지 않았다는 점을 뽑았다.
1002는 대강 간단하게 정리하며, 그리고 오늘 행사의 의의는 결과물 자체가 아니며, 팀 프로젝트 경험 자체임을 이야기했다. 그리고 잘된점과 잘못된점을 생각하며 한편으로는 좌절할지도 모르겠지만, 마지막으로 '대안'을 생각하기에, 다음번에 더 잘할 수 있음을 이야기했다.
* 100 % 완성이 못된게 못내 아쉽지만 그럭저럭 잘된 팀 프로그래밍이였음다. 이번 팀에서는 역할 분담이 잘되었고 페어간의 의사소통이 잘된 게 좋았던 것 같습니다. 잘못된 점은 처음 디자인이 부족해서 역할과 역할이 서로의 디자인을 잘모르게 되었다는 것입니다. 담에는 ["프로그래밍잔치/Successor"] 정리에 있는 잘못된 사항인 No 되었던을 Yes로 바꿀 수 있게 노력해야 겠습니다. --재동
* 오늘 하면서도 느꼈던 것은 고정관념을 버려야 한다는 것!! 어제 역시 새로운 언어를 해보면서 이전까지의 언어에서의 고정관념에 사로잡혀 허우적되는 나를 발견했었는데... 오늘도 또다시 고정관념을 버려야한다는 것을 느끼게 했다. 프로그래밍에서 디자인이 시간낭비라는 고정관념, 코딩이 가장 중요하다는 고정관념, 프로그램 개발에서 가장 많은 시간을 소비하는 부분은 코딩이라는 고정관념.... 반드시 버려야겠다. 디자인은 절대로 시간낭비가 아니라는것... 가장 중요한 것이 코딩이 아니라것... 프로그램 개발에서 가장 많은 시간을 소비해야 할 부분이 코딩이 아니라는것.... 꼭 기억해야 겠다. --["상규"]
''실제 개발시에 타이핑을 해 넣는 시간은 전체 개발 시간의 30%도 안된다는 통계가 있습니다. 그리고, 최종 상품으로서의 코드를 (전체 개발 기간*개발 인원)으로 나누면, 한 사람이 하루에 약 5줄의 코드를 짜면 (업계) 평균입니다. --JuNe''
* 아쉽게도 오늘 한 것의 코딩 내용의 수준이 저에게 좀 높았던 거 같습니다. 그래서 중반 이후 거의 선호형이 맡게 되었고, 갈수록 소외되는 식이 되었습니다. 음... 다음부턴 팀 프로그래밍 중 팀원간에서 뒤쳐지지 않도록 노력해야겠습니다. 좋았던 점이라면 팀 프로그래밍이 어떤 거다...는 걸 알 정도의 경험이랄까...입니다. --영동
* 팀프로그래밍을 하면서, 대화가 중요하단 생각을 했다. 형식적이지 않은 이런 저런 의사소통도 많이 필요하겠지만 어느정도의 형식이 갖춰진 대화를 하는 것이 필요할 것 같다. 예를 들면, 언어선택의 문제에 있어서 대충 한 두명이 이걸로 짤까?? .. 그럴까?? 이런 대화보다는 정식으로 사람들한테 자신이 아는 언어와 생각을 물어서 종합적인 결론을 도출하는 과정이 필요했던거 같다..그리고 자신이 알고 있는 것과 모르고 있는 것에 대해서 스스로 잘 알필요가 있을듯..;; 또 다른 사람의 입장을 한번더 생각하는 맘도 필요한 것 같다. --은지
* 나역시 페어를 해본건 아주 간단한것이었긴 하지만, 그때의 느낌이라면 페어가 되는 조건에 대해서 좀 생각해봐야하겠지. Expert - Expert Expert - Novice의 단적인 예를 들자면 역시 Expert - Expert인 경우가 진행도 빠르고 페어도 효율적이겠지만 두번째의 경우 시간분배에 따라 해결하는 양도 틀리고 하지만 결국 시간이 느려지는건 사실 그러나 얻는것! 페어가 끝난후 Novice가 단지 처음의 수준에 머무르지는 않는다는 것이지. 내 느낌은 일단 그러네 ^^; 아 참고로 어중간한 사람끼리 만나면 진행은 잘되는데 머 잘되면 좋긴하지만 안되는 쪽으로도 잘 되는? 현상이 벌어질 가능성도 있다고 사료됨. (이 내용은 1002 군의 예전의 페어에 관한글을 참고함) - JihwanPark
* 에.. 다들 소감을 쓰셨군요. 저도.. 느낀점은 많았지만. 혼자 뛰지말자... 라는 점이라던지... 나를 너무 믿지 말자.. 정도? ^_^;; 무슨 소리를 하는 겐지.. 어쨌든 영동이에겐 (약간은) 아쉬운 페어가 되었었지 않을까라는 생각만 드네요.. 남은 일은 게으르지 말고 고쳐나가는 것. 도망치지말고 맞서 싸우는 것.. 뿐이군요 ㅡ.ㅡ/ --선호
* 예전에 페어를 할 때 느꼈던 점을(정확히는 깨달았던 점을) 제대로 써먹지 못해 크게 후회와 아쉬움이 밀려온다. 그리고.. 공부좀 해야겠다는 생각이...;; --["Wiz"]
창섭이나 인수가, 자신들의 팀프로젝트때 어떻게 했었는지 (특히 창섭.. 내가 자신과 Pair를 할때 어떤 방법들을 이용했었는지) 한번쯤 생각했더라면 좀 더 좋은 결과가 있지 않았을까. GUI Programming 먼저. UI 가 먼저되면 역시 좀.. 특히 사람들이 MFC와 Java 에 익숙하지 않다고 할때.
- 시간관리하기 . . . . 37 matches
DeleteMe) 영어로 쓰려면 HowToManagement... 류가 되려나. -_-; 개인적으로 그리 치열하게 살지 않는 사람으로서 이런 페이지 글 적는게 좀 그렇지만. -_-; 일단 화두 제공용. 질문하기위해 연 페이지라고 생각하시길. --["1002"]
["정모/2002.9.26"] 때 사람들에게 요새 겪게 되는 문제들에 대해서 이야기하라고 했었을때, 많이 나왔던 질문이 '시간이 없는데 하고 싶은 일은 많고...' 식의 문제가 많았다.
문제는 주어졌고, 어떻게 해결해볼 수 있을까?
보통 이 문제에 대해서는 '스스로가 게을러서' 로 끝나고, 문제에 대해 너무 막연하게 대처한다.
["1002"] 의 경우 치열하게 살고 있진 않지만, 몇몇개 해본 일들이 있다. 처음에는 크고 거창하게 계획 세우고 일들 순위 매기면서 하는 스타일을 시도했었는데, 요사이는 작고 간단하며 실천적인 행동들을 생각하려고 노력한다. (하지만, 여전히 게으르다;)
* 그래프 그리기 - 기상시간을 체크 한뒤, 다이어리의 모눈종이에 그래프를 그린 적이 있다. 일찍 일어나면 수치가 높고, 늦게 일어나면 수치가 낮은 식으로. 그러다보면 대강 기상시간이 늦어지는 때가 눈에 보인다. 걸리는 시간 : 5초. 분석 : 2분.
* 3일단위 계획세우기 - 이건 밑의 추천책중 'CEO의 다이어리엔 뭔가 비밀이 있다' 에 나온 방법이다. 작심 3일인 사람은 3일마다 계획을 세운다.; 개인적으로 좋았던 점이라 생각되는건, 보통 3일이 지나면 초반에 내가 했던 결심이 잘 기억 안나게 되는 것 같다. 다시 계획표를 쓸때엔 마음이 도로 잡힌다고 할까.
* 핸드폰 알람 밑에 다이어리 놓기 - 보통 아침은 핸드폰 알람소리로 깬다. 그 밑에 그날의 할일을 놓는 것이다. 핸드폰 찾으러 돌아다니고, 그러다가 스탠드를 켜고, 핸드폰 알람 끄고, 그리고 어쩔수 없이!; 그날의 To Do List 를 보게 된다.
사람들로부터 많이 화자되는 책들 관련. 자기혁신, 시간관리 책들은 참 많고, 한편으로는 너무 작위적으로 보이기도 하다. 그중에서 추천해볼만한 서적들.
시간관리 책들의 내용들은 뭐 거기서 거기이라는 생각이 약간 들지만. 이 책의 장점이라면, 자신의 구체적인 행동이 적혀있다는 점을 뽑고 싶다. 구체적인 아이디어들이 적혀있다. 학교도서관에 있다. 책 두께도 얇고, 간단하게 한두가지만 아이디어를 얻어서 실천해보고 또 해보고 하는 식의 접근도 좋을 것 같다.
어디까지나 책을 읽고선 직접 실천해야 하는 사람은 바로 자기 자신이다. 자신이 얼마만큼 책의 내용을 자신에 맞춰서 적용하려고 했는지에 대해서는 늘 생각해볼 필요가 있다. 離의 단계 이전에는 守의 단계가 먼저 아닐까 하는 생각을 해본다.
시간관리 책들을 보고 처음부터 거대 시스템을 만들어서 한꺼번에 자신에게 적용하려고 하는 사람들에게서, 소프트웨어 개발방법론인 XP 에서의 다음의 주문은 어쩌면 의외의 효과를 가져오는 것 같다.
그는 테이블 밑에서 커다란 항아리를 하나 꺼내가지고 테이블 위에 올려놓았습니다. 그리고나서 주먹만한 돌을 꺼내 항아리 속에 하나씩 넣기 시작하였습니다. 항아리에 돌이 가득하자 그가 물었습니다.
학생들이 이구동성으로 대답했습니다. "예" 그러자 그는 "정말?" 하고 되묻더니, 다시 테이블 밑에서 조그만 자갈을 한 뭉큼 꺼내 들었습니다. 그리고는 항아리에 집어넣고 깊숙히 들어갈 수 있도록 항아리를 흔들었습니다. 주먹만한 돌 사이에 조그만 자갈이 가득 차자, 그는 다시 물었습니다.
눈이 동그래진 학생들은 "글쎄요" 라고 대답했고, 그는 "좋습니다" 하더니, 다시 테이블 밑에서 모래주머니를 꺼냈습니다. 모래를 항아리에 넣어, 주먹만한 돌과 자갈사이의 빈틈을 가득 채운 후에 다시 물었습니다.
학생들은 "아니요." 라고 대답했고, 그는 "그렇습니다." 라면서 물을 한 주전자 꺼내서 항아리에 부었습니다. 그리고 나서는 전체 학급에 물었습니다.
시간관리 전문가는 즉시 부인했습니다. 그리고는 말을 이어 갔습니다.
- 위키를새로시작하자 . . . . 37 matches
2000 페이지에 가까워 지면서, ZeroWiki의 접근성이 점차 감소하고, 기존의 모든 예절과 규칙이 벽으로 작용하는것 같습니다. 그렇다고, 위키의 철학과 개념을 교육하는 기회는 없었던것 같구요.
그래서 ZeroWiki 를 막아버리고, Wiki를 새로 시작하면서, 함께 예절과 규칙을 만들어 나가면서 위갭?다시 시작하는것이 어떨까 싶습니다. 현 ZeroWiki는 읽기만 가능하고, 새로운 위키는 읽기, 쓰기, 삭제(로그인 한 사용자만) 모두를 열어둘 생각입니다. 현 ZeroWiki 상의 예절이나, 규칙은 필요에 따라 재사용, 새롭게 정의 하려고 합니다.
이를 흑백의 논리로 찬반을 가리기는 애매하지만, 전반적인 의견의 경향을 알고 싶어서, 투표에 붙입니다.
'''OneWiki를 새로 시작해서 1년간 실험을 하였습니다. 허나, ZeroWiki 와 그리 다르지 않다는 경험을 얻었습니다. 그래서 OneWiki 와 ZeroWiki를 통합하였습니다. 통합된 페이지중 DuplicatedPage 는 아직 완전한 통합이 이루어 지지 않은 것이니, 해당 페이지를 고쳐주세요.'''
NeoCoin : 방법은, 현재 위키를 읽기 전용으로, 새로운 위키를 읽기, 쓰기, 지우기 다 열고 새로운 문화, 예절이 만들어 지는 모습을 경험하고 싶습니다. 읽기 전용의 위키의 내용은 전이되거나, 그대로 남거나, NoSmoke:SisterWiki (차후 연결) 하거나 하고 싶습니다. 더 나아가, 모든것에 대한 재정의와 다시금 생각해 보기를 해보았으면 합니다.
snowflower : 제로위키를 시작하고나서 쓰는 중간에 결정된 것들이 많고, 제대로 적용된것도 많지 않다고 생각합니다. 새로운 룰 밑에서 모두가 멋지게 쓸 수 있는 위키가 탄생하였으면 좋겠습니다.
모두가 멋지게 쓸수 있는 위키보다. 현재의 위키가 존재함으로서, 새로운 신입회원들이나 02 학번 정도의 사람들은 위키의 페이지가 처음 생기고, 예절과 규칙이 생기는 그러한 경험들을 본의아니게 박탈 당해 버렸다는 생각이 들었습니다. 그런 경험을 돌려주고 싶습니다. --NeoCoin
위키 자체가 읽기 전용인것이기 보다는, 별도의 위키로 두는 것은 어떨까요? (물론.. 지금도 기존의 페이지가 별로 수정되고 있지 않아서 read-only 나 마찬가지인 상황이긴 하지만.) --[1002]
[1002] : 사람들이 얼마나 적극적으로 고민할지 걱정이긴 하지만.. 뭔가 더 나은 방향이 어떤 것인가에 대해서는, 다른 위키들을 보면서 어떤점이 장점이고, 어떤점이 단점인지, 어떻게 해결해나가야 할지에 대해 판단을 하시기를. 뭔가 잘 만들어진 것들은 공짜로 이루어지지 않기에.
좋고 나쁜것은 모두에게 달려 있습니다. 많은 분들이 적극적으로 참여해야 겠지요. 일단, 새로운 위키를 열겠습니다. --NeoCoin
저의 경험으로 볼 때, 단지 새로 시작하는 것이 "새로운 것"을 가져다 주지는 않습니다. 동시에 두개의 위키를 돌리든가 하고, 새 위키에는 새로움의 어포던스(예컨대 비쥬얼 등)를 제공하도록 합니다. 그리고 새 위키에는 대다수는 읽을 수 있고, 몇 명만 쓸 수 있게 합니다. 그리고 그들이 규칙을 만들어 나갑니다. 우선은 규칙에 대한 규칙(메타규칙)을 만듭니다. 예컨대 "전체 규칙 수는 9개를 넘지 않는다"든지... 그리고 가능하면 생성적인(generative) 환경을 만들려고 합니다 -- 야구선수가 공을 받는 방법을 미적분학으로 풀어내기보다, 공이 보이는 각도를 일정하게 유지하려고 한다든지 하는 휴리스틱적인 규칙으로 접근합니다. 필요없는 것은 제거하고 꼭 필요한 것만 남깁니다. 제거해보고 해보고, 붙여보고 해봅니다. 예를 들어, 현 위키에서 들여쓰기가 불가능하다면 어떤 세계가 펼쳐질까요?
새로 만든 위키를 보니 지금 위키와 아무 차이가 없어 보입니다. 이런 식으로 나가면 똑같은 위키를 만드는 수고를 하지 않을까 우려됩니다. 왜 새로 시작합니까? 여러분의 대답은 무엇입니까? --JuNe
기존의 정보들을 옮겨놓자는 의미가 아니었습니다. 새로 만들어 지는 페이지들이 그쪽으로 가고 있는 것이지요. 지금 그렇게 되고 있고, 어쩌면 프로젝트를 위한 특화된 위키가 될지도 모를것 같군요.--NeoCoin
둘은 함께 할수 있다고 생각합니다. 하지만 할려고 들지 않은 것이지요. --NeoCoin
이런 의견도 있습니다. ''최소한 지금과 같이 늘어나고 있는 프로젝트 관련 페이지를 분리하자''는 것입니다. --NeoCoin
- 창섭/배치파일 . . . . 37 matches
대부분의 사람들은 배치파일이 도스환경을 쉽게 만든다는 사실을 과소평가하는데, 컴퓨터를 좀더 쉽게 사용하고 싶다면 배치파일을 꼭 짚고 넘어가는것이 좋습니다.
따라서 사용자는 항상 도스 프롬프트 상에서 일일이 키보드를 이용한 타이핑으로 명령을 내려야 하고, 하나의 명령이 내려지면 완료될 때까지 다음 명령을 내릴수가 없습니다. 작업 과정이 얼마되지 않는다면 큰 상관이 없으나 그 과정이 매우 길고 복잡하다면 사용자는 지루함을 느끼게 됩니다. 또한 비록 짧은 작업과정이라도 컴퓨터를 켤때마다 매번 똑같은 과정을 일일이 지시하는 것도 귀찮을 것입니다.
배치파일의 기능은 순차적이고 반복된 동일한 작업 과정을 몇개의 혹은 수십, 수백 개의 연관된 명령어를 하나의 파일로 집약하여 그 하나의 파일(배치파일)만 실행함으로써 원하는 작업 과정을 수행하는것입니다.배치파일에 붙는 확장자는 .bat(batch 의 약어) 입니다.도스에서 실행이 가능하기 때문에 .com, .exe 확장자가 붙는 외부 명령어와 함께 실행 가능한 파일로 분류됩니다.차이가 있다면 .com, .exe 명령어는 컴퓨터만 해석 가능한 기계어 코드로 구성되어 있는반면, 배치 파일은 사람이 알아볼수 있는 일반 텍스트로 이루어져있다는 것입니다.
그래서 사용자들은 문서작성에 이용하는 워드프로세서나 텍스트에디터 등을 이용해 배치 파일을 작성할 수 있습니다. 그러나 워드프로세서는 덩치가 크고 원래 목적이 편집과 출력을 위해 만들어진 것이므로 단순한 배치 파일을 작성하는 데는 권하고 싶지 않습니다.
저장할때도 워드프로세서 고유의 포맷(예" .hwp 확장자를 가지는 아래아한글 데이터 파일)으로 저장하면 인식이 되지 않으므로 아스키 파일로 저장해야 합니다.가장 편리한 방법은 일반 문서 에디터( 도스의 Edit, Q에디터,U에디터 등)를 이용하거나 도스의 'Copy Con' 명령으로 배치 파일을 만드는 것입니다.다음과 같이 'Copy con 파일명' 형식으로 입력하고 엔터를 누르면 도스 프롬프트 상태에서 편집할 수 있는 상태가 됩니다.
여기서 쓰고 싶은 대로 적기만 하면 됩니다.제일 마지막행의 ^Z 는 파일의 제일 마지막 부분이라는 것을 도스에게 알려주는 코드로 < Ctrl + Z > 키 또는 F6 키를 누르면 됩니다. 그리고 엔터키를 한번더 누르면 '1 File(s) copied' 라는 메세지가 출력되는데, 이는 방금 ' copy con 파일명 ' 으로 작성된 문서파일이 성공적으로 만들어졌다는 뜻입니다.위의 문서파일은 확장자가 .BAT 로 붙었기 때문에 실행가능한 외부 명령어가 되는데, 배치파일은 명령이 기록되어 있는 순서대로 실행되기 때문에 timedate.bat 를 실행시키면 먼저 화면을 지우고 난뒤 시스템의 시간과 날짜를 설정합니다.간단한 배치파일은 'copy con 파일명' 으로 작성하는 것이 다른 프로그램의 도움없이 쉽고 빠르게 처리할 수 있습니다. 하지만 배치파일이 조금 길거나 작성중에 수시로 편집할 일이 생기는 경우에는 불가능합니다. 'copy con 파일명' 으로 파일을 작성하면 행으로 다시돌아갈 수 없을 뿐 아니라 수정이 불가능하기 때문입니다. 그러므로 배치파일을 만들 필요가 있을때는 문서 에디터를 이용하는 것이 좋습니다.
배치 파일은 파일 안에 기록되어 있는 명령의 순서대로 실행됩니다.가장 대표적인 것이 부팅에 이용되며, 컴퓨터의 루트 디렉토리에 위치하고 있는 Autoexec.bat 파일입니다. 그런데 만약 배치 파일의 실행의 순서를 순차적이 아닌멀티부팅용 Autoexec.bat 처럼 사용자 마음대로 정하고 싶다면 배치파일에 제공되는배치명령어의 용도를 알고 있어야 합니다.
현재 실행중인 배치 파일을 종료하지 않고 필요한 다른 배치파일을 호출하여 실행한 다음 원래의 배치파일로 다시 돌아오려고 할 때 사용됩니다.
- /C[:]문자열 : 사용자가 선택할 수 있는 키목록을 [] 괄호 내에 ', ' 로 구분하여 출력하고 /C 스위치를 사용하지 않으면 기본적으로 YN이 사용됩니다.
- /T[:]기본키, 대기시간 : 기본키를 지정한 후 대기시간 동안 사용자의 키 입력이 없으면 자동적으로 기본키가 입력된 것으로 간주하고 진행됩니다. 지정 가능한 대기시간은 초단위이며 0에서 99 사이의 값입니다.
◇ 설명 : 입력 가능한 키를 a,b,C,D로 한정하며 사용자로부터 입력되는 영문자의 대,소문자를 구분하는데, 만약 5초 내에 사용자로부터 키 입력이 없다면 C 가 입력된 것으로 간주합니다. 그리고 화면에는
- 문자열 : 화면에 출력하고 싶은 메세지를 적어줍니다.
- <집합> : %%<변수>에 대입하고 싶은 값을, 또는 스페이스로 구분하여 대입하고 싶은 순서대로 나열합니다.
- <명령> : %%<변수>에 대입되어 있는 값에대해 반복적으로 실행하고 싶은 명령을 지정합니다.
◇ 참고 : 배치 파일에 레이블 표시는 레이블명 앞에 콜론(:) 을 붙여주며 줄을
- ERRORLEVEL <수치> : 바로 전에 실행한 명령(프로그램)의 종료 코드가 <수치> 이상일 때에는 참이 되고 <명령> 이 실행됨.
- <문자열1> == <문자열2> : <문자열1> 과 <문자열2> 가 같을 때에만 참이되고 <명령>이 실행됩니다. 주의할 점은 문자열의 대,소문자가 구별되며, 문자열중에 구분기호(콤마,스페이스,세미콜론,등호,탭)가 포함되어 있으면 않됩니다.
- EXIST <파일명> : <파일명>으로 지정한 파일(경로포함)이 존재할 때에만 참이 되고 <명령>이 실행됩니다. <파일명>에는 와일드카드 문자의 사용이 가능합니다.
- 문자열 : 문자열을 생략하면 'press any key to continue...'라는 메세지가 화면에 출력됩니다. 만약 PAUSE 명령 뒤에 어떤 메세지를 지정하여 그 메시지를 출력하고 싶다면 'Echo On' 명령을 우선 내려야 합니다.
◇ 설명 : 배치 처리 중 pause명령을 만났을때 임의의 다른 메시지를 화면에 출력하고 싶다면 예 에서와 같이 반드시 echo on 명령이 선행되어야 하며 예의 경우에는 ' 준비가 되었으면 아무키나 누르세요...' 라는 메세지가 출력됩니다.
- JavaNetworkProgramming . . . . 36 matches
*'''지금은 여기서 접는것이고. 누군가 Java Network Programming을 본다면 참여하기 바란다 ^^;;'''
*세마포어(semaphores) : 세마포어란, 자바 객체가 아니라 특별한 형태의 시스템 객체이며, 이객체는 '얻기(get)'와 '놓기(release)'라는 두 가지 기능을 가지고 있다 한 순간에, 오직 하나의 쓰레드만이 세마포어를 얻을 수 있으며(get), 한 쓰레드가 세마포어를 가지고 있는 동안 세마포어를 얻으려고 시도한 다른 쓰레드들은 모두 대기 상태에 들어간다. 다시 쓰레드가 세마포어를 놓으면(release) 다른 쓰레드가 세마포어를 얻고(get) 다시 대기상태로 들어간다. 이런한 매커니즘을 사용하여 특정 작업을 동기화 할수있다.
*동기화의 효율 : 대부분의 경우 동기화 작업은 매우 중요하며, 때로는 적대 생략해서는 안되는 경우도 있다. 그러나 불필요한 동기화 작업은 프로그램의 수행 성능을 떨어뜨리고, 재사용성을 감소시키며, 프로그램이 교착 상태에 빠지게 할 수도 있다.
} //경우가 생길 수도 있다. 따라서 stop() 메소드를 사용하는 대신 쓰레드 자신의 종료상태를 인지하고, 수행을 중지하는 플래그
*notify() : 대기하고 있는 쓰레드중 하나를 꺠운다.
*notifyAll() : 메소드가 호출된 객체에서 대기하고 있는 모든 쓰레드들을 깨운다.
*효과적인 다중 쓰레딩 : 자바에서 쓰레드를 생성하는 것은 매우 느린 작업이며 일부 자바 가상 머신은 쓰레드에 관련된 메모리 누스 때문에 고생하기도 한다. 따라서 효과적인 쓰레딩을 위해서는 새로 쓰레드르 생성하는 것 보다 이전에 생성했던 쓰레드 객체를 재사용하느 것이 좋다 진보된 형대의 자바 가상 머신에서는 시스템 레벨에서 이러한 쓰레드 재사용을 지원하기도 하지만, 이경우조차도 쓰레드를 재상용하는 방식을 사용하면 여러가지 이점을 얻을수 있다. --예제는 17장쯤에..
byte[] buffer = new byte[8]; //작은 버퍼를 만들고
*그외 뒤에서 배울 스트림들을 소개하고 있다.
*이장에서는 FileOutputStream과 FileInputStream에 관해 다루고 있다.
*이외에 File,FileDescriptor,RandomAccessFile에 관해 간략히 나오고 파일스트림과 같이 사용하는 예제가 나온다.
*File클래스 : 시스템에 독립적인 파일의 이름을 나타내고 실제 파일에 관한 정보를 결정하는 메소드뿐만아니라, 파일의 속성을 바꾸는 메소드도 제공
*FileDescriptor클래스 : FileDescriptor 객체는 하위 레벨의 시스템 파일 설명자로의 핸들이다. 파일 설명자는 열려진 파일을 의미하며, 읽기 작업이나 쓰기 작업을 위한 현재의 파일 내의 위치와 같은 정보들을 포함한다. RandomAccessFile이나 FileOutputStream, FileInputStream을 사용하지 않고는 유용하게 FileDescritor를 생성할수 있는 방법은 없다 . --;
*RandomAccessFile클래스 : 파일스트림을 사용하지않고 파일을 쉽게 다룰수 있음 장점은 파일스트림 클래스는 순차적 엑세스만이 가능하지만 이것은 임의의 엑세스가 가능하다. 여기선 RandomAccessFile클래스랑 파일 스트림을 같이 쓰는데 RandomAccessFile의 장점을 가지고 네트워크에서도 별다른 수정없이 사용할수있다. 예제는 밑에 --;
while((numberRead = in.read(buffer)) >=0) //파일을 버퍼에 가능한 많은 양을 읽고 읽은 양만큼 파일에 쓴다. 파일이 EOF일 때까지.
out.write(buffer,0,numberRead); //여기서 0은 초기시작위치이고 파일에 쓸때마다 점점 옆으로 이동한다 --;
file = new RandomAccessFile(filename,"rw"); //RandomAccessFile은 파일이 존재하지 않으면 자동으로 파일생성 하고 그렇지
super(file.getFD()); //FileDescriptor를 넘겨주고
*지금까지는 한 바이트나 바이트 배열정도의 읽고/쓰기를 지원하는 간단한 스트림만을 보와왔다. 이러한 수준의 통신은 필요이상으로 번거롭다. 그래서 이번장에서는 기존의 스트림의 위에 부가적인 기능을 제공할 수 있는 스트림인 스트림 필터(stream filter)에 대해 소게하곘다.
*DataOutputStream과 DataInputStream : 기존의 바이트만 읽고 쓰는 스트림위에서 상위 수준의 통신이 가능하다. 예를 들어 String이나 부동점 실수와 같은 것을 통신할 수있다. 기존의 수준낮은(?) 것은 바이트 단위로 통신해야한다.
- ToyProblems . . . . 36 matches
구구단, 소수, 피보나치 수열 구하기 등의 간단하고 쉬운 문제들
당신은 이제까지 이런 문제들을 후배들에게 가르치면서 그들을 정신의 감옥 속에 가둬넣지 않았습니까? 이제까지 구구단 문제를 정말 생소한 방법으로 해결한 후배를 본 적이 있습니까? 모두 for 루프를 쓰지 않던가요? 네. 당신은 이제까지 후배들을 자신의 협소한 패러다임으로 세뇌시켜왔습니다. (사실, 시간을 써가며 후배들에게 자신의 지식을 베푸는 선배들은 정말 훌륭하고 그런 사람들을 폄하할 생각은 전혀 없습니다. 일부러 좀 과장을 해서 썼습니다.) --JuNe
ToyProblems에는 단점이 있다. 너무 간단하다. 배우는 사람은 지루하고 시시하게 느낄 수 있고, 문제를 풀어봐야 별 감흥이 없으며, 새로운 걸 배운 느낌이 들지 않는다. 그러나 그들에게 아직 복잡한 문제는 시기상조이다. 이 딜레마를 어떻게 깨트릴까.
1. 선배가 이 간단한 문제를 다양한 패러다임으로 다르게 풀 수 있다는 것을 보여주고 간략히 설명한다. 이때, 대부분의 경우 긴 설명이 필요없다. 이미 문제를 풀어봤기 때문이기도 하고, 문제 자체가 간단하기 때문이기도 하다.
학생은 이 경험을 통해 프로그래밍 "개념"과 "패러다임"들을 학습하게 되며, 어떤 경우에 어떤 패러다임이 더 적절한지 판단할 능력이 생기고, 무엇보다도 한가지 패러다임에 대한 초기 각인(새끼새가 처음 본 흰색을 무조건 어미라고 생각하는 효과)을 깨트리고, 좀 더 자유로워질 수 있다 -- 한가지 패러다임만 아는 사람보다는 여러가지 패러다임을 아는 사람이 더 개방적이고 포용력이 넓다. --JuNe
고학년(저학년을 가르칠 사람들) 대상으로 강의를 해줄 용의가 있습니다. 만만한 문제가 결코 만만한 게 아니라는 것, 간단한 것에서 정말 엄청나게 많은 걸 배울 수 있다는 것 등을 느끼게 될 것입니다. --JuNe
''요세 저도 위와 같은 것 때문에 고민 했는데 해결하기가 쉽지 않았습니다. 후배들에게 좀 더 많은 걸 배울 수 있는 문제에 관하여서... 그런데 어려운 문제는 좌절할 거 같고 그렇다고 쉬운 문제는 배우는 게 얼마 없는 거 같고... 여러 가지 패러다임을 통해서 고민을 해결할 수 있다면 이번 기회에 한 번 시도 해보고 싶습니다. --재동''
*참가자 자격: 후배를 가르쳐봤고, 앞으로도 가르칠 사람.
잘하면 갈 수 있을 지도 모르겠습니다. -_-; 지금 시간 조율중이라..;; 꼭 가고 싶어서.^^;; 죄송합니다. 이랬다 저랬다 해서..; 되도록 가도록 하려구요.. 재밌을 거 같은데..^^;;
1. 여기에서 두 가지 정도를 고른 다음
1. 1번에서 고른 나머지 문제를 가능하면 다양한 방법으로 여러번 풀게한다. 각자 몇 개의 전혀 다른 프로그램을 만들어 내는가? 60m
희상 - CSP를 응용해 문제를 푸는 것을 듣고 난 후 Alan Kay가 Paradigm이 Powerful Idea라고 했던 것에 고개를 끄덕끄덕 할 수 있었다. 그동안 FP를 맛만 보았지 제대로 탐구하지 않았던 것이 아쉬웠다. FP에 대한 관심이 더 커졌다.
상욱 - 새로운 새고방식을 알아 간다는 것은 재미있었다.
상민 - 새로운 사고란, 새로운 사고법이라 불리우는 것이, 미묘한 차이를 인지하는 것에서 온다는 사실을 알았다. 겸손한 자세가 중요한것 같다.
- 창준 - Higher Order Programming과 로우레벨에서의 설명(예컨대 단순한 함수 포인터로 설명하는 것)의 차이는 미묘하고, 또 크다. 동사(달리다)를 명사(달림)의 품 안에 넣는 것이다. 이 사고에서 엄청난 차이가 생길 수 있다.
재동 - 한문제 다시 풀기가 재미있었따. 사고의 고정화를 경계해야 겠다. 시간안에 못해서 충격 이었다.
석천 - 늦으면 안된다. Python 사용중 아는 것과 쓰는 것의 커다란 차이를 느꼈다. 기존 사고에 갇혀버려 새로운 사고로 전이 못하는 것에서 어려움을 느꼈다.
- 창준 - 교육의 3단계 언급 Romance(시, Disorder)-Discipline(예, Order)-Creativity(악, Order+Disorder를 넘는 무언가) , 새로운 것을 배울때는 기존 사고를 벗어나 새로운 것만을 생각하는 배우는 자세가 필요하다. ( 예-최배달 유도를 배우는 과정에서 유도의 규칙만을 지키며 싸우는 모습), discipline에서 creativity로 넘어가는 것이 중요하다.
규영 - 가르치는 것의 어려움. 어설프게 가르치려다가 어떤 면에서는 피해를 줄 수도 있겠다는 생각을 했다. 그리고 수학이나 논리적 사고의 중요성을 깨달았다.
- woodpage/VisualC++HotKeyTip . . . . 36 matches
*요즘 회사 동료랑 머가좋네 머가 편하네 하면서 놀고있음
*알고보면 상당히 편한 visual 쩝
*Hot Key를 쓰면 좋다. 스타에서 단축키 쓰는거랑 같은이유다. 마우스로 스타하는거랑 키보드까지 같이 쓰는것은 거의 천지차이다. 그만큼 유용한 단축키를 많이 쓰면 쓸수록 코딩 속도도 빨라지고 소스분석도 잘되는거같다. ^^;;
*일종의 페이지를 이동시켜주는 기능을한다. A라는 페이지를 열고 작업하다가 B라는 페이지를 열었다. 그리고 다시 A라는 페이지를 가고 싶을때 Ctrl + Tab을 누르면 간다. 살짝 살짝 눌러주면 바로 전 페이지를 이동하는 기능을 수행한다. 그러다 급하게 누르면 열린 페이지를 계속해서 이동하게 된다.
* Ctrl + F6 이랑 같죠? -_-훨씬 낫군요.. 한손으로 되고.. ㅠ.ㅠ --[선호]
*Ctrl + F를 누르면 찾기 창이 뜨는것 처럼 단어에다가 커서를 놓고 Ctrl + F3을 누르면 그 단어를 찾음 상당히 많이 쓰는 키인데 난 얼마전에 알았음 --; F3으로 이동 SHIFT+F3은 반대로
*Tab 정렬이 안되어있는 소스를 블럭 지정하고 Alt + F8 을 지그시 눌러주면 Tab 정렬이 된다.
*1학년땐가 상민이형이 쓰는걸 보고 상당히 신기했던 북마크 한번누르면 지정하고 한번 더누르면 해제한다. 지정하고 나서 F2를 눌러서 이동한다 같은 페이지만 됨
*커서는 고정시키고 화면만 스크롤됨
*블록의 짝을 찾아줌 커서를 { 나 } 에 넣고 눌러야함
*컴파일시 error나 경고에 warning에 대하여 한줄씩 이동함 또 전체 문서에서 찾기(Alt + E + I) 에서 찾은결과에 대하여도 F4로 이동
*역시 이동하는 기술로 BrowseGoToDefinition 이라고 함 마우스 오른쪽 팝업메뉴에도 나옴 사용법은 예를 들어 fSelect()라는 함수를 사용했을때 그함수내용을 보고싶으면 fSelect에다가 커서를 놓고 F12를 누름 (변수,define도 됨) 그럼 fSelect()가 구현된(?)곳으로 이동함 사용하면 아주 유용함 단점은 *.ncb 파일이 조금 커짐 별문제 아님 사실 마우스 오른쪽 팝업에서 쓰는걸 더 많이 씀
*BrowseGotoReference라고 함 함수는 선언된곳으로 감 예를 들어 클래스 맴버 함수면 클래스 header로 감
*거의 이것때문에 깔았다고 봐도 무관할 정도다.
*믿을만한 소식통에 확인해본결과 WndTabs 최신버전은 단축키가 바꼈다고하는데 먼지 모르겠다. 별수없이 지금 있는 버전(2.50)을 씀
*참고로 Visual assist에서도 지원한다고 들었는데 모르겠다.
*회사들어와서 본격적으로 써봤는데 좋다. 편하고 색도 화려하고 근데 문제가 있다. 전적으로 나한테 해당되는거지만
*이거에 좀 익숙해지니깐 이걸 안쓰고 소스를 보면 적응이 안되는것이다. --; 그래서 결국 안쓴다. 쩝 눈에 문제가 있나 --;
*대신 단축키를 많이 익혀서 나름대로 편하게 쓰고 있다.
* Commands 탭에 보면 Category 가 있다 거기 콤보박스를 보면 여러가지 카테고리가 있는데 단축키나 메뉴 안쓰고도 이거 붙여놓고
- 네이버지식in . . . . 36 matches
요새 잡생각이 많아져서 일기에다만 쓰고 있었는데 위키가 있다는 사실을 잊고 있었다.ㅡㅡ;
지식in이란 서비스는 질문에 답변을 해주는 게시판 형식이긴 하지만, 참여가 자유롭고 한 주제에 대해 글을 쓴다는 점에서 위키랑 비슷하다는 생각이다. '''오픈 백과사전'''이라는 게 있기도 하던데 이게 위키랑은 더 비슷한 형태이지만 지식in에 대면 별로 인기가 없어보인다.
가장 먼저 떠오른 건, 이용자 수였다. 이용자 수가 엄청나게 많다는 점이 지식in서비스를 활발하게 해 주었다. 이용자 수가 많아진 이유는 여러 가지가 있겠지만, 텔레비전 광고까지 낼 정도로 홍보를 해서 그렇지 않을까? 반면 위키 홍보는 몇 번인가 하고는 그 뒤로는 사람들이 알아서 쓰기를 바랬던 것으로 보인다. 알려지지 않은 서비스가 아무리 많은 장점이 있다 한들 사람들이 알아야 쓸테니까, 위키 사용이 활발하지 않은 건 일단 덜 알려져서라고 생각한다.
다음으로는 익숙하지 않은 형식이었다. 아예 인터넷을 처음 만나는 사람이라면 익숙한 형식이 있지도 않겠다만, 많은 사람들이 글을 쓸 때는 게시판에 제목과 이름과 내용정도가 달린 게 글 형식이고, 글 제목이 목록으로 한 페이지에 나오는 형식이 익숙한 형식일 것이다. 때문에 전부 '''내용'''처럼 생긴 위키를 보고는 일단 다르게 생긱 형식에 바로 적응하지는 못할 것이다. 쓰기 어렵지는 않겠지만 말이다. 때문에 위키가 엄청난 장점을 가져서 적응하는 노력을 들이고 싶을 만 하지 않다면 굳이 사용하려 하지 않을 것이다. -[Leonardong]
그 차이는 의외로 아주 간단합니다. 네이버지식인과 같은 시스템은 개인의 명성(reputation)에 대한 욕구에 상당 부분 의존하고 있습니다. 개인을 더 드러내는 것이죠. 반대로 위키는 개인이 잘 드러나지 않습니다. 명성 시스템이 아닙니다. see also ForgiveAndForget 이는 XP 철학과도 상통합니다. XP에서는 너희 팀에 영웅이 누구냐는 질문에 답이 바로 나올 수 있는 팀을 좋지 않게 봅니다. 영웅이 있는 팀은 위험한 팀입니다. XP는 보상도 팀단위로 받고 책임도 팀단위로 지는 것을 이상적으로 봅니다.
우선 '위키'라는 개념과 형식은 사람들에게 생소하고 낯설게 다가오게 마련입니다. 기존 '게시판' 에 익숙해져있던 사람들에게 위키의 사용은 하나의 모험으로 작용하겠죠. 사람들에게 있어서 낯설음,생소함등은 곧 거부감으로 직결되기 쉽습니다. 이러한 거부감을 없애려면 굉장한 노력과 시간과 자본이 투자되어야 하겠죠. MS 사의 윈도우즈가 성공한 요인이 뛰어난 기능과 능력이 아닌 '익숙함'이라는 것은 왠만큼 소프트웨어를 알고있는 사람들 사이에서는 상식이죠.
''왠만큼 소프트웨어를 아고 있는 사람들은 OS독점이라고 알고 있는데요. 아닌가요? :) --NeoCoin''
- 현재는 독점 시장을 형성하고 있습니다. 하지만 그 과정을 살펴보면 MS 사의 윈도우즈가 뛰어난 성능과 기능을 가져서 독점했다고 보기는 힘듭니다. 객관적, 주관적, 전문가의 분석 어떤점으로 보나 윈도우즈보다 뛰어난 운영체제는 언제나 존재해왔습니다.(물론 지금도 존재합니다.) 하지만 사람들은 이미 익숙해져버린 윈도우를 버리고(월등히 뛰어나지는 않지만 그렇다고 절대적 성능이 떨어지는것도 아니니) 다른 운영체제를 택한다는건 '모험'을 넘어서 '도박'에 가깝다고 느껴지게 됩니다. 그러므로써 그러한 모험 내지 도박은 말씀드렸던 낯설음,생소함등으로 이어지게 되고, 자연스레 다른 OS 들은 설자리를 잃어버리게 됩니다. 단순히 결과만을 놓고 보았을때 말씀하신 독점시장이 맞습니다만, 제가 말씀드리고자 했던 요지는 그 과정속에서 찾을수 있었던 '익숙함'이었습니다.
''말씀하신 익숙함의 의미를 제가 독점으로 바라봐서 생기는 오해인것 같습니다. 분명 청정원 케찹도 있지만 오뚜기 케찹을 선택하고 많이 팔리는 것을 '익숙함'으로 볼수 있습니다. 하지만 오뚜기 케찹을 쓰지 않으면 모든 요리를 할수 없는 상황이 되면 그걸 이제 '익숙함'이라고 설명하기보다 독점으로 바라봐야 한다고 생각하거든요. :) --NeoCoin''
또하나 '보상과 동기부여' 라는 차원의 면에서 생각해 본다면, 네이버는 이미 매체를 통해 어느정도 인지도를 쌓은 후에 그 인지도를 십분 활용하여 '보상과 동기부여'를 제공합니다. 네이버와 위키의 공통점은 참여의 제한이 없습니다. 대부분의 집단에서 파워라는것이 '제한과 배제'에서 나온다고 하셨지만, 네이버의 지식인 '제한과 배제'라기 보다는 '노력(실력)에 따른 보상'이라는 자본주의 정신과 일맥상통한다고 봅니다. '보상과 동기부여' 이것이 네이버와 위키의 가장 큰 차이점이라 생각합니다.
네이버에서 영웅은 없습니다. 열심히 노력한 '고수' '명예의 전당'이 있을뿐입니다. - 장창재
윗 글에 공감해서 한동안 이 페이지를 잊고 있었는데, 어제 문득 다른 생각이 나서 또 적어봅니다.
사람들은 [네이버지식in]을 마치 수학 문제 해답지처럼 여기는 것 같습니다. 저도 요즘엔 누가 궁금한 게 있다고 물어봤을 때 모르는 경우''지식in 검색해봐''라는 말을 자주 합니다. 제가 누군가에게 모르는 걸 물어봤을 때도 자주 듣습니다. ''지식in엔 없는게 없다니까''라는 말도 들어보았습니다. 마치 [네이버지식in]에는 살아가며 궁금한 것들에 대한 모든 해답이 있는 듯이 여기고 있다고 느꼈습니다. -[Leonardong]
- 아.. 그런가요? 제가 잘못 알고 있었나보네요..^^; - 임인택
야후에서 위키서비스를 한다는군요. 서비스업체로서의 '위키'라는 이름을 걸고 서비스를 시도하는 건 처음이 아닐까 생각이 드네요. --[1002]
- 병역문제어떻게해결할것인가 . . . . 36 matches
병역 문제로 고민하고 있는 사람(특히 전산인)들에게 도움을 주었으면 하는 취지로 만든 페이지
* 일반적으로 하지 못할 경험을 하고 나올 수 있다. - 좋던 나쁘던 경험에서 깨달음을 얻을 수 있음
* 카투사 : 토익 780점 이상, 요샌 스피킹도 받아줌. 9월 쯤 접수하고 평생 한번밖에 지원을 못합니다.
* 개발 경력이 중요합니다. 희망하는 사람은 개발한 결과를 제출하면 가장 좋습니다. 인터넷에 올려놓거나..컴퓨터 잡지에 기고한 경력도 있으면 좋습니다 --전산장교 출신
* 분기별로 모집합니다. 그리고 경력같은걸 많이 보는듯 합니다.
* 이 항목이 미래창조과학부(MSIP)주관, 정보통신산업진흥원(NIPA)운영하는 SW 마에스트로와 MOU를 체결한 그 부서의 그 특기병과를 지칭한다면, 지원하기 위해서는 활동량이 많은 제로페이지 회원이어도 지원 자격 요건은 충족할 수 있습니다만, 그건 구색을 맞추기 위한 지원조건이고, 실제로는 MOU 체결한 기관의 지원자에게 우선순위를 부여하기 때문에, 비 기관 지원자가 서류를 통과할 가능성은 거의 없다고 합니다. (입대설명회에 나온 간부가 말하길 서류 특별점수가 60점 정도 되는데, MOU 기관은 만점 채우고 시작, 아닌 사람은 산더미 만큼 모아와야 채울 수 있다고 합니다.)
* MOU체결 기관으로는 SW 마에스트로, BoB( Best of Best)가 알려져 있으며, 소마가 훨~씬 널럴하고 쉬우니 소마를 추천
* 서류 합격시에 확인 전화 하라고 문자가 오는데, 사이버병이라고 하면 담당자가 못 알아들음. 반드시 문자에 적힌 그대로 얘기할 것. (이번에는 S/W 개발병 이었음)
* 매달 모집합니다. 여기서는 산업기사 자격증이 필수는 아니지만 추가 점수 입니다. 그리고 2학년 2학기 성적이 나와야 지원 가능합니다. 또한 매달 지원해도 상관 없답니다.
* 이건 보통 워드를 많이 치는 행정병 같습니다. 자대 가서 인사과에 대기할때 인원이 필요하면 타자연습프로그램으로 워드쳐보라 합니다. 기본 300타 이상이면 가능성 있습니다. 밤에 잠 못자구 워드 치는 경우가 많습니다. 요즘은 많이 좋아졌다고 합니다.
* 말그대로 레이다를 운용하는 특기병. 해안가 기지에서 육지로부터 10마일 이내의 범위를 감시합니다. 나름 매달 모집하고, 학과와 자격증에 따라 추가점수가 있기 때문에 대부분 합격할 수 있습니다. 훈련소를 마치고 후반기교육을 받은 후 자대 배치를 받으며, 해안가 기지로 배치받기 때문에 인천부터 시작해서, 해남/완도, 여수, 부산, 강원도 등 어디를 배치 받을지 알 수 없습니다. 감시 기지이기 때문에 격오지로 취급해 휴가와 수당이 지급되며, 24시간 작전부대로 취급되어 체력단련 및 기타 사격 훈련, 유격, 혹한기 등의 훈련이 없습니다. 단점은 분대 단위로 근무에 투입되어 3교대를 한다는 것이지만, 밤새서 과제하던 여러분이라면 금방 익숙해질 것 입니다. 격오지 부대라서 PX가 없지만 주에 한번꼴로 황금마차가 방문합니다.
* 함대는 배정을 받지만 계속 배 타고 여러군데 돌아다님.
* 사실 많이 고르는 선택지는 아니라 해군 출신 ZeroPager가 있으면 추가바람
* (정말정말 쉬운) 정보처리 기능사 자격증을 따고 신청하면 '전자계산' 특기로 공군에 입대할 수 있다.
* 2019년 기준 공군 복무기간이 22개월로 줄어듬에 따라 훈련소 5주 + 특기교육 3주를 겪고 해당 성적에 따라 (TO가 나온 부대 중에) 원하는 부대에 들어가게 된다.(2020년 현재 21개월까지 줄어듬.)
* 정보체계관리단 체계개발대에 가게 되면 개발을 할수'''도''' 있다. ~~아닐수도 있고~~
* 2013년 12.9 병청이의 난 : 2014년, 2015년도 현역TO는 마이스터고/특성화고 졸업 및 대학 미진학자 TO만 나오게 되었다. 이에 따라 2014년 TO를 준비하거나 내정되어 인턴 등을 하던 현역 대학생들은 낭패를 보게 됐다.
* 현역과 보충역은 같은 산업기능요원이더라도 TO 획득에서 차이가 너무 납니다. 보충역은 지역 TO가 무제한 수준이라서 회사에서 OK만 하면 TO를 받을 수 있습니다. 카더라로는 보충역 n명을 모으면 현역TO가 생겨서 보충역을 모으는 회사도 있다고 합니다... 그러니 보충역이면 적당한 실력만 있으면 아주 높은 확률로 산업기능요원을 할 수 있습니다. 조언을 구할 때도 현역, 보충역은 별개로 생각해서 조언을 받는게 좋습니다.
* 석사 전문연구요원 : 석사 이상의 학위를 소지하고 병역지정업체에서 일정 기간동안 재직
* 박사 전문연구요원 : TEPS, 대학원 성적을 통하여 일정 인원들에 한해 박사 과정 진학 후 교내에서 전문연구요원을 할 수 있음. 현재 과기원들도 박사 전문연 TO 감소로 인하여 경쟁이 어느정도 있다고 알려짐. 단 보충역의 경우 일정 조건만 만족하면 가능
- 서지혜 . . . . 36 matches
* '''"그럼에도 불구하고"와 "그래서"를 적재적소에 쓸 줄 아는 사람이 되기'''
* 그럼에도 불구하고 누나는 잘 쓰지 못했고, 그래서 나에게 이거 왜썼냐고 화풀이를 하시겠지.. -[김태진]
* super super programmer - Guru가 되고 싶어요.
* 매일매일 강박증에 걸린 것 처럼 쓸고 닦아야 한다.
* '하고싶다'가 아니라 '하자'
* 생활한다는 것은 이 세상에서 가장 드문 일이다. 대다수의 사람들은 존재하고 있을 뿐이다.
* [https://www.ibm.com/developerworks/mydeveloperworks/blogs/9e635b49-09e9-4c23-8999-a4d461aeace2/entry/149?lang=ko 참고]
* ~~4.5 정모에서 한 코드레이스의 코드를 TDD로 짜보려고 하고있어요.~~
* 참고도서 : [구글을지탱하는기술]
* Apache Hadoop 기반 대용량 분산 처리 및 마이닝 알고리즘(MapReduce를 이용한 ETL) 구현하기
* 책읽고 이야기하는 모임
* 주제를 정해 책을 읽는게 힘들었다. 나는 편식독서를 하고있다.
1. simple merge를 짜보고 거기서 발견한 패턴 공유하기.
* 이케아 가구로 꾸민 카탈로그같은 것들을 모아 서비스하고 싶었다.
* 페이스북 페이지도 만들고 Google 광고도 붙였음.
* 2년만에 들어가니까 에러 나고있네ㅋㅋㅋ 도메인은 아직도 내 소유이고
* 꾸준 플젝인듯. 처음엔 reverse polish notation으로 입력식을 전처리하고 계산하다가 다음엔 stack 두개를 이용해서 계산하여 코드 수를 줄임.
* 그러나 위의 두 방법으로는 '3-2-1' 식을 평가할 수가 없었다(0이 아니라 2가 나옴). 멘붕을 겪고 연산자가 -이면 바로 뒤의 숫자를 음수로 만들고 -연산자는 +로 변환. 이라는 방법을 사용했다.
* TODO 괄호도 객체로 지정했는데 무시하고 순서만 변환하면 어떨까
* hadoop MapReduce를 이용한 CF알고리즘, UI : ExtJS 4.0, 검색 : Lucene, 데이터 저장 : MySQL, Hibernate
- 정모/2011.5.23 . . . . 36 matches
* 참가자 : [김수경], [서지혜], [정의정], [김홍기], [권순의], [강성현], [황현], [정진경], [김태진], [고한종]
* 다음주엔 5월 회고가 진행됩니다. 회고에서 퍼실리테이터 컨퍼런스에서 배워온 활동을 공유할테니 많이 오세요~
1. 오늘은 OMS도 ScriptLanguage에 대한 내용이고, 세미나도 있고해서 학술 동아리스러운 느낌이 들어서 좋았습니다ㅋㅋㅋ
1. 겨울방학때도 그렇고 지금도 [JavaScript/2011년스터디]를 하고있어서 이번 OMS를 더 재미있게 들었습니다. 아직 잘 아는 것은 아니지만 스터디를 하다보니 ScriptLanguage가 생각보다 매력적인 면이 많더라구요. 다른 ZeroPager들도 이번 OMS를 계기로 ScriptLanguage에 관심가질 수 있다면 좋겠어요.
* 모르는 11학우는 아마 [고한종] 이라고 위키에 자주 등장하는 녀석일거예요~ -[김태진]
* 먼저 자바스크립트 스터디에 관심이 생겼어요(진경이도 어제 뭐더라.. 어떤 언어가 알고리듬이 아주 달라서 배울만한 가치가 있다고 하더라구요. 같은 맥락이지 싶어요). 내일 몇시인지 알아낸 다음에 어떻게 진행되고 있는지 살펴보고, 적합하다 판단되면 저도 동참해야겠어요. 또 세미나를 보면서, 와.. 저런걸 여기서도 구현하는구나.. 라는 생각이 들었어요. TrustModel과 비슷한걸 만들고자 하는 사람들을 아는데, 저런식으로 아예 수치화 시키는게 역시 효율적인가.. 라는 생각도 들었구요, 후에 연구실(다른데인가?)에 들어간다면 저런걸 하는걸 보게/혹은 후에는 직접 하게될 수 있다는 사실에 나름 다시 감탄(?)했어요. ..아니면 빨리 이 길을 뜨는게 답인가요?ㅋㅋㅋㅋ 아, 또 성현이형이 동아리에서 프로젝트같은거 하신다고 하셨는데, 어떤걸 누구와 어떻게하였는지(그러니까 그 전반)도 한번 들어볼 기회가 있으면 좋겠어요. 여기서 잘 복붙해서 세미나 글에도 후기를 올려야겠네요...ㅎㅎ -[김태진]
* 이래저래 커스 공연도 한다고 하고, 과제 때문에 불참도 하고, 저번 정모 때 워낙 11학번 학우들이 많이 있어서였을까요,, 조금 썰렁하다 라는 느낌이 있었지만,, 뭐 홍기의 세미나 잘 들었습니다. 이번 OMS에서 script에 대해서 하셨는데,, 아르바이트 할 때 약간 다뤘던 (간단한 웹 페이지 수정 작업을 했습니다. 그 외에 엑셀 작업 조금이랑,, 개인 공부(?)) 기억이 났습니다. 조금 고치고 저장한 다음에 페이지 열어보고, 잘 되네 이러고 다른거 수정 하고 했었습니다. 전역 후 승한이형이 알려준w3school.com 사이트에서 좀 기초적인 것만 공부하고 아르바이트를 시작했었는데, 자세하게 공부 할 기회가.. (없었던게 아니라 내가 안했을 지도..) 접,, 여튼 조금 더 관심을 가져 봐야 겠다는 생각이 든 OMS였습니다. ㅎ - [권순의]
* 지난 정모때 사람이 많았어서 상대적 박탈감(?)이 느껴지는 정모였습니다. 기말이 다가오니 바쁘신지 안오신 분들도 많았고ㅜㅜ 내 OMS가 있던 날인데.. 흙흙 그래도 매번 참석하는 11이 있어 기특합니다. 사람은 빈곤했지만 내용은 학술적인 내용으로 풍요로웠네요. 세미나도 하고. 연구실에서 무슨일을 하고있는지 알수 있는 좋은 기회였습니다. 연구실도 트렌드를 따르는군요ㅋㅋ 친구추천이랑 약간 비슷한거 같아요. 나의 OMS 잘 들으셨는지ㅠㅠ 아 스크립트 소개를 위한 스크립트도 썼는데 눈이 침침해서 잘 안보여서 횡설수설했네.. 자료실에 ppt랑 스크립트 같이 올려뒀어요 비교해 보세요.. 컴파일 언어가 전부인줄 알았다면 다른 종류의 언어도 익혀보세요! 전 루비와 얼랭을 해볼 생각입니다ㅋㅋ 구루가 되어보아요:> - [서지혜]
* 이때까지 자바스크립트를 C랑 비슷한 언어라고 생각하질 않았어요. 그냥 쓰면 되는구나.. 정도. 근데 정말이지 C같은 문법(?)을 가진 언어더군요! 신기한 언어의 세계였어요 -[김태진]
* 세미나와 OMS 잘 봤습니다. 세미나는 해당페이지에서 후기를 쓰도록 하고.. 스크립트, 관심은 있는데 왜 자꾸 미루기만 하는건지. ㅜㅜ 요즘 얕게 이것저것 배우다보니(NXC를 포함하여) 문법이 점점 혼란스러워지고 있습니다. 그런 면에서는 스킴이 참 좋은데.. 응? 여튼 저만의 웹페이지를 만들기 위해 지금 막 HTML5와 자바스크립트를 보고 있습니다. 파이썬이나 펄 등등 하고싶은건 많은데 되는건 하나도 없네요ㅋㅋ - [정진경]
* ROBOTC를 쓰면 문법은 훨씬 편하당 ㅎㅎ C랑 다른게 하나도 없음 - [고한종]
* 아아 일주일 뒤에 후기를 쓰는 군요. 요즘 이런것에 신경을 덜쓰는것 같아요. 홍기형의 세미나 잘 봤습니다. 스크립트에 관한 OMS도 잘 봤습니다. 스크립트언어는 java말고는 아무것도 몰랐는데.. 그래서 자바==스크립트 라고 생각한적도 있었는데 좋은 지식을 얻게 되어 기쁩니다. 커스 공연덕에 1시간으로 짧게 끝난 정모라 조금 아쉽습니다. 너무 서둘러서 끝난 기분이 드네요. - [고한종]
- callusedHand/books . . . . 35 matches
저는 오픈 소스 진영을 좋아하며 그 곳에서 많은 도움을 얻고 있는 입장입니다. 하지만 무조건적으로 오픈 소스 개발 방식을 옹호하는 것은 아닙니다. 공개 소스 방식의 소프트웨어 개발이 보완해야 할 부분과 함께 단점이라고 여겨지고 있는 부분들에 대한 나름대로의 반론을 펼치고자 합니다.
공개 소스 방식의 개발은 많은 개발자들의 자발적인 참여를 이끌어낼 수 있습니다. 그렇기 때문에 낭비라고 볼 수 있는 많은 동류의 소프트웨어 개발, 무수히 많은 패치들, 중복된 작업들이 존재합니다. 그리고 이런 양상은 혼란스러워 보입니다. 하지만 이것을 더 나은 소프트웨어를 개발하기 위한 과정이라고 보는 것이 타당할 듯 합니다. 소프트웨어 산업에도 약육강식, 적자생존의 법칙이 적용됩니다. 엔드 유저가 찾고 엔드 유저의 눈에 보이는 것은 경쟁 속에서 살아남은 몇 가지 소프트웨어입니다. 그리고 개발자들의 자발적인 참여는 성당 개발 방식에서 개발자들을 기계화하는 것과는 다릅니다. 참여 개발자라면 적어도 그 프로그램에 대한 관심, 열정을 가지고 있으며 이는 자율이라는 점에서 더욱 힘을 얻어 개발자는 개발에 열중하게 될 것입니다. 이럴때 개인의 창의력, 프로그래밍 능력이 극대화될 수 있을 겁니다.
저는 개발자의 필요에 의해 소프트웨어 개발이 진행되기 때문에 정작 엔드 유저가 필요로 하는 프로그램이 적다는 말에 반대합니다. 개발자도 사용자입니다. 개발자는 컴퓨터를 개발의 도구로만 보지 않습니다. 채팅방에서 시시콜콜한 대화를 나눌 수도 있고, 음악을 듣거나 영화를 볼 수도 있습니다. 바로 이러한 입장에서 개발의 필요가 나타나는 것입니다. 그리고 소비자의 필요와 동 떨어진, 컴퓨터 과학에 치우친 개발이라고 해도 이것은 컴퓨터 산업에 힘을 실어주기 마련입니다. 미분, 적분과 같은 실생활과 관계가 없을 것 같은 이론이 오늘날 여러 산업 분야에 큰 토대가 되고 있지 않습니까?
오픈 소스 방식의 개발을 무료 프로그램 개발로 여기는 것은 잘못된 생각입니다. 오픈 소스방식의 개발은 단지 소프트웨어 개발론 중 하나일 뿐입니다. 시장에 내다팔 상품을 오픈 소스 개발 방식으로 만들어 낼 수도 있습니다. . 오픈 소스 방식의 개발을 통해서도 얼마든지 수익을 창출할 수 있으며 근래의 리눅스 업체들이 이를 뒷받침해 주고 있습니다. 왜 독점적 소프트웨어를 가지고 돈을 버는 것보다 불리하다고 생각합니까? 레드햇의 로버트 영의 말을 유심히 들어볼 필요가 있습니다. “대부분의 산업 국가에서는 그냥 수도꼭지만 틀면 물을 마실 수 있는데 어떻게 에비앙이 수백만 달러의 물을 이 시장에 팔 수 있는가? 간단히 말하자면 에비앙이라는 브랜드는 믿으면서 여러분의 수도꼭지의 물은 믿을 수 없다는 불합리한 두려움 때문이라고 할 수 있다. 바로 이점이 비공식 레드햇 리눅스 복사본을 쓰지 않고 50달러짜리 공식 레드햇 리눅스를 많은 사람들이 선호하는 이유이다. 케찹은 향료를 가미한 토마토 튜브에 불과하다. 여러분은 토마토, 식초와 같은 자유롭게 배포할 수 있는 물건들로 부엌에서 케찹을 만들 수 있다. 하지만 소비자는 왜 부엌에서 케찹을 만들고 있지 않으며 하인즈는 어떻게 해서 케찹 시장의 80%이상을 점유하고 있는가? 편리함은 원인의 일부분 뿐이며 진정한 원인은 하인즈가 소비자의 마음 속에 케찹의 맛을 정의할 수 있었기 때문이다. 이제는 하인즈 케찹의 브랜드가 큰 영향력을 가지고 있기 때문에 소비자인 우리는 하인즈 케찹이 더 좋다고 생각해 버린다.”
프로그램에 치명적인 버그가 있을 때 책임지고 고쳐 줄 사람이 없기 때문에 오픈 소스 개발 방식은 위험하다는 주장도 오픈 소스 개발 방식에 대한 오해에서 비롯된 것이라고 생각합니다. 위에서 말했지만 오픈 소스 개발 방식은 수많은 소프트웨어 개발 방법 중 하나 일 뿐입니다. 기존의 많은 오픈 소스 프로젝트가 개발자들의 취미, 재미라는 동기에서 비롯되었기 때문에 사후 관리가 미미하고 개발자들이 개발을 포기하는 경우 엔드 유저는 피해를 볼 수 밖에 없었던 것입니다.
오픈 소스 개발 방식에서 개선해야 할 부분도 있다고 생각합니다. 소프트웨어 공학 공정을 오픈 소스 개발 방식과 비교해 봄으로써 많은 것을 얻을 수 있다고 생각합니다.
소프트웨어 공학이란 최소의 경비로 품질 높은 소프트웨어를 개발, 유지보수하기 위한 방법론에 관한 학문입니다. 프로그램을 구현하는 단순한 작업 이상의 다양한 측면을 기지고 있으며 이는 일반적으로 요구 사항 분석, 시스템 디자인, 세부 디자인, 구현, 통합, 필드 테스트, 사후 지원과 같은 공정을 거칩니다. 소프트웨어 공학과 오픈 소스 개발 방식을 비교해 볼 때 오픈 소스 개발 방식이 갖는 문제점을 찾을 수 있습니다.
요구 사항 분석, 시스템 디자인, 세부 디자인 과정이 구체적으로 진행되지 않거나 문서화가 이루어 지고 있지않는 점입니다. 이는 프로그램의 유지보수, 재사용 측면에서 볼 때 심각한 문제로 한 프로그램을 개선시키고자 하는 개발자가 있을 때 디자인에 관한 문서가 없으면 많은 시행 착오를 겪을 수 밖에 없으며. 좋은 코드들이 그냥 버려지게 되는 경우가 많아 집니다. 이것들은 분명히 낭비라고 볼 수 있습니다. 그러므로 문서화 할 필요가 있습니다.
이런 단점을 고쳐나간다면 오픈 소스 개발 방식에 미래가 있다고 생각합니다.
- 마케팅천재가된맥스 . . . . 35 matches
* 이 책은 정현이의 추천으로 읽게 되었는데, 엄청 재밌고 유익하게 읽었다. 이젠에 네루의 세계사 이야기 책을 읽다가 너무 빡세서 힘들었는데 이책은 마케팅, 세일즈에 대해서 만화처럼 쉽게 알아먹기 좋게 잘 설명해 주었다. 공학도라면 꼭 읽어 봐야할 책이라고 생각한다. 솔직히 우리는 기술개발이 최고로 중요하고 나머지, 경영 마케팅은 기술만 좋으면 되는거 아닌가 하고 생각하는 경향이 있다고 본다. 그런데 현실은 우리가 기술개발에서 우리의 중요성을 인정받고 싶은 만큼 마케팅 쪽도 기술개발만큼, 때에따라 훨씬 더 중요할수도 있다고 생각한다. 그런 만큼 우리 공학도도 경영, 마케팅(세일즈) 등에 대해서 잘 알아야 한다고 생각한다.
* 이책에서는 고대 이집트에서 그때까지는 없었던 '바퀴'라는것을 새로 발명한 맥스가 그 '바퀴'를 이용하여 세계최고의 '바퀴회사'가 되어 가는 과정을 이야기한다. 처음에 맥스가 '바퀴'를 만들었을때, 우리 공학도들이 그러는것처럼 이 기술은 정말 최고의 기술이야, 가만히 앉아 있어도 서로들 이것을 사려고 하겠지 하는 생각을 했다. 그러나 결과는 지금 현실과 마찬가지로 기술 개발만 하고 그 후 마케팅, 판매를 못해서 거의망하기 직전까지 간다. 그렇다고 맥스가 아예 판매에 손을 땐것은 아니다. 부인과 함께 이집 저집을 방문하면서 판매 하려고 해도 실패를 한다. 그러다가 '세일즈캡틴', '빌더벤', '마법사토비' 를 차례대로 고용해서 판매를 하려고 했지만 번번히 실패한다. 그러다가 '클로저 카시우스'를 고용해서 판매에 성공한다. 현재 시장 상황에 따라서 필요한 세일즈 방식이 다르다는 것을 보여준다. 정말 중요한것은 시장 상황에 따라서 세일즈 방식이 다르다와 세일즈 방식이 다르기 때문에 고용하는 세일즈맨들도 성향이 달라야 한다는 것이다. 강추 책.
== 참고 내용 ==
* 생소하다, 소수 사람만이 이 기술이 가지는 장점과 가치를 알고 있다. 기술이 더 좋아지면 그 소수의 사람들이 신봉자가 된다.
* 잠재고객을 알아본다.
* 드라마틱한 프리젠테이션을 구사하여 고객의 마음을 움직인다. (시각적, 감각적 프리젠테이션)
* 고객의 꿈, 환상, 욕망을 자극한다.
* 기술을 직접 보여주고, 이벤트 연출
* 사면 엄청난 기회가 올거라는 느낌을 고객에게 준다.
* 모든면에서 최고가 되려는 사람
* 기회를 혼자서만 사용하기를 원한다. 최고의 특권을 가지고 싶어한다.
==== 고속성장 ====
* 빌더(고객과의 꾸준인 인간관계 구축)
* 이 제품의 고객은 누구인가?
* 이 제품을 고객이 원하는 이유는?
* 고객들이 경쟁 업체를 이용하는 이유는?
- 상협/학문의즐거움 . . . . 35 matches
* 위키 탐험중 이책이 자주 등장하고 여러 사람이 추천하길래 읽기로 마음을 먹게 되었다. 그래서 이책을 와우북에서 샀다. 책 사는거는 정말 오래 간만이었다.
* 사람이 갖고 있는 정신 에너지 중 창조에 쓰이는 부분의 비율이 경쟁의식으로 인해 질투로 변형됨으로써 상당히 낮아진다. 정신 에너지는 사고 에너지, 창조 에너지 등을 포함한 에너지인데, 그것이 남과의 우열경쟁에 소모된다면 그만큼 창조 에너지가 적어지기 때문이다.
* 난 경쟁 의식이 상당히 강한거 같다. 아무래도 고등학교때의 영향인가. 그때 활활 타올랐던.-_-; 그런데 난 기술적으로 뛰어난 사람도 좋지만 그보다 창조적인 사람이 되고 싶다. 그러니 쓸데없는 경쟁 의식을 불태우지 말아야 겠다. 이 사람이 위와 같이 한말은 맞는말 같다. 나는.. 나 일뿐이다. 그 누구와 비교 하고 싶지 않다
* 체념하는 기술을 알아두는것, 그것은 창조하는 데 관련되는 정신 에너지를 제어하고 증폭하는 데 대단히 중요한 것 중의 하나이다.
* 체념한다라... 이것을 어떻게 받아 들여야지.. 난 어떤일을 하기로 마음을 먹으면 몸이 부서지는 한이 있어도 해내야 한다고 생각한다. 깡생깡사. -_-;, 그래서 이 어구는 그냥 그대로 받아 들일수 없고 내 식으로 해석해서 받아 들여야 겠다. 즉.. 체념은 더나은 발전적인 방향을 위한 체념일때만 그 체념을 해야 겠다는 생각이다. 즉.. 자신감 부족이나 의지 부족, 열정 부족 따위로 체념하는것은 말도 안된다고 생각한다. 물론 저자도 그런 의미에서 이렇게 말한거라고 생각한다.
* 이 어구도 여러가지를 생각해보게 만든다. 우리는 아주 가끔 주위에서 꽤 머리가 좋아 보이는 사람을 볼때도 있다. 그럴때면 보통 나는 왜 저렇게 할수 없는 거지 하면서 한탄을 하기도 한다. 그런데 이때 논리적으로 생각을 해보자. 나는 저사람보다 머리가 덜 좋다. 저 사람은 내가 2시간에 할것은 1시간만에 한다. 그런데 나도 저사람만큼 되고 싶다. 그러면 내가 두배의 노력을 하면 되겠네~?.. 간단히 말하면 이런식이다. -_-;; 즉... 사실을 부정하거나 합리화(정말 해서는 안되다 싶은거..합리화는.-_-;) 말고 받아 들인 후에.. 그것을 극복할 현실적이고 구체적인 방법을 생각 하는 것이다.
* 이것은 우리가 평소에 알고는 있어도 많이 저지르는 실수 중에 하나이다. 즉 어떤 일을 자신의 관점에서 바라보면 그일을 자신이 보고 싶은 방향으로 보는 경향이 있는 것이다. 시오노 나나미씨가 ["로마인이야기"]라는 책에서도 그랬듯이 사람은 자신이 보고 싶은 현실을 보는 것이다. 이것을 극복한다면 인생 살이 사는데 도움이 많이 될거 같다. -_-;
* 창조적인 일을 하려고 한다면 가설을 세워서 연역하는 사고 방식으로 적극적으로 받아들이도록 권하고 싶다.
* 이건 나도 평소에 전혀 생각해 보지 못한 말이다. 음.. 즉.. 도전적인 사고 방식이 필요하단 말이군. 연역적 사고라.. 아무래도 이것은 체험을 하지 않는한 제대로 느끼지 못할거 같다. 연역적인 사고를 하려고 노력 해야 겠다.
* 지금까지 나는 나의 연구 태도 혹은 생활 태도로서 우선 사실 그대로 파악할 것, 가설을 세울 것, 대상을 분석할 것, 그래도 길이 막혔을 때는 대국을 볼 것, 이상 네 가지를 나 자신에게 타이르고 있다고 설명해 왔다.
* 맞는말 같다. 페어 프로그래밍에서도 이 유연성이 중요한거 같다. 난 유연성이 부족한거 같다. 급한 성미 때문인거 같다. 앞으로는 너무 급하게만 몰아치지 말고 이 유연성도 키워야 겠다.
* 이책을 난 우리 누나에게 먼저 빌려 주었었다. 근데 우리 누나가 엄청 이책을 씹으면서 이 책의 히로나카씨가 잘난척을 무지 잘한다고 한다. 그리고 뭐 인간 관계도 이해 타산적이라고 막 씹어 댔다. 나도 이책의 저자가 인간관계에 일정한 선을 두어서 한번도 배신을 당한적이 없다고 한 말은 좀 재수 없어 보인다. -_-; 사람이 뭐 로보트도 아니구, 그렇게 살고 싶나.. 차라리 배신을 당한 지언정 사람을 믿으면서 살고 싶다. 이게 내 생각이다. 인간 관계에 관한 말은 우리 누나의 말대로 이사람에게 별로 배울점은 없다. 이 사람의 인간 관계는 자신에게 도움을 줄수 있나 없나의 이해 타산적인 면이 기본 바탕인거 같기 때문이다. 난 그렇게 살고 싶진 않다. -_-;, 그리고 이 사람은 사람을 판단할때 그 사람의 사회적 지위같은것을 아주 아주 중요한걸로 판단하는거 같아서 그것도 좀 재수 없는거 같다. 근데 다른 점에서는 배울 점이 있다. 창조적인 일을 하기 위해서 생각해볼 어구도 꽤 많다. 나름대로 읽을 만한 가치가 있는 책이었다. 우리 프로그래머도 결국 창조적인 일을 하는거니깐 이책을 한번씩 읽어 보면 얻는게 꽤 될것이다.
- 혀뉘 . . . . 35 matches
말없이 다정하고 온화하며 친절하고 연기력이 뛰어나며 겸손하다
말없이 다정하고, 양털 안감을 놓은 오버코트처럼 속마음이 따뜻하고 친절하다.
동정적이며 자기 능력에 대해서 모든 성격 유형 중에서 가장 겸손하고 적응력과 관용성이 많다.
자신의 의견이나 가치를 타인에게 강요하지 않으며 반대의견이나 충돌을 피하고, 인화를 중시한다.
인간과 관계되는 일을 할 때 자신과 타인의 감정에 지나치게 민감하고,
마음이 순하고 따뜻하며 정이 많다
남을 잘 믿고 의심하지 않는다. 사기 당 할 확률이 높다
누구하고나 어떤 사회에서나 맞추어 가며 살 수 있는 사람
결단력이 부족하고 끊고 맺는 맛이 없다
생각은 많고 행동은 부족하다
남에게 싫은 소리 못하고 속으로 삭인다
타인을 무조건 이해해 주고 자기 의견과는 상관없이 따라가 준다
딱딱하고 사무적인 사람을 싫어한다
적극적인 사고와 적극적이 행동이 필요
즐거움에 대한 호기심을 자제하고 우선 순위에 맞춰 일하는 연습이 필요
당신은 자신의 감정에 솔직하고, 상대방에게도 충실할 줄 아는 사람이지요.
하지만 순정파라고 해서 만만하게 생각해서는 안될 것입니다.
할수 있을 만큼 다 해주고, 자신을 다 쏟아버렸기 때문에, 아니다 싶을 때
바람은 절대 안피고, 다른 사람에게 껄떡대는 일이 없는 대신, 한번 돌아서면
상대방의 배신에도 때로는 너그러울 수 있고 용서해 주기도 하지만,
- ZP&JARAM세미나 . . . . 34 matches
OST는 이번엔 명찰이 준비가 안 되었는데 다음부턴 명찰 준비해요~ 그리고 장소도 창설실보다는 원래대로 강의실 잡는 게 나은 거 같아요. 의자가 있으니까 잘 움직이지 않게 되네요^^
zp 08학번 송정규 입니다. 학회간의 교류와 왕래가 앞으로도 자주 있으면 좋겠습니다. 다음 시간에는 다른 학회 회원 분들하고 좀 더 친해지고 싶습니다. 또 더 진지하고도 진취적인 이야기를 나누고 싶습니다. 마지막으로 세미나를 할 때도 공동세미나 등도 하면 재밌을것 같습니다. ㅋㅋ
역시나 나의 부족함을 발견하는 세미나와 행사 진행이었다. 다른 학회 분들께 학회 소개를 부탁드린다고 미리 메일 날린다는걸 깜빡하다니;; 게다가 뒤죽박죽의 행사 진행;; ㅠㅠ;; 난 아직 멀었다. 그리고 아쉬운 송지원양의 송별회. 그래도 OST에서 이맥스에 관한 열정을 다시 불태울 수 있어서 좋았던 자리-_ -후후후 그리고 다음엔 우리가 가서 좋은 세미나도 듣고 이 관계를 지속했으면 좋겠다.
내일이면 출국입니다. 마지막 모임을 연합 세미나 자리에서 가졌고 마지막 술자리를 ZP사람들과 함께했어요. 노래방에서 갖은 추태를 떨었지만..(한양대 분들이 먼저 가셔서 다행ㅋㅋ) 사진 올려야 했었는데 시간도 없고 지피 서버도 불안불안.. 일본가서 올릴게염..ㅠㅠ
linux & open source ost 했던 , 자람 20기 서버관리자 박훈준 입니다. 정말 즐거운 시간 이었습니다. 특히 스푸핑 관련 세미나... 네트워크에 대한 이해를 ++++ 할 수 있는 좋은 자리였어요. 저희가 뭔가 좀 준비했었다면 더 좋았을텐데 아쉽네요. 무엇보다, 이런 행사들이 지속적으로 이루어 지는것이 중요하다 생각됩니다. 3년전 쯤인가, 홍대 컴공학회 P.C.R.C 와도 교류가 이루어 지는듯 하다가, 그 이후로는 교류가 없네요. 계속해서 교류하고, 많이 나눴으면 좋겠습니다. 무엇이든 할 수 있어요. :) (참, 밥도 맛있었어요)
축제기간이어서인지 모르겠지만 중앙대학교의 첫 인상은 매우 좋았습니다! 활기차고 소란스러운 뭔가의 움직임들이 느껴졌달까요. 도착해서 환영해주신것도 너무 감사했고 배려해주시는 모습들이 너무 좋았습니다. 아. 그리고 밤 늦게까지 강의실이 열려 있다는 것도 부러웠어요~ 우리학교는 강의실은 다 폐쇄하거든요. 그나저나 학회방이 없다고 들었는데 어서 학회방이 생기셨으면 좋겠어요. 그러면 활동도 더 탄력이 받을것 같은데~! ^^
행사내용에 있어서는 2번의 세미나가 조화롭게 이루어진 것 같아요. 처음 세미나는 subversion의 유용성에 대한 세미나였는데 기술적인 내용은 아니었지만 충분히 subversion의 매력을 느낄 수 있게 해 주신 세미나였고 두번째 세미나는 LAN 환경에서 어떻게 snipping, spooling 하는지 개념에서부터 실제 방법까지 잘 설명되어 있어서 이해가 잘 되었습니다.
OST는 다들 열정적으로 참가해주셔서 몇 가지 주제에 있어서 이야기가 오고간것 같아요. 아쉬운 점이라면 새로운 주제가 생기면 그것의 홍보를 직접해야했다는 점이랄까요? 입구쪽이나 잘 보이는 곳에 OST 상황전달 가능한 공간이 있었더라면 더 원활한 진행이 되지 않았을까라는 생각을 해 보았습니다.
다음에 기회가 된다면 우리학교로 초대해서 같이 개발도 하고 즐기길 기대하면서 이번 후기를 마무리 하겠습니다~
오호라 후기네요~:) 이거 페이지를 어디다가 연결해야할지 갈피가 안잡히네요 여기다가 만들어도 문제가 없으려나?~?? 저는 좋은 게임과 나쁜 게임의 OST를 진행했던 한양대 03학번 배진호입니다. 뭐 제 계획대로 아주 많은 것을 뽑아(?) 내지는 못했지만 그래도 적절하게 많은 분들이 동참하여 주셔서 흥미로운 대화가 되었던 것 같네요. 제가 미숙하여서 자르고 멈추고 이어나아가는 것이 능숙하지 못했는데, 어찌 되었든 OST를 주최해 주시고 좋은 세미나도 재미있게 보았습니다. 시간이 많았더라면 서로 더 알아갈 수 있었을 텐데 그 부분이 조금 아쉽네요. 앞으로도 많은 교류가 있었으면 좋겠네요. 군대에서 이 위키를 썼었느데 다시보니 방갑네요 :)
자람 24기 김희정입니다~ 중앙대 처음가봤는데 학교가 참 옹기종기모여있으면서도 크구 참 이뻤어요! 마련된 저녁에도 감덩감덩 ㅜㅜ! 제로페이지에서 준비한 세미나에서는 새로운 내용을 알게되서 좋았습니다. 같은 08학번인데 세미나 하시는 분 보고 저도 좀더 노력해야 겠다고 생각했구요, OST에서는 게임에 대한 주제에 참여했는데 게임을 하는 걸로만 생각했었는데 이번 OST를 통해 개발자의 입장에서도 생각해 볼수 있어서 좋았습니다. 그리고 다양한 공부?에 대한 주제에 대해 들어보고 싶었는데 시간이 부족해서 참여할수 없었던게 좀 아쉬웠네여~ㅜ 여튼 그래도 알차고 재밌었던 시간이었구요~ 나중에 우리학교에서 다시만나요~안녕히~+_+
다른 학회 분들 만나뵈어서 좋았어요. 저도 OST때 다른 학회분들과 이야기 나누지 못한게 아쉽지만, 다음엔 기회가 되면 많은 이야기를 나누고 싶네요. ㅎㅎ 세미나 준비했었던 승한이형과 병윤이 수고하셨어요. ㅎㅎ 병윤이껀 지원이처럼 커스사람들과 함께 있다보니 못 들었었는데 이번에 들을 수 있게 되어서 다행? ㅋㅋㅋ 그리고 지원이 송별회 때 일찍 가서 미안 ㅋㅋ 여하튼// 다음번에도 또 한번 이런 시간 가졌으면 좋겠네요 ㅎㅎ
이번 연합 세미나가 다소 부족한 느낌을 주었을 지 몰라도 첫 번째 시도였다는 점에서는 참 서로 칭찬할 만 하다고 생각합니다.
준비하신 분들 너무 수고 많으셨고~ 이번을 계기로 더 나아진 모습의 연합행사가 되었으면 좋겠습니다.
시간이 짧아서 아쉬웠던 만남이었습니다. 다음에 여유가 있을대 좀더 깊은 대화를 나눌 자리가 있었으면 좋겠네요. 마침 11월에 저희학교에서 축제가 있으니 초청하도록 하겠습니다. 아, 그리고 준비해주신 세미나 잘 들었습니다. 저희 학회 사람들도 많이 자극을 받은 것 같습니다.
- 새싹교실/2011/學高 . . . . 34 matches
* 학사경고(學事警報)의 준말이 아닙니다
* 직역하면 배움을 높인다는 뜻이고, 컴퓨터공학을 전공하는 공학도로서 기초가 되는 C언어를 보다 더 잘 학습하겠다는 의지를 담고있습니다.
* 더 이상의 학생은 받지 않습니다. 그리고 이 부분 마음대로 수정하지 마세요.
= 회고와 feedback에 대해서 =
* 수업이 끝나면 새싹교실 규정에 따라 회고를 진행하고 feedback을 작성합니다.
== 회고 ==
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 참고로 ZeroWiki는 MoniWiki Engine을 사용하며 Google Chrome이나 Mozila Firefox, Safari보다는 Internet Explorer에서 가장 잘 돌아가는 것 같습니다.
=== 회고 ===
* 강사 불찰로 회고를 잘 진행하지 못했습니다.
=== 회고 ===
* [윤종하]: 수업 준비가 미흡해서 제대로 진행못했고, 실습으로 준비한게 수준이 좀 높았다. 김준호 학생의 경우 visual studio 설치와 Wi-Fi가 안 됨을 계속 불만사항으로 지적했으며 수업태도가 상당히 불량했습니다.
* [김준호]: 선생님과 생각이 동일합니다.(김준호에 대한 생각 빼고), 배고파요 그래서 집중을 제대로 못했어요
=== 회고 ===
* [윤종하]: 시간에 비해 진도를 너무 많이 할당해서 너무 무리하고 빠르게 진도를 나갔음. 학생들의 성취도가 높아서 좋았다
* [김세영]: 지각해서 미안하고, 수업 재밌었음
* [김지연]: 지각해서 미안하고, 안 졸았지만 피곤해서 보여서 미안하고, 다음에는 안 피곤한 모습
* [김준호]: 지각해서 미안하고, 재밌었다
=== 회고 ===
* [윤종하]: 오늘도 역시 분량 조절에 실패했다. 알바하는데서 노가다 시켜서 정신을 놓고 새싹을 진행해서 잘 설명을 못한것 같다. 다음시간부터는 애들 과제 절대로 수업시간에 써먹지 않겠다.
- 제13회 한국게임컨퍼런스 후기 . . . . 34 matches
|| 시간 || 강의 내용 || 스피커 || 비고 ||
|| 13:30 – 14:30 || 키노트 1 - 모바일과 온라인 게임 개발의 미래, 그리고 끊임없이 변화하는 시장안에서 기솔적 우위를 점하기 위한 선택 || Brian Waddle(Havok) || ||
* 코엑스에 도착한 시간은 8시 40분. 코엑스 신관이라고만 되어 있어 그랜드볼룸이라고는 생각하지 못하고 헤매다 도착... -ㅅ- 여하튼 등록을 마치고 기념품(거대 마우스 패드, 티셔츠, 책자 등)을 받은 뒤 들어가 보니 많은 부스들이 아직 준비 중... 그냥 무엇 무엇이 있는지 구경한 후 첫 세션을 들으러 들어갔다.
* 첫 세션은 하복엔진에 관한 이야기... 근데 이 분... 발표를 많이 안 해 보셨나 보다. 가뜩이나 아침 일찍 하는 세션인데 지루하고 졸리게 진행한 덕에 기억에 남는 것이 없다... 쩝
* 점심을 먹고 키노트를 들었는데, 처음 키 노트는 장황하게 이야기를 했다만 결국 ‘한국 시장 좋음 ㅋ’ 이 이야기... 쩝.. 그리고 두 번째 키노트는 가상현실로 주목을 받고 있는 Oculus였다. 보다 실감나는 가상현실을 만들기 위해 무엇을 해야 하는지, 왜 이것을 해야 하는지에 대한 내용이었다. 결국 ‘보다 실감나게 게임을 하려면 가상현실을 해야함 ㅇㅇ’ 이 내용..
* 그리고 나서 음덕인 본인이 찾아간 곳은 Audio관련 세션. 트레일러를 만들더라도 음악을 어떻게 만들어야 하는지에 대해서 이야기를 했다. 스토리텔링을 통해 짧은 시간에 시선을 사로잡을 수 있어야 한다고 했다. 그러면서 잘못된 예와 잘 된 예를 보여주셨는데 잘 된 예도 그닥..
* 마지막 물리기반 렌더링.. 기대하고 들어갔으나 ‘아티스트 전용임 ㅇㅇ’ 이러는 바람에 ‘아 내가 길을 잘못 들었구나’라는 생각으로 그냥 멍 하니 들었..
|| 시간 || 강의 내용 || 스피커 || 비고 ||
* 3일차에는 1일차에 그래픽 부분을 들으면서 프로그래밍과 큰 연관성을 찾지 못한 까닭에 프로그래밍 위주로 찾아 다니기로 했다. 하지만, 원래 들으려고 했던 ‘좋은 게임을 최고로 만들어 주는 요소 분석’ 파트를 들으려 했으나 갑자기 잠수를 타 버리는 바람에 급하게 언리얼 엔진 주제 쪽으로 넘어갔다. 모바일 게임과 관련한 이야기를 하면서 온라인 게임과는 비용, 기간 등 많은 차이가 발생하는 것에 대해서 이야기 했다. 그러면서 아티스트들은 제발 쓸데없는 자존심 버리고 게임이 잘 돌아가게 해 달라는 요구를 하시던.. 하기야 콘솔 게임 정도 되어야 그래픽에 많은 부분 신경 쓸 수 있겠다만 모바일은 화면도 작고 하니.. 라는 생각이 들었다. 결국 메모리를 줄이기 위해 Object를 나누어 Module 사용을 해라는 이야기로 마무리 지어졌다.
* 두 번째 들은 세션은 자기 회사의 프로그램? API를 이용해 서버를 만들고 채팅을 하고 뭐 이런 이야기를 예시를 통해 보여주었다. 그냥 가져다 쓰면 되요 라는 말과 함께 이것 저것 예시를 보여주었는데, 결국 자기 회사 홍보였다.
* 그 다음 키노트는 ‘다양한 사람들에게서 설문조사를 반영해 자신들은 더 좋은 게임을 만들어 나가고 있어요~’ (리얼리?) 뭐 계속 그런 내용..
* 그 다음으로 다시 음악의 세계로~. 이번 스피커는 작곡가였다. 어울리는 음악을 만드는 것이 중요하다, 스토리를 이해해서 음악을 만들어라, User가 느껴야 하는 감정을 쫓아라 뭐 이런 이야기를 하면서 피아노 치고 노래하고.. (피아노 못 친다고 해 놓고 찾아보니 조수미 따라 다니면서 피아노 치시던 분 -ㅅ-) 그리고 Alt+Tab을 모르셔서 계속 USB 뺏다 꼈다 하시느라 좀 시간을 잡아먹긴 했다만 재미있는 시간이었다.
* 그 다음은 본래 국방과학연구소에서 헬리콥터 가상 시뮬레이션에 관한 이야기를 들을까 했는데, 주제가 그다지 재미있을 거 같지도 않고 부스 구경도 제대로 못하고 해서 부스 구경을 했다. 첫날에는 길게 줄 서 있던 Oculus 시연장에는 사람이 별로 없어 두 번 해 보기도.. 이곳 저곳 돌아다니면서 궁금한 거 좀 물어보기도 하고 게임도 직접 해 보고 하는 시간을 가졌다.
* 마지막 세션은 NVDIA와 Visual Studio를 연계해서 디버깅하는 것에 관해 이야기를 했는데.. 보여주면서 하긴 했는데 뭔 내용이 이렇게 지루한지..; 전반적인 NVIDA 소개와 필터 버그 등 버그가 발생하였을 때 픽셀 히스토리 기능으로 추적해서 셰이더 편집기능으로 수정하는 등 버그를 어떻게 고치는지, 툴은 어떻게 사용하는지에 대한 이야기가 주였다.
* 프로그래밍과 관련한 부분이 아닌, 다른 부분 (그래픽, 오디오 등)에 대한 이해도 할 수 있었고, 다양한 프로그램들을 알 수도 있긴 했다만 뭔가 대부분이 자신들 업체 홍보에 조금 주안점이 있지 않았나 라는 생각이 들었다. – 물론 안 그런 세션도 있었고 – 특히 직접 보여주는 부분은 같이 좀 해 보았으면 더 좋지 않았나 라는 생각이 들긴 했지만 또 그렇게 하기에는 물량 지원적인 문제도 있으니... 노트북 가져오라고 했으면 좋았을 것을.. 뭐 이런 잡다한 생각이 들기도 했다.
- EightQueenProblemDiscussion . . . . 33 matches
당신은 어떤 식으로 이 문제에 접근을 했고, 어떤 사고의 과정을 거쳤으며, 어떤 과정으로 프로그래밍을 했으며, 어떤 디자인 결정을 했습니까? 만약 실패했다면 당신이 했던 것 혹은 하지 않았던 것 중 무엇이 실패의 주요인이었다고 분석을 하십니까?
해당 알고리즘을 구현하기 위한 기반이 되는 체크 관련 부분에 대해 (여기까지) 만드는데는 52분정도가량이 걸렸다. 하지만, 정작 Queen 을 배열하는 알고리즘을 생각해내는데 3시간 가량이 걸렸다. --;
* Feelings - 느낀점: 시간이 넘 오래걸려서 한편으로는 쪽팔리긴 하다. -_-; 뭐.. 알고리즘 부분에 대해서 너무 시간을 오래 끌었다. 왜 그랬을까 생각하는데.. 아마 특정 알고리즘들이 먼저 머릿속에 떠올라서가 아닐까 한다. (이 부분에 대해서는 stack을 쓸까 recursive 로 대신할까 이리저리군시렁군시렁) 이런 부분에 대해서는 어떻게 test가능한 부분으로 접근해나갈수 있을까.
자신에게 항상 "What is the simplest thing that could possibly work?"라는 질문을 하면서 TestDrivenDevelopment를 했나요? 테스트/코드 사이클을 진행하면서 스텝을 작게 하려고 노력했나요? 중간에 진척이 별로 없는 경우, 어떤 액션을 취했나요? 그 때 테스트 사이클의 스텝을 더 작게하려고 했나요? 만약 다시 같은 문제를 새로 푼다면 어떤 순서로 테스트를 하고 싶나요? (직접 다시 한번 새로 시작하는 것도 강력 추천) 왜 다른 사람들에 비해 시간이 상대적으로 많이 걸렸을까요? 테스트 코드를 사용한 것이 그 시간만큼의 이득이 있었나요? TestDrivenDevelopment를 해내가면서 현재 패스하려고 하는 테스트 케이스에서 무엇을 배웠나요? 켄트벡이 말하는 것처럼 사고의 도구가 되어 주었나요? 참고로 저는 EightQueenProblem을 파이썬으로 약 30분 정도 시간에 50 라인 이내로(테스트 코드 제외) 풀었습니다. TestDrivenDevelopment로요. --김창준
직접 다시 새로 시작하는 것에 대해서는 비교계산을 내리기 힘들것 같네요. (더 좋은 디자인을 얻어내는 것과 훈련라는 점에서는 물론 저도 추천) 제가 잘못했다고 생각되는 부분은, 퀸을 배열하는 방법 알고리즘 부분에 대해 TestDrivenDevelopment 를 지키지 못했다는 점이죠. (머릿속에 먼저 재귀함수 호출 등의 특정 알고리즘들이 먼저 떠오른지라. )
알고리즘 궁리 부분에 대해서도 80/20 법칙이 통용되려나요. :) 3시간이 걸린 부분이 바로 다음 부분이였는데요.
즉, 실제 Queen의 위치들을 정의하는 재귀호출 코드인데요. 이 부분에 대한 TestCase 는 최종적으로 얻어낸 판에 대해 올바른 Queen의 배열인지 확인하는 부분이 되어야 겠죠. 연습장에 계속 의사코드를 적어놓긴 했었는데, 적어놓고 맞을것이다라는 확신을 계속 못했죠. 확신을 위해서는 테스트코드로 뽑아낼 수 있어야 할텐데, 그때당시 이 부분에 대해서 테스트코드를 못만들었죠.
지금이라면 'Level 8일때 바로 판을 찍지 않고, 저 상황의 데이터구조체를 그대로 복사해서 결과만 넣어놓는 리스트를 하나 더 만들고, 그 결과들에 대해 올바른 배열을 했는지 테스트하는 코드를 뽑아낼 수 있겠다' 라는 아이디어가 떠오르긴 하네요. (그렇더라도 100라인은 넘어갈것 같긴 하네요. ^^;)
사고의 도구로써는 연습장과 TFP 둘 다 이용했지만, 순수하게 적용하지는 않았습니다. (위의 Queen을 놓는 부분에 대한 재귀호출부분에서는 적용못함) 테스트작성시간/코드작성시간 등에 대한 관리는 하지 않았습니다. (이 부분에 대해서는 반성을. ^^;) 흠.. 그리고 'The Simplest Thing'을 찾아나갔다기 보다도, 이미 해당 문제에 대해서 의사코드를 생각하고, 해당 코드에 대해 Top-Down 형태로 모듈을 나눈뒤에 모듈에 대해 테스트를 만들어갔다는 생각이 드네요. --석천
지금가지 모두 C++, Python, Java 등 OOPL을 이용했는데 그 중 OOP로 푼 사람은 아무도 없네요 -- class 키워드가 있다고 OOP라고 하긴 힘들겠죠. 사람은 시간이 급하다고 생각이 들수록 평소 익숙한 도구와 멘탈리티로 돌아가려고 하죠. 어쩌면 OOP가 편하고 수월하다고 느끼는 사람이 없다는 이야기가 될지도 모르겠네요. 물론 모든 문제를 푸는데 OOP가 좋다는 이야기를 하려는 것은 아닙니다만. --김창준
* 문제 인식 잘못, 풀이 계획 잘못. 완성되었다고 생각한 순간에, 크나큰 실수가 있었음 인지하였다. 답이 없는 줄 알았다. TT
[이승한]과 PairProgramming을 하며 문제를 풀었습니다. TDD를 하지 않고 30분을 작성했고 나머지 1시간30분을 TDD로 했습니다.
적당한 자료구조를 끝까지 찾지 못해 헤맸다는 느낌입니다. 처음 TDD를 접하는 파트너로서는 테스트를 빨리 이해할 수 없어서 한 동안 페어 사이에 공백이 느껴졌습니다. 속도를 늦추고 파트너에 맞추자, 파트너가 드라이브를 하는 의욕을 보였습니다. 완성하지 못해 다른 이의 코드와 비교하는 시간이 없어서 안타깝습니다.
- EnglishSpeaking/2011년스터디 . . . . 33 matches
* 목적 : 영어 시험에 구애받지 말고 영어에 익숙해집시다.
* 참고 도서 : 한 달 만에 끝내는 OPIc (학생편/Intermediate) - 원글리쉬
* 마침 참여 인원 모두가 ACM 스터디 중이라 자신의 문제를 설명하고 소감을 말하는 시간을 가짐
* 참고 답안 - 형제/자매 1명, 개 1마리 키우는 가족 답변
* [송지원] - 말하기를 할 때마다 느끼지만 자신이 하고자 하는 말을 다른 언어로 표현하는게 참 쉽지가 않아요. 쉬운 말이라고 해도 안써버릇 하면 단어라던가 어휘가 생각이 나지 않고, 처음에 6피에서 영어로 입을 트자니 어찌나 부끄럽던지 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 아 해외경험도 있는 주제에 이렇게 허접한 영어 실력이라니 막막해지네요ㅠㅠ 그래도 열심히 해야겠다는 생각에 지금 심슨 영상도 뽑아내고 있고 그래요-_-; 앞으로 우리 울렁증을 극복해보아요 화이팅 ㅠㅠ
* [권순의] - 중학교땐 맨날 애들이 뭘 그렇게 영어로 중얼중얼 대냐고 했었는데 (레슬링 대사나 이런거였다는 -_-) 하도 안하다 보니까 말이 잘 안나오네요. 그리고 어쩔땐 머리로 문장이 잘 만들어지는데 그게 입 밖으로 잘 안나오는게 문제네요;;; 아흐음... 확실히 뭐라도 중얼중얼대야겠습니다. 예전처럼이라도 -_-;; 음.. 또 레슬링 봐야하나;;
* [김수경] - 아주 쉬운 말을 하고싶은데도 적절한 표현이 생각나지 않아 괴로웠습니다. 그냥 주제없이 이야기하는 것도 좋지만 질문에 대답하는 식으로 진행하니 오히려 말하기 더 편한것 같아 좋았어요.
* [김수경] - 오늘 처음으로 심슨 대사를 따라해봤습니다. 지원언니께서 네명이 같이 연습할만한 장면들을 미리 골라두셨는데 막상 오늘 온 사람이 두명이라 다른 장면을 연습했습니다. 40초도 채 안 되는 짧은 대화인데 참 어렵더라구요. 한 문장씩 듣고 따라하고, 받아쓰기도 하고, 외워서 해보는 등 한 장면을 가지고 여러번 연습한 것은 매우 좋았습니다. ''You tell me that all the time.''이나 ''Let me be honest with you.''가 어려운 문장은 아니지만 막상 말하려면 딱 생각이 안 났을 것 같은데 오늘 이후로는 좀 더 유려하게 말할 수 있을 것 같아요. 앞으로 매주 진행하면 이런 표현들이 늘어나겠죠 ㅋㅋㅋ
* [송지원] - 혹시나 했지만 역시나 현지 영어 따라하기는 쉽지 않습니다. 짧은 몇 줄 문장을 외워서 따라하기는 어렵지만 많이 하면 실력이 늘 거라는 생각은 들어요. Free Talking은 제가 하고 싶은 말을 나름 자유롭게 구사해서 만족했는데 Theme Talking에서는 한계를 느끼고 한국어를 섞어서 그 점이 좀 아쉬웠어요. 다음 주에는 The Simpsons.. 정말 4명이 함께 하기를 (온 성의를 다해 대본을 준비하는 만큼;ㅁ;)
* [권순의] - 심슨 영상을 보면서 따라 해 봤는데.. 뭔가 따라가는 듯 하면서도 뭔가 어눌한 듯한 이 발음 ㅋㅋ 아 근데 너무 졸리네요 -_-;; 그래서 좀 힘들었습니다.;;; 그래도 세명이서 역할 분담을 잘 해서 재미있었습니다. 그러고 나서 자유 주제.. 졸리니까 멍하네요 -_-;; 좀 멍하게 시간이 지나간 듯..
* [송지원] - 지난 번에 심슨 따라하기 보다 역할을 분담하니 조금 수월해졌다는 느낌이었습니다. 특히, 재미있는 장면을 선정해서 지난 번보다 조금 더 몰입할 수 있었어요. (지난 번엔 마지가 너 고민 있는듯 하다 뭐 이런 내용이었는데 이번엔 온 가족이 Scrabble 게임을 하는 장면 ㅋㅋ) Free Talking을 하면서 느낀 건 맨 처음 영어 스터디를 시작할 때보다 말문이 많이 트였다는 점. 이젠 6피에서 영어 쓰는 것도 그렇게 쪽팔리기만 하지는 않네요.
* [김수경] - 이번주 영상은 문장이 단어 조금 바꾸면 여기저기 가져다 쓸만한 것이 많아 재미있었어요. 가위바위보로 역할을 분담했는데 ''Along with the ego and the superego, one of three components of the psyche.''라는 문장을 외워보고 싶어서 리사를 선택했습니다. 그런데 리사 분량이 제일 적어서 본의아니게(?) 가장 날로먹었네요 ㅋㅋ
* 지원이 아버지 회사에서 컴퓨터 고쳐주러 간 얘기로 시작해서..
* 컴공인의 고충 - 사람들이 컴퓨터 고쳐달라고 한다.
* [권순의] - 어 이거 안 썻었네-_-; 우리 동네 이야기를 하다보니 참 노원구라는 동네는 있을건 정말이지 다 있는 거 같네요. 구에서 정말 복지 쪽에는 신경을 많이 쓰는 거 같긴 한데... 교통이 안 좋아 -_-;; (지도 보면 서울 변두리가 노원입니다. 어디 나가려면 한시간은 기본으로 잡고 나가죠;;) 뭐 아무튼,, 영어로 동네 소개 하면서 다시한번 우리 동네를 돌아보게 되어(?) 좋았습니다.
* [송지원] - 동네 얘기를 하는데 생각보다 동네의 장점에 대해 표현하기가 쉽지 않았습니다. 대중교통 좋다는 것 빼고 딱히 좋은거 없잖아!! 로 보였을 듯;; 강초파 주민을 싫어하는 모 씨도 있지만 서초구는 좋은 동네입니다. 차 막히는거 빼구요.. 심슨은 짧아서인지 제 비중이 적어서였는지 다른 때보다 표현들이 기억에 안남네요 흑흑..
* [송지원] : 본인의 어머니, 그리고 안철수
* [권순의] - 조조에 관해서 영어로 이야기 하기가 너무 어렵네요 -_-;;; 좀 준비를 해 올껄이라는 아쉬움이 남기도 했습니다. 쩝; 이번 심슨 영상에서 제가 맡은 부분은 다 말이 빠르네요. 속사포 영어도 아니고 원..; 그래서 영상 보면서 따라할 때는 다 놓치고 -ㅅ- ㅋㅋㅋㅋ
* [송지원] - 지난번까지는 쉽지만 알아두면 좋은 표현이 많은(..은 훼이크고 역할분담하기 괜춘했던) 장면들을 선택했다고 하면 이번에는 좀 길고 빠른걸 선택했는데.. 영상속도를 따라하기가 많이 버거워서 몇 번 스크립트 외워서 하다가 급마무리 ㅋㅋㅋ 빠르게 말하는게 중요한건 아니지만 익숙해지려면 많이 따라해봐야겠어요. 롤모델로 이렇다하게 생각나는 유명인사가 많지 않아서 (그냥 이 사람의 이런 점, 저 사람의 이런 점을 본받아야겠다 뿐이었지 롤모델은 그닥..) 어머니에 대해 많이 얘기했는데 공교롭게도 순의가 그날 우리 어무이와 대면했드랬죠 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
- Java Study2003/첫번째과제/곽세환 . . . . 32 matches
자바의 주된 특징은 기존의 C/C++ 언어의 문법을 기본적으로 따르고, C/C++ 언어가 갖는 전처리기, 포인터, 포인터 연산, 다중 상속, 연산자 중첩(overloading) 등 복잡하고 이해하기 난해한 특성들을 제거함으로써 기존의 프로그램 개발자들이 쉽고 간단하게 프로그램을 개발할 수 있도록 합니다.
자바는 C++와는 달리 처음부터 객체지향 개념을 기반으로 하여 설계되었고, 객체지향 언어가 제공해 주어야 하는 추상화(Abstraction), 상속(Inheritance), 그리고 다형성(Polymorphism) 등과 같은 특성들을 모두 완벽하게 제공해 주고 있습니다. 또한, 자바의 이러한 객체지향적 특성은 분산 환경, 클라이언트/서버 기반 시스템이 갖는 요구사항도 만족시켜 줄 수 있습니다.
자바는 컴파일 시에 에러 검사를 철저하게 하고, 실행 시에 발생할 수 있는 에러에 대해서도 실행 시에 철저하게 검사를 수행함으로써 신뢰도가 높은 프로그램을 작성할 수 있도록 해 줍니다. 또한, C/C++ 프로그램 개발자들을 가장 혼란스럽게 하고, 프로그램의 치명적인 오류를 발생시킬 수 있는 포인터 및 포인터 연산을 자바에서는 사용하지 않게 함으로써, 포인터를 사용함으로써 프로그래머가 범할 수 있는 오류를 없앴다는 것입니다.
아키텍쳐 중립적(Architecture-neutral)이고 이식성(Portable)이 높다:
자바는 서로 다른 이종(Heterogeneous)의 네트워크 환경에서 분산 되어 실행될 수 있도록 설계되었습니다. 이와 같은 환경에서는 응용 프로그램들이 다양한 하드웨어 아키텍쳐 위에서 실행될 수 있어야만 합니다. 이를 위해 자바 컴파일러는 이종의 하드웨어 및 소프트웨어 플랫폼에서 효율적으로 코드를 전송하기 위해 설계된 아키텍쳐 중립적인 중간 코드인 바이트코드를 생성합니다. 이는 동일한 자바 프로그램의 자바 바이트코드가 자바 가상머신이 설치되어 있는 어떤 플랫폼에서도 실행될 수 있도록 하는 것입니다. 또한, 자바는 기본 언어 정의를 엄격하게 함으로써 효율적인 이식성을 제공해 주고 있습니다. 예를 들어, int 형과 같은 기본 데이터형의 크기를 플랫폼과 무관하게 일정하게 하고, 연산자의 기능을 확실하게 규정하고 있습니다. C 언어를 이용하여 int 형을 선언할 때, 도스에서는 16비트, 윈도우 95/98/NT 등 32비트 운영 체제 환경에서는 32비트, 유닉스에서는 32비트 등 그 플랫폼에 따라 크기가 다르지만, 자바에서는 플랫폼에 상관없이 32비트로 고정되도록 하였습니다. 이는 자바 프로그램이 실행되는 환경이 자바 가상머신으로 동일하기 때문입니다.
자바 언어로 작성된 자바 프로그램을 중간언어 형태인 자바 바이트코드로 컴파일하고, 이렇게 생성된 자바 바이트코드를 자바 인터프리터가 해석함으로써, 자바 인터프리터와 런타임 시스템이 이식(porting)된 모든 플랫폼에서 자바 바이트코드를 직접 실행할 수 있습니다.
자바 바이트코드 명령어를 해석하고, 이를 자바 인터프리터가 설치되어 있는 플랫폼(윈도우 95/98/NT, 유닉스, 매킨토시 등)에 맞게 실행시켜 줍니다.
아키텍쳐 중립적(Architecture-neutral)이고 이식성(Portable)이 높다(자바언어의 특징중의 하나지요)
자바는 기계어 코드를 직접 실행시키는 것이 아니고, 플랫폼 독립적인 중간 코드 형태인 바이트코드를 자바 가상머신이 해석하여 실행시키는 인터프리터 방식을 취하고 있으므로 느린 수행 시간을 갖습니다. 일반적으로 C보다 평균 8배 정도 느리고, 최대 20배까지 느립니다.
JDK와 함께 제공되는 자바 가상머신에 의해 독립적으로 실행될 수 있도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 컴퓨터에서 윈도우의 도스창 또는 유닉스 쉘 등과 같은 쉘에서 자바 가상머신을 이용하여 실행시키는 자바 프로그램입니다. 위에 나오는 그림은 자바 애플리케이션의 실행 과정을 자세히 보여주고 있습니다.
<APPLET>~</APPLET> 태그를 이용하여 HTML 페이지 내에 포함되어, 자바 호환 웹 브라우저에 의해서 실행되도록 작성된 자바 프로그램입니다. 다시 말해서, 여러분의 홈 페이지 내에 삽입되어 자바 호환 웹 브라우저에 의해 실행되도록 규약에 맞추어 작성된 자바 프로그램을 말하는 것입니다. 다음에 나오는 그림은 자바 애플릿의 실행 과정을 자세히 보여주고 있습니다.
기존의 CGI 프로그램과 같이 웹 서버 프로그램의 기능을 확장하기 위한 자바 프로그램으로서, 웹 서버 내에 있는 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되도록 작성된 자바 프로그램입니다. 자바 서블릿은 웹 서버 내에서 자바 런타임 환경과 함께 제공되는 자바 가상머신에 의해 실행되고, 자바 애플릿은 웹 서버에서 웹 클라이언트로 다운로드 되어 웹 클라이언트에서 자바 호환 웹 브라우저에 내장된 자바 가상머신에 의해 실행된다는 차이점이 있습니다. 이렇게 웹 서버 내에서 실행될 수 있도록 작성된 자바 서블릿은 기존의 웹 서버 내에서 실행되는 프로그램인 CGI 프로그램을 대체할 수 있도록 고안되었습니다. 다음에 나오는 그림은 자바 서블릿의 실행 과정을 자세히 보여주고 있습니다.
델파이 또는 비주얼 베이직을 이용하여 프로그램을 작성할 때, 버튼이나 창과 같은 컨트롤들을 마우스로 끌어다 프로그램 내에 삽입할 수 있도록 되어 있는데, 이와 마찬가지로 자바 빈은 하나의 완벽한 기능을 갖고 재사용될 수 있도록 만들어진 소프트웨어 컴포넌트입니다. 마이크로소프트에서 제공되는 ActiveX 컴포넌트와 같이 자바에서 컴포넌트 프로그램을 가능하도록 해 줍니다.
다른 자바 프로그램에 의해 삽입(import)되어 사용될 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있습니다. 다음에 나오는 그림은 JDK 1.2.2 에서 제공되는 패키지를 보여주고 있습니다.
그리고 자바의 종류가 애플리케이션, 애플릿.. 이런것 같은데
* "아키텍쳐 중립적(Architecture-neutral)이고 이식성(Portable)이 높다" 라는 말을 풀어서 설명해 주세요.
* 인터프리터라는 방식은 컴파일 방식과 무엇이 틀리고 자바의 특징은 어떻게 되나요?
- 데블스캠프2009/화요일후기 . . . . 32 matches
* 수업별로 이름을 적고 후기를 써주시면 됩니다^^
* '''서민관''' - 자바로 로봇을 움직이는 시간이었는데, 역시 코드를 짜서 그것이 무언가를 하는 것을 볼 수 있다는 것은 꽤나 괜찮은 경험이었습니다. 좀 아쉬웠던 점은 어떤 변수나 함수가 있는지를 확실하게 몰라서 괜찮은 물건은 만들지 못 했다는 점이네요. 그리고 제 탱크가 너무 약했다는 점하고...
* '''강소현''' - 코드를 짠거로 로봇이 움직이는 게 신기했어요. 매 라운드 마다 결과가 조금씩 다른 것도 그렇고. 총알을 피하는 것도 점수에 들어간다면 제가 짯 것도 점수가 높았을 텐데- 하는 아쉬움이 약간 ㅇㅁㅇ?<< 명중률은 거의 제로인데 은근히 회피율이 높더라구요. 그래도 꽤 재미있었어요 ㅋㅋ
* '''서민관''' - 역시 어려운 느낌이 조금 있었습니다. 기초부터 조금씩 했더라면 조금 더 이해가 쉬웠을텐데. 그래도 사실 정해진 시간 안에 설명도 해야 하고 듣는 대상이 다수였던 만큼 어쩔 수 없는 부분이었다고 생각합니다. 그리고 아쉬웠던 부분은 시간적인 문제로 실습 하나를 빼먹었던 점. 그래도 제가 알기로는 학교에서 API를 따로 가르쳐주지 않는 걸로 아는데, 그런 걸 보면 상당히 의미있던 수업이라고 생각합니다.
* '''서민관''' - 개인적으로 이번 화요일 수업에서 가장 마음에 드는 수업이었습니다. 이런 식으로 시간의 흐름에 따라서 추상화 개념이 발전하는 모습을 보고 있으니 참 대단하다는 생각이 들었습니다. 그리고 반복을 줄이기 위한 방법들(ex - 반복문, 자료형, class) 각각이 무엇을 위해서 만들어졌는지를 알아보는 것으로 평소에 아무 생각 없이 썼던 것을 다시 한 번 생각해 보는 기회가 되었습니다. 그리고 수업을 듣고 나니 추상화를 통해서 긴 프로그램 코드를 각각의 함수로 쪼개는 방법이 왜 중요한지도 조금 더 잘 알겠네요.
* '''강소현''' - 수학이나 혹은 다른 과목들을 공부할 때에도 항상 목차를 보라고 선생님들이 말씀하셨었는데, 멋도 모르고 각각의 내용만 파다가 그 내용들이 어떻게 연계되는지 이해할 수 없었던 기억이 새록새록 떠오르는 거 같아요. 공부할 내용만 보는 것이 아니라 그 내용을 왜 공부하게 되었는지 알 수 있는 하나의 목차를 배운 느낌이라 좋았어요.
* [송지원] - 학우들이 OOP를 배우기 좀 더 좋지 않을까 싶다. 컴공에서 죽어라 부딪치며 삽질하고 어려워하는 개념에 대해 정말 쉽고 재밌게 설명해주는 형진이의 내공은 역시 최고인것 같다. 시간이 부족한게 아쉬운건 어쩔 수 없는듯.
* '''박준호''' - 우리가 그저 생각 없이 쓰던 추상화라는 개념을 더욱 잘 이해하고 코드를 더욱 더 효율적으로 짤 수 있게 만들어 주는 시간 이였던 것 같습니다. 다음부터 코드를 짤때는 손으로 먼저 짜기보다는 먼저 생각을 하고 모두 추상화를 해보고 짤 수 있게 만들도록 하도록 다짐 하게 만들었습니다.
* [김준석] - 같은 것을 반복하기 위해 우리는 자주 copy &paste를 사용한다. 단순히 키보드 두번만 누르면 똑같은 것이 한번더 만들어지는 좋은 단축키 이다. 하지만 사실 이 반복되는것을 우리는 단순히 단축키를 누름으로서 만들어지는것은 과거의 저급언어를 사용할때나 만들어지는 반복의 숙달이다. 평소 자주 알고리즘을 연구하자는 말을 들을것이다. 문제를 푸는것 만에는 사실 극히 특별한 알고리즘이 필요없다고 생각한다. 살면서 어떻게든 간단반복으로 대부분은 풀수 있을테니까. 알고리즘을 연구하는것은 우리가 사용하는 컴퓨터의 부담을 줄이기 위해 만들며 이는 단순 반복되는 계산과정을 줄여줘 자원의 낭비를 줄여준다. 이렇듯 컴퓨터의 반복은 줄이면서 직접 키보드를 치며 반복하고있는 나의 자원소비량은 어떤가? 나는 왜 반복을 하고 있는가? 이 긴 코드를 줄일수 있는 방법은 정녕 없는것인가?라는 컴퓨터 알고리즘을 생각하듯 나를 위한 알고리즘을 생각을 해보았나? 대부분의 문서를 한장으로 줄여서 요약할수 있다는것을 가르쳐주는 One Page Proposal이라는 책에서는 "온갖 미사여구를 넣어 50page나 100page가 넘어가는 문서는 문서를 받은 사람의 책상에서 쌓이고 쌓여 결국에는 보여지지도 못하고 세절기에 들어가 버린다. 정말 자신이 있다면 알짜배기만 모아서 1Page로 보기 좋게 만들어라." 맞는 말이다. 아무리 길게 만든 프로그램이라도 20줄도 안되는 프로그램과 성능이 똑같다면 당연히 보기도 좋고 관리하기도 좋은 20줄 프로그램을 쓰겠지.이 20줄 프로그램을 쉽게 만들기위해 사람은 자신이 편리하게 개발과 연구를 했다. 그렇게 편리하도록 발달하는 과정. 그 생각을 잘보여준 세미나였다고 생각한다. 과연 네이버에서 자동완성됬던 Kesarr.
- 서버재조립토론 . . . . 32 matches
[정모]때 서버 재 조립에 대한 이야기가 나왔다는 이야기를 회장님을 통해 들었습니다. 일단 제가 회의에 참석하지 못하고 회의록이 올라온 것도 아니므로 어떻게 해서 서버 재조립 이야기가 나왔는지 알고 싶습니다. 일단 제 생각은 굉장히 부정적인데요. 서버가 하는 일이 거의 웹서버 내지는 소스 리파지터리로 사용되고, 대규모 소스를 컴파일한다거나 덩치가 큰 프로그램이 돌아가는것도 아니기 때문입니다. 게다가 동시접속 사용자수로 많지 않은걸로 알고있는데요. (물론 이런것들은 이제부터 하기 위해 하나 새로 맞춘다!! 면 할말 없지만..) 이 상황에서 굳이 새로 서버를 맞추는게 필요할지... [임인택]
네 충분히 그렇게 생각 하실수 있다고 생각합니다. 현재로서 서버가 하는일이 웹서버및 소스 Repository 로서의 역할이니깐요. 그리고 마지막에 프로젝트 때문에 필요할 경우에 나 새로 맞출 필요가 있다고 하신 말씀도 동감합니다. 현재 한 3주 동안 제로페이지 서버가 제대로 작동하지 않았습니다. 제로페이지 서버를 아주 자주 이용하는 입장에서는 많이 제로페이지 서버에 들어가니깐 서버가 죽어 있어서 여러가지로 불편했고, 현재 제로페이지 서버와 연계해서 돌아가는 위키 포탈을 운영 및 관리하는 입장에서는 치명적이었습니다. 제로페이지 회원들이야 안면이 있으니깐 이해해 주겠거나 좀 불편하고 말겠지 하고 생각하실수도 있지만, 위키 포탈 서비스가 우리 학회에서 제공을 해주는 서비스지만 외부에서 이용하는 사용자도 꽤 있었는데 왠만한 사용자들은 다 빠져 나간듯 하네요.. 그래서 지금은 급한게 다른 서버에서의 DB 지연을 기다리는 시간을 원래 1분에서 3초로 줄여서 그나마 임시 방편으로 수습을 했습니다. 또 프로젝트 진행을 하는데에도 제로페이지 서버가 자주 죽어서 진행을 제대로 할 수가 없었습니다.
제로페이지 서버가 현재 분명 문제가 있고, 이것을 해결해야 한다는데에는(즉 좀 가끔가다가 죽으면 뭐 어때 하는 분은 없을거라고 생각합니다.) 모두 동감 하실거라고 생각합니다. 현재 제로페이지 서버가 아주 자주 죽는 문제가 제로페이지 서버의 하드웨어 적인 문제인가, 소프트웨어 적인 문제인가, 인프라적인 문제인가 이 3가지중 하나라고 생각합니다. 인프라적인 문제는 다른 학회나, 동문서버도 안 죽고 하니깐 제외 하겠습니다. 그러면 하드웨어 아니면 소프트웨어 적인 문제인데. 솔직히 저는 리눅스가 오래 사용해서 자주 뻗는다는 것은 좀 이해가 가지 않습니다. 리눅스를 서버로 우리보다 훨씬 오래 사용하는 곳도 부지 기수일텐데 그런곳들이 모두 이런 문제를 겪고 있을까요.. 그렇다고 지금까지 관리가 안되서 그런것도 아니라고 생각합니다. 상민형, 석천이형, 영창이 모두 제가 생각하기에는 그 누구보다도 서버 관리를 잘 했다고 생각합니다. 물론 테스트를 해봐야 알 문제입니다. 오늘 회장님이 테스트 해본다고 했는데 가끔씩 서버가 죽는 문제를 어떻게 테스트를 해야할지 전 감이 안 오네요. 한 일주일정도 제로페이지 서버를 죽이고 다른것(다른 하드에) 웹서버를 깔아서 아주 아주 수시로(몇분 단위로) 그 웹서버로 들어와서 죽었는지 확인을 해야 하는데(물론 테스트는 테스트를 진행하는 한두사람만 하겠죠. 현재의 제로페이지 위키만 해도 하루 방문자가 1000이 넘는것에 비해서...)그게 참 어려운 문제라고 생각합니다. 또 한 일주일동안 서버를 죽이는것도 현재 위키위주로 돌아가는 제로페이지에도 치명적이구요. 이렇게 테스트를 해서 만약 하드웨어 적인 것이 문제라면 또 다시 서버를 업그레이드 한다음에 다시 서버를 설치하는 작업을 해야겠죠.
즉 제가 서버업그레이드를 제안하는것은 하드웨어적인 문제나 소프트웨어적인 문제를 동시에 해결하고자 제안한 것입니다. 위와 같은 테스트를 할경우 그에 따른 희생및 서버 관리자의 불필요한 수고가 필요합니다. 그리고 학회 운영 및 프로젝트에서도 많은 희생이 따름니다. 그리고 위와 같은 테스트도 확실한 방법은 아니구요, 여전히 불확실성을 내포한 방법입니다.
만약 서버를 업그레이드 하려면 회비로 할텐데(피시실 관리비로 받은) 제가 생각하기에 MT나 회식때 회비를 사용하는것도 좋지만 이렇게 제로페이지가 실질적으로 프로젝트를 하는데 많은 장애가 생기는 상황을 타개하는데 사용하는것도 참 회비를 유용하게 사용하는게 아닐까 생각합니다.(그래서 우리가 MT나 회식도 사비를 더 내더라도,,) 글을 쓰면서도 불안 하네요. 어제도 글을 쓰고 나서 저장했을때 여러번 서버가 죽어서...
저는 업그레이드가 필요하다고 생각합니다. 서버의 핵심은 안정성인데, 지금의 서버는 안타깝게도 그 역활을 제대로 수행해주지 못하고 있기때문입니다. 서버 업그레이드 시도를 하게되면, 이전의 컴퓨터에 문제가 없다고 판단될 경우 새서버의 보조 역활과 리눅스 테스트용 서버로 사용해도 큰 문제가 없다고 생각합니다.^^ 속도 측면에서는 현재의 서버도 전혀 문제가 없지만, 안정성이 낮은점은 이용자의 입장에서 불편하다고 느낄 수 밖에 없기 때문입니다.(실제로 많이 불편했답니다.ㅠ.ㅜ 꼭 필요할때만 죽어있어요..) - [조현태]
- Ruby/2011년스터디/세미나 . . . . 31 matches
* nilClass의 인스턴스는 nil하나, prototype은 없음. 다른 함수들은 가지고있음
DeleteMe) 여백이 이상하네요.. 세미나 끝나고 고칠게요ㅜ
* 를 하려고 했지만 tcl 문제로 CodeRace로 변경
* 배를 타고 두 마을 사이를 오갈 수 있다.
* 레이튼 교수가 배를 타고 건너 B마을로 건너가게 하자.
== 회고 ==
|| 이름 || Keyword || 이유 || 비고 ||
|| [권순의] || 우아하다 ||성현이가 Ruby를 우아한 언어라고 소개함. 지혜가 책에서 $_가 우아하다는 표현을 봤다고 말함. || ||
|| [송지원] || irb || 불완전하다고 느껴진 이유가 irb 때문이기도 하다고 느껴짐.( NetBeans에서 코딩하면 잘되는게 irb라 안되는 것도 있어서) || ||
* 아.. 세미나가 끝나니까 할말이 생각나네요..ㅠㅠ 루비의 블록 넘기기는 사실 블록이 yield구문에게 전달되는 것이 아니라 yield를 만나면 함수의 호출부로 컨트롤이 이동해 블록이 있는지 확인하고 실행합니다. 책에서는 co-routine 이라고 이해하면 된다는 설명이 있어요~ 블록이 전달되는게 아니라 컨트롤 플로우가 왔다갔다!! 스위치 태스킹처럼요. 세미나때 설명을 잘 해드렸어야 했는데 죄송천만번입니다 - [서지혜]
* 우선 늦게가서 if-else 밖에 못 들어먹었습니다 ㅠ 상당히 아쉬웠어요. 근데 if구문을 사용해도 의도가 명확하다면 괄호가 필요없다게 참 신기하더라구요. 제가 약간이라도 다뤄본 C, C++, Java, JavaScript, Python에서는 괄호를 반드시 사용해야만 하는 걸로 알고있었는데 말이죠. 근데 여기서 "의도가 명확하다는 것"이 무슨말인지.. 솔직히 이해가 안 가요. ㅠ 저가형 두뇌... 그리고 루비 개발도구가 참 많더군요. aptana... 루비를 위해 만들어졌지만 루비를 쓰지 못한다는게 참 인상적이었습니다. 그리고 irb의 개발환경을 보니 수정을 할 수가 없어 참 불편하더군요. Python Shell의 개발환경이 보다 더 우수한 것 같습니다. 그리고 회고할 때 주워들은 "우아하며 불완전한 언어"라는 말... 왜 그런지 궁금하네요. - [윤종하]
}}} 윗줄 아랫줄 모두 문제 없이 실행되지. 이 경우는 의도가 명확한 경우야. 그런데 이 add 메서드를 호출해서 3, 4, 7을 더한 값을 알고 싶다면
* Ruby 라는 언어를 처음으로 접하게 되었습니다. irb를 이용하여 Ruby 코딩을 연습해 보았습니다. 코드 수정이 일단 한번 해놨으면 다시 정의를 해야되서 매우 불편하였으나 c같이 문법이 딱딱하지 않고 생략해도 구문 자체의 의미가 명확하다면 알아서 해주는 모습이 매우 신기했습니다. 나중에 lua도 공부해서 wow 에드온을 어찌해봐야겠습니다. - [임상현]
* 진짜 한번쯤 건드려보고 싶은 언어였는데 차일피일 미루다가 드디어 해봤습니다. 루비의 문제점도 많이 보였지만 그래도 (제 입장에서는) 직관적인거 같아서 좋았습니다. 시간이 된다면 irb로가 아닌 editor를 이용해서 편집한 소스코드를 컴파일하고 돌려보는 방법도 해보면 좋겠어요. - [지원]
* 저도 아직 RubyLanguage에 익숙하지 않아서 어려운 점이 많지만 조금이나마 공부하며 써보니 직관적이라는 생각이 많이 들었어요. 오늘 정보보호 수업을 들으며 EuclideanAlgorithm을 바로 구현해보니 더더욱 그런 점이 와닿네요. 좀 더 긴 소스코드를 작성하실땐 Netbeans를 이용하시는 걸 추천해요~ 매우 간단하게 설치하고 간단하게 사용할 수 있답니다. - [김수경]
* 그간 공부하신 것으로 세미나 준비하시느라 고생하셨습니다. 하지만 전 역시 "중구난방"이라는 생각이 강하게 듭니다. 마츠모토씨가 좋아하는 부분만 섞어서 만들었다고 하니 그럴 수 밖에....... 솔직하게 말하면 좀 거부감이 있어요. - [황현]
1. 시간에 치여 준비했던 CodeRace를 못 한 것이 아쉽지만 시간이 좀 걸렸더라도 지혜가 RubyLanguage 문법을 설명할 때 다같이 실습하며 진행했던 것은 좋았습니다. 그냥 듣기만 했으면 지루하고 기억에 안 남았을지도 모르는데 직접 따라하며 문법을 익히는 방식이라 참여하신 다른 분들도 더 재미있고 뭔가 하나라도 기억에 확실히 남는 시간을 보내셨을거라는 생각이 드네요.
1. 아쉽게도 못했던 CodeRace는 특별한 더 좋은 다른 일정이 없는 한 다음주나 다다음주 정모에서 진행하고자 합니다. - [김수경]
* 스노우볼이란 게임으로 회고를 하는 방법이 매우 신선했습니다. 시간배분을 못해 레이스를 못한게 마음에 걸렸는데 좋은 마무리 부탁드립니다 - [서지혜]
* 드디어 Ruby를 접해보았습니다. 여러가지 장점이 보였지만, 궁금한 것도 많이 생긴 세미나였습니다. 특히 메모리 관리 부분에서 가비지 콜렉터 존재 유무가 많이 궁금해지더군요. 그래서 검색해보니 참 재밌네요 ㅋㅋㅋ (1. 스택 개념 없음, 힙만 사용 2. 로컬변수도 힙에 올림 3. 명시적으로 메모리 해제 못함). 그리고 { |x| ~~ } 이 문법 보면서 사용하기 꺼려지는 문법이라는 생각이 든 건 저뿐만인가요? 궁금하네요. - [박성현]
- XpQuestion . . . . 31 matches
''Xper 에서 비슷한 기능을 하는 페이지가 '질문답변' 인데, 이 페이지같은 경우는 직접 질문하고 답을 쓴거여서 '질문답변' 에 올리기가 좀 그렇더라구요 Faq 라는 페이지를 만들까 하다가 좀 주관적인 답이여서 그렇고. Xper 에서 페이지 제목 궁리하다가 그냥 일단 여기 만든거라는. ^^; (Xper 에도 올립니다. 페이지들 별로 녹여넣어야겠군요.) --["1002"]''
- '필요하면 하라'. XP 가 기본적으로 프로젝트 팀을 위한 것이기에 혼자서 XP 의 Practice 들을 보면 적용하기 어려운 것들이 있다. 하지만, XP 의 Practice 의 일부의 것들에 대해서는 혼자서 행하여도 그 장점을 취할 수 있는 것들이 있다. (TestDrivenDevelopment, ["Refactoring"], ContinuousIntegration,SimpleDesign, SustainablePace, CrcCard Session 등. 그리고 혼자서 프로그래밍을 한다 하더라도 약간 큰 프로그래밍을 한다면 Planning 이 필요하다. 학생이다 하더라도 시간관리, 일거리 관리는 익혀야 할 덕목이다.) 장점을 취할 수 있는 것들은 장점을 취하고, 지금 하기에 리스크가 큰 것들은 나중에 해도 된다.
각 Practice 를 공부를 하다보면, 저것들이 이루어지기 위해서 공부해야 할 것들이 더 있음을 알게 된다. (의식적으로 알아낼 수 있어야 한다고 생각한다.) Refactoring 을 잘하기 위해선 OOP 와 해당 언어들을 더 깊이있게 이해할 필요가 있으며 (언어에 대해 깊은 이해가 있으면 똑같은 일에 대해서도 코드를 더 명확하고 간결하게 작성할 수 있다.) CrcCard 를 하다보면 역시 OOP 와 ResponsibilityDrivenDesign 에 대해 공부하게 될 것이다. Planning 을 하다보면 시간관리책이나 일거리 관리책들을 보게 될 것이다. Pair 를 하다보면 다른 사람들에게 자신의 생각을 명확하게 표현하는 방법도 '공부'해야 할 것이다. 이는 결국 사람이 하는 일이기에. 같이 병행할 수 있고, 더 중요한 것을 개인적으로 순위를 정해서 공부할 수 있겠다.
개인적으로, TestDrivenDevelopment 는 연습해보면 배울 게 많다고 생각한다. Test 를 작성하는데에서 배웠던 일들이 많기에. (Test 를 작성하기 위해 큰 모듈덩어리에서 일어나는 중간단계에 대해 더 깊게 생각하고 작은단위로 쪼갠다던지, AcceptanceTest 를 작성하기 위해 전체 시스템 돌아가는 과정을 안다던지 등등)
선배들에게 Pair 를 요청하는 것도 바람직한 방법이라 생각한다. Pair를 하면서 또다른 사람의 세계를 구경하고, 또한 그 사람에게 또 다른 세계를 구경시켜줄 수 있으리라 생각한다. (다른 사람들을 세심하게 관찰할 수 있고 실천할 수 있다면 참으로 빨리 배울 수 있는 사람이라 생각한다.)
어디선가 이야기 나왔었던 문제. 규모가 되는 프로젝트의 경우 100 장의 Index Card 는 보관하기도 어렵고 널려놓기엔 정신을 어지럽힌다.;;
- Story Card 는 Kent Beck 이 사용자와 더 빠른 피드백을 위해 생각한 덜 형식적인 방법이다. 어차피 Story Card 는 전부 AcceptanceTest 로 작성할 것이기에, 테스트가 작성되고 나면 AcceptanceTest 가 도큐먼트 역할을 할 것이다. Index Card 도구 자체가 보관용이 아니다. 보관이 필요하다면 위키를 쓰거나 디지털카메라 & 스캐너 등등 '보관용 도구', 'Repository' 를 이용하라.
- 어차피 실제 고객에게 가치를 주는 중요한 일만을 하자가 목적이기에. Documentation 자체가 중요한 비즈니스 가치를 준다던가, 팀 내에서 중요한 가치를 준다고 한다면 (예를 들어서, 팀원중 몇명이 항시 같이 작업을 할 수 없다던지 등등) Documentation 을 EngineeringTask 에 추가하고 역시 자원(시간)을 분배하라. (Documentation 자체가 원래 비용이 드는 일이다.)
실제 회사 : 회사 로 수주받은 프로젝트의 경우, 다른 회사에서 오는 '고객' 은 실제로 그 회사에서의 말단 직원인 경우가 많다. 그러므로, 매 Iteration 시 고객에게 Story 를 골라달라고 할때 그 고객은 힘이 없다.
interface 가 잘 정의하고 둘이서 분업을 하면 훨씬 효과적 아닌가?
- ["1002"] 가 ProjectPrometheus 를 할때엔 거의 전체 작업을 Pair로 진행했다. Integration 비용이 전혀 들지 않았다. (두명이 멤버였으니; 당근!) 그리고 초기 소스와 지금 소스중 초기 모습이 남아있는 부분을 보면 '젠장. 왜 이렇게 짠거야? 이런 허접한...' 이다. 중복된 부분도 많고, 매직넘버도 남아있고, 처음엔 쓸거라 생각했던 일종의 어뎁터 역할을 하는 클래스는 오히려 일만 복잡하게 만들고 등등.
그리고, '지식의 전파'가 프로젝트에서 효율을 높인다고 한다면. 이번 기회에서도 ["1002"] 는 Pair를 한 사람과 같이 싸우고 치고 받고 하면서 여러가지 생각을 할 수 있었던 기회가 되었다. '충돌' 이 물리적작용으로만 끝난다면 상처밖에 남지 않지만, 화학작용을 한다면 뭔가 새로운 것을 만들어낸다. Pair 는 단순히 '한사람 Skill' + '한사람 Skill' 은 아니라 생각한다.
이전 XpWorkshop 시에 나왔던 아주아주 날카로운 분의 질문. 협업 중심에서의 XP 에서는 연봉처리에 대해서 어떻게 하라고 합니까?
- 데블스캠프2004/세미나주제 . . . . 31 matches
* 월요일 준비를 위해 3명 정도 모이려고 했는데, 이사람 저사람 생각을 모으려 하다보니 인원이 많아 졌습니다. :)
* 무엇을 하시려고 하나요? --재동
정도로 계획을 짜 놓았는데 전부다하기에는 캠프의 첫날이 다 필요합니다. 월요일에 저렇게 예약된게 많으니, 3시간 정도만 해서 Wiki탐험과 ZeroPage역사+OT 정도만 진행할수 있으면 좋겠어요. 흐흐 벌써 [1002]를 섭외(?)해 놓았고, 다른 분들도좀 섭외를 해서 적절한 요일에 만나면 될것 같습니다. :) --NeoCoin
* RevolutionOS 별로 재미없습니다. 다 아는 내용이고, 당시의 장미빛 미래와 지금이 많이 달라진 상황이라, 슬픈 느낌마져 들었습니다. 시청하는데 의의가 있었죠. :) 제 생각은 ZeroPage 역사를 가지고 스냅샷으로 몇장 정도면 어떨까 합니다. 즉석 역할극도 재미있겠네요. 그런데 [1002] 시험은 언제 끝나요? --NeoCoin
* 시험은 수요일날 완료. RevolutionOS는 '예' 로 든것이고. 실제로 04중에는 알 사람도 얼마 없지 않을까 해서. 적당히 컴퓨터쪽 역사의 과거와 미래에의 모습에 대해 보여줄만한 영화, 그리고 재미있는 녀석이면 환영. --[1002]
* 예로서는 좋은데, 직접 보기에는 너무 단조롭더라. 설명 자체도 그리 친절하지 않고, 암튼 그런 좋은 영화 같은거 없나? --NeoCoin
* 정 다 필요하시다면 다 쓰셔도 됩니다. 하지만 저희 둘의 생각으로는 위 주제로 첫날 하루를 모두 하는 건 불필요한 것 같습니다. 이번 데블스 캠프의 대상은 아직 ZP 정회원이 되지 않은 이들입니다. 솔직히 (바라지는 않지만) 이들 중 많은 이들이 나갈텐데 그들을 상대로 ZP 역사나 OT에 많은 시간을 할애하는 건 소용이 없다고 봅니다. 그리고 자칫 시작 첫날부터 따분하게 되기 쉬워보입니다. --재동, 상규
* 지금 Accelerated C++을 보고 있는데 STL에 대해 흥미가 생기네요... 그래서 이거 세미나 계획하고 있습니다. 세미나 방향은 char배열을 대신해서 쓸 수 있는 string이나, 배열 대신 쓸 수 있는 vector식으로 기존의 자료구조보다 편히 쓸 수 있는 자료구조를 설명하려 합니다.-영동
STL 좋지. 한데 이건 자료구조 시간과 OOP가 끝나고 하면 좋을 듯 해. --[신재동]
우선 단기적으로 보면 03학번이 실력을 키워야 합니다. 02 학번은 현재 영동군, 1명만 남은 상태이고 그 또한 올해 군대를 갑니다. 석천 형(졸업)과 상민 형(군대)도 더이상 봐주기 힘들겁니다. 그리고 군대 간 ZP들(01, 02)이 돌어오는 시기는 내년 말이나 되야 할 것입니다. 그나마 다행히 저나 상규가 동대학원에 진학 예정이라 2년 정도 더 봐줄 수 있습니다만 결국 재학생 선배의 공백은 03학번이 해결해야 할 것입니다. 한편 장기적으로 본다면 문제는 앞서 나왔듯이 ''군대''인 듯 합니다. 남자들은 군문제가 학회에 지속적인 활동을 못하게 합니다. 저나 상규가 아직까지 군대를 가지 않고 남아 ZP에서 계속 활동한 것이 ''스타''라는 이름이 붙인 것 같습니다. 이를 해결할 수 있는 건 군문제를 대학원 후의 전문연구원으로 해결 하던지 아니면 여자 회원이 공백을 매꿔줘야 할 것입니다. 그리고 제대한 ZP 회원들을 빨리 다시 활동 할 수 있게해야 할 것입니다. 마지막으로 저나 상규는 절대 스스로를 스타 또는 영웅이라 생각치 않습니다. --재동
장기적이자 단기적이라면, 학회를 이용해서 자신을 갈고 닦는 마음가짐을 가지고 이를 실천하게 만드는 것 시스템을 구성하는 것이 필요합니다. 즉, '''적극적인 활동을 일으키는 시스템''' 이겠지요. 실력은 따라오는 것 같습니다. 더구나 4학년이 되가면서 큰 편차가 나지 않는 것 같습니다. (K대학 전산하신분 분의 말씀인데 동감합니다.) 위의 세미나만 봐도 '하지 못해서'가 아니라 '하지 않아서' 없는것 같습니다. 서로에게 이걸 하는 것을 권하고, 부탁하면서 분담하는 것이 필요한데요. 이러기에 서로가 너무 조심하는 것이 아닐까요.
얼마전(2달?) 동생이 KTF Future List 인지, Feature List 인지를 통과해서 활동을 시작했는데요. 처음에 3박 4일로 훈련(?)을 와서 자신이 굉장히 놀란 이야기를 해주었습니다. 이 것은 전국 수십개 대학에서 5명씩 모여서 조성된 캠프입니다. 이 집단의 개개인 모두가 적극적인 면이 너무 신기하다는 표현을 하더군요. 뭐 할사람 이야기 하면, 하려고 나오는 사람이 수십명인 집단...
그래서 무지하게 궁금합니다. 학회가 무엇인지, 모두가 어떤 생각을 하는지 그래서 첫날에 그런 생각들을 담아내고 시스템을 조성해보자는 취지로 월요일 4시간의 시간을 달라고 한것 입니다. 그리고 당연히 이 시간은 함께 만들어 나가는 거겠지요. 그래서 토요일에 모임을 예약(?) 해 두었는데 사람 모으고 있습니다. ;;
[STL]을 할때 단순히 자료구조를 사용하는 방법을 같이 보는것도 중요하겠지만 내부구조 (예를 들어, vector는 동적 배열, list은 (doubly?) linked list..)와 같이 쓰이는 함수(sort나 또 뭐가있드라..그 섞는것..; ), 반복자(Iterator)에 대한 개념 등등도 같이 보고 더불어 VC++6에 내장된 STL이 ''표준 STL이 아니라는 것''도 같이 말씀해 주셨으면;; (SeeAlso [http://www.stlport.org/ STLPort]) - [임인택]
- 아! 그리고 template에 대한 내용도.. :-) - [임인택]
* [데블스캠프2004] 에 대한 모자 사고 - 단점(아쉬운점), 장점(인상깊으점), 보충할점(2005년에 추가할 내용)
* [데블스캠프2004] 겪고난 자신의 Before, After 말하기 - 전에는 ~했는데, 지금은 ~하다
* [데블스캠프2004/공유비전] 을 읽어 보고, 각 비전이 떠오르는 상황 이야기 하기(모자 방식 평행 사고)
- ZeroPage_200_OK/note . . . . 30 matches
* 강의 노트는 날짜나 요일 별로 구분하지 않고 큰 주제별로 분리할 생각입니다. 그렇게 하는 편이 나중에 찾아보기에 좋을것 같습니다 -[안혁준]
* resource에 사용 그 url에 딱 올라갈 때 쓴다. 주로 수정에 사용된다 이미 ID를 알고 있으므로.
* prototype은 클래스가 들고 있어야하는 함수들을 특정 인스턴스가 들고 있게 만드는 것이다.
* 변수 안에 담을수 있고,
* 반환값을 사용할수 있고
* instance의 __proto__에서 찾고 없으면 그위에 __proto__에서 찾고...
* 부하가 많이 걸리고(요청마다 서버에 요청을 보내고 그걸 다시 내려주므로 네트워크 비용및 기타 비용이 증가)
* 플래쉬로 극복할수 있으나 클라이언트에 부하가 있고 자바스크립트 고유한 방식으로 해결하는것이 아니라서 좋지않다.
* Same origin policy를 적용받지 않고 자바스크립트를 불러올수 있으나 바로 실행이 되므로 다른 방식을 써야한다.
* 널리 쓰이고 있는 서버이고 가장 안전성이 뛰어나다.
* windows 에서 쓰이고 역시 안정성이 뛰어나고 GUI관리가 가능하다.
* 우리가 알고 있는 그 파일 (Process - Disk)
* Unix는 C임에도 불구하고 강력한 추상화를 통해 뭔가를 읽고 쓰는 것으로 File을 만들었다.
* 웹서버는 두고 거기에 다른 프로세스를 실행해서 그 실행 결과를 읽어들이자.
* 매 실행시마다 새로운 프로세스를 생성하기때문에 메모리 소모가 심하고 disk접근이 많다.
* process per request 방식이어서 fork 비용은 여전히 존재하고 요청마다 메모리를 많이 먹는다.
* fork 대신 Thread를 쓸수도 있고 운영체제별로 다른 방식을 쓸수도 있고 fork를 그대로 쓸수도 있다.
* context switch가 많이 일어나서 효율적이지 않고 평균 응답시간이 길어진다.
* 큐를 만들어서 context switch비용을 줄여보려고 노력했다.
* connection을 큐에 쌓아두고 worker가 하나씩 꺼내어 처리
- 논문번역/2012년스터디/신형준 . . . . 30 matches
자필 글자 인식에 대한 체제가 발표됬다. 이 체제는 자유 분할 접근에 의한 특성을 가지고 있는데, 전체 문서의 한줄이 인식모듈에 의해 처리되어 진다는 의미를 가지고 있다. 전처리, 특징추출, 그리고 통계적 모형화에 있어 사용되는 방법이 소개되어 있고, 인식 주제(문서) 들을 자필로 하는 독립된 작가, 다수의 작가, 그리고 혼자쓰는 작가에 대한 몇몇의 실험들이 실행되었다.
특히, 선형판별인식, 이서 문자 모델, 그리고 통계적 언어 지식의 설립에 내용이 조사되어 있다. 어휘가 자유로운 자필인식에 대한 평가 결과들은 제안된 방법들이 효과적임을 보여준다.
패턴 인식의 도전 영역은 자필 문서 인식에 있다. 지금까지 대다수의 자필 인식 시스템은 우편 주소를 읽거나 은행 수표와 같은 형태들을 처리하는데 사용됬다. 반면에 이 시스템은 분리된 문자 또는 단어에 대해서 한계를 가지고 있는데, 오직 구속되지 않은 자필 문서의 인식에 대한 많지 않은 시스템 만이 존재했다. 이와 같은 수행의 증가된 복잡성 때문에, 문자의 부재 혹은 단어의 경계 정보, 거기에 크거나 심지어 한계가 없는 단어들에 의해 특징지어진다.
그럼에도 불구하고, 자필을 인식하는 일에 대해 기술들을 더 조사하는 건 가치가 있다. 왜냐하면 컴퓨터 성능의 향상이 더 복잡한 처리과정을 할 수 있게 해주었기 때문이다.
이 에세이에서 HMM에 기반한 어휘에 자유로운 필기 인식에 대한 시스템이 설명되어 있고, 영어로만 이루어진 문장 데이터 베이스에서 몇몇의 실험들이 필기자에 독립된 형태, 또한 다수와 개인 작가 형태에 대해서 비교하기 위해 실행되었다.
전처리 과정과 특징추출에 대한 방법이 묘사되었다. 그리고 게다가 선형 판별 해석, 이서 특징 모델들의 사용, 그리고 통계적인 언어 모델들과 같은 더 세련된 기술들을 살피게 될 것이다.
다음 부분에서 우리는 오프라인 필기인식에 관련된 일의 짧은 보고서를 볼 수 있다. 우리가 사용하는 데이터베이스는 section 3에서 소개되어질 것이다.
그후에 우리는 그다음 section들에서 전처리 과정 단계, 특징 추출에 대한 방법, 그리고 통계적 모델링과 인식을 이용한 기술들을 묘사한다. 제안된 방법들의 효율성을 입증하기 위한 평가결과는 section 7에 있다.
선형 연립 방정식의 중요한 특성들은 벡터들의 개념과 표시법에 의해 묘사되어 질 수 있습니다. 이 부분에서는 벡터들과 평범한 방정식들의 연립들이 연관된 방정식들을 연결해 줍니다. 이 백터라는 용어는 다양한 수학적이고 물리적인 문맥(우리가 Chapter 4, “백터 공간”에서 논의할)을 나타냅니다. 그때까지, 벡터는 숫자들의 정렬된 목록으로 써 의미를 가집니다. 이 간단한 생각은 우리에게 흥미롭고 중요한 적용들을 가능한 빠르게 얻게 도와줍니다.
오직 하나의 열만을 가진 행렬을 열 벡터 또는 간단히 벡터라고 부름니다. u,v,w는 두개의 entry를 가진 벡터들의 예 입니다. (w1과 w2는 실수). 두개의 entry를 지닌 모든 벡터들의 집합을 R^2라고 나타냅니다. 이 R은 벡터에서 entry들이 실수라는 걸 의미하고, 지수 2는 각각의 벡터들이 두개의 entry를 가지고 있다는걸 의미합니다.
두개의 벡터에서 대응되는 entry들이 같을 때 두 벡터들(R^2에 있는)이 같다라고 합니다.
Cu에서 c를 스칼라 라고 부릅니다. 이것은 획이 가는 활자의 형태로 쓰여집니다. (벡터 u를 나타내는 볼드체 활자로부터 구별하기 위해서)
이같은 경우에 개인적인 점들(화살표 그것 스스로에 대해서)은 특별한 중요성을 가지고 있지 않습니다.
두 벡터들의 합은 유용한 기하학적 표시법을 가지고 있습니다. 북석적인 기하학구조에 의해 앞의 규칙이 학인되어 질 수 있습니다.
||만약 R^2에있는 u와 v가 평면상에서 점들로 표현된다면, 그때 u+v는 평행사변형의 제 4의 꼭짓점에 대응한다.(다른 벡터들은 u,0, 그리고 v) Fig 3를 보자||
모든 entry가 0인 벡터를 영 벡터라고 하고, 0이라고 표기합니다. (0 벡터에서 entry의 수는 맥락으로 부터 명확해 질 것입니다.)
R^n에서의 같음과 스칼라 곱과 벡터 합 의 연산자들은 R^2에서 와 같이 entry와 entry에 대응하여 정의되어 집니다. 이 벡터들에 대한 연산자들은 실수에대한 대응하는 속성들로부터 직접적으로 증명할 수 있는 다음의 속성들을 가집니다. Practice Problem 1과 Exercises 33 그리고 34 (이 섹션 마지막에 있는) 을 보십시오.
그리고 이것은 c1,...cp의 weights를 같는 v1,..,vp의 선형결합이라고 불려집니다. 이와 같은 선형결합을 실행할때, 위의 속성 (ii)는 우리에게 괄호를 누락시키는걸 허용해줍니다. 선형결합에서 weights는 0을 포함한 어느 실수라도 될 수 있습니다. 예를들어 벡터 (p28의 벡터 3개) v1과 v2의 몇몇의 선형결합과 같이 나타낼 수 있습니다.
- 정모/2012.2.24 . . . . 30 matches
* 참가자 : [이승한], [김준석], [변형진], [송지원], [김수경], [서지혜], [강성현], [권순의], [정종록], [서민관], [황현], [고한종], [김태진], [이민규], [이진규]
* 내일 오후 2시에 Dell PC 20대 고스트 작업합니다. 많은 참여 바랍니다.
* 요즘 뭐 하고 사는지 + 필드는 이렇다
== 2월 회고 ==
* 다음주엔 정모가 없고 개강 후 3월 5일 월요일 오후 6시에 합니다.
* 오랜만에 지원이누나를 다시 보는데다 승한선배가 오신다기에 급하게나마 2월 회고를 위한 정리를 진행했어요. 는 지원이누나가 정모가 잘 진행되고 있는거 같아서 좋다고 하기에 안도. ㅎㅎㅎㅎ 회고에서는 아무래도 단추공장 조가 가장 큰 인기를 끌었던거 같네요. Agile Korea가서 제대로 건져와서 써먹네요. ㅋㅋ GUI는 요새 제가 동네 리뉴얼하면서 (실제로 난 별로 안하는거같기도..) MVC패턴이나 View부분에 신경을 많이 쓰다보니 와닿는점이 참 많았어요. 승한선배가 좀 더 깊이 설명해주셨다면 좋았을텐데...라는 생각이 좀 들긴했지만요. 성현이형의 OMS도 엄청나서 (도쿄라니!) 전반적으로 정말 즐거운 정모였던거 같아요 - [김태진]
* 새싹 OT는 그렇다치고, ZP에 관한 OT도 있어야할까요? - [김태진]
* 신입생들 대상으로 하는 얘기 맞지? 새싹 OT 하는 날 합쳐서 간단한 소개는 필요하지 않을까? 따로 하는 건 좀 오버인거 같구 ㅋㅋ 주로 새싹 소개하면서 ZeroPage 설명부터 하고 시작했던 것 같아. 그리고 간단한 세미나(혹은 새내기에게 하고싶은 말 세션) 같은 것도 함께 했던 적이 많고. - [김수경]
* 작은 OMS 이야기라는 드립으로 시작한 OMS.. 준비한다고 시간 좀 끌었는데 들어보니 시간 끌 만 했다는 생각이 들었습니다. 재미있었어요! 여행을 거의 다녀본 적이 없어 간접경험삼아 열심히 들었네요ㅋㅋㅋㅋ ''그나저나 오늘 인터넷하다가 도쿄 역 방사능 수치가 4.88 마이크로 시버트라는 글을 어디서 봤는데..............''
* 정모 이야기는 아니지만 PC실 정비 도와주고 싶었는데 그 날 Google Hackathon 본 행사가 있는 날이라 참석을 못했습니다ㅠㅠ
* 아, 그리고 회고 진행될 때 느낀 건데 올해 회장 태진이가 확실히 세심하게 준비하는 면이 있어 좋아요. 지난 일년간 정모를 준비할 때 (후반에는 사실 뭔가 잘 준비를 못한 적이 많았고....) 초반에 열심히 준비할 때에도 세세한 부분은 신경쓰지 못한 게 많았거든요. 완벽한 ZeroPage보다는 항상 더 나아가는 ZeroPage가 바람직하다고 생각하는데 올해 ZeroPage가 작년보다 더 나은 ZeroPage가 될 수 있겠다는 생각이 들어 기뻤습니다. 회장 태진이도 그렇고, 방학인데도 열심히 정모에 참석하고 또 회고를 손 들어 이야기하는 방식으로 진행했는데도 적극적으로 참여하는 ZeroPager의 모습이 정말 보기 좋았습니다 :) - [김수경]
* 개강 앞두고 피시실 관리와 새내기등 신경쓸일 많은 와중에도 정모 열심히 준비하는 회장님 존경. 이전 ZeroPage가 했던 고민을 다시 하고 계신듯 하여 (훌륭한 세미나나 일용할 양식같은 물질적 도움은 못하지만) 도움을 드리고 싶네요. 그렇다고 결과가 특별히 좋았던건 아니라 망설여지기도 하고.. 커피나 한잔 할까요 회장님- - [서지혜]
* 시간 잡으면 나도 끼고싶은데 괜찮은가? - [김수경]
- DataCommunicationSummaryProject/Chapter9 . . . . 29 matches
* cellular networks가 cell을 반경으로 하는데 비하여, Short-Range Wireless Networks는 아주 짧은 반경,Ultra Wide Banded 을 사용,고속이다.pbx처럼 pirvate networks이다.
* cellular networks가 예상보다 빠르게 성장한데 비하여,short-range mobile systems은 덜 성공적이였다.그 이유에는 속도,유선에 비하여 신뢰성의 떨어짐, 경쟁적인 기준이 있다.물론 Cordless phones 처럼 인기있는것도 있지만, 점점 범위를 늘리려고 한다. 또한roaming에서의 실패성이 많다.적외선이 laptop 이나 PDA에서 거의 사용되지만 잘 사용되지 않는다.
* 적외선 사용이 실패였지만 아직도 많은 연구와 회사의 사용이 있다.4세대 모바일 시스템으로 주목 받고 있다.roaming하는데 별 어려움 없이 랜과 3새대 휴대폰과 Bluetooth와의 연결도 가능할 것이다.
* 앞에서 예기했지만 짧은 반경이면 고주파이고(고주파는 아직 국가에서 할당이 잘 안돼었다) ,개인이 베이스스테이션을 달므로 허가 받은 주파수가 아니다. 즉 누구나 사요할수 있는것이다. 그럼 사용되는 주파수대를 알아볼까? 물론 고주파다.
* License-Free Radio 통신서비스를 하도록 허락한 주파수대이다.(돈주고 판것이것지) 물론 미국과 유럽의 기준이 약간 틀리다.
* IEEE 802.11b보다는 Wi-Fi 나 무선 이터넷이 우리에게 잘 알려져 있다. 물론 IEEE 802.11b를 기준으로 한다. Wireless Fidelity(통신에서 충실도의 뜻으로 많이 쓰인다. 예를 들어 " a high ~ receiver 고성능 라디오(cf. HI-FI) ") 의 약자이다. WECA(the Wireless Ethernet Compatiility Alliance)의 트레이드 마크이기도 하다.
* CCK(Complementary Code Keying)라고 불리는DSSS의 2.4GHZ를 사용한다. 물론 기존의 기계와 호환성을 기진다. MAC하는 방법은 CSMA/CA(여기서 A는 avoidance이다 유선과는 틀리다) half-duples이다.shared이다. 대역폭이 11Mbps이지만 오보헤드가 심하다. 여기에다가 쉐어드이니 장에가 심하면 1-2Mbps밖에 안된다.하지만 데이터 전송률은 쓸만하다. 이러한 낭비를 줄이려고 차세대로 갈수록 물리적인 데이터 율을 줄인다.
* 홈테트워킹을 위해서 싸고 간단한 네트워킹을 만들기로했다.
* P2P라고 보면 된다. 독립적인 구조이다. 즉, 하나가 뻑나도 다른 노드에는 영향을 미치지 않는다.
* 다른 노드는 CTS들으면 가만히 있고
* 프레임 받고 ACK전송
* 수동적 : AP가 자신의 상황 광고
* 고전적인 LAN : 정보 팁슐라면 건물 내로 침입해야 했다.
* encryption 알고리즘에 기초하고 있다.
* built-in key management system - 이건 잘 모르겠다. 가증한 키는 제한되어 있고, 해킹하는 데에는 선형시간이 걸린다.
* 현재는 802.11i를 새 보안 표준으로 쓰고 있다.
* 현재 이렇게 하고 있다한다.
* 미국같은 GSM이 힘을 못쓰고, 큰 라디오 블로킹 스카이스크래퍼가 일반적인 나라에서 유망할 거라고 예측
* 전세계 곳곳에 깔려있지만 잘 안쓴다. 대중에게 잘 안알려졌고, 지원이 결여되었다.
* 광고가 가장 많이 됨
- 데블스캠프2013/첫째날/후기 . . . . 29 matches
[조영준], [김태진], [김윤환], [권영기], [김해천], [서민관], [임지훈,] [김남규,] [이예나], [송정규], [백주협], [박지상], [이봉규], [안혁준], [장혁수], [정종록], [박희정], [김현빈], [고한종], [김도형], [원준연], [박성현], [김홍기], [권순의]
* 기존 온라인 게임과 SNG의 개발 구조?가 완전히 다르다는 건 꽤 들을 만 한 내용이었습니다. 그리고 자원을 부족하게 유지시킨다거나 SNG의 기획 방향 등도 좋았습니다. - [서민관]
* 저도 요즘 페북게임을 하는지라 재밌게 들었습니다. 졸아서 죄송합니다 그리고 책 잘 볼게요. - [김남규]
* SNS게임과, 온라인 게임을 이해하기 쉽게 비교해 주셔서 머리에 잘 들어왔습니다. 수익 모델을 어떻게 고려하면서 기획해야 하는지도 인상 깊게 들었습니다. -[고한종]
* 마케팅 측면에서 SNG이 어떤 매력을 가지고 있는지 알 수 있었습니다. 표절이 난무하고 퀄리티가 떨어지는 카카오톡이나 페이스북 게임들을 보면서 퇴보라고만 생각했는데, 새로운 시장이 생긴 것이라고 생각 할 수도 있을것 같습니다. - [백주협]
* 어느정도 기사나 추측으로 보고 있던걸 실질적인 관점에서 바라볼 수 있었네요. 사실 전 이런 게임 사이클도 오래가지 않아 사그라들거라고 생각하는 입장을 가진 사람중에 한사람이지만.. 그렇게 부정적으로 볼 것까진 없는거같구요. 재밌게 들었습니다. :) -[김태진]
* 게임 업계에 관심이 많아서 궁금했던 사항들에 대해 알 수 있었습니다. 그리고 이 강의를 듣고 저는 캔디크러쉬를 시작했습니다.- [원준연]
* 데블스 캠프에서 빠질 수 없는 내용인 버전 관리 프로그램 관련 내용을 안혁준 선배가 해 주셨습니다. 전체적으로 깔끔하게 진행한 느낌이었고, 직접 사용까지 해 보면서 새내기들은 조금 더 와 닿지 않았을까 싶네요. 다만 후반의 실습 부분은 약간 구성을 바꾸면 조금 더 매끄럽게 실습을 할 수 있지 않았을까 하는 아쉬운 느낌이 있었습니다. - [서민관]
* 전부터 알아보고 싶었는데 귀찮아서 안 찾아보다가 (...) 이번 기회에 배워서 기분이 좋았습니다 *-_-* - [조영준]
* GIT으로 누가 멍청한 코드를 짰는지 좋은 예시를 든답시고 while문을 집어넣었는데 세션 진행에 방해가 되었었네요. 조금 조심해야겠다는 생각이 들었어요. -[김태진]
* 너무나도 생소한 내용이었지만 정말 재미있었고 앞으로 많은 도움이 될 거라고 생각합니다 - [원준연]
* 네트워크 쪽은 지식이 상당히 얕은 관계로 그냥 두 노드간의 통신을 시뮬레이트 하는 방법 중에 이런게 있구나라는 것을 알아두는데에 의의가 있었습니다. 아, 이거하면서 페이스북에 리눅스 이야기도 나오고 민관이형이 리눅스를 물어보는 족족 너무 잘 가르쳐주신데다가 곁다리로 제 관심을 확 끌어당기는 중앙저장소 이야기가 나와서 리눅스에 대한 관심을 일으키게된 세션이 되었습니다. - [김윤환]
* 주제도 주제인 데다가 막상 실전에서 해보니깐 발표 준비가 좀 부족했던 점이 좀 많아서 많은 분들이 얼마나 알고 가셨는지 모르겠군요. 그만큼 위키에 보충 좀 많이 해둘께요. - [이봉규]
* 네트워크를 시뮬레이터가 오픈소스 형태로 제공되고, 모델들을 테스트하는데 유용하게 쓰인다는걸 알수 있어 재미있었다.- [송정규]
* 실습도 하는 등 집중이 잘 되고 잘 가르쳐 주셧는데 제가 아는게 너무 없어서 잘 모르겠어요. - [김도형]
* 상당히 신기한 느낌은 있었는데 이걸 어떻게 쓰면 잘 쓸 수 있을지는 경험이 별로 없어서 그런지 확 와 닿지는 않았다는 게 좀 아쉬웠다. 일단 봉규가 말한 대로 네트워크쪽 알고리즘 등의 시뮬레이션에는 쓸 수 있을텐데 음... 시뮬레이션 코드도 C++로 그냥 절차적으로 작성하는 걸로 간단하게 작성 가능하고 pcap 파일로 뽑을 수 있다는 것도 무척 매력적이다. 분명 업계 사람들한테는 상당히 귀중한 툴이 아닐까. - [서민관]
* 네트워크는 물론 리눅스를 사용해본 것도 처음이었는데 공부할 것이 많은 것 같습니다. 우선 새로운 프로그램을 접해 봤다는 점에서 큰 수확이었다고 생각합니다. 네트워크 장비를 구비하여 시뮬레이트 하기가 쉽지 않을텐데 이렇게 간단하게 프로그램을 사용하여 시뮬레이트 할 수 있다는 것이 신기했습니다.- [백주협]
* 이건.. 스킵되고 바뀌었지만, 익히 들었던 si기업의 무서움?을 간접적이지만 직접적일정도로 너무 생생하게 느낀 세션이였습니다. 흑..ㅠ - [김윤환]
* 그러게나 말입니다 -[고한종]
* 여기 이야기를 자주 들어왔는데, 경험자의 경험이 느껴지니, 저기서 듣던 거와는 또 느낌이 다르네요. 그냥 잘 하는 사람이고, 잘 아는 사람이 짱이라는 점을 나름대로 생각하는 시간이었습니다. - [김해천]
- 새싹교실/2011 . . . . 29 matches
* [새싹교실/2011/앞반뒷반그리고App반]
새싹 교실 가이드라인은 더 나은 새싹 교실을 만들기 위해 ZeroPage가 추천하는 방법입니다. 강제는 아니지만 선생님들께서는 그 의미를 생각해보시고 따라주시면 감사하겠습니다.
* 혹시 assert를 사용할 줄 모르신다면, 그리고 테스트라는 게 무엇인지 잘 감이 안 오신다면 [김수경]에게 도움을 요청해주세요.
피드백은 귀찮게 하기 위한 관리의 수단이 아니라 각 반이 매 시간마다 더 즐겁고 유익한 수업을 진행하고, 다음 해 새싹 교실에서도 이를 참고하기 위한 기록입니다.
* ''좋았어요.''만 적힌 피드백을 보고 더 좋은 수업을 준비하기는 어렵겠죠? 의미있는 피드백을 남기기 위해
* 학생들에게 F4(ThreeFs + FutureActionPlan) 혹은 FiveFs에 대해 설명하고 이를 지키도록 해주세요.
위키는 새내기들에게 낯선 환경이지만 사용하기 전혀 어렵지 않고, 내용이 쌓이면 게시판에 비해 내용들을 찾아보기 훨씬 좋답니다.
* 새내기들이 위키 문법을 처음부터 익히기는 어렵습니다. 선생님이 먼저 위키에 내용을 작성하여 학생들이 참고할 수 있도록 해주세요.
* / 아래에 쓰면 하위 페이지라는 의미가 있습니다. 즉, ''새싹교실/2011''은 ''새싹교실''페이지의 하위 페이지이고 ''새싹교실/2011/새싹반''은 ''새싹교실/2011''페이지의 하위 페이지가 됩니다.
* 각 반 이름 아래에 날짜별로 하위페이지를 만드셔도 좋고 반 페이지에 제목으로 날짜를 분류하여 작성하셔도 좋습니다.
* 위키 페이지를 어떻게 써야할지 모르겠다면 위키의 다른 스터디 페이지를 참고하시거나 [김수경]에게 물어보세요.
=== 회고 ===
회고를 통해 매번 그날 했던 것을 돌아봄으로써 배운 것을 더 잘 기억할 수 있고 학생들이 피드백을 작성하기도 더 수월해집니다.
* 거창한 회고를 하실 필요는 없습니다.
* 하지만 더 좋은 회고를 진행하고 싶으시다면 책장에 있는 애자일회고 책을 읽어보시거나 [김수경], [서지혜]에게 도움을 요청해주세요.
새싹 교실 지원 방침의 기본은 '''새싹 교실을 열심히 진행하고, ZeroPage의 발전에 기여한다면 그에 대해 지원'''하는 것입니다.
* 이 외에도 여러분이 생각하실 수 있는 새롭고 재밌는 방법으로 새싹 교실의 내용을 공유해주세요.
== 참고용 커리큘럼 ==
* 커리큘럼 가이드라인은 참고 및 예시용으로 사용하며, 평가와는 무관합니다.
* 모든 선생님이 따를 필요는 없습니다. 막막하신 선생님들은 참고해주세요:)
- 지금그때2006/선전문 . . . . 29 matches
아래부분은 휘동선배꺼 참고 헤헷, - 허아영
매년 참가자들의 좋은 후기로 이번에도 또 기획하고 있는 <b>지금그때</b> 기획단 입니다.
<b>"지금알고 있는 것을 그때도 알았더라면.."</b>
자신이 이때까지 살아오면서 정말 내가 잘한 일이었지.. 라고 생각하는 일!
또는, 내가 그땐 판단을 잘 못 했어. 라고 후회하는 일이 있지 않으셨나요?
사전참가신청을 받고 있습니다. 신청하신 분께는 행사 전 다시 연락을 드릴겁니다.
다시 학기가 시작되는가 했더니 어느새 3월이 지나가고 있습니다. 이제 어느새 선배가 되어버린 05학번 여러분들게에 좋은 행사를 하나 소개합니다.
사랑하면 알게 되고, 알게 되면 보이나니 그 때 보이는 것은 전과 같지 않으리라. (知則爲眞愛 愛則爲眞看 看則畜之而非徒畜也.) - 유한준(兪漢雋, 1732 - 1811. 정조 때의 문장가)
지나고 난 지금, 그때를 되돌아 보면 모든 것이 달라 보입니다. 그때는 왜 그랬을까. 그때는 왜 몰랐을까. 사람은 때로 자기 결정에 후회하는 일이 있기 마련입니다. 누군가의 도움을 받았으면 더 잘했을 지 모릅니다. 거꾸로 생각해봅시다.
돌아보지 않는다면 자신에게조차 의미가 없고,
혼자 생각하고 끝낸다면 자신에게는 도움이 되지만,
이 행사의 모토는 이렇습니다. "<a href="http://sgti.kehc.org/child/contents/teaching/14.htm"> <B> 지금 알고 있는 것을 그때도 알았더라면 </B> </a> " 단지 후회에서 그치지 않고 어떻게 했을까 생각해 봅니다. 의외로 지금도 늦지 않았다는 것을 발견할 수도 있습니다.
사전참가신청을 받고 있습니다. 신청하신 분께는 행사 전 다시 연락을 드릴겁니다.
안녕하세요 저는 03학번 나휘동입니다. 이렇게 글을 쓴 이유는 <학회이름> 여러분을 "지금그때"에 초대하고 싶어서 입니다. 비록 준비하는 이들이 ZeroPager이지만, ZeroPage와는 상관없는 모든 이를 대상으로 여는 행사입니다.
사랑하면 알게 되고, 알게 되면 보이나니 그 때 보이는 것은 전과 같지 않으리라. (知則爲眞愛 愛則爲眞看 看則畜之而非徒畜也.) - 유한준(兪漢雋, 1732 - 1811. 정조 때의 문장가)
지나고 난 지금, 그때를 되돌아 보면 모든 것이 달라 보입니다. 그때는 왜 그랬을까. 그때는 왜 몰랐을까. 사람은 때로 자기 결정에 후회하는 일이 있기 마련입니다. 누군가의 도움을 받았으면 더 잘했을 지 모릅니다. 거꾸로 생각해봅시다.
돌아보지 않는다면 자신에게조차 의미가 없고,
혼자 생각하고 끝낸다면 자신에게는 도움이 되지만,
이 행사의 모토는 이렇습니다. "<a href="http://sgti.kehc.org/child/contents/teaching/14.htm"> <B> 지금 알고 있는 것을 그때도 알았더라면 </B> </a> " 단지 후회에서 그치지 않고 어떻게 했을까 생각해 봅니다. 의외로 지금도 늦지 않았다는 것을 발견할 수도 있습니다.
사람들의 "나를 만든 책"을 소개하는 자리입니다. 졸업하는 사람이 "각자 자기의 대학생활 전체를 되돌아보고 그 기간동안 자신에게 가장 큰 영향을 준, 나를만든책을 딱 한 권 고른다"라는 발상입니다. 그리고 이를 기부하면서 간단한 설명을 덧붙입니다. 듣는 이는 궁금한 점을 물어볼 수 있습니다.
- STLErrorDecryptor . . . . 28 matches
VC++를 가지고 STL 프로그래밍을 하시는 분들이 가장 많이 느끼는 불편함(어느 플랫폼이나 마찬가지이지만)중 하나가 바로 "'''에러 메시지에 나타나는 STL 컴포넌트가 무엇인지 도통 모르겠다'''"라는 점일 겁니다. 이는 컴파일러가 STL 템플릿을 인스턴스화할 때 타입 매개 변수가 모두 포함된 상태로 전체 이름을 써 버리기 때문에 STL 책에 나오지도 않는 클래스 이름과 템플릿 이름 등이 마구 튀어나옴은 물론이거니와, 인스턴스화한 클래스 이름 자체가 엄청나게 길어져서, 코드 한 줄에 대한 에러 메시지가 수십 여 줄까지 만들어지는 현상이 일어나지요.
이러한 현상은 이펙티브 STL의 항목 49에서도 다루어진 이야기입니다. 원저자는 "많이 읽어서 익숙해져라"라는 결론을 내리고 있지만, 이 문제를 도구적으로 해결한 방법도 있다는 언급도 하고 있었죠. 여기서 이야기하는 [http://www.bdsoft.com/tools/stlfilt.html STL 에러 해독기](이하 해독기)가 바로 그것입니다. 이 도구는 VC 컴파일러가 출력하는 에러 메시지를 가로채어 STL에 관련된 부분을 적절하게 필터링해 줍니다.
역시, 잘 아시겠지만, 본 문서는 읽으시는 분께서 Visual C++ 개발 환경과 C++ 사용에 불편해하지 않고 탐색기 화면을 두려워하지 않는다는 가정 하에 작성했고, 윈도우 환경을 최대한 사용하는 쪽으로 작성하였습니다. :)
가) 여느 개발도구와 마찬가지로 VC의 IDE는 그 자체에 빌드용 장치(컴파일러와 링커)를 내장하고 있지 않고, 외부에 있는 컴파일러와 링커를 실행해서 프로그램을 빌드합니다. 컴파일러와 링커의 출력 결과는 실제로 콘솔로 빠져 나오는 출력이지만, 네임드 파이프(named pipe)란 것을 통해 VC의 IDE로 다시 들어가 '''출력(output)''' 윈도우에 디스플레이되는 것입니다.
나) '''원래의 C/C++ 컴파일러를 작동시키되 그 결과를 필터링해주는 기능이 추가된 프론트엔드를 CL.EXE이란 이름으로 행세(?)'''하게 하면, VC의 IDE나 기존의 개발환경에 전혀 영향을 주지 않고 필터링만 할 수 있게 될 겁니다. 해독기 패키지에는 이런 CL.EXE가 포함되어 있습니다. 이것을 "프록시(proxy) CL"이라고 부릅니다.
* 펄 스크립트 인터프리터(PERL.EXE)를 실행하고, 에러 필터 스크립트(STLfilt.pl)를 띄움
* STL 에러 해독기 패키지 (Win32용) : STLfilt.zip이란 이름을 가지고 있습니다 (http://ww.bdsoft.com/tools/stlfilt.html)
라) 꼭 알고 있어야 하는 파일만 간단히 설명하면 다음과 같습니다. 일단 훑어만 보시죠.
가) Visual C++가 설치된 디렉토리로 이동하고, 여기서 \bin 디렉토리까지 찾아 들어갑니다. (제 경우에는 D:\Program Files2\Microsoft Visual Studio .NET\Vc7\bin입니다.) 제대로 갔으면, 원래의 CL을 백업용으로 모셔다 놓을 폴더를 하나 만듭니다. (제 경우에는 '''native_cl'''이란 이름으로 만들었습니다.) 그리고 나서 CL.EXE를 그 폴더에 복사해 둡니다.
다) 이젠 프록시 CL의 동작에 필요한 환경 옵션을 제공하는 Proxy-CL.INI 파일을 여러분의 개발환경에 맞게 고쳐야 합니다. 텍스트 편집기로 Proxy-CL.INI를 열면 아래의 [common], [proxy.cl], [stltask.exe] 부분이 모두 비어 있는데, 윗부분의 주석문을 참고하면서 환경 변수를 고쳐줍니다. 반드시 설정해야 하는 옵션은 다음과 같습니다.
라) 이렇게 편집한 Proxy-CL.INI를 윈도우 디렉토리에 복사합니다. 윈도우 디렉토리란 윈도우 98/ME 등에선 \WINDOWS이겠고, 윈도우 NT/2000/XP 등에선 \WINNT 이겠지요. 즉 운영체제와 프로파일 파일들이 들어 있는 곳입니다. 프록시 CL은 기본적으로 이 윈도우 디렉토리에서 읽은 Proxy-CL.INI을 가지고 동작 옵션을 정합니다.
''참고) 대화 상자의 상단을 보면 "CL.EXE를 CL.STL로 복사했다"란 메시지가 보이는데, 이는 프록시 CL도 백업용으로 하나 복사해 둔다는 뜻이니 괘념치 않아도 됩니다. ''
참고2) 이 대화 상자가 뜨지 않고 "MSVCP60.DLL이 없다" 라는 메시지가 나오면 이 DLL을 시스템 디렉토리에 복사해 주세요.
여기서 "Enable Filtering"을 선택하면 그때부터 STL 에러 필터링이 가능해집니다. 그리고, 앞으로 STL 에러 필터링을 활성화하거나 비활성화할 때에는 이 태스크바의 아이콘을 사용하면 됩니다(Enable filtering/Disable filtering을 선택하면 되겠죠). 필터링이 활성화 되어 있느냐 그렇지 않으냐의 여부는 작업 표시줄의 아이콘 색깔( Upload:STLTaskActIcon.gif 은 활성화되었다는 뜻)로 확인할 수 있습니다.
가) VC++를 실행시키고, 아래와 같이 프로그램을 써 봅시다.
컴파일하고 있습니다.
컴파일하고 있습니다.
''참고) VC++.NET을 사용하시는 분의 경우엔 컴파일 전에 반드시 /WL 옵션을 주어야 합니다. /WL 옵션은 모든 에러 및 경고 메시지를 한 줄로 표시해 주는 옵션입니다. VC++.NET은 소스 코드 한 줄에 대한 에러 메시지를 여러 줄에 걸쳐(\n문자를 끼워넣어서) 표시하는데, 에러 필터링 스크립트는 에러 메시지가 한 줄로 되어 있을 때 재대로 동작하기 때문입니다. 아래와 같이 프로젝트 속성 페이지에서 [C/C++]의 [명령줄] 항목을 선택한 후 /WL 옵션을 추가합시다.''
- X . . . . 28 matches
전에는 컴퓨터에 미치고 싶다라고 생각했는데....[[BR]]
요즘 들어서 회의적인 생각이 가끔 들고 있음....[[BR]] [[BR]]
최근에는 게임 개발쪽으로 눈을 돌리고 있음
뭐 XBOX, PS2, NGQ까지 들어오는 마당에 GP32, GBA,.... 등등 많은 게임기들이 한국 시장에 진출하거나 하려고 준비중이고 PC게임시장은 비상식적으로 자라나고 있고 거기에 시장이 거의 포화상태라고 나는 내다보고 있다.[[BR]]
내 생각으로는 현재 PC가 들어가 있는 게임방이 나중에는 XBOX방, PS2방 등으로 바뀔 가능성이 크다고 본다.
병력 특례.... 아직 티오는 못 받음 -_-; 어서 편입되고 싶다 T_T
고 1때부터 구상, 고 3때 대략 완성, 대학 때 놀았음 -.-, 대학원 생활 말에 대충 정리 및 착수.... -.-[[BR]]
위의 소설은 내가 평생 걸려서 완성시켜보고 싶은 작품이고[[BR]]
일기 초기에는 거의 매일같이 글을 남겼으나 요즘은 거의 계간에 하나씩 쓰고 있다 -.-[[BR]]
호랑이는 가죽을 남기고 사람은 이름을 남긴다면 난 일기를 남기겠다.... 캬캬
== 하고싶은 것 ==
* GP32 개발툴로 가지고 놀기
* 여자친구 사귀기 (솔직히 있어야 편할까 없어야 속 편할까 모르겠음.... 일단은 사귀어 보고.... 키키 --)
* 요즘 하는 건 전화번호 외워서 다니기(핸폰에 저장 안해놓고.... 핸드폰에 있는 건 백업용)
== 하고 싶은 말 ==
무언가 하고 싶을 때 그것을 하고 나서 후회하라[[BR]]
하지 않고 후회하는 것보다 백 배 낫다[[BR]][[BR]]
전이라면 게임 혹은 음악! 이라고 외칠 수 있었으나 요즘은 아님, 독서라고 해두지
- 위키QnA . . . . 28 matches
Q : 링크에 밑줄이 생길때가 있고 안생길때가 있습니다. 그렇다기 보다는 생기는건 생기고, 어떤건 계속 안생겨 있군요. (in mozilla) --zennith
A : 아. 한번 고쳐봤습니다; 위의 네비게이션 바에 tab index를 주었습니다. 맨 처음 focus 는 바로가기 GO 입력창에 커서가 오고요. 그 다음 Shift + Tab 을 누르면 TAB 이 최근바뀐글 -> 검색 -> 제목색인 순으로 움직입니다. (반발이 3명 이상 나오면 원상복귀 하겠습니다;;) --석천
Q : 그리고 글중 ''wiki : NoSmok : 페이지이름'' 식으로 링크를 했는데, 이건 무슨 기능인지 간단히 설명좀
A : InterWiki 라고 합니다. InterWiki 에 등록된 다른 위키의 페이지를 링크 걸때 사용합니다. 위키간 이름공간을 연결해주는 유용한 매크로. ^^; InterWiki 에 가보시면 현재 등록된 다른 위키페이지들을 알 수 있습니다.~
* Regular Project 2명이하라도 팀원들이 Regular Project 만큼 많은 접근성이나 말이 멋있다고(--;)요구하면, 자유로이 Regular Project에 올린다.
* Regular Project와 Semi Project를 나눈 원래의 취지는 개인이나 2명의 극히 소수가 진행하고 있는 작은 규모와 3명 이상의 단체가 진행하는 일이라고 생각했습니다. 하지만 받아 들이는 입장에서는 다른 의도로 받아 들이지 말아 주세요. 혹은 둘을 구분하는 다른 효과적인 기준을 제시해 주세요.
Semi Project에서 인원이 3명 이상이라면 자동으로 Regular Project가 되어야 합니다. 이렇게 한 이유는 Regular Project라면 대문에서 더 다수가 접근할 것이라고 생각되며 eye catch의 시간을 더 줄여야 한다고 생각하기 때문에 이렇게 둔것입니다. 둘의 차이는 인원의 차이 외에 현재 아무것도 없습니다. 그냥 2명 이하라고 하는것 보다 Semi라는 이름이 멋있어서 붙여놨것만 --;; --상민
현재의 FrontPage가 하는 역할이 좀 많다고 생각하는데. (Long Method 에 대해서는 Refactoring이 필요한 법. --a) FrontPage가 하는 역할들에 대해 페이지들을 슬슬 나누는 것은 어떨까 생각중. --석천
난 지금이 딱좋은데 더 확장되면 골치 아플껏 같고.. 혹은 사용용도가 ZeroWiki 와 합쳐 져야 한다고도 생각. project의 직접 접근성을 없애는건 반대이고 Starting Point에 사용용도를 링크하는 것이 최적이라고 생각 --상민
FrontPage가 현재 하고 있는일이 (보여주고 있는 것) ZeroWiki 정의, 사용용도, Starting Point (여기에는 프로젝트 열거도 포함), 제안이야. 이중에서 사용용도와 제안은 새 페이지로 빼는 것이 좋을 것 같은데. 그리고 프로젝트 열거 밑에 Starting Point 밑에 두는 것도 생각. 그리고 또하나는 현재 이 프로젝트 관련 글을 Q&A가 아닌 제안페이지에 두는것이 더 좋겠다는 것. 현재 우선적인 직접접근성을 제공받아야 할 것은 project니까. 그에 대해서는 나도 별 이견 없음. --석천
Q: 현재 Ant 페이지를 작성하고 있는데 Glossary 부분을 만들었고 같은 페이지 내에서 내부링크를 통해 Glossary 내용을 볼 수 있었으면 하는데 이것은 위키에서 할 수 없는지... 답변 바랍니다. ^^
Q: Bioinformatics에 관한 프로젝트를 진행하려고 합니다. 소개와 내용의 재정리를 위해서는 많은 이미지 파일들을 위키에 올려야 될지도 모르겠는데, 위키에서의 이미지 사용은 그렇게 적절하지 않은 것 같습니다. 어떤 방식으로 이를 해결할 수 있을까요?
A: 임의의 웹사이트(예컨대 자신의 홈페이지, 혹은 제로페이지 FTP서버 등)에 화일을 올리고 위키에는 링크만 남기면 자동으로 이미지가 표시됩니다.[[BR]]
Q: 어디에 글을 올려야 될지 고민하던 중 이곳에 글을 올립니다. 위키를 쓰다가 얼마전부터 느끼기 시작한 점인데요. 이것이 문제인지 아닌지는 잘 모르겠습니다. 위키의 Recent Changes를 통해 바뀐 글중 관심있는 글들을 봅니다. 변경되었다고 해서 글을 읽어보지만 쉽게 무엇이 변경되었는지 알아볼 수 없었습니다. 시간이 많이 흐른 뒤에나 읽어보게 되는게 아닌가 생각합니다. 아무튼 제가 느끼기에 제가 읽지 않은 부분을 쉽게 알 수 있으면 편하지 않을까 생각합니다. 이미 안다고 생각한 글을 다시 읽어도 많은 도움이 되겠지만... ^^; 세세한 변화는 눈치채기 힘든듯 합니다.--["Benghun"]
- CppStudy_2002_2 . . . . 27 matches
* C++의 문법도 익히고, 나아가서 사용법, OOP에 대해서 더 친숙 해지기, 다양한 과제를 통한 프로그래밍 경험 쌓기
* 모르는 것에 대해서는 서로 의논하고 서로 배워가는 방식으로 할 예정입니다
|| 미정 ||라스트 정리||수고했음다||
* 드디어 스터디는 시작됩니다...^^ 좀 힘들더래도 자신의 '발전'을 위한 거라 생각하시고 열심히 따라와 주세요
* 다들 첫날 하고 나니 어떠신감요? 힘들더라도 열심히 따라오세요 그럼 세계를 놀라게 하겠습니다...-,-V --재동
* 조언 고맙습니다. 서문만 읽었는데도 제가 상당히 많은 게 부족하다는 걸 느꼈습니다. 기존 진행 방법에도 수정을 해야겠다는 생각이 듭니다. 한편 위 책은 우선은 도서관에 신청을 해두었습니다. -- 재동
* 전에도 이야기 했지만 이번 주는 제가 사정이 있어서 수욜에 합니다. 그리고 시간은 세연이 누나의 의견을 받아 들여 3시로 합니다 난중에 딴 소리하면... 쿨럭쿨럭... 됩니다. 그럼 수욜 3시에 뵈요 ^^;;; --재동
* 형 미안해용.. -_-;; 오늘도 못해서.... 담엔 열심히 할께요..... 이 말은.. 오버고.. 담엔 열심히 하려고 노력해 볼께요. -_-;; ...........(영록)
* 큐 시뮬 전까지 공부 해 오시면 됩니다 그리고 수요일 3시 하는 거 아시죠? 그럼 그때 봐요~~^^ --재동
* 소스 올리고 난 다음 코드 리뷰 해보는지? 사람들이 꽤 중복된 코드를 쓴다던지, UI 부분과 로직 클래스 부분이 너무 같이 붙어있다던지 하는 것 같은데.. 재동 당신의 능력을 보여줘; --["1002"]
* 예 알겠습니다. 제가 조금이라도 낳은 디자인으로 고쳐 보여볼께요. 여기에 부족한 부분이 있음 형도 제꺼에 지적 해주세요 (일명 '은근슬쩍 끌어들이기'...^^;;;) --재동
* 우선은 세연이 누나꺼 부터 제가 고쳐야 될 부분을 고쳐보았습니다. 재니꺼도 곧 고칠수 있는 부분을 고치도록 하겠습니다
영록이 꺼는 올라와야 고치지...-,-;;;; --재동
* ["Refactoring"] 책을 보고 있다면, 이번이 아마 Bad Smells 를 인식할 수 있는 좋은 기회가 될것임. ^^ --["1002"]
* 옷! 마침 코드속의 나쁜 냄세 읽고 있었는데...^^;;; 형 말대로 아주 많이 느끼게 됩니다 특히 세연이 누나꺼에서 '중복된 코드'와 '긴 메소드'가 눈에 띕니다 --재동
* 오늘(8월 1일)부터는 당분간 C++ 진도를 잠시 멈추고 제가 요세 공부하는 리펙토링을 소스에 적용해 보도록 하겠습니다
뭐 저도 공부 시작한 지 얼마 되지는 않았지만 조금이라도(Composing Mathods 정도) 리펙토링을 알고 행하는 게 나중에
프로그래밍을 하는데 큰 도움이 되리라 믿고 하겠습니다 --재동
* 담주 8월 9일(금요일) 5시에 합니다 목요일이 제로페이지 정모이기도 하고 금요일에 ["CppStudy_2002_1"] 팀과 같이
* 이번주는 서로 시간이 딱 엇갈려서 할 수 없이 쉽니다. 숙제는 꼭 하시고 담 스터디 날짜는 이번주내에 공지 하겠습니다 --재동
- ViImproved/설명서 . . . . 27 matches
▶.exrc 파일 설 정 vi가 시작할 때 자동적으로 읽어 들임 vi입력 모드에 쓰이는 모든 명령어와 vi환경 설정인 set 에 대한 정보를 가지고 있다 만약 .exrc파일이 없으면 모든 set값은 default로 설정됨
모드형 모드형 프로그램이란 서로다른 기능을 가진 모드를 가지고 있어다중환경을 지원한다. 예) 모드에 따라 엔터키의 역할도 달라진다
ZZ (=:wq) 파일이 수정된 경우는 그 파일에 쓰고 종료 수정이 없으면 그대로 종료
:q↓ vi종료하고 Unix프롬프트로 이동
:e!↓ 변경을 취소하고 재편집
:e #↓ 직전에 편집하고 있던 file을 편집
:e! #↓ 변경 점을 버리고 직전에 편집한 file을 편집
:!cmd↓ 명령어 cmd를 실행하고 복귀
$vi -r 화일명 시스템이 불시에 꺼졌거나(인터럽 발생시), 저장을 하지 않고 나왔을 때 파일의 변경 내용을 복구함
^L 현화면을 지우고 다시 출력(refresh)
^R ^L가 →key에 있는 경우 화면을 소거하고 refesh
ESC 삽입을 종료하고 명령어 모드로 복귀
$vi -r <화일> <화일>은 문제가 생기기전의 화일이름 *시스템이 불시에 꺼졌거나, 저장하지 않고 나왔을때*
:/^M(^V+^M) 컨트롤 문자(^)를 화면에 나타낼 때는 먼저 ^V를 누른 다음 입력하고자 하는 컨트롤 문자를 눌러야 한다
자르기(yank) "a5dd 현재 줄에서 부터 5줄삭제하고, a라는 버퍼에 저장함
"np n번 전에 사용한 삭제 명령이나, yank명령에 의해 기록된 버퍼의 내용을 가지고 붙이기 수행
^1 화면을 소거하고 재출력
]] 다음 section ^h 삽입모드에서 backspace :x 쓰고 나가기
[[ 전 section i 현재 위치 전에 삽입 :wq 쓰고 나가기
spacebar 다음문자 L 화면의 마지막 줄로 이동 :e <file> vi를 나가지 않고<file>편집
- Gof/Singleton . . . . 26 matches
어떻게 우리는 클래스로 하여금 단 하나의 인스턴스만을 가지도록 보장해줄 수 있을까? 그리고 그러한 인스턴스를 쉽게 접근하게 할 수 있을 것인가? global 변수로 둘 경우 어디서든지 접근가능하겠지만, global 변수는 단일 인스턴스만을 가지도록 할 수 없다.
* 클래스가 정확히 오직 하나의 인스턴스만이 존재해야 할 때. 그리고 잘 알려진 엑세스 방법으로 어디서든지 접근 할 수 있어야 한다.
3. 명령어와 표현을 확장시킬 수 있다. Singleton class는 subclass될 수 있고, 이 확장된 클래스의 인스턴스를 가지고 어플리케이션을 설정하는 것은 쉽다. run-time중에 필요한 경우에도 가능하다.
SingletonPattern 을 사용할 때 고려해야 할 사항들이 있다.
1. unique instance임을 보증하는 것. SingletonPattern의 경우도 일반 클래스와 마찬가지로 인스턴스를 생성하는 방법은 같다. 하지만 클래스는 늘 단일 인스턴스가 유지되도록 프로그래밍된다. 이를 구현하는 일반적인 방법은 인스턴스를 만드는 operation을 class operations으로 두는 것이다. (static member function이거나 class method) 이 operation은 unique instance를 가지고 있는 변수에 접근하며 이때 이 변수의 값 (인스턴스)를 리턴하기 전에 이 변수가 unique instance로 초기화 되어지는 것을 보장한다. 이러한 접근은 singleton이 처음 사용되어지 전에 만들어지고 초기화됨으로서 보장된다.
클래스를 사용하는 Client는 singleton을 Instance operation을 통해 접근한다. _instance 는 0로 초기화되고, static member function 인 Instance는 단일 인스턴스 _Instance를 리턴한다. 만일 _instance가 0인 경우 unique instance로 초기화시키면서 리턴한다. Instance는 lazy-initalization을 이용한다. (Instance operation이 최초로 호출되어전까지는 리턴할 unique instance는 생성되지 않는다.)
생성자가 protected 임을 주목하라. client 가 직접 Singleton을 인스턴스화 하려고 하면 compile-time시 에러를 발새할 것이다. 생성자를 protected 로 둠으로서 늘 단일 인스턴스로 만들어지도록 보증해준다.
C++ 구현에 대해서는 생각해야 할 것이 더 있다. singleton 을 global이나 static 객체로 두고 난 뒤 자동 초기화되도록 놔두는 것으로 충분하지 않다. 이에 대해서는 3가지 이유가 있다.
* (a) static 객체의 유일한 인스턴스가 선언되어질 것이라고 보장할 수 없다.
* (b) 모든 singleton들이 static initialization time 대 인스턴스되기 위한 충분한 정보를 가지고 있지 않을수도 있다. singleton은 프로그램이 실행될 때 그러한 정보를 얻을 수 있다.
2. Singleton class를 subclassing 하기 관련. 주된 주제는 클라이언트가 singleton 의 subclass를 이용할 수 있도록 subclass들의 unique instance를 설정하는 부분에 있다. 필수적으로, singleton 인스턴스를 참조하는 변수는 반드시 subclass의 인스턴스로 초기화되어져야 한다. 가장 단순한 기술은 Singleton의 Instance operation에 사용하기 원하는 singleton을 정해놓는 것이다. Sample Code에는 환경변수들을 가지고 이 기술을 어떻게 구현하는지 보여준다.
이러한 link-approach 방법은 link-time때 singleton class 의 선택을 고정시켜버리므로, run-time시의 singleton class의 선택을 힘들게 한다. subclass를 선택하기 위한 조건문들 (switch-case 등등)은 프로그램을 더 유연하게 할 수 있지만, 그것 또한 이용가능한 singleton class들을 묶어버리게 된다. 이 두가지의 방법 다 그다지 유연한 방법은 아니다.
Register operation은 주어진 string name으로 Singleton instance를 등록한다. registry를 단순화시키기 위해 우리는 NameSingletonPair 객체의 리스트에 instance를 저장할 것이다. 각 NameSingletonPair는 name과 instance를 mapping한다. Lookup operation은 주어진 이름을 가지고 singleton을 찾는다. 우리는 다음의 코드에서 environment variable이 원하는 singleton의 이름을 명시하고 있음을 생각할 수 있다.
미로를 만드는 MazeFactory 클래스를 정의했다고 하자. MazeFactory 는 미로의 각각 다른 부분들을 만드는 interface를 정의한다. subclass들은 더 특별화된 product class들의 instance들을 리턴하기 위한 opeation들을 재정의할 수 있다. 예를 들면 BombedWall 객체는 일반적인 Wall객체를 대신한다.
일단 단순하게, MazeFactory의 subclassing이 필요없다고 가정하자. (잠시 후 subclassing과 관련, 대안적인 방법에 대해 고려해 볼 것이다.) C++ 에서는 static operation인 Instance와 unique instance를 참조하는 static member인 _instance 를 추가함으로서 Singleton 클래스를 구현할 수 있다. 위의 Implementation에서도 언급했듯이 반드시 생성자는 protected로 둠으로서 우발적으로 하나이상의 인스턴스가 생성되는 것을 막는다.
자, 이제 MazeFactory의 subclassing에 대해 생각해보자. MazeFactory의 subclass가 존재할 경우, application은 반드시 사용할 singleton을 결정해야 한다. 여기서는 환경변수를 통해 maze의 종류를 선택하고, 환경변수값에 기반하여 적합한 MazeFactory subclass를 인스턴스화하는 코드를 덧붙일 것이다. Instance operation은 이러한 코드를 구현할 좋은 장소이다. 왜냐하면 Instance operation은 MazeFactory를 인스턴스하는 operation이기 때문이다.
Smalltalk-80[Par90] 의 SingletonPattern의 예는 ChangeSet current라는 코드에 대한 change들 집합들이다. 더 적합한 예제로는 클래스들과 그들의 '''metaclass''' 간의 관계이다. metaclass는 클래스의 클래스로, 각 metaclass는 하나의 인스턴스를 가진다. metaclass들은 이름을 가지지 않지만 (그들의 단일인스턴스를 통한 간접적인 방법을 ㅔㅚ하고), 그들의 단일 인스턴스를 유지하며 일반적으로 다른 클라이언트에 의해 생성되지 않는다.
InterViews user interface toolkit[LCI+92]는 toolkit의 Session과 WidgetKit 클래스의 unique instance에 접근하지 위해 SingletonPattern을 이용한다. Session은 application의 메인 이벤트를 dispatch하는 루프를 정의하고 사용자 스타일관련 데이터베이스를 저장하고, 하나나 그 이상의 물리적 display 에 대한 연결들(connections)을 관리한다. WidgetKit은 user interface widgets의 look and feel을 정의한다. WidgetKit::instance () operation은 Session 에서 정의된 환경변수에 기반하여 특정 WidgetKit 의 subclass를 결정한다. Session의 비슷한 operation은 지원하는 display가 monochrome display인지 color display인지 결정하고 이에 따라서 singleton 인 Session instance를 설정한다.
error C2248: 'CNSingleton::CNSingleton' : cannot access private member declared in class 'CNSingleton' 라고 에러가 발생합니다.
만약 저 코드를 제대로 수정하려 한다면 어떻게 해야 되나요? 참고로 저는 http://www.javaworld.com/javaworld/javaqa/2001-11/01-qa-1102-singleton.html에 있는 자바소스를 cpp로 포팅했습니다. -- FredFrith
- Java Study2003/첫번째과제/방선희 . . . . 26 matches
* 공고한 security
애플릿은 브라우저에 플러그인 형식으로 실행될 수 있는 자바 프로그램을 말하고 애플리케이션은 브라우저가 아닌 순수 자바 프로그램들을 말합니다. 굳이 따지자면 서블릿, 빈즈, JSP 모두 애플리케이션에 해당하겠죠.
* 2. 서블릿이나 JSP 는 J2EE의 구성원들로서 서버사이드 스크립트라고 합니다. JSP가 만들어진 이유가 뭐냐하면, 서블릿의 문제점을 해결하기 위해서라고나 할까... 웹 프로그래밍이란게 본질적으로 웹디자이너와의 협력이 불가피한데 서블릿의 경우에는 DISPLAY 부분을 수정하기 위해서 웹디자이너가 접근하기 어렵다는 단점이 있죠.. 이때문에 JSP가 만들어졌다고 알고 있습니다. JSP라는 파일은 웹 디자이너가 페이지를 수정하기 편하게 되어있다는게 장점이죠. JSP가 컴파일되면 서블릿이 됩니다.(이게 전부임...) 그리고 서블릿이 실행되면 실제 HTML 페이지가 클라이언트에게 전송되는 것입니다.
빈즈에 대해서 이야기 하자면 웹 서비스라는 큰 테두리 내에서 이야기를 해야 하는데, 간단하게 말하자면 빈즈라는 것이 만들어진 이유는 프로그램의 DISPLAY 부분과 LOGIC 부분을 분리해서 좀 더 확장성있고 유연한 시스템을 개발하고자 하는 취지에서 탄생한 것입니다.(언뜻 이해가 안될 수도 있음...)
"추상화" 라는 것과 밀접한 관련이 있습니다. 우리가 윈도우 운영체제를 쓸때 C 드라이브 D 드라이브를 클릭만 하면 그 안의 파일들이 다 보이죠. 하지만 실제 컴퓨터 안에서 뭐가 어떻게 돌아가는지는 알 필요가 없습니다. 그저 아이콘이 보이면 클릭해서 그 안의 파일들을 보고 열고 삭제하거나 수정하면 되는거죠.
eclipse 나 Editplus의 사용법을 제대로 알고 다시 코드를 작성해보겠습니다.
예를 들어 Java로 인사시스템을 개발하여 운영하고 있다가, 새로운 급여 시스템을 개발하고자 한다고 가정하자. 이때 Java는 다른 언어에 비해 기존 시스템과 쉽게 연동가능하며, 혹 기존 시스템이 Java가 아니더라도 그 일은 가능하다.
기존에 Sun OS에서 Java로 개발한 인사시스템을 Windows NT로 이관하고 싶다. 이때 프로그램 수정없이 가능할까? Windows NT를 지원하는 JDK가 있다면 가능하다. 그러고 Windows NT를 지원하는 JDK는 있다.
* Java를 이용해 재사용 가능한 object를 만들 수 있다. 이 object는 향후 다른 프로그램내에서 그냥 재사용 가능하다. 강력한 Java의 재사용성은 Java가 가지고 있는 장점 중에서도 가장큰 장점이라고 말할 수 있다.
예를 들어 A라는 회사에서 인사 시스템을 Java로 개발하여 사용하고 있다고 가정하자. 다른 B라는 회사에서도 같은 인사 시스템을 개발하고자 한다면, B회사는 A회사의 인사 시스템 중 승진과 관련된 일부분을 가져와 그대로 사용할 수 있다.
-- 자바의 장점에 포함된 특징들이 다른 언어에 비해 독자적이고 두드러지기 때문인 것 같습니다.
* 자바는 기계어 코드를 직접 실행시키는 것이 아니고, 플랫폼 독립적인 중간 코드 형태인 바이트코드를 자바 가상머신이 해석하여 실행시키는 인터프리터 방식을 취하고 있으므로 느린 수행 시간을 갖습니다. 일반적으로 C보다 평균 8배 정도 느리고, 최대 20배까지 느립니다.
- STL/vector/CookBook . . . . 26 matches
* typedef으로 시작하는 부분부터 보자. 일단 반복자라는 개념을 알아야 되는데, 사실은 나도 잘 모른다.--; 처음 배울땐 그냥 일종의 포인터라는 개념으로 보면 된다. vector<int>::iterator 하면 int형 vector에 저장되어 있는 값을 순회하기 위한 반복자이다. 비슷하게 vector<Object>>::iterator 하면 Object형 vector에 저장되어 있는 값을 순회하기 위한 반복자겠지 뭐--; 간단하게 줄여쓸라고 typedef해주는 것이다. 하기 싫으면 안해줘도 된다.--;
* 다음엔 vector<int> v~~ 이부분을 보자. vector<T> 에는 생성자가 여럿 있다. 그 중의 하나로, 배열을 복사하는 생성자를 써보자. 그냥 쓰는법만 보자. 단순히 배열 복사하는 거다. C++ 공부했다면 성안당 10장인가 11장에 복사 생성자라고 나올것이다. 그거다.--; 그냥 2번 원소에서 5번원소까지 복사하고 싶다. 하면 vector<int> v(&ar[2], &ar[6]) 이렇게 하면 되겠지?(어째 좀 거만해 보인다.--;) 마지막은 개구간이라는걸 명심하기 바란다.
* for 부분을 보면 앞에서 typedef 해준 VIIT 형으로 순회하고 있는것을 볼수 있다. vector<T>의 멤버에는 열라 많은 멤버함수가 있다. 그중에 begin() 은 맨 처음 위치를 가르키는 반복자를 리턴해준다. 당연히 end()는 맨 끝 위치를 가르키는 반복자를 리턴해주는 거라고 생각하겠지만 아니다.--; 정확하게는 '맨 끝위치를 가르키는 부분에서 한 칸 더간 반복자를 리턴'해주는 거다. 왜 그렇게 만들었는지는 나한테 묻지 말라. 아까 반복자는 포인터라고 생각하라 했다. 역시 그 포인터가 가르키는 값을 보려면 당연히 앞에 * 을 붙여야겠지.
* 원인은 그거다. 정적 배열은 컴파일 시에 크기를 잡는다. 입력받는 부분은 컴파일 끝나고 실행할때 크기를 입력받는다. 컴파일러는 당연히 크기를 알수 없으니 에러가 나게된다. 고쳐 보자.
* 우리가 여태까지 배운 거만 써보면 이렇게 고칠수 있다. 그 유명-_-한 동적배열이다.--; 아.. delete [] 저거 보기 싫지 않은가? c와 c++의 고질적인 문제점이 바로 저거다. 메모리 관리를 프로그래머가 해줘야 한다는거.. 자바 같은건 지가 알아서 delete 해주지만.. c나 c++에서 delete 안해주면.. X되는 꼴을 볼수 있다. (본인이 한번 경험해 봤다.) 그래서 잘 디자인된 클래스는 클래스 내에서 알아서 없애줘야 한다. 바로 vector를 쓰면 저 짓을 안해줘도 된다. 또 고쳐보자.
* 파스칼 삼각형 숙제할때 데브피아에서 쓰는법 배워서 열심히 쓰다가 데블스 캠프때 재동이가 퍼뜨렸다. 1학기 내내 편해서 좋다고 써댔는데.. 지금 보면 내가 저걸 왜 쓰고 있었을까 하는 생각이 든다.
* 다음 예제는 pointer로 자료를 넣고, 지우는 예제이다.
// 순회하면서 showMember 메소드 호출하고
= 하고 싶은 말 =
* 이게 제가 알고 있는 STL에 대한 겁니다. 나머지나 더 자세히 알고 싶으신분은 책을 보시든지..--; MSDN을 참고하세요. 근데 이정도만 알아도.. 왠만한건 다 합니다. C++만든 그 이름 어려운 사람 BJar... Str...(--;) 이 사람이 쓰고 싶은 기능만 쓰랬거든요--; 자바가 쓰기는 쉬워도 역시 난 c++이 좋다.
* 노파심에서 말하는 건데.. 함수로 객체를 넘길때는 꼭 참조! 참조! 입니다. 값이 안 바뀌면 꼭 const 써주시구여. 참조 안 쓰고 값 쓰면 어떻게 되는지 이펙티브 C++에 잘 나와 있습니다.(책 선전 절대 아님) 복사 생성자를 10번 넘게 호출한다는 걸로 기억함.
* 구조체에서 함수역시 가능하고, constructor, destructor역시 가능합니다. 다만 class와 차이점은 상속이 안되고, 내부 필드들이 public으로 되어 있습니다. 상속이 안되서 파생하는 분제들에 관해서는 학교 C++교제 상속 부분과 virtual 함수 관련 부분의 동적 바인딩 부분을 참고 하시기 바람니다.--["상민"]
* 글구.. 요것도 별거 아닌 팁이긴 한데.. i++과 ++i의 차이점은 다 아시죠? 근데 카운트하거나 루프를 돌때는 차이가 없다고 봐도 좋습니다. ++i가 i++보다 성능이 좋다고 하네요.(see also ["i++VS++i"] 이건 뭐..~ 맘대로 하세요^^
- [Lovely]boy^_^/Arcanoid . . . . 26 matches
* 아무리 생각해도 배열의 행과 열은 너무 헷갈린다. 한동안 그림이 90도회전되서 나오더니, 저거 고치니까 되는군.
* 소스에 이것저것 막 넣다 보니 지금 코드가 상당히 지저분해졌다. 중복을 최대한 없애는 방향으로 해놔서 중복은 별루 없지만, 한 메소드가 너무 길고, 클래스 별 역할 분담이 제대로 이뤄지지 않은것 같다. 모든 충돌루틴이 다 CArcaBall에 집중되어 있다.
* ... 생각해보니 데이터 통신 공부를 안하고 있었다. 제길--; 공부하쟈
* 컨테이너에 포인터 안 넣을라고 복사 생성자, 대입 연산자 이런것도 만들어야 했다..--;
* 점점 배드볼화 되가고 있다.--;
* 매번 느끼는 거지만 C++은 리팩토링하기가 정말 힘든것 같다. 이거 고치면, 헤더도 고쳐야 하고 ::앞에것도 고쳐줘야 하고.. 아 짜증나.--;
* 제출후 발표 그리고 끝
== 고민중 ==
* 그러자고 이동량을 늘리자니, 충돌처리가 애매해지고 부드럽지도 않게 되더란 말이다.
//해주고
* 고로 요지는.. 아--; 왜 이렇게 전달이 안돼지. 저렇게 포인터 만들었다가 그리다가 다시 선택하다가 하는 이유를 잘 모르겠다는..^^;
* 전자의 코드에 억매이는거 같은데, 전자의 코드의 전제가 여러명이 동시에 그릴려고 달려들때의 상황으로 생각하자. gdi에서는 event driven 이기 때문에 모든 책의 예제들이 항상 그런 경우를 상정하고 바로 이전의 객체로 그리기 상태로의 복귀를 전제로 하여 작성되어 있다. 하지만, 네가 그리고자 하는 영역이야 계속 하나로 선택되어 있어도 아무 상관 없는걸. CPen 이 어디로 도망가는 것도 아니고 말이지.
나는 좀더 욕심을 부려서, pDC 까지 보관하여 {{{~cpp GetDC}}}로 얻지도 않고 그릴려고 시도 했는데, 해봐 결과를 알수 있을꺼야. pDC는 끊임없이 변화를 시도하는 녀석이라 상태 유지가 되지 않더군. 바로 전까지 가진 pDC는 옛날 녀석이라 이거지, 결론으로 네가 의도하는 대로 상태 저장이 가능한 GDI Object를 그렇게 쓰는거 부담없다. --["neocoin"]
여담으로, 전에 MFCStudy 로 할때 각도 계산까지 넣었다면 좋을뻔 했지? ^^;; 하지만 아마 그때 넣었으면 더 시간이 걸렸을꺼 같아서;; 어이 인수 과거 소스를 나에게 넘겨 쿨럭. 농담이고, 아 진작 소스 겉어 둘껄 ^^;; --["neocoin"]
흑 ㅠ.ㅠ 예전 소스가 있었다면 제가 이거 만들고 있겠어요?--; 고스트 삽질로 싸그리 날렸더니만, 생각도 못한 ZP 자료실에 실행파일만 덩그라니 남아있을줄은..--;
* 블록이 깨졌을때 나오는 아이템을 20개 먹으면 미사일이 하나 생긴다. Ctrl을 누르면 미사일 발사. 지나가는 코스에 있는 블록들의 내구도 1씩 감소.(미사일이 이상하게 생겼다. 고쳐야겠다.)
- 새싹스터디2006/의견 . . . . 26 matches
새로운 회원을 모집하고 올해도 [새싹스터디2006]를 시작했습니다. 아마 스터디를 진행하는 반별로 다시 하위페이지를 만들고 나름대로 진행해 나가겠죠. 숙제와 소스를 올리는 하위페이지가 다시 생길 것입니다. 여기서 한 가지 고민이 생겼습니다.
따라서 지금 위키 구조를 잘 이용해 필요한 정보는 제로페이지 위키에, 각 소그룹으로 진행하는 내용은 개인 위키에 정리하면 좋겠습니다. 나중에 정리할 필요 없는 시간 약속, 출석 체크, 메시지 전달 들을 개인 위키에서 진행하면 되겠죠. 단 숙제를 내면 반 이름의 하위페이지를 만들기보다, [EightQueenProblem]처럼 정보를 모을 수 있을 것입니다. 이로써 현재 미약한 개인 위키 사용이 늘어날 것이고, 덤으로 사용자가 위키 카페 구조에 익숙해지는 효과도 얻을 것 같습니다. -- [Leonardong]
물론 그렇게 할 겁니다. .[EightQueenProblem] 뿐만 아니라 여러 문제분류에서 모든 문제들 페이지 처럼 작성하는것이 도움이 된다고 생각하기때문에 생각도 했습니다. [LittleAOI] 문제를 하나씩 풀어보는 방식을 취하는것도 좋다고 생각합니다. 아직 이르지 만요.. (제 반은 일주일 후에나 할 수 있을거 같습니다)
여기 페이지도 나름대로 필요하다고 생각합니다. 각 팀마다 06학번 신입생의 실력이 다른 것 처럼 각 팀은 각 나름대로 진행해야 할 것입니다. 하위 페이지에서 기록이 단순히 '재학생을 위해서' 가 아닌 무슨 문제를 풀었고, 언제 만날건지, 어떤 문제를 풀건지 등 위키에 내용으로 남겨두는 것이 좋을것 같습니다. 후에 또 참고할 수 있도 있고. 지금 많은 class의 진척도도 볼 수 있고요.
이번 2006년은 신입생을 위주로 돌아가는 건 절대 아니라는건 알지않습니까? 신입생 C스터디 이외에도 지금 프로젝트가 다양하게 있습니다. 재학생은 재학생 프로젝트를 해 나갈 것이고 우리는 '자원' 하에서 신입생의 C 언어 공부에 자그나마 도움을 주자고 하는 것입니다. 여기서 조심스럽게 바라봐야 할 것은, '얼마나 치중할까' 인데.그건 선생님 마음 아닌가요? 여기서 잘 따라와 주는 신입생이 많기를.. 간곡히 바랍니다.
신입생은 신입생이기 때문에 환영받아야하고 1년이 지나면 저처럼 신입생이 아니게 되겠지요.- -- [허아영]
위키에 기록을 남기되 개인위키를 활용하자는 말입니다. [stuck]같은 페이지에서 언제 만날지, 오늘은 누가 나왔는지까지 후에 참고할 필요가 없다고 생각합니다. 또 [빵페이지/구구단], [복/숙제제출] 같이 페이지 아래 실습한 내용이 분산되지 않고, 각 반의 숙제 페이지는 되도록 문제에 따라 한자리에 정리하면 좋겠습니다. 진행 상황은 페이지를 만들지 않아도 링크를 걸면 되겠죠. -- [Leonardong]
위키의 [분류분류]나 [지도분류]가 잘 정리될 수 있다면 아무래도 상관없습니다. 이미 여러 프로젝트, 스터디 페이지가 제로페이지 위키에 존재하고 [프로젝트지도]나 [2004년활동지도]같은 곳에 링크가 걸려 있습니다. 개별 스터디 그룹의 메인페이지를 개인 위키에서 유지하고, 숙제등은 제로페이지 위키에 올리고 메인페이지에서 링크를 걸 생각을 해 보았습니다.
예를 들어 [너구리]라는 스터디 팀이 있고, 팀원이 너굴아빠, 너굴엄마라고 합시다. 너굴엄마가 자신의 개인 위키에 [너구리]라는 메인 페이지를 엽니다. 너굴아빠는 [너구리]페이지를 자기 카페에 가져오기만 하면 되죠. 그래서 스터디 공지나 이런저런 이야기는 [너구리]페이지에서 해결합니다. 그리고 [나무기어오르기]라는 숙제가 있다면, 제로페이지 위키에 [나무기어오르기/너굴아빠], [나무기어오르기/너굴엄마] 페이지를 만들어서 해답을 올립니다. 자신이 만든 페이지이므로 [나무기어오르기/너굴아빠]페이지는 자동으로 너굴아빠의 개인위키에, [나무기어오르기/너굴엄마]페이지는 자동으로 너굴엄마의 개인위키에 생깁니다.
사실 [너구리]페이지는 제로페이지 위키에 있어도 그만입니다. 현재 진행중인 스터디를 모두 링크하는데 [너구리]페이지가 너굴아빠 개인위키에 있든 어디 있든 상관없지요. 다만 최근바뀐글을 생각하면 일장일단이 있습니다. [너구리]페이지가 제로페이지 위키에 있으면 현재 진행중인 스터디를 모든 사람이 한 곳에서 볼 수 있을 것이고, 따라서 다른 스터디도 돌아볼 기회가 많아지겠죠. 반대로 [너구리]페이지가 개인 위키에 있으면 자신의 위키홈에 가야지 볼 수 있기 때문에, 개인 위키 사용을 활발히 만들 겁니다.
어느쪽이 되었든 하위페이지는 신중히 만들어야 합니다. 하위페이지는 순간 만들기 쉽지만 갈수록 구조를 바꾸기가 어려워집니다. '''숙제'''로 제로페이지 위키에 있는 페이지를 검색해 보세요. 내용으로 정리할 수 있는 페이지가 있지만, 손보려면 드는 시간이 적지 않을 겁니다. 일일이 페이지를 열어보기 전까지는 그 안에 어떤 내용이 있는지 알 수도 없고요. 또 하위페이지는 링크를 걸기가 더 어렵습니다. 상위 페이지 외에는 그 하위 페이지의 역링크 개수는 0에 가깝습니다. 이를테면 [5인용C++스터디/멀티쓰레드]는 [5인용C++스터디]에서만 링크하고 있습니다. 이러한 현상은 하위의 하위 페이지로 들어가면 더 심해질 것입니다. -- [Leonardong]
- 정모/2013.7.29 . . . . 26 matches
* 우수 동아리 선발 이유는, 제로페이지의 운영 방식이 매우 체계적이기 때문이라고 하네요.
* 위키 등을 통해 스터디/프로젝트나 정모 등의 내용을 공유하고, 후기와 의견을 다는 피드백이 이루어지는 것에 대해 많은 관심을 받았습니다. - [김민재]
* 기존 스터디 회식비 지원은 한 달 1회에 한하여 회식비를 지원해 주고 있음.
* 제안은, 한 달 1회 지원이 아닌, 한 달 한도 금액(기존처럼 인원 수로 책정) 내에서 사용하고 월말에 정산하는 방식으로 개정하는 것
== 중앙대학교 GDG 설립 경과 보고 ==
* 중앙대학교의 GDG를 설립하는 것을 골자로 회장이 담당 부장님과 이야기를 하고 있습니다.
* 현재 ZeroPage에서 GDG를 소모임 형태로 만들 것인지, 아니면 ZeroPage 자체가 중앙대 GDG가 될 것인지에 대한 의견을 들어보고자 합니다. (위키에 의견을 달아주세요.)
* 제 입장에서는 중앙대 GDG와 ZeroPage는 분리를 했으면 좋겠네요. 현재 ZP만 봐도 다양한 혜택을 받고 있는 만큼 또한 다양한 책임을 지고 있다고 생각하는데, 여기에서 GDG까지 하게 되면 역시 추가적으로 해야 하는 일이 늘지 않을까 생각합니다. 사실 해야 하는 일이 느는 것 자체가 문제라기 보다는 나중에 정말로 하고 싶은 일이 생겼을 때 현재 지고 있는 짐(책임)이 무거워서 몸을 움직일 수 없다면 문제가 아닐까 하는 염려 때문이네요. - [서민관]
* 저도.. ZP가 관여하고 소속되는 곳이 많을수록 움직이기 어려워지니까요. 또, 하나를 더할때마다 의무의 측면이 심하게 가중되는데, 그만한 이점을 얻기는 힘들거같다고 생각되는.. 알고리즘분야만봐도 사실 ZP가 들고갈 수 있는 영역은 아닌거같다는 느낌이..(여기에는 우리과의 동아리 비활성화가 가장 큰 문제지만.) 차라리 우리과에 다른 동아리가 생기는데 거기가 해당 활동을 할 것이면 좋을텐데.. -[김태진]
* 혹시 괜찮으면 현재 회장님이 왜 ZP == 중앙대 GDG를 선호하는지 이유를 좀 들었으면 좋겠네요. 디메리트(라고 해야 하나)는 위에서 언급한 부분이 있는데, 그에 대한 메리트가 많이 있을지 좀 궁금합니다. - [서민관]
* GDG는 단순히 금전적인 혜택보다도, 국내외 결성되어있는 개발자그룹 구성원들과 좀 더 많이 만나고 활동할 수 있는 기회를 주기 때문입니다. 좀 더 많은 사람들과 만나고 교류할 수 있도록 하고자 합니다.
* 제로페이지 내부에서 진행되고 있는 스터디를, 그 분야에 특화된 동아리와 같이 진행하거나, 해당 동아리에서 진행하는 세미나에 참여하는 등의 교류 활동을 하고자 합니다.
* 현재 보안 동아리, 게임 개발 동아리 운영진과 이야기를 했으며, 긍정적으로 보고 있습니다.
== PC실 대청소 예고 ==
* 제로페이지에서는 6층 PC실 관리를 맡고 있습니다.
== 7월 회고 ==
- 프로그래밍잔치/ErrorMessage . . . . 26 matches
* 고객: 유상욱, 김기웅 (02)
* 고문: 강석천
* 처음에 개발자들이라고 할수 있는 01들이 고객이라고 할수 있는 02들에게 모종의 압력을 넣었지만, 어떻게 해서 전자수첩을 하게 되었다.
* 과방에서 샌드위치를 먹으며 어떤 기능을 넣을까 고민
* 올라와서 언어를 정했다. 공통으로 다 아는 언어는 C++, GUI로 할것이므로 MFC가 낙찰되었다. 다이얼로그 가지고 놀던중 달력이 보인다.--; 달력 없애기로 함. 시계도 없애기로 함
* 1차 정리 시간 가까워질 무렵, 우리는 좌절을 느꼈다. MFC 그나마 좀 해본 인수군과 창섭군이 MFC에서 다뤄본건 다이얼로그 박스에 비트맵 뿌리는것 말곤 없었던 것이다.--; 그래서 다같이 어설픈 언어로 하느니, MFC로 하는 GUI보다는 JAVA로 하는 GUI에 익숙한 인수군이 자바로 하자고 운을 뜸. 창섭군 적극-_-동의. 그래서 자바로 바꿨음. 한 2시간 날렸다.
* 인수군 역시 자바 오랜만에 써본다. 이클립스 써본지 이틀 되었다. 계속 삑사리 낸다. 프레임 안나오고, 어쨌든 겨우겨우 생각해내고 도큐먼트 찾아가면서 메인프레임과 계산기 대충 완성(되도록 많은것을 구현하기 위해 예외처리, 복잡한 연산은 하지 않고, 그냥 4칙연산(소숫점무시--;)과, 클리어 정도만 구현). 도중에 상민이형이 편한 셋팅을 해줘서 그나마 편하게 코딩, 하다가 게임 없앰--;, 상욱이가 한다고 달력 부활
* 같은 시간, 창섭이와 상욱이는 "Hello World" 삑사리 내고 있었다. 컴파일 하면 클래스가 없댄다. 이래저래 암울한 우리 조의 분위기를 느낄 수 있었다.
* 그러다가 인수군과 상욱이는 커피 마시고 오고, 어쩌다 보니까 팀이 바뀌었다. 나도 모르는 새에--; 은지누나+창섭군, 인수군+기웅, 상욱 이렇게 나뉘었다. 은지누나랑 창섭군은 전화번호부를 계속 만들기 시작했고, 인수군과 기웅은 레이아웃 잡으면서, 전자수첩 비슷-_-하게 만들어 나갔다. 상욱이는 자바는 익숙하지 않다고 일단 c로 만능달력 만들겠다고 시작.
* 끝나갈 무렵, 합칠떄가 왔다. 창섭군과 은지 누나가 한걸 가져와서 씌울라고 보니..(처음에는 쉬울줄 알았따. 내 메인 프레임에서 버튼을 누르면 창섭군과 은지 누나가 만든 전화번호부 프레임을 띄울 예정이었다.) 문제가 생겼다. 내껀 스윙이고, 창섭이네꺼는 AWT다.--; 스윙과 AWT 같이 쓰지 말라고 하는 말을 너무 많이 봐서.. 스윙으로 고치기 시작했다. ... shit. 함수가 다르자나.--; 이러면서 어떻게 어떻게 고치고 보니--; 메뉴가 가운데 달렸다. 석천이형의 도움을 받아서, 메뉴를 제 위치에 나오게 했다.
* 다 끝났다. 상욱이가 한 만능달력을 넣으려고 했지만, 시간 없어서 못했다. 하다가 SUCCESS팀 하는거 보고 생각난거, 우리 달력을 클릭하면 스케줄러가 뜰수 있게--; 실제로도 이것까지 해놨다. 날짜 클릭하면 창 하나 나오게.. 나중에 파일로 저장할수 있는 그런걸 해야겠다.
- ProgrammingContest . . . . 25 matches
나이나 학력 제한이 전혀 없습니다(Open경우). 팀은 세명까지 가능하고, 혼자서도 참가 가능합니다. 사용 가능 언어는 Java, C++, Pascal, Python 등 입니다. 제한 조건은 한 팀은 프로그램 개발을 위해서는 하나의 컴퓨터만 사용해야 한다는 것입니다. 이번 금요일(2002/5/10)에 한국 시간으로는 오후 9시부터 5시간 동안입니다. 온라인(이메일)으로 진행합니다. (see also .http://ipsc.ksp.sk/rules.php )
''저랑 정직이 그리고 희록이형 입니다. --구근''
''저기 학교 이름 못 바꾸나요? 지금 보니 Chung Ang 이라고 제대로 써진건 하나 던데여.. 나머지는 Chang Ang 또는 Choong Ang 이던데여.. 2~3개 팀이여.. --상협''
''Registeration 에서 Team Identifier String 받은거 입력하고 고치면 됨. --석천''
만약 문제 이해 시간을 포함 (혼자서) 40분 이내에 R1과 R2 모두에 대해 정답을 구했다면 (2000년도 본선문제였습니다. 같은 사이트 Problem Archive에 정답이 있습니다) 아마 10위권 이내에 들 실력이라고 사료됩니다. 아마 EightQueenProblem을 (사전 정보 없이) 한 시간 안에 푼 사람이라면 10위권 안에 충분히 들 수 있을 것 같습니다.
만약 자신이 K-In-A-Row를 한 시간 이상 걸려도 풀지 못했다면 왜 그랬을까 이유를 생각해 보고, 무엇을 바꾸어(보통 완전히 뒤집는 NoSmok:역발상 으로, 전혀 반대의 "極"을 시도) 다시 해보면 개선이 될지 생각해 보고, 다시 한번 "전혀 새로운 접근법"으로 풀어보세요. (see also DoItAgainToLearn) 여기서 새로운 접근법이란 단순히 "다른 알고리즘"을 의미하진 않습니다. 그냥 내키는 대로 프로그래밍을 했다면, 종이에 의사코드(pseudo-code)를 쓴 후에 프로그래밍을 해보고, 수작업 테스팅을 했다면 자동 테스팅을 해보고, TDD를 했다면 TDD 없이 해보시고(만약 하지 않았다면 TDD를 하면서 해보시고), 할 일을 계획하지 않았다면 할 일을 미리 써놓고 하나씩 빨간줄로 지워나가면서 프로그래밍 해보세요. 무엇을 배웠습니까? 당신이 이 작업을 30분 이내에 끝내려면 어떤 방법들을 취하고, 또 버려야 할까요?
만약 팀을 짠다면 두사람은 PairProgramming으로 코딩을 하고(이 때 Interactive Shell이 지원되는 인터프리터식 언어라면 엄청난 플러스가 될 것임), 나머지 하나는 다른 문제를 읽고 이해하고, (가능하면 단순한) 알고리즘을 생각하고 SpikeSolution을 종이 위에서 실험한 뒤에 현재 커플이 완료를 하면 그 중 한 명과 Pair Switch를 하고 기존에 코딩을 하던 친구 중 하나는 혼자 다른 문제를 읽고 실험을 하는 역할을 맡으면 효율적일 겁니다. 즉, 두 명의 코더와 한 명의 실험자로 이루어지되 지속적으로 짝 바꾸기를 하는 것이죠.
또, Easy Input Set은 직접 수작업으로 풀고 그걸 일종의 테스트 데이타로 이용해서, Difficult Input Set을 풀 프로그램을 TDD로 작성해 나가면 역시 유리할 것입니다. 이렇게 하면 Time Penalty는 거의 받을 일이 없겠죠.
특이한 점은 토너먼트 형식으로 제한된 시간내에 프로그래밍 대결을 벌인다는 거죠. 이긴자에게 상금을 줍니다만 미국외의 사람에겐 받을 자격이 없는 것 같기도 합니다. 스윙 애플릿을 다운로드 받아서 주어진 문제에 대해 자바, C++, C# 등으로 코딩할 수 있고 제대로 해결했는지 그 자리에서 바로 확인할 수 있습니다. -- 박지훈
http://ace.delos.com/usacogate 에서 트레이닝 받을 수 있지요. 중,고등학생 대상이라 그리 어렵지 않을겁니다. ["이덕준"]은 ProgrammingContest 준비 첫걸음으로 이 트레이닝을 추천합니다.
- ProgrammingLanguageClass . . . . 25 matches
== 참고자료 ==
비록 "아는 언어"칸에 대여섯 이상의 언어를 줄줄이 적어넣을 수 있지만, 컴퓨터 공학과를 다니면서 "정말 아는" 언어는 항간에서 현재 유행하는 언어 하나 둘 정도이다. 일단 주변 여건이 다른 언어를 공부할 여유를 허락하지 않고, 이걸 격려, 고무하는 사람이 아무도 없다는 것이 문제다. 너나 할 것 없이, 교과과정에서 C언어를 자바로 대체하는 것만으로 "우리 학교 전산학과는 미래지향적이고 앞서 나가는..."이라는 선전 문구를 내거는 것을 보면 정말 안타까울 뿐이다. 왜 MIT에서는 제일 처음 가르치는 언어로 Scheme을 몇년째 고수하고 있을까.
프로그래밍 언어를 배우는 것은 사고와 표현의 방식을 하나 더 배우는 것이다. 따라서, 설사 해당 언어로 프로그래밍을 할 기회가 별로 없다고 해도, 판이한 언어를 하나 더 배우는 것은 가치있는 일이다. 동시에 무슨 언어를 배우느냐, 어떤 신택스를 익히느냐는 것은 크게 중요하지 않다. 언어는 변하고 사멸하고 신생하며, 유행도 바뀐다. 그보다 그런 언어 저변에 깔려있는 다양한 패러다임을 접하고 충분히 이해하고 적용할 수 있어야 한다. 하지만 이게 가능하려면 구체적인 언어라는 채널을 통하지 않을 수가 없다.
그러므로, 이런 ProgrammingLanguageClass가 중요하다. 이 수업을 제하면 다른 패러다임의 다양한 언어를 접할 기회가 거의 전무하다. 자신의 모국어가 자바였다면, LISP와 Prolog, ICON, Smalltalk 등을 접하고 나서 몇 차원 넓어진 자신의 자바푸(Kungfu의 변화형)를 발견할 수 있을 것이며, 자바의 음양을 살피고 문제점을 우회하거나 수정하는 진정한 도구주의의 기쁨을 만끽할 수 있을 것이다. 한가지 언어의 노예가 되지 않는 길은 다양한 언어를 비교 판단, 현명하고 선택적인 사용을 할 능력을 기르는 법 외엔 없다. --김창준
꼭 그렇지는 않습니다. 다양한 언어를 배우고, 특히 훌륭히 디자인된 언어(각 요소들이 서로 상충하지 않고 유기적으로 조화되어 하나의 건강한 생태계를 이루는)를 충분히 접하게 되면, 아무리 문제있는 언어를 쓰게 되더라도 "선택적"인 사용이 가능해집니다.
컴파일러를 독학하려는 사람들은 [http://no-smok.net/nsmk/_c4_c4_c6_c4_c0_cf_b7_af_c3_df_c3_b5_bc_ad_c0_fb 컴파일러추천서적] 참고.
무심결에 쓰고 있는 프로그램 언어의 내부를 배울 수 있는 시간입니다. 개인적으로는 이런 저런 원리를 하나식 알아갈 때마다 재미있었기 때문에 수업시간도 재미있었습니다. (정말 같이 듣는 이들은 졸린 모양이더라고요.) 과제에서 엄청난 실수를 많이 저질러서 안타깝지만, 과제 자체는 강의 내용과 매우 적절하게 연결된 것이라고 생각합니다.
아쉬운 부분은 프로그램 언어론이란 과목임에도 불구하고, 설명의 비중은 많이 쓰이는 언어일수록 높았던 점입니다. 함수형언어(FunctionalLanguage)는 기말 고사 바로 전 시간에 한 시간만에 끝내려다가, 그나마 끝내지도 못하고 요약 부분만 훑었습니다. 그 밖의 종류에 대해서는 거의 절차적 언어, 특히 C계열 언어를 설명하다가 부연 설명으로 나오는 경우가 많았습니다. 논리형언어(LogicLanguage)에 대한 설명은 거의 못 봤습니다. 어차피 쓰지 않을 언어라고 생각해서일까요.--[Leonardong]
- 새싹C스터디2005/선생님페이지 . . . . 25 matches
C에서 공부해 보아야 할 내용들을 이야기 해 보았으면 좋겠습니다. 필요한 내용이 있다면 누구나 써주시고, 순서가 뒤바뀐것이 있다면 바꾸어 주세요.
* [톱아보다]는 오늘 첫 모임입니다. 신입생들에게 일정한 진도까지 공부해 오라고 미리 말해 두었으며 그중 한명에게 발표를 시키고 질문을 통해서 완성시켜 나갈 생각입니다.
* [Leonardong]의 빠른코딩을 위해서 의식적으로 마우스를 사용하지 않는 습관을 기르는 것도 참 좋겠다고 생각합니다.
* 자료구조에 대한 구체적인 접근은 피했으면 합니다. 보통의 자료구조는 일상생활의 예제문제를 풀어나가면서 익힐수 있다고 생각합니다. - [톱아보다]
지금 배열과, 제어문까지 나간걸로 알고 있는데 지나치게 빠른건 아닌지 생각해 봅니다. 변수에 대한 입출력 연습이 지나치게 적었던것 같은데. 어떻게 생각하시나요?? - [톱아보다]
지난번 세미나를 잠깐 듣고 느낀것은 한번에 너무 많은것을 알려주려고 하는 것 같았습니다. 몇번의 세미나를 통해 프로그래밍 언어 한가지를 가르쳐주는 것은 불가능합니다. 주제를 더 줄이고 보다 확실하게 이해할 수 있도록 가르쳐 주는 것이 더 좋을 것 같습니다. 모든 부분을 설명하지 못해도 상관 없습니다. 어차피 언어는 스스로 익히는 것입니다. 우리가 할 일은 스스로 익히는 일에 보다 빨리 다가갈 수 있도록 조금씩 이해의 폭을 넓혀주기만 하면 되는 것입니다.
어디에 쓰이는 지는 스스로 알아 나가야할 것이라고 생각합니다. 저는 이번 스터디를 진행하면서 신입생의 스스로 알아가는 즐거움을 뺏는 것 같아서 불안합니다. -[강희경]
진도에 ㅤㅉㅗㅈ겨서 그렇게 되는 것 같습니다. 저도 스스로 알아가고 고민하는 과정을 즐길줄 알게 되는 기회가 되었으면 하네요. - [톱아보다]
교육은 물고기를 잡는 방법을 가르쳐야 합니다. 어떤 알고리즘을 배운다면 그 알고리즘을 고안해낸 사람이 어떤 사고 과정을 거쳐 그 해법에 도달했는지를 구경할 수 있어야 하고, 학생은 각자 스스로만의 해법을 차근차근 '구성'(construct)할 수 있어야 합니다 (이를 교육철학에서 구성주의라고 합니다. 교육철학자 삐아제(Jean Piaget)의 제자이자, 마빈 민스키와 함께 MIT 미디어랩의 선구자인 세이머 페퍼트 박사가 주창했습니다). 전문가가 하는 것을 배우지 말고, 그들이 어떻게 전문가가 되었는지를 배우고 흉내 내야 합니다. 결국은 소크라테스적인 대화법입니다. 해답을 가르쳐 주지 않으면서도 초등학교 학생이 자신이 가진 지식만으로 스스로 퀵소트를 유도할 수 있도록 옆에서 도와줄 수 있습니까? 이것이 우리 스스로와 교사들에게 물어야 할 질문입니다.
전 저렇게 하고자 노력을 하는데...선생님과 학생 둘 다에게 큰 인내심이 있어야 가능한 교육방법입니다. -[강희경]
저도 7명이 되고나니까 솔직히 조금 벅차기도 합니다. - [톱아보다]
이제 포인터에 대해서 다룰 예정인데. 저는 선생님들도 이해가 좀 부족하다고 생각합니다.(저만 그런가요ㅋ?) 다들 공부해 명확히 이해해서 잘 지도해주시고 스스로 발전도 하시길 바랍니다. -[강희경]
- 새싹배움터05 . . . . 25 matches
ZeroPagers 로써 회원의식을 강화하고 프로젝트, 세미나 그리고 다른 ZeroPage활동에 쉽게 적응할 수 있는 적응력을 키우는 자리.
* C는 [새싹C스터디2005]에서 진행되고 있습니다.
|| 차수_날짜 || 배움주제 (진행자) || 내용 || 비고 ||
|| 2_4/11 || C ([이승한]) || 기본문법과, 포인터 || 중간고사 대비라는 느낌이 진하게 될듯 ||
|| 4/18 || 중간고사 || . || . ||
* 이번에 세미나 및 프로젝트를 할때는 과거에 비슷한 주제로 했던 문서들을 적극 활용하였으면 좋겠습니다. 지금까지 보통 세미나,스터디를 하면 뭐든 새로 만들었는데 그것보다 과거에 했던 것중에서 좋은것들을 잘 모아 편집하고 추가로 필요한 내용들을 넣는것입니다. 그렇게 하여 한가지 주제에 대한 완성도 높고 양질의 문서들을 만들어 나가서, 세미나, 프로젝트가 그 순간에만 활용되고 끝나기 보다는 과거의 것을 정제 하고 과거 했던 비슷한것들을 할 시간에 더 양질의 내용을 채워 나가서 계속 활용하였으면 합니다. -[상협]
* 그리고 지금까지 프로젝트 진행 프로세스를 잘 살펴 보아서 어떤식의 진행이 파국(?)으로 치달았는지 분석해보면서 제로페이지식의 제대로된 스터디 프로세스, 프로젝트 프로세스를 만들어 나가보았으면 합니다. -[상협]
우선 처음 세미나는 신입생 대상으로 위키 세미나가 다시 이루어져야 할 것 같습니다. 예전 위키 세미나에 신입생이 많이 참여하지 못했다고 들었습니다. 전에 위키 세미나 했던 사람이나 아니면 새로운 사람을 정해서 했으면 합니다. 그리고 첫 세미나는 다음주 월요일부터 시작하는 건가요? 그렇다면 급한 다음주 월요일 세미나 강사를 정하는 게 중요할 듯 합니다. --재동
지금 따로 메뉴얼을 제작하고 있습니다. 세미나 없이 메뉴얼만 있으면 쉽게 사용가능할 정도로 만들 예정이고요, 이번 [위키설명회2005]에서 다룬 내용도 담을 예정입니다. 그리고 첫 세미나(C프로그래밍)는 제가 할 의향이 있고 준비 중입니다. -[강희경]
[데블스캠프]같은 행사에서 하루 정도는 신입생이 재학생을 대상으로 세미나를 해보는것도 좋을것 같다. 준비의 주체는 신입생 모두이고 주제는 어떤 것이 되든 상관없다. 신입생들은 준비하는 과정에서 이것저것 얻게 되는 부분이 무언가 한가지는 반드시 있을 것이다. - [임인택]
정말 재미있을 듯 합니다. 잊지 말고 해봅시다 :) --재동
7피의 프로젝터는 재학생이 이용할수 없습니다. 교수님만 이용할수 있다고 합니다. 피치못할경우 빌릴수는 있긴 합니다. - [톱아보다]
음 어떤게 좋을까요?? 많아 보였는데 실제로 하려고 생각하면 몇가지 없기도 하네요. 가능한 주제를 먼저 골라보면... [Python], [ExtremeProgramming] 이 대표적인데... - [톱아보다]
리눅스 어떤가요? 사실 제가 알고 싶은 건데ㅋ -[강희경]
확실하게 리눅스로 정해진 건가? 희경이 말고 새내기들 생각은 어떤지 궁금하구만. - [임인택]
세미나 관련 후기를 남기면 좋을 듯 합니다. "좋았습니다" 같은 상투적인 것 말고 그 세미나의 장점과 단점을 남기는 겁니다. 그럼으로써 다른 사람이 세미나할 때 장점을 많이 따올수 있게 말입니다. --재동
5/31 월요일은 세미나가 없는 건가요? 내일이 기말 고사 전 마지막이 될 듯 한데. --재동
- 일반적인사용패턴 . . . . 25 matches
위키의 페이지들은 빨리 읽고 지나갈 글들이 아닙니다. 하나의 페이지가 현재의 모습을 띄기 위해서 수많은 손들에 거쳐가며 수정되고 추가되고 삭제되었습니다. 해당페이지에 대해 시간을 두고 천천히 읽어나가시기 바랍니다. 그리고 참여하시기 바랍니다.
그러다가 해당 페이지를 수정하고 싶으실때가 있으실 겁니다. 잘못된 정보를 바로잡고 싶을때, 내용을 덧붙이시고 싶을때, 토론중인 내용에 참여하시고 싶을때, 또는 토론중인 내용을 정리하여 하나의 문서로 만들고 싶을 때 등등.. 그럴때에는 거침없이 왼쪽 최하단의 'Edit Text'를 클릭하신뒤, 해당 페이지를 수정하시면 됩니다. 위키위키의 공간은 누구에게나 열려있으며, 누구나 수정할 수 있는 페이지입니다.
페이지 편집을 위한 태그들은 다음 링크를 참조하세요. (해당 페이지를 EditText해보시면 다른 사람들이 어떻게 편집했는지 알 수 있으니 보고 배우셔도 됩니다.)
해당 주제에 대해 새로운 위키 페이지를 열어보세요. Edit Text 하신 뒤 [[ "열고싶은주제" ]] 식으로 입력하시면 새 페이지가 열 수 있도록 붉은색의 링크가 생깁니다. 해당 링크를 클릭하신 뒤, 새로 열린 페이지에 Create This Page를 클릭하시고 글을 입력하시면, 그 페이지는 그 다음부터 새로운 위키 페이지가 됩니다. 또 다른 방법으로는, 상단의 'Go' 에 새 페이지 이름을 적어주세요. 'Go' 는 기존에 열린 페이지 이름을 입력하면 바로 가게 되고요. 그렇지 않은 경우는 새 페이지가 열리게 된답니다.
위키위키의 장점중 하나로 자유로운 링크에 있습니다. 기본적으로 auto link를 지원하므로 해당 위키 페이지 링크 뿐만 아니라 다른 웹 페이지의 링크도 자유롭습니다. (쓰다가 보면 가끔 위키 내에서 다른 페이지로 날라가기 허다해진다는. --;) 위키페이지 링크는 [[ "해당페이지이름" ]] 을 하시면 되고, 일반 웹 페이지는 URL을 그냥 입력해주시면 됩니다.
* 최근바뀐글 - 최근에 바뀐 글입니다. 자주 들리시는 분들은 즐겨찾기에 링크 걸어놓으시고 쓰세요.
* Go : 가고자 하는 페이지 이름을 알고 계시다면 Go에 직접 페이지이름을 입력하세요. 바로 해당 페이지 글로 Go~ 합니다. 기존에 없던 페이지이름이라면 새로운 페이지를 만듭니다.
* 페이지이름 : 최상단의 타이틀제목을 눌러보세요. 해당 페이지를 링크한 페이지들 목록이 나옵니다. 역링크라고 합니다.
* 페이지를 삭제하지 않은 경우 - 한쪽 창에서 상단 오른쪽의 파란아이와 짝짝이 안경(?)을 클릭하시면 해당 페이지의 히스토리와 페이지의 수정내용을 알 수 있습니다. 일단 파란아이를 눌러서 복구하고 싶은 버전을 View 하십시오. 그 다음, URL 입력창에서 action=recall 을 action=raw로 바꾼 후 해당 내용을 다시 복사하시면 됩니다. (이때는 Frame 안에서 작업하지마시고, 위키 페이지를 직접 전체화면으로 하여 해당 URL이 보이는 상태에서 작업하십시오.)
== 페이지 이름 고치기 ==
* 기존 페이지의 제목을 클릭, 기존 페이지를 링크 건 페이지들을 검색한다. 링크들을 수동으로 고쳐준다.
* 모든 링크들을 수정하고 나면 (기존페이지 제목을 클릭했을때 역링크가 없다면) 기존 페이지를 삭제한다.
["페이지이름고치기"] 참조
- 1thPCinCAUCSE/null전략 . . . . 24 matches
null 팀의 경우 B 문제 하나를 풀었고 (1시간 5분 정도 소요. 패널티 없음), A 번 문제를 계속 시도하던중 시간초과.
["1002"]가 5분 지각을 했습니다.; 암튼, 35분에 시작을 했고, 일단 5분의 시간을 두고 ["neocoin"] 과 ["1002"] 는 문제들을 읽어나가기 시작했습니다. 한글 문서였기 때문에 3개의 문제를 훑는데에도 5분이면 충분하더군요. ["neocoin"] 은 B번을, ["1002"] 는 A번을 일단 읽고, C 번에 대해서는 같이 읽었습니다. 그리고 미리 문제출제자쪽에서 난이도를 C > A > B 임을 언급했습니다. 문제를 읽어나가면서도 일단 B의 경우가 바로 계산이 나올 것 같아서 B 를 먼저 해결하기로 선택했습니다. 그 다음에는 문제에 대한 이해도가 상대적으로 높았던 A번을 해결하기로 했습니다.
도구는 연습장과 인덱스 카드, assert 문을 이용한 테스트 케이스 등을 이용했습니다. 연습장과 인덱스 카드는 주로 개개인 수식과 중요 변수들을 적기 위해, 또는 그림을 그리기 위해 이용했고 (두 도구의 용도가 구분되어있진 않았음) 문제에 대해서 답이 나왔다하는 가정하에 (문제지에 Sample Input->Output 이 나와있었기에 가능했습니다.) Backward 로 문제가 해결된 상황을 가정하고, 그러기 위해 필요한 변수들을 찾아나가는 방법으로 진행했습니다. 프로그래밍 스타일은 Structured 스타일의 Stepwise Refinement & PBI & assert 를 이용한 TDD 를 사용했습니다.
한 20분정도 잘못진행했었는데, 첫번째는 ["1002"] 가 B 번문제를 제대로 이해하지 못했고 (앞부분만 읽고, 문제의 input-output 을 거꾸로 판단), 두번째는 input 이 100 일때의 output 예상치를 잘못계산한 상태에서 이를 근거로 Test Driven 을 시도해서 추후 발견뒤 테스트를 수정하는동안 시간을 낭비했습니다.
Sample 로 제공한 데이터들을 만족시키는 코드는 작성하였으나, 여전히 변수들이 다 뽑아져지지 않아서, 임의의 결과데이터 (100인 경우) 에 대해 예상되는 결과를 생각하고 코드를 작성한뒤, 코드와 결과들, 코드로부터 발견되는 변수들을 토대로 연습장에 기록을 했고, 그러던중 ["neocoin"] 이 일반화 공식을 찾아내었습니다.
적절히 중복코드를 삭제하고 난 뒤, 한 5분정도 Input-Output 코드를 iostream 과 ["STL/vector"] 를 사용하여 작성한 뒤 이를 제출, 통과했습니다.
문제에 대해 역시 B 번을 진행하던 스타일대로 Structured 로 진행했는데, 초반에 너무 코드위주로 각 변수들을 뽑아내려고 접근한 것이 문제가 되었던 것 같습니다. 여유를 두고 페이퍼 프로그래밍을 했어도. 바늘들에 대해서 OO 로 접근했으면 좀 더 쉽지 않았을까 생각.
지난번 IPSC 경험때는 맨땅에 해딩하는 느낌이였는데, 이번에는 비록 입상하지 못했지만, 각각의 과정들이 의식적으로 일어난 점에 대해서 개인적으로는 즐거웠고 명쾌했습니다. 급조되어 2주만에 만난 Pair 치고 손발이 잘 맞았습니다. (이건 방학 두달동안 ["ProjectPrometheus"] 때 하도 서로 싸워대어서. -_-;)
미리 예제문제로 제시된 5문제중 어려웠었던 뒤의 3문제들을 각자 풀어보고 훈련했었다면 실전에서도 더 여유있고 의식적인 작업을 할 수 있었으리라 생각하며. 그리고, 초반에 바로 TDD 로 나가는 것보다, 문제에 대한 여러 접근방법을 둔 뒤, 하나를 고르고 그에 대해 TDD 로 나가는 것이 더 좋았을 것이라고 생각. (TDD를 바로 문제 Approach 기법으로 적용하는것 보단, 해당 문제 접근방법에 대해 빨리 필요한 변수들을 발견해나가고, 명확하게 해주는데 더 효과가 크다는 생각이 들어서)
문제를 푸는 동안, 굉장히 여유롭다는 느낌이 들었습니다. 적당히 달려나간다고 할까요. 위에 언급된 2가지의 실수가 없었다면, A를 넘어 C번도 노려 봄직한 느낌이 듭니다. 이런 것들이 연습으로 체화되는 것이겠지요. 다음 ipsc를 즐겁게 기다려 봅니다.
- CauGlobal/Interview . . . . 24 matches
* 자신이 가장 크게 성장했다고 느낀건 언제였나요?
* 한국에 듣기로는 대학원 과정은 스스로 학비를 충당할 수 있다고 하는데 어떻게 학비를 충당하고 계산가요? 특히 Stanford 는 학비가 비싸다고 들었습니다.
* Stanford에 괴짜가 많다고 들었습니다. Cultural Shock 의 예를 하나만 들어주세요.
* 외부 Project 가 어느 정도나 있고 그에 대한 보수는 어떤지?
* 현재 인터쉽 중인 것으로 알고 있는데 어떠 회사이고 어떤 업무를 하고 계시나요? 인턴쉽이라면 짧은 기간일텐데 어떤 일이 주로 맡겨 지나요?
* 현재 인턴쉽 중인 것으로 알고 있는데 미국 기업문화에 대한 느낌이 어떠신가요?
* 현재 일하는데 있어서 Co-work 이 어느 정도나 강조되고 있나요?
* 우리나라 기준으로 보면 박사학위를 거치고 계시는 분이 인턴쉽을 하시는 것은 느낌이 좀 이상합니다. 여기서는 인턴쉽에 대한 인식이 어떤가요? 또한, 학부 인턴과는 어떻게 다른가요? 보수는 충분한가요?
* 한국의 학생들 특히 저학년 학생들에게 당부하고 싶은 말은?
* 다시 대학에 간다면 어떤 공부를 하고 싶으세요?
* 하루에 몇 시간정도 일을 하나요? 자기계발은 어떻게 하고 있죠?
* 실리콘벨리에서의 기술 동향은 어떻게 흘러가고 있나요?
* 미국 진출 계획은 언제 세우셨으며 그 동기는 무엇이었나요? 계획을 실행에 옮기고 난 지금 생각했을때 아쉬웠던 점이 무엇인가요?
* 생활비는 어떻게 해결하셨나요? 벌어서 쓰셨다면 그 방법은 양적, 질적으로 적절했나요? 해보고 싶었는데 하지 못한 일은? 추천해 주고 싶은 방법은?
* 자신이 이제까지 오게 된 비결이나 성공요인을 무엇일가요? 모자라다고 생각하는 부분은?
* 석천아~ 전에 쓰려고 했던말 쓸꺼지? :) --sun
그냥 좋은 게 있으면 알고 오면 좋다는 식으로 접근하면 자칫 표면적인 겉핥기식 인터뷰가 되지 않을까 싶습니다. 묻는 사람 스스로가 혼자 잘 생각해 보면 대충 답을 예상하는 질문을 하게 되는 것이죠. 목표를 조금 좁히거나 명확하게 만들어 보면 어떨까요? --JuNe
저도 그 점이 참 고민이에요. 날카로운 지적 감사합니다 :) 일단 학교에서 지원해주는 행사라 학교에서 원하는 답을 만들어주기 위한 의식이 어느정도 작용했던것 같습니다. 만약 형이 이런 기회로 가시게 된다면, 어떤걸 해보고 싶으세요? 힌트가 있으면 정말 도움이 될것 같습니다. --sun
- HowToDiscussIt . . . . 24 matches
토론을 진행하는 방식이 "어떻게"이고 그 토론을 통해 성취하고자 하는 것(보통은 어떤 특정 의제)이 "무엇"이다. 이 양자를 분리한다. 대부분의 토론은 다음의 양상을 띈다.
* 술퍼맨 : 아니, 수질이 우수하다는데... 제가 증명을 해드리죠. 수질이 우수하다면 어쩌고 저쩌고 하므로 이 공리와 이론을 이용하면...
지금 이 경우, "어떻게" 토론을 진행할 지에 대한 합의가 되어있지 않은 상태이고, "무엇을"과 "어떻게"가 뒤섞여 있다. 이렇게 해서는 진도가 잘 나가지 않는다. 따라서, 양자를 분리한다.
우선은 토론을 진행할 방식에 대해 토론을 한다. 그리고, 이 방식의 대리인을 선정한다. 이 사람을 Facilitator라고 부른다. 그는 토의 내용에 대한 권한은 없지만, 진행을 정리하는 교통순경의 역할을 한다. 그리고, 모든 참가자는 이 방식을 따라 토론을 진행한다.
대부분의 경우, 먼저 의견을 일단 다 받아놓고, 각각의 장점을 다 이야기 하게 하고, 또 각각의 단점을 다 들어보고 하는 식으로 단계적으로 진행하는 것이 효율적이다.
한꺼번에 토론을 하기엔 사람이 너무 많다. 내성적인 사람들은 많은 사람 앞에서 이야기 하기를 꺼린다. 혹시나 자신이 한 말이 남들에게 바보처럼 보이지 않을까 걱정한다. 특히 의견/질문을 내는 사람이 별로 없는 상황은 악순환을 거듭한다. 의견을 내는 사람이 없기 때문에 의견 내기가 어려워진다. 또한, 낮은 위치의 사람(저학년, 하급자, 경험이 적은 사람)과 높은 위치의 사람이 섞여 있는 경우, 낮은 위치의 사람은 무언의 압력을 느끼고 의견 개진을 어려워 한다. 보통 한 두 사람 말 많은(혹은 경험이 많은) 사람이 전체 토론을 주도하게 된다.
예컨대, 일단 전체 그룹을 모아놓고 간략한 문제 상황 설명과 목적에 대해 컨센서스를 이룬 후에, 학년별 소그룹으로 나누고 자기들끼리 알아서 대표를 선출하고 토론하도록 한다. 선배의 눈치를 볼 필요 없이 자신들만의 의견을 개진, 정리하도록 한다. 얼마 후에 모든 그룹이 모여서 각 소그룹의 대표자가 토의 내용을 요약 발표한다. 이것에 대해 다시 전체 토론을 하고, 또 다시 '''Subgroup'''을 사용할 수도 있다.
전체 개미 사회에서 일을 열심히 하는 개미가 20%이고, 나머지 80%는 게으름뱅이라고 하면, 이 80%만 따로 독립시켜 놓으면 그 중 20%가 부지런한 개미가 된다. 전체 시스템의 모양은 변하지 않고, 각자의 역할이 조금씩 바뀌는 것이다. 말을 잘 하지 않는 사람이 있고, 말을 많이 하는 사람(예컨대 진행자, 강연자)이 있을 때, 이를 다시 소규모로 나누게 되면 대부분 참여도가 높아지게 된다.
의견 발표를 하지 않는 사람을 보고 뭐라고 하거나, 질문을 강요하기 보다는 그들이 왜 그렇게 소극적인지를 분석하고, 적극적으로 될 수 있는 환경과 NoSmok:어포던스 를 제공하라.
'''참고자료:'''
- KnowledgeManagement . . . . 24 matches
* 사람, 객체, 지식 그리고 환경적 요소들 간에 상호작용에 초점을 맞춘다.
* 무언의 지식은 잠재 의식에 있거나 내면화된 지식 그리고 각 개인이 스스로 알고 있다고 인지할 수 없거나 스스로 어떠한 특정한 결과를 성취했다고 알지 못하는 지식이다.
* 명시적인 지식은 개인이 명시적으로 알고 있고, 의식적으로 내면에 지니고 있는 지식으로서 다른 사람과 교류할 수 있다.
* 무언의 지식을 구분하는 대중적인 방법은 그것이 우리의 두뇌에 있는지 여부이고, 명시적인 지식을 구분하는 방법은 우리가 그것을 체계화 한 지식인지 여부이다.
* Nonaka 와 Takeuchi 는 성공적인 KM program 은 지식의 공유를 위해서 내면화된 무언의 지식을 명시적으로 체계화된 지식으로 바꿀 필요가 있다고 얘기한다. 그리고 또한 반대의 경우도 개인이나 그룹에게 있어서 KM 시스템에서 한번 추출한 지식을 내면화 하고 의미있게 체계화 하기 위해서 필요하다고 이야기 한다.
* 세번째 지식의 종류는 embedded knowledge 이다. 이것은 물리적인 사물에 비 명시적인 방법으로 내재되어 있는 지식이다. 예를 들어서 알려지지 않은 장치의 모양과 특성은 그 기계가 어떻게 사용되어지는지 이해하는지에 대한 핵심 요소를 포함하고 있다.
* 예를 들어서 조직을 위해서 새로운 프로젝트에 착수하는 개인은 이전에 비슷한 프로젝트에서 배웠던 교훈이나 지식에 접근하려고 할 것이다. 현재 처리하고 있는 문제에 관련된 정보를 얻기 위해서 프로젝트 중에 관련된 정보에 접근하고, 프로젝트를 마치고 추후 프로젝트에서도 필요하게 될 정보를 남기기 위해서 관련된 정보에 접근하게 될 것이다. 지식 관리를 행하는 사람은 시스템, 저장소, 협동 프로세스를 제공하여 이러한 활동을 촉직 한다.
* 지식은 프로젝트 하기 전에 포착되고 기록되어 질 수 있다. 예를 들어서 초기 프로젝트 분석에서 프로젝트 팀은 정보와 레슨을 배운다. 그리고 프로젝트 진행중에 배우게 되는 레슨도 기록되어 질 수 있고, 프로젝트 후에 남겨진 리뷰는 추후에 해당 지식에 접근할때에 더 나은 통찰력을 제공해줄 수 있다.
* 지식 저장소에서 지식을 넣고 가져오는 한가지 대체적인 전략은 각 개인이 자신의 지식 요구에 따라 ad hoc 기반으로 접근 하는 것이다. 이 방법의 장점은 각 개인에게서 오는 응답의 내용과 제시된 문제에 대한 해결책이 풍부하고 그것을 제시하는 개인에게 특화될 수 있다는 점이다.
= 참고 =
- 정모/2002.7.11 . . . . 24 matches
이선우가 알고 있기로 현재 zeropage.org 도메인은 ["구근"]이 가지고 있고, 도메인 이용료 또한 직접 내고 있는것으로 알고 있습니다. (이 이야기가 맞다면) 제로페이지는 개인에게 비용을 부담시키는 현재의 상황을 해결해주어야 합니다. 그리고, 도메인 또한 단체가 소유할 수 있는지는 모르겠군요(아는분?). 소유할 수 있다면, 차후 관리는 제로페이지에서 직접 하는게 좋지 않을까요?
2. 위에 있는 안건과 더블어 현재 제로페이지의 비품(?) 들이 개인에게 가있는데 그것을 모아서 관리하거나 적어도 누가 무엇을 가지고 있는지는 알았으면 합니다. 예를들어 제가 알고있는 것은 광식-->10주년창립제 자료집,서버보드메뉴얼 ,상민-->뺏지 이런것들을 한데 모아서 관리하던지 아님 누구한테 무엇이있는지 관리했으면 합니다.
* ["비행기게임"] - 파이썬으로 만드는 박진감 넘치고 스릴 만점 비행기 게임. 파이썬도 익히고 비행기 겜도 만들고
* ["DeepAspectOnC"] - C 를 더 깊고 공부 하자는 스터디
= 기타 참고 사항 =
* 참여율 중요!(50% 왔다고 해도 실망 하지 말자..)
2. 신입회원들에게 무엇을 공부할것이며, 개인적으로 공부할 것과 팀으로 공부할 것에 대한 성찰(어느정도 되었다고 생각했는데, 말로 꺼내어보려고 연습장에 정리하려니 계속 정리가 안되었다.), 기존 ["데블스캠프2002"] 와의 연장선을 모색할 방법 등에 대해서 이야기해보려는 시도(비록 ["데블스캠프2002"] 의 마지막날이 3명밖에 오지 않았더라도) 기존회원들의 책임이며, 소위 '어느정도 공부했다' 라는 사람들이 전달해줘야 할 지식이였으리란 생각을 해본다. (아직까지나마 한배를 타고 있다면) 이 또한 회의전 미리 조직화해야 하건만, 너무 늦어버렸군.
3. 역시 고학번들의 문제지만. 회의 진행중 조언과 자신들의 잡담을 구분하질 않는다. 우리들의 목소리는 어디건 크다.
''DeleteMe later: 천천히 제로페이지 회원들을 위한 컴퓨터 공부 로드맵(roadmap)을 하나씩 만들어 가면 어떨까요? 갑을 공부하려면 이걸 먼저 보고, 그 다음 이런 프로젝트들을 한번 씩 해보고, 어떤 기사를 보고 등등. 각 과목에 대해서 만들어도 좋고, 특정 기술에 대해서 만들어도 좋겠습니다. 가능하면 선배들이 각자 자신이 공부한 경험을 토대로 "공동 작성"하면 참 좋겠죠. 다만 한시적인 기술일 경우 "축적"의 가치가 별로 없이 해당 로드맵이 일이년 만에 쓸모없어 질 수도 있겠죠. --JuNe''[[BR]]
''DeleteMe 참석하고는 싶었는데요... 제가 지금 시골이라..-_-;; - Dantert''[[BR]]
''DeleteMe 앗... 전 알바가... 종~일 시간이 아니나요. -_-;;; 5시 반에야 끝나는고로... 방학(?) 내내 시간이 아니 납니다. 괴로워라.. ''-setsuna
- 타도코코아CppStudy/객체지향발표 . . . . 24 matches
* 객체 = 소프트웨어를 구성하고 실제 소프트웨어를 작동시키는 실체들
즉, 논리와 데이타가 분리되어 있는 기존의 구조적 사고에서 과감히 탈피하여 논리와 데이타가 결합된 객체들이 시스템을 이룬다는 것이다.
* Identity(식별) - 각 객체는 다른 객체로부터 분리되고 있고, 분별 가능해야 한다.
같은 클래스에서 생성된 객체들은 모두 같은 연산(operation) 기능을 갖고 있으며, 자료구조가 같고 동일한 행위를 하게 된다.(자료구조는 객체들이 갖는 데이타와 속성(attribute)들의 집합이다. 그러나 데이터와 속성의 값은 물론 다르다.)
-- black box의 개념 : 그 객체들이 어디에 쓰이는 것인지는 알아도 그 객체들이 어떤 구조로 되어 있으며 어떤 데이타를 유통시키며 어떤 알고 리즘으로 움직이는가 하는것은 모른다는 것이다.
* 캡슐화(encapsulation) : 객체의 내부적인 사항과 객체들간의 외부적인 사항들을 분리시킨다. 이렇게 캡슐화된 객체의 행위는 외부에서 볼 때는 구체적인 아닌 추상적인 것이 되므로 정보 은닉(information hiding) 개념이 존중된다. 주어진 클래스의 특정 연산 기능은 메소드(method)라고 한다. 캡슐화는 무슨 메소드로 구현되었는가에 구애받지 않고 추상적으로 정의된 연산 기능을 통해 객체가 사용되고 시스템의 상태(state)를 변화시키도록 해준다.
서브클래스가 수퍼클래스의 변수와 메소드들을 상속받을 때 필요에 따라 정의가 구체화(specification)되며, 상대적으로 상위층의 클래스 일수록 일반화(generalization) 된다고 말한다.
겉에서 그객체를 사용하기 위한 사용자 인터페이스는 제공하나 데이타를 검색, 수정 그리고 함수의 이용을 위해서는 이 인터페이스를 꼭 거쳐야 되게 하는것이다.
* 데이타형 클래스와 객체(Class and Objectas any type data) : 자동차를 움직이기 위한 유저가 2명 있다. 자동차라는 객체 를 둘다 사용하는데 한명은 부산에 가려고 하고 한명은 대구에 오려고 한다.
즉 어떠한 데이타형을 가지고 원하는 만큼의 여러가지 인스턴스를 만들수 있다는 얘기이다.
또 자동차다. 가진 자동차의 엔진이 출력이 150마력이다. 여기다 똑같은 엔진을 하나더 달아 300마력이 되었다. 즉 앞의 150마력이라는 클래스에 두개로서 300마력을 만든다는 개념이 포함 즉 상속되어있는것이다. 엔진력의 향상이 손쉽게 이루어졌다. 만약 새 300마력엔진을 단 차를 산다고 하면 더 힘들것이라는것을 알것이다.
150마력짜리 엔진을 두개 단차와 300마력짜리 엔진을 하나 단 차나 두차의 출력은 같다. 이것이 다형이다. 즉 클래스가 같다는 뜻이다. 조상객체로 볼때는 분명히 같은 이름이지만( 출력이 300마력이다) 전혀 실행방법이 다른 클래스인것이다( 하나는 150마력엔진의 원리로 움직이고 하나는 300마력 엔진의 원리로 움직인다는것).
문제를 정의하고 이 정의로부터 모형(model)들을 제작하여 실세계(real-world)의 중요한 특성들을 보여주는 단계이다. 다음과 같은 모형 들이 만들어 질 수 있다.
객체 설계(object design) : 구현에 필요한 상세한 내역을 설계 모형으로 제작하고 상세화된다. 구체적인 자료구조와 알고리즘 들이 정의된다.
설계 모형을 특정 프로그램 언어로 번역하는 작업이다. 객체, 클래스, 상속의 개념을 다 포용하는 객체지향 언어(object-oriented programming language : C++, Smalltalk 등)가 가장 좋지만 객체의 개념만 인정하고 클래스, 상속 등은 고려하지 않은 객체기반 언어(object-oriented based programming language : Ada 등)도 좋다.
객체지향의 초기개념은 프로그래밍 언어로부터 시작됐으나, 이젠 실세계를 바라보는 새로운 시각으로 그 중요성이 변화하고 있으며, 개발언어에 너무 종속될 필요는 없다.
- ProjectZephyrus/Thread . . . . 23 matches
Zephyrus Project 진행중의 이야기들. Thread - Document BottomUp 을 해도 좋겠고요.
* ''Database Connection Pool 을 사용하던 하지 않던, DB 자원을 얻어오는 부분을 하나의 end point에서 처리하세요. 처음부터 이를 고려하지 않을 경우, '''*.java''' 에서 Database Connection을 생성하고, 사용하는 코드를 머지않아 보게 될겁니다. 이는 정말 최악입니다. pool을 쓰다가 쓰지 않게 될 경우는?다시 pool을 써야 할 경우는? 더 좋은 방법은 interface를 잘 정의해서 사용하고, 실제 DB 작업을 하는 클래스는 Factory 를 통해 생성하는게 좋습니다. 어떤 방식으로 DB를 다루던 간에 위에서 보기엔 항상 같아야 하죠. --이선우 [[BR]]
[http://javaservice.net/~java/bbs/read.cgi?m=devtip&b=servlet&c=r_p&n=973389459&k=고려사항&d=t#973389459 JDBC 연동시 코딩고려사항(Transaction처리) - 제3탄-] [[BR]]
* 제가 저번학기에 작업했던 메신져가 있습니다. 이번 프로젝트를 하면서 참고할 수 있는 부분을 참고하세요. 저번 학기에 정보처리 실습이란 과목에서 프로젝트로 했던 것입니다. UP 로 Process 를 진행했었고, 높은(?) 점수를 위해서 많은 문서를 남기긴 했는데.. 부족한 면이 많군요 ㅡ.ㅡ;; http://www.inazsoft.net/projectworktool.html 에서 다운로드 받을 수 있습니다. - 구근
''정말 많은 문서;; 보고 감탄했슴다 형~ 문서형식이나 고려해볼 점등에서 참조할만한 좋은 자료가 될듯 --석천''
Database 관련 부분 아니라 팀 프로젝트시 고려해야 할 사항은 꽤 됩니다. SuccessfulProject 를 위해서 고려해야 할 사항은 어떤게 있을까요? 자세한 내용은 차후 정리해서 쓰기로 하고, 하나 이야기 하고 싶은건 최대한 '''중복'''을 피하도록 하세요. 특히나, 한참 대화를 하지 않고 있다보면 같은 일을 하는 utility성 클래스들을 모두가 하나씩 지니고 있을겁니다.
가장 이상적인 상태는 예전 창준선배님이 세미나에서 이야기 했었던, '이러 이러한 라이브러리는 여기 있지 않을까 해서 봤더니 바로 그 자리에 있더라.' 하는 상태입니다. 그러면 최악은? '이러 이러한 라이브러리가 필요한데? 음.. 이쁘게 잘 만들어놓기는 귀찮고 에라 다음에 정리하지 뭐' 그리고는 해당 method들을 copy & paste. '''공통 모듈'''을 한곳에서 다루도록 하세요. 공통 모듈은 꽤 많습니다. logging, configuration, resource managing ,..
''혼자서 플밍할때에도 자주 발생하는.. ^^ 다른 프로그램들 플밍하다가도 비슷한 패턴의 코드들이 많이 보여서 그런 건 따로 utility class 식으로 디렉토리 따로 두고 관리하고 했었죠. 프로젝트 진행중에는 다른 사람들 소스를 지속적으로 같이 봐 나가면서 생각해야겠군요. CVS 로 한곳에 소스를 모으면 도움이 될 것이라 생각. --석천''
아 한가지 더 생각나는게 있군요. 자바로 프로젝트를 하니 적습니다. 절대 작성하는 라이브러리나 코드의 중간에서 Exception을 잡아서 삼켜버리지 마세요. Exception은 추후 debugging에 절대적인 정보를 담고 있습니다. 중간에 try ~ catch 로 잡아버리고, 어떠한 형태로도 알려주지 않는것은 상당히 위험합니다. 시간이 나면 이와 관련해서 더 적도록 하지요. --이선우
- 데블스캠프2005/목요일후기 . . . . 23 matches
[남도연] 러플 로보트 움직이기 샛다른 경험.. !! 3차원 Vpython 평소부터 알고 싶었던 거라 좀더 알고 싶다. 마지막에 가선 두통으로 인해.. 집중력 저하;; 아쉽다;;
[안성진] 러플...너무 재미있었다....비주얼 파이썬은 참 신기하기도 했고 많은 수학적 능력을 요구하는게 나로서는 고통으로 다가왔었다....ㅎㅎ;;
느낌: 오늘 내용은 실습도 많이하고, 신기한 내용도 많았고 재미있었던것 같다.
박경태 : 러플최고였음. vphython도 보안은..skip;;, 역시 모두 다 신기+_+..(너무 졸려..;) 새로운 경험을 하게된듯-
[윤성복] 러플이라는 것을 하면서 많은 제약이 있지만 할려는 의지를 갖고 하면 될수 있는걸 배웠다...오늘도 잠과 싸움에서 졌다...지금까지 4전 2승2패~
보안.. 흥미로운.. 이리저리 생각도 해보고 할수 있었던게 가장 좋았던.. 하지만 암,복호화 하는 프로그램을 짜라고 할땐..;;역시 코딩력이 부족한.. 코딩력을 키우자.. 아자!! 오늘은 실습이 많아서 긴장? 되었던.. 덕분에 조는 시간 없이 밤을 지샌...
[송수생] : 오늘 세미나는 즐거웠고 먼가 재미가있어서 그런지 전부들 활발하게 하구 그렇게 어렵지가 않아서 좋와구요...
아쉬운 점은 시간이 짧아서 다못하고 간단하게 한게 좀 아쉽네요~^^
ㅎㅎㅎ 그래도 오늘 수고해주신 강사분들께 감사하다는 말을 해드리고 싶어요.^^ 오늘 수고하셨습니다.^^
그리고 다음 강사는, 이전 강사의 후기를 보면서 자신의 강의를 발전시키세요.
- 보통 '보안세미나' 하면 이론적이고 별로 이해 안가는 수식들의 나열이 되기 일쑤이다. 이번처럼 자신의 메세지를 암호화해보고, 이를 MSN 으로 보내보면서 비밀키의 문제점을 생각하게끔 하고 이를 서로 토론을 통해 이야기하게 한 보안세미나는 굉장히 이례적이고, 또한 효과적이였다고 생각.~ --[1002]
- 늦은 시간때까지도 집중력을 유지하고 토론해준 사람들의 열성~ 보기 좋았습니다.~
7. 토론이란 방법이 좋았다. 토론하는 사람들이 실력 여부를 떠나서 해당 주제에 대해서 창의적이게 되는 느낌이다. 추후 세미나 준비할때에도 토론거리를 염두해보고 진행하는 것도 좋은 생각~
- 새싹교실/2011/Pixar/4월 . . . . 23 matches
* 결석한 사람은 보충 받고 싶으면 따로 연락하세요~ 제가 먼저 연락하지는 않습니다 ㅋㅋ - [김수경]
* ㅠㅠㅠ별찍기를 배웠습니다. 감자칩은 맛있었습니다. 하지만 별찍기는 어려웠습니다. ㅠㅠ 숙제도 있지만 해올 자신이 없습니다. 1, 2, 3 개 순서대로 찍는거, 5개 다찍는거는 그럭저럭 할만했는데 휴............ 너무어려웠어요. 승열이랑 둘이배워서 진짜 과외같이배웠어요. 사실 C를 빨리빨리 배우고싶어서 매일매일 새싹으로 1달만에 C를 자유자재로 다루고싶어요 누낰ㅋㅋㅋㅋㅋㅋ 진도따위버리고 엄청빨리배우고싶어요 사실 ㅎㅎㅎ 제가 머리가 좀 나빠서 많이 틀리고 늦게늦게 이해했는데 이해해주셔서 감사해요 누낰ㅋㅋㅋ 창설만아니면 더 오래해도 되니까 누나 오래하는거 누나만 안힘드시다면.........ㅋㅋㅋㅋㅋㅋㅋㅋ 빨리빨리배우고싶어요 ㅋㅋㅋ 승열이가 프링글스먹고싶대요 옆에서 저는 절대 아무말 안했습니다 B)
* 오늘은 목요일에 안해서 좀 많이했다! if제어문과 for 제어문에 대해서 배웠다. 별찍기도 배웠다 흑흑 너무어려워요 문제내시면 마추어보고 서로 고쳐보는등 실습위주로 재밌게 수업했다. 많은것을 배울수 있어서 좋았다..ㅋㅋㅋ.. 숙제도 있으니 복습하는겸 열심히 해야겠다. 누나 프링글스 먹구싶어요. ..
1. 조건문, 반복문을 오늘로 마치려고 했는데… if else, for만 가르쳐줘서 한 주 더 해야겠어요~ while은 시간상 못 한 거지만 조건문 Switch case를 깜빡하다니ㅜㅜㅜㅜ
1. 별찍기를 처음엔 혼자 짜보게 했다가 짝으로 함께 짜보도록 했습니다. 코딩에 참여한 새내기들은 어떻게 생각할 지 모르겠는데 관찰하는 제가 보기엔 짝으로 구현하게 하니 혼자 짤 때보다 더 나은 점이 많아보였습니다. ''컴퓨터가 꺼지려고 해서 일단 저장해요ㅜㅜ''
* 누나 숙제를 안해와서 정말정말정말정말정말죄송합니다 ㅠㅠ 우으어 C는 넘어려워요........ 구구단이랑 n*n개 짜는건 잘 했는데 그다음에 빈칸남기는건 잘안되네요 ㅠㅠ while문하구 switch 배우고 C숙제 다시점검했는데 배우는건 되게 잘한거같아요 ㅋㅎㅋㅎ 누나 내일도 많이배웠으면 좋겠어요~~~~~~~~~~~~~~~~~~ [김연석]
그리고 별찍기의 신세계를 경험한.... ㅠㅠㅠ
오늘도많은걸배운날입니다. while과 if for 등등 많은것을 배우고 복습햇습니다.
* 누나 솔찍히 어제 시험끝났다고 늦게자고와서 오늘 너무 피곤한상태에서 했어서 집중도못하고 죄송해요 ㅠㅠ. 레몬에이드 제가젤좋아하는건데 누나 짱맛있었어요. 오늘 함수를 배웠는데 시험전에 혼자 공부해놨던게있었는데 그거때매 우쭐해서 솔직히 오늘 좀 건방졌던거같아요 죄송해요 ㅠ-ㅠ . 전역변수 지역변수 그게 솔직히 아직도 엄청 잘은 이해가 안되요 누나. 더많이배우고싶어요 누나 ㅋㅋㅋ . 누나 저 마에스트로 그거 어떻게쓸지 감이안와요..ㅠ.ㅠ.ㅠ.ㅠ.ㅠ
시험을다본 다음날이라서 피곤하고 집중이덜되는 날이었습니다.
오늘은 함수를 배웟고 재귀를 쓰는법을 배웟는데 재귀는 쫌 많이 어려웠어요
오늘은 변수종류에대해서 배웠다 local,global,static등에 대해배웠고, 반복문을 사용하여달력도 만들어보았고, 함수에 대해서도 배웠다.
- 송년회 . . . . 23 matches
OB 선배님들중 오신다고 확답을 주신 분들은 총 6분, 시간 되시면 오시겠다고 말씀해주신 선배님은 2분. 총 8명.
가장 고학번은 96학번.
04는 약. 6-7명 정도 올것 같고요.
재동형님이 말씀해주신 2/3 으로라면 20명 정도 생각해보고 예약해야 할듯.
제로페이지에서 송년회를 준비하고 있습니다. 공지 메일 받으셧나요??
고맙습니다~ 꼭오시고요. 혹시 못 오시게 되면 이 번호로 연락주세요~
2004년 한해도 이제 서서히 기울어져 가고 있습니다.
1년을 마무리하고, 또 한해의 도약을 위해
그 동안 못 보고 지내던 회원들이 그립지 않으신가요??
추신. 메일이나 문자메세지, 전화로 참석 여부를 알려주시면 고맙겠습니다.
미처 생각도 못하고 있었는데... 수고했어요 --[강희경]
가족 좋네요 휴휴. 훈훈한 느낌도 들고 -[iruril]
참석! 그리고 연락은 당장 해야되지 않나요. 지금도 좀 늦은 감이 있는데요. -- 재선
그날 뒤풀이로 가기 전에 잠깐 이런 것도 해보면 좋겠습니다. 아이디어는 템플스테이에서 했던 유서쓰기 시간을 차용한 것입니다. A4용지 한 장과 펜을 나누어주고 (펜은 지참하는 사람이 많겠습니다만) 한 해를 되돌아보는 글쓰기를 해 봅니다. 단 시간은 너무 길지 않게 5분정도로 하고요. 그리고 사람들에게 자신이 쓴 그대로를 읽어줍니다. 템플스테이에서는 불을 전부 끄고 각자 촛불을 하나씩 켜고 이야기했는데, 그런 준비가 안 된다면 그냥 해도 좋겠습니다. --[Leonardong]
[임인택]은 아르바이트 관계로 그날 관계자와 미팅을 갖게 될것 같습니다(관계자라고 해봐야.. 우리과 졸업생이지만.. 단기알바라서 이번주말에 만나야 합니다). 저녁시간대에 잡혀있어서 힘들것 같네요.
어, 나는 연락 못받았는데? 그리고 송년회에 구체적으로 무엇을 할 지 정해진 바가 있다면 알려주세요. 그에 따라 출석여부가 결정될 듯. --JuNe
- 정모/2011.7.11 . . . . 23 matches
* 참가자 : [김수경], [서지혜], [정의정], [권순의], [김준석], [송지원], [임상현], [김태진], [정진경], [고한종]
* 다음주 주자 : [고한종]
* 활동 보고
* 이번주에는 제가 OMS를 하고, 회고는 시간이 없어서 하지 못했지요. OMS를 원래는 제 노트북을 연결해서 하려고 했으나.... 제대로 작동하지 않는다는 사실을 깨닫고 급 바꿔야만 했죠 -,.- 결국 keynote도 쓰지 못하고 ppt로 전환하는바람에 ppt효과도 사망.. 아무튼 한참동안 고민한 주제중에는 나름 잘 골랐던거 같아요. 오늘은 제 후기가 뭐 이런지...;; -[김태진]
* 태진이의 OMS로 첫 스타트를 했네요. 애플에 대해 이야기 하는 것이 주변 친구들을 생각나게 하더군요 -ㅅ-; 지금도 쓰고 있는 MDplayer를 팔고 IPod Classic을 살까 말까 고민중인데다 애플 제품은 잠깐씩만 만져봐서 잘 모르는 상황이었는데, 재미있었습니다. 그래도 고민은 되네요 -ㅅ-a 그러고 나서 뭔가 금방 끝난 것 같네요; - [권순의]
* DP 세미나 참여 때문에 일찍 끝나서 뭔가 약간 아쉬웠습니다. 데블스캠프도 마치고 새로운 스터디/프로젝트도 시작되어서 사실 공유할 수 있는 것들이 많았을텐데 (저 같은 경우 DB2 Certi Program에 대해 좀 공유하고 싶었고..) 다음주를 기약 해야겠어요. 태진이의 OMS는 MacBook의 디스플레이가 원활했다면 keynote로 더 좋은 presentation이 될 수 있었을텐데 아쉬웠을 것 같아요. 본의 아니게 (주제가 Apple이다 보니) 선배님들이 많이 (농담조로) 디스했는데 발표는 좋았답니다. 역시 태진이는 기대치를 높여주는 친구에요. - [지원]
* 태진이가 내가 필요하데서 나왔는데... 아 뭐야 영상통화였냐.. 그건 집에서도 되는거잖앜!! 게다가 맥북 연결이 안 되서 그나마도 안함. 방학중에도 정모는 계속된다는걸 알았음. 와우 애드온 얘기 재밌었어요. 나와서 후회되는거라곤 아 안나왔으면 OMS 안걸리는건데.. 뿐이고 OMS 끝낸 지금은 아무래도 상관없는일! ㅎㅎ! 재밌었음당 앞으로는 자주 참가할께요. - [고한종]
* DP 일정이 급하게 잡혀서 짧게 진행했네요. keynote로 진행되는 OMS를 보나 했더니 케이블때문에 못 봐서 아쉽습니다. Apple사 제품은 조금씩 만져만보고 직접 써본적이 거의 없어서 OMS 재미있게 들었습니다. - [김수경]
* Joseph yodder와의 번개모임이 급잡혀서 정모를 일찍 끝내게 되었습니당 죄송.. 정모에 회장의 역할이 중요하지만 너무 수경이에게 의존적인 것 같아 아쉽습니다. 저도 명색이 부회장인데 제역할을 못하고 있어요..(으 반성) 수경이 혼자 정모를 다 준비하는데 저도 그렇고 다른 임원들도 함께 준비하면 회장이 바쁠 때 대신 진행할 수 있을텐데. 임원이 아니라도 회의 진행자가 필요하다고 생각합니다. 다른분들의 의견은 어떠신지 궁금해요. - [서지혜]
- DPSCChapter3 . . . . 22 matches
를 하지 않고 추상적으로 어떤 상품의 집합(여러 종류의 자동차들)에서 상품(자동차)을 만든다고 하자.
그것은 몸체, 엔진, 변속장치, 그리고 승객 칸막을 포함하는 자동차를 만드는 것이다. 둘째로, 응용 프로그램은 같은 상품의
따라서, 우리는 다른 집합의 부분들을 선택하지 않고, 하나의 집합(Family)으로부터 각각의 자동차 부분들을 쉽게 얻을 수
그리고 모든 faimily에서 같은 코드를 사용해서 부분들을(엔진,변속장치..) 얻는 것을 사용한다.
우리는 아래와 같은 자동차와 자동차 부분들의 클래스를 가지고 있다.
자동차 회사들(Ford)은 자동차, 몸체, 엔진, 심지어 엔진 종류(가솔린 엔지 혹은 디젤 엔진)도 몇몇 다른 모델을 가지고 있다.
그러므로 우리가 여기서 보여주는 것 보다 현실 세계는 좀더 높은 추상을 가지고 있을 것이다. 하지만, 우리의 패턴 묘사를
적용하기에는 충분한 수준의 추상을 제공하고 있다.
하나의 구체적인 팩토리 하위 클래스를 정의한다. 각각의 하위 클래스들은 적당한 부분을 만들고 반환하기 위해서 상품 생성
그리고 이 메쏘드를 오버라이드하는 구체적인 하위 클래스를 추가한다.
CarAssembler 객체가 팩토리 클라이언트라고 추정해보자. 그리고 CarPartFactory 객체를 참조하는 팩토리라고 이름지어진 인스턴스 변수를 갖자.
만약, 팩토리가 FordFactory의 인스턴스였다면, 자동차에 추가되기 위해 얻어진 엔진은 FordEngine일 것이다. 만약 팩토리가 ToyotaFactory였다면, ToyotaEngine은 팩토리의 makeEngine에 의해서 만들어 질 것이고, 그 때 자동차에 추가될 것이다.
하지만, 두 경우에 자동차를 생성하기 위한 코드와 그것의 컴포넌트 하위 부분은 여전히 같다. 즉, 모든 CarPartFactory 클래스들은 동일한 메시지 프로토콜을(다형성)을 구현하기 때문에, 팩토리 클라이언트는 팩토리 타입이 무엇인지 상관하지 않고 호출을 할 수 있다. 그것은 단지 팩토리 프로토콜에 의해 제공되는 일반적인 메시지를 전송한다.
따라서, CarAssmebler를 만들기 위한 자동차 종류가 무엇이고 그 하위 부분들이 무엇을 해야하고, 그것의 실제 부분의 인스턴스가 무엇을 수행해야 할지를 결정한다. ABSTRACT FACTORY 해결은 우리가 CarAssembler 객체 밖의 모든 행동들을 추상화시킨다. 그리고 팩토리로 분리한다. 특별한 자동차 팩토리로 CarAssembler 확인을 한 후에, CarAssembler는 간단하게 구체적인 자동차와 하위 부분을 만들기 위한 팩토리를 호출한다.
ABSTRACT FACTORY 접근은 좀더 모듈적이고, 좀더 쉽게 확장 가능한 디자인을 할 수 있다. 시스템에 새로운 타입의 자동차를 추가하기 위해서, 우리는 CarPartFactory의 서브 클래스를
추가하고 그것을 인스턴스화기 위한 코드가 필요할 뿐이다.
타입이 무엇인지 신경쓰지 않고 같은 생성 메시지를 보내는 것을 팩토리가 수행한다.
- sakurats . . . . 22 matches
* MFC손대고 있습니다.
* OCU때문에 반 강제적으로 PHP에 손대고 있습니다.
* 진로를 막연하게 고민합니다.
* 뒤늦은 공부에 제로위키는 정말 많은 도움이 되고 있습니다. 언제쯤 저도 도움이 되는 사람이 되면 좋겠네요.
=== 하고 싶은 일 ===
아까 버스 정류장에서 하드웨어 하고 싶다고 했었잖아..
참고적으로 하드웨어 하는데는 부속을 사고 하드웨어를 조립하거나 테스트할
장비를 사는데 꽤나 많은 돈이 들고..
(전기 전자에서 하는 하드웨어를 생각하고 말하는거라..
진로를 막연하게 고민하고 있습니다. -- 혜욘
음.. 나도 막연히 고민하는데.. 어느 길로 가든 충격이 크지 않게 준비를 해두면서 막연한 고민을 구체화시키는 게 현재 내가 할 수 있는 일 같아. ^^ --창섭
막연한 고민은 아무것도 고민하지 않는것 보다 오히려 좋지 않은걸지도 몰라.. 또 고민하기 전에 상대를 먼저 아는것이 더 도움이 될거 같고.. 그래서 지금 생각하는건.. 할수있는 만큼의 몇가지 도전들을 해보려고.. 헐헐. 이번에도 흐지부지하게 끝이 나지 않았으면 좋으련만. 노력해야지. -- 혜욘
wiki:NoSmok:노스모크 에서 여기 링크되어 있는 것을 보고, 네가 전에 제로페이지 회원이라고 했던 것이 기억나서 와봤는데, 역시 있구나. 반갑다. 공부는 잘 되니? -- wiki:NoSmok:이응준
- 마이포지셔닝 . . . . 22 matches
* 이책은 글로벌CEO 특강에서 스파이렉스 사코사의 박인순 사장님이 아주 아주 강력하게 추천해서 정현이와 공동 구매 해서 샀다. 아직 도서관에는 안 들어 왔는데 지금 우선 신청은 해놓은 상태다. 우선 전체적인 느낌은 보통의 성공학, 자기계발서는 어찌 좀 뜬구름 잡는듯한 내용도 많았는데 이책은 아주 현실적으로 접근하고 있다. 처세서, 성공학 같은 책중에서 이책이 가장 솔직하고 정확하게 그 길을 제시해주는거 같다. 저런 책에 관심이 있다면 이 책을 꼭 읽어 보는게 좋다. 누군가와 협력하고, 누군가의 장점을 알아볼수 있고, 좋은 아이디어를 알아볼수 있는 능력이 정말 핵심인거 같다. 그리고 혼자 잘나서 다 할수 있다는 생각을 가지면 절대 안되고, 자신이 올라탈 말이 있어야 한다. 그리고 2막은 없다는 이야기가 있는데 1막에서 성공하였다고 해서, 그 똑같은 일을 그 회사 나와서 다시 다른 회사 차려서 해서 성공하는 경우는 거의 없다. 그것은 자기 자신이 시기를 잘 만나서 성공한게 아니라 자기가 잘나서 성공한거라는것을 대중에게 보여주고자 하는 자아 때문인데, 그런 자아를 가지고서 다시 성공할 수도 없다. '수로부여'라고 자신이 한번 잘되었던 일이 있으면 계속 그런식으로 일을 하는것을 말하는 특성이 있는데, 두번째로 할때도 첫번째것이 성공하였다고 그런식으로 똑같이 해서 어떤 경쟁력도 생길수 없다.
* 이책에서는 자기 혼자서는 아무것도 할수 없다고 한다. 그리고 우리가 보통 믿고 있는것과 같이 아주 죽으라고 공부하고 일만해서 성공할 확률은 1%정도밖에 안된다고 한다. 확실히 맞는말 같다. 우리는 무조건 공부만 열심히 하면 될꺼라는 생각을 주입받았지만 그렇게 해서 성공하는건 정말 1%도 안될 정도로 힘들다고 본다. 뭐 어느정도 안정된 생활은 가능할지도 모르겠다.
* 그리고 '일하는 능력'보다 '눈에 띄는 능력'이 더 중요하다고 한다. 그래서 최대한 CEO 근처에 있으라고 한다.
- 상협/Diary/8월 . . . . 22 matches
* 많이도 말고, 일주일에 책 1권씩만 읽자 ㅠㅜ Failure
* 오늘 과외 하나 더 들어 왔다. 아싸~ 근뎅 이번에는 정석으로 못 가르칠거 같당..-_-, 내 밥벌이인 정석으로..ㅠㅜ 또 고3이당. 쩝.. ㅡㅡ;;
|| 할일 || 분량 || 체크 || 비고 ||
* 오후에 학교에서 해주는 공짜 영어회화반 가구, 그거 끝나고 나서 기숙사에 좀 있다가 우리 누나가 불러서 누나랑 좀 놀구 저녁잠좀 자고 이것저것 하다가 시간 다 갔다. -_-;
|| 할일 || 분량 || 체크 || 비고 ||
* 오늘 갑자기 아주 조금씩의 미학이 떠올랐다. 하루에 어떤것을 아주 조금씩 하는것은 그것을 아예 안하는것보다 낮다고나 할까.. 뭐 당연한 말인데 갑자기 퍼뜩 몸으로 느꼈다. 그런 의미해서 사놓은 책이랑 제본해놓은 책을 앞으로 하루에 조금씩 봐야 겠다.
* 엠티갔다가 와서 과외 2건 뛰고 헉헉헉.. -_-;;
|| 할일 || 분량 || 체크 || 비고 ||
|| 할일 || 분량 || 체크 || 비고 ||
* 오늘은 과외가고 낮잠 자고 또 과외 가고 끝나는 구낭.. -_-;;
|| 할일 || 분량 || 체크 || 비고 ||
|| 할일 || 분량 || 체크 || 비고 ||
|| 할일 || 분량 || 체크 || 비고 ||
* 뭘했는지 잘 기억이.. -_-;; WinSock 좀 보고, ["비행기게임"] 이것도 좀 하궁..
|| 할일 || 분량 || 체크 || 비고 ||
|| 할일 || 분량 || 체크 || 비고 ||
|| 할일 || 분량 || 체크 || 비고 ||
* 이젠... 초 슈퍼 폐인이 되버린거 같다.. -_-;; 아침에 일어나서 아침밥 먹고 나서... 꼭 아침잠을 잔다..-_-;;;; 이렇게 해서 2학기때 학교 생활을 어떻게 할지 걱정이 된당.. -_-;;
|| 할일 || 분량 || 체크 || 비고 ||
- 상협/Diary/9월 . . . . 22 matches
* 장점 : 만약 가기로 하면 맘은 편하다. 보통 사람들이 택하는 길이기 때문에 심리적으로 부담이 없다. 군대에서 배울게 있다고 한다. 다행히 기숙사에서 그런거 좀 배워서 그런거 배우는거는 군대직접 가서 안배워도 될거 같다.
* 단점 : 선택하고나면 그 과정에서 내가 노력을 안해도 된다. 군대에 가서 그 안에서 생활 하는것은 쉽지 않겠지만, 무언가 목표를 잡고 열심히 하고 그런거는 없는거 같다.
* 3학년 1학기 마치고 군대 가는 방향임.
* 장점 : 이 길을 선택하면 내가 노력을 많이 하게 된다. 학사 병특가는게 쉽지 않다고 하는 만큼 널럴하게 놀면서 지내지는 않을 테니깐.
* 단점 : 만약 실패하면 3단계 석사 병특을 노리거나, 군대에 끌려 간다. -_-; 심리적 부담감이 좀 크다. 요새 병특 인원 줄인다고 난리다. -_-;
* 대학원 가고 나서 병특 가기
* 장점 : 군대에 갔었다면 머리가 굳었을텐데 그 동안 하고싶은 공부 다하고 자기 실력을 쌓는다. 석사 병특 갈려고 공부 열나 열심히 하게 된다. 대학원 갈려면 학점이 좋아야 하니깐. 또한 TOEFL도 잘 나와야 하니깐 공부 많이 할거 같다.
* 단점 : 국내 대학원 떨어지면 군대 가야 한다. -_-; 심리적인 부담감이 만빵이다. 또 석사로 유학도 못간다. 유학 가고 싶었는데. 쩝.-_-;
* 현재로서는 군대 가는것은 평범한 해결책이고 부담없는 방법인거 같다. 군대 가서 굴르고 하는거는 안해봐서 뭐라고 말은 못해도 그렇게 거부감이 들지는 않는다. 기숙사랑 친근한 분위기일거 같다. -_-; 다만 안그래도 굳은 머리가 완전히 굳어 버려서 창조적인 사고가 마비될꺼 같은게 좀 걸린다. 다른 해결책들은 좀 스릴이 있는거 같다. 노력도 많이 해야 할거 같다. 어차피 한번사는 인생 스릴있게 갈때까지 가볼까나..쩝..
* 너무 심각하게 생각하지 말아야 겠다. 뭐 최악의 경우라고 해봤자 나이 엄청 먹어서 군대가서 젊은 얘들한테 욕먹는건데, 그정도를 못버티면 내 자질이 부족한거니깐.
* 요새.. 사는게 고달프다... -_-;; 뭔가 김빠진 콜라 같다... 뭔가를 해야 다시 힘이 솟을거 같은데.. 참..막 도피하고자 하는 생각만 있어서 잠만 많이 자는거 같다. 걸핏하면 잔다...
* 기숙사 야유회 끝났고, 친구 만나고 별로 한거 없다. -_-;
|| 할일 || 분량 || 체크 || 비고 ||
- 새싹교실/2011/쉬운것같지만쉬운반/2011.3.29 . . . . 22 matches
3. 연산자 우선순위가 같은 연산자끼리의 연산 방향을 결정하는 것을 무엇이라고 하는가?
4. 다음 printf 함수와 scanf 함수 사용 중 틀린 것을 고르고, 제대로 고치시오.
(고친 부분에 대해서는 하이라이트 표시해주세요~ 하이라이트는 따옴표세개로 양 옆을 감싸주면 됩니다~)
scanf("%d", x); //x는 int형 으로 선언되어 있다고 가정.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 오늘은 표준 입출력 함수, 상수&변수의 의미와 각종 연산자들에 대해서 배웠다. 역시 배우면 배울수록 흥미롭다. 그런데 용운이는 다 알고있고 형준이는 안오고 뭔가 나만 배우고 있는 듯한 느낌이...... ㅜㅜ. 아무튼 지금은 무식해도 올해가 끝나갈 쯤엔 나도 C언어 마스터가 되야지. - 송치완
* 오늘 가르치면서 느낀건 내가 준비가 좀 부족했다는 것이다. 시나리오가 제대로 준비되지 않아, 말에 두서가 없었다. Flexible하게 해보려고 하는 것도 좋지만, 일단 최소한의 시나리오는 그리고 해야 할 것 같다. 그리고 컴퓨터로 실습을 하려고 했는데, 다음부터는 일단 개념적으로 익히고 실습을 해야겠다. 손에 익숙해지는 것도 중요하지만, 우선적으로 머리가 추측을 할 수 있도록 하는게 더 중요한 것 같다. 그 사이의 갭은 점점 실습을 통해 줄여나가면 될 것 같다. - [박성현]
scanf("%d", x); //x는 int형 으로 선언되어 있다고 가정.
고치면
scanf("%d", x); //x는 int형 으로 선언되어 있다고 가정.
scanf("%d", '''&'''x); //x는 int형 으로 선언되어 있다고 가정.
scanf("%d", &x); //x는 int형 으로 선언되어 있다고 가정.
- 프로그래머가지녀야할생각 . . . . 22 matches
모든 ZP인들에게 미안하게 생각합니다. 갑자기 뚱딴지 같은 생각이 났습니다. 과연 ["programmer"]들이 항상 마음에 지니고 있어야 할 ["생각"]은 무엇일까요? 어떤 생각들을 항상 지니고 있어야 잘못된 행동(사고 포함)을 하지 않을 수 (혹은 하고 있다는 것을 깨달을 수 )있을까요? ["programmer"]들이 꼭 지니고 있어야 할 생각들이 무엇일까? 궁금합니다.
DeleteMe--우선 윗글에서 (확실히) 불분명한 두 단어를 사용하였는데 하나는 ["programmer"]이고 다른것은 ["생각"]이라는 단어입니다. 우선 단어 정의가 필요한거 같은데..대충 비슷하게는 생각할꺼 같은데 정교화가 필요할꺼 같군요. 재밌고 유익한 토론이 되었으면 합니다.
''미안하다고 한건 생각한다는 것은 그 자체가 에너지를 낭비하는 힘든 일이라서 결국 내가 힘든일 시킨게 되잖아. --nautes''[[BR]]
제 생각에 현대 사회에서 근면이라는 가치는 상대적으로 많이 떨어졌다고 생각합니다. 요즘 같이 한 사람에게 많은 일을 짧은 시간 내에 요구하는 사회에서 근면함이 얼마나 큰 가치를 지닐 수 있을지는 곰곰히 생각해보아야 할 것 같습니다. 그리고 부지런하지도 게으르지도 않은 사람도 많습니다. 자책하지 마세요. :) (혹시 진짜 게으른.. --+) -- nautes
너무나 이상적이고 추상적인 생각이겠지만 '프로그래머는 사회에 이익이 되는 프로그램을 만들어야 한다'는 근본적인 생각을 갖는 건 어떨까요? 예를 들어 재미있는 오락도 좋겠지만 장애인이나 나이 많이 드신 분들을 위한 보조용프로그램 같은 것들이 많이 개발되어야 한다고 생각합니다. 전에 정보요원단 활동을 할 때 우리나라에 보급되어 있는 장애인용 프로그램들이 많이 부족한 현실을 봤었는데... 내가 만든 프로그램이 남에게 도움이 된다면 그보다 좋을 일이 또 있을까요? ^^ -- jeppy
스스로 무엇을 이루고자 하는지 그 뜻을 세우는 것도 중요하다고 생각합니다.
프로그래머는 예술가가 될수도 있고, 스니커가 될수도 있고, 비난을 듣는 경영자로 변신할 가능성도 있지요. --혀뉘
* 다들 인간으로써의 프로그래머를 두고 말씀하시는 것 같아 제 말이 뚱딴지처럼 들릴 것 같네요...^^;[[BR]]전 말이죠... 프로그래머는 컴퓨터를 사랑해야한다고 생각합니다. 정말 제가 생각해서 어이없는 말 같지만, 프로그래머는 컴퓨터에게 명령만 내리는 것이 아니라 컴퓨터와의 커뮤니티가 형성되어야 좋은 프로그램(인간에게가 아니라 컴에게)을 짤 수 있다고 생각합니다. 지극히 추상적이라서 반박의 여지가 많은 말이지만 그냥 그렇지 않을까 생각해봅니다. 컴퓨터에 미친 사람이라면 다음의 말에 공감을 할 지도 모르겠네요. [해커를 위한 파워핸드북]표지에 나오는 말입니다. ''''컴퓨터 속에서 흘러 다니던 비트가 내 혈관 속으로 옮겨와 흐르기 시작하고, 나는 컴퓨터와 함께 오르가즘을 느낀다.'''' --["창섭"]
* 위엣 말이 컴퓨터 자체에 관한 기계적 이야기라면 인간적 이야기도 추가하고 싶어요. 프로그래머는 프로그램 이전에 인간을 먼저 생각해야 한다는 것이죠... 상민이 형이 줬던 V노트에 나온 말이 인상깊습니다. ''''크래커든 프로그래머든 둘다 시작은 해커를 꿈꾼 젊은이 였으며, 인격을 가진 사람이다. 악이 없이 선이 없듯이 크래커가 영원히 존재하지 않을수는 없을지라도 지금 당신의 열정과 땀으로 주어질 선택이 진정한 존경으로 돌아올수 있도록 유혹을 이겨낸 진짜 승자가 되어야 하지 않을까......'''' --["창섭"]
DeleteMe) 태권V 님이라고 이번달 마소Jr인가 저번달 마소Jr에 등장하는 단체의 장인거 같은데. 찾아봐봐 devpia에 주로 활동 --상민
- Gof/Command . . . . 21 matches
때때로 요청받은 명령이나 request를 받는 객체에 대한 정보없이 객체들에게 request를 넘겨줄 때가 있다. 예를 들어 user interface tookit은 button이나 menu처럼 사용자 입력에 대해 응답하기 위해 요청을 처리하는 객체들을 포함한다. 하지만, 오직 toolkit을 사용하는 어플리케이션만이 어떤 객체가 어떤일을 해야 할지 알고 있으므로, toolkit은 button이나 menu에 대해서 요청에 대해 명시적으로 구현을 할 수 없다. toolkit 디자이너로서 우리는 request를 받는 개체나 request를 처리할 operations에 대해 알지 못한다.
Command Pattern은 request 를 객체화함으로서 toolkit 객체로 하여금 불특정한 어플리케이션 객체에 대한 request를 만들게 한다. 이 객체는 다른 객체처럼 저장될 수 있으며 pass around 가능하다. 이 pattern의 key는 수행할 명령어에 대한 인터페이스를 선언하는 추상 Command class에 있다. 이 인터페이스의 가장 단순한 형태에서는 추상적인 Execute operation을 포함한다. 구체화된 Command subclass들은 request에 대한 receiver를 instance 변수로 저장하고 request를 invoke하기 위한 Execute operation을 구현함으로서 receiver-action 짝을 구체화시킨다. The receiver has the knowledge required to carry out the request.
어플리케이션은 각각의 구체적인 Command 의 subclass들로 각가각MenuItem 객체를 설정한다. 사용자가 MenuItem을 선택했을때 MenuItem은 메뉴아이템의 해당 명령으로서 Execute oeration을 호출하고, Execute는 실제의 명령을 수행한다. MenuItem객체들은 자신들이 사용할 Command의 subclass에 대한 정보를 가지고 있지 않다. Command subclass는 해당 request에 대한 receiver를 저장하고, receiver의 하나나 그 이상의 명령어들을 invoke한다.
OpenCommand의 Execute operation은 다르다. OpenCommand는 사용자에게 문서 이름을 물은뒤, 대응하는 Document 객체를 만들고, 해당 문서를 여는 어플리케이션에 문서를 추가한 뒤 (MDI를 생각할것) 문서를 연다.
때때로 MenuItem은 연속된 명령어들의 일괄수행을 필요로 한다. 예를 들어서 해당 페이지를 중앙에 놓고 일반크기화 시키는 MenuItem은 CenterDocumentCommand 객체와 NormalSizeCommand 객체로 만들 수 있다. 이러한 방식으로 명령어들을 이어지게 하는 것은 일반적이므로, 우리는 복수명령을 수행하기 위한 MenuItem을 허용하기 위해 MacroCommand를 정의할 수 있다. MacroCommand는 단순히 명령어들의 sequence를 수행하는 Command subclass의 구체화이다. MacroCommand는 MacroCommand를 이루고 있는 command들이 그들의 receiver를 정의하므로 명시적인 receiver를 가지지 않는다.
이러한 예들에서, 어떻게 Command pattern이 해당 명령을 invoke하는 객체와 명령을 수행하는 정보를 가진 객체를 분리하는지 주목하라. 이러함은 유저인터페이스를 디자인함에 있어서 많은 유연성을 제공한다. 어플리케이션은 단지 menu와 push button이 같은 구체적인 Command subclass의 인스턴스를 공유함으로서 menu 와 push button 인터페이스 제공할 수 있다. 우리는 동적으로 command를 바꿀 수 있으며, 이러함은 context-sensitive menu 를 구현하는데 유용하다. 또한 우리는 명령어들을 커다란 명령어에 하나로 조합함으로서 command scripting을 지원할 수 있다. 이러한 모든 것은 request를 issue하는 객체가 오직 어떻게 issue화 하는지만 알고 있으면 되기때문에 가능하다. request를 나타내는 객체는 어떻게 request가 수행되어야 할지 알 필요가 없다.
* logging change를 지원하기 원할때. logging change 를 지원함으로서 시스템 충돌이 난 경우에 대해 해당 command를 재시도 할 수 있다. Command 객체에 load 와 store operation을 추가함으로서 change의 log를 유지할 수 있다. crash로부터 복구하는 것은 디스크로부터 logged command를 읽어들이고 Execute operation을 재실행하는 것은 중요한 부분이다.
- ConcreteCommand 객체를 만들고 receiver로 정한다.
- 처리할 request에 대해 명령어들을 어떻게 수행해야 할지 알고 있다. 어떠한 클래스든지 Receiver로서 활동가능하다.
* client는 ConcreteCommand 객체를 만들고, receiver를 정한다.
1. Command는 해당 객체의 명령을 invoke하는 객체와 어떻게 수행해야 할지 알고 있는 객체와의 결합을 해제한다.
4. 새로운 Command를 추가하기가 쉽다. 왜냐하면 이미 존재하고있는 클래스들을 고칠 필요가 없기 때문이다.
undo 할 필요가 없고, 인자를 요구하지 않는 단순한 명령어에 대해서 우리는 command의 receiver를 parameterize하기 위해 class template를 사용할 수 있다. 우리는 그러한 명령들을 위해 template subclass인 SimpleCommand를 정의할 것이다. SimpleCommand는 Receiver type에 의해 parameterize 되고
MacroCommand는 부명령어들의 sequence를 관리하고 부명령어들을 추가하거나 삭제하는 operation을 제공한다. subcommand들은 이미 그들의 receiver를 정의하므로 MacroCommand는 명시적인 receiver를 요구하지 않는다.
아마도 CommandPattern에 대한 첫번째 예제는 Lieberman 의 논문([Lie85])에서 나타났을 것이다. MacApp [App89] 는 undo가능한 명령의 구현을 위한 command의 표기를 대중화시켰다. ET++[WGM88], InterViews [LCI+92], Unidraw[VL90] 역시 CommandPatter에 따라 클래스들을 정의했다. InterViews는 각 기능별 명령에 대한 Action 추상 클래스를 정의했다. 그리고 action 메소드에 의해 인자화됨으로서 자동적으로 command subclass들을 인스턴스화 시키는 ActionCallback 템플릿도 정의하였다.
THINK 클래스 라이브러리 [Sym93b] 또한 undo 가능한 명령을 지원하기 위해 CommandPattern을 사용한다. THINK 에서의 Command들은 "Tasks" 로 불린다. Task 객체들은 ChainOfResponsibilityPattern에 입각하여 넘겨지고 소비되어진다.
- Gof/Facade . . . . 21 matches
서브시스템의 인터페이스집합에 일관된 인터페이스를 제공한다. Facade는 고급레벨의 인터페이스를 정의함으로서 서브시스템을 더 사용하기 쉽게 해준다.
서브시스템을 구축하는 것은 복잡함을 줄이는데 도움을 준다. 일반적인 디자인의 목적은 각 서브시스템간의 통신과 의존성을 최소화시키는 것이다. 이 목적을 성취하기 위한 한가지 방법으로는 단일하고 단순한 인터페이스를 제공하는 facade object를 도입하는 것이다.
예를 들기 위해, 어플리케이션에게 컴파일러 서브시스템을 제공해주는 프로그래밍 환경이 있다고 하자. 이 서브시스템은 컴파일러를 구현하는 Scanner, Parser, ProgramNode, BytecodeStream, 그리고 ProgramNodeBuilder 클래스를 포함하고 있다. 몇몇 특수화된 어플리케이션은 이러한 클래스들을 직접적으로 접근할 필요가 있을 것이다. 하지만, 대부분의 컴파일러 시스템을 이용하는 클라이언트들은 일반적으로 구문분석(Parsing)이나 코드 변환 (Code generation) 의 세부적인 부분에 대해 신경쓸 필요가 없다.(그들은 단지 약간의 코드를 컴파일하기 원할뿐이지 다른 강력한 기능을 알 필요가 없다.) 그러한 클라이언트들에게는 컴파일러 서브시스템의 강력하지만 저급레벨인 인터페이스는 단지 그들의 작업을 복잡하게 만들 뿐이다.
이러한 클래스들로부터 클라이언트들을 보호할 수 있는 고급레벨의 인터페이스를 제공하기 위해 컴파일러 서브시스템은 facade 로서 Compiler class를 포함한다. 이러한 클래스는 컴파일러의 각 기능성들에 대한 단일한 인터페이스를 정의한다. Compiler class는 facade (원래의 단어 뜻은 건물의 전면. 외관, 겉보기..) 로서 작용한다. Compiler class는 클라이언트들에게 컴파일러 서브시스템에 대한 단일하고 단순한 인터페이스를 제공한다. Compiler class는 컴파일러의 각 기능들을 구현한 클래스들을 완벽하게 은폐시키지 않고, 하나의 클래스에 포함시켜서 붙인다. 컴파일러 facade 는저급레벨의 기능들의 은폐없이 대부분의 프로그래머들에게 편리성을 제공한다.
* 복잡한 서브 시스템에 대해 단순한 인터페이스를 제공하기 원할때. 서브시스템은 종종 시스템들이 발전되어나가면서 더욱 복잡성을 띄게 된다. 대부분의 패턴들은 패턴이 적용된 결과로 많고 작은 클래스들이 되게 한다. 패턴의 적용은 서브시스템들이 더 재사용가능하고 커스터마이즈하기 쉽게 하지만, 커스터마이즈할 필요가 없는 클라이언트들이 사용하기 어렵게 만든다. Facade는 서브시스템에 대한 단순하고 기본적인 시각을 제공한다. 이러한 시각은 대부분의 클라이언트들에게 충분하다. 커스터마이즈가 필요한 클라이언트들에게만이 facade를 넘어서 볼 필요가 있는 것이다.
* 서브시스템에 계층을 두고 싶을 때. 각 서브시스템 레벨의 entry point를 정의하기 위해 facade를 사용하라. 만일 각 서브시스템들이 서로 의존적이라면 서브시스템들간의 대화를 각 시스템간의 facade로 단일화 시킴으로서 그 의존성을 단순화시킬 수 있다.
- facade 에 대한 정보가 필요없다. facade object에 대한 reference를 가지고 있을 필요가 없다.
* 클라이언트는 Facade에게 요청을 보냄으로서 서브시스템과 대화한다. Facade 객체는 클라이언트의 요청을 적합한 서브시스템 객체에게 넘긴다. 비록 서브시스템 객체가 실제 작업을 수행하지만, facade 는 facade 의 인퍼페이스를 서브시스템의 인터페이스로 번역하기 위한 고유의 작업을 해야 할 것이다.
1. 서브시스템 컴포넌트로부터 클라이언트들을 보호한다. 그러함으로서 클라이언트가 다루는 객체의 수를 줄이고, 서브시스템을 이용하기 쉽게 해준다.
이 구현에서는 사용하려는 code-generator의 형태에 대해서 hard-codes (직접 특정형태 부분을 추상화시키지 않고 바로 입력)를 했다. 그렇게 함으로서 프로그래머는 목적이 되는 아키텍처로 구체화시키도록 요구받지 않는다. 만일 목적이 되는 아키텍처가 단 하나라면 그것은 아마 이성적인 판단일 것이다. 만일 그러한 경우가 아니라면 우리는 Compiler 의 constructor 에 CodeGenerator 를 인자로 추가하기 원할 것이다. 그러면 프로그래머는 Compiler를 instance화 할때 사용할 generator를 구체화할 수 있다. Compiler facade는 또한 Scanner나 ProgramNodeBuilder 등의 다른 협동하는 서브시스템클래스를 인자화할 수 있다. 그것은 유연성을 증가시키지만, 또한 일반적인 사용형태에 대해 인터페이스의 단순함을 제공하는 Facade pattern의 의의를 떨어뜨린다.
ET++ application framework [WGM88] 에서, application은 run-time 상에서 application의 객체들을 살필 수 수 있는 built-in browsing tools를 가지고 있다.이러한 browsing tools는 "ProgrammingEnvironment'라 불리는 facade class를 가진 구분된 서브시스템에 구현되어있다. 이 facade는 browser에 접근 하기 위한 InspectObject나 InspectClass같은 operation을 정의한다.
ET++ application은 또한 built-in browsing support를 없앨수도 있다. 이러한 경우 ProgrammingEnvironment는 이 요청에 대해 null-operation으로서 구현한다. 그러한 null-operation는 아무 일도 하지 않는다. 단지 ETProgrammingEnvironment subclass는 각각 대응하는 browser에 표시해주는 operation을 가지고 이러한 요청을 구현한다. application은 browsing environment가 존재하던지 그렇지 않던지에 대한 정보를 가지고 있지 않다. application 과 browsing 서브시스템 사이에는 추상적인 결합관계가 있다.
Choices operating system [CIRM93] 은 많은 framework를 하나로 합치기 위해 facade를 사용한다. Choices에서의 key가 되는 추상객체들은 process와 storge, 그리고 adress spaces 이다. 이러한 각 추상객체들에는 각각에 대응되는 서브시스템이 있으며, framework로서 구현된다. 이 framework는 다양한 하드웨어 플랫폼에 대해 Choices에 대한 porting을 지원한다. 이 두 서브시스템은 '대표자'를 가진다. (즉, facade) 이 대표자들은 FileSystemInterface (storage) 와 Domain (address spaces)이다.
Mediator 는 존재하는 class들의 기능들을 추상화시킨다는 점에서 Facade와 비슷하다. 하지만 Mediator의 목적은 정해지지 않은 동료클래스간의 통신을 추상화시키고, 해당 동료클래스군 어디에도 포함되지 않는 기능들을 중앙으로 모은다. Mediator의 동료클래스들은 Mediator에 대한 정보를 가지며 서로 직접적으로 통신하는 대신 mediator를 통해 통신한다. 대조적으로 facade는 단지 서브시스템들을 사용하기 편하게 하기 위해서 서브시스템들의 인터페이스를 추상화시킬 뿐이다. facade는 새로운 기능을 새로 정의하지 않으며, 서브시스템 클래스는 facade에 대한 정보를 가질 필요가 없다.
- JavaStudy2004 . . . . 21 matches
=== 고정 참여자 ===
* ''''숙제 및 파일 업로드는 페이지 하단의 UploadFile을 참고해서 하시면 됩니다''''
=== 참고 ===
http://java.sun.com/ - Java 제작사인 sun사의 홈페이지. tutorial이나 api, example 등을 찾아볼 수 있고 다운받을 수 있는 곳
* 추천도서 - Java HowToProgram - Deitel사. 2학년 전공 JavaProgrammingClass에서 교재로 사용하는 책. 간단하고 쉽다. 자바를 처음 시작하는 이에게 추천도서
진행 방식 및 방향에 대해서는 다른 분들의 의견을 더욱 수렴하고 싶네요 원하는 것이 있으면 적어주세요 --[iruril]
* 교장은 밥사는 역할이지? 다알고 있어 ㅋㅋ -[iruril]
* 시간이 너무 늦어지고 있네요,,; 월화요일은 빼고 했으면 하는데 어떤 요일이 좋을까요? --[iruril]
그리고 실습 같은것을 2명 짝 PairProgramming으로 하는걸 생각하고 있습니다
* 와 재밌겠다.. 나도 요새 자바에 치어 살고 있는데. ㅡ.ㅡa --[snowflower]
* 지금의 플레이어 외에 조동영, 윤성만, 박진영 학우가 같이 한다고 합니다. 기분 좋게 많아 지네 - [이승한]
* 요새 난 영국 유학생 1학년 대상으로 자바 과외하는데... Pair로 하니까 금방 따라오더라. 내가 먼저 시범을 보이고 그것을 약간 응용한 것을 해보라고 한다. Pair 바꾸는 시간은 약 5~7분. 내가 시범 보이면서 말로 설명도 해야하기 때문에 그정도가 적당. 보통 설명할 때는 펜으로 종이에 그림으로 하고. --재동
토요일도 괜찮고, 미리 해야할 건 없는데 일단은 첫번째 수업페이지를 내일 간단히 올리겠습니다. 그냥 한번 읽어보셔도 되요 --[iruril]
* 어제 오늘 친구들과 잠시 멀리 놀러갔었습니다. 노느라고 수민이형과 승한이의 전화를 못 받은 점 사과드립니다. - [윤성만]
* 새 언어를 배우면서 너무 툴에 의존하는 것 같다. 툴을 배우는게 언어를 배운다는 것을 잊지말자. 메모장으로 하는 것도 나쁘지 않고 --[강희경]
* 선생님만 19일 모임을 기억하고 있었더군요;; ㅋㄷㅋㄷ 금요일에 다시 모이기로 했습니다. - [이승한]
* 다음번 시간을 언제로 잡을까요? 수요일은 제가 안되네요 금요일쯤 생각하고 있는데 어떤가요? --[iruril]
- PairProgrammingForGroupStudy . . . . 21 matches
선후배끼리 서로 세미나를 할 때 숙제 내주고 검사하는 식의 단선적인 것 말고 좀 더 적극적인 공부가 될 수 있는 방법을 소개합니다. 아주 짧은 시간 안에 많은 양의 학습(여기서 학습을 했다고 하는 것은 뭔가 할 수 있는 능력이 생겼다는 것)을 할 수 있습니다.
PairProgramming이란 ExtremeProgramming이라고 하는 새로운 소프트웨어 개발 방법론의 한가지 기법으로, 두명이 한 컴퓨터를 이용해서 같이 프로그래밍을 하는 것을 말합니다.
지식관리의 세계적 학자 노나카 이쿠지로 교수는 지식에 형식지와 암묵지가 있다고 합니다. 형식지는 문서화, 규칙화, 수식화된 지식을 말하고, 암묵지는 그렇지 못한 것들을 말합니다. 그런데, 어떤 전문가가 가진 지식이라는 것은 거의 대부분이 암묵지입니다. 이제까지는 형식지의 전달에만 신경을 쏟았지 암묵지는 별 관심을 받지 못했고, 교육 모델에서도 중요하게 다뤄지지 못했습니다. (덕분에 유명한 인간문화재의 대가 끊기는 일이 빈번했죠.)
그런데 이런 암묵지는 전문가와 학생이 같은 공간을 점유하며 함께 일하고 생활하는 속에서 가장 효과적으로 학습됩니다. 도제식 수업(apprenticeship)을 일컫는 것이죠.
기존의 영웅적인 프로그래머들의 일화를 들어보면 자신들이 비약적인 발전을 했던 시기는 대부분 "훌륭한 프로그래머"와 함께 일을 할 수 있었던 때라고 입을 모읍니다.
우리과 후배들이 하듯 개인별 숙제를 내주고 이를 검사하는 것도 좋지만 이러면 효과적인 학습이 잘 이뤄지지 않습니다. 같은 공간에서 함께 공부할 여유가 있다면 이런 개별 학습보다 공동 학습이 더 효과적입니다.
예를 들어, A, B, C, D, E, F, G, H라는 여덟 명이 한 팀을 이룬다고 가정합시다. 여기서, A와 B가 전문가이고 나머지는 비숙련자라고 하죠.
이렇게 되면 E와 F는 전문가인 A와 B와 직접 PairProgramming을 하고 나머지 네명은 자기들끼리 PairProgramming을 하게 되죠. 처음 pairing에서 C와 G, D와 H는 태스크를 완수해지 못해도 괜찮습니다 -- 대신 문제 영역을 탐색하는 동안 어느 정도의 학습은 발생하거든요.
이 상태에서는 A와 B는 ExpertRating이 0이고, E와 F는 1이 됩니다. 이 개념은 Erdos라는 수학자가 만든 것인데, Expert 자신은 0이 되고, 그 사람과 한번이라도 pairing을 했으면 1이 됩니다. 그리고, expert와 pairing한 사람과 pairing을 하면 2가 됩니다. expert는 사람들의 ExpertRating을 낮추는 식으로 짝짓기 스케쥴링을 맞춰갑니다. 물론 처음에는 C,D,G,H는 아무 점수도 없죠. 이럴 때는 "Infinite"이라고 합니다.
이렇게 pairing을 할 수 있겠죠. 역시 아까와 동일한 태스크를 수행합니다. 대신 좀전 pairing에서 얻은 지식을 기반으로 좀 더 나은 프로그램을 새로 작성하는 겁니다. 각자 이전 경험이 다르므로(다른 사람과 짝짓기를 했으므로) 둘이 협력하면 서로 가르쳐 주고 배우면서 시너지 효과를 낼 수도 있습니다.
이런 식으로 같은 태스크를 짝을 바꿔가며 두 세 번만 반복하게 되면, 매 번 할 때 마다 아까보다는 좀 더 나은 작업을 할 수 있게 되고, "문제 발견 -> 해결"의 학습을 하게 됩니다. 나쁜 코드를 보고, 이게 좋은 코드로 바뀌는 그 과정을 직접 경험하는 것이죠.
- ProjectZephyrus/ThreadForServer . . . . 21 matches
이 아주 간단하고 단순한 프로그램을 수행하기 위해서 아래의 두가지 라이브러리가 필요 하다. 다운 받아서 클래스 패스에 잡아 놓기 [[BR]]
* 메신저에서 A라는 사람이 B라는 사람을 대화상대로 추가했다. B라는 사람이 접속중이라면 "A라는 사람이 당신을 추가했습니다"라고 알려줘야 한다. B라는 사람이 접속중이 아니라면 로그인 할 때 "A라는 사람이 당신을 추가했습니다"라고 알려줘야 한다.... --상규
Test는 본인이 하고 Journey에 적어라.
역시 이전까지 해왔던 데로 JavaDoc으로 일의 순서 주고 코딩하시길
그후 남은 할일이라면, 현재 InfoManager가 다른 package임에도 불구하고 command package에 대한
pair로 이름을 정하는 작업을 하든, 아니면 내가 일괄적으로 하고 나중에 다시 네가 마음에 안드는 부분을
그리고 재동,
일단 내가 전화를 안하고 그냥 둔 것이 일차적인 책임이 있겠지만, 그것만으로 책임을 두기에는
90%는 예측 못하는 10%외에 완료되었다고 봐도 된다.
없다고 보면 된다.
그리고 둘다에게
앞의 일이 끝나고 나서 이후
학교 컴퓨터에서 Server, Client팀이 모여서 전체 acceptance 테스트 해보고
Server팀이 Client팀에게, Client팀이 Server팀에게 디자인에 대한 설명을 하고
문제는 2주후가 시험이고, 시험후 곧바로 데블스 캠프를 계획해둔만큼, 위의 사항에 관하여는
데블스 캠프가 끝난 이후, 혹은 데블스 캠프 중에 이루어 질수도 있다고 생각한다.
이럴경우 디자인의 설명에 청자가 서로 팀이가 아니라 듣고 싶은 사람 모두로 지정할수도 있을 것이다.
* 혹시 자네가 branch 만들었나? 기록에는 그렇게 되어 있는데? 그리고 위에 정확히 언급이 안되어 있는가 본데, 낮에 잠깐 설명한데로 끝났다. 진행 상황은 ["ProjectZephyrus/Server"]에 기재해 두었으므로 참고하도록. --["상민"]
* 그리고 재동 CVS테스트 할려면 새로 하나 프로젝트를 만들어서 해라. --["상민"]
- SeminarHowToProgramItAfterwords . . . . 21 matches
* [창섭]:PairProgramming 자체가 인상적이었습니다. 음악을 아마추어로 하는 저로써는 음악외에도 이렇게 멋지게 콤비를 결성할 수 있다는 것에 놀라울 따름입니다. ^^;; 그리고 변수명을 고치는 것 자체가 Refactoring 에 들어가고 매우 중요하다는 사실도 감명이었습니다. ^^;
''그래서 PP나 XP의 과정을 Jazz에 비유하곤 합니다. 그리고 한번 유의어사전을 프로그래밍시 일주일간만 사용해 보세요. 그리고 거기서 무엇을 더 배웠는지 이야기해보면 참 좋겠네요. --김창준''
* [재동]:여러 사람과 처음으로 프로그래밍을 같이 하면서 커뮤니케이션이 얼마나 중요한 지를 확실히 알았습니다. 이제부터는 '말 많은' 프로그래머가 되어야 겠습니다 ^^ 오늘 세미나 정말 수고하셨습니다
* TDD를 어설프게나마 시도하면서 느낀점이 'TDD 에서의 Product Code 는 오직 테스트 까지만 만족하는 코드인가' 였었는데. 한편으로는 이렇게 해석할 수 있겠더군요. '해당 스케일에 대해 더욱더 정확하게 작동하는 프로그램을 만들고 싶다면 그만큼 테스트 코드 양을 늘려라.' 테스트코드 자체가 일종의 Quality Assurance 를 위한 도큐먼트 역할도 된다는 점을 다시 생각하게 되었습니다.
* 아까 발표때에도 이야기했지만, Code Review 를 위한 reverse-TDD (정도로 해둘까요? 이것도 관련 문서가 있을텐데. ) 를 해보는 것도 좋을 것 같네요. 코드 분석을 위한 test-code 작성이요. 즉, 이미 만들어져있는 코드를 테스트 코드라고 상정하고, 자신이 제대로 이해했는가에 대한 검증과정을 Test-Code 로 만드는 것이죠. 시간 있었으면 오늘 마저 시도해봤을텐데, 시간에 마음 쫓긴게 아쉽네요.
* ["Refactoring"] 책에서는 ''Refactor As You Do Code Review'' 에 Code Review 를 위한 Refactoring을 이야기 하는데, Refactoring 을 위해서는 기본적으로 Test Code 가 필요하다고 할때 여기에 Test Code를 붙일테니까 상통하는 면이 있긴 하겠군요.
* ["nautes"] : 참관자로서 있었는데 .. 대부분의 시간을 카메라 찍느라고 여념이 없었지만, 이 자리를 빌어서 반강제적으로 촬영에 협조해주신 분들께 감사와 사죄를 ..
* 흥미로운 것은 시끄러운 프로그래밍이였다는 것이였습니다. 혼자서 하는 프로그래밍(PairProgramming을 알고나니 새로운 개념이 생기는군요. 원래 Programming이라는 것은 혼자하는 거였는데, 이제 프로그래밍하면 pair인지 single인지 구분을 해주어야겠군요)을 하는 경우에는 팀원들이 소란스럽게 떠들면 ''아 지금 설계하고 있구나''하고 생각하고, 조용해지면 ''아 지금 코딩하고 있구나..''하는 생각이 들었는데, PP는 끝까지 시끄럽게 하는거라는 느낌이 들더군요. 그렇게 대화가 많아지는 것은 코딩에 대한 이해도의 증가와 서로간의 협력 등 많은 상승효과를 가져올 수 있다는 생각을 했습니다.
* 그리고 관찰하던 중 PairProgramming에서 Leading에 관한 사항을 언급하고 싶습입니다. 사용하는 언어와 도구에 대한 이해는 확실하다는 전제하에서는 서로가 Pair에 대한 배려가 있으면 좀더 효율을 낼 수 있을꺼라 생각합니다. 배려라는 것은 자신의 상대가 좀 적극적이지 못하다면 더 적극적인 활동을 이끌어 내려는 노력을 기울어야 할 것 같습니다. 실습을 하던 두팀에서 제 느낌에 지도형식으로 이끄는 팀과 PP를 하고 있다는 생각이 드는 팀이 있었는데. 지도형식으로 이끄는 팀은 한 명이 너무 주도적으로 이끌다 보니 다른 pair들은 주의가 집중되지 못하는 모습을 보인 반면, PP를 수행하고 있는 듯한 팀은 두 명 모두 집중도가 매우 훌륭한 것 같아서 이런 것이 정말 장점이 아닌가 하는 생각이 들었습니다. 결국 PP라는 것도 혼자가 아닌 둘이다 보니 프로그래밍 실력 못지 않게 개인의 ''사회성''이 얼마나 뛰어냐는 점도 중요한 점으로 작용한다는 생각을 했습니다. (제가 서로 프로그래밍중에 촬영을 한 것은 PP를 전혀 모르는 사람들에게 이런 형식으로 하는 것이 PP라는 것을 보여주고 싶어서였습니다. 촬영이 너무 오래 비추었는지 .. 죄송합니다.)
- YouNeedToLogin . . . . 21 matches
* 사용에 번거롭고 귀찮은 절차가 생긴다.
["상민"]은 로그인이 없었으면 좋겠다. 익명으로도 누군가 고칠수 있으면 좋겠다. http://c2.com 같이 로그인 하든 안하든 문서를 수정하는 편이 편한면에서 좋을것 같다. 로그인은 배경화면이나, css 의 개인화 처럼, 편의성을 제공하는 형태로 존재하는 선택지의 상태로 두어으면 좋겠다.
''제가 페이지수정에 로그인 의무화를 주장하는 가장 큰 이유는 보기좋고 편리한 RecentChanges 입니다. 로그인이 귀찮은건 사실입니다만 보다 잘 정리된 ZeroWiki 를 사용하고 싶습니다.'' --["이덕준"]
제 생각은 '' 아무나 어떠한 제한 없이 수정할수 있다 '' 입니다. 로그인 자체가 필요한 이유가 현재 두가지를 드는데, 보기좋고 편리한 RecentChanges 와 이상한 형태의 새페이지 개설을 막자입니다. 전자는 저 자신은 그리 크게 신경 쓰지 않는 일이라, 여태 생각하지 않았던 것입니다. 후자는 인간이 그러는 것이라면, 로그인 이후에도 그러한 실수는 배제할수 없지 않을까요?
''ZeroWiki는 아무나 어떠한 제한없이 로그인할 수 있습니다. 전 후자의 경우는 위키 초보자가 저지르는 실수라고 생각합니다. 로그인을 할수 있는 사용자는 그런 실수를 하지 않으리라 봅니다. 그리고 다시 말씀드리지만 그러한 작은 불편 때문에 YouNeedToLogin을 주장하는 것은 아닙니다. --["이덕준"]''
제가 RecentChanges 에 그렇게 신경이 안쓰이지만, 다른 분들이 신경이 쓰이는것 처럼, 저에게는 작은 불편으로 인식되지 않습니다. 위의 Document 에서 언급한것처럼 틀속에 갖히는 느낌이 가장 싫습니다. 그리고, 처음 오시는 분들이 자유롭게 수정못하는 것에 가장 마음이 걸립니다. 제가 http://c2.com 을 보고 받은 충격을 받고 느낀 자유로움 때문에 이런것이 작은 불편보다 더 크게 다가 옵니다. --["neocoin"]
로그인은 그자체로 무언가 틀속에 갖혀 있다는 생각이 듭니다. http://c2.com 에 오타같은거 수정하면, 로그인이 없고, 그냥 edit 버튼을 누를수 있는 것이, 최대한 글을 쓰는 것을 격려한다는 생각이 듭니다.
로그인을 유도 하기 위해서는 위에서 언급했지만, 로그인에 여러 이점으로 끌여 들여야 하지, 로그인으로 접근 제한을 하는것은 그리 격려할 만한 일은 아니라고 생각합니다.
''["로그인하기"]는 개인차원의 이익으로 개인이 선택할 문제지만, YouNeedToLogin 문제는 공공의 이익을 얘기하는 문제입니다. 전 ["로그인하기"]를 유도하고자 하는것이 아닙니다. --["이덕준"]''
저도 사실 로그인을 글쓰기 권한으로 하는 방안에 찬성하는 입장이었는데 생각해보니 위키 사용에 익숙치 않은 사람들에겐 '로그인의 의무화'가 글을 쓰는데 또하나의 벽이 생길지도 모르겠습니다. 위키가 일반 게시판과 다르듯이 일반 싸이트 로그인하듯이 로그인하는 것과 다르다고 생각합니다. --["창섭"]
그런데.. 보름 정도 YouNeedToLogin 모드로 사용하게 된다면, 로긴을 하지 않았을 때 글을 쓸 수 없다는 거지요? 그건, '로그인 하지 않고 글 쓰는 것' 을 막는 거겠군요. 개인의 자유에 맏겨두지 않고 말이지요. 전 반대합니다. 일단, 싫고, 자유와 가능성을 제한한다는 것이 싫습니다. --["zennith"]
YouNeedToLogin 모드가 자유와 가능성을 얼마나 크게 제한하는지, 그 제한으로 과연 우리가 얻는게 있는지 한번 경험해보자는 의도입니다. 한달을 하자는 것도 아니고 일년 동안 하자는 것도 아닙니다. 잠시 그렇게 해보자는 겁니다. 절대로 안되겠습니까. 자유와 가능성을 제한하는 것은 저 역시 싫습니다. 하지만 '절대 자유'가 최선이 아닐수도 있다는 생각을 하고 있습니다. DeletePage 액션은 관리자만이 쓸 수 있습니다. 조금만 더 유연하길 부탁드립니다. --["이덕준"]
저의 이번 쟁점에 대한 의견 피력이었을 뿐입니다. 그리고, 잠시 그렇게 해보자는 것에 대해서는 저도 찬성 합니다. 다양성은 중요하니까요. 다만, 기간을 '확실히' 정했으면 좋겠습니다. 흐지부지 되지 않게 말이지요. --["zennith"]
요새들어 제로페이지 위키에 검색엔진을 통해 생성된 쓰레기 페이지들을 자주 볼 수 있습니다. 볼때마다 매번 지워주기는 하는데, 노스모크처럼 로그인을 해야 글쓰기 권한이 생기게 바꾸어 보는것도 좋겠다는 생각을 합니다. 이 페이지가 생긴게 꽤 오래전인것 같기는 하지만 YouNeedToLogin 에 대해서 다시 한번 생각해봐야 할 때가 아닌가 생각됩니다. 하지만 로그인을 해야하는 것은 방법은 위키의 철학에 위배되는게 아닌가 하는 생각도 할 수 있습니다. 굳이 로그인을 하지 않더라도 스팸성 글을 막을 수 있는 대책이 필요합니다. 예를 들어, 페이지 수정을 할 때에 난수값을 하나 찍어두고 input 필드를 하나 더 두어 이 곳에 생성된 난수값을 그대로 입력하게 하여 초기에 생성된 난수값과 같을 시에만 글을 수정하게 하는 것입니다. 물론 똑똑한 로봇들은 이를 교묘히 피해가겠지만요. - [임인택]
- 바람의딸걸어서지구3바퀴반 . . . . 21 matches
* 이책에서는 한비야의 세계여행을 재밌게 전해준다. 이책에서 인상깊은 구절은 킬리만자로 산을 올라갈때 천천히 자신의 속도로 꾸준히 올라간다면 누구나 올라갈 수 있다고 하는 구절이다. 인생도 마찬가지로 누가 어떤 속도로 가던지 자신의 속도를 알고 자신의 속도로 꾸준히 나간다면 못 이룰게 없다. 또 얻은 교훈은 세상은 사람이 만들어낸 각종 규칙, 규범들로 돌아가지만 말만 잘하면 얻고자 하는것을 얻을 수 있다. 결국 그런 규칙, 규범도 사람이 만든 것들이기에.. 그리고 반드시 환경이 편하고 몸도 편해야 행복한건 아니란것도 느꼈다. 오히려 더 행복을 방해하는 조건으로 작용할 수도 있다. 환경이 아주 불편하고 바빠도 사람은 아주 행복할 수 있고, 오히려 행복하기에 더 좋은 조건일 수 도 있다. 오지일 수록 더 행복해 보이는 이유도 이러한 이유 때문일지도 모르겠다. 행복은 내 안에 있다. 그리고 세계에는 지금의 나의 환경과는 비교할 수 없을 만큼 불편하고 좋지 못한 환경에서도 행복하게 사는 사람이 많다는걸 느끼고 지금의 생활에 감사하자는 생각을 했다. 그리고 한비야가 어떤 외국인과 만나서 같이 등산하는데 그 외국인 행동이 꼴볼견이고 싫어할 행동만 했다고 그런다. 그런데 알고보니 그 외국인은 마약에 중독되었다가 마약을 끊고 나서 지독한 우울증에 시달리고 있다고 한다. 그 말을 듣고 쉽게 다른 사람을 판단해서는 안되겠다는 생각이 들었다. 역시 사람 사는 일에는 원인이 있고 결과가 있다. 또 무슨일을 하던지 목표를 잡고 나서 세부적인 계획을 세워서 차근 차근 해 나간다면 아무리 큰 목표라도 이룰 수 있겠다는 생각도 들었다. 사람은 계획에 있어서는 치밀해야겠단 생각이 들었고, 꾸준한 계획들의 실천이 있어야만 원하는 성과를 이룰수 있다는걸 느꼈다.
- 새싹교실/2012/AClass/5회차 . . . . 21 matches
4.BinarySearch가 무엇인지 찾아보고, 가능하면 한번 구현해보도록 합시다.(가능하면!)
•아래와 같은 출력이 나오는 프로그램을 어떻게하면 짤 수 있는지 생각해서 써보도록 합시다. 그 방법이 확실하다고 생각되면 짜보아도 좋아요
4.BinarySearch가 무엇인지 찾아보고, 가능하면 한번 구현해보도록 합시다.(가능하면!)
(K는 찾고자 하는 값, Ki는 중간 자료 값들)
- 113번 빼고 모두 완료.
4.BinarySearch가 무엇인지 찾아보고, 가능하면 한번 구현해보도록 합시다.(가능하면!)
아래와 같은 출력이 나오는 프로그램을 어떻게하면 짤 수 있는지 생각해서 써보도록 합시다. 그 방법이 확실하다고 생각되면 짜보아도 좋아요
6.LinkedList를 구현할 수 있는 구조체를 하나 만들고, 그 구조체를 이용해 linkedlist하나를 만들어봅시다.
8.LinkedList를 만들고, 리스트 data에 4,5,3,7,12,24,2,9가 들어가도록 해봅시다.
2.163번 문제를 풀고, 그 문제를 어떻게 접근하였는지 말해봅시다.
4.BinarySearch가 무엇인지 찾아보고, 가능하면 한번 구현해보도록 합시다.(가능하면!)
- 정렬된 데이터 집합에서 사용할 수 있는 고속 탐색 알고리즘 입니다.
- 이진 탐색이라는 이름은 알고리즘의 핵심이 탐색 범위를 1/2씩 줄여나가는 방식에 있기 때문에 붙여진 것입니다.
- 1. 데이터 집합의 중앙에 있는 요소를 고릅니다.
- 2. 중앙 요소의 값과 찾고자 하는 목표 값을 비교합니다.
- 3. 목표 값이 중앙 요소의 값보다 작다면 중앙을 기준으로 데이터 집합의 왼편에 대해 새 로 검색을 수행하고 크다면 오른편에 대해 이진 탐색을 새로이 수행합니다.
5.아래와 같은 출력이 나오는 프로그램을 어떻게하면 짤 수 있는지 생각해서 써보도록 합시다. 그 방법이 확실하다고 생각되면 짜보아도 좋아요
6.LinkedList를 구현할 수 있는 구조체를 하나 만들고, 그 구조체를 이용해 linkedlist하나를 만들어봅시다.
8.LinkedList를 만들고, 리스트 data에 4,5,3,7,12,24,2,9가 들어가도록 해봅시다.
2.163번 문제를 풀고, 그 문제를 어떻게 접근하였는지 말해봅시다.
- 위키로프로젝트하기 . . . . 21 matches
1. 해당 주제로 페이지를 연다. 가급적이면 고유한 프로젝트 이름을 가지는 것이 좋다. 일반적인 용어에 대해서는 다른 사람들도 같은 이름의 페이지가 필요할 것이기 때문이다.
* 페이지를 조금씩 키워나간다. 페이지 내용을 키워나가도 좋고, output 화일을 링크를 걸어도 좋다. 개인적 경험으로 볼때 (1002) 권장하는 방법으로는
* output 화일 링크걸기 - 다른 사람들이 직접 컴파일하거나 소스를 열어볼 수 있도록. 가급적이면 프로젝트 진행 초기버전부터 링크를 걸어주는 것이 좋다고 생각한다. (다른 사람들이 해당 사람의 사고 궤적을 볼 수 있다.)
* Journal/Schedule - 프로젝트 계획을 세운 것에 맞춰서 체크를 해 나가가고, 진행할 때 마다 그날의 ThreeFs 를 남긴다. 이는 ["컴공과학생의생산성"] 과도 관련이 깊다.
* 종료 - 원하는 목표에 도달했을 경우, 또는 Schedule 에 세운 계획에 맞춰 일이 완료되었을 경우에는 프로젝트를 종료한다. 만일 기간을 넘기고, 프로젝트를 진행할 의욕을 잃었다면, 프로젝트를 종료시켜라. (무기한 보류로 오래 끌고 있지 않도록 한다. 이는 추후 새 프로젝트를 열때 발목을 잡을 것이다.)
일반게시판에 경우 프로젝트가 어떻게 진행될까? 하나의 프로젝트당 하나의 게시판이 열려있어야 한다. 프로젝트가 10개라고 한다면 게시판이 10개가 열려있어야 하고, 각각의 글들은 시간순서대로 저장이 된다. 위키에서의 page 10개의 의미와 게시판 10개의 의미중 어떤 것이 더 cost가 적게 들까? 그리고, 시간순서의 글 index 나열방식과 텍스트 내의 하이퍼링크중심 글 나열방식중 어느것이 더 의미있는 정보를 담을까?
기존의 게시판방식이 장점이 있다면 '시간의 역사' 라는 점이 있겠다. 매일 작업일지를 쓰는 경우. 시간의 흐름에 따른 진행상황이 처음부터 주욱 보이기 때문이다. 반면 위키는 늘 현재성을 추구한다. 위키의 페이지는 늘 해당 주제를 중심으로 고쳐지는 글이다. 하지만, 시간의 역사 자체의 의미보다는 페이지 자체 내용, 즉 Content 중심의 사고라는 점에 더 무게중심을 두고 싶다. '시간의 역사' 자체가 Content 로서 중요하다면, 그것을 위한 페이지를 열어라.
1. 현재 자신이 관심을 보인 분야를 다른 ZeroPagers에게 소개하는 효과를 가진다. 그럼으로써 해당 분야에 대해 먼저 공부한 ZeroPagers에게 암묵적으로 질문을 던지고 도움을 청하는 것이 된다. ZeroPage 에서 활동하는 사람 역시 다른 사람들의 페이지에 대해서 가급적이면 활발한 Feedback 을 보여주기 바란다.
* 이미 열려져 있는 페이지를 토대로 공부할 수 있다. 자신은 그 위에 또 하나의 글들을 추가하거나, 시대에 맞지 않는 틀린 글들을 고쳐주면 된다. 하나의 Page 이름 ( == Contents 라고 해도 좋을 것이다) 하에 많은 사람들이 해당 Page에 대한 '공헌자' 가 되는 것이다. 이는 새로운 프로젝트를 여는 것 보다 더 쉽고 빠르면서도 효율적으로 공헌하는 방법이다.
* 자신이 공부하거나 프로젝트를 추진하는 내용들을 문서로 정리하는 과정을 통해 공부한 내용을 확실히 자기 것으로 만들 수 있을 것이다. 그리고 또한 정리된 문서는 타인에게 하나의 좋은 공부자료가 될 것이다. 오프라인 세미나의 자료로 사용할 수도 있겠다. 자신이 한 일에 대해 정리하는 것 자체가 좋은 습관이라 생각된다.
* 온라인이라는 잇점이 있다. 시간과 공간의 제약을 덜 받는다. 하지만, 오프라인을 배제해서는 안된다. 각각의 대화수단들은 장단점들이 존재한다. 위키의 프로젝트는 가급적 Offline에서의 프로젝트, 스터디와 이어져야 그 효과가 클 것이다. ZeroPage 의 ["정모"] 때 자신이 하고 있는 일에 대한 상황을 발표하고, 서로 의사소통을 할 수 있겠다.
ZeroWiki 에서 프로젝트를 진행하는데 자유의 제약을 느낀다면 ["프로젝트전용위키"]를 설치하고 사용할 수도 있겠다. --["데기"]
- 정모/2013.6.10 . . . . 21 matches
* [고한종] 학우
* 스터디나 프로젝트를 하는 경우에는 ZP에서 기자재, 도서 등은 우선적으로 지원하고, 다른 비용도 나름대로 지원하니 신청해 주세요.
정모가 끝나고 몇몇 사람들이 함께 포스터를 붙였습니다.
* 스태프 회의는 시험 끝나고 하기로 했습니다.
* ZP는 원래 6층 PC실 관리를 전담하고 있습니다.
* 올해 들어와서 작년보다 한 학기 수혜액이 줄었다고 합니다.
* 방학 전후 즈음에 교수님께서 액수와 자세한 사항을 정리해서 통보해 주신다고 합니다.
* 실제로 관리하는 사람들이 정해져 있는데, 그게 실질적으로 관리가 되고 있는지, 분담하는 사람들에게 혜택을 주기로 했는데, 회장님이 현재 상황을 잘 되고 있는지 아닌지를 인지하고 있는 지가 궁금합니다.
* 장학금 형태로 혜택을 주기로 했습니다. 초반에는 나름대로 잘 되다가, 지금은 잘 안 돌아가고 있는 것 같습니다. 제가 기대한 형태로 돌아가지는 않은 것 같습니다. 그래서 다음학기(??)부터는 다른 접근방식을 연구해 보려고 합니다.
관리하는 사람들이 체계적으로 한다고 한 들, 비는 시간은 분명히 존재합니다. ZP의 다른 회원들이 가끔씩은 확인해 주었으면 합니다.
* 6층 PC실 깔끔하게 써 주세요! 그리고 다음에 다시 이야기를 해 봅시다.
* 7월 중&후반이면, 초중고 그때 방학 하잖아요.
* 사람이 많은 건 제발 피하고 싶어요.
* 괜찮은데요? 혼자 요약하려고 너무 애쓰면 하기 싫어져요ㅋㅋㅋㅋ 받아적은대로 쓰고 누군가 고치고 싶으면 고치면 될 것 같습니다:) - [김수경]
- 프로젝트기록의필수요소토론 . . . . 21 matches
["neocoin"] 지금 프로젝트중 어정쩡한 상황으로 가는게 있는데, 반달정도에 한번도 업데이트 안되는 것을 그 예라고 생각합니다. 프로젝트의 끝이 명확해야 하지 않을까요? 비록 팀원들간에 사정으로 해당 프로젝트가 와해 되었다면, 팀원들중 아무나, 혹은 다른 회원의 지적으로 종료 시점을 기록해서 와해 이유와, 차후 방지에 관하여 한번쯤 생각해 봐야 할것이라고 생각 됩니다. [[BR]]
지금과 같이 누적되면 말그대로 용두사미 격이 되어 버리는 계획들이 많아 질것 같아서 우려 됩니다. 아예 깨끗이 휴식이나 종료로 넘기거나(휴식이 많아지면 또 차후 휴식만 다른 페이지로 가고) 해야 할것 같은데, 그것에 기초 데이터가 마감일 일것 같습니다. 어떤지??
[1002] 프로젝트의 마감부분은 중요한 부분이 됩니다. 올바른 프로젝트의 끝맺음은 새로운 프로젝트를 다시 추진할 수 있도록 뒷처리를 해주니까요. 현재 semi-project 부분의 경우 그 양이 많은데, 어떻게 끝맺음들을 할지는 좀 더 두고봐야하겠습니다. (자신 주도하로 할 자신이 없다면 페이지를 '일반화' 시켜버리십시오. 즉, 자신의 이름을 걸고 하지 말고 하나의 문서처럼 Document 화 시켜버리십시오. 그렇다면 다른 사람들이 중간에 참여하기가 더 용이할 겁니다.) 개인의 이름을 걸고 한다는 것은 그만큼 자신이 해당 페이지를 연 것에 대해 (또는 프로젝트를 연 것에) 책임을 지겠다는 것으로 해석한다면 제가 오버한 것일까요? 하지만, 그런뜻으로 하신 것이 아니라 하더라도, 어느정도 책임감을 가지셨으면 좋겠습니다.
[1002] 프로젝트 이름에 대해서 한마디 한다면, 'Java', 'ExtremeProgramming' 은 공부하려고 하는 지식의 종류이지 프로젝트의 이름으로 부적절하다고 봅니다. 만일 Java Study 팀이 두 개인 경우라면? 문제가 발생할 수 밖에 없습니다. 초창기에 해당 기술부분으로 페이지를 열 수는 있지만, 나중에 프로젝트가 끝나고 난다음에는 일반화시켜서 본래의 이름을 반환해주는 것이 좋다고 생각합니다. (즉, 'Java' 페이지는 Java 에 대한 소개나 기술 등을 넣어주고, 'Java' 페이지이름을 썼던 프로젝트팀은 프로젝트팀 이름의 새 페이지를 만들어서 경과보고를 하는식으로..)
[광식] 그러고보니 Java는 팀이름을 지을 생각을 못했네요 다음 모임떄 이름을 짓고 옮기겠습니다.
[1002] 제 말이 절대적인 것이 아닙니다. 저 이야기는 말 그대로 저의 의견일 뿐, 결정사항은 아닙니다. 옳고그름에 대해 판단하시고, 다른 사람들의 판단들이 모아진 뒤에 행동하시기를.
[1002] 한가지 더 지적한다면, 해당 토론 또한 기간이 있어야 할 것 같다는 생각. --; (사람들이 이야기는 많지만, 정작 '어떻게 하자', '예. 동감합니다', '아니요. 그건 그렇게 생각하지 않습니다', '이러이러한 방향이 더 좋겠습니다' 라는 이야기를 안하니. -_-;) 기간이 길어지고 아무 이야기 없으면 해당 주제에 대한 결론을 영원히 유보해야 하겠습니까.. 쩝. 전에도 이야기 했지만, WIKI 자주 이용해주시고, 불편하시면 다른쪽 게시판이나 해당 사람에게 e-mail 로 답변을 주시기를. (동보메일이라도 보낼까요? --a ZP 에 sendmail 이 돌고있던가 기억이 안나는군. --;)
["neocoin"] ZeroWiki의 프로젝트 페이지를 위한 6하 원칙을 생각해 봤습니다. 저정도면 될것 같네요. 어디서(where)이 있지만 이것은 보나마나 여기서 여기서니 프로젝트 이름으로 대체해서 했습니다. 앞으로의 모든 페이지가 저 정보가 꼭 있어야 한다고 정모에서 건의 함이(이거 원 정모를 해야 --;) --상민
- IpscAfterwords . . . . 20 matches
2002 년도 IPSC (http://ipsc.ksp.sk/) 을 경험하고 난 뒤의 ["ThreeFs"]
컨테스트는 끝났지만 여전히 도전해보고 싶은 사람은 다음 주(5/18)까지 자신이 얻은 답을 TIS를 1234567890로 해서 ipsc@ksp.sk로 이메일을 보내면 된다.
* 전에 K-In-A-Row 같은 경우는 일종의 StepwiseRefinement 의 형식이 나와서 비교적 코딩이 빠르게 진행되었었고, (비록 답은 틀렸지만) Candy 문제의 경우 덕준이가 빨리 아이디어를 내어서 진행이 빨랐었는데, 실전에서는 그런 경우들이 나오지 않아 버겨웠던듯 하네요.
* 영어실력의 문제 - 모르면 모른다고 이야기 할것을. 정확하게 해석합시다. 괜히 '아마 이런 내용일 것이다' 로 해석하지 말고..
* 중반부로 들어가면서 사람들이 문제들을 못풀다보니 팀플레이도 흐트러진것 같습니다. 이전에 K-In-A-Row 풀때나 Candy 풀때만해도 실마리를 잡아서 '풀 수 있겠다' 라고 생각해서인지 팀플레이가 잘 되었던거 같은데.. 역시 어려울때 잘하기란 힘든것 같네요.
* IPSC Winner 가 발표되었네요. 재밌게도 Open 과 Second 둘 다 러시아이고, 양쪽 팀 다 Pascal 을 이용했다는. ^^
* 음.. 제 실력에 좌절을 먹고 미친 듯이 공부해야 겠다는 Crazy Study(01학번 스터디 그룹. 해체되긴 했지만..--;) 로서의 정신을 되새기게 하는 기회였습니다. - 인수
집에와서 B번 문제를 30분시간 제한을 걸고 생각했었던 방법으로 다시 한번 플밍 해보는데, 생각이 틀렸었네요. 접근법은 프로세서하나하나들에 대한 단순한 원리의 조합.. 뭐 이런걸 바랬는데, 최소의 수로 나오지가 않는다는. B번 3번째꺼에서 100번 turn 을 돌아야 했다는; 음.. 나중에 또 번뜩일때 다시 궁리를;
ICPC 모의고사(?)와 같은 류의 경험을 한번 해보고 싶었는데 이번과 같은 기회가 주어져서 무척 좋았습니다. 아쉬웠던건 팀워크 발휘가 제대로 안된 점이네요. 또한 알고리즘은 생각해냈는데 구현을 못한 상황이라면 나름대로 자기 위안을 할 수 있겠는데 솔루션에 접근하는 길조차 찾지 못한것도 퍽 아쉬운 점이구요. 처음 두어시간이 흐른뒤엔 사고 능력이 무척 떨어진걸 몸으로 느낄 수 있었는데 너무 오래간만에 머리를 썼더니 쉬 지친게 아닐까하는 생각이 드네요. ["프로그래밍파티"]때엔 좋은 컨디션으로 참여해보고 싶네요. 이제 좌절보다 풀어내는 재미를 느끼고 싶기도 하고, 공부할 좋은 기회를 만들어 주신 선배님께 실망스런 결과는 더 보이지 말아야죠. 모두들 늦게까지 정말 수고 많으셨습니다. --["이덕준"]
* 바쁠수록 여유를 갖고 천천히 가기/생각하기
* 분명 쉽고 간단한 방법이 있을거라는 믿음을 갖기
석천군 팀이 B번 문제(Job Balancing)를 풀긴 풀었으나 시간이 너무 걸려서 옵티마이징을 필요로 했습니다. 제가 O(m*n^2)에서 O(m*n)으로 만들어줬는데, 그것으로도 부족했습니다. 집에 돌아와서 잠을 자다가(NoSmok:포앵카레문제해결법 ) 몇 가지 아이디어가 떠오르더군요. 오늘 아침에 일어나서 30분 정도 뚝닥거려서 B Difficult Set을 5초 안에 끝내는 코드를 만들었습니다. 어떻게 사고했냐구요? TDD로 원소 하나 짜리, 두 개 짜리, 세 개 짜리, ... 를 하다보니까 일반해가 보이더군요. 역시 마음에 여유가 있으면 잘 되는 것 같습니다.. see also IpscLoadBalancing
- iruril/도자기토론 . . . . 20 matches
찬반 의견을 들어보고 마지막에 간단하게 결론을 내리는 방법
그럼 생활속에서 이런거 말고 그냥 문화적인 것으로 생각하는거야?
도자기 문화에 대한 현주소와 사람들의 인식 그리고 앞으로 해야할 일 머 이런거 정도해야대나..
앞으로 도예문화가 더 발전하고 보편화 됬으면 좋겠다 라고 끝내도 되지않을가..
문제점을 말하고
그것을 보완하기 위한 움직임을 생각해보고
그러니까 찬반을 위주로 하고 간단하게 결론 내리는거지.
사람들의 문화인식이 현대에 들어오면서 많이 바뀌고 있다.
예전에 먹고살기 힘들때 보다는 여유가 생기면서 문화적인 생활에도 관심을 가지게 되었다.
그림이나 조각 작품과 같은 것도 요즘에 들어서 많이 대중화 되고 사람들이 감상하고 즐기고 있다.
- 무료 장 미술관이라던지 인사동, 각 고장에 있는 도자기에 관련된 축제를 확산 ( 외국의 작품전시 등 )
- 그냥 보고 즐기는 것도 문화가 될수 있으니까
--취미를 악기나 미술만 아니고 도자기 제작으로 할 수도
--사람들이 그래도 옛날보다 풍요로워지고 정보같은 걸 쉽게 접할 수 있게 되어서 문화의식이 점점 높아지고 있다
직접적인 먹고사는 생활에도 치이는데
그냥 보고 즐기는것만으론 힘들다 생각하는데
- 데블스캠프2003/다루어볼문제와관련세미나 . . . . 20 matches
* 그럼 STL 내가 할래.--; 다른 사람보다 조금이나마 잘한다고 생각하는게 이것밖에 없어서..--; --[인수]
* 문제은행식도 괜찮을 듯합니다. ToyProblems 같은 문제들을 놓고 하는 것도 포함하는 의미에서 말입니다. --[창섭]
* 계획을 말씀드리겠습니다. 여러 문제를 푸는것 또한 중요하지만, 큰(?) 프로그램을 다루는것도 괜찮은 생각 같아서 OOP를 2틀째 넣고 마지막날까지 팀으로 연속해서 만들어 데모를 하는 방법도 생각을 했었습니다.(정모 때요..) -[상욱]
입장을 바꿔서 생각해보세요. 과연 1학년때 큰 프로그램을 짜라고 하면 짤 수 있을지... 선배들과 짠다고 하면 선배들이 대부분 짜버리는 부정적인 결과가 나올지도 모를것 같습니다. 페어를 통해 배우는게 많기는 하겠지만 이제 막 ToyProblems 에 재미를 붙일 사람들인데 너무 목표를 크게 잡고 있는 것은 아닌지요... 아마도 제가 큰프로그램에 대해 잘 몰라서 이런 말을 하는 것 같습니다. 큰 프로그램에 대한 명확한 설명을 바랍니다. --[창섭]
큰 프로그램이라고 말은 해 봤자 선배님들이 풀면 4~5시간이면 풀어버릴 문제가 될꺼 같습니다. 휴대폰 메뉴 만들기나 PDA기능 만들기 등 이런 조그만 프로그램을 묶어놓는 프로그램을 하면서 OOP를 조금이나마 느껴보라는 차원에서 하는 것입니다. 물론 같이 페어를 하는 선배님들은 정말 기초적인 것만 알려주는 식이고요 그 팀을 이끌어 가서는 안되겠죠? ^^; -[상욱]
* ToyProblems 와같은 식이면 좋을것 같은데요. 1학년 텀프로젝트가 있는데 그것 하나만 가지고도 SP, OOP 등의 프로그래밍철학과, STL 등을 다루기에 좋을것 같습니다. ([http://zeropage.org/pds/200361434244/2003C++TrmPrjSpec.ppt spec]) SP 와 OOP 는.. 누가할지.. 맡게되면 고생을할수도 있겠군요. 아래 JuNe 선배님의 CSP 나.. Tuple Space (전에 P2P 관련 문서에서 본것같은 기억이..-_-a ) 등과는 약간 맞지 않을수도 있겠지만요. (그것은 다른 도메인의 문제와 다루는게 좋을듯합니다) - [임인택]
* 지나가다 잠시 말씀 드릴까 합니다. 아직 oop개념이나 프로그램 모듈화에 대해서 개념이 없는 분들에게 STL같은 것을 가르친다는 것은 약간 문제가 있지 않을까요? oop개념을 가르쳐도 구현 같이 base적인 경험이 없이 단지 가져다 쓰는것을 먼저 배우면 좋지 않을 것 같습니다. 1학년 분들 숙제 하는 것을 보니 모듈화 같은것을 가르쳐도 좋을 것 같은데. 많은 것을 가르치려고 하시는 것은 좋으나 능력에 적절하게 가르치는 것도 맞는 것 같군요. STL 같은 걸 가르치는 건 그 다음이 되었으면 좋겠구요.. 내부사정을 잘 모르니 틀리다 싶은 말이면 걍 흘려보내세요. 지우셔도 상관 없구요. ^^ - 00 나현철
* 네. 현철이형 그래서 제가 생각한게 일단 동적 배열의 확실한 이해와, 링크드 리스트를 구현해보게 한다음에, 이들 지식의 선행으로 STL을 가르치려 하려구 그랬거든요. 위 두가지만 확실히 이해할 수 있다면 STL의 기본적인 (vector나 list같은) 것은 가르쳐도 무방하다고 생각합니다. --[인수]
* 저는 STL 같은 것은 그냥 할수 있을 만큼 사용할줄만 알면 되다고 생각합니다. Library 가 제공하는 것은 우리에게 좀더 고차원적인 사고에 전념할수 있는 것이 겠지요. 배열의 길이에 신경쓰지 않는 것만으로, C++에서 얼마나 무한한 사고가 가능할까요? 학교 교제는 C++을 가르치는 것이 아니라, C에다 어떻게 충돌을 일으키지 않고 문법을 추가시켜 C++이 되었는가를 가르치기 때문에 이런 기회는 필요 할것 같습니다. 아마 궁금한 사람은 STL의 소스를 보겠지요. 사족으로 STL은 OOP보다 Generic Programming의 관점에서 구현되 었습니다. --NeoCoin
* 도큐먼트나 튜토리얼을 이용하는 방법을 알려주는 것도 괜찮은 것 같습니다. 새내기들에게 MSDN 에서 검색을 하는 것을 알려줬더니 단지 영어라는 이유로 겁부터 먹고 사용을 못하더군요. 어떠한 주제를 던져주고 이러한 것들을 스스로 찾아서 사용하는 방법을 알려주는 것도 스스로 공부를 해 나가는데 있어서 좋은 경험이 되지 않을까 합니다. -- [상욱]
오늘 밤에 가능하나요? 중대로 가도록 하죠. 길게 할 건 아니고 딱 한시간만. --JuNe
- 여섯색깔모자 . . . . 20 matches
어떻게 하면 생각을 잘 모을 수 있을까? 어떻게 하면 신속한 회의를 할 수 있을까? 라는 고민에 내려놓은 제 결론이 얼마나 부족한가를 일깨워 주었습니다. 두께가 그리 두껍지 않으니, 가볍게 들고 다니면서 볼수 있습니다. --NeoCoin
White - 하양은 중립적이고 객관적입니다. 따라서 하얀 모자는 객관적인 사실과 숫자들을 나타냅니다.
Black - 검정은 암울하고 진지합니다. 따라서 검은 모자는 신중하고 조심스럽게 잠재된 위험에 대해 생각하게 하죠.
Yellow - 노랑은 밝고 긍정적입니다. 따라서 노란 모자는 희망적이고 긍정적인 사고를 의미합니다.
Green - 초록은 풀, 채소의 색으로 풍성하고 풍부한 성장을 나타냅니다. 따라서 녹색 모자는 창조성과 새로운 아이디어를 의미합니다.
Blue - 파랑은 냉철합니다. 또 모든 만물의 위에 있는 하늘의 색깔이기도 하죠. 따라서 파란 모자는 생각하는 순서를 조직하는 일, 그리고 다른 모자들의 사용을 통제하는 일과 관련이 있습니다.
수민형에게 이야기 듣고 빌리게 된 책. 예전과 다르게 요즘은 이런책에도 손이 가지더 군요. 이것과 비슷한 다른 책들은 없나요?? '토론'이라는 키워드로 접근하면 무리가 없을까요?? - [이승한]
평소에 의견을 교환 하다가 보면 어느새 자신의 자존심을 지키려는 논쟁 으로 변하게 되는 경우가 많다. 이 논쟁이란게 시간은 시간대로 잡아 먹고, 각자에게 한가지 생각에만 편향되게 하고(자신이 주장하는 의견), 그 편향된 생각을 뒷받침 하고자 하는 생각들만 하게 만드는 아주 좋지 못한 결과에 이르게 되는 경우가 많다. 시간은 시간대로 엄청 잡아 먹고... 이에 대해서 여섯 색깔 모자의 방법은 굉장히 괜찮을거 같다. 나중에 함 써먹어 봐야 겠다. 인상 깊은 부분은 회의를 통해서 지도를 만들어 나간후 나중에 선택한다는 내용이다. 보통 회의가 흐르기 쉬운 방향은 각자 주장을 하고 그에 뒷받침 되는것을 말하는 식인데, 이것보다 회의를 통해서 같이 머리를 맞대서 지도를 만든후 나중에 그 지도를 보고 같이 올바른 길로 가는 이책의 방식이 여러사람의 지혜를 모을수 있는 더 좋은 방법이라고 생각한다. 이 책도 PowerReading 처럼 잘 활용 해보느냐 해보지 않느냐에 따라서 엄청난 가치를 자신에게 줄 수 도 있고, 아무런 가치도 주지 않을 수 있다고 생각한다. - [상협]
- 정모/2011.5.9 . . . . 20 matches
* 형누나들은 언제(몇시에)가세요?? 11에 가려는 애들은 뒤에 동엠때문에 점심무렵에 가려고 생각중인데.. - ?
== 다음주 예고 ==
* 이번 정모는 뭔가 후딱 지나간? ㅋㅋ 아무튼.. 4층 피시실에서 한 OMS가 뒤에서 다른 걸 하는 사람들의 시선까지 끌어던 모습이 생각이 나네요. 그리고 한 게임이 다른 게임에 들어가서 노는걸 보니 재밌기도 하고, 재미있는 주제였습니다. 그리고 이번주 토요일에 World IT Show에는 어떤 것들이 있을지 궁금하네요. 저번에 International Audio Show에 갔을때에도 다양한 오디오와 헤드폰을 보고 청음할 수 있어서 좋았는데, 이번에도 다양한 것들을 많이 볼 수 있을 거 같아 기대됩니다. 음.. 근데 이번 정모때에는 이거 이외에 잘 기억이 안나네요; - [권순의]
* 저번주 정모에 못와서 이번주에는 꼭 가리라! 하고 왔지요. 앞으로도 항상 그럴거 같지만 가장 기억에 남는건 OMS!! 게임개발이란게 에디터를 써서 만든거도 포함된다고 생각한적은 없는데 말이죠! (워3 에디터는 살짝 만져봤었습니다) 워3에서도 와우 MPQ를 불러와서 똑같은 캐릭터를 구현할 수 있었는데, 스타2에서는 더 와우에 가깝게 만들어지더군요 -_-! World IT Show도, 이런데 거의 안가봤기에 꼭 가보고싶네요. (근데 다들 언제가시는지.. 음.) IFA도 뭘까 궁금하네요. .. 그리고 이제 피드백갯수가 2~3개정도만 남은거 같아요+_+ -[김태진]
* OMS 재밌었습니다. 스타1 유즈맵을 즐기는 저로서는 스타2의 무한한 가능성을 엿본듯한 -_-;; 비록 아직은 버그투성에 애로사항이 있더라도 좀더 지나고나면 똑똑한 게임개발툴이 나올 것 같네요. 월드아이티쇼.. 저는 아마 불발될 거 같습니다. ㅜㅜ 수금은 수업 때문에 안되고 목토는 일이 있어서 에구; 담주 OMS 준비를 제대로 할 수 있을까 걱정입니다;; 구글신 찬양과 함께 미래의 안드로이드와 클라우드 서비스에 대해 할까 하다가.. 준비할 시간이 많지 않을거 같으니 아마도 경시대회 관련 주제로 준비될거 같습니당.. - [정진경]
* 스타2를 플레이해본 적은 없지만 스타1 캠페인 에디터나 RPG만들기는 조금씩 찌끄려봤는데 이번 기호의 OMS를 보고 유저의 게임 만들기에 있어 엄청난 발전과 변화를 불러 일으켰더군요. 버그가 많고 코드에 대한 이해가 필요하다는 점도 있지만 스타2로 만들어진 와우는 정말 흥미로웠습니다. 데블스 staff 회의를 진행하면서 이제까지의 데블스캠프에 대해 회고해보고 어떻게 해야 개선할 수 있을지 고민해 보았는데 ZP에서 학우들이 학술적으로 오랜 시간 동안 많은 공유를 할 수 있는 몇 안되는 큰 행사이니 만큼 뜻깊은 시간이 되었으면 좋겠습니다. - [Enoch]
* 장소를 미리 못 잡아서 4피에서 OMS를 했는데 기호에게 미안하네요... 장소가 산만하기도 하고 좀 부담스러웠을 것 같아요ㅜㅜ 그와 별개로 내용은 정말 흥미로웠습니다. 항상 생각했던 것이지만 쓰기 편하고 단순하게 만들면 할 수 있는 게 제한되어 문제고 이것저것 할 수 있게 파워풀하게 만들면 너무 복잡한 게 문제… - [김수경]
- 정모/2011.9.20 . . . . 20 matches
* 참가자 : [김수경], [서지혜], [강소현], [김태진], [고한종], [신기호], [황현], [윤종하], [송치완], [장용운]...
* 김건영 선배님께서 웹 서비스쪽 벤처 기업에서 함께 일할 사람을 구하는 중이라고 하십니다.
* 회장이 먹고살길을 찾느라 바쁜 관계로 학회의 날 담당자가 필요하게 되었습니다.
* 기사라고 해서 뉴스를 말하는 건 아닌데 ㅋㅋㅋ 소식같은 걸 외부 기사로 섭외하려는 건 아니고... 자기가 관심있는 분야에 대해 쓴 내용이 제일 좋지. - [김수경]
* 다음 주제는 소외된 사람들에 대한 책이라고 합니다.
* 계속해서 문제를 풀고있음.
== 로고 ==
* 그래픽 작업이 완료된 4개(?)의 후보를 두고 홈페이지 투표로 최종 로고를 결정하겠습니다.
* OMS 재미있었어요. 통계 자료까지 준비해와서 더 흥미로웠습니다. 책을 1년에 한권도 안 읽는 사람이 10명중 3명이 넘는다니 충격적이네요. [2011년독서모임]은 제가 하자고 만들어놓고 중간에 쏙 빠져서 민망하네요. 바쁠땐 바쁜대로 일정을 조정해가며 굉장히 꾸준히 이어나가는 모습이 보기 좋아요. 독서모임만 해도 평균 독서량 이상을 읽을 수 있다니 멋집니다. 그동안 했던 주제를 모아서 보여주니 진짜 다양한 책을 읽었구나 싶은 느낌도 들었습니다. - [김수경]
* 오랜만에 처음부터 끝까지 정모를 참여한 시간이었습니다. 몇몇 분들이 오지 않으셔서 좀 썰렁했던 것 같네요. 제로페이지에서 진행하는 스터디에 참여하고 싶은 생각도 있었는데 아무래도 시간이 부족할 것 같아서 포기했네요 ㅠㅠ; OMS 대상자가 될 뻔한 위험이 있었네요 살떨려요.. 오늘 OMS를 보고 집에 가는 길에 책을 질렀습니다. '독서'용은 아니지만 저에게 도움이 될 것 같네요. 그런데... 으앙 제가 참가자가 아니라니! - [장용운]
* 처음 한 구인구직(?)의 시간은 저랑은 좀 먼 시간의 이야기였던거 같았네요.. 뭣보다 원래 알려줄 수 없는거라지만 그래서 결국 뭘 하시는지는 알수 없었던거같네요.(?) OMS는 저도 하고 있는 독서모임! 독서모임 많이와요~~ 자유롭게 책 많이 읽을 수 있어요! 그리고 세미나는 한번 가 볼 생각입니다. 빨리 입금해야겠네요.. -[김태진]
* 구인 구직의 시간에서 루비가 언급될 줄 몰랐어요! 데블스캠프에서 세미나를 했던 지혜언니의 선견지명에 감탄했습니다ㅎㅎ 제가 만든 ZP 로고는 그냥 0 page라는 의미로 OMS에서 제 역할을 해주었지요 ㄲㄲ 독서 모임을 하면서 확실히 좋았던 점이 제가 책을 읽는다는 그 자체였어요. 고등학교 과제는 인터넷에서 긁는거 아니냐 했었는데 그게 바로 저였습니다ㅠㅠ 과제로 내주지 않는 이상 책을 전혀 찾지 않았었는데 독서모임을 하면서 주제 외의 책을 찾아 읽는 데도 어색하지 않은게 좋았달까요. 아직까지도 줄거리나 의견을 말하는 데는 쩔쩔매지만 계속 하다보면 물 흐르듯이 말하는 날이 오겠지요 ~ㅁ~ 많이 참여하면 좋겠어요~ -[강소현]
* 벤처(?) 회사에서 구직하러 많이 오시는군요.. 임베디드 시간에도 홍보하러 오시고ㅇ_ㅇ 시작하는 사람들의 열기가 느껴져서 둑흔거리네요ㅋㅋ 개인적인 의견이지만서도.. 벤처야말로 노련함이 필요한 곳 같아요.(아니면 천부적인 센스라거나!) 특히 우리나라처럼 벤처 제도가 잘 없는곳에서는..
회장님도 부회장님도 개인적인 일로 정모를 알차게 꾸려나가지 못하는 점 죄송합니다ㅜㅜ 정모에 대한 제안이나 의견이 있다면 가지고 계신 모든 루트를 통해 의견날려주세요. 정모는 참여하는 여러분 모두의 것 이니까요:) (부회장은 회장의 그림자라 존재감이없다!!ㅋㅋㅋㅋ...ㅠㅠㅠㅠㅠㅠㅠㅠㅠ미아뉴ㅠㅠㅠ) - [서지혜]
- 정신병원에서뛰쳐나온디자인/밑줄긋기 . . . . 20 matches
* 커뮤니케이션은 끔찍하게 잘못 이루어지고 있는 와중에도 정확하고 정밀할 수 있다.
* 어떤 사람이 소형 비행기로 비행하던 도중 구름 속에서 길을 잃었다. 그는 건물이 보일때까지 고도를 낮춘 뒤 그 건물의 열려 있는 창문 너머로 보이는 한 남자에게 ''"지금 제가 있는 곳이 어디입니까?"'' 라고 소리질러 물었다. 그 남자는 ''"당신은 지상 100피트 상공에 있는 비행기 안에 있습니다."'' 라고 대답했다. 조종사는 즉시 정상 코스로 복귀하여 공항을 찾아 착륙했다. 놀란 탑승객들이 조종사에게 어떻게 길을 알아냈는지 물어보았다. 조종사가 대답하기를 ''"그 남자의 대답은 100% 정확하고 사실이었지만 전혀 도움이 되지 않는 대답이었습니다. 그래서 나는 그가 마이크로소프트 사에서 일하는 소프트웨어 엔지니어라는 것을 금새 알아차렸습니다. 그리고 마이크로소프트 사 건물의 위치를 기준으로 해서 공항의 위치를 알아냈습니다."'' 라고.
* 너무 웃겨서 신나게 웃었지만 한편으로 MS 무지 까네 싶은 생각이 들었다. MS보다 못한 소프트웨어를 만드는 곳이 얼마나 많던가. 그리고 작년에 나를 포함하여 몇몇 ZeroPager로 구성된 팀이 만든 포토잇을 생각해보면………… - [김수경]
* 즉, 컴퓨터는 우리를 올바르게 인도할 수 있지만 우리가 가고자 하는 곳으로 안내하지는 않는다.
* 첨단 기술 회사들은 제품을 개선한답시고 그저 복잡하고 불필요한 기능들만 제품에 추가하고 있다. 공급자들이 이렇게 행동할 수밖에 없는 이유는 잘못된 개발 과정은 나쁜 제품의 문제를 해결할 수 없고 그저 새로운 기능만 추가할 수 있기 때문이다.
* 저 부분을 읽고 신랄하게 까인 기분이라 정말 그렇다면 그 이유는 무엇때문일까 생각해 봄. 세 가지 생각을 했다.
1. 사실 별로 차이 없는데 저자가 괜히 까고 있는 건 아닐까. - [김수경]
* 프로그래머들은 자신들이 가장 좋아하는 스타일로 컴퓨터의 행동 및 정보 제공 방식을 만들어내고, 이는 제인에게 가장 적합한 행동 및 정보 제공 방식과 큰 차이가 있다.
* 현대 문명 사회는, 사회 운동가들이 인종과 계층 사이의 벽을 허물기 위해 열심히 노력하는 한편으로 기술자들이 본의 아니게 새로운, 오히려 더 높은 장벽을 쌓는 데 매진하고 있는 형국이다.
= 우리는 프로그램에게 희생을 강요당하고 있다 =
== 고객 불신 ==
- 2006신입생/방명록 . . . . 19 matches
위에 고침을 누른후 글을 쓴 다음에 완료를 누르면 됩니다^^
-이자리 월세20원에 팝니다 잠만 자고 가실분만..
- 고롬요~ ! 시간 드릴께요,하지만! 후회없는 선택하길 바래요^^ - [허아영]
-어제 분명 가입신청하고 잤는데.. 오늘 일어나서 보니.. 내이름이 지워졌네.. 헐..~ -준영-
수생아 수고했따 ㅋㅋ - [허아영]
-에효 ㅋㅋ이제 가입하게 되네ㅋ 설명회 많이 가고 싶었는데 ㅠ_ㅠ 갑자기 일이 꼬이다니..
- 오 차형아!! 다음에 제로페이지 선배님들께 첨삭 받으렴~ 쉽고 재밌단다! ㅎ - [허아영]
-헉 방명록 쓰면 누가 자꾸 지우는거지..-_-+.... 나말고도 테러분자가 더있는건가..;;;; '''경록'''
안녕하세요^^ 이제야 여기에 글을 남긴다는...ㅎ테러하는 경록이따라 오겠ㅤㄷㅚㅆ다는...;;쿨럭 에고.. 괜히 튈려고 옆에다(Specialist) 써놓으려고 했지만.....
-06학번 송지원입니다.사정이 있어 설명회는 듣지 못했지만 위에 이름과 연락처 남기고 갑니다. 잘 부탁드립니다.
-노노~ ㅋㅋ 선배보고 들어왔을거에요 ㅋㅋ - [허아영]
-정리 한다고 제가 좀 정리를 했지만 그래도 지저분한 모양이..ㅡㅡ;; 그러고 임의로 제가 정리 한거 기분 나쁘신 분들 죄송합니다^^; - [송수생]
-현재까지 33명.. 와 진짜 많다. -고준영
↘ 저도 함께.. -0-;;;;; -고준영
3월 23일! 참여해 주신 여러분, 모두 수고하셨어요! 고마워요 ^^ - [허아영]
- B급좌파 . . . . 19 matches
김규항의 글을 읽고 한편으로는 시원할런지 모르겠지만 (통쾌함하고는 좀 다르다. 친구랑 골방에서 맘에 안드는 넘들 뒤에서 까대는 느낌이랄까) 한편으로는 속이 편할리 없다. 적당히 지적인척 이야기할때 전문용어 적당히 섞어주고, 제대로 알지도 못하면서 적당히 사회 아는 양 민주당이 어쩌고 한나라당이 어쩌고 하는. 농활이나 빈활한번 안다녀온 나로서는 더더욱 이 책을 보고선 웃으면 안된다. 삶에서 민감해야 할 사항에서 그냥 간과하고 조용히 사는 소시민으로서는 그저 지식인 투덜거리는 이야기일뿐이다. 진중권이건 강준만이건 김규항이건.
그사람들의 글들이 나에게 읽어짐으로 인해 '적절히 써먹으면 재미있을 만한 글투' 지식분류에 하나 추가되면, 또는 '적절하게 사회적인 척 일수 있는 인용거리'가 되면 괜히 미안해지니까. 그냥 적절히 읽고. '아 그 사람 이야기'. 나중엔 '지식인 록을 고르다' 가 나중엔 '지식인 규항을 고르다', '지식인 중권을 고르다' 식의 글도 나올지도 모르니. -- 소시민 ["1002"]
전에 모 오프라인 모임을 나간 적이 있었다. 자기 소개시간때 처음으로 걸리게 되었다. 그냥 아무 생각없이 'C대학교 99학번 A 입니다' 라고 했는데, 그 다음부터 다른 사람들 소개가 전부 'S대학교 00학번 누굽니다' 'B회사 근무중 누구입니다' 였다. 그 와중에 중간에 붙일 소속을 궁리하며 머뭇머뭇거리다가 그냥 'B 입니다' 라고 한 사람도 있었다. 아차. 저 사람 내가 아는 사람인데, 대학에 다니지 않는다고 했었지.
맨날 '학연이네 지연이네 지역감정이 어쩌네' 하면서, 무심코 나는 그 사람에게 폭력을 행사한 것이리라. 차라리 그냥 'ZeroPage 에서 활동중 누구입니다' 라고 할걸. 온라인 모임이름이라면 그래도 1년에 10만 이상 못들어가는 대학교보단 그래도 덜 폭력적이련만. (하긴 결국 중대모임이므로 똑같으려나..) 나의 언어에선 당연한 세상이 다른 사람들에겐 당연할 수 없는 세상인 경우가 있다. 순간에 대해서 민감할 수 있었더라면. 깨어있었다면. -- ["1002"]
개발팀에서 한 위의 이야기는 대화의 단절을 시도하는, 그것도 상대방에 대해 치명적인 말을 한 것이지. '''넌 이것을 모르니 그런 소리나 하고 있는것이다.'''
이처럼, 꼭 모든것을 직접 경험해봐야 대상에 대해 이야기 할 수 있다고는 생각할 수는 없는 일이 아닐까. 농활에 대해 모르면 모르는데로, 알면 아는대로 이야기 하는게 나쁠 이유가 있을까. 오히려 그런 시도를 하는 사람은 '''잘''' 아는 사람을 만나 더 '''잘''' 알게되는 계기가 생길 가능성이 훨씬 많으니, 좋은게 아닐까 (물론, 젠척 하는걸 이야기 하지 않음은 알겠지만 :) )
세상에 진리를 아는 사람이 몇이나 된다고. 기죽지 말고 당당하되, 자신의 귀만 열어놓으면 충분하지. 개인적으로 석천이가 당당한 모습을 지닌다면, 지금보다 '''백만배''' 멋져보일꺼라 생각함 ;-) --선우
- CppStudy_2002_1 . . . . 19 matches
* C++의 문법도 익히고, 나아가서 사용법, OOP에 대해서 더 친숙 해지기, 다양한 과제를 통한 프로그래밍 경험 쌓기
* 그리구 인수의 STL 숙제도 하고~
* 주로 과제 위주로 할테니, 과제는 모두 꼭 해오세요. 과제는 그날 배울 내용에 맞는것을 고안해서 올리겠습니다.
* 스터디할 부분의 책에 있는 소스들은 한번씩 쳐보기를 강력히 권장함. 소스칠때 생각하면서 치기, 또 만약 가능만 하다면 결과만 보고나후 책 소스 안보고 소스 스스로 짜내기(이렇게 안해도 상관 없고, 단지 하나의 방법론..)
* 기본적으로 공부는 각자 알아서 해오고 도움자는 말 그대로 필요할때 도움만 줄 것임. 적극적인 학습하려는 자세가 중요~
* 먼저 매주 몇개씩의 과제가 나가면 각자 그 과제를 해오고(도우미도 해올 것임) 서로 소스를 보면서 분석이나, 비판 해보고 나서 각자 일주일 동안 공부하면서 느낀점을 구체적으로(앞으로 도움이 되도록 발전적인 방향에서, 즉 어떤 점이 잘못되어서 앞으로 어떻게 하면 잘될것 이라든가 어떤점은 잘되었는데 그이유는 어쨌다는 둥, 공부한 내용이나 학습 방법적인 면에서) 토론하기
* 그리고 도우미는 EffectiveC++ 이라는 책도 참고하면서 세미나 해줄만한거 있으면 해주거나, 특별한 부분에 대한 요청이 있을시에 해줄것임
* 그리고 뭐 사정이 허락하면 ICPC 문제나 ACM 문제 같은것도 같이 풀어 볼 수 있으면 풀어 볼지도 모릅니다.(시간이 허락하면.. ㅡㅡ;)
* 스케줄, 과제는 모이는 날짜 전까지 해야하는 것입니다. 그리고 아까 언급했듯이 이번주부터 시작입니다.
|| 다섯번째 주 || ["LinkedList/StackQueue/영동"][[BR]] ["STL/vector/CookBook"] 참고로 끝에 과제 해오기 ||영동 ||
* 참고 사이트
* 2번이상 도우미에게 사전 연락없이 안오면 아무런 의지도 열정도 없는걸로 간주하고 팀에서 빼겠음.
|| 8.9 || 임영동, 이대근, 김기웅 || 신진영(아.. 까먹었다.. 뭐라고 했지.. -_-;;) ||
* 수고 많으셨습니다. -[영동]
* ["StringOfCPlusPlus"]가 참 유익했던 거 같습니다. 제가 이걸 하기 전엔 문자열을 다루는데 어려움이 많았는데 이걸 하고 나니까 좀 쉬워진 듯한 느낌이네요. -[영동]
- GameProgrammingGems . . . . 19 matches
위의 Game Programming Gems는 게임에 쓰이는 전반적인 알고리즘(2D, 3D, AI(길찾기 포함))들을 전반적으로 대부분 다루어 놓고 얼마나 효율적인 프로그래밍을 할 수 있고 어떻게 해야 가능한 가를 보여주는 책이 되겠다. [[BR]]
이 책은 원서도 있고 한서도 있다. 번역 수준은 탁 봤을 때 괜찮은 수준.... 책값이 없는 관계로(솔직히 영어 수준이 떨어지므로) 한서를 선택해서 읽고 있다 [[BR]]
이 책의 저자는 수십 명이다. 10명 정도는 알고 있어도 수십 명이 지은 책은 처음 일 것이다.... 나도 그렇다 ^_^; 이 책은 수십 명의 게임 프로그래머들이 자신의 노하우를 적어놓은 책이라고 하는 편이 정확하다. 즉 정보의 공유를 주장하면서 만든 책이 된다. 물론 자신이 열심히 만든 소스를 그냥 공개하자~ 라는 것은 아니다(그래주면 고맙겠다 -.-) 허나 자신은 어떤 알고리즘으로 구현했다던가, 혹은 VC++과 다이렉트 엑스를 사용할 때는 어떻게 하면 어떤 환경에서 구현하면 좋다던가 하는 건 알려주면 고맙겠지? 이 책은 그런 목적으로 쓰여진 책이 되겠다.
솔직히 이렇게 장황하게 써 놨지만 언제 책을 다 볼 수 있을 지 미지수다(.... 너무 어렵다 T_T) 일단 6개월동안 책 2권 다 보기다 -_-; 그리고 이렇게라도 선언해 놓지 않으면 영영 책 사놓고 끝까지 안보게 될 듯 싶어서 ZP 위키에 이렇게 글을 올리게 되었다. =_=; 간간히 요약하여 게임을 제작하려는 자들(.... 필자도 포함 -_-V)에게 조금이나마 도움이 되면 좋겠다는 생각이 든다....
물론 책 다보기다 -.- 그러나 그걸로는 조금 부족하고.... 상걸고 게임 대 잔치(.... 이미 한게임에서 하고 있다 -_-)등에 출전하여 당당하게 상 따보자.... 라는 것이다.... -_-; 현재 필자는 직업을 가져서 조금 힘들지 모르지만 .... 필자가 이르노니 해보고 후회하는 게 낫기 때문에.... 이런 미친 프로젝트를 계획하고 있다. -_-V
일단 책 순서대로 할 것이다.... 만 필자의 주특기중 하나는 모르는 부분 술렁술렁 넘기기가 있다 --V 그러니 필자가 잘 모르는 부분은 대충대충 설명하고 끝낼 것이다. 우헤우헤 .... 이것이 바로 주체측의 농간이라는 것이다 -_-; 그리고 업데도 그렇게 기대하지 말자 --; 필자는 직업인데다가 바쁘다 -.-
- Gof/AbstractFactory . . . . 19 matches
구체적인 클래스를 정의하지 않고서, 연관되거나 의존적인 객체집합을 만들수 있는 인터페이스를 제공한다.
유저인터페이스 툴킷은 다양한 ["룩앤필"] 기준을 제공하도록 고려한다. 다른 룩앤필은 스크롤바, 윈도우, 그리고 버튼처럼 다른 모습과 행동양식의 유저 인터페이스 ["Widget"]을 제공한다. 이식가능한 룩앤필 기준을 위해서는, 개별적 룩앤필 Widget을 위한 어떤 애플리케이션은 ["하드-코드"] 가 아니어야 한다. 즉석으로 정의한 룩앤필 클래스는 나중에 룩앤필을 바꾸기 어렵게 만든다.
이 문제는 기본적인 Widget의 인터페이스를 정의한 abstract WidgetFactory 클래스를 정의함으로써 해결할 수 있다. 또한 모든 종류의 Widget에는 추상클래스가 존재한다, 그리고 구체적인 서브 클래스는 Widget을 상속해서 룩앤필 기본을 정의한다. WidgetFactory의 인터페이스는 각각의 추상 Widget 클래스의 새로운 객체를 반환하는 기능을 가지고 있다. 클라이언트는 이런 기능을 수행해서 Widget 인스턴스를 만든다. 그러나 클라이언트는 사용하는 클래스의 구체적인 내용에 대해서는 신경쓰지 않는다. 이처럼 클라이언트는 일반적인(?) 룩앤필의 독립성에 의존한다.
각각의 룩앤필에는 해당하는 WidgetFactory의 서브클래스가 있다. 각각의 서브클래스는 해당 룩앤필의 고유한 widget을 생성할 수 있는 기능이 있다. 예를 들면, MotifWidgetFactory의 CreateScrollBar는 Motif 스크롤바 인스턴스를 생성하고 반환한다, 이 수행이 일어날 동안 PMWidgetFactory 상에서 Presentation Manager 를 위한 스크롤바를 반환한다. 클라이언트는 WidgetFactory 인터페이스를 통해 개개의 룩앤필에 해당한는 클래스에 대한 정보 없이 혼자서 widget들을 생성하게 된다. 달리 말하자면, 클라이언트는 개개의 구체적인 클래스가 아닌 추상클래스에 의해 정의된 인터페이스에 일임하기만 하면 된다는 뜻이다.
또한 WidgetFactory는 widget 클래스 간의 의존관계를 형성한다. Motif 스크롤바는 Motif 버튼과 Motif 텍스트 에디터와 함께 사용되어야 한다, 그리고 MotifWidgetFactory를 사용함으로써 이러한 의존성이 강제적으로 이루어지게 된다.
* 시스템이 부산물을 만들고, 작성하고, 그리고 보여지는 것과 독립적이어야 할 때.
* 시스템이 다양한 부산물의 집합을 고려해야 할 때.
* 클래스 라이브러리를 나누고 싶고, 인터페이스만을 드러내되, 클래스의 동작을 보이지 않고자 할 때.
이는 conncrete factory를 쉽게 전환해서 사용할 수 있도록 해주고. 이로써 간단하게 concrete factory만 바꿔줌으로서 서로다른 산물의 조건을 쉽게 쓸수 있다.
UI 예제에서 Motif widgets을 Presentation Manager widgets로 바꾸는 작업을 단지 유사한 팩토리의 객체와 바꿔주고 그 인터페이스를 다시 생성함으로써 행할 수 있다.
3. ''산물간의 일관성을 촉진한다.'' 어떤 집합내의 객체들이 서로 협력하도록 고안되었다면, 어떤 어플리케이션은 한번에 단 하나의 집합에서 객체를 사용하는 것이 중요하다.
왜냐하면 AbstractFactory 인터페이스는 생산되어질 산물의 집합을 고정해놓기 때문이다. 새로운 산물을 지원하는 데는 factory의 인터페이스를 확장할 필요가 있다
- JavaStudy2003/두번째과제/노수민 . . . . 19 matches
* 상태(state) : 객체가 가지고 있는 속성 또는 특성
* 행동(behavior) : 객체가 가지고 있는 기능 또는 할 수 있는 행동
실세계의 객체를 소프트웨어 객체로 모델링하고 구현한다.
하나의 객체의 소스가 다른 소스와 무관하게 유지할 수 있고, 또 public이나 private 권한을 통해 정보에 대한 접근 정도를 설정할 수 있다.
청사진이라고 하기도 하고, 벽돌을 찍기 위한 하나의 틀에 비유하기도 한다.
* 인스턴스 : 클래스에 대한 변수를 선언하는 것을 '인스턴스를 생성한다'고 하고, 이 변수를 인스턴스라 한다.
인스턴스를 생성하는 것은 벽돌틀로 벽돌을 찍는다고 할 수있다.
* 객체 : 실세계에 적용 - 자동차(클래스) -> 아반테, 누비라, 그랜저, 티고 등 (객체)
자동차 클래스는 상위 클래스, 버스,트럭,자가용 클래스를 하위클래스라 하며, 이들의 관계에서 "하위클래스는 상위클래스를 상속한다"고 한다.
자바 언어를 이용하여 객체를 생성하고 필요에 따라 값을 초기화 해 주어야 하는 경우
* new 연산자로 객체를 생성할때 호출, 메모리를 할당하고 객체 생성자 호출
클래스 멤버는 변수와 메소드가 있고,
* 모든 인스턴스 변수를 0, '\u0000', false, 그리고 null 등과 같은 디폴트 초기치로 초기화
또한, 하위클래스는 자신에게 필요한 변수들과 메소드를 추가적으로 정의할 수 있습니다. 그리고, 하위클래스는 상위클래스에서 정의된 메소드와 같은 이름, 같은 인자들을 갖는 새로운 메소드를 정의하여 상위클래스에서 상속되는 메소드를 재정의할 수 잇는데,
* 인스턴스 변수, 클래스 변수, 그리고 클래스 메소드는 은닉될 수는 있어도 재정의 될 수는 없다.
* private 접근지정자로 선언된 변수는 상속할 수 없고, 메소드는 상속 및 재정의 할 수 없다.
* public 또는 protected 접근 지정자로 선언된 변수와 메소드는 상속할 수 있고, 메소드에 대해 재정의 할 수 있다.
- JavaStudy2004/자바따라잡기 . . . . 19 matches
자바(JAVA)하면 섬나라 자바를 연상케 한다. 그러나 미국 사람들에게 자바는 에스프레소 커피로 유명한 커피 체인점을 생각 하게 된다. 유래는 커피체인점이고, 커피의 대명사로도 사용된다.
그런데 언제부터인지, 네트워크의 대명사인 인터넷에서 이 자바 커피가 하나밖에 없는 독특한 향기를 뿌리고 있다. 인터넷을 좀 아는 사람이라면 자바를 들어보지 못한 사람은 거의 없을 것이다. 자바는 월드와이드웹 상에서 프로그램을 실행할 수 있게 하는, 네트워크를 기반으로하는 언어로, 인터넷 프로그래밍 언어의 표준이 되었다.
자바가 인터넷 세계에서 관심의 초점이 된 것은 먼저 세계를 하나로 엮는다는 인터넷을 기본 환경으로 하고 있으면서 인터넷에 연결되는 수많은 서로 다른 운영체제(OS)들에서 동일한 모습으로 프로그램을 실행할 수 있다는 점이다.
요약해서 말하면 자바는 인터넷의 기반인 웹의 프로그램 언어(Language)라고 이해하면 된다.
자바는 가전 제품에 들어갈 소프트웨어를 만들기 위해 탄생했다. 자바를 개발한 사람은 선 마이크로시스템즈 사의 제임즈 고슬링(James Gosling)이라는 사람이다. 그는 특정한 컴퓨터 칩에 대해 컴파일하여야 하는 널리 알려진 컴퓨터 언어인 C 언어의 문제점, 또 가전 제품의 긴 수명으로 인한 완벽한 호환을 가진 소프트웨어의 개발 요구, 가전 제품에 사용될 소프트웨어의 높은 신뢰성 필요 등의 문제에 대한 해결방안을 모색 해야만 됬다.
이 문제를 해결하기 위하여 고슬링은 C와 C++를 개조해서 해결을 해보려고 시도를 했던 것이다.그래서 C언어의 불필요한 부분이나 문제가 될 부분들을 제거한 새로운 언어를 개발하게 되였는데, 이것이 바로 자바인 것이다. 최초로 자바를 이용한 프로젝트는 가전 제품과 전기 기기들을 통합하여 가정 환경에 새로운 인터페이스를 제공하는 소위 그린 프로젝트(Green Project)라는 것 이였다. 그러던 1993년, 그래픽 기반의 월드와이드웹이 발표되고 자바의 개발자들은 곧 이러한 웹 기반의 응용 프로그램에는 자바와 같은 기기(컴퓨터 및 그 운영체제)로부터 독립된 언어가 이상적이라는 것을 발견하였다. 그리하여 그들이 개발한 것이 나중에 핫자바(HotJava)로 이름이 바뀐 웹러너(WebRunner)라는 웹 브라우저였다. 이것이 최초로 자바를 지원한 웹 브라우저가 되었다. 자바라는 이름은 지역의 어느 커피점 안에서 얻었다. 그래서 지금은 웹 페이지에서 항상 끓고 있는 커피의 상징을 볼 수 있다.
* [http://www.homepi.co.kr/java/java_4.htm]참고하세요
*1. 최근의 컴퓨터 분야의 용례에서, 가상머신은 자바 언어 및 그 실행 환경의 개발자인 썬 마이크로시스템즈에 의해 사용된 용어이며, 컴파일된 자바 바이너리 코드와, 실제로 프로그램의 명령어를 실행하는 마이크로프로세서(또는 하드웨어 플랫폼) 간에 인터페이스 역할을 담당하는 소프트웨어를 가리킨다. 자바 가상머신이 일단 한 플랫폼에 제공되면, 바이트코드라고 불리는 어떠한 자바 프로그램도 그 플랫폼에서 실행될 수 있다. 자바는, 응용프로그램들이 각각의 플랫폼에 맞게 재작성 되거나, 다시 컴파일하지 않아도 모든 플랫폼에서 실행되는 것을 허용하도록 설계되었다. 자바 가상머신이 이를 가능하게 한다. 자바 가상머신의 규격은 실제 "머신"(프로세서)이 아닌 추상적인 머신을 정의하고, 명령어 집합, 레지스터들의 집합, 스택, 가배지를 모은 heap, 그리고 메쏘드 영역 등을 지정한다. 이러한 추상적, 혹은 논리적으로 정의된 프로세서의 실제 구현은, 실제 프로세서에 의해 인식되는 다른 코드, 혹은 마이크로프로세서 그 자체에 내장될 수도 있다. 자바 소스 프로그램을 컴파일한 결과를 바이트코드라고 부른다. 자바 가상머신은, 실제 마이크로프로세서의 명령어에 그것을 대응시키면서 한번에 한 명령어씩 바이트코드를 해석하거나, 또는 그 바이트코드는 실제 마이크로프로세서에 맞게 JIT 컴파일러라고 불리는 것을 이용해 나중에 컴파일될 수도 있다.
"실행되고 있는 프로그램은 간혹 가상머신이라고 불려진다. - 실제 물리적인 현실로 존재하지 않는 머신. 가상머신 아이디어는, 그 자체로 기술의 역사에서 가장 멋진 아이디어 중의 하나이며, 소프트웨어에 관한 아이디어의 진화에 있어 매우 결정적인 단계라고 말할 수 있다. 그것을 따라잡기 위해, 과학자와 기술자들은 프로그램을 운영하는 컴퓨터가, 단지 세탁이나 하는 세탁기가 아니라는 것을 인식해야만 했다. 세탁기는 그 안에 어떠한 옷들을 넣는다 해도 여전히 세탁기이지만, 컴퓨터는 새로운 프로그램을 넣는다면, 그것은 완전히 새로운 기계가 된다.... 가상머신, 그것은 소프트웨어를 이해하는 방법이며, 소프트웨어의 설계가 기계의 설계와 다르다는 것을 생각하게 한다."
=== 참고 ===
- MindMapConceptMap . . . . 19 matches
How To Read a Book 과 같은 책에서도 강조하는 내용중에 '책을 분류하라' 와 '책의 구조를 파악하라'라는 내용이 있다. 책을 분류함으로서 기존에 접해본 책의 종류와 비슷한 방법으로 접근할 수 있고, 이는 시간을 단축해준다. 일종의 知道랄까. 지식에 대한 길이 어느정도 잡혀있는 곳을 걸어가는 것과 수풀을 해치며 지나가는 것은 분명 그 속도에서 차이가 있을것이다.
공부할때 한 챕터에 대해서 1시간정도 MindMap 을 구조적으로 그려나가면서 정리 한 뒤, 기억 회상을 위해 외워서 MindMap 을 한 3번정도 그려보면 (기억 회상을 위해 그리는데에는 보통 5-10분이면 된다. 반드시 '다시 기억을 떠올리면서' 그릴것! MindMap 이나 ConceptMap 이나 그리고 난 뒤의 도표가 중요한 것이 아니다. 중요한 것은 Map을 그려나가면서 기억을 떠올려나가는 과정이 중요하다.)
개인적으로 처음에 MindMap 보다는 그리는데 시간이 많이 걸렸다. 하지만, MindMap 에 비해 각 개념들을 중복적으로 쓰는 경우가 적었다. (물론 MindMap 의 경우도 중복되는 개념에 대해서는 Tree 를 깨고 직접 링크를 걸지만) MindMap 의 Refactoring 된 결과라고 보면 좀 우스우려나; 주로 책을 정리를 할때 MindMap 을 하고 때때로 MindMap 에서의 중복되는 개념들을 토대로 하나의 개념으로 묶어서 ConceptMap 을 그리기도 한다.
컴퓨터 프로그램에서도 MindMap 과 ConceptMap 을 그리는 프로그램이 많다. 하지만, 그렇게 효율적이지는 않은 것 같다. (아직까지 연습장과 펜 만큼 자유롭지가 않다. ["TabletPC"] + Visio 조합이라면 또 모를까;) MindMap 이건 ConceptMap 이건 기존 지식으로부터 연관된 지식을 떠올리고, 사고하고, 재빨리 Mapping 해 나가는 과정자체가 중요하기에. (["1002"]는 개인적으로 프로그래밍을 하려고 했다가; 그리 유용하단 느낌이 안들어서 포기했다는. 여러 프로그램들을 써 봤지만, 결국 도로 연습장 + 펜 으로 돌아갔다. ^^; 그리고 개인적으로 Map 자체를 도큐먼트용으로 보관하는것에 의미를 두지 않아서.)
* MindMap 과 ConceptMap 을 보면서 알고리즘 시간의 알고리즘 접근법에 대해서 생각이 났다. DivideAndConquer : DynamicProgramming. 전자의 경우를 MindMap 으로, 후자의 경우를 ConceptMap 이라고 생각해본다면 어떨까.
빠르게 책의 구조와 내용을 파악할때는 MindMap을, 그리고 그 지식을 실제로 이용하기 위해 정리하기 위해서라면 MindMap 을 확장시키거나, ConceptMap 으로 다시 한번 표현해나가는 것이 어떨까 한다. --석천
'''마인드맵은 지극히 개인적인 도구이다.''' ["데기"]가 마인드맵에 기록하는 것들은 주로 연상 작용을 일으켜 이미 알고있는 것을 쉽게 떠오르게 할 수 있는 열쇠들이다. 마인드맵에 적힌 내용들이 그 열쇠가 되기도 하지만 그보다 마인드맵을 그리는 과정이 그 열쇠가 되어준다. 잉크가 말라 잘 안나오는 파란색 펜을 선택해서 굵은 줄로 가지를 치고 조금 삐딱한 글씨체로 ''겨울 바다''라고 썼던 일이 나중에 그 마인드맵을 다시볼때 기억의 실마리가 되어준다. 그 실마리는 언어가 될 수도 있겠지만 이미지적인 요소도 무시할 수 없다. 굴림체 ''겨울 바다''와 ["데기"]체 ''겨울 바다''를 통해 연상되는 기억에는 분명히 차이가 있을것이다.
MindMap 의 연상기억이 잘 되려면 각 Node 간의 Hierarchy 관계가 중요하다. 가능한한 상위 Node 는 추상도가 높아야 한다. 처음에 이를 한번에 그려내기는 쉽지 않다. 그리다가 수정하고 그리다가 수정하고 해야 하는데 이것이 한번에 되기는 쉽지 않다. 연습이 필요하다.
- ProjectSemiPhotoshop/Journey . . . . 19 matches
* 이제야 위키를 본다. 시간은 많은데 뭐가 그리바쁜지...항상 바쁜 현민이다. 지금 열심히 푸쉬푸쉬를 하는 중인데 잘 되는 것도 없고...이제야 겨우 움직이고 블럭을 넣으면 이미지가 바뀌는거 까지 했다. 이제 스테이지 넘기는 거랑 점수 계신하기만 하면 될 거 같은데....아직 더 공부를 해야할 것 같다. 난 아직 마니 부족해...-.ㅜ
* 한일 : 현민과 경태, 현민 집에서 알카로이드의 기본을 열심히 배우고 익힘. - 자료실 스크린 샷
* 내가 점심을 먹고 낮잠을 자는 바람에 피씨 실에서 모이기로한 스터디 약속이 깨졌으나 4시 반쯤에 부시시 일어나서 경태에게 스터디를 하자고 했음. 웨 항상 밥 먹고 나면 졸리는지는 모르겠으나... -.ㅡ;;; 어쨋거나 스터디는 무사히 진행됨.
* 상민이가 해준게 더 쉽고 이해는 쉬었지만 경태의 것은 뭔가 다른 방식을 접했다고 할까? 둘 다 방법 장점이 있는거 같아 좋아보여.
* 아직은 이해하기도 힘들고, 어려운 프로그래밍이지만 앞으로 열심히 해서 세미 포토샵때는 정말 Pare Programming이 될 수 있도록 열심히 공부할께~ -- 현민
* 현민이와 5분 단위의 PairProgramming 시도하였다. 10.24 때의 모임 보다 훨씬 성과가 있었다고 자평한다. 내 자신이 배우고 깨달은 것이 너무 많아, 정리하기가 힘들다. 그래서 현민이에게 미안한 느낌 마져 약간 든다.
* 프로그래밍 자체가 약간 게임과 같은 느낌이 좋왔고, 현민이가 어땠는지 궁금하다. 해깔리기만 하지 않을까? --["neocoin"]
* 처음에는 저번에 했던 스터디 내용의 연장이라 따라갈 수 있었는데 뒷부분에 벽돌을 개별적으로 설정해주는 그 배열을 쓰는데서 솔직히 좀 이해가 잘 안된다. 책을 보고 더 연마해야할 듯 싶다. -- 현민
* ["STL"] 관련 서적은 네가 가진게 없을꺼라고 생각한다. 학교에서도 가르쳐주지 않는 부분이라. 스스로 익혀야 한다. 너무나 단 과실이라, 꼭 보기를 권한다. 관련 내용은 ["STL"] 에서 ["STL/vector"],["STL/vector/CookBook"]를 참고하면 될꺼다. --["neocoin"]
* 어렵기는 했지만 많은 것을 알았고 또 자신감을 가지게 되었다. 고맙다 얘들아.. ㅜ.ㅜ -- 현민
* 현민이에게 야속한 말일지 모르지만, 솔찍히 약간 당황스러웠다. ''무엇을 해야하는가?'' 에서 출발하고 싶었지만, 불행히 ''무엇을 배워야 하는가?'' 로 출발과 끝을 마무리 했다. 역시 ''문제를 인식''하는 단계가 중요함을 느낀다. --["neocoin"]
* 내일은 모일수 있을지 모르겠다. 지금은 피곤해서 내일 일은 내일 생각하고 싶구나.. 참. 나 목포야. --경태
- VendingMachine/재니 . . . . 19 matches
* 먼저 자판기(VendingMachine)이 필요할 것이고,
* 자판기는 사용자 인터페이스를 구현하는데 사용하고, 사람이 주문할 음료(Drink)를 따로 분류하자..
* 그리고 사람은 메뉴를 보고 각 메뉴에 알맞은 명령을 내릴 수 있어야 할것이고...
먼저 자신의 상태(품목,가격,수량)을 기억하고 사람에게 보여줄 수 있어야겠지...[[BR]]
그리고 사람이 주문을 했을 때 주문받은 상품의 가격에 비해 잔액이 충분한지 확인 하는 것 하구..... / 계수기[[BR]]
이 두가지 조건에 만족할 때에는 주문한 상품을 내줄 수 있어야 하겠고, 이 때 상품의 수량을 갱신해야겠지!^^[[BR]]
* 흠.. 그리고 계수기의 역할을 한번 볼까? 이녀석은 먼저 잔액을 기억해서 보여주어야 할 것이고..[[BR]]
사람이 투입한 돈이 형식에 맞는지(10,50,100,500,1000원) 확인해서 잔액을 늘려주어야 할 것이고,[[BR]]
사람이 돈의 반환을 요구하면 돈을 꺼내주고 잔액을 초기화 할 수 있어야 하겠지?^^[[BR]]
아!! 그리고 주문한 음료의 가격에 따라 금액을 지불해주는 역할도 있어야겠군!^^[[BR]]
= 만들고나서.. =
아직 클래스 사용법도 제대로 모르는지라 서툴기도 하고.. 결론은 역시 공부해야할 것이 많다는 것...^^
* 이번엔 프로그램 설계를 한글로 했지만 영어로 해보고 싶은 욕심이 생기네엽..^^[[BR]]
''클래스 수가 많아서 복잡해진건 아닌듯(모 VendingMachine 의 경우 Requirement 변경에 따라 클래스갯수가 10개 이상이 되기도 함; 클래스 수가 중요하다기보다도 최종 완료된 소스가 얼마나 명료해졌느냐가 복잡도를 결정하리라 생각). 단, 역할 분담할때 각 클래스별 역할이 명료한지 신경을 쓰는것이 좋겠다. CoinCounter 의 경우 VendingMachine 안에 멤버로 있어도 좋을듯. CRC 세션을 할때 클래스들이 각각 따로 존재하는 것 같지만, 실제론 그 클래스들이 서로를 포함하고 있기도 하거든. 또는 해당 기능을 구현하기 위해 다른 클래스들과 협동하기도 하고 (Collaboration. 실제 구현시엔 다른 클래스의 메소드들을 호출해서 구현한다던지 식임). 역할분담을 하고 난 다음 모의 시나리오를 만든뒤 코딩해나갔다면 어떠했을까 하는 생각도 해본다. 이 경우에는 UnitTest 를 작성하는게 좋겠지. UnitTest 작성 & 진행에 대해선 ["ScheduledWalk/석천"] 의 중반부분이랑 UnitTest 참조.--["1002"]''
- ZeroPage성년식 . . . . 19 matches
* 온오프믹스 참가 신청에 문제가 있나요?(이벤트 페이지를 제 이름으로 만들어서 저는 참가 신청을 할 수가 없습니다. 그래서 어떤 문제가 있는지 알 수가 없네요.) 선배님께서 온오프믹스로 참가 신청이 힘들다고 다른 방법을 만드는 게 좋겠다는 말씀을 해주셨습니다. 온오프믹스에 문제가 있다면 구글독스를 통해 추가적으로 신청을 받거나 아니면 온오프믹스 참가 신청시 발생하는 문제를 해결하는 법을 알아내어 온오프믹스 페이지에 안내하는 것이 좋을 것 같습니다. - [김수경]
* 페이스북에서 바로 신청을 하는 경우 문제가 있을수도 있는거 같았아요. 정욱이형이 저번에 된줄 알았는데 안됐길래 다시하라고 해서 됐거든요. -[김태진]
* 그닥 문제가 없었던걸로 기억하는데 저도 제로페이지 메일에서 신청에 문제가 있다고 보내주신걸 확인했습니다. 메일로 간단한 몇가지 사항과 함께 참가 의사를 밝히면 저희가 관리하는 방법도 있지 않을까요 - [지원]
* 안보고 그냥 타자만 치다보니.......;; - [김태진]
* 성인식이 아니고 성년식이네요. 정확한 행사명을 정할필요가 있을듯... -[김태진]
* '''날짜 변경해야 할 것 같습니다''' : 11월 26일에 Agile Korea 2011이 진행됩니다. 저는 이거 꼭 갈거라서ㅜㅜㅜ 그리고 제 개인 사정을 떠나서, 형진오빠가 기획단(''?'')에 포함되어 있고 김창준 선배님께서 키노트 연사로 참가하시는 것이 확정되어 그 날 진행은 여러모로 힘들 것 같습니다. 그 바로 다음주가 적당할 것 같은데 다들 어떻게 생각하세요? - [김수경]
* 촉박할 수 있지만 11월 19일이 12월 3일보다 나을 수도 있습니다. 저와 몇몇분들과는 상관없을 수도 있지만 기말고사 임박, 프로젝트 마감 임박 등 재학생들에게 부담이 큰 시기일 수 있습니다. 다수는 아니지만 송년회를 일찍 하는 단체에서는 12월 첫주 주말부터 본격 시작됩니다. 일단 저는 어느쪽이던 상관없지만 다른 기획단 분들의 의견도 듣고 싶습니다. - [지원]
* 기획단 후기 수요일(11월 9일)까지 저에게 보내주세요. 한두줄정도면 되고 메일이던 쪽지건 메신저던 상관없습니다. - [지원]
* [김태진] - 제로페이지에서는 처음으로 기획단을 하였습니다. 누나/형들이 아주 구체적으로 어떤 항목들이 필요한지 나열하면서 언제까지는 해야할 것이다고 계획을 바로바로 짜고 그 계획대로 되는걸 보니 어떤 기획을 제대로 하려면 저렇게 해야하는군.. 이라는 생각을 많이 하게 되었네요. 연락돌리는 일이나 신청받는거도 쉽지않은데 여러명이 잘 나눠서 차근차근 진행하니 잘 되더라구요. 여럿이 같이 열심히 기획하는게 최대 효율을 낳는다는걸 깨달았네요. 마지막으로 ZP20주년 성년식, 많은분들이 와서 즐거운 날이 되었으면 좋겠네요!ㅋㅋ
* [송치완] - 대학에 들어와서 처음으로 어떤 행사의 기획단을 맡아보았네요. 이번 성년식의 기획단을 하면서 제가 몰랐던 ZP의 역사들을 많이 알 수 있어 보람찬 시간이었다고 생각됩니다. 많은 선배님들, 동기님들이 행사에 오셔서 즐거운 시간 보내주셨으면 좋겠습니다 ^_^
* [김수경] - 급하게 준비하느라 다들 수고 많았습니다. 남은 준비 과정 잘 마무리하고 의미있는 시간 되었으면 좋겠습니다.
* 지난 회의에 불참해서 미안합니다. 부탁이 있는데 행사 진행중에 ''저와 태진이는 찍사를 했으면 좋겠습니다.'' 20주년 성년식이니 만큼 많은 사진을 남기고 싶고, 한 명이 찍사를 다 부담하면 그 한 명이 다른 일을 할 때의 기록이 남지 않습니다. 태진이가 접수할때는 제가 사진촬영을 많이 하고 제가 발표할때는 태진이가 촬영을 많이 하고 이렇 식으로 하면 좋겠어요 - [지원]
- 새싹교실/2013/양반/3회차 . . . . 19 matches
if 안에 들어가는 조건에 대해서 참이 나오면 수행하고, 거짓이 나오면 수행하지 않는다.
조건식이 참이면 문장 1을 실행하고, 거짓이면 문장 2를 실행한다.
if문 내에 if문을 또 사용할 수도 있다. 중첩된 if문이라고 한다.(nested if)
조건이 루프의 끝에 위치하므로, 루프 본체를 먼저 실행하고, 조건을 검사하여 그 값이 참인 동안 반복한다.
for문 - 루프의 반복 횟루를 알고 있을 때 적합한 반복문이다.
* 초기화 부분은 처음에 한 번만 실행하고, 수식 2,3 은 루프의 반복 전후에 실행된다,
숫자 n을 입력받고, 입력 받은 n 값에 대응하는 삼각형을 출력하시오.
숫자 n을 입력받고, 입력 받은 n 값에 대응하는 사각형을 출력하시오.
숫자 n을 입력받고, 입력 받은 n 값에 대응하는 삼각형을 출력하시오
숫자 key와 n을 입력받고, 입력 받은 두 값에 대응하는 도형을 출력하시오.
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
오늘은 제어문에 대해서 배워봤습니다. 지난 시간에 제가 새싹들에게 잘못된 지식을 알려줬는데 의정이형이 그 것을 알려주어서 불상사를 피했습니다.(의정이형 고마워요) 이번 시간은 실습도 많이 많이 시키려고 했는데 시간 배분이 잘 안되서 그런지 실습도 많이 하지 못하고, 수업도 늦게 끝나서 후기를 여유있게 작성하지 못했네요. 5분 전에 끝내서 여유 있게 후기를 작성하려는 시도가 실패했습니다. (...) 그리고 for문을 설명하면서, 설명 예제로는 구구단을 말해 놓고, 실습은 *로 사각형을 찍으라고 했는데 이 시도는 실패한 것 같습니다. 실습도 설명 예제와 연관된 것으로 해야 이해가 더 잘될 거라는 것을 깨달았네요. 다음에는 설명 예제와 실습 예제를 더욱 충실히 준비해와야 할 것 같습니다. 그리고 시간 안배도 잘 해야겠네요.
- 지금그때2004/회고 . . . . 19 matches
[지금그때2004] 를 준비한 사람들의 회고. (혹시 지금그때2004 위키에 어울리다면 그쪽으로 옮겨주길)
비하인드 스토리를 적고 싶었는데 마침 잘 되었습니다. -ㅁ-
* MP3와 매직을 뺀 나머지 준비물을 행사 시작 전에 준비 했다. 특히 과자와 음료수는 수민 군의 바람(?)대로 넉넉하고 남을 정도였다.
* 참고 : 일반매직을 사용해서 전지에 글씨를 쓰면 책상에 자국이 남습니다. 보드마카를 이용해서 했더니 괜찮더군요. 리허설할때 사소한 것도 한번 해보고 넘어가는게 좋겠어요 (상민형 미리좀 알려주셨으면 얼마나 좋아요...)
* 빌릴 강의실에 수업이 있어서 시간이 촉박했음에도 불구하고 원활히 이루어진 준비.
* COW에서 한 명도 오지 않았습니다. 물론 사정이 있어서겠지만 홍보와 연락이 부족했다고 생각합니다.
* 'COW', 'JStorm', 'Netory' 에 대한 홍보는 전혀 이루어지지 않았습니다. 행사 당일날 JStorm 이나 Netory 소속 멤버들에게 해당 모임이 있는지에 대해 물어봤을 때 아시는 분들이 없었습니다. (패널을 맡으신 분들을 제외하고요.)
* 해당 학회 게시판에 '지금그때' 에 대한 홍보가 하나도 없었습니다.(Netory의 경우는 행사 전날 급하게 올린 공지글이였고, Netory 에서 오신 분들은 패널을 맡아주신 선호형 외에 없었습니다.)
* 패널들의 이력사항에 대한 소개가 미비했다는 생각이 듭니다. 패널들의 소개를 좀 더 적극적으로 자세히 하고 홍보를 한다면, 더 적극적인 질문을 이끌어내지 않았을까 생각합니다.
* 패널의 거리와 청중의 거리가 너무 멀다. 리허설에서는 괜찮았다고 했으나, 이해가 안간다.
위에의 잘된점을 살리고, 아쉬운점을 보완하려면 어떤 행동을 해야 할까?
* 30여분 하였습니다. 행사 소개 시간을 뺀 나머지 시간은 1시간을 12분으로 계산하고 했습니다. 일정을 모두 칠판에다 적어두고 시작했습니다. 한 번 리허설 하다가 시간이 잘못되었다는 지적이 나와서 다시 한 번 하였습니다.
* 제가 급해서 잘못 전달했군요. [지금그때2004/전통과사유20040329]에 시간이 부족하고, 재현에 불과해서 내용을 간추려서 실제 속도와 다르게 한것입니다. 다음에 이러한 기회가 온다면, 한 코너만 때어서 거의 비슷한 시간으로 리허설을 해보시는 것도 좋습니다. 2003에서는 1시간 정도, ost에서 나올 만한 한주제만 때어서 [지금그때2003/규칙]을 밑바탕 삼아 동일한 속도로 했거든요. 그 피드백으로 규칙이 변했었죠. 모든 사람이 하나에 매달일 필요도 없이, 두 조로 나누어서 병렬로 하면 좋은 효과를 볼수 있습니다.
* JStorm 이나 Netory 의 경우 해당 소속의 한명에게 이야기하는 식으로 하는 소극적인 전달이 아닌, 1주일전 해당 학회 게시판에 공지를 적고 오실분들이 어떻게 연락을 해야 하는지, 학회 소속원으로의 연락은 어떻게 해야 하는지에 대한 명시적인 피드백을 받아야겠습니다. 그리고 최소한 해당 학회 소속원과 2회 이상의 전화연락이 필요하다 봅니다.
* 패널 초빙시 2주 전 연락을 하고 확답을 받은뒤, 홍보시에도 적극적으로 이용.
* 적는 사람 입장에서는 2개 짜리 책상이 좋았습니다. 그러나 관찰 해보면, 책상이 작은 쪽이 좀더 가까이 바라보고 이야기하는 느낌을 받았습니다. 적절히 섞여 있는 편이 좋은것 같습니다.--NeoCoin
- 프로그래머가알아야할97가지/ActWithPrudence . . . . 19 matches
''"어떤 일을 맡아서 하든지 간에, 주의 깊게 행동하고 결과를 고려하라" –작자 미상''
이터레이션 초반에 스케줄이 아무리 여유로워 보인다고 해도, 시간 압박을 다소 받는 건 어쩔 수 없다. “제대로 하기”와 “빨리 하기” 중 선택해야 할 경우, 나중에 다시 돌아와서 고칠 수 있다는 전제하에 “빨리 하기”를 선택하고 싶어지기도 한다. 스스로에게나 팀에게 또는 고객에게 이런 약속을 할 때에는 정말로 나중에 고치겠다는 뜻이다. 그러나 십중팔구 다음 이터레이션에서 새로운 문제가 나타나서 거기에 집중하게 되곤 한다. 이렇게 연기된 작업은 기술적 부채(Technical Debt)라고 알려져 있으며 이런 일에 익숙해져서는 안 된다. 특별히, 마틴 파울러(Martin Fowler)는 그의 기술적 부채 분류 체계에서 이를 의도하지 않은 기술적 부채와 헷갈려서는 안 되는 계획적인 기술적 부채라고 부른다.
기술적 부채는 대출과 마찬가지다. 그로 인해 단기적인 이익을 얻지만, 전액을 상환하기 전까지는 이자를 지불해야 한다. 이런 코드 내 지름길 때문에 기능을 추가하거나 코드를 구조조정하기 어려워진다. 이런 지름길은 결함과 안정적이지 못한 테스트 케이스가 자라는 밑거름이 된다. 이를 오래 방치하면 방치할수록 더 나빠진다. 수정을 하려고 할 때 즈음이면 코드를 구조조정하고 수정하기 훨씬 어렵게 만드는 그다지 좋지 않은 설계가 애초의 문제 위에 켜켜이 쌓여 있을 수 있다. 사실상, 다시 돌아가서 고쳐야 할 때는 일이 너무 심각해져서 반드시 고쳐야 할 때뿐이다. 그 때엔 일정이나 위험을 감당할 수 없어 고치기 어려운 경우가 다반사이다.
데드라인을 맞춘다거나 기능의 단편을 구현하려고 기술적 부채를 발생시켜야 할 때가 있다. 이런 입장이 되지 않도록 애써야 하지만, 이런 상황이 반드시 필요하다면 그렇게 하되, 다만 반드시 기술적 부채를 추적해서 재빨리 갚아서 급히 끌어내려야 한다. 그렇게 타협하기로 결정하자마자, 이슈 추적 시스템에 과업 카드나 로그를 작성해서 잊어버리지 않도록 해야 한다.
다음 이터레이션에서 그 부채의 상환을 계획한다면, 비용은 최소화 될 것이다. 부채를 상환하지 않고 놔두면 이자가 누적되며, 그 이자는 가시적인 비용으로 추적되어야 한다. 이렇게 하면 프로젝트의 기술적 부채가 사업적 가치에 미치는 영향을 강조하며 상환에 적절한 우선 순위를 줄 수 있게 된다. 이자를 어떻게 산정하고 추적할 것인가는 각각의 프로젝트에 달려있지만, 반드시 그것들을 추적해야 한다.
여지껏 과제를 하면서 "제대로 하기"와 "빨리 하기"중 "빨리 하기"를 선택한 적이 많았는데 요즘 그 선택들에 대해 후회하고 있습니다. 지금도 프로젝트를 진행하며 팀이 두 선택지 중 고민중인데 진행하다보면 "빨리 하기"가 더 매력적으로 느껴지는 것 같아 걱정됩니다. 이 페이지를 팀원들이 다같이 읽어보면 좋겠다는 생각이 드네요. - [김수경]
- 현재 위키에 어떤 습관이 생기고 있는걸까? . . . . 19 matches
새로운 공원을 지을 때였다. 한 공원 설계사가 공원에 대한 전반적인 설계를 하고 있었다. 공원 조경 설계를 마치고 잔디와 길을 내었다. 그런데 문제가 있었으니, 옆에 분명히 길이 있었음에도 불구하고 사람들이 잔디를 가로질러 지나가는 것이었다. 푯말을 세워도, 줄로 길을 만들어도 사람들이 제대로 지키지 않는 일이 허다했다. 공원설계사는 '도대체 뭐가 문제일까?' 하며 고민을 하였다.
오랫동안 고민한 끝에 설계사는 잔디를 보고 이 문제를 간단히 해결했다. 잔디가 가장 많이 밟힌 부분을 따라 새로운 길을 내었다. 잔디가 가장 많이 밟힌 부분을 보니 다른 길로 지나가는 가장 가까운 지름길이였던 것이다.
우리가 현재 OneWiki(가제 이하 OneWiki로 표현)라는 공원을 돌아다닌지(또는 길을 설계한지) 일주일 이상의 시간이 흐르고 있는데, 그동안 자신들이 어떠한 경로를 만들어내려고 했는지, 또는 어떠한 편한 경로들이 있고 돌아보면서 어떠한 느낌을 받는지 생각해 봤으면 합니다.
두번 이상 혹은 규칙이라 의식하고 한번이라도 행한 것이 있다면 내용과 느낌을 적어 봅시다.
+ 편한 길이 있다면 계속 써도 문제는 없다고 생각하지만.. --[snowflower]
* 그것이 왜? 편한 길인가 앞으로도 편할수 있는 길인가? 나쁜점은 왜 나쁜가? 하는 것을 이야기 하자는 것이지요. 저 이야기에는 분명 많은 부분이 생략되었을 겁니다. 이 길을 내도 되는건가? 왜 사람들이 많이 다닐까? 하는 고민들이요. OneWiki 에 길을 보면서 생각해 BoA요. --NeoCoin
* 제목이 영어라면 각 단어의 앞을 대문자로 씀으로써, 띄어쓰기의 효과를 누릴수 있었지만... 한글은 그게 참 애매하지요. 띄어쓰기를 안하자니 한눈에 들어오지도 않고, 또 띄어쓰기를 하자니 검색이 보장이 안되니... 아예 '영어제목만 만들자' 같은건 어떨까 생각중입니다. --[인수]
기존 공원을 레노베이션할 때였다. 한 공원 설계사가 공원에 대한 새로운 설계를 하고 있었다. 이전의 설계를 뒤집어 엎고, 새로운 공원 조경 설계에 따라 잔디와 길을 내었다. 그런데 문제가 있었으니, 옆에 분명히 길이 있었음에도 불구하고 사람들이 잔디를 가로질러 지나가는 것이었다. 푯말을 세워도, 줄로 길을 만들어도 사람들이 제대로 지키지 않는 일이 허다했다. 공원설계사는 '도대체 뭐가 문제일까?' 하며 고민을 하였다.
오랫동안 고민한 끝에 설계사는 잔디를 보고 이 문제를 간단히 해결했다. 잔디가 가장 많이 밟힌 부분을 따라 새로운 길을 내었다. 잔디가 가장 많이 밟힌 부분을 보니 이전 공원의 길이었던 것이다.
- HanoiProblem . . . . 18 matches
* 그때 링 크기는 각자 다르고, 처음에 링은 제일 밑에 제일 큰 링, 그 위에 다음으로 큰링, 이런식으로 있고, 앞으로도 계속 그런식으로 밖에 쌓일수 밖에 없습니다.
학생들이 HanoiProblem을 푸는 것이 어려웠다면 이게 쉬운 문제라고(혹은 그다지 어려운 문제는 아니라고) 학생들이 느낄 수 있도록 하기 위해 무엇을 할 수 있을까 생각해 보는 것이 필요합니다.
저는 학생들이 HanoiProblem에 도전하기 이전에 다음 세가지를 이야기 해주고 싶습니다.
만약 HanoiProblem을 풀게 하기 이전에 팩토리알과 비슷한 형의 문제만 보여줬다면, 오히려 HanoiProblem을 어렵게 느끼고 학습이 많이 발생하지 못한 것이 더 당연하다고 생각됩니다.
그리고 재귀함수를 만들 때 유의점과 사고보조물을 가르쳐 줍니다. 유의점이라면 재귀함수는 리턴되는 값의 종류(타입)가 모두 동일해야 한다는 것, 재귀호출을 벗어나는 지점 근방에서 유의해야 한다는 점 등이고, 사고보조물로는 스택의 상태를 그림으로 그리는 방법이나, 수식을 사용하는 방법 등이 있겠죠.
시작하는 수를 하나 주고, 특정한 연산을 사용하여 정해진 스텝만에 다른 수로 전환시키는 문제를 주었습니다. 예를 들어, 8에서 시작해서 곱하기 2나, 빼기 7을 사용해서 6번의 스텝만에 15를 만드는 문제입니다.
한 그룹은 예를 들은 복잡한 문제를 먼저 제시받았고, 다른 그룹은 단순한 문제(예컨대 2번만에 8을 9로 바꾸는 것) 두개를 먼저 제시받았습니다.
첫번째 그룹은 한 문제를 푸는데 평균 406초 이상 걸렸지만, 두번째 그룹은 복잡한 문제를 푸는데 97초 걸렸고, 세 문제를 모두 푸는데 192초 밖에 걸리지 않았습니다.
이를 HanoiProblem에 적용하면, 3개(혹은 5개, 6개)의 원반 문제가 복잡하다면, 하나, 둘 등의 좀 더 단순한 문제를 먼저 풀고 거기서 문제풀이의 "구조적 유사성"을 발견해 낸 뒤에 좀 더 어렵거나 좀 더 일반적인 (즉 원반 n개) 문제에 도전하는 것이 효과적이라는 말이 됩니다.
종종 미로가 너무 복잡할 때 목적지에서 거꾸로 내려오는 것이 더 간단할 때가 있습니다. TestDrivenDevelopment도 이 방법을 사용합니다. 자신이 원하는 것을 컴퓨터에게 설명해 주고, 그 목적지에서 거슬러 내려옵니다.
혹은, 중간을 끊어서 볼 수도 있습니다. 어찌되었건 모든 원반이 옮겨가려면 어느 순간엔가는 가장 큰 원반이 비어있는 막대기로 이동해 가야 합니다. 이 상황에서 가장 큰 원반이 있는 막대기에는 큰 원반 하나만 있을 것이고, 그 원반이 옮겨갈 막대기는 비어있어야 하므로, 결국 두개의 막대기가 모두 사용되고, 나머지 하나의 막대기에는 나머지 원반들이 모두 크기 순으로 쌓여있게 될 것이라는 추측을 할 수 있습니다. 여기서 앞 뒤 상황을 생각해 보면 어떤 통찰을 얻을 수 있습니다.
- TestFirstProgramming . . . . 18 matches
어떻게 보면 질답법과도 같다. 프로그래머는 일단 자신이 만들려고 하는 부분에 대해 질문을 내리고, TestCase를 먼저 만들어 냄으로서 의도를 표현한다. 이렇게 UnitTest Code를 먼저 만듬으로서 UnitTest FrameWork와 컴파일러에게 내가 본래 만들고자 하는 기능과 현재 만들어지고 있는 코드가 하는일이 일치하는지에 대해 어느정도 디버깅될 정보를 등록해놓는다. 이로서 컴파일러는 언어의 문법에러 검증뿐만 아니라 알고리즘 자체에 대한 디버깅기능을 어느정도 수행해주게 된다.
테스트코드는 프로그래머가 하려고 하는일, 즉 의도를 담아낸다. 이는 이 프로그램이 어떠한 시나리오로 돌아갈것인가를 먼저 생각해보는 기회를 저절로 제공해준다. Test가 가능한 코드는 run 을 시켰을때 어떤 결과를 낼지를 파악할 수 있는 코드이다. 이 경우 해당 모듈이 완성되었을때가 언제인지 그 목표를 분명하게 잡는 역할을 해준다.
요새는 ["TestDrivenDevelopment"] 라고 한다. 단순히 Test 를 먼저 작성하는게 아닌, Test 주도 개발인 것이다. TestDrivenDevelopment 는 제 2의 Refactoring 과도 같다고 생각. --["1002"]
프로그램이 길어지다보면 Test Code 또한 같이 길어지게 된다. 어느정도 Test Code 가 길어질 경우에는 새 기능에 대한 테스트코드를 작성하려고 할 때마다 중복이 일어난다. 이 경우에는 Test Code 를 ["Refactoring"] 해야 하는데, 이 경우 자칫하면 테스트 코드의 의도를 흐트려뜨릴 수 있다. 테스트 코드 자체가 하나의 다큐먼트가 되므로, 해당 테스트코드의 의도는 분명하게 남도록 ["Refactoring"] 을 해야 한다.
테스트를 작성하는 때와 Code 를 작성하는 때의 주기가 길어질수록 힘들다. 주기가 너무 길어졌다고 생각되면 다음을 명심하라.
전자의 경우는 일종의 '부분결과 - 부분결과' 를 이어나가면서 최종목표로 접근하는 방법이다. 이는 어떻게 보면 Functional Approach 와 유사하다. (Context Diagram 을 기준으로 계속 Divide & Conquer 해 나가면서 가장 작은 모듈들을 추출해내고, 그 모듈들을 하나하나씩 정복해나가는 방법)
후자의 경우는 해당 코드의 구조를 테스트해나가는 방법으로, 해당 코드의 진행이 의도한 상황에 맞게 진행되어가는지를 체크해나가는 방법이다. 이는 MockObjects 를 이용하여 접근할 수 있다. 즉, 해당 테스트하려는 모듈을 MockObject로 구현하고, 호출되기 원하는 함수들이 제대로 호출되었는지를 (MockObjects 의 mockobject.py 에 있는 ExpectationCounter 등의 이용) 확인하거나 해당 데이터의 추가 & 삭제관련 함수들이 제대로 호출되었는지를 확인하는 방법 (ExpectationList, Set, Map 등의 이용) 등으로서 접근해 나갈 수 있다.
Test - Code 주기가 길다고 생각되거나, 테스트 가능한 경우에 대한 아이디어가 떠오르지 않은 경우, 접근 방법을 다르게 가져보는 것도 하나의 방법이 될 수 있겠다.
파트너가 먼저 코드를 잡긴 했는데, 코드가 좀처럼 진행이 되지 않았다. 문제가 뭘까 고민하다가 다음과 같이 접근해봤다.
'지금 저쪽에는 에코서버가 있어. 지금 만들건 클라이언트고, 지금 만들 클래스로 write 를 하면 저기 띄어놓은 에코서버에 내가 입력한 메세지가 그대로 표시될거야' 즉, 완성되었을 때의 결과를 미리 그려보는 것이다.
아까보다 훨씬 수월하게 진행되었고, 그 결과를 눈으로 확인했고, 결과를 눈으로 확인한뒤 '완료' 했다. TFP 라면 이를 코드로 작성하여 자동화 할 것이다. 자동화된 테스트는 앞으로의 추후 모듈 수정시에도 앞에서 내가 원하는 기능들이 여전히 작동함을 보장해준다.
Random 은 우리가 예측할 수 없는 값이다. 이를 처음부터 테스트를 하려고 하는 것은 좋은 접근이 되지 못한다. 이 경우에는 Random Generator 를 ["MockObjects"] 로 구현하여 예측 가능한 Random 값이 나오도록 한 뒤, 테스트를 할 수 있겠다.
- 데블스캠프2003/다섯째날/후기 . . . . 18 matches
* 마지막날.. 오목 정말 잼있고 적절한 시간에 다해서 마지막 시간은 겜을 즐길 수 있었다. 캠프 기간동안 많은 체험을 할 수 있어서 정말 정말 좋았고 캠프기간동안 잘 가르쳐준 선배님들에게 감사하다는 말을 하고 싶다. 그리고 앞으로도 컴퓨터실력향상에 항상 부지런 하도록 노력하자~~ 동기친구들 모두들 수고 많았고...다들 파이링~~~ ^^: [조재화]
* 오목 짜고 뿌듯한 건 진짜 짱이었고;; 스타와 포트가 너무너무 재미있었다=ㅂ= 모君의 컴퓨터가 마우스를 흔들지 않으면 다운이 되서; 계속 흔들고 있었던 게 너무 웃겼다 ㅋ; 늘었다고 생각되는 건..프로그램 실력 조금이랑..스타와 포트 실력 왕창-_- (콜록) [이진훈]
* 드뎌 드뎌 끝났다,,,5일동안 정말 폐인이었다,..낮엔 게임하고 밤엔 프로그래밍하고,,,,,,,,,,,,,,,,,,,,--희경
* 하루밖에 참가하지 못했지만 도움이 되었고 앞으로 더욱 열심히 해야겠다는 생각이 들었다. 집에 가서 이전 과제들을 해봐야겠다 --[노수민]
* 3일밖에 못나온게 조금 아쉬웠다. 개인의 즐거움을 위해 후배를 저버린것 같은 느낌이 약간은 든다. 내년에도 이런 기회가(절대로 없겠지만) 있다면 다 열심히, 성심껏 해주고 싶다. --[snowflower]
* 열정이 넘치는 신입생들을 보고와서 즐거웠다 ^^; --[광식]
* 눈 아프다... @_@ 피곤한데 잠은 금방 깨고... 뭔 일인지...ㅡㅡ;; -- [재니]
* 모두모두 수고하셨습니다. - [상욱]
* 마지막 날 참여는 못했지만 올해 데블스 캠프, 절반은 성공한 것 같습니다. 이제 방학 남은 기간동안 공부할 것을 찾아 (이미 많은 것을 보아 고르기만 하면 될 듯...) 열심히 공부하셔서 나머지 절반도 성공하시기 바랍니다. --재동
- 데블스캠프2012/다섯째날/후기 . . . . 18 matches
* '''후기 쓸 때 반드시 참고하세요 : [ThreeFs]'''
* [권순의] - C++의 개념을 C에서 어떻게 적용하는지, 컴파일러가 어떻게 돌아가는지에 대해서 생각해 볼 수 있는 시간이었습니다. 재미지네요. 단계적으로 나아가는 방법이 재미있었습니다. 설명도 자세하게 해 주시고 유익한 시간이었습니다. 그러다 보니 왜 우리가 어떤 것을 사용했을 때 느리다던지 한 것에 대해서 보다 쉽게 이해할 수 있는 시간이 아니었나 합니다.
* [서영주] - 저학년을 위한 C++개념 설명일줄 알았는데 생각보다 고학년한테 반응이 좋았습니다. 저도 pl시간에 개념으로 대충 배웠던게 실제로는 이렇게 되어있구나 하는걸 알 수 있어서 좋았습니다. 언어를 쓰더라도 그런게 실제로 어떻게 구현되어있나를 생각해본 일은 별로 없었어서 내가 쓰는 언어에 대해서 다시 한 번 생각해볼 기회가 된 것 같습니다.
* [서민관] - 개인적으로 C로 C++처럼 만들어 볼 수는 없을까 하는 생각을 조금 한 일이 있어서 보다 와 닿았던 것 같은 느낌이 강했습니다. 그리고 구조체의 맨 앞에 포인터를 배치해서 캐스팅하는 방법은 꽤나 그럴싸하군요. 항상 C++에서 궁금했던 것이 왜 맨날 첫 4바이트가 vtable의 정보를 가지고 있는 것인가였는데 아무래도 이번 실습 때 그걸 몸으로 체험한 것 같습니다. 난이도도 그렇게 높지 않으면서 진행도 단계적으로 되어 있어서 따라가기도 편했습니다. 다만 1학년한테는... 음...
= 비트맵가지고 놀기 =
* [권순의] - OMS에서도 관련된 주제로 이야기 하고 이번 시간에도 관련 주제로 이런 저런 이야기를 들었네요. Winapi를 가지고 하는거라 뭐랄까.. 이거 뭔가 너무 날거인거라 ㅋㅋ 거기다 소스도 참 ㅋㅋㅋㅋ 희성이도 인터넷에 돌아다니는 것도 이것과 비슷하다고 하는데 ㅋㅋ 뭐.. 비트맵이 예전엔 사양이 안 좋은 상황에서 쓰이다 보니 그런거니까 라고 ㅎㅎ.. 재미있었습니다.
* [김희성] - Win32API를 할려다가 OMS에 없었던 12학번이 많아 OMS에서 했던 주제를 다시 했는데, 반응이 그다지 좋지 않은 것 같습니다. 비트맵 특성상 변수가 많이 쓰이는데 이해도를 위해 변수명을 축약이 아닌 풀네임으로 작성한 것이 오히려 가독성을 낮추어 이해를 어렵게 한 것 같습니다. 오랜만에 비트맵 했더니 예제 시연에서 삑나고... 여러가지로 문제가 많았던 것 같습니다.
* 내 생각엔 무엇이 x이고 무엇이 y인지 중간 계산 변수가 없이 바로 배열 첨자에서 한 번에 계산해서 이해가 어려웠던 것 같은데?ㅋㅋ - [변형진]
* [서영주] - 비트맵 파일의 RGB값을 수정해서 그림에 변경을 가하고 하는 부분은 신기했습니다. 그런데 저한테는 비트맵 자체보다도 실제로 많이 쓰이는 파일 포맷을 헤더와 데이터 부분 등 정해진 구조체의 크기에 따라서 값을 집어넣기만 하니까 알아서 읽어지고 파일을 다룰 수 있었다는 점이 조금 더 신기했습니다. 비트맵이 아니라 다른 파일이라도 마찬가지로 파일 포맷을 안다면 그 파일을 손댈 수 있다는 소리일테니까요.
* [김희성] - system32 내부의 호스트 경로가 흥미로웠습니다. 조작하면 재밌을거 같습니다. 개인적으로 선형대수학은 완충제라고 생각합니다. 뭐든지 구현을 할려면 선형대수학을 거쳐야하니...
* [서영주] - 정말로 CSE한 인생을 사셨구나 하는 생각이 들었습니다. 중고등학교 때 벌써 언어공부라니... 근데 인생 얘기하시면서도 맵 리듀스나 gba의 파일을 수정했던 얘기 등 중간중간에 들어있는 얘기들이 신기했습니다. 어떻게 그런걸 다 아시는지도 궁금하고. -_- 후기때도 했던 얘기지만 언젠가는 더이상 할 얘기가 없으실 때까지 얘기하시는걸 들어보고 싶습니다.
- 상협/감상 . . . . 18 matches
* 태어나서 지금까지 읽은 책을 다 적을 수는 없고, 최근에 읽었거나 예전에 읽어서 기억에 남는것을 적겠습니다.
* 난 정말 기억력이 나쁘다. 방금 예전에 썼던 감상문을 다시 읽어보니 정말 새로웠다. ㅡㅡ; 앞으로는 책을 읽고나서 꼭 감상문을 써야 겠다. 안그러면 금방 까먹엇 읽은 효과가 없는거 같다. 또한 예전에 썼던 감상문을 다시 읽어 보면 예전의 그 생생한 감동이나 느낌이 다시 느껴진다. 이러한 느낌이 너무 좋은거 같다.
* 아래의 추천 정도는 극히 주관적인 것으로서 사람들 마다 느끼는게 다를거라고 생각함. 나의 의견은 그러한 다양한 의견중 하나라고 생각했으면 좋겠다.
|| ["로마인이아기"] || 시오노나나미 || 고등학교때 || 1 || ★★★★ ||
|| ["상협/나는희망의증거가되고싶다"] || 서진규 || 2002/9/12 || 1 || ★★ ||
|| [PatternOrientedSoftwareArchitecture]|| || 1권(1) || - || 뭣도 모르고 보니깐 별로 감이 안온다 -_-; ||
|| [OperatingSystem] || H.M.Deitel || 1 || 굿 || 운영체제공부를 처음으로 시작한다면 이책이 적당하다고 생각한다 ||
|| [프로그래밍언어론] || 원유헌 || 1 || 아주 굿 || 정말 쉽게 잘 나온 책!!, 정말 좋은책을 고르는게 중요하다는걸 알게해준책! ||
= 읽고 싶은 책, 앞으로 읽을 책 =
* 난 원래 영화 잘 안보는 스타일 이지만, 마음도 심난하고 해서 컴퓨터로 이 영화를 보게 되었다. 처음 부분에서는 좀 황당한 재미가 있었고, 중간 부분으로 가면서 지루해져서 그만 볼까 하는 생각도 했지만, 좀 더 보다 보니깐 재밌어져서 결국 끝까지 봤다. 이 영화를 보고 느낀점은... 음.. 지금 내가 보고 있는 세계도 혹시 환상은 아닐까 하는. ㅡㅡ;; 메트릭스도 생각나고.. 그리고 영화속 주인공이 불쌍해 보였다. 뭐 비록 천재인거 같지만 그렇게 사는것은 별로 유쾌한 일은 아닐거다. 또한 천재적인 사람들은 사회에 잘 적응 못하는건 아닐까 하는 생각도 해본다. 한때 나도 머리가 천재적으로 좋았다면 좋겠다고 생각도 해보았지만, 그땐 이런 생각을 했었다. 머리가 너무 좋다면 노력해서 뭔가를 해내는 그런 쾌감을 얻을 기회가 적을 수도 있고, 주위로부터 한사람의 인격체로 인정되기 보다는 하나의 이용해 먹을 도구로 인식되지는 않을까 하는 생각도 해본다.(그사람 == 머리, 이런 이미지가 생기면 그 사람의 다른 모습은 전혀 관심밖의 일이 될테니..)
- 새싹교실/2012/해보자 . . . . 18 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 참고로 ZeroWiki는 MoniWiki Engine을 사용하며 Google Chrome이나 Mozila Firefox, Safari보다는 Internet Explorer에서 가장 잘 돌아가는 것 같습니다.
* sizeof(parameter): 매개변수가 가지고 있는 메모리상의 바이트 단위의 정수를 반환한다.
1. #define pi 3.141592를 이용하여 구의 겉넓이, 부피를 계산하고 출력하는 프로그램을 만드시오.(코드를 여기에 올려주세요)
2. swap(int num1, int num2)함수를 구현하시오. 함수 호출을 배우지 않았기 때문에, 그리고 포인터를 아직 배우지 않았기 때문에 기본적인 코드를 제공합니다.
강재곤 후기 : 변수에 대해 배웠다. 첫날이라 많은 내용을 배운게 아니라 부담은 없었다. 오버플로우가 일어나면 자료의손실이 일어나므로 조심해야 한다는 것을 알았다. 다음시간부턴 직접 실습을 해보고 싶다
* 예제1) 정수를 입력받고 숫자가 짝수인지 홀수인지 판별하는 프로그램
- continue 아래에 있는 명령어들을 처리하지 않고 반복문의 처음으로 다시 돌아간다.(물론 조건식을 다시 확인)
* 예제4) -1값을 입력할 때 까지 정수를 입력 받고 평균을 구하는 프로그램
* 예제5) -1값을 입력할 때 까지 정수를 입력 받고 짝수인 정수들만 평균 구하기
* 예제1) 숫자를 입력 받고 그 숫자만큼 #자 출력하기
* 예제4) 숫자를 하나 입력 받고 그것을 2진수로 출력하시오.
강재곤 : for 구문을 어떻게 사용해야하는지 알았고 직접 실습을 해봤다. 자신감이 생기는거같다
* getch(): 입력 버퍼 stdin에 값을 넣는다. 얘는 이 처리만 하고 명령이 끝난다!
* putch(): 입력 버퍼에 있는 값을 화면에 출력한다. 얘도 마찬가지로 이 처리만 하고 끝난다.
* 함수의 선언: 컴파일러에게 '이런 이런 함수를 쓸것이다'라고 알리는 것.
* 함수의 정의: 컴파일러에게 '이런 이런 함수는 이런 이런 일을 한다'라고 알리는 것.
- 위키설명회2005 . . . . 18 matches
제로페이지의 활동에 큰 축이 되지만 첫 진입에 어려움을 겪는 위키를 설명하고 사용해보며 자연스러운 진입을 유도하는 자리.
자기페이지만들기 > 다른사람페이지 수정하기 > 자기페이지고치기
[노스모크] 에서 검색을 통해 흥미로운 페이지를 찾아내고 간단하게 발표를 한다.
[노스모크] 를 이용하는 이유는 ZP위키는 프로젝트 중심이기 때문에 흥미로운 페이지가 적고, [좋은위키페이지] 에대한 분별력이 떨어질 것이라는우려.
위키는 이런 장점이 있고 ZP도 XX년도부터 위키를 도입하였다.
새내기 여러분은 대학생활 한달을 어떻게 보내고 계신지요??
관리자가 아니라도 누구나 읽고, 쓰기가 가능한 웹사이트.
위키는 누구나 관련한 내용을 계속 수정해 나가고 필요한 내용은 덧붙여 놓기 때문에 본문 글이 점점 다듬어져 나갑니다.텍스트가 진화한다고 말하기도 합니다.
위키도 누구나 고칠 수 있고, 링크의 연결이 간단하고, 동일공간에서 텍스트가 진화할수 있다는 간단한 룰에서 출발합니다.
너무 늦고 있는것 같네요;; 내일 완성을 목표로!!
[자봉단] 첫 회의, 선전부회의 라는 큰 악재와 맞물려 많은 참여자가 그닥 많지는 않았어요. 하지만 좋은 분위기에서 진행된것 같네요. 특히 몇몇은 위키에 큰 관심을 보였고. 재미 있다라는 반응을 보이기도 했구요. - [이승한]
* 그리고 질문인데요, 왜 == == 이렇게 했는데도 title이 안 만들어지는거죠? -[윤성만]
* 음 그리고.. 위키위키의 메인 로고이미지 http://zeropage.org/wikis/nosmok/moinmoin.gif 는 그대로 계속 쓰는건가요..? ^.^a - [임인택]
* 백문이 불어일견. 필요할때는 브라우저를 켜서 직접 확인 시켜 주는것도 좋은 방법이라고 생각합니다. - [이승한]
- 지금그때2005/리허설 . . . . 18 matches
준비한 게임이나 행사들을 미리 진행해보고 단점과 장점을 미리 파악하는 자리
지금부터 역사와 전통을 자랑하는 지금알고 있는걸 그때도 알았더라면 흔히 줄여서 지금그때라고 부르는 행사를 시작하겠습니다.
지금그때 행사는 03년도 부터 시작 되었고 열광적인 반응으로 현재까지 이어지고 있습니다.
지금 자료집을 나누어 드리고 있고 그곳에 지금그때 행사에 대한 대략적인 의의가 담겨져 있습니다.
OST에 대한 자세한 소개는 그때가서 하고요.
작년 지금그때2004 에서는 패널과 자유롭게 질문하고 대답할수 있는 자리가 마련되었었는데요.
이번에는 조금 바꾸어 누구나 질문을 등록 할수 있고, 모든 사람들은 자유롭게 대답할수 있는 질문릴레이 시간을 준비하였습니다. 꺼려하시지 마시고 언제든 앞에 나오셔서 질문을 등록하시고 누구나 적극적으로 대답해 주시기 바랍니다.
앞에는 저희가 생각한 이번시간에는 최소한 이런 이야기는 꼭 나왔으면 한다는 이야기들을 적어 놓았습니다. 그 이외에 또 질문하고 싶으신 내용이 있으시다면 언제든 나오셔서 질문을 등록하실수 있습니다. 대답에 집중하는 사이에 어느순간 질문을 까먹어 버리는 경우도 많으니까요.
또 질문은 누군가를 향해 하실수도 있고, 전체를 향해 질문 하실수도 있습니다.
(리허설 : 이번 리허설에서는 두개의 방식을 준비하였는데요. 조금씩 진행해 보고 반응을 고려하여 지금그때 행사에 할 행사를 결정할것 입니다.)
또 여기 모인 사람이 너무 많기 때문에 자신에게 질문이 안 돌아올까 걱정하실지도 모르겠는데요. 그 부분을 보완하고자 누구든 질문을 하고 싶으신 분은 질문권을 받아오실 수 있습니다.
- 페이지이름 . . . . 18 matches
1. 위키위키에서 ["페이지이름"]은 너무나도 중요한 역할을 합니다. 제로위키에서 사용되어야할 페이지이름 규칙도 생각을 해보는게 좋을것 같습니다. NoSmok:페이지이름 페이지에 참고하기 좋은 내용들이 있습니다.
*. 자신의 페이지 이름이 잘못되었다고 하더라도, 당황하지 말고, ["페이지이름고치기"] 를 참고해서 고치자.
* 예를들어서, ["ProjectPrometheus"] 에서 활동하다가 만들어지는 '''Journey''' 페이지의 이름은 ["ProjectPrometheus/Journey"]로 지어지고 이 페이지는 ["ProjectPrometheus"]를 부모로 하는 하위 페이지이이다.
* 당연히, 부모인 ["ProjectPrometheus"] 에 Jouney 에 대한 링크를 찾아보면 있을 것이다. 그리고 ["ProjectPrometheus/Journey"] 의 가장 하단에, 밑줄({{{~cpp ----}}})로 자신의 부모를 링크를 걸어두어 보는 이가 항해하기 편하게 배려한다.
* 이에 반하여 ["ProjectPrometheus/Estimation"]은 부모에 대한 페이지 링크가 가장 상단에 있다. 즉, 부모의 링크는 최상단, 최하단에 올수 있다. 이를 ["역링크"]라고 부른다.
* 최상위 링크인 ["분류분류"]의 예를 든다면 이 페이지 ["페이지이름"]은 부모는 없고, ["위키분류"] 로 분류되어 있다.
* 일반화 주제를 두고 특성화된 개인의 내용을 가지고 있던 페이지
* 일반화 주제로 이름과 내용을 바꾸고, 하위 페이지로 만든다.
사실 ["ZeroWiki/제안"] 이나 ["제안"]과 같은 페이지는 그 ["페이지이름"]이 다소 추상적이라고 생각됩니다. ["페이지이름"]에 좀 더 구체성을 주기위해 ZeroWiki에 제안될 사항들은 각각의 주제가 제목이 되어 페이지가 열리는것이 좋을것 같다는 생각을 하고있습니다. 이는 ["페이지이름"] 페이지에서 보다 일반화되어 정리될 내용이라 생각됩니다. --["이덕준"]
추상적이라 생각되면 일종의 사랑방으로 이용하면 된다고 봅니다. 범용적인 만큼 스레드 성격의 글들을 더 잘 포용할 수 있지 않을까 생각합니다. 저는 '토론'(을 원한다면) 이나 '제안'(성격이라면) 임이 명시적으로 드러나는것이 좋지 않을까 생각한것 뿐, 특별한 다른 뜻은 없습니다. --["1002"]
사랑방과 같은 시스템에서의 문서구조조정은 그 노력이 많이 듭니다. 일관된 주제로 얘기하기가 힘들어지기 때문입니다. 따라서 되도록이면 피해야할 구조가 아닐까 생각합니다. 페이지 이름에 제안임이 명시적으로 드러나지 않아도 위키를 사용하는 사람들의 관심을 끌만큼 흥미로운 내용을 담고 있다면 괜찮다고 생각합니다. 조만간 이 부분은 ["페이지이름"] 페이지로 옮겨서 얘기해봐도 좋을듯 합니다. --["이덕준"]
- 프로그래밍십계명 . . . . 18 matches
1. 정보를 모음에 소홀히 하지 말고 설명서를 읽음에 게을리 하지 말지어다.
*오늘 필요 없는 정보는 내일 필요하리라. 가장 가치 있고도 저렴한 지식은 책 속에 있느니라. 서점과 동료의 책꽂이에 무엇이 꽂혀 있는지 때때로 살피어라. 무심코 흘렸던 종이 한 장이 너의 근심을 풀어 주었으리라. 설명서는 충분히, 꼼꼼히 읽을지어다. 모든 의문은 설명서를 안 보는 데서 생기니라. 그렇더라도 모두 다 읽을 필요는 없느니라.
2. 너의 PC가 안전하다고 믿지 말지어다.
*5분 후에 정전이 되고 내일 너의 하드가 맛이 가리라. 그러하니 너의 소중한 소스 코드는 정기적으로 여러 군데에 단계별로 백업해 두어라.
*너의 컴퓨터는 1보다는 0을 좋아 하니라. 배열의 첨자가 그 범위를 넘지 않을지 손 댈 때마다 따져 보아라. 수식에 1을 더하거나 뺄 때에는 늘 긴장하라. 너의 프로그램은 단지 한 번 덜해서 틀리고 한 번 더해서 다운되느니라.
5. 항상 모든 경우의 수를 고려하고 섣불리 생략하지 말지어다.
*절대로 일어나지 않을 일은 반드시 일어나고, 가장 드물게 일어날 일이 가장 너를괴롭히리라. 그러하니 언제나 논리에 구멍이 없는지 꼼꼼히 따져 보고, if를 쓸 때에는 else부터 생각하라.
*컴파일러의 경고는 모두 켜 두어라. 경고는 곧 오류이니라. 오류를 알리는 함수의 결과를 확인하지 않는 우를 범하지 말지어다. 모든 파일 입출력과 모든 메모리 할당은 조만간 실패할 것이라.
*어떠한 것을 수정했을 때에 연관된 것이 따라서 변하지 않는다면 그것이 곧 벌레이니라. 컴파일러로 하여금 매개 변수 리스트를 완전하게 검사하도록 하고, 언젠가 손대야 하거나 따라서 변해야 하는 수치는 전부 매크로로 치환하며, 형 정의를 적극 활용하여라.
9. 사용자가 알아서 잘 써 주리라고 희망하지 말지어다.
10.매사에 겸손하고 항상 남을 생각할지어다.
*가장 완벽한 프로그램일수록 가장 완벽하게 숨은 벌레가 있느니라. 네가 이 세상 최고의 프로그래머라고 떠들며 자만할 때, 옆집 곳간에서는 훨씬 더 뛰어난 것을 묵묵히 만들고 있느니라. 아무렴 프로그래밍은 혼자 잘나서 할 게 아니니, 너로 인해 다른 사람들도 더불어 잘 되면 그얼마나 좋은 것이냐.
이 모든 것을 깨닫고 지키려 애쓰는 자는, 있어도 없어도 되어도 아니 되어도 늘 평온하리라.
- AcceleratedC++/Chapter8 . . . . 17 matches
참고페이지) [ParametricPolymorphism]
반복자를 생각해보자. 만약 특정 자료구조가 반복자를 리턴하는 멤버함수를 갖는 다면 반복자를 인자로 받는 function들에 대해서 그 자료구조는 유효하다고 판단할 수 있다.
서로 다른 타입의 객체이라도 하더라도 각각의 객체를 가지고 행하는 행동양식은 공통의 행동양식을 갖는다.
실제 컴파일시 컴파일러는 프로그래머가 지정한 타입으로 이 함수를 인스턴스화 시켜서 생성하고 바인딩한다.
|| find(c, val) || 범위 지정이 불가능하고, 유용성이 첫번째의 경우보다 적다. ||
=== 8.2.1 알고리즘과 반복자 ===
STL은 이런 분류를 위해서 5개의 '''반복자 카테고리(iterator category)'''를 정의하여 반복자를 분류한다. 카테고리의 분류는 반복자의 요소를 접근하는 방법에따른 분류이며, 이는 알고리즘의 사용 유효성 여부를 결정하는데 도움이 된다.
상기 2개의 구현 모두 begin, end iterator를 순차적으로 접근하고 있음을 알 수 있다. 상기의 함수를 통해서 순차 읽기-전용의 반복자는 '''++(전,후위), ==, !=, *'''를 지원해야한다는 것을 알 수 있다. 덧 붙여서 '''->, .'''와 같은 멤버 참조 연산자도 필요로하다. (7.2절에 사용했떤 연산자이다.)
상기와 같은 반복자를 '''''입력 반복자(input iterator)'''''라고 함.
상기 요구사항을 만족시키는 경우의 반복자를 '''''출력 반복자(Output iterator)'''''라고 함.
'''*, ++(전,후위), ==, =, ., ->'''와 같은 연산이 가능하다면 '''''순방향 반복자(forward iterator)'''''라고 함.
순방향 연산자의 모든 연산을 지원하고 '''--'''연산을 지원한다면 이 반복자는 '''양방향 반복자(bidirection iterator)''' 라고 부른다. 표준 라이브러리 컨테이너 클래스들은 모두 양방향 반복자를 지원함.
참고자료) WikiPedia:Binary_search 바이너리 서치
임의 접근 반복자르 이용하는 알고리즘은 sort. vector, string 만이 임의 접근 반복자를 지원한다. list는 빠른 데이터의 삽입, 삭제에 최적화 되었기 때문에 순차적인 접근만 가능함.
- DataCommunicationSummaryProject/Chapter11 . . . . 17 matches
* 무선 통신 중에서도 모바일이 아닌 고정된 무선통신 기술에 대해 알아보자.(방송국처럼...etc.)
* 광대역(대역폭이 넓은) 무선 시스템이 몇년 내에 유용할 것으로 보이는데 전화든 TV 든 유선통신보다 싸고 쉽게 쓸 수 있을 것이다.
* 통신 서비스를 하는데 있어 가장 효율적이고 빠른 방법이다.
* 보내고 받는 모양새가 대칭형이다. 레이저나 극초단파 같은 걸로 사용한다.
* 단말기만 있으면 거의 영구적으로 base station 과 연결되어 사용가능하고 기타 등등 열라 좋은 점이 많긴하지만 대역폭을 공유한다는 것이 단점이다.
* 표 11.1 참고하시길.315쪽에 있음.
* 라이센스가 없어도 되기 때문에 누구나 설치할 수 있다. 하지만 누구나 그런 생각을 가지고 사용하기 때문에 통신방해가 많이 일어난다.
* 고정된 무선 기술은 오퍼레이터들에거 고객에게 닿을수 있는 간단하고 값싼 방법이 될수 있다.
* 허가되지 않은 시스템은 국제적인 ISM 밴드를 사용할 수 있고, 종종 IEEE 802.11 무선랜 표준에 기초하기도 한다.
* MMDS와 LMDS는 고정된 셀룰러 시스템을 형성하는데에 익숙해질 수 있는 다중점 시스템이다. MMDS는 길지만, 작은 대역폭을 가지고 있고, LMDS는 짧지만, 높은 대역폭을 가지고 있다.
* 레이저 빔은 허가가 필요없고, 다른 어떤 타입의 고정 무선시스템보다 나은 수용능력을 제공한다. 하지만 거리가 졸라 짧다.
- HelpOnInstallation . . . . 17 matches
* 윈도우즈에서 모니위키를 설치하는 방법은 ApacheMoniwikiInstaller을 참고 하십시오.
디렉토리 이름을 원하는 것으로 바꿀 수도 있다. 예를 들어 {{{/wiki}}}라고 바꿀 수 있으며
여기서 가장 중요한 것은 {{{$url_prefix}}}를 고치는 것이다. 이 값은 초기에 자동으로 설정되며,
이 값을 제대로 지정하면 MoniSetup에서 다음과 같은 로고 그림을 볼 수 있다.
씨앗을 심는 경우는 불필요한 페이지가 들어갈 수 있는데, 어느정도 익숙해졌다고 생각되면 지워도 되며, 아예 처음부터 설치하지 않아도 된다.[[BR]]
{{{secure.sh}}}를 실행해서 다른 사람들이 자신의 Wiki 설정을 볼 수 없게,고칠 수 없게 한다.
모니위키 설치가 끝났지만 사용자의 입맛에 맞게 설정하고자 한다면 다음을 참고하세요.
1. MoniSetup을 실행시킬 때, {{{$admin_passwd}}}를 설정하면 자신만 DeletePage할 수 있다. 이 값을 설정하면, 차후에 MoniSetup을 할 때 이 값을 알아야 고칠 수 있으며, config.php에 이 값이 들어가므로 수동으로 고칠 수 있다. See also AdminPassword
업그레이드를 편리하게 하려면, 플러그인을 새로 추가할 경우는 원 파일을 고치는 것보다는 새롭게 플러그인을 만들어 준다. 이렇게 하면 tar파일을 덮어쓰는 것만으로 간단히 업그레이드 할 수 있다.
root사용자라면 tar를 이용해서 간단히 백업할 수 있겠고, 호스팅을 하는 일반 사용자의 경우라면 backup restore를 액션을 이용할 수 있다.
* restore : {{{?action=restore}}}한다. 백업된 tar 파일 목록이 나오고 tar 파일을 선택하면 관리 비번을 물어본다.
* 모니위키 1.1.3.1부터는 MicroApache와 함께 배포되고 있다. MicroApache는 아파치를 작게 줄인 윈도우즈용 배포판이며, 모니위키를 보다 손쉽게 맛볼 수 있게 해준다.
== 그밖의 참고 사이트 ==
* 위의 링크 설명으로 가보니 모니위키 1.1.2의 문제점은 이미 해결되었고, vim관련 옵션은 VimProcessor를 살펴보세요.
* 고미다님의 ColdGray / WarmGray테마는 조만간 손을 봐서 올려놓겠습니다
- HowToStudyXp . . . . 17 matches
* ["Refactoring"] (by Martin Fowler) : 리팩토링에 대한 최고의 책
* XP Explored : 가장 쉽고 구체적인 XP 안내서
이 중에서 XPI나 XPX를 먼저 권합니다. XPE는 좀 추상적인 서술이 많아서 봐도 느낌이 별로 없을 수 있습니다. (작년 마소 11월호에 제가 쓴 리뷰 참고)
여유가 되면 다음의 자료를 더 참고합니다.
* Peopleware (Tom De''''''Marco) : 개발에 있어 인간 중심적 시각의 고전
* Surviving Object-Oriented Projects (Alistair Cockburn) : 얇고 포괄적인 OO 프로젝트 가이드라인
* The Psychology of Computer Programming (Gerald M. Weinberg) : 프로그래밍에 심리학을 적용한 고전. Egoless Programming이 여기서 나왔다.
특히 다음의 것들은 늘 가까이 하고 있어야 합니다.
위 세 곳을 살필 때, 특히 다음 인물들의 글은 꼭 읽어보고 항상 레이다를 열어둘 것:
KentBeck 스스로가 XP Explained를 만약 다시 쓴다면 뜯어 고치고 싶은 부분이 상당히 된다고 말하는 것을 보아도 알 수 있듯이, 초기 XP 이후 바뀐 점, 보완된 점이 상당수 있습니다. 따라서, 책만으로 XP를 공부하기는 힘듭니다. 지금은 책 속의 XP가 사람들의 머리 속 XP에 한참 뒤쳐져 있습니다.
어찌되었건, XP에는 무술이나 춤, 혹은 악기 연주 등과 유사한 면이 많습니다. 따라서, 글을 보고 그것을 익히기는 쉽지 않습니다. 그나마 메일링 리스트 같은 "대화"를 보면 훨씬 더 많은 것을 얻을 수 있기는 하지만, 태권도 정권 찌르기를 말로 설명해 내는 것이 불가능에 가깝듯이 XP를 언어를 통해 익히기는 정말 어렵습니다. 우리의 언어는 너무도 성글은 미디어입니다. (XP는 매 초, 매 순간 벌어지는 "일상적" 장면 장면의 연속들이 매우 중요합니다.)
이게 힘들면 같이 스터디를 하는 방법이 있습니다(스터디 그룹에 관한 패턴 KH도 참고하시길. http://www.industriallogic.com/papers/khdraft.pdf). 이 때 같이 책을 공부하거나 하는 것은 시간 낭비가 많습니다. 차라리 공부는 미리 다 해오고 만나서 토론을 하거나 아니면 직접 실험을 해보는 것이 훨씬 좋습니다 -- 두사람 당 한대의 컴퓨터와 커대란 화이트 보드를 옆에 두고 말이죠. 제 경우 스터디 팀과 함께 저녁 시간마다 가상 XP 프로젝트를 많이 진행했고, 짤막짤막하게 프로그래밍 세션도 많이 가졌습니다.
- OpenCamp/첫번째 . . . . 17 matches
= 두번째 OpenCamp 예고 =
* 발표하는 입장이어서 좀 많이 떨렸었습니다. 발표하는 주제가 별로 재미있거나 신기한건 아니어서 사람들 지루해할 것 같았는데 들으신 분들은 어땠는지 잘 모르겠네요. 나중에라도 자바스크립트를 공부할 때 기억이 나서 도움이 됐으면 좋겠습니다. 그 외에 듣는 입장에서는 web의 기본 protocol이나 ajax, node.js에 대한 설명이나 웹 헤더의 분석 그리고 jquery, php의 실습 등 이론 부분과 실습 부분 다 재미있었습니다. 하지만 다음번 자바 발표는 좀 무섭네요... - [서영주]
* 데블스 때도 그랬지만 남들 앞에서 발표를 한다는 건 상당히 떨리는 일이네요. 개인적으로는 이번 발표를 준비하면서 방학 동안 배웠던 부분에 대해서 다시 돌아보는 기회가 되었습니다. 그리고 그 외에도 방학 동안에 다루지 않았던 native app을 만드는 것이나 분석용 툴을 사용하는 법, Node.js, php 등 다양한 주제를 볼 수 있어서 좋았습니다. 물론 이번 Open Camp에서 다룬 부분은 실제 바로 사용하기에는 약간 부족함이 있을 수도 있겠지만 이런 분야나 기술이 있다는 것에 대한 길잡이 역할이 되어서 그쪽으로 공부를 하는 기회가 될 수 있으면 좋겠습니다. - [서민관]
* 1시간 늦게 왔는데 데블스 캠프를 한번도 겪어보지 못 한 저는 참 좋은 경험을 한 것 같습니다. node.js 영상 볼때 우리도 빨리 저런거(아두이노 같은거) 만지고 놀았으면 좋겠다는 생각을 했어요. 웹언어에 좀 더 능숙했다면 더 많이 감탄했을텐데 그러지 못해서 아쉬웠습니다. jQueryUI 십습해볼땐 정말 재밌었어요 간결함에 감탄. - [고한종]
* 1학년 때 데블스캠프에 잠깐 참가했을 때 수업시간에 배우는게 다가 아니라는 것을 느꼈었습니다. 이번 오픈캠프에서도 생각하지 않고 있었던 웹 분야에 대해 많은걸 알게 되어 좋았습니다. 처음 keynote에서 개발자에 미치는 영향력에 대해 설명하셨을 때부터 집중이 확 된 것 같습니다. 겨울방학 때 웹쪽을 공부해야겠다는 생각이 들었고, 자바스크립트로 구현하는 OOP부터 조금 어려웠지만 나중에 많은 도움이 될거라고 생각합니다. 책까지 받게 되어 너무 좋았지만 (+밥까지 얻어 먹게 되어) 뭔가 죄송하다는 생각도 들었습니다!_! 피곤하실텐데도 열심히 발표하거나 행사진행을 위해 애쓰시는 모습을 보며 가끔 공부가 힘들다고 투정하는 저를 반성하기도 했습니다. 덧: 생중계 코딩이 가장 인상적이었습니다~! - [구자경]
* 데블스도 그렇고 이번 OPEN CAMP도 그렇고 항상 ZP를 통해서 많은 것을 얻어가는 것 같습니다. Keynote는 캠프에 대한 집중도를 높여주었고, AJAX, Protocols, OOP , Reverse Engineering of Web 주제를 통해서는 웹 개발을 위해서는 어떤 지식들이 필요한 지를 알게되었고, NODE.js 주제에서는 현재 웹 개발자들의 가장 큰 관심사가 무엇있지를 접해볼 수 있었습니다. 마지막 실습시간에는 간단한 웹페이지를 제작하면서 JQuery와 PHP를 접할 수 있었습니다. 제 기반 지식이 부족하여 모든 주제에 대해서 이해하지 못한 것은 아쉽지만 이번을 계기로 삼아서 더욱 열심히 공부하려고 합니다. 다음 Java Conference도 기대가 되고, 이런 굉장한 행사를 준비해신 모든 분들 감사합니다. :) - [권영기]
* node.js 빠를 보았다고 자랑했다. - [서지혜]
* 준비는 나름 잘 했다고 생각 했었는데 정작 발표 때 멘붕해서 많이 설명을 못 했네요. 다음에 발표할 기회가 생긴다면 그 때는 재미있게 설명하겠습니다. - [김민재]
- WebGL . . . . 17 matches
OpenGL에서 정말 실무에서 쓰는 부분만 따로 떼어낸 OpenGL ES(Embeded System)의 Javascript 구현체이며 [HTML5] [Canvas]를 통해 나타난다. 따라서 초보자가 쉽게 배우는데에 초점이 맞추어져 있지 않고 오직 전문가가 구현을 하는데에 초점이 맞추어져 있다.
[Javascript]임에도 불구하고 마치 C프로그래밍 스타일의 함수들이 존재한다. [WinAPI]가 C스타일의 [OOP]이듯 WebGL 또한 C스타일의 OOP이다. 모든 함수는 WebGLcontext라는 객체에 있는데 보면 그냥 접두어를 붙이는 느낌이다.
위의 코드를 보면 [쉐이더] 프로그램에 fragmentShader와 vertexShader를 Link 시키는 구문인데 주체인 shaderProgram은 첫번쨰 인자이고 gl은 그냥 접두어 처럼 보인다. 저 구문만 그런것이 아니라 다른 모든 함수들이 저 gl 객체에 붙어있다. 하지만 정작 gl이 주체가 아닌 것들이 많다. 따라서 래핑한 객체를 만들어 쓰는 것이 속편한데 어설프게 했다가는 무척 꼬이게 된다.
이 관습은 [OpenGL]이 기본적으로 C라이브러리이라 그런듯 하다. 실제 래핑을 진행해본결과 마치 MFC를 보는듯한 느낌을 강하게 받고 있다.
* WebGL은 기존 OpenGL과 다르게 직접 그리기가 지원되지 않는다. 기존의 glBegin()와 glEnd()사이에서 값을 계속적으로 전달하수 없고 오직 glDrawElement()를 통한 배열을 한꺼번에 전달하는 것'만' 지원한다. 초보자들의 첫난관이다.
* 사각형그리기 및 다각형 그리기가 지원되지 않는다. 실제로 다각형 그리기는 연습시에만 자주 쓰고 실제 코드에서는 삼각형으로 이루어진 모델을 가져다 쓰기 때문인 것으로 보인다. 그리고 다각형은 삼각형의 집합으로 표현할수 있다.
* 유틸라이브러리로 제공되는 큐브, 구, 실린더, 티포트가 모두 지원되지 않는다. 역시 예제에만 쓰이고 쓰지 않기 때문에 과감히 제거한것으로 보인다.
* 쉐이더를 짜지않으면 쓸수가 없다. 심지어 텍스쳐를 입히는 것도 쉐이더에서 처리한다. 그냥 단색으로 처리하는 코드도 쉐이더 코드를 짜지 않으면 그냥 햐얀 것만 보게된다. 그리고 그것도 회전시킬수도 없다.
WebGL은 일정한 흐름구조를 만들어 두고 그 각부분을 만들수 있도록 해 두었다. 아마 최적화가 쉬운 탓에 그러했으리고 생각된다.
Attribute는 각 포인트 별로 전달되는 정보이고 uniform 은 전체에서 공통적인 정보이다. 일반적으로 Attribute는 각 정점의 위치 정보와 각 지점의 법선 벡터 정보를을 전달한다. uniform은 일반적으로 카메라의 위치나 환경광의 위치처럼 전체적인 것을 전달한다. Attribute나 uniform은 일종의 변수인데 핸들을 얻어와서 그것을 통해 값을 전달할수 있다. 즉 Atrribute나 Uniform은 Javascript측에서 쉐이더로 정보를 보내는 것이다. varying은 쉐이더 간의 정보 전달에 사용된다. vertex shader에서 fragment shader로 값이 전달되며 반대는 불가능하다(파이프라인 구조상 당연한 것이다). 이때 vertex shader는 각 정점(꼭지점) fragment shader는 각 픽셀에 한번 호출되게 되는데 각 정점 사이의 값들은 [보간법]을 거쳐 전달되게 된다(그라디언트 같은 느낌이다 중간값을 알아서 만들어 준다).
쉐이더는 쉐이더 언어로 따로 짜주고 컴파일 해야하며 심지어 링크까지 시켜주어야 한다. GPU의 강력한 [행렬]연산 능력을 가져다 쓰기 위해서인것으로 보이는데 이것을 사용하지 않고서는 예제파일도 돌려볼수가 없다. 다행이 언어는 C언어와 매우 유사하고 행렬연산이 모두 있기 때문에 딱히 어렵거나 하진 않다. 다만 어느부분에서 어디와 연결되는지 이해하는데 시간이 걸린다.
각 정점(vertex, 꼭지점)마다 호출되며 주로 꼭지점의 위치를 연산하고 실제 View에 투영하는 연산을 주로 하게 된다. 한마디로 모델의 위치 변환과 카메라 시점에 따른 변환 원근법을 적용하는 변환등을 수행한다.
현재 객체 래핑중 중대한 문제에 봉착. 대부분의 모듈과 세이더 코드는 [콜백]으로 호출되는데 이것을 적절히 래핑할 방법이 없다. webGL과는 하등 연관이 없는 부분이라서 각자 알아서 구현하도록 해도 되지만 대부분의 경우 같은 코드를 다스 짜고 있는 나를 보게 된다. 이것을 어떻게 해야 잘한 래핑이라 할수 있을까?
- ZeroPage성년식/준비 . . . . 17 matches
||28일||참가에 대한 회신 마감(이걸 기준으로 장소를 잡고, 추가모집)||
|| 기획단 후기 || 끝나고씀 || O ||
||06|| 고준영, 양병모, 이원희, 이차형, 성우용 || 김준석 || O ||
||11||고한종,정진경,송치완,추성준,장용운,이민규|| 김태진 || O ||
* 가격 부담은 적은데 재고가 산더미...
* 스티커 수량 찾다가 텀블러가 좋아보여서 텀블러 만들고싶은데 단가 6000원이니까 참아야지........
* 더도말고 덜도말고 딱 산더미네요... 한 세장씩 나눠드려야하나요'ㅅ'-[김태진]
* 1000이면 이곳저곳 붙이고 다니겠네;; - [김준석]
* .ai 파일을 넘겨줘야 인쇄가 가능하다는데 로고가 ai가 아니라 곤란.
* 알아봤더니 그날 대학원 면접이 있어서 장소가 없다고 함. 제 2공학관은 수업이 있고 봅스트홀은 면접. 금요일에 다시 가보기로 했음.
* DeleteMe 저따위가 축사를 할만한 학번도 자격도 없다고 생각되서, 삭제했습니다. 그리고 여기 언급된 분들 말고도 몇 분께 더 전화 돌렸는데, 당일 스캐줄로 뒷풀이 참석하신다는 분도 있고 참석 확정 하시고 등록안하는 분들도 있네요. 즐거운 행사 기대합니다. -[류상민]
- 니젤프림/BuilderPattern . . . . 17 matches
쉽게 말해서, 아주 복잡한 오브젝트를 생성해야하는데, 그 일을 오브젝트를 원하는 클래스가 하는게 아니라, Builder 에게 시키는 것이다. 그런데 자꾸 나오는 생성/표현 의 의미는, 바로 director 의 존재를 설명해 준다고 할 수 있다. director 는 Building step(construction process) 을 정의하고 concrete builder 는 product 의 구체적인 표현(representation) 을 정의하기에.. 그리고, builder 가 추상적인 인터페이스를 제공하므로 director 는 그것을 이용하는 것이다.
패스트(정크)푸드 레스토랑 맥도날드에서 어린이용 해피밀을 만들어내는 걸로 예를 들 수 있다. 일반적으로 해피밀은 메인, 사이드, 음료, 장난감 (햄버거, 프라이, 콜라, 매달 바뀌는 장난감)으로 이루어져 있다. 여기서 중요한건, 이런 템플릿이 정해져 있다는 것이다. 요즘 같이 까다로운 아이들에게 어릴때부터 맥도날드의 입맛을 확실히 들여놓으려면 당연히 다양한 바리에이션이 필요하다. 고객은 햄버거나 치즈버거나, 아니면 맥너겟이나 이런걸 선택할 수 있지만, 기본적으로 해피밀이 구성되는 방식에는 변함 없다. 여기서 빌더 패턴을 적용한다면, 카운터에서 주문을 받는 직원을 Director 라고 할 수 있다. 물론 고객은 Customer 이다. 고객이 원하는 바리에이션을 선택해서 해피밀 셋트를 구성하게 되면 (Customer가 Concrete Builder 를 선택한다) Director 는 정해진 템플릿에 따라 주방 직원(Concrete Builder) 에게 의뢰하여 해피밀 세트(Product) 를 만들어 낸다. 여기서 Director 가 Concrete Builder 에게 요구하는 방식은 종류에 따라 비슷 하므로 그것을 추상화시킨 인터페이스를 Builder 라고 할 수 있겠다.
Product 를 생성하는 템플릿. Abstract Interface 라고도 할 수 있다.
Director 클래스는 Product 를 생성하는 방법과 순서 등을 주관한다. Builder 인스턴스를 가지고 있기 때문에 Concrete Builder 를 건네 받아서 Builder 에 연결해 준다.
보시다 시피 Builder Pattern 과 Abstract Factory Pattern 은 많이 비슷하다. 차이점이라면 약간 미묘하다고도 할 수 있는데, Abstract Factory Pattern 은 무엇이 만들어지는가 에 초점을 맞추고 있고, Builder Pattern 은 어떻게 만들어 지는가에 초점을 맞추고 있다고 풀이할 수 있다. 물론 두 종류의 Creational Pattern 은 Product 을 제공하는데 첫번째 책임이 존재한다. 가장 큰 차이점이라면, Builder Pattern 은 복잡한 오브젝트를 한단계 한단계 만들어서 최종 단계에 리턴해주고, Abstract Factory Pattern 은 여러 종류의 generic 한 product 를 여러종류의 concrete factory 가 생성하기 때문에 각각의 오브젝트가 만들어질 때마다 product 를 받을 수 있게 된다.
Abstract Factory Pattern : 어떤 종류의 명확한 오브젝트를 생성할 것인지를 실행 시간까지 연기한다. (실행시간에 결정한다) 예를 들자면, 레스토랑에서 오늘의 추천메뉴를 선택하는 것이다. 서버(interface to factory)는 "오늘의 추천요리" 라는 abstract generic message 를 주방(concrete factory)에 전달하고 음식을 받게 될 때 concrete product 를 얻게 되는 것이다.
- 송지원 . . . . 17 matches
* '''닉네임''' : Enoch, 에노크, 에녹 이라고도 불리어요..
* '''생년월일''' : 1988년 02월 20일생 ~~몇 년간 2년 20일이라고 써있었는데 몰랐다~~
* 농구 소모임 위디브 매니져 (에이스를 맡고 있단 소문이 있음)
* ~~서울서원초등학교 - 원촌중학교 - 반포고등학교 졸업~~
* ~~1999년부터 2004년까지 태권도를 했고, 지금은 3단이다. -아직 3품에서 갱신하지는 않았지만..~~
* ~~중학교 내내 선도부였고, 선도부장도 하고, 성적에 관계없이 특별모범상을 받았다.~~
* 재수하라는 아버지의 권유를 뿌리치고 중앙대 컴공에 예비 2차, 06학번으로 들어왔다.
* 2008년 : 일본으로 도망갔다 일본어 기초만 배우고 옴 // '''이 해에 ZP 활동은 제일 열심히 했다.'''
* 2009년 : 3학년 다니면서 AIBI 연구실 학부연구생. 한거라고는 제안서와 랩미팅 참여 뿐인가..OTL
* 2017년 : ~~LG 탈출~~ eBay Korea로 이직. G마켓/옥션/G9하나 했는데 셋 다 아니고 물류 쪽을 하게 되었습니다. Fulfillment팀
php, mysql로 주소록 관리하고자 진행. 승한오빠와 진행함. 로그인을 제외하고 완성.
나는 DB쪽을 맡았었는데 Java와 mysql을 연동하는 방법까지만 하고 프로젝트 자체가 흐지부지 됨.
타과생 출입 등의 문제때문에 제안된 프로젝트인데 아무것도 못했습니다. 현태오빠가 바쁘기도 했고..
웹언어를 공부하고 싶었는데 상협오빠가 제안하셔서 시작했던 프로젝트.
당시에는 파이선에 별로 정이 안갔었고 본연에 공부하려던 것과 완전 다른걸 배워서 중도 하차
- 정모/2013.9.4 . . . . 17 matches
* [고한종], [김민재], [안혁준], [고한종], [김남규], [김해천], [조영준], [이봉규], [서민관], [최다인], [송정규], [김도형], [임지훈], [장혁재], [김윤환], [권영기], [조광희]
* 제로페이지에서는 회원들의 학술활동 지원을 위해, 참가비가 있는 행사(컨퍼런스 등)에 대해 입장료를 지원하고 있습니다.
* 회장 -> 학술행사에 참여하는 금액에 대해 지원금 제한 10만원정도 하려고합니다. 이것에 대해서 의견을 묻고자합니다.
* 본인 입으로 정확히 말하자면 :) 제한이 없어도 잘 안가는데, 제한이 생기면 더욱더 안 갈게 뻔하고, 지원금을 받는 대신 회원에게 공유할것을 전제로 주는 것이기 때문에, 한 사람이 집중적으로 많이 받아가도 별 반발이 없을거라 생각합니다. 받은만큼 토해(?)낼태니까요 :) 대신 세미나 같은 곳 다녀와서 건성으로 공유하지 않고 제대로 공유해줘야겠죠. 일단은 회장이 만족할정도면 된다고 생각합니다만. - [고한종]
* 해천 -> 1명만 가는 경우 지원은 당연히 안되는 것이고, 영기말처럼 하는게 더 맞는것같다.
* 제가 할법한 잔소리는 이미 한종이가 위에서 했으니 제끼고 궁금한 게 있어서 이쪽에 붙습니다. 한명만 가는 경우 지원하지 말아야 할 당연한 이유가 있나요? 학술활동이 꼭 단체활동이어야 한다는 법도 없고.. 같이 갈 사람 못 구하면 지원도 못 받는 건 어쩐지 이상하게 느껴집니다. - [김수경]
* 대학생 프로그래밍 동아리에서 하는 제 2회 문제중 못푼문제 풀고 슬라이딩 윈도우 알고리즘을 공부했습니다.
* 클린 코드 : SRP(Single Responsibility Principle), DIP(Dependency Inversion Principle) 방식을 공부하였고 디자인패턴 중 템플릿 메소드에 대해서 공부하였습니다.그리고 스레드에 대해서 공부 하였습니다. trello와 github연동하는 방법이 있습니다.상당히 유용할 것같으므로 관심있으신분들은 조금만 찿아보시면 쉽게 하실수있습니다.
* 오랜만에 돌아왔는데, 회장이 이제 정모 진행하는데 불필요한 긴장감을 가지지는 않는것 같아 마음이 살짝 놓이네요. 하지만 여전히 뭔가 진행되는 느낌은 받지 못해 아쉬웠습니다. 휴학러니 앞으로 시간날때마다 짬짬히 들려서 지원해 드릴테니 힘내시길 : ) -[고한종]
- 지금그때2004/패널토의질문지 . . . . 17 matches
* 다시 대학때로, 일학년때로 돌아간다면 가장 해보고 싶은 일?
* 얼마나 폭넓은 인간관계를 형성하고 있는지? 인간관계를 맺는 비법?
* 자신이 참여한 행사중 가장 인상깊은(추천하는) 행사(세미나, 컨퍼런스등)는 무엇이고, 어떻게 참여하는가?
* 자신이 성장했다고 느낄때는?
* 대학을 다니면서 가장 많이 고민했던 것과 그 이유, 자신에게 끼친 영향?
질문을 할때 사회자의 말투라고 할까요. 내용은 위의 질문내용으로 할 수 있지만 질문접근방법에 대해서도 신경쓰면 더 좋은 답을 얻을 수 있지 않을까 합니다. 그러한 점에서 볼때 [질문의힘] 의 후반부에 나오는 인터뷰들의 예를 참고해볼만 하다 생각합니다.
"저의 경우 지금 자료구조 수업을 듣고 있는데 머릿속에 잘 안들어옵니다. 선배님들은 자료구조가 중요한 과목이니 열심히 공부하라고 하시지만 쉽지가 않네요. 선배님께서 수업을 들으셨을때는 어떻게 하셨습니까? 그리고, 보다 능동적으로 재밌게 공부할 방법이 없을까요?"
식으로 이전에 같은 컴공과 학생이라는 연결고리를 만들 수 있겠습니다. 또한, 방청객들도 이러한 질문을 들으면서 자기 경험대비 질문의 연결고리를 찾을 수도 있겠다는 생각이 듭니다. --[1002]
"선배님의 대학생활을 통틀어 가장 재미있게 공부한 과목은 어느 것이었나요? 무엇이 달라서 그렇게 재미있었다고 생각하시나요? 재미있었던 기억을 이야기해주실 수 있을까요?" --JuNe
"저희는 이제 막 고등학교를 졸업하고 대학에 들어왔습니다. 삶에 있어서는, 뭐랄까 일종의 180도 회전 같은 거죠. 그래서 그래 이제는 한번 마음껏 놀아보자, 그런 생각도 드는 것이 사실입니다. 하지만 아마도 선배님께서는 '내가 만약 그때로 돌아간다면 X나게 공부했을 것이다'라고 말씀하실지도 모르겠습니다. 그렇지만, 그것은 이미 과거의 경험을 전제로 '그랬었더라면'하는 후회의 형식이기 때문에 그런 말씀을 하실 수 있는 것 아닌가요? 지금 정말 열심히 놀고 설사 나중에 후회하더라도 나름의 가치가 있는 것은 아닌가요? 지금 우리에게 선배의 후회를 강요할 수는 없는 것 아닌가요?" --JuNe
- 2012년독서모임 . . . . 16 matches
* 테마를 정하고 그 테마에 맞는 책을 각자 정해서 읽는다.
* [권순의] - 오랜만에 시작하는군요. Fault Line은 보이지 않는 균열이 세계 경제를 위협한다는 내용으로 지표면에서 단층면이 접하는 선인 단층선이 Fault Line인데 그 곳에서 지진이 발생한다는 것 때문에 따 왔다고 하더군요. 그래서 과거 시행했던 정책이나 여러 사건들을 통해 현재의 경제가 어떠한 상황에 이르게 되었는지에 대해서 서술한 책입니다. 사실 무지 재미 없습니다. -_- 읽은지 꽤 됬는데 눈에 잘 안 들어오고 하다 보니 아직도 다 못 읽었..
* [권순의] - 신은 위대하지 않다.. 웃기게 쓴 글은 아닌데 좀 웃긴 부분이 많습니다. 글을 잘 쓰네요. 다양한 관점에서 신이 존재하지 않는 이유를 나열합니다. 과학적으로도.. 성경도.. 뭐 어찌되었든 간에 이 책을 읽고 동조하는 거 보다는 그냥 한번 쯤 생각해 보는 부분이 맞는 것 같습니다.
* 그러고 어렸을 때 부터 가진 종교에 관한 이야기를 쭉 했었는데요,, 뭐 라엘리안 무브먼트에 대한 이야기도 하고, 마호메트 위인전에 대해서도 이야기 하고, 어렸을 적 경험담? 도 이야기 하고 여튼 이것 저것 많이 이야기는 했는데 알맹이는 없는 거 같네요 -_-; 그냥 종교인 덕분에 빡친 기억들과 이러 저러한 이유로 전 그냥 나대로 살 생각입니다 가 결론이 된?? 뭐 여하튼.. 종교라는 것이 인류에 있어 의지할 곳 없던 사람들에게 도움이 된 부분이 없잖아 있습니다. 그래서들 종교를 믿는 것 같고요. 물론, 아닌 사람도 있지만 종교의 본질은 제가 생각하기에 마음의 안식처 인 것 같습니다. 굳이 종교를 가지지 않고도 마음의 안식처를 가질 수 있다면야 종교가 필요 없겠죠... 이건 쓰다가 생각난건데 정말 2012년에 지구 멸망하나?
* 사실 지난 번 주제를 정할 때 한기가 요즘 고민이 뭐냐고 물어봐서 여자? 라고 대답한 것이 주제가 되었.. 흠흠.. 이 책은 한 장 한 장 마다 다른 주제?에 대한 이야기를 남자의 관점과 여자의 관점에서 전개되고 그것들이 모여 하나의 챕터?가 되는 식으로 구성되어 있습니다. 화성에서 온 남자, 금성에서 온 여자보다는 극단적이지는 않지만 남자와 여자의 생각하는 차이에 대해서 다시한번 볼 수 있는 책이었습니다. 참.. 갈길이 머네요 라는 결론을 가져다 준? ㅋㅋ - [권순의]
* 이 주제를 보고 부끄럽게 느껴진다면 그것은 이런 주제라도 괜찮은 책이 있을거라는 생각까지는 가지 못했기 때문이겠지요. ~_~ㅋ -[김태진]
* 인류가 다른 생명체와 다른 점은 표현할 수 있는 언어가 있어서이다 라는 말은 많이들 들어보았을 것입니다. 그래서 인류가 발명한 발명 중 가장 위대한 발명으로 언어를 선택했는데.. 책이 정말 학술적인 내용이네요.. 사실 지루해서 힘들었습니다. 영어에서의 불규칙 과거형 단어들이랄지.. 인간의 사고가 언어에 투영되는 것 등이 나왔는데.. 그냥 그러려니 하는 내용들.. 관심이 없으니 힘드네요a - [권순의]
- 3DAlca . . . . 16 matches
* 의외로 너무 쉽게 만들어지고 있음.. ㅡㅡ;;
* 판이 고무줄처럼 밑으로 출 늘였다가 놓으면서 팍 튕기기
* 태양이 위에서 수직으로 내리쬔다고 생각하고 그림자 생기게 만든다.. 더 쉽게..
* 공이 벽이나 벽돌에 튕길때 살짝 표시하는게 좋겠다. => 공 부딪힐때 꼭 타격 표시 (예-> 스톰에서 주먹으로 퍽퍽 치면 퍽퍽 소리나고 빨간색 번쩍 번쩍 하는거.)
|| 8.6 ~ 8.28 || 침체기.. 별로 손을 못됨. ㅠㅜ, API 네트워크 공부 할라고 좀 폼만 잡다 맘 ㅠㅜ ||
|| 10.30 || 스테이지 4~7 넣고, SeeMore 가시화 공모전에 제출 -_-;; 심심풀이로 내봄 ||
* 현재 API에서 돌아가는걸 MFC에서 돌아가게 한후 네트워크 1:1일 구현하고 , 그후 서버하나에 다중 접속할 수 있게 구현다.
* 벽돌만 없고, 나머지는 비슷한 상황에서 실제로 해보니깐, 첨에 너무 어려웠다.. 황당.. ㅡㅡ;; 이게 망했구나 하는 생각이 그 순간 들었다. 이렇게 만든사람도 어려워서 제대로 못하는데 누가 이겜을 할까 하는 생각이... 그런데 알고 보니깐 왼쪽으로 공이 떨어지면 충돌 처리가 안되는 버그가 있었다.-_- 버그를 고치고 나서도 뭐 마찬가지로 어려웠다. ㅡㅡ;; 그때 아하 하고 이생각이 떠올랐다. 이거 그냥 판만 크게 하면 되는거 아냐? 하는 생각.. 역시 판을 크게하니 할만했다... 후후후..
* 인수는 이거 몇초 해보더니, 산만하다고 한다. 음.. ㅡㅡ;;;, 요새는 이거 짜는 시간보다 이거 내가 하면서 즐기는 시간이 더 많은거 같다. 음 무엇보다 나한테 재밌으니깐 다행이다. ^^; 아무도 안하더라도 내가 할테니.. ㅋㅋ
* 으아.. 서버는 자바에 클라이언트는 API??? -_-; 이구구.. 고생하겠구나.. 나도 그거 할려다가 골치아파서 혼났다. 서버는 스트림 기반이라 페킷 기반인 클라이언트랑 맞물리려면 골치아플것인데.. 흠흠; - 해성
* 아.. 다시보니.. 중앙서버만 자바고 클라이언트끼리 p2p인가보네? - 해성
- AOI/2004 . . . . 16 matches
* 여름 교재 : 쉽게 배우는 실전 알고리즘 & 정보올림피아드 도전하기 ( Aladdin:8931421923 )
== 하고 싶은 말 ==
열심히 코딩하는 건 보기좋다. 하지만 소스 코드에서 냄새가 많이 난다. 너네가 만날 때는 그때까지 짰던 소스 코드를 서로 바꿔가며 좋은점, 고칠점에 대하여 논하고 리팩토링 해보면 도움이 많이 되겠다. --재동
용두사미! 왜 끝은 흐지부지 되는 경향이 있을까요? 쉽고, 재밌는(?) 문제 위주로 올릴테니 우리 모두 힘내서 풀어보아요! - 보창
uva robot의 경우 보통 300 번 이상의 test case 를 쓰는 것 같습니다. 동적 메모리가 아닌 정적으로 할당할 경우 이 점을 유의(?)하지 않으면 RE error(포인터 에러)가 납니다. 보창은 이것때문에 하루종일 프로그램을 뜯어고쳤으나, 결국 우연한 기회에 알게 되었습니다. LCD-Display의 경우 robot은 1000줄 이상을 test하는 걸로 보여집니다. -- 보창
조언을 한가지 하고 싶습니다.
한 문제를 풀어본 후에 소요시간이 만족스럽지 못하거나 결과코드가 불만족스럽다면 이렇게 해보세요. 내가 만약 이 문제를, 아직 풀지 않았다고 가정하고, 다시 풀어본다면 어떻게 접근하면 더 빨리 혹은 더 잘 풀 수 있을까를 고민합니다. 그리고 그 방법을 이용해서 다시 한 번 풀어봅니다(see DoItAgainToLearn). 개선된 것이 있나요? 이 경험을 통해 얻은 지혜와 기술을 다른 문제에도 적용해 봅니다. 잘 적용이 되는가요?
예를 들어, X라는 문제를 풀어봤는데 그 문제는 Y라는 알고리즘을 사용하면 쉽게 풀리는 것이었다, 하지만 그 착상을 빨리 하지 못해서 시간도 오래 걸리고 고생했다. 뭐 이런 경험을 했다면, 이 문제를 풀어서 얻은 구체적 지식을 잠시 무시하고, 이 문제를 처음 만났을 때 어떻게 Y라는 알고리즘을 사용할 수 있다는 착상에 빨리 도달할 수 있을런지 연구해 봅니다. 문제를 푼 후에 얻은 지식을 사용하지 않아야 합니다. 방법을 찾았으면 그 방법을 적용해서 다시 풀어봅니다. 그 방법이 다른 유사 문제에도 적용이 되는가요?
- BusSimulation/조현태 . . . . 16 matches
그렇지만 아직까지 일은 하고있고, 시간도 없고, 해서 좀 낭비스럽지만 메모리 관리 및 소스가 엉망진창이다.ㅎ
(사실 이 증명 시뮬레이션은 편도에서 버스 용량이 무한대고 설사 승객이 내리지 않더라도 승객이 타고, 타는데 시간이 걸린다는 것만으로도 버스가 몰려다니는 것으로 증명되어 있으나.. 재미없자넝~ 버스는 자고로 용량이 있어야.. 그리고탔으면 내리는게 인지상정.ㅎ)
음 노약자석이라던가.. 길과 길을 이어버린다거나.. 버스를 왕복시킨다거나.. 하는것은 해보고 싶지만, 시간상 보류!
들떠서 다 적고나서 소스의 설명이 안되있는것을 깨닫고 시급히 수정.. 그런데 어느분이 그사이 페이지를 변경하셔서 눈물을 머금고 다시작성한다.ㅠ.ㅜ
승객 1인을 태우고, 승객1인을 내리는데 1턴이 소모된다. (둘중에 한가지 과정만이 이루어 지더라도 동일하게 1턴이 소모된다.)
이러한 규칙을 기본으로 해서 시뮬레이션 하고 있다.
- 물런 재미가 없긴 하겠지만 이 증명은 버스가 편도로 움직이고 버스용량이 무한이며, 승객이 내리지 않더라도 승객이 타고 승객이 타는데 시간만 걸린다면 버스의 몰림현상이 발생한다. (고로 증명하기 위해 소스를 많이 짤 필요가 없을 수도 있다. 재미가 없겠지만..ㅎ)
- ComputerNetworkClass/Exam2006_2 . . . . 16 matches
보안 기법에서 알고리즘과 자세한 구현법에 대한 내용은 교수님이 지양하신듯. (난이도 낮추려고 한듯함)
인터넷 보안 관련된 문제에서 문제로 출제 될 만하다고 생각했던 부분인 Authencation Protocol (3-way-handshake, keberos, using RSA)에 대한 내용역시 미출제되었음. 덕분에 시험 난이도는 낮아졌지만, PEM 의 구조에 대한 설명이 들어갔기 때문에 따로 관심을 가지고 공부한 사람이 아니면 약간 어려웠을지도 모르겠음.
TCP의 흐름제어 부분은 워낙에 중요하다고 설명했기 때문에 SLOWSTART, FAST RETRANSMIT, VEGAS 에 대한 이해를 해야했을듯.
availability(interruption, DoS, Jamming -> Firewall, Proxy-base Network System)에 대한 설명과 수업때 배운 보안기술들을 분류하고 설명하는 문제임.
2.1 playback time 에 대한 책에 제시된 그래프를 그리고 그 설명을 하는 문제. (2.1 문제에서는 MPEG 과 같은 압축 기법이 이용되지 않는다고 가정)
SSRC, CSRC, Contribution Count, timestamp, sequence number, Version etc 에대한 내용을 적고 해설
2.4 play back 은 무엇이고 언제 어떻게 사용되나
일반적인 메일 전송 프로토콜의 이해와 MIME 프로토콜에 대한 간단한 이해. 그리고 E(MD(5), PrivateKeyOfSnd) 의 해석 방법과 계층적 인증에 대한 이해를 묻는 문제였음.
(진도 나가기 전 수업때 메일 구조 보고 오라고했는데 아무도 안보고 와서 낸듯함. ㅡ.ㅡ)
5. 통합 서비스와, 차별 서비스의 접근법의 차이를 쓰고 (Qos에 따른 서비스를 제공해주는 대표적인 기법) 각 서비스에서 WFQ를 어떻게 구현했는지
Integrated Service(flow-based), Differentiated Service(service-based) 에대한 전반적인 이해를 하는 문제. 해당 기법에 WFQ를 적용하는 방법에 대한 이해를 묻는 문제로 약간 응용해서 적으란 것으로 보임. 책에 DS에 대한 설명은 WRED, RIO에 대한 설명만 되어있었고, 이 방식은 Queuing 에 의한 WFQ의 사후 처리가 아닌 사전 체리에 관련된 내용이었음. 솔직히 WFQ 왜 냈는지 모르겠음. -_-;;
- EnglishSpeaking/TheSimpsons/S01E04 . . . . 16 matches
* 호머는 가족들을 데리고 번즈 사장의 집에서 열리는 (의무적으로) 회사 연회에 참가한다. 번즈 사장은 화목해보이지 않는 가족은 해고해버리려고 하고 호머는 번즈 사장 앞에서 가족들이 화목한 '척'을 하려고 한다. 하지만 바트와 리사는 사고를 치고, 마지는 펀치를 마시다가 술에 취해버린다. 호머는 바트에게 5달러를 주고 뽀뽀를 받는 등 부자연스러운 연기를 하는 반면 진실되게 서로를 존중해주는 다른 가족들을 보며 자신의 가족에 문제가 있음을 알고 실의에 빠진다. 모의 술집에서 고민하던 호머는 TV 광고를 보고 마빈 몬로 박사의 가족 치료 센터에서 이 문제를 해결하고자 가족들을 데리고 간다. 하지만 호머를 비롯한 가족들은 어째 몬로 박사의 다양한 치료법들이 모두 역효과를 불러 일으킨다. 하지만 만족하지 못하면 2배 가격으로 환불해줘야 하는 치료 센터의 규정 덕택에 심슨 가족들은 오히려 돈을 벌게 되고 이로 인해 가족들에게 행복(?)이 찾아온다.
* 내용 : 다른 가족들을 보고 상심한 호머가 모의 술집에서 술을 마시는데 다른 집을 배회하던 무리들을 찾는 경찰들이 들어온다. 다행히 호머는 그게 심슨 가족들이었단 것을 들키지 않지만 자신의 자녀들에 대해 나쁜 말을 하는 바니와 싸움이 붙는다.
- Java2MicroEdition . . . . 16 matches
Java 2 Micro Edition (J2ME) 은 휴대전화나 PDA 같은 이동통신 기기등의 가전제품을 목표로 하고 있다. 그래서 초소형 장치에서 작은 장치에 이르는 이른바 소형 디바이스 들이 Java 를 사용할 수 있도록 지원하는 플랫폼이다.
* J2ME는 Configuration과 Profile로 구성되어 있다. (아래 "Configuration과 Profile" 참고)
실재로 CLDC와 MIDP가 포팅되어 있는 최신 휴대전화는 다음과 같은 구조를 이루고 있다.
그림을 보면 맨 아래에 MID, 즉 휴대전화의 하드웨어 부분이 있고 그 위에는 Native System Software가 존재하며 그 상위에 CLDC가, 그리고 MIDP에 대한 부분이 나오는데 이 부분을 살펴보면, MIDP Application과 OEM-Specific Classes로 나뉘어 있는 것을 알 수 있다. 여기서의 OEM-Specific Classes라는 것은 말 그대로 OEM(Original Equipment Manufacturing) 주문자의 상표로 상품을 제공하는 것이다. 즉, 다른 휴대전화에서는 사용할 수 없고, 자신의(같은 통신 회사의) 휴대전화에서만 독립적으로 수행될 수 있도록 제작된 Java또는 Native로 작성된 API이다. 이는 자신의(같은 통신 회사의) 휴대전화의 특성을 잘 나타내거나 또는 MIDP에서 제공하지 않는 특성화된 클래스 들로 이루어져 있다. 지금까지 나와있는 많은 MIDP API들에도 이런 예는 많이 보이고 있으며, 우리나라의 SK Telecom에서 제공하는 SK-VM에도 이런 SPEC을 가지고 휴대전화의 특성에 맞는 기능, 예를 들어 진동 기능이나, SMS를 컨트롤하는 기능 들을 구현하고 있다. 그림에서 보듯이 CLDC는 MIDP와 OEM-Specific Classes의 기본이 되고 있다.
퍼스널 자바와 임베디드 자바는 J2ME 플랫폼이 등장하기 이전부터 임베디드 시장을 목표로 한 자바 플랫폼이었다. 인터넷 셋탑 박스와 같은 나름대로의 성과도 있었지만, pJava와 eJava는 별로 시장의 주목을 받을 만한 사건을 기록한 적이 없었다. 그것은 기본적으로 선 마이크로시스템즈가 하드웨어 설계 및 제조와 관련해서는 그다지 내세울 만한 무기가 없었기 때문이었다고 해도 별 무리가 없을 것이다. 즉, 하드웨어 업체의 적극적인 지지 없이는 자바의 임베디드 시장 진출은 요원한 과제였다.
그리고, 수많은 소비자/임베디드 디바이스들에 공통적으로 적용할 수 있는 플랫폼을 개발한다는 것도 자체적으로 한계가 있었다. 다양한 하드웨어, 다양한 운영체제, 그리고 전혀 호환성 없는 유저 인터페이스까지, 이 모든 차이점을 극복하면서 기존의 J2SE 기반의 자바와의 호환성까지 유지할 수 있는 솔루션은 불가능하다는 문제인식이 있었다. 그래서 등장한 개념이 컨피규레이션과 프로파일로의 플랫폼 분할이다.
컨피규레이션이란 자바 가상머신과 코어 API들에 대한 명세를 의미하고, 프로파일은 그 상위의 클래스 라이브러리, 즉 표준 API 집합에 대한 명세를 의미한다. 이러한 개념적인 분할이 필요한 이유는 메모리와 CPU등의 크기와 성능이라는 측면에서의 요구사항이 동일한 디바이스들의 집합을 하나로 묶어서 컨피규레이션을 정의하고, 이러한 컨피규레이션을 바탕으로 각 디바이스들의 기능, 혹은 버티컬 시장의 요구사항에 맞추어 프로파일을 정의함으로써, 플랫폼의 통일성과 다양성을 동시에 만족시킬 수 있기 때문이다.
java.sun.com/j2me 에 가면 CDC, CLDC, MIDP 등을 다운받을 수 있다. 다운받으면 소스코드까지 포함되어 있고, 개발하려는 하드웨어에 포팅하면 된다. (자세한건 잘 모르겠음...ㅡ.ㅡ)
- LoveCalculator/허아영 . . . . 16 matches
그리고 꼭 하고싶은 말이 있는데,,
제 소스에 알고리즘적 문제가 생겨 약간 수정합니다. (구지 안고쳐도 잘 돌아가지만, 꺼림칙 해서..)
다 만든김에 한번 써보지그래?ㅎ 아니 이미 써봤는데 결과가 않좋디??(위에 소감을 보고 하는말.ㅎ)
뭐..점수따위로 마음을 결정할 수 없는고야~ㅎ
음..그건 그렇고 변수를 사람1 사람2로 나눴는데.. 그걸 배열로 지정하면 같은 공식의 중복을 피할 수 있을듯..ㅎ
그럼 수고하세용~ㅎ 좋은하루되궁..ㅎ 문제 한글루 내구..ㅠ.ㅜㅎ - [조현태]
충고 고마워. 문제 한글로 낼께 ㅋㅋ
tolower(해당문자를 소문자로 바꿔줌, 소문자면 그대로)함수 또는 toupper(대문자로)를 쓰고 알파벳에서 숫자가 아닌 문자(alpha = alpha - 'a' +1)로 처리 하였다면 대소문자 따로 처리할 필요 없었고, 가독성 또한 좋아지지 않았을까? - [이영호]
글고 아영이 소스 보면서 지금 느낀건데; 내 소스 버그 있는거같다; 이름에 공백 있으면 내꺼 제대로 안될거같은데 ㄱ-;;; 어흑 ㅠㅠ
그래서 gets쓰고 저런함수들 썼구나 ㅠㅠ - [zyint]
└ㅎㅎ 나두 getche 써서 했다가 띄어쓰기 없어도 될거 같아성 다시 scanf로 고친거였는데..ㅎㅎ 다시보니까 있어야 될듯도..
그래서 또고쳤...;;ㅁ;; 킁..ㅎ 그리구 아영이두 함수 나누는거 수준급이양..ㅎ - [조현태]
- SibichiSeminar/TrustModel . . . . 16 matches
* 연구실에서 Trust Model에 대한 일을 하고있어서.
* [wiki:김홍기 이 사람]이 휴면신청을 하고 뭐 하나 했더니 재밌는 걸 하고 있었네요 ㅋㅋ 발표 형식도 재밌고 실제 하고있는 일이 재미있어 보여서 관심있게 들었습니다.
1. 요새 간단한 검색 서비스''?''를 구현하고 있어서 중간에 루씬에 대한 내용에 혹했습니다. 나도 루씬 인 액션을 볼까...
1. TrustModel에 대한 것과 별개로 프리젠테이션 한 것도 정말 중요한 내용이라 오늘 온 새내기분들이 잘 기억하고 계셨으면 좋겠습니다. 버전 관리의 필요성이나 유용함에 대해서는 직접 느껴봐야 와닿을거예요. ZeroPage에서 느낄 수 있는 기회를 마련하도록 하겠습니다. - [김수경]
* 버전관리의 필요성은 사실 일반 문서작업할때나, 창설 코딩할때 벌써 느껴보던 바였어요. (일단 소스랑 글은 남기고 봐야 나중에 낭패를 보지 않아!) 였달까요 ㅎㅎㅎ -[김태진]
* 홍기가 대학원에서 짱박혀 있더니 이런걸 하고 있었군요,, 군대 갔다 온 사이에 너무 멀리 가 버린 느낌? ㅋㅋㅋ 아무튼,, 자료구조 시간에 Pre-test라는 형식으로 검색 방식에 관한 희소 행렬과 관련 지었던 문제가 생각이 나는 그런 세미나였습니다. 뭐 제가 본 Pre-test는 그래도 쉽게 접근할 수 있게 해 놨었는데 역시나 자세히 들어가니 뭔가 복잡하기도 하다는 느낌도 들더군요. 마지막 즈음에 M-16과 장난감 총으로 든 예시는 재밌으면서도 어딘가 한편으로는 씁쓸한 생각이 들기도 하는.. 뭐 그랬습니다. - [권순의]
* 음.. 어려운 내용이었습니다. 추상적으로 이해하고 끄덕끄덕... 견문이 좁은 탓이겠지요. ㅜㅜ 뒷부분은 재밌었습니다. 지난 주에 언급했던 커뮤니케이션의 실패와 관련이 있을지도... 버전 관리 얘기도 나왔는데, 그 부분이 궁금하네요. 그렇다 할만한 팀워크를 해본 적이 없어서요. 코드를 구역 별로 나눠서 동기화하는 방법이 적절할 것 같은데. 이런 일을 돕는 프로그램이 있는거죠? -_-; - [정진경]
* 세미나를 보면서, 와.. 저런걸 여기서(우리 코앞에 있는 연구실)도 구현하는구나.. 라는 생각이 들어서 뭐랄까, 진짜로 뭔가 연구하는데 다가간다는 느낌이 들었네요. TrustModel과 비슷한걸 만들고자 하는 사람들을 아는데, 저런식으로 아예 수치화 시키는게 역시 효율적인가.. 라는 생각도 들었구요, 후에 연구실(다른데인가?)에 들어간다면 저런걸 하는걸 보게/혹은 후에는 직접 하게될 수 있다는 사실에 나름 다시 감탄(?)했어요. ..아, 개발자와 기획자가 상상하는 것에서 상당히 그럴듯하다고 생각했어요.(창설에 이렇게 만들어달라고 하면 상당히 다른 모양이 탄생하곤 했지요) -[김태진]
* 세미나 주제가 참 놀라웠습니다. 페이스북을 이용해 관심사가 같은 사람들을 엮어주는 앱은 이미 나와있지만, 이건 일일히 사용자가 입력을 해야하는데, TrustModel은 프로그램이 알아서 다해주는것 같더군요. 지식이 얇아서 여기까지밖에 이해 못했습니다. 꺼이꺼이. 세미나 막간에 넣은 M-16인용 개발자-기획자-디자이너의... 뭐라고 해야하나요. 암튼 재밌게 잘 봤습니다. 삼위일체가 답이군요. 하하하하.. 정확한 커뮤니케이션은 정말 힘든것 같아요. 새내기 다운 새내기가 없다는 말씀을 자꾸 하셨는데.. 저 새내기 맞아요 ㅜㅠ C언어도 학교 오고나서야 처음으로 알았어요 ㅜㅠ - [고한종]
- VMWare/OSImplementationTest . . . . 16 matches
OS를 만들어보고 싶은 마음에 무작정 뛰어 들었는데 대부분 환경은 리눅스상이
그리고 링커를 vc6를 사용하고 싶었고 그래서 이를 사용할 수 있는 방법을 소개하려
= 참고하면 좋은 사이트들 =
어려운 영문 OS개발방법을 한글화 해주는 고마운 사이트
무척 좋은 Protected mode에 대한 설명과 소스를 담고 있는 사이트
혼자서 GUI OS를 만드시고 책도 출판하신 분의 사이트
바뀌었습니다 ). 이렇게 긴 역사를 갖고 있는 보편적인 cpu 8080 또는 8086 통틀어
코드는 그 메모리에서 시작한다고 지정해야 할것입니다.
지정 방식으로 수행되지만 80286이상에서는 보호모드가 지원되었고 (최대16M가능)
- 우리는 디스켓도 사용하지 않고 바로 컴파일해서 이미지로 뜬 후 VMWare로
- Netwide Asm으로 at&t 계열 및 intel 계열 둘다 지원하고 target format도
덮어 쓰기 할꺼냐고 물어보는 코든데 그냥 덮어쓰자. --
또한 컴파일 작업에서 바로 부트섹터도 컴파일하고 컴파일 끝나면 바로 부트 이미지도
컴파일을 마치고 나면 아래와 같은 탐색기 모습이 될 것입니다. 마지막으로 셍성된 testos.img 가 우리의 커널 이미지가 됩니다.
- 데블스캠프2005/RUR-PLE . . . . 16 matches
* Python 문법 기반이지만, 몰라도 상관없다. 주어진 함수들을 가지고 해결해 나가기 때문이다. 변수도 안쓴다. -_-
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
* 저장하라는 창이 나오면 test 라고 넣고 저장한다.
* 그리고 다시 play 버튼을 누른다.
* 한칸 앞으로 간다음에 왼쪽으로 돌고나서 한칸 앞으로 가고 나서 정지하는것을 볼 수 있다.
* Play버튼 옆에 Play 모양과 작대기 하나 있는것은 step into와 비슷한 역할을 한다. 명령어가 하나씩 실행된다. 현재 실행되고 있는 명령어는 코드 부분에서 회색으로 highlighting 된다.
* Play버튼을 클릭하고 나서 로봇이 움직이고 있는 도중에 자신이 원하는 순간에 step into 버튼(play 버튼 옆에 있는)을 클릭하면 그 순간부터 명령어가 하나 하나씩 실행된다.
* 문제에서 아래와 같은 소스를 참고 하라고 한다. 저는 좀 다르게 했습니다. 우선 참고는 했고..
* sorting 문제를 풀고나서 시간 남은 분은 해보시길. [http://rur-ple.sourceforge.net/en/amazing1.htm 러플 Amazing 설명]
= 참고 =
- 속죄 . . . . 16 matches
* 무더운 어느 여름날, 열세살의 브리오니 탈리스는 우연히 창 밖을 내다보다가 언니 세실리아가 옷을 벗어던지고 정원의 분수대에 뛰어드는 것을 목격한다. 자매의 어릴적 친구이자 케임브리지에서 얼마 전에 돌아온 의사 지망생 로비 터너가 그런 세실리아를 지켜보고 서 있다. 그날 하루가 끝날 무렵, 탈리스 저택의 영지에서는 또다른 한 소녀가 강간을 당하고, 이때부터 세 사람의 운명은 생각지도 못했던 엇갈림을 겪게 되는데...
* 60개국의 독자들이 읽고 있는 책
* 참고로 역자 소개 ( 번역이 워낙 쓰레기이다 보니까 역자 소개도 들춰 보았음)
* 2차 세계대전 발발 직전. 공장을 경영하는 현대적 인물과 과거 군주주의 귀족풍습을 그대로 지니고 있는 사람이 공존하는 시간. 영국의 탈리스가라는 귀족집안이 배경이다.
* 공상하기 좋아하고 이야기 하기 좋아하는 여자아이, 세실리아라는 신식 여자, 하인 집안의 아들로 케임브리지를 우수한 성적으로 졸업하고 다시 케임브리지 의대에 합격한 로비. (위의 소개말과 다르지 않다.)
* 이 세명에게 같이 일어난 한가지 사건을 서로 다른 시각으로 한사람씩 차례로 돌아가며 의식의 흐름기법을 이용해 서술한다. 제길. 500페이지중 약 절반이상은 이렇게 의식의 흐름으로 때워버린다. 해가 어쨋네 땅이 어쨋네~ 뭐. 외국인이 자기네 말로 보면 재미있고 멋질지 모르지만, 기본적인 우리말 문법도 틀리는 이상한 번역작가의 글을 보면서 멋지다고 하긴 정말 너무 힘들고 짜증난다. 이부분 끝나는 곳까지 보는데 3달 걸렸다. 제길.
* 변태적인 내용의 편지를 실수로 보내게된 남자. 그리고 그걸보고 갑자기 사랑에 빠지는 여자. 제길. 분위기가 어쨋네 저쨋네 하면서 설득하려 하긴 하지만...아무리 봐도 설득력이 없다;; 무슨소리인지도 잘 모르겠따. 이것도 번역작가의 탓인듯.(여자의 의식부분에서 서술이 부족했던것 같다.)
* ''번역이 이상한 부분을 일일이 들춰보고 여기에 써보고 싶지만 이 책을 다시보긴 더 싫다.''
* 외국소설 말고 우리나라 소설을 읽어야겠다. 적어도 짜증은 안나겠지.
- 스터디제안 . . . . 16 matches
=== 컴퓨터고전스터디 ===
["컴퓨터고전스터디"]
각자 흥미로운 기사를 나눠 갖고 공부한 다음, 함께 모여서 발표하고, 토론하고, 제로페이지 위키에 그 내용을 요약해서 올린다. 기사를 번역할 필요는 없고 대충 어떤 내용인지, 그리고 소감 같은 것, 관련 정보를 함께 연결지어 올린다.
새로운 기술의 조류를 관망할 수 있을 것이다. 위 잡지들에서 한 번 크게 떠들고 나서 몇 달이 지나면 그제서야 국내 잡지에서 조금씩 모습을 드러내는 일이 다반사다.
잡지 정리 스터디 같은 경우에는 정모때 정리한걸 간단히 발표 해도 상당히 좋을거 같습니다. 특정한 분야가 아니라 모든 회원들이 들어도 될만한 내용일 테니 회원들에게도 도움이 되고 정모의 입지도 높일 수 있을거 같습니다. - 상협
많은 경우, 특정 주제에 대한 스터디를 만들 때에는 가능하면 독립적인 아이덴티티를 드러내는 이름을 짓기보다, 그냥 공부하는 구체적 주제로 이름을 짓는 것이 나은 것 같습니다(반대로 특별한 이름을 짓는 것이 주는 장점도 많습니다). 어차피 스터디 그룹은 한시적인 것이고, 공부하자고 모인 것이지 어떤 조직을 만들자고 모인 것은 아니며, 해당 그룹이 공부한 내용은 이런 위키에 축적이 될 것이므로. 그룹의 공동체적 성격이 초점이 되고, 공부보다 "관계"가 중심에 놓이는 경우가 있는데, 이는 공부하는 사람들이 피해야할 것입니다. 같은 주제를 공부하고 싶은 사람들끼리 모여서 정말 열심히, 성실히 공부한 다음, 그 자료를 위키에 남기고, 다음을 기약하며 소리없이 해산하면 그만인 것이죠. 이 때의 또 다른 장점은, 다음에 그 주제를 공부하는 다른 스터디 그룹이 있을 때 이전에 스터디를 했던 사람들의 작업에 접근할 확률이 더욱 높아진다는 것이죠. 관계중심적인 공동체를 이루면 장점도 많지만, 외부에서 절연될 확률이 높아진다는 단점도 있는 것 같습니다.
목표'''만'''으로 이름 짓는 것이라는 것이지 뭐, 예를들어서, ''C++ 잘해 보자 훌륭한 넘 되자'' 라는 목표땜에, {{{~cpp GoodGuy}}} 이라고 이름 지으면 --;; --["neocoin"]
- 정모/2013.7.8 . . . . 16 matches
* 아마 7월중 8월 초 고등학생 개최 해커톤에 대해 계획이라던가를 이야기할것입니다.
* 김민재 회장 답변 : 확실한거는 학회 정기 보고서를 올리는것. 다른 곳에서의 지원이 있으면 안되는가에 대한 제약사항이 있는지는 잘 모르겠음.
''' 엠티 계획이 변경되었습니다. 최신 페이지를 참고하시기 바랍니다. '''
* 취지 : 보드게임하고 쉴겸 놀러가자. 그리고 제로페이지 회원들의 단합을 위해서도 가자.
* 안혁준 회원 : 픽업과 교통편이 편리해야한다. 이동하는 인원이 많으므로....어떤 보드게임을 하고 누구에게 빌릴지와 같은 구체적인 계획이나 준비가 필요할 것같다.
* 김민재 회장 답 : 그럼 우선 7월 3째주중에 가는 것으로 .....(''그래서 일자를 7월 3째주라고 써둠.'')
* 공부 방식을 약간 바꿈 (코드젬에 있는 문제 풀기 -> '알고리즘' 책하나 잡아서 공부하는 방식) 팀원마다 각각 단원을 잡고 공부해오기.
* 지금은 주로 c++을 다룸. 아마 Effective c++책을 가지고 할 예정.
* 내용에 오해의 소지가 있는 것 같아서 저 부분(MT 계획) 이야기를 조금 다시 하자면, 저번 MT 때는 낮 시간에 뚜렷한 계획이나 일정이 없어서 시간을 좀 늘어지게 보낸 측면이 있다. 그러니 이번에는 조금 더 구체적인 계획을 세워서 가면 좋겠다. 이런 얘기였습니다. 그래서 혁준 선배가 놀 거면 대충 계획 없이 놀지 말고 보드 게임을 할 건지, 다른 뭔가를 하면서 놀 건지, 물건들을 빌리면 어떻게 할 건지 좀 일정을 잘 정하자는 얘기를 하셨는데 해당 부분만 적혀 있어서 뭔가 놀기만 하러 가는 MT 처럼 보일 수는 있네요. 수정하는 게 나을지도. - [서민관]
* 그리고 계절학기 일정이나 날짜 변경과 관련해서는 정규가 말했던 것 같음. 사실 나는 내 일정 때문에 학회 일정을 바꾼다는 건 좀 이상한 것 같아서 -_-;; 내가 안 가는 게 맞지. - [서민관]
* 형이 주중에 바쁜 사람들 모두를 대표한다고 생각했어야지요 ㅋㅋ -[김태진]
* 나는 이번에 21일에 일이 있어서 그냥 내가 MT 빠진다고 말을 했었거든 ;; 그리고 주 중에 바쁜 게 아니고 주말에 바쁜 거지 ;; - [서민관]
- 코드레이스/2007/RUR_PLE . . . . 16 matches
* Python 문법 기반이지만, 몰라도 상관없다. 주어진 함수들을 가지고 해결해 나가기 때문이다. 변수도 안쓴다. -_-
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
* 저장하라는 창이 나오면 test 라고 넣고 저장한다.
* 그리고 다시 play 버튼을 누른다.
* 한칸 앞으로 간다음에 왼쪽으로 돌고나서 한칸 앞으로 가고 나서 정지하는것을 볼 수 있다.
* Play버튼 옆에 Play 모양과 작대기 하나 있는것은 step into와 비슷한 역할을 한다. 명령어가 하나씩 실행된다. 현재 실행되고 있는 명령어는 코드 부분에서 회색으로 highlighting 된다.
* Play버튼을 클릭하고 나서 로봇이 움직이고 있는 도중에 자신이 원하는 순간에 step into 버튼(play 버튼 옆에 있는)을 클릭하면 그 순간부터 명령어가 하나 하나씩 실행된다.
* 문제에서 아래와 같은 소스를 참고 하라고 한다. 저는 좀 다르게 했습니다. 우선 참고는 했고..
* sorting 문제를 풀고나서 시간 남은 분은 해보시길. [http://rur-ple.sourceforge.net/en/amazing1.htm 러플 Amazing 설명]
= 참고 =
- 큐와 스택/문원명 . . . . 16 matches
여기서 의문점은 string헤더 파일을 include하지 않고 배열을 char *형으로 하고 #1,#2,#3을 strcpy를 사용하여 고치고 실행한 후,
처음에 "empty"로 초기화 하거나 PUSH를 할때, 배열의 모든값이 한개의 값으로 변경된다는 점 입니다...아직도 그 이유를 모르고 있음..
AnswerMe 해당 코드를 올려주세요.#1, #2, #3 를 어떻게 바꾸시는지 모르겠습니다. 그리고 이 페이지 이름 정리 해주세요.
밤(10시 이후)에 답변드리겠습니다. 저에게는 상당한 학습의 기회가 될것 같군요. 재미있네요. 일단, 글로 표현하기에 자신이 없거든요. 주변의 사람들을 붙잡고 물어보는 것도 좋은 방법이 될것 같습니다. 그리고, 학교 교제의, call By Value, call By reference 와 Pointer 관련 부분을 읽으시면 좋겠습니다. --NeoCoin
/// 입력받을 문자열의 길이 알아내고, 저장 공간 준비
// 그래서, element가 가리키는 알수 없는 곳에 값을 저장하려고 합니다.
이 페이지 이름 정리 어떻게 해야하는지 잘 모르겠어요..이곳을 지우고 페이지를 새로 만들어야 하나요?
1. [페이지이름고치기] 방법
1. 현 [페이지이름] 자체에 대한 고민
두 링크 모두 어느 정도 도움이 된다고 생각합니다. 근처의 선배들에게 물어보세요. 서로 고민하면서, 좋은 페이지 구조를 만들어 보세요. 이 자체가 프로그래밍의 과정과 별다를 것이 없습니다.
그리고 위키의 사용 방법이나, 철학들을 [도움말]을 기점으로 따라가서 읽어보시면 알수 있습니다. 그러나 단발성 게시판에 익숙한 많은 분들이 쏟아지는 정보에 두드러기가 날지도 모르겠군요. ^^;; 위는 그중 필요한 링크 입니다. --NeoCoin
- 5인용C++스터디/후기 . . . . 15 matches
우선 처음 시작했던 사람들 모두가 함께 끝낼 수 있어서 이번 스터디는 그럭저럭 잘 끝난것 같습니다. 스터디 내용이 좀 많았지만 발표 준비도 잘 해 주었고, 숙제도 잘 하며 잘 따라와준것 같습니다. 이번 스터디가 얼마나 도움이 되었는지는 모르겠지만 지금까지 배운것 보다 좀 더 풍부한 경험이 되었다면 충분히 얻은것이라 생각합니다~ 앞으로는 관심분야를 잘 찾아서 스스로 스터디를 열고 열심히 공부하는 모습을 볼 수 있기를 바랍니다~^^ 다들 수고하셨습니다!
그래도 꾸준히 진도를 나가면서 전반적인 부분을 알게된 것 같네요. 많이 도움이 되었구요. 그리고 시스템체계에대해서도 약간 알았는데 앞으로도 공부하면서 더 많이 알아야 겠다는 의욕도 생기네요. 앞으로도 친구들과 스터디그룹을 만들어서 서로 공부하면서 선배님들께 물어보기도해야겠고^^; 글구 이번에 MFC를 배운것이 MFC를 공부하는데 이젠는 책을 보면 어느정도 할 수 있을 꺼 같아 좋은 것 같습니다.
문법이 복잡하고 어려워서 정말 힘들었지만 그에 대한 두려움을 조금이나마 극복하게 된것 같습니다. MSDN 찾아보면서 숙제를 완성시키는 과정이 나름대로 만족스러웠습니다. MFC의 메시징 시스템 등의 체계, 윈도우 메시지의 작동 원리 등을 완벽히 이해하고 싶다는 생각이 듭니다. 스터디를 어떤 식으로 준비하고 발표해야될지 알게 되었고 윈도우 프로그램을 보면 어떤 식으로 만들었는지 대략 알 수 있는 능력이 생긴 것 같습니다. 다음 스터디부터 더욱 열심히 하고 싶습니다.
처음에는 의욕적으로(하핫) 스터디 나오면서 MFC를 알아가게 되었는데요.. 나중에는 몇번 빠지다 보니 저도 모르게 흐트러지고 있었네요. 그래도 모두들 꾸준히 나오는 것을 보고 저도 끝까지 나올수 있었습니다 ^^. 무엇보다 개인별로 발표 준비를 하면서 스스로 알아갈 수 있었다는 점이 좋았구요, 그 덕분에 스터디를 집까지 연장할 수 있었습니다.
공부하면서 아 내가 많이 부족하구나 하는 것을 알게 되었어요.. 끝까지 문법과 메시지 처리의 압박에 시달렸는데 내가 발표한것은 그나마(!!) 나은데 다른사람이 발표한 내용은 잘 알지 못하는 것 같아요 ㅎㅎ ^^; 친구들과 같이 공부하면서 나름대로의 경쟁심? 이랄까 의욕이란 것도 생기고 저만 빼고 다들 너무 잘 한 것 같아 앞으로도 열심히 노력해야겠다는 생각도 들엇구요 어떻게 공부해야 하나 대충 가닥을 잡을 수 있던 시간이었습니다
중간에 빠졌던 날이 좀 부담됐지만 ! 결국 끝까지 4번 결석 압박을 견뎌내며 스터디를 마무리해서 기쁘네요.ㅋㅋ MFC를 했으니 이제 부담은 많이 줄었고요. 더불어 새 언어를 배우는데도 부담스럽지 않을 거라는 생각도 드네요. 자. 다음 스터디를 향해 전진~!
- ACM_ICPC/2013년스터디 . . . . 15 matches
* 각자 문제를 풀어오고 설명, 설명들은 문제는 다음 시간까지 개인적으로 풀어올 것.(Dovelet 사용)
* 방식 - 각자 문제를 풀어와서 토의하고, 다음 문제를 정합니다.
* 작년 방식하고 똑같습니다.
* n 마리의 쥐가 크기가 같은 n 개의 버터를 먹는데 n 시간이 걸린다고 할 때 , m 마리의 쥐가 m 개의 버터를 먹는데 걸리는 시간을 구하는것이 문제이다. 각각의 쥐가 치즈를 먹는 속도는 모두 동일하다고 한다.
* URL에 '가 들어가면 개고생.
* 참고문제 prime_path [http://211.229.66.5/30stair/prime_path/prime_path.php?pname=prime_path]
* 곽병학: 전체 맵에서 각각 독립적인 그래프들 찾기 - 문제점은 알았고 풀어오겠음, 그래프 문제 안풀어오면 저녁
- 설명하면 1110110 이라는 것이 있을 때, 1110110이 오기 전에는 110으로 시작하는 모든 바코드가 있을 것이고, 그 이전에는 10으로 시작하는 모든 바코드가 있을 것이다. 그리고 1110110이라는 바코드가 오기 전에는 111000으로 시작하는 모든 바코드가 있을 것이고, 그 이전에는 11100으로 시작하는 모든 바코드가 있을 것이다. dp테이블에 해당 경우에 대한 경우의 수를 모두 저장해놨기 때문에, 앞에서 부터 차례대로 이전에 올 바코드의 수를 더해나가면 index를 구할 수 있다.
* Algospot배 알고리즘대회
* Coder's High 2013 (Algospot 알고리즘대회) 풀기
* [http://www.algospot.com/judge/problem/read/SPACE 우주개발의 길은 멀고도 험하다]
* 위상정렬, critical path에 대해 공부 및 코딩 - 코드 및 해설은 Fundamental of DataStructure를 참고하자.
- AcceleratedC++/Chapter11 . . . . 15 matches
실제로 클래스를 제작할 경우에는 클래스의 생성, 복사, 대입, 소멸의 고려하여 설계되어야한다.
size는 begin, end 를 통해서 그 크기를 구하는 것이 가능하므로 여기서는 '''첫 요소의 주소, 마지막 요소를 하나 지난 주소'''를 저장하고 개수는 계산을 통해서 구현한다.
Vec<int> vi = 100; // not working. 암묵적으로 Vec를 생성하고 그 값을 vi 에 복사한다. refer 11.3.3
절적한 typedef를 추가하고, 멤버 데이터의 형도 여기에 맞추어서 변경하였음.
만약 멤버 함수로 연산자가 정의 되어 있다면 좌측 피연산자는 함수를 호출한 객체로 간주되고 오버로드 연산자는 인자로 우측의 피연산자만을 인자로 취한다.
{{{~cpp []}}}연산은 인자로 size_type을 취하고, 리턴값으로 value_type의 레퍼런스를 취해야할 것이다.
사실 이렇게 상세한 객체의 행동양식을 규제할 수 잇는 언어로는 C++이 유일하다. (그만큼 클래스를 작성할때 많은 것들이 고려되어야한다.)
함수의 인자를 복사하는 것을 포함해서, 복사본을 만든다는 의미를 정의하고 있기 때문에 매개변수를 레퍼런스 타입으로 하는 것이 좋다.
보통 디폴트 복사 생성자의 경우에는 클래스의 멤버 변수들을 단순히 복사만 하게 됩니다. 이때 만약 그 멤버 변수가 포인터의 형태라고 한다면 문제가 발생하게 된다.
따라서 포인터의 경우 새로운 주소 공간을 할당받고 그 대상이 되는 값을 복사해야지 이런 문제가 발생하지 않는다.
대입 연산자는 복사 연산자와 달리 왼쪽항을 제거하고 새로운 값으로 대체시킵니다. 복사 생성자는 수행 시점에 왼쪽항의 객체가 처음 만들어진 상태이기 때문에 해제할 대상이 없지만, 대입 연산자는 기존데이터가 있는 상태에서도 대입을 할 수 있기 때문에 복사 생성자와 비슷하게 구성되어야 한다.
또한 자기 대입 (self-assignment)을 위한 고려가 필요하다.
push_back을 구현함에 있어서 요소 배열의 크기를 키워야하는데 이 것을 위해서 여기서는 필요양 보다 많은 수의 배열을 할당하고 하나씩 변수를 하나더 만들어서 현재 사용가능한 끝을 가리키는데 이용하기로 한다.
주석을 참고하고 이해하기 바람.
- ExtremeBear/VideoShop . . . . 15 matches
고객의 요구로 비디오 가게관리 프로그램 구현
고객 :["Ellysavet"]
이름, 주민등록번호, 주소, 전화번호, 대여했던 혹은 현재 대여하고 있는 비디오 정보,
1. 고객메뉴
2) 대여고객
3) 고객 등록
-> 클릭하면(혹은 번호 선택)하면 입력창이 뜨고 그에 따르는 검색 정보가 나온다.
메뉴는 없고
전화번호 뒷자리 물어보는 입력창이 뜨고 같은 번호 중복 되있는 것이 있을 경우 이름도 입력받아서
이름 물어보고 없을 경우 신규 입력 받음
비디오 번호 찍으면(원래는 바코드지만) 비디오 제목명이 뜨고 그 비디오는 대여상황으로 바뀌어야 한다.
등급에 안맞을 경우는 (주민등록번호와 관련되어서 알아서 프로그램이 처리해준다 )대여불가능하다고 나온다.
2-2)대여고객
클릭하면 대여기간이 적은 순으로 뜨고 연체료가 있을 시 연체료 정보도 함께 보여준다.
1.고객메뉴
- Gof/Composite . . . . 15 matches
드로우 에디터나 회로설계 시스템과 같은 그래픽 어플리케이션은 단순한 컴포넌트들의 차원을 넘어서 복잡한 도표들을 만들어내는데 이용된다. 사용자는 더 큰 컴포넌트들을 형성하기 위해 컴포넌트들을 그룹화할 수 있고, 더 큰 컴포넌트들을 형성하기 위해 또 그룹화 할 수 있다. 단순한 구현방법으로는 Text 나 Line 같은 그래픽의 기본요소들에 대한 클래스들을 정의한 뒤, 이러한 기본요소들에 대해 컨테이너 역할을 하는 다른 클래스에 추가하는 방법이 있다.
CompositePattern의 핵심은 기본요소들과 기본요소들의 컨테이너를 둘 다 표현하는 추상 클래스에 있다. 그래픽 시스템에서 여기 Graphic class를 예로 들 수 있겠다. Graphic 은 Draw 와 같은 그래픽 객체들을 구체화하는 명령들을 선언한다. 또한 Graphic 은 Graphic 의 자식클래스들 (tree 구조에서의 parent-child 관계)에 대해 접근하고 관리하는 명령들과 같은 모든 composite 객체들이 공유하는 명령어들을 선언한다.
Picture 클래스는 Graphic 객체에 대한 포함관계를 정의한다. Picture 는 Picture의 children의 Draw 메소드를 호출하게끔 Draw 메소드를 구현한다. 그리고 Picture는 child와 관련한 명령어들을 알맞게 구현한다. Picture 인터페이스는 Graphic의 인터페이스를 형성하므로, Picture 객체는 다른 Pricture들을 재귀적으로 조합할 수 있다.
* 객체들의 부분-전체 계층 구조를 표현하고 싶을때
* 클라이언트들이 개개별 객체들과 객체들의 조합들의 차이점에 신경쓰지 않도록 하고 싶을 경우. Composite를 이용함으로써, 클라이언트들은 composite 구조의 모든 객체들을 동등하게 취급할 것이다.
* 자식 컴포넌트들을 접근하고 관리하기 위한 인터페이스를 선언한다.
* (optional) 재귀 구조에서의 해당 컴포넌트의 부모 클래스로 접근하기 위한 인터페이스를 정의하고, 적절하게 구현한다.
* 기본 객체들과 복합 객체들로 구성된 클래스 계층 구조를 정의한다. (상속관계가 아님. 여기서는 일종의 data-structure의 관점) 기본 객체들은 더 복잡한 객체들을 구성할 수 있고, 계속적이고 재귀적으로 조합될 수 있다. 클라이언트 코드가 기본 객체를 원할때 어디서든지 복합 객체를 취할 수 있다.
CompositePattern을 구현할 때 고려해야 할 여러가지 사항들이 있다.
computer 와 스테레오 컴포넌트들과 같은 장치들 (Equipment) 는 보통 격납 계층의 부분-전체 식으로 구성된다. 예를 들어 섀시 (chassis) 는 드라이브들(하드디스크 드라이브, 플로피 디스크 드라이브 등) 과 평판들 (컴퓨터 케이스의 넓은 판들) 을 포함하고, 버스는 카드들을 포함할 수 있고, 캐비넷은 섀시와 버스 등등을 포함할 수 있다. 이러한 구조는 자연스럽게 CompositePattern으로 모델링될 수 있다.
CompositeEquipment 는 sub-equipment 에 접근하고 관리하기 위한 명령들을 정의한다. 이 명령들인 Add 와 Remove는 _equipment 멤버에 저장된 equipment 의 리스트로부터 equipment 를 추가하거나 삭제한다. CreateIterator 명령은 이 리스트들을 탐색할 수 있는 iterator(구체적으로 ListIterator의 인스턴스) 를 리턴한다.
* 두개의 레지스터로 명령을 수행하고 세번째 레지스터로 결과값을 할당하는 기본적인 assignment
CommandPattern은 MacroCommand Composite 클래스로 Command 객체들이 조합되고 나열하는 방법에 대해 서술한다.
- HelpOnConfiguration . . . . 15 matches
MoniWiki는 `config.php`에 있는 설정을 입맛에 맛게 고칠 수 있다. config.php는 MoniWiki본체 프로그램에 의해 `include`되므로 PHP의 include_path변수로 설정된 어느 디렉토리에 위치할 수도 있다. 특별한 경우가 아니라면 MoniWiki가 설치된 디렉토리에 config.php가 있을것이다.
모니위키의 몇몇 플러그인중 외부 프로그램을 사용하는 프로그램은 환경변수 PATH를 참조하여 외부 프로그램을 호출하게 된다. 이때 PATH의 설정이 제대로 맞지 않아 외부 프로그램이 제대로 실행되지 않는 경우가 있다. 이 경우 config.php에서 `$path`를 고쳐보라.
{{{RCS}}}는 모니위키에서 버전관리를 {{{RCS}}}를 통해 제공하고 있다. [[MoniWikiRCS]] 페이지 참조.
만약 시스템 차원에서 rcs를 지원하지 않는다면 rcs를 컴파일해서 사용해보라. 예를 들어 모니위키가 설치된 디렉토리가 {{{moniwiki}}}이고
그 하위에 {{{bin}}} 디렉토리를 새롭게 만든 후에 {{{rcs}}}관련된 실행파일([[MoniWikiRCS]] 페이지 참조)을 {{{moniwiki/bin}}}아래에 복사하고
config.php에 `$security_class="needtologin";`를 추가하면 로그인 하지 않은 사람은 위키 페이지를 고칠 수 없게 된다. 로그인을 하지 않고 편집을 하려고 하면 경고 메시지와 함께, 가입을 종용하는 간단한 안내가 나온다.
== 대문 및 로고(혹은 배너) 설정 ==
메뉴의 대문(FrontPage)및 로고 그림이 연결하고 있는 페이지는 config.php의 다음 변수를 설정한다.
/!\ wiki.php에 정의되어 있는 WikiDB 클래스를 보면, 우선 하드코딩된 기본 설정이 있고, config.php에서 읽은 설정 사항을 그 위에 덧씌우는 방식이다.
/!\ monisetup.php은 config.php를 변경할 수 있으나, 간단한 변경만 지원하고 세세한 변경은 지원하지 않는다. 최근 1.1.3 버전부터는 여러줄의 config.php 설정을 읽고 수정할 수 있다. 단, monisetup.php를 사용할 경우 코멘트는 모두 제거가 되므로 주의해야 한다.
- Linux . . . . 15 matches
리눅스는 현재 컴퓨터의 커다란 흐름중의 하나이다. FSF에 의해서 지원을 받는 핵심적인 운영체제로 현재 기능적, 보안적 측면이 기존의 [Unix] 시스템에 버금갈 정도 발전하였고 [GNU]의 사상하에 만들어진 [GPL]을 따르기 때문에 무료로 사용이 가능하여 서버 운영체제로 많은 인기를 누리고 있다. 본디 리눅스라는 하는 것은 운영체제의 [Kernel] 명칭이며, 주로 접하게 되는 패키지 형태로 이루어진 배포판의 전체 구성을 리눅스라고 여기는 경우가 있으나 이는 리눅스의 광의적 정의라고 생각하면 될듯 싶다.
리눅스와 비슷한 운영체제로는 정통적인 유닉스 클론 이라고 평가받는 [:FreeBSD BSD]계열이 있다. BSD계열중 가장 잘알려진 [http://www.kr.freebsd.org FreeBSD]의 경우 실제로 과거부터 hotmail.com, yahoo.com, cdrom.com 을 운영해온 네트워킹에 대한 안정성이 입증된 운영체제이다. 실제로 2.6커널의 도입이전에는 BSD의 네트워킹이 더욱 뛰어나다는 평가를 받았지만 일반적인 의견이었으나, 많은 구조적 변경을 통해서 리눅스는 현재 이런 점을 극복하고 BSD와 리눅스를 선택하는 것은 운영자의 기호일 뿐이라는 이야기를 한다. 최근에는 리눅스를 데스크탑의 용도로 까지 확장하려는 노력의 덕분에 로케일 설정관련 부분이 대폭 강화되었으며, 사용자 편의성을 고려한 WindowManager인 [Gnome], [KDE] 등의 프로그램이 대폭 강화되면서 low-level 유저라도 약간의 관심만 기울인다면 충분히 서버로써 쓸 만한 운영체제로 변모하였다.
본 페이지는 특별히 리눅스에 대한 실제 운영에 관한 이야기를 지양하려고 한다. 운영에 관한 내용은 리눅서들이 항상 말하듯이 네트워크의 바다에 널려있기 때문이다. 수많은 자료들을 대하면서 자신이 필요한 자료를 찾는 것도 리눅서가 되는데 필요한 덕목이다.
어느정도 실력을 쌓았다 싶으면 RunningLinux, Oreilly 를 읽기를 권한다. 이 책은 비록 초심자가 읽기에는 부적절하지만 APM설정에 어느정도 리눅스의 구조에 대해서 익힌 사람들이 리눅스를 운영하기 위한 전반적 기초지식의 대부분을 습득 할 수 있는 수작이라고 생각된다.
[http://www.zeropage.org/pub/Linux/Microsoftware_Linux_Command.pdf 마이크로소프트웨어_고급_리눅스_명령와_중요_시스템_관리]
[http://zeropage.org/pub/Linux/Running_Linux_4th.pdf RunningLinux, 4th] - 깨진고리
[BSD]도 상당히 유명한 편인데 이 커널의 제작자가 안알려진 것은 약간 특이한 일이라고 생각할 것이다. 이유인 즉은 BSD는 현재 메인테이너들에 의해서 커널이 관리되기 때문이다. 리눅스 커널은 커널 메인테이너 들을 의견의 제시를 하지만 실제로 방향을 결정하는 최종 결정권자는 리눅스 커널의 최초 개발자인 리누즈 토발즈이다. 그렇지만 BSD는 세계에 있는 BSD메인테이너(커미터)중에 몇명이 선발되어 커널의 개발을 주도하고 운영되기 때문에 사실 어떤 한사람의 이름이 특별히 나올 여지가 많지는 않다. 리누즈 토발즈는 좋은의미의 독재자라고 불리기도한다.
DeleteMe) [EmbeddedSystem] 을 알아보려고 이곳저곳을 돌아다닌 끝에 도착한 Linux...- 이승한
- PC실관리수칙 . . . . 15 matches
3. PC 포맷은 방학내에 진행하여야하고, 진행 후 지도교수님 혹은 담당교수님께 보고서를 제출하여야한다.
4. 대청소는 필요하다고 판단되는 시점에 진행하며, 모든 컴퓨터의 동작여부를 확인하고 바닥 청소까지 병행한다.
2. 정리를 하고 난 후에는 일지에 정리한 내용을 간단히 작성하여야 한다. (보고서 제출시 필요)
2. 이후에도 반응이 없으면 프린트 드라이브를 지웠다 다시 깔고(프린터 연결만 하면 소프트웨어 업데이트를 시킬 수 있다) 재부팅한다.
3. 인쇄물이 남아있어 프린터를 사용하지 못하는 경우, 삭제되지 않으면 프린트를 끄고 몇초 후 다시 켜보는 것을 추천한다. 이후에도 차도가 없다면, 2번 프로세스를 따라가는 것이 좋다.
== 별첨3. 세부 관리방법(애매하다고 생각되는 것들) ==
* 두고 간 개인물건들은 한군데 모아두고 있으나 장소는 일정하지 않다. 전자기기 같은 귀중품은 회수한 뒤 동네 게시판에 업로드하고, 우산이나 책같은 것은 지금 현재는 PC실 문 바로 앞 빈 책상 앞에 모아 두었다.
* 컴퓨터를 종료한 후 모니터는 꺼도 되고, 끄지 않아도 상관없다.(전기세가 걱정되거나 왠지 꺼야할것만 같으면 끄고, 켜진 게 너무 많아 귀찮다면 끄지 않아도 무방함)
* 관리 일지는 서술할 것이 있으면 문장으로 쓰고, 달리 없으면 명사로만 적으면 된다.
- ProgrammingPearls/Column1 . . . . 15 matches
대부분의 언어에는 소트가 이미 구현되어 있다. 그런데 꼭 새로운 나만의 소트를 만들어야 될때가 있다. 레코드가 한 천만개쯤 된다고 하자.이것을 우리가 알고 있는 버블소트, 퀵소트 같은 것으로 하기에는 메모리가 많이 든다. 32bit(4byte)의 정수라고 한다면, 40메가바이트가 필요하다. 하지만 어떤 작업을 할때에, 우리가 소트에 할당할 수 있는 공간은 1메가 남짓이라고 가정하자. 시간이 많이 걸려서도 안된다. 어떻게 해야 할 것인가? 이 레코드들은 7자리 전화번호이기 때문에 같은 것이 없다고 한다.
첨에는 머지 소트를 했었는데 버렸다. 다른 방법으로는, 각각의 숫자를 4byte로 표현하면 현재 메모리에 250,000개를 담을 수 있다. 250000개를 소트하고, 또 250,000개 읽고... 이걸 40번 하는 거다. 머지 소트는 중간 작업 파일에의 엑세스가 자주 일어나고, 두번째 방법은 입력을 40번을 받아야 한다는게 문제다. 이것 두가지의 장점을 잘 조합해서 입력은 한번, 중간 작업 파일이 없게는 할 수 없을까?
비트맵, 혹은 비트 벡터라 불리우는 방법이 유용할듯 싶다. 예를 들어 맥시멈 10미만의 숫자라 할때에, {1,2,3,5,8}을 표현해 보면, (0 1 1 1 0 1 0 0 1 1)이 된다. 있으면 1, 없으면 0인 것이다. 한 숫자당 1비트만 할당을 해서, 그것의 인덱스로 처리를 하는 것이다. 앞에서도 말했듯이, 미니멈과 맥시멈의 너비가 작고, 같은 숫자가 없으며, 관련된 데이터가 없다는 측면에서 이 방법을 쓸 수 있는 것이다. 대강의 코드는 다음과 같다.
이것의 수행시간은 Θ(n)이다. 이 챕터는 문제를 주의 깊게 분석하다 보면, 가끔 엄청난 이득을 가져다 줄때가 있다는 교훈을 주고 있다. 문제 정의는 문제 풀이의 90프로다. 일반적으로 많은 공간을 사용하면 적은 시간이 소요된다고 한다. 그런데 비트맵 소트는 시간도 줄고, 공간도 줄어들었따. 적은 데이터를 다루는 것은, 그것을 수행하는 데에 더 적은 시간이 든다는 것이다. 그리고 데이터를 디스크에 두기 보다는 메모리 상에 두는 것이 디스크 액세스 같은 시간 걸리는 일을 줄일 수가 있는 것이다. 프로그램을 간단하게 짜자. 유지보수도 쉽고, 견고할 것이다.
- ProjectPrometheus/BugReport . . . . 15 matches
Prometheus 의 버그 보고 페이지
=== UI & 기능 개선 고려 사항 ===
* [[HTML(<strike> 서평에서 단순히 PRE 태그가 아니라, 워드랩이 가능하도록 고쳐야 한다. </strike>)]]
* 서평 고칠시에 과거의 서평 내용이 나와야 함.
* [[HTML(<strike> 서평 제목과 링크가 서로 묶여 보이지 않아서 어느게 서로 관련된 것인지 애매하다. 같은 서평끼리 동일색으로 하고 색깔을 번갈아 배치하면 좋겠다. 예컨대 옅은 녹색, 진한 초록 이런 식으로. </strike>)]]
* notice변경 사항에 관하여, DB에 넣는 방향으로 바꾸던지(게시판을 하던지), file path 비의존적으로 바꾸어야 한다. 현재 file path문제로 직접 고쳐주어야 하는 상황이고, ant 로 배포시 해당 file의 쓰기 읽기 권한 문제로 문제가 발생한다. --["neocoin"]
- 매번 FORM 으로 넘어가는 변수들이 바뀔때 HTML 내 FORM 변수들을 찾거나 WEB DEBUG 등으로 프로토콜 분석을 하는데, 이를 자동화 할 수 있을 것 같다. <FORM> 태그, <INPUT> 태그 부분만 추출해내고 그 변수값 종류, 변수 이름을 얻어내는 코드만 작성해도, 반복작업을 줄일 수 있을듯. --["1002"]
* 책 번호 357647 가 BtoBRel에는 들어 있고, book에는 없다. 이 한권때문에 현재의 에러가 발생한다. 간단히 없에면 되겠지만, 정체를 알고 싶다. --["상민"]
* 검색이 되지 않아도 검색 인텍스가 1 2 3 4 5 하고 쭈욱 나옴. 이것도 버그 맞아요? ^^; --창섭
* 도서관이 저번주에 뭐 바꾼답시고 삽질중이라고 있다고 공지가 있었거든. 난 내부 DB 작업만 중단 하는것인줄 알았는데, UI부분이 약간 변경된듯 하다. 어이가 없어서.. My Page 눌러보면 공지 해놓았으니 참고--["neocoin"]
- REFACTORING . . . . 15 matches
http://www.refactoring.com/catalog/index.html - Refactoring 에 대해 계속 정리되고 있다.
* Refactoring 을 하기 위해서는 UnitTest code가 필수적이다. 일단 처음 Refactoring에 대한 간단한 원리를 이해하고 싶다면 UnitTest 코드 없이 해도 좋지만, UnitTest code를 작성함으로서 Refactoring 에 대한 효과를 높일 수 있다. (Refactoring 중 본래의 외부기능을 건드리는 실수를 막을 수 있다.)
* 뭔가 비슷한 코드를 만들 것이고, 중복됨이 있은 경우에 당신은 주춤할 것이다. 하지만 어쨌든 일단 중복되는 내용이 있더라도 만들어라.
Three Strike 법칙은 외우기 쉬워서 처음 Refactoring 을 하는 사람들에겐 적당하다. 하지만, 저 법칙은 주로 중복이 일어날 때의 경우이고, Rename Method/Field/Variable 같은 Refactoring 은 지속적으로 해주는 것이 좋다.
그리고 다음과 같은경우 Refactoring을 함으로써 이득을 얻을 수 있다.
* 버그를 고칠 필요가 있을 때
* Code Review 를 하려고 할때
* Refactoring이 무엇인지 알고 싶다면 Chapter 1의 예제를 읽어나간다.
* 왜 Refactoring을 해야 하는지 알고 싶다면 Chapter 1,2를 읽어라.
* 실제로 Refactoring을 하기 원한다면 Chapter 1,2,3,4를 정독하고 RefactoringCatalog 를 대강 훑어본다. RefactoringCatalog는 일종의 reference로 참고하면 된다. Guest Chapter (저자 이외의 다른 사람들이 참여한 부분)도 읽어본다. (특히 Chapter 15)
그리고 Refactoring 을 이해하는데 ExtremeProgramming 을 이해하면 도움이 될 것이다.
["Refactoring"] 과 TestDrivenDevelopment 는 일종의 메타패턴이다. (여기에 개인적으로 하나 더 추가하고 싶다면 ResponsibilityDrivenDesign) 두개에 충실하면 ["DesignPattern"] 으로 유도되어지는 경우가 꽤 많다.
["Refactoring"] 에 의외로 중요한 기술로 생각되는건 바로 Extract Method 와 Rename 과 관련된 Refactoring. 가장 간단하여 시시해보일지 모르겠지만, 그로서 얻어지는 효과는 대단하다. 다른 Refactoring 기술들의 경우도 일단 Extract Method 와 Rename 만 잘 지켜지면 그만큼 적용하기 쉬워진다고 생각.
- 닷넷 다음 버젼에 추가된다고 어디서 본거 같은데.. -[인수]
- TAOCP/InformationStructures . . . . 15 matches
상수 L0를 base address라고 한다면 다음과 같이도 쓸 수 있다.
여태까지는 문제(더 넣을 공간이 없거나, 더 지울 것이 없는 경우)가 없다고 가정했다. 이 문제까지 고려한 과정이 다음과 같다.
가능한 공간에 리스트가 두 개 있다면 (고정된)bottom을 같이 쓸 수 있다. (p.246 그림 참고) 이런 경우 두 리스트가 메모리를 모두 써버릴 때까지 오버플로우는 생기지 않는다. 이런 형태는 매우 자주 쓰인다.
n개의 스택이 있는 경우 i번째(1≤i≤n) 스택에 원소를 넣고 빼는 과정을 다음과 같이 적을 수 있다.
''p.247 (9) (10) 참고''
''초기 조건 : p.247 (11) 참고
그리고 마지막으로 i보다 크고 k보다 크지 않은 모든 BASE와 TOP을 하나씩 위로 민다.
그리고 마지막으로 k보다 크고 i보다 크지 않은 모든 BASE와 TOP을 하나씩 아래로 민다.
한 번 메모리 재배치를 할 때마다 공간을 적당히 마련하는 방법도 가능하다.( 그러나 이해하지 못했다.p.250에 중간에 보면 위 알고리즘(Algorithm G나 R)과 비슷한 동적 메모리 할당 알고리즘의 수학적 분석은 매우 어렵다고 나와있다. )
- TdddArticle . . . . 15 matches
TDD 로 Database TDD 진행하는 예제. 여기서는 툴을 좀 많이 썼다. [Hibernate] 라는 O-R 매핑 툴과 deployment DB는 오라클이지만 로컬 테스트를 위해 HypersonicSql 이라는 녀석을 썼다고 한다. 그리고 test data 를 위해 DBUnit 쓰고, DB Schema 제너레이팅을 위해 XDoclet 와 Ant 를 조합했다.
여기 나온 방법에 대해 장점으로 나온것으로는 비슷한 어프로치로 500 여개 이상 테스트의 실행 시간 단축(Real DB 테스트는 setup/teardown 시 Clean up 하기 위해 드는 시간이 길어진다. 이 시간을 단축시키는 것도 하나의 과제), 그리고 테스트 지역화.
류군 이야기로는 Oracle 의 경우 설치하고 딱 실행하는데만 기본 메모리 200메가 잡아먹는다고 한다. -_-; 로컬 테스트를 위해 HypersonicSql를 쓸만도 하군.; (In-memory DB 식으로 지원가능. 인스톨 할것도 없이 그냥 콘솔에서 배치화일 하나 실행만 하면 됨. 근데, JDBC 를 완벽히 지원하진 않는 것도 같아서, 약간 애매. (ResultSet 의 first(), last(), isLast() 등의 메소드들이 실행이 안됨)
DeleteMe) - 오라클의 경우 인스턴스당 기본으로 먹는게 보통 200 메가 정도. 즉 기본 외에 자기가 만든걸 더 띄울경우 보통 400 메가 이상을 먹게 되는데 이건 뜰때 얘기고 가만히 냅두면 50 메가 이하로 메모리가 내려감. 물론 윈도우 하에서 얘기임. 나머진 확실하지 않음. 연결이 많아지면 메모리가 다시 올라갈것임. -박준용-
여기에서의 TDD 진행 방법보다는 Reference 와 사용 도구들에 더 눈길이 간다. XDoclet 와 ant, O-R 매핑 도구를 저런 식으로도 쓸 수 있구나 하는 것이 신기. 그리고 HSQLDB 라는 가벼운 (160kb 정도라고 한다) DB 로 로컬테스트 DB 를 구축한다는 점도.
초반 자동화를 위해 준비할 것들에만 좀 신경을 쓰고, 익숙해진다면 잘 할 수 있지 않을까 생각.
Xper:XperSeminar 를 보니 일단 셋팅이 되고 익숙해지면 TDD 리듬이 덜 흐트러지는 방법 같았다. (재우씨랑 응주씨가 원래 잘하시고 게다가 연습도 많이 하셔서이겠지만;) password 추가되고 테스트 돌리는 리듬이 좋아보인다. 단, 테스트 돌아가는 속도가 역시 Real DB 이면서 [Hibernate] 까지 같이 돌아가서 약간 느려보이는데, 이건 해보고 결정 좀 해야겠군.
그리고 http://www.agiledata.org 에 있는 에세이들 관련.
- VonNeumannAirport . . . . 15 matches
* ["1002"] 의 개인적으로 생각되는 '미숙' 했다고 생각한 점을 든다면, 평소에 프로그래밍을 하는 리듬이 아니였다는 점. 이전 스타일이라면 일단 문제를 보고 문제를 나누면서 시나리오를 어느정도 만들어 놓은 뒤, 그걸 검증해나간다는 느낌으로 테스트코드를 작성했었는데, 이번의 경우 정말 Extreme 하게 작업한 것 같다. (중반에 CRC 라도 한번 하고 싶었는데, 형에게 물어보고 왠지 '아 내가 알던 방법이 틀린걸꺼야' 하며 그냥 Test 만 생각하게 되었다.) 작업하는 중간 뭔가 석연치 않은 느낌이 들었다면, 아마 대강 이런 느낌이였던 것 같다. 전반적 시각을 한번정도 중간에 정리를 할 필요가 있을건데, 그런 시간을 두지 못한것.
* 중간에 창준이형이 "너희는 C++ 로 프로그래밍을 하면서 STL를 안사용하네?" 라고 했을때, 그냥 막연하게 Java 에서의 Collection Class 정도로만 STL을 생각하고, 사용을 잘 안했다. 그러다가 중반부로 들어서면서 Vector를 이용하게 되었는데, 처음 한두번 이용한 Vector 가 후반으로 가면서 전체의 디자인을 뒤집었다; (물론 거기에는 디미터 법칙을 지키지 않은 소스도 한몫했지만 -_-;) 그걸 떠나서라도 Vector를 써 나가면서 백터 비교 assert 문 등도 만들어 놓고 하는 식으로 점차 이용하다보니 상당히 편리했다. 그러다가 ["Refactoring"] Time 때 서로 다른 자료형 (앞에서 array 로 썼던 것들) 에 대해 vector 로 통일을 하다 보니 시간이 비교적 꽤 지연이 되었다.
* ["Refactoring"] Bad Smell 을 제대로 맡지 못함 - 간과하기 쉽지만 중요한 것중 하나로 naming이 있다. 주석을 다는 중간에 느낀점이 있다면, naming 에 대해서 소홀히 했다란 느낌이 들었다. 그리고 주석을 달아가면서 이미 구식이 되어버린 예전의 테스트들 (로직이 많이 바뀌면서 테스트들이 많이 깨져나갔다) 를 보면 디미터 법칙이라던가 일관된 자료형의 사용 (InformationHiding) 의 문제가 있었음을 느낀다.
아. 언제나 말만 많고 꿈보다 해몽만 좋다; 실천을 제대로 해야지;; --["1002"]
Requirement 수정 예상궁리 (일단은 떠오르는대로. Testability 를 고려하지 않은 상태로)
-> 이 경우 PassengerSet 이 따로 빠져있지 않은 경우 고생하지 않을까. PassengerSet 이 빠져있다면, 가방, 컨테이너 부분들에 대해서 case 문이 복잡해질듯.
-> 이에 따라 Input 부분이 바뀌고, Input 부분이 클래스와 합쳐진 코드의 경우 더더욱 골치.
* PassengerSet Case가 여러개이고 Configuration 은 1개인 경우에 대해서. Configuration 1 : 여러 Case 에 대해 각각 출력하는 경우.
-> 역시 PassengerSet 이 따로 있어서 Configuration 과 같이 협동할 경우엔 쉽게 구현 가능. 그렇지 않은 경우 고생 예상.
* 지금 만든 모듈의 소스 수정없이 GUI 버전으로 재작성하기 - Input / Output 먼저 작성하는 사람들은 가장 고생.
- ZPHomePage . . . . 15 matches
* [ZPHomePage/참고사이트]
* [로고캐릭터공모]
회의 결과 로고와 마스코트 디자인 공모에 총 4만원의 지원금이 결정 되었습니다.
들어오고 있죠~!! 근데 JSP를 잘 모르겠어요...-0-; --[윤성만]
원래 계획보다는 늦어져서 그렇게 생각하고 있음 --[곽세환]
나도 뭔가하고 싶은데 전에 말한 달력 만들면 되니? -[강희경]
사진첩이나 자료실 열람이 안되던데, 저만 안되는 것인가요? 그리고, 위키와 로그인 연동하는 부분에도 버그가 있는 것 같네요. [임인택]
사진첩이랑 자료실은 제로페이지 회원만 접근가능합니다(가입할때 제로페이지 회원으로 가입해야되고요 제가 한번 확인해보고 권한을 드립니다)
저같은 경우에는 모니터 해상도를 1280 * 1024로 하고 사용하는데 ZP창은 너무 작습니다. 즉 여백이 엄청나게 많습니다. 적당히 해상도에 맞추어 홈페이지를 보여주는 게 좋을 듯 합니다. --재동
건의사항입니다. 위의 모인모인 캐릭터를 Upload:ZeroWikiLogo.bmp 로 교체하고 기본 CSS를 clean.css로 바꿨으면 합니다. 모인모인 캐릭터의 경우 00학번 강지혜선배께서 그리신 거라는데(그래서 교체하더라도 원본은 삭제하지 않는 것이 좋겠습니다.) 제로위키에 대한 표현력이 부족하다고 생각해서 제가 새로 그려봤습니다. 그리고 clean.css가 기본 바탕이 흰색이고 가장 심플한 것으로 보아 기본 CSS로 가장 적합하다고 생각합니다. -[강희경]
- django . . . . 15 matches
* 개발이 끝나고 실제로 서비스할 경우에는 apache + mod_python 으로 올려야 한다.
* [http://www.djangoproject.com/documentation/modpython/] 이 페이지를 참고.
* apache에 mod_python 설치는 [apache/mod_python] 페이지 참고.
* html 이 있는 template 에 많은 것을 바라지 말자. 가능하면 view에서 데이터를 거의다 처리해서 template에 넘기는것이 좋다. template에서 받아온 데어터로 리스트와 맵 변수의 첨자(subscriber)로 사용하려고 했는데 안된다. 이러한 경우에는 view에서 데이터를 아예 가공해서 넘기는 것이 좋다.
* mysql 은 사용자를 생성하고 settings.py 파일을 설정한다. 그리고 pysqlite와 다른 점은 DB 이름을 넣고 나서 mysql 들어가서 따로 DB를 만들어 줘야 한다. 그리고 사용자도 만들어 줘야 한다.
* syncdb 해도 admin 에서 추가한 것이 보이지 않을때는 runserver 한거를 중지 시키고 다시 서버를 시작 하면 보인다.
라고 쓰면 http://localhost/mysite 는 안 되고 http://localhost/mysite/ 가 되니까 조심해야 합니다.
그래도 안 되면 다음 사이트를 참고해 봅시다.
* [http://altlang.org/fest/EnglishStudyWithDjango 대안언어축제에서실습한장고] : 실제로 웹 개발을 따라서 해본다.
* 그리고 C:\Python24\Lib\site-packages\Django-0.95-py2.4.egg\django\contrib\admin\media 에 있는 css 폴더를 docuemntRoot(www 이나 htdoc) 폴더에 복사하면 해결됨.
= 참고 페이지 =
- pragma . . . . 15 matches
C 와 C++ 을 구현한 각각의 컴파일러에는 포팅된 하드웨어나 OS 에 의존적인 몇몇가지들의 기능을 가지고 있다. 일례로 몇몇의 프로그램들은 메모리에 데이터가 어떠한 방식으로 자리잡을 것인지 에 관한 문제나 함수가 파라미터들을 조작하는 방법들에 대한 세밀한 조작이 요구된다. #pragma 지시어들은 C 와 C++ 언어 안에서 최소한의 호환성을 유지시키며 그러한 시스템 의존적인 명령어들을 언어의 기능으로서 포함시키는 일을 한다. Pragma 지시어들은 일반적으로 '''컴파일러들 마다 서로 다르다'''.
[snowflower]는 Accelerated C++ 에 있는 map예제를 Visual C++에서 치면서 엄청난 양의 경고를 경험했다. 이것을 어떻게 할 수 있을까 자료를 찾던 중 다음과 같은 방법을 찾았다.
map에서 나는 경고는 번호 C4786번과 C4788번(identifier가 너무 길어서 나타나는 경고라고 한다) 단 2개 뿐임을 알았고, 결국 소스의 맨 윗줄에
NeoCoin 은 Debug 모드에서, 값을 추적할 것을 포기하고, Project Setting -> C/C++ tab -> Debug info -> Line Numbers Only 로 놓고 쓴다.
하지만, 이러한 경고는 Visual C++ 6.0 에서만 유효한것이고, VS.NET 부터 추가 세팅이 필요 없다. VC++ 6.0 에서는 map은 물론 STLPort 나, [Boost] 사용하는 것을 권장하지 않는다. 더 이상 MS 측의 컴파일러 기술 지원이 없으므로, VS.NET 이상 버전을 사용해야 한다.
혹시라도.. 저 #pragma warning(disable: n ... m) 을 써서 언제나 문제를 해결 할 수 있을거라고 생각하시면 안됩니다. 저 위의 설명에도 씌여있듯이, pragma directive 는 지극히.. 시스템에 의존적입니다. 그러므로, VC 에서는 먹힌다는 저 명령어가 GCC 에서는 안될수도 있고.. 뭐 그런겁니다. 확실하게 쓰고싶으시다면.. 그 컴파일러의 문서를 참조하는것이 도움될겁니다.
표준으로 정해진 몇몇의 pragma directive 가 있다고 알고있는데.. 그것들을 내키면 정리해서 올려보겠습니다.
- 나를만든책장/서지혜 . . . . 15 matches
= 다른 사람에게 선물하고 싶은 책 =
* 엘리먼트::타고난 재능과 열정이 만나는 지점
* 비상식(??)적인 회사 이야기. 기존의 회사에 대한 통념을 비판하고 있다. IT계열의 스타트업 회사라면 시도해 볼 만함.
* 개발자를 ''남자친구''로 둔 사람들을 위한 글임. 여자가 개발자일 경우따위 고려 안함^^ 왜 읽었을까. 불쏘시개이다.
* 마우스드라이버의 첫 고객이 엄마였다는게 귀엽다ㅋㅋ
* 사람들이 미쳤다고 말한 외로운 수학 천재 이야기
* 서른살 즈음의 방황하는 영혼을 위한 반창고같은 책
* 왜 이런 명저가 나오고 아프니까 청춘이다 따위가 나온거지ㅜㅜ
* 미치도록 나를 바꾸고 싶을 때
* 후기 : 기대에서 실망으로 실망에서 감동으로. 처음 한장을 읽고 내팽개쳐둔것이 실수였다. 시간가는 줄 모르고 눈물 줄줄 흘린 책. 번역 제목보다 역시 원서 제목이 책의 주제를 잘 말하는것 같다. 원서 제목은 If I stay.
* 세상은 나를 울게하고 나는 세상을 웃게 한다
* 마음을 가라앉히고 우주적 기운을 불러들인다는 내용이 소름끼치게 오그라들지만(기-chi-의 오그라드는 표현인듯) 고양이 이야기가 많이 나와서 읽었음. 게슈탈트 스캔이라고 동물의 신체/심리 상태를 스캐닝 한다는 내용도 대뇌피질 반사! 해서 보면 나름 재미있는 책.
- 데블스캠프2005/월요일후기 . . . . 15 matches
사실 : 흥미롭고 유익한 강의를 들었다.
느낌 : 뿌듯하고 재미있었다.
교훈 : 언어의 다양성, 각각의 장단점이 있음을 인식. 고정관념을 버리자.
사실 : OOP, FLASH 등 새롭고 유익한 것을 배웠다.
사실: 고학번 선배님께서 직접 와주셔서 무척 감사했다.
교훈: 새로운 분야는 많다.그리고 내가 모르는 분야가 더 많다. 앞으로 1주일 동안 무엇이 있는지 맛이라도 보자.
느낌점:새로운 것을 배워서 내가 몰랐던것을 알게되서 좋왔고 넓은 시야로 바라 봐야 겠다는 것을 느꼈습니다.
[황재선] : C, C++ 문법에 대한 불편함을 느끼면서 사고의 틀을 벗어나지 못했던 점이 충격적이었다. 좀더 고차원적이고 추상화하는 능력을 키워야 겠다. 계절학기 듣느라 끝까지 못한 점 무척이나 아쉽다.
느낌: 무언가 새로운 것이 많았고, 새롭게 보는 시각을 가진 것 같다.
그리고 다음 강사는, 이전 강사의 후기를 보면서 자신의 강의를 발전시키세요.
마무리를 할 때 사람들이 집중했다. 짧긴 했지만, 하고 싶은 말을 많이 전달했다.
딱딱한 내용이라면 유머를 최대한 활용해야 했는데 아쉽다. 사람들이 어려워한다고 강의자가 당황해서 준비한 내용을 건너뛰다 보니 오히려 더 이해가 안된 것 같아 아쉽다. 차라리 준비한 대로 설명을 해나가면 사람들이 이해하기 쉽지 않았을까?
리허설 한 번으로는 불충분하다. 참가 인원을 고려한 리허설이 필요하다. 기왕이면 혼자 리허설하기보다 여럿이 같이 할 수 있으면 더 좋겠다.
- 데블스캠프2006/목요일후기 . . . . 15 matches
고준영, 김준석, 성우용, 송지원, 윤영준, 이송희, 이원희, 이장길, 이차형, 정승희, 주소영
힘들어서~ 이게 너무 집중도 안되고 막 이래요~ㅠ.,ㅜ 이젠 막
심지어는 딴짓도 막 해요~ 진짜 수업하시는 내용들 진짜 재밌고 막~좋은거 많은데~ 너무 아깝다는 생각이 들어요~
사실 코딩 자체를 스스로 논리를 생각하고 구현하는걸 잘 못하고 주변사람의 도움을 많이 받았었는데
오목을 코딩하면서 스스로 생각도 해보고 오류도 많이 겪었습니다.
API의 경우 완전 생소하기도 하고 API에 대한 기본적인 이론보다 코딩을 중심으로 가르쳐주셔서
MFC는 재미있었어요'ㅂ' API에서 어렵게 구현했던 걸 보다 쉽게 구현할 수 있었고..
마지막 아날로그 시계는.. 사각형, 원, 선 그리기를 RAND 함수로 하겠다고 했다가 시간을 너무 소비해버려서 구현하지 못했지만
(시간당 초기화하는거.. 그냥 srand(time(NULL)); 해도 됐었는데.. 선호 오빠가 SetTimer로 하면 되지 않겠냐고 하셔서 대략..ㅠㅠ)
뭐.. 어쨌든.. 준식이가 데블스 캠프 1달 하는게 어떻겠냐고 한 말이 기억에 남네요
준비할 때는 내가 전하고자 하는 것이 다 전달될 것이라 확신했지만 진행을 하다보니 전달이 안 되었을 것 같다는 생각..
상호작용이 중요한 강의를 준비할 때에는 청중의 반응 속도를 충분히 느리다고 가정한 후 목표를 잡아야한다는 생각이 든다.
물론 예상외로 빠른 반응이 올 경우에 대비한 강의분량도 있어야겠지만 그렇다고 해서 느릴 경우를 예상하지 못하면 더 실패할 수 있다.
들어준것 감사하고 MFC는 많이 써먹으니 관심 많이 가졌으면 좋겠다.
- 새싹교실/2011/Noname . . . . 15 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 모이는 시간을 잘못 알려주어서 한사람 밖에 오지 못 하였습니다. 한 사람밖에 오지 못 하여서 진도를 많이 빼지 못 하고 복습과 질문 위주로 공부를 하였습니다. 시간을 확실하게 정하고, 다음부터는 애들이 나오지 못 하여도 진도를 위주로 공부를 해야겠습니다. - [박정근]
=== 비고 ===
* 학생들이 이해력이 좋은건지 제가 못 가르치는 건지 금방금방 할 이야기가 다 다르네요;; 다음부터는 좀 더 열심히 공부하고 와서 가르치도혹 해야겠습니다. 또 피드백으로 과제같은 것을 내는것도 괜찮을 것 같네요 준배해 봐야겠습니다. - [박정근]
* 저번에 제어문 할 때에는 창욱이가 없었지만 오늘은 창욱이만 나왔기 때문에 제어문 수업을 다시 했습니다.생각보다 이해가 빠르네요. 예제라던가 문제등을 좀더 준비해가야겠습니다. 또 진도를 더 빨리빨리 빼서 중간고사에 맞출 수 있도록 맞추어 봐야겠습니다. 이제 제어문 끝냈고 드디어 반복분을 할 차레입니다. 개인적으로 별찍는 문제가 가장 재미있었기에 다음번에는 그 문제를 풀어보도록 합시다ㅎㅎ - [박정근]
* If구문,If-Else구문,Switch구문에 대해서 배웠습니다. 역시 처음 배우는거라 예제들에 잘 적용하지 못했습니다. 하나하나 배워가면서 코딩하는게 너무 신기하게 느껴지고 수업시간이 너무 짧아 아쉽습니다. 수업시간이 길거나 자주 수업을 할 수 있으면 좋겠습니다. If구문으로 해야하는 예제들과 Switch구문으로 해야하는 예제들의 차이점을 조금 깨달았습니다. Switch구문으로 코딩해야 더 쉬운 예제들과 If구문으로 코딩해야 더 쉬운 예제들을 구별할 수 있는 능력을 키워야 겠습니다. - [김창욱]
* 여러가지 종류의 반복문에 대해서 배웠습니다. 여러가지 형태의 별을 찍어 보았는데 재밌는 것 같습니다. 상황에 따라서 편한 반복문을 사용해야 겠습니다. 다양한 별을 찍으면서 반복문에 대해 익숙해 져야겠습니다. 저번주에 배운 내용인데도 불구하고 많이 까먹어서 복습을 해야 겠습니다.
* 재귀함수의 사용법을 익숙하게 하기 위하여 여러가지 예제를 풀어보았습니다. 처음 두가지 예제는 비슷해서 그런지 금방 끝냈는데 하노이탑은 힘들어 하더라구요. 저도 작년에 이 문제를 풀기위해 온갖 노력을 하다가 그때 선생님의 도움으로 간신히 풀었는데 그 기분이 짱이더라구요. 하노이탑까지는 꼭 풀고 다음을 배워야겠습니다. - [박정근]
* 근데 저거 int를 return하라고 헤더를 만들어 줘서 문제생기지 않냐? - [윤종하]
* 아.. 그러고보니 그거때문에 경고생기네ㅜ 작년에 만든거 그데로 썼음ㅋㅋ - [박정근]
* 배열만을 공부하려니까 자꾸 포인터쪽으로 연결되네요ㅠㅠ 포인터는 나중에 따로하려고 했는데 배열을 하면서 같이 공부해야겠습니다. - [박정근]
- 위대한게츠비 . . . . 15 matches
= 위대한 게츠비를 읽고나서 =
이책은 정말 빌려놓고.. 오래동안 조금씩 조금씩 읽다가 (주로
남는 시간이 많아서 오늘에서야 다 읽고 이렇게 글을 쓸 수 있게
그리고 이책의 시점이 좀 특이하다.. 주인공의 주변에 있는
솔직히 이책을 그냥 딱 다읽고 나서 느낀점은 이책의 여주인공이라고 할수
있는 데이지 같은 여자(외모만 반반하고, 허영심 많고, 물질적인것을 갈구하고, 이기적인...ㅡㅡ;;)
게츠비의 옛 사랑에 대한 마음은 정말 가련하고, 처절하게 느껴졌다.
저렇게 사랑을 하고 있는 게츠비는 그 순간 만은 행복하긴 하겠다는 생각이 들었다.
단 한명만 참석하는것을 보고, 쉽게 이루어지는 인간관계는 쉽게 허물어지는 구나
하고 생각하게 되었다. 또 물질적인인것(돈)이 바탕이 되어서 이루어진 인간관계는
이것 말고도 많은 생각을 할 수 있었지만 여기까지만 적었다.
그러나 뭐 느끼고 생각할 것들도 많으니 한번씩 읽어 보는것도 좋을거 같다.
- 제로Wiki . . . . 15 matches
* 현재 PHP로 진행되고 있음.
* 개략적 설명 : 각 페이지는 자신의 뇌의 일부분으로 생각 할 수 있다. 각 페이지는 다른 페이지들과 종속 및 포함 관계를 가질 수 있다.(페이지 링크를 통해서 가능함) 그리고 이 페이지를 다른 여러 사람들과 공유할 수 있다. 기존 위키 처럼 하나의 커뮤니티에서의 공유가 아니라 다양한 커뮤니티 사이트들이 서로 서로 페이지를 공유 할 수 있게 되고, 그 공유 페이지가 업데이트 되었을 경우 현재 공유중인 모든 커뮤니티에 그것이 반영된다.(수정된글 목록에 떠서 사람들에게 환기 시킨다)
* 하는 방법 : 예를 들어서 제로페이지 카페에 자신의 위키에 있는 페이지를 올리고 싶을 경우 먼저 제로페이지 카페에서 화면 오른쪽 상단의 가입하기 버튼을 눌러서 가입한후, 올리기를 원하는 페이지를 고칠때 카페 선택을 제로페이지로 하고 나서 저장하면 그후로 계속 공유 관계가 유지된다.
* 자신이 어떤 카페에서든지 새로 만든 페이지는 자신의 개인 위키에 그글이 자동으로 등록 된다. 그글에 대한 반응을 자신의 위키에서 볼 수 있고, 자신이 어떤 카페에 글을 썼는지 기억 못하는 문제도 해결해 준다.
* 자신이 페이지 만드는 데에 참여하고 싶은 페이지는 그 페이지가 있는 카페에 가서 그 페이지를 저장할때 카페에 자신의 개인위키를 지정함으로써 자신의 개인 위키에 그 페이지를 등록 시킨다. 그러면 그 페이지와 자신의 개인 위키가 공유 관계를 가지게 한다.(공유 관계 : 공유 중인 페이지가 업데이트(수정) 될 경우 공유 관계에 있는 모든 위키에 그것이 반영된다.)
* 개념 : 페이지의 성격에 따라서 특정 분류로 나눈다. 기존의 카테고리와 같은 개념 아니냐고 생각할수 있다. 아래 활용을 보시라..
* 동문카페 : 동문 카페라고 하면 각 학번별로 아주 많은 사람들이 글을 쓰게 된다. 자신이 모르는 학번 사람들이 태반일 것이다. 자신이 아는 학번도 있을테고. 그런데 이것을 자신과 상관 있는 학번만 분류어로 지정해 놓으면 나중에 바뀐글을 볼때 그 설정 분류어로 된 페이지들의 바뀐글만 보게 된다.
* 저렇게 할 필요 없이 각 분류어별로 게시판을 만들면 되지 않냐고 생각할 수 도 있다. 하지만!!! 그렇게 각각의 분류 별로 게시판을 만들경우 그 게시판의 글들을 확인 하기 위해서 각각의 게시판에 들어 가야 한다. 그리고 군대 전우 카페 같은 경우 각 회원마다 군생활 시기가 겹치는 사람도 있고 겹치지 않는 사람도 있는등 각 회원에 따른 맞춤식 정보 제공이 필요하다. 이럴때 분류어 기능이 유용하다.
- 지금그때2004/게시판홍보문안 . . . . 15 matches
안녕하세요. 2004년 지금그때를 기획하고 있는 03학번 나휘동입니다.
'지금그때'라는 행사 이름은 '지금 내가 알고 있는 것을 그때도 알았더라면'이라는 시의 제목에서 따온 것입니다. 자신이 새내기 때, 학교에 있을 때 알았더라면 이렇게 했을 거라고 이야기 하는 자리이자, 선후배가 경험을 공유하는 이야기 자리입니다.
* 평소에 만날 수 없는 고학번, 졸업생, 학교 외부 사람들을 만날 수 있는 점
행사 진행 준비를 더 할 시간, 작년과 연결고리를 만들 시간이 더 필요하기에 2004년 지금그때를 4월 6일 화요일로 연기하려고 합니다.
<지금 알고 있는 걸 그때도 알았더라면 >
지금 알고 있는 걸 그때도 알았더라면
더 즐겁게 살고, 덜 고민했으리라.
금방 학교를 졸업하고 머지않아 직업을 가져야 한다는 걸 깨달았으리라.
또는 한 해를 돌아보면서도 “내가 그때 이걸 알았더라면”하고 생각합니다.
두 가지 모두 뒤늦게 지금 알고 있는 것의 가치를 느끼는 것입니다.
여러분께 기회를 드리고 싶습니다.
뜻있는 선배들이 뒤늦게 알게 된 가치 있는 것을 이야기해드리려고 합니다.
- 지금그때2005/후기 . . . . 15 matches
* 처음에는 이게 뭐하는 행사인가 했고, 좀 뻘쭘하지 않을까 했다. 그런데 오늘 이 행사에 참여 해보니깐 상당히 큰 충격을 받았다. 이렇게 자리를 어떤식으로 만드느냐에 따라서 이렇게 훌륭한 토론, 토의, 경험 공유가 가능하구나 하는것을 느꼈다. 이 행사를 통해서 다른 사람들의 경험, 조언, 좋은 얘기를 많이 들어서 너무 좋았다. 정말 좋은 행사라고 생각했다. 그리고 이런 행사를 준비하기 위해서 수많은 회의, 토론을 한 03,04 제로페이지 후배들이 자랑스럽게 느껴졌다. 이런 '지금그때' 행사같은 분위기는 처음 느끼는데, 정말 신선하고 좋은 경험이었다. - [상협]
* 많은것을 준비하였고 많은 기대도 했었던 지금그때 2005. 작년에 참가하지 못했던 아쉬움을 달래기위하여 올해에는 준비도우미도 하였습니다. 나름대로 열심히 하였는데 행사의 주체가 되어주었으면 하였던 05학번이 많이 오지 못한것이 조금 아쉬웠을뿐. 행사 내용에는 큰 만족을 하였습니다. 저희가 준비하면서 어떤 자리가 되었으면 했던것이 잘 반영된것 같았고 이런 행사가 있을수 있다는것에 대학에 와서 또하나의 기쁨을 얻은것 같습니다. 고학번과 저학번이 이렇게 어울릴수 있는자리가 술자리 외에는 거의 힘든것이 사실인데 이렇게 잘 어울릴수있다는것에도 신선한 충격을 받았고요 앞으로도 쭉 계속 이어나가길 바랍니다. - [조동영]
* 처음 들었을 땐, 고학번 선배님들이 많이 오신다고 해서 솔직히 많이 긴장되기도 했지만, 선배님들과 정보를 공유하고, 또 좋은 얘기를 많이 들을 수 있다는 이야기를 듣고 혼자 가게 되었습니다. 기대를 많이 한 만큼, 선배님들의 말씀을 듣고 학교생활에 대해서 새롭게 생각 할 기회가 있어서 좋았고, 또 1학년 때 그냥 쉽게 쉽게 지내는 생활을 후회하는 기회를 갖게 되어서 정말 잘 갔다라는 생각을 하게되었습니다. 더욱 중요한건 , 훌륭하신 선배님들과 한 자리에서 이야기를 나눴다는 점에서 정말 뿌듯합니다. 지금 그때를 참가하면서 얻는 것이 많았습니다. 감사합니다 ^^ 내년에도 06,05,04... 등등 선후배가 모이는 자리 꼭 참석하고싶네요. - [허아영]
- 창섭/BitmapMasking . . . . 15 matches
* 우리가 비트맵을 불러다 쓸때 늘 사각형 모양으로 불러다 쓴다. 하지만 불러다 쓰고 싶은 모양이 사각형이 아니지만 본의 아니게 배경색까지 따라 찍힌다. 이 때 사용한다.
* 비트맵 불러다 쓸때..(MFC에서) 마스크 써서 배경 처리하는걸 래스터 연산 생각하며 따지는게 귀찮아서 담엔 보고 하려고 만든다..;;
3비트 짜리 비트맵 코드(는 없겠지만...; )를 예로 든다면... 검은색은 000 이고 흰색은 111 이다. 그리고자 하는 비트맵이 101 이라면, 검은색과 원본을 AND 연산하면
이렇게 된다. 다시 본론으로 돌아가서...우리가 하고 싶은 일은 그림의 배경을 잘라 내고 원하는 모양만을 밑그림에 붙이는 것이다. 따라서 우리는 배경은 무시되고 원하는 부분의 밑그림이 무시되어야 한다.[[BR]]
* 그림은 ''검은색을 만날 땐 OR 연산''에 '''강'''하고 ''흰색을 만날 땐 AND 연산''에 '''강'''하다~!! B)
* 반면에 ''검은색을 만날 땐 AND 연산''에 '''약'''하고 ''흰색을 만날 땐 OR 연산''에 '''약'''하다... :(
* 따라서 무시될 부분은 약하고 보일 부분은 강해지도록 배경색을 정하고 마스크를 정한다.
* 우리는 그림이 이기고~! 그림 외의 부분은 밑그림이 이겨야 한다~!
1. 밑그림을 먼저 깔아놓고...
1. 그 위에 배경자리는 밑그림이 이기고 그림자리는 그림이 이기도록.. 마스크의 색깔을 정한다.
- 1thPCinCAUCSE/ExtremePair전략 . . . . 14 matches
* 저희 {{{~cpp Extreme Pair}}} 팀은 어떤 문제든 우선 소스를 기본적으로 밑에 형태로 시작했습니다. 그래서 입력과 출력이나 진행에는 전혀 신경 쓰지 않고 문제를 푸는 알고리즘(process() 함수 부분)에만 집중할 수 있었습니다.
=== 알고리즘 ===
* 위에 시작이 끝나면 둘이 알고리즘을 생각했습니다.
* 문제당 따로 알고리즘을 생각하여 먼저 생각난 것이나 둘 중에 좋은 알고리즘을 선택했습니다.
* 이때 여러 문제를 동시에 푸는 게(예: 2명이서 2개의 문제를 동시에 푸는 것) 아니라 한 문제에 대해서만 생각했습니다. 왜냐하면 예를 들어 문제 1번을 생각하는 데 A가 12분 B가 8분이 걸리고 문제 2번을 생각하는데 A가 10분 B가 15분이 걸렸다고 하면 한문제를 둘이 동시에 풀면 8 + 10... 총 18분이 걸렸을 것을 문제를 각각 나누어 풀면 최악의 경우 A가 1번 B가 2번으로 나누어 풀면 12 + 15... 총 27분까지 시간이 걸리기 때문입니다. (대회 규칙상 컴퓨터는 각 팀당 무조건 1대입니다)
* ["TestDrivenDevelopment"]를 사용했다고 말하기는 그렇지만 테스트 케이스를 입력으로 넣어놓고 프로그래밍 중간 중간에 제대로 돌아가는 지를 확인하기 위해 지금까지의 진행 상황을 출력했습니다.
* 상규와 대회전 연습을 통해 코딩 스타일과 규칙을 미리 정했었던 게 중요했다고 생각합니다. 안그랬으면 알고리즘 이외의 것도 생각해서 속도가 느려졌을 것입니다. 그리고 미리 호흡을 맞춰봤으므로 하면서 딱딱 맞았습니다.
* {{{~cpp int}}}에서 {{{~cpp Over Flow}}}나는 문제가 있었는데 상규가 {{{~cpp __int64}}}를 알고 있었습니다...^^;;;
- AcceleratedC++/Chapter9 . . . . 14 matches
|| 클래스 타입 || string, vector, istream 등 기본언어를 가지고 구현된 타입 ||
C++은 클래스 타입과 같은 사용자가 정의한 어플리케이션 고유의 타입을 정의할 수 있는 많은 기능은 지원한다.
4.2.1절 Student_info 구조체를 다루는 함수를 작성하고, 이를 한개의 헤더파일로 통합을 하는 것은 일관된 방법을 제공하지 않기 때문에 문제가 발생한다.
본 장에서는 기존의 구조체를 확장하여 함수를 작성하고 이런식의 문제를 해결할 수 있는 방법을 알려준다.
그러나 프로그래머는 직접적으로 이런 구조를 다루기 보다는 세부적인 구현을 감추고 싶을 수 있다.
double grade() const; //내부 멤버변수를 활용하여 점수를 계산하고 double 형으로 리턴한다.
read, grade를 정의함으로써 Student_info에 직접적인 접근을 하지 않고도 데이터를 다룰 수 있었다.
그런데 더 나가서 이제는 아예 이 객체의 내부멤버를 프로그램의 다른 부분에서 다루는 것을 금지시키고 싶다면?
name 멤버 함수와 같이 클래스 내부에 정의를 하는 것은 inline으로 함수를 정의하는 것도 동일한 효과를 가진다. 이렇게 멤버변수에 접근을 위해서 만들어지는 함수를 통칭 '''접근함수(accessor function)'''이라고 부른다.
인자로 받은 변수들을 직접 접근하지 않고 그 멤버함수로 접근한다.
만약 s:Student_info 에 read(istream&)을 통해서 데이터를 입력하지 않고서 s.grade()를 사용한다면 프로그램을 에러를 낼 것이다.
'''※ 이런 식으로 헤더파일을 제공하고 실제의 구현된 소스파일은 이미 컴파일된 obj파일로 제공한다면 실제로 판매되는 컴파일러라도 그 컴파일러가 제공하는 함수의 실제구현은 볼 수가 없다.
헤더파일은 단지 컴파일러가 컴파일을 할때 이런 함수가 존재한다고 가정만 하고, 실제로 그 함수의 코드가 존재하는 것을 확인 할 수 잇는 것은 모든 관련 오브젝트 파일을 링크한뒤에 호출할때 없다는 것을 확인할 수 밖엔 없다.'''
- MFCStudy_2002_2 . . . . 14 matches
* [08/08] - 다음 주에 모이려고 했는데 8월 15일 광복절입니다. 저는 상관 없지만 불가능하신 분들은 미리 이야기를 해주세 요.
* 질문하고 싶은 것을 이곳에 써주세요 ^_^
* 선에는 직선만 포함되나요 아니면 곡선도 포함되나요? 그리고 책은 샀습니다-성재
* 각종 잡담/하고싶은 말을 이곳에 써주세요 ^_^
- 뭐 정모 있으면 다른날로 옮기면 되고 정모 방학때는 한달에 한번이라던데......
* 다들 숙제는 잘 하고 있습니까?????? 이제 2일밖에 안남았는데.. 허허..
* 내가 누군가에게 위키에 배운것 올려달라고도 한거 같은데.. 모임날짜랑 숙제도 안알려주다니..좀..실망인데요.. 좀 챙겨줬음 좋았을텐데.. 안간것도 아니구 못간건데..투덜투덜...-_-(이라고 말하고는 있지만 매우 속쓰림......) -성재
* 그 날의 감상이나 고쳤으면 하는점 등을 써주세요.
책이 없어서 그런지 좀 정리가 안된 느낌이다. 책을 빨리 사야겠다..함수를 몇개 배운거 같긴 한데 기억이 잘 나질 않으니..기억나는 사람이 이 페이지에 내용을 올려놨음 좋겠다.그리고 앞으로 스터디 할 때 책을 중심으로 차근차근 진도를 나가면 좀 정리가 될것 같기두 한데..-은지 [[BR]]
''덧붙임. 비단 윈도우 프로그래밍뿐만 아니라 다른 어떤 종류의 프로그래밍을 하더라도 레퍼런스(라고 해야하나.. 적당한 단어가 생각이 안나네요..;;)는 없어서는 안되죠'' - 임인택
열심히! 라고는 하고싶지만..에구... 공부 엄청 해야겠습니다..
- ModelingSimulationClass_Exam2006_1 . . . . 14 matches
(a) (5 points) 스케쥴 표 주고..(이번에는 Single Queue, Single Server) 이 시뮬레이션에서 사용되는 상태와 이벤트에 대해 쓰시오.
Step 2) 실기 시험. 필기 시험 합격자에 한해서 치루게 된다. 시험은 차 2대를 가지고 이루어지며, 시험을 준비하는데 1분의 시간이 소요되며, 보통 6분 가량의 시간이 소요된다. 단, 시험 도중에 결격 사유가 발견될시 6분이 안되어도 시험이 종료되게 된다.
(a) 해당 모델을 구성하고 필요할 경우 가정을 해도 좋다. (7 points)
(b) 구성된 모델이 안정적인지 명확한 이유를 대고 설명하라. (3 points)
3. Triangular Distribution 그래프 주고
1) 나의 경우 해당 문제를 간단한 확률 모델 + Single Queue, Multi Server 의 문제로 파악했다. 확률모델은 1차 합격자를 가리는데 쓰이고, SQMS모델은 실기 시험을 가리는데 사용하고, 가정으로 실기 시험은 7분을 최고 점으로갖는 Triangle Distribution 이라고 가정하고 풀이했음.
2) 부족한 시간, 랜덤함수를 사용할 수 없는 상황이라는 점을 말하고, TD 의 기대치를 구했다. 대충 구해보니 7.55 분가량이 소요된다는 사실을 알았다. (좌우 대칭형으로 가정했기 때문에... -_-) 따라서 한 패거리의 실기 시험합격자의 최대 인원은 40명 소요되는 시간은 총 5시간이지만 SQMS 모델이 큐잉에서 최대의 효율을 발휘 할 수 있으므로, 양쪽의 서버에 반씩을 나누어서 시험을 보면 2시간 반가량이 필요하다고 판단. 필기가 종료되는 시간은 10:00 + 2:30. 14:00 + 2:30 따라서 당일의 시험이 완전히 종료되는 17:00 분 안에 시험을 끝낼 수 있기 때문에 해당 모델은 안정하다고 적긴적었다. -_-;;
단 문제는 서버 처리 시간이 편차가 분명히 클텐데 이를 고려못해서 좀 안습인답. 솔직히 나도 3번 계산하다가 시간을 다 보내서 -_-;; - [박영창]
- TddRecursiveDescentParsing . . . . 14 matches
RecursiveDescentParsing 을 TFP 로 시도를 해보려고 하는데.. Parser부분에 대한 test 의 결과를 얻기 위해서는 AST를 얻도록 해야 하고, AST를 조금씩 구축해나가는 방향으로 디자인유도중인데. 이 아이디어 생각하려는데 1시간을 소비했다. 흡;
''먼저 "1"을 넣으면 "1"을 리턴하는 프로그램을 만듭니다. 다음 "314"를 넣으면 "314"를 리턴하게 합니다. 다음엔, "1 + 0"을 넣으면 "1"을 리턴하게 합니다. 다음, "1 + 314"를 넣으면 "315"를 리턴합니다. 다음, "1 + 2 + 314"를 하면 "317"을 리턴합니다. 다음, "1 - 0"을 하면 "1"을 리턴합니다. 다음, "1 - 1"을 하면 "0"을 리턴합니다. 다음, "314 - 1 + 2"를 하면 "315"를 리턴합니다. 다음, "- 1"을 넣으면 "-1"을 리턴합니다. 다음, "( 1 )"을 넣으면 "1"을 리턴합니다. ...... AST는 아직 생각하지 말고 당장 현재의 테스트를 패스하게 만드는데 필요한 것만 만들어 나가고 OAOO를 지키면서(테스트코드와 시스템코드 사이, 그리고 시스템 코드 간) 리팩토링을 지속적으로 합니다 -- 그렇다고 파싱 이론을 전혀 이용하지 말라는 말은 아니고 YAGNI를 명심하라는 것입니다. 그러면 어느 누가 봐도 훌륭한 디자인의 파서를 만들 수 있습니다. DoTheSimplestThingThatCouldPossiblyWork. --김창준''
* 아. 이번 레포트에서 요구하는 것이 계산기는 아니고, 간단한 언어에 대한 파싱 유도과정을 보여주고 에러처리하는 것이다보니, 구체적인 결과를 얻는 부분이 모호하다 판단이 들어서요. 그래서 조금 더 명시적으로 보이는 DOM 형태의 AST를 구하는 형태로 접근했습니다. --석천
대강 다음과 같은 식으로 접근했고요. 테스트코드 2-3줄쓰고 파서 메인코드 작성하고 하는 식으로 접근했습니다. (["Refactoring"] 을 하다보면 FactoryMethodPattern 과 CompositePattern 이 적용될 수 있을 것 같은데, 아직은 일단.)
문제점 : 테스트 가능할 수 있는 아이디어가 나오기까지가 오래걸렸다. 테스트 가능한 방법으로 접근하고 나서부터의 코딩은 1-1.5시간정도밖에 안걸렸지만. 그리고 본래의 스펙에는 AST 에 대한 언급이 없었다. 해당 함수가 제대로 호출되었는지를 근거로 접근하는 것이 나았을지도.
- Trac . . . . 14 matches
Trac 은 SubVersion 에 대한 인터페이스를 제공하며 위키와 통합되어있고 편리한 레포트 기능을 제공해준다.
Trac 은 이슈에 대한 서술과 커밋 메세지에 대해서 위키 태그를 지원하며, 버그,테스크,체인지셋,화일,그리고 위키 페이지들 간에 대해서 seamless 한 참조가 가능하게 해준다. timeline(타임라인)은 모든 프로젝트 이벤트를 순서에 맞게 보여주며, 프로젝트에 대한 오버뷰를 얻는 것과 트래킹 진행을 매우 쉽게 해준다.
dev를 위해서는 사실 위의 링크들의 설치 방법은 거의다 쓸모 없다. Trac이 10->11로 넘어가는데 오래 정체되고 있는 이유는 내부를 대폭 개선하고 있기 때문이다. Template engine과 소스 컬러링 엔진을 바꾸었고, 기존의 plugin으로 존재하던 유용한 관리 도구들을 모두 결합하고 있다. 자료 구조도 손보고 있다. NeoCoin이 몇달간 dev버전을 사용해 보면서 별 무리 없이 이용하고 있다.
trac과 subversion 연동된 것을 보고 싶으면 다음 페이지들을 구경해보길.
* 오 멋진대요? 설치해보고 싶은데 ㅡ.ㅡ;
갈수록 오픈소스 진영에서 널리 쓰이는 중~ (최근에 구경한 프로젝트들 중 꽤 많은 녀석들이 쓰고 있었던지라..) --[1002]
* 난 링크 건 것 밖에 없어.;; 압박씩이나..~ (으흐흐) 그나저나, 시스템만 있으면 별 소용이 없고, 실제 이를 이용해먹는 프로젝트가 있는게 좋겠는데.. Toy Project 하나 만들어볼까.. --[1002]
* Perky 님이야 개인 플젝 말고도 하시는게 많으시니..; [1002] 의 경우 지금 랩에서 SVN 설치하고 랩 선배랑 같이 작업중. (주로 VC++ 프로젝트) 요새 개인 플젝 할 짬이 안나서 ZP 에 프로젝트를 못올리네. 암튼. 틈나는대로..~ --[1002]
- VendingMachine/세연/1002 . . . . 14 matches
3. 긴 메소드 - 함수 & 메소드를 따로 추출. 즉, 하나의 함수 내에서 하는 일들이 많다고 생각될 때. [[BR]]
여기서는 저 위의 1-4번 원칙만 생각해 보겠습니다. 일단 이 코드가 제대로 돌아간다는 가정하에서 수정합니다. (문제는 제대로 고쳐졌는지 확인할 길이 적다는. -_-;)
MENU_END 뜻이 달라졌으므로, 앞에서 MENU_END를 썼었던 다른 것들도 고칩니다.
그러면, {{{~cpp isValidMenu}}} 를 다음과 같이 고칠 수 있습니다. (써놓고 보니 그리 맘에 들진 않지만, 일단 이정도만 해두겠습니다. -_-;)
하지만 이건 추후에 Vending Machine 에서 메소드를 다른 클래스에게로 이양시켜주면서 UI 부분과 관련한 클래스를 추출해 낼 수 있을 것 같다고 생각합니다. 여기서는 추후에 진행하도록 하겠습니다.
디자인을 할때에 보통 Input / Output 은 요구사항이 자주 바뀌므로 일단 메인 Vending Machine 코드가 작성되고 난 뒤, Vending Machine 의 인터페이스에 맞춰서 Input / Output 코드를 나중에 작성하는 것이 좋습니다.
'무엇을 하는가' 라고 할때 InsertMoney 또는 InsertCoin 이 더 정확한 표현이라 생각되어집니다. 그리고, 역시 하는 일에 대해서 메소드로 추출함으로서 comment 를 대신 할 수 있습니다.
그리고, 메소드로 추출하면 좋은점이, 코드를 고칠 부분을 메소드 내로 시야의 폭을 줄일 수 있습니다. 작은 메소드라도 추출해두면 나중에 다시 메소드를 모으거나, 중복을 없애기가 편리합니다.
이 부분에 대해서 이미 일반화 공식을 만들었음에도 불구하고 불필요한 switch & case 문이 있습니다. 이 부분에 대해서는 많은 코드를 줄일 수 있겠습니다.
그리고, select_drink-1 식으로 쓴 것이 많은데, 이 이유는 아마 번호를 1,2,3,4 ... 로 찍기 위함일 것입니다. 그리고 select_drink 또한 vending_machine 의 멤버인데, 특별히 하는 일이 없는 한 지역변수로 두는것이 낫습니다.
- VonNeumannAirport/1002 . . . . 14 matches
언어는 C++ 로 할 것이고 중간에 STL 중 vector 를 간단하게 이용할겁니다. (자세한 이용법은 나도 모르는 관계로 -_-;) 일단 저는 이 문제를 한번 풀어본 적이 있습니다. 연습삼아서 새로 풀어봅니다.
문제는 암튼 이해했고 (Input 에 대한 Output 이 머릿속에서 어떻게 해야 할지 연결이 된 상태) 가장 간단하게 테스트할 수 있는 방법에 대해 생각해야 하겠군요.
이를 Target으로 잡으려니, 더 커보이고, 이를 작은 Test 로 나눠봅니다.
여기서 잠시 CppUnit 셋팅을 맞춰놓고.
헉. 30분동안 프린트 하신다고 자리필요하신 분 때문에 지연. -_-; 다시 시작;
에러가 난다. C++ 에서는 터플이 없으므로.. -_- 배열을 넘기는 방법이 있고, vector 를 이용하는 방법이 있습니다. 저번에는 배열로 했기 때문에 이번엔 vector 로 해본다는. ^^;
getDistance ()의 경우 두 city gate 간의 거리이다. 일단 스텁 코드를 작성해두고,
이 인터페이스도 수정하길 컴파일러가 바라고 있다. 원하는대로 해주자.
기존의 테스트들이 전부 깨졌다. 기존의 테스트는 getTraffic 와 관련한 부분이고, 우리가 수정한 부분은 getDistance 이다. getDistance 에 촛점을 맞추자.
여기서 Test - Code 의 시간이 꽤 길었다. (9분) 함수 refinement 부분에서 STL 에 있는 find 함수를 함 써먹어 보려고 했다가;; 결국은 평소 하던데로 했다. ^^;
근데, Refactoring 에 대해서만 1시간을 쓴 것 같다. 그것도 메인 코드인 Configuration 클래스 보단, Test 코드에 대한 Refactoring 이 주가 된 것 같다. 실질적인 실용성을 볼때, 메인 코드에 대한 Refactoring 위주로 나가는 것이 좋을 것 같다. (깨진 Test 는 주로 삭제하는 스타일로 가고..)
Configuration 하나에 대해서는 된 것 같고. 또 테스트 들어갈 것이 없을까... 생각하던중, 이제는 여러개의 데이터가 들어가야겠다는 생각을 하게 되었다. 즉, Configuration 이 2개인 경우에 대해서.
Configuration 이 2개인 경우에 대해서. 이 Configuration 을 가지고 있는 것을 Airport 라고 상정짓도록 하겠다. Airport 는 Configuration 을 등록할 수 있으며, 각각의 Configuration 경우에 대한 Traffic 들을 각 Configuration 에게 물어봄으로서 계산된 Traffic 들을 알 수 있다.
- naneunji/Diary . . . . 14 matches
* MFC 책사서 숙제하기 - 책만샀다. 싸게 사볼려구 발버둥 치다가,, 결국은 센트럴씨티 영풍문고가서 정가를 주고..
* 과외를 하나 더 하기루 했다. 윤석이 동생..근데 과연 잘하는 짓일까...???[[BR]] 모아논 돈이 없는데 과외 하나루 생활하기란..정말 고달프다...개강하구 나선 밥값이 모자르지는 않을지 걱정됬는데..과외가 구해져서 다행이라는 생각이 든다,, 하지만 한편으로는 시간표두 빡빡한데.. 개강하구 나믄 이리저리 치여서 과외와 내 공부..둘 중 하나 혹은 둘 다를 제대루 하지 못하게 될까 걱정된다. 이미 그러한 경험을 한 적이 있기 때문에..더더욱..[[BR]] 돈과 시간..이 둘 사이에서 균형을 잡기란 쉽지 않은 일 같다.
* 고장나서 반년이 넘게 안고치고 버티고 있던 프린터를 고쳤다. 계속 프린트를 쓸 일이 생겨, 더이상 미룰 수가 없었기 때문에 귀찮음을 무릅쓰구 서비스센터까지 갔는데, 원인이 샤프가 껴있었기 때문이란다..ㅡㅡ;;
올 때 타고온 새마을호 기차는..좀 비쌋지만 비싼 값을 한 듯..
DeleteMe) 난생 첨으로 본 것이나... 공부 안해 돈이 아깝다고 생각한거나... 걍 경험이라고 생각한거나... 전부 같은 상황이라는...;; (근데 진짜로 공부 안했다는 것은 나만의 경험일까..ㅜ.ㅜ 강의 끊어서 두번갔으니..;;) --["Wiz"]
프로그래밍파티 첫날..생소한 언어를 고르라구 했는데 내가 고른 python은 생각해보니..한번은 본 언어였음.
보통 가지고 있는 자기 일만 "묵묵히" 열심히 하면 된다는 생각은 수정되어야 할 것 같다. 같이 일한다는게 어렵다는 생각이 드는걸 보면 .. 나두 열려있는 사람은 아닌거 같다...흠..;;
- nilath개인페이지처음화면 . . . . 14 matches
C(Master, 바보 찌질이들은 태클 걸지 말고.) -> Assembly(30% 진행, 일반적 프로그램 크래킹 수준)
자료구조(10%) 알고리즘(0%) JAVA(0%)
Assembly를 모르는 놈은 C를 안다고 할 자격이 없으며(문법만이야 알겠지. 얕은 깊이로 뭔들 못할까. 언젠가 한계가 올것... ㅉㅉ), C++을 안다고 할 자격이 없다.
Assembly가 중요하지 않다고 하는 작자들을 싸그리 제거해 버려야 하겠군...
완전... 물리학과 가서 물리학 공식만 달달 외우고 공식 만드는 방법을 배우지 않는 격이잖아.
그렇다고 깊이 없이 있다가 언제 짤릴지 모르는 두려움은...?
후후... 그나저나... C를 제대로 안배우고 다른걸 배우는 사람들은 큰일인걸...
자바를 3일내에 떼고... C를 마스터 하는데 걸리는 시간이 7일... 주위 사람에게 들어왔지만... 이젠 인정한다...
언어의 세대 차이. C를 제대로 배운 사람(기계어 수준의, 컴퓨터의 기초, C언어의 매우 깊은 분야)이 다른 언어를 배우면 프로그래머가 될 수있고... 그것은 예술이고...
이젠 공부하는 방법 가지고 뭐라 안해야지. 뭐 난 깊이 있게 하는거고... 다른 놈들은 아닌거고...
- 권영기 . . . . 14 matches
* 책을 빌려 놓고 읽지 않는다. 방학 때는 일주일에 두 세권씩 본 것 같은데 학기 시작하면서 독서를 끊었다. - [권영기] 2013/04/15
* 4월 쯤에 혼자서 공부를 하면서 wiki에 기록을 남기려고 했던 것 같은데... 반성을 하게 됩니다. - [권영기] 2013/11/03
* 사실 개인 위키 페이지가 있었다는 사실을 까먹고 있었습니다. 이전에는 그래도 자주 보고 업데이트도 했었는데. 성적은 잘 받았고, 전공과 관련 없는 책도 많이 읽었네요. 작년에 몇 권 정도 책을 빌렸는지 보니까 전공 비전공 합쳐서 65권 빌렸네요. 그래도 39권 정도는 다 읽거나 어느정도 읽고 도움도 많이 받았어요. 읽은 것에 대한 내용 정리가 좀 더 되있었으면 좋았을텐데. 그래도 나름 나쁘지 않네요. 10권 정도는 빌려놓고 안봤고, 16권은 빌린책을 다시 빌려서(...) 그리고 영어 점수랑 한자 급수는 2015년으로 넘어갔습니다. - [권영기] 2015/01/05
* ㅎㅎㅎ 이게 이런식으로 댓글다는것도 생각보다 재밌어요. 나중에 다시 보기도 편하고. 많이 써봐요~ -[김태진]
* 학교 책은 원래 다섯권씩 풀로 빌리고 한권 읽고 나머지 손도 안 댄 체 연체하는 게 재미! - [김수경]
* 제가 그런식으로 하다가 연체료가 하루에 500원씩 늘어나는 상황을 보고 경악하고, 많은 연체료를 냈습죠 ㅠㅠ - [권영기]
- 데블스캠프2003/둘째날/후기 . . . . 14 matches
* 아직.. 3시 50분 벌써부터 졸리다... 오늘은 8queen 에 도전을 했지만 결국 실패했고,,, 그 결과...모든걸 포기하게 되었다... 그래도 점점 무엇인가 알아가는 거 같다.. 8quee에 성공했으면 좋으렸만.... ㅡㅜ;; 내일은 더 열씸히 머리를 굴려서.. 꼭 하나를 완성해야겠다...
휘동아~~ 내일도...밥 싸가지고 올래??? ㅋㅋㅋ -- [손동일]
* 오늘 잘해보리라는 나의 다짐은 저멀리 날아가 버렸다.. '''8명의 여왕'''이 내머리속에서 '''미로'''를 헤매며 '''랜덤워크'''를 하고 있다;;머리가 터지려 한다. 아니 아직 안 터진게 신기할 따름이다.. 아으.. 쓰댕앤 큐;; 당구나 치러 갈까;; 암튼 파이팅이다!! -- ps 나르동~ 또 김치 싸갖고 와라..ㅋㅋ --[변준원]
* 으... 결국 EightQueenProblem의 해결에 실패했습니다. 2학년이나 되가지고 쪽팔리게스리... 대각선 처리가 문제군요. 어쨌든 반드시 해결해야겠군요... -영동
*8Queen 5시간 도전끝에 결국 포기하고 스택과 큐밖에 못했다. 언젠간 성공할테야 -- -- 재선[aekae]
* TDD와 페어프로그래밍으로 상욱이랑 미로찾기를 만들면서 많은걸 깨달았다. 가장 중요한건 네이밍의 중요성! 이름을 이상하게 지어놓고 이상한걸 호출하다가 자꾸 이상하게 나와서, 나중에는 '미로를 무시하고 이동한다.' 라는 말까지 나왔었다.--; 그러면서 중간에 TDD를 잘못했구나 아직 멀었구나 덜 테스트했구나하면서 좌절을 했지만 이름을 고치고 나니 바로 해결이 되는걸 보면서.. 아.. 더불어 CSP는 아직도 이해가 잘 안간다. --인수
* 8퀸 문제를 실패하면서, 프로그램을 짤 때에는 먼저 확실한 알고리즘을 구축해 놓아야 한다고 생각했어요.. 알고리즘부터 틀리게 되면 나중에는 디버깅도 소용이 없다는 사실.. --[문원명]
* 너무 힘들다..제길..ㅠ_ㅠ 한문제도 못풀고..머리에 녹이 슬었..(콜록) [이진훈]
- 블로그2007 . . . . 14 matches
* 블로그, 위키, 게시판 세가지의 장점을 모으고[[BR]]단점을 보완한 새로운 개념의 사이트를 생각해본다.
* [고준영]
|| 날짜 || 김건영 || 송수생 || 송지훈 || 송지원 || 고준영 ||숙제 ||
|| [블로그2007/고준영] ||
*새벽에 책 보다가 불연득 떠오른 생각이 있어서 그대로 해보니까 잘 되는거 같아요~ㅋㅋㅋ[[BR]] 수생이형 신경써줘서 고마워요~ㅎ[[BR]]아 그리고 이클립스 쓰니까 저장만 하면 내장 브라우져로 바로바로 확인 가능해서[[BR]]웹 브라우져 따로 안열어도 되고 참 편해요!! 다만 아직 잘 쓸줄 몰라서...ㅎ[[BR]]근데 정말 상협이형 말대로 더 편하긴 편하네요~ㅋㅋㅋㅋ 남박사님 감사요~ㅎ
* 구글에서 이클립스 찾아서 설치하긴 했는데 코딩하고 Run 돌리니까[[BR]]interpretor 를 정하고 하라고 나오네요. 여기서 어케 해야 하나요?... -송지훈 '''[답변 및 의견 2]'''
* 제목 형식이 잘못됐어.;;그냥 답변 및 의견 이면 제목보고 먼지 알사람이 없지.여기 페이지에다가 정리 하는게 좋을 터인뎅.ㅋㅋ -[송수생]
* PDT - PHP Development Tool PHP 스크립트 엔진을 개발하는 Zend 팀이 Eclipse 진영에 합류후에 PHP개발 툴을 만들기 시작했는데 아직 1.0 까지도 올라가지 않은 개발 중인 제품입니다. 좋기는 하지만, 적극적인 배포도 하지 않고 Ecilpse의 공식 배포 스케줄+환경인 Calisto에도 반영되려면 멀었습니다.
미래에는 PDT로 수렴되겠지만 아직은 정식 버전에 잘 결합이 되지 않을 만큼 불안합니다. 따라서 PHPEclipse를 추천하는데 Web개발을 위해서는 이뿐만이 아니라, HTML Coloring 지원 도구등 여러 도구들이 필요합니다. 귀찮은 작업입니다. Calisto가 나오기 전부터 Eclipse 도구를 분야별로 사용하기 쉽게 패키징 프로젝트가 등장했는데 [http://www.easyeclipse.org/ Easy Eclipse]가 가장 대표적인 곳입니다. 아직도 잘 유지보수되고 있고, Calisto가 수렴하지 못하는 Script 개발 환경 같은 것도 잘 패키징 되어 있습니다. [http://www.easyeclipse.org/site/distributions/index.html Easy Eclipse Distribution]에서 PHP개발 환경을 다운 받아서 쓰세요. more를 눌러서 무엇들이 같이 패키징 되었나 보세요.
- 새싹교실/2013/록구록구/2회차 . . . . 14 matches
(저번 시간에 배운 개념이 섞여 있고, 이게 더 쉬울 수도 있어요!)
#define 에서 message를정의하고 printf("message")와 printf(message)의 차이점
* 반복문까지 나가려고 했는데 못해서 아쉽다... ㅠ_ㅜ -[김상호]
''' 뭔 말이지? 라고 하는 당신을 위한 설명 '''
(깨달은점)강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.
(앞으로의 계획)다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.
printf만 보다가 scanf랑 #define을 보니 많은 것을 알게 된거 같아 뿌듯하고 바보탈출하는 느낌이었다
scanf을 배우고 또 직접 써보고 실행성공 되었을 때 기분이 좋았다
앞으로 더욱더 열심히 공부해서 기초 프로그래밍시간에 똑띠처럼 빨리 실습 끝내고 싶다 ㅎㅎㅎㅎ
scanf는 말로만 들어봤는데, 출력된 화면에서 입력을 할 수 있어서 신기했고
wiki에서 활동했던 내역들을 보니 선배들이 대단한것같고 지금 이걸 치고있는 나도 컴퓨터신동이된 기분이다:-) .
빨리빨리 배워서 실습시간에 혼자힘으로 하고싶다..
- 정모/2011.10.12 . . . . 14 matches
* 참가자 : [김수경], [서지혜], [임상현], [송지원], [김준석], [김태진], [고한종], [송치완], [강소현], [추성준], [정진경], [권순의], [박정근], [황현], [윤종하]
* 부상자(+다리에 쥐가 나신 안타까운 선배님들...ㅜ)가 속출하는 성대한 체육대회였다고 합니다.
* 다음주(중간고사 후) OMS 주자 : [김준석]
* PHP를 공부하고 있습니다. 방명록을 만들 예정입니다.
* Dynamic Programming으로 문제를 풀어보려 했으나 진경이를 제외하고는 accept시키지 못하여 재귀문으로 구현하는 것부터 해보기로 하였습니다.
* 함께 사용하는 공간이니만큼 서로 배려하고 깨끗하게 사용합시다.
== 다음주 예고 ==
* 후기쓰라던 김태진은 왜 먼저 쓰지 아니 하였는가, 오늘 정모 유쾌했구요. 축구는 하기 싫어옄. 기획단은 어지간해선 하려는 성격인데 컴공축제 기획 끝난게 그제인데 바로 연이어서 하는건 심히 정신적 부담이라.... 근데 성준이 하길래 놀람. - [고한종]
* 위에꺼 고치고 있었다. -[김태진]
* 오늘 오신 유상민 선배님께서 ZP의 과거사를 이야기 해 주심과 고대 유물을 전수해주셔서.. 갑작스러웠지만 뜻 깊은 자리였습니다. 그렇게 (소닉 20주년은 알고 있었는데 -_-a) 까먹고 있었던 ZeroPage 20주년 행사를 하게 되어 기쁘네요. 이 행사 이름도 잘 정한거 같아 좋았고요,, 음.. 오늘 OMS는 어디선가 많이 들었던 내용들이 종합적으로 나왔네요 ㅎㅎ 다만 어디선가 들었던 내용들이 좀 더 명확하게 되면서 그냥 녹는줄만 알았던 회충들이 소화가 된다는 사실에........... 음... 여하튼 재미있었습니다. - [권순의]
- 훌륭한프로그래머의딜레마 . . . . 14 matches
열심히씨는 처음 예상 소요 시간인 3개월 동안 정말 열심히 일했다. 하지만 일을 하면서 예상 외의 장애를 직면했고, 밤샘 작업까지 해가면서 3개월의 마지막 날 매니져에게 이런 말을 할 수 있었다. "정말 열나게 프로그램을 짰슴다. 밤샘도 하고요. 제가 지금까지 작성한 프로그램은 2000줄입니다. 그런데, 새로운 문제가 기술적으로 불가피하게 발생했습니다. 복잡한 버그(프로그램의 오류)도 몇 가지 해결해야 하고요. 한 달 가량이 더 필요합니다." 그러고 한달 후 열심히씨는 몇 개의 버그와 더불어 나름대로 작동하는 프로그램을 매니져와 고객에게 자랑스럽게 보여줄 수 있었다. 벌겋게 충혈된 눈과 미쳐 깎지 못한 수염, 무지무지 어렵고 복잡해 보이는 2500여 줄의 프로그램과 함께. "예상보다 훨씬 더 복잡한 문제였군요. 정말 수고하셨습니다."라는 칭찬을 들으면서.
훌륭한씨는 매니져가 "의무적으로" 잡아놓은 예상 소요 시간 3개월의 첫 2달 반을 빈둥거리며 지냈다. 매니져는 훌륭한씨가 월말이 되어서 "정말 죄송해요. 아직 한 줄도 못짰어요. 너무 어려워요. 좀 봐주세요."라고 처량하게 자비를 구할 날을 손꼽아 기다렸다. 웬걸, 마지막 날 훌륭한씨는 예의 "너무도 태연스러운" 모습으로 나타났다. 150여 줄의 프로그램과 함께. 그 프로그램은 멋지게 "열나어려운문제"를 해결했다. 하지만, 매니져가 그 코드를 들여다 보자, 한마디로 "너무도 쉬웠다." 초등학생도 생각해 낼 정도였다. 매니져와 고객은 이름을 "열나쉬운문제"로 바꾸는 데에 전적으로 동의한다. 훌륭한씨는 "이렇게 간단한 문제를 3개월 씩이나 걸려서 풀었습니까? 왜 이렇게 성실하지 못하죠?"라는 비난을 들어야 했다.
열심히씨는 승진하고, 급여인상을 받았다. 훌륭한씨는 급여삭감을 직면하고는 퇴사해 버렸다.
훌륭한 프로그래머는 어려운 문제를 "터무니 없을 정도로 간단한 문제"로 풀어내는 재주가 있다. 남들이 보기에는 그것이 너무도 당연한 해결법으로 보인다. 하지만 그들은 쉽게 생각해 내지 못한다. 그러고는 훌륭한 프로그래머를 우습게 본다.
중간치기나 하치기 프로그래머는 어려운 문제를 어렵게 혹은 더욱 어렵게 풀어내는 재주가 있다. 남들이 보기에는 그것이 너무도 기발한 해결법으로 보인다. 역시 그들은 쉽게 생각해 내지 못한다. 그러고는 중간치기 하치기 프로그래머를 대단하게 본다.
과거 IBM사에서는 프로그램의 줄 수에 따라 급여를 계산했었다. (사실 지금도 이런 회사가 상당수 있다) 그런데 프로그램 줄 수가 늘어날 수록 숨겨진 버그 수와 유지관리에 드는 비용은 기하 급수적으로 늘어나게 된다. 이 문제를 해결하기 위해 프로그램 줄 수는 더 늘어나게 되고, 덕분에 프로그래머는 돈을 더 벌게 된다.
- 1002/TPOCP . . . . 13 matches
* 읽고난 뒤의 나의 생각
다른 사람들이 이용한다는 것도 고려
문제 자체를 아마추어만큼 심각하게 고민하지 않는다.
문제해결방법을 찾는 여러 방법들을 인식하고 있다. 문제를 이해하기 위한 프로그램을 준비하기도 한다
case) 물리 교수로부터 해당 메트릭스를 반전하는 프로그램 작성. 한 개발자는 (A) 뭔가 배울 수 있는 좋은 기회라고 생각, buffering 을 이용하여 문제를 해결하려고 함.
B - 메소드가 장동하지 앟을때, 그냥 drop 해버리고 다른 것으로 교체버림.
프로그래밍의 각 부분에 대해 동일한 능력과 수고가 필요하다고 생각하는 것을 잘못이다.
'분석, 플로우 다이어그램 작성, 코딩, 테스팅, 도큐먼트' 로 분리하는 사고는 여러 면에서 프로그래밍을 왜곡시킨다.
* 실제 순서가 고정적이지 않다.
* 아무도 도큐먼트 작업을 하려고 하지 않을 것이다.
프로그래밍 프로젝트에 대한 전체 한바퀴를 돌고 난뒤, 프로그래머들이 작업하는 더 올바른 방법으로 작업을 나누는 것을 시도한다.
- 5인용C++스터디/멀티미디어 . . . . 13 matches
뷰에 WM_LBUTTONDOWN메시지의 핸들러를 만들고 OnLButtonDown 핸들러에 다음과 같이 코드를 작성한다.
PlaySound 함수를 사용하려면 mmsystem.h 파일을 먼저 include 해주어야 하고,
그 후 컴파일하고 실행한 후 작업영역을 왼쪽 마우스 버튼으로 누르면 소리가 날 것이다. 시스템에 사운드카드가 장착되어 있어야 하며 같은 디렉토리에 Battle.wav라는 파일이 있어야 할 것이다.
앞서 만든 예제를 보면 PlaySound 함수는 사운드 파일 연주가 완전히 종료되기 전에는 리턴하지 않으므로 연주중인 동안은 어떤 일도 할 수 없다. 이런 방법을 동기화 방식이라고 한다.
반대로 PlaySound함수가 연주를 시작해 놓고 곧바로 리턴하는 비동기 연주 방식이 있다.
이번에는 SND_LOOP 플래그를 사용하여 작성해 보고, WM_RBUTTONDOWN 메시지의 핸들러도 같이 만들어보자.
사운드 파일을 연주하는 것은 사용하기는 간단하지만 연주할 때마다 디스크에서 사운드 파일을 읽어와야 하므로 반응 속도가 느리다. 따라서 이 경우에는 사운드 파일을 리소스에 포함시켜 놓고 리소스에서 읽어서 연주하는 방법으로 하는 것이 좋을 것이다.
리소스 뷰의 팝업메뉴에서 Import 메뉴항목을 선택하고 리소스에 포함시키고자 하는 Wave 파일을 선택한다. 그러면 IDR_WAVE1이라는 ID로 리소스에 삽입될 것이다.
리소스에 포함된 사운드를 연주하려면 PlaySound의 세 번째 인수에 SND_RESOURCE 플래그를 주고 첫 번째 인수에 리소스의 ID를 준다. 두 번째 인수에는 리소스를 가진 실행파일의 인스턴스 핸들을 주어야 하는데 MFC에서는 AfxGetInstanceHandle() 전역함수로 인스턴스 핸들을 구할 수 있다. 다음과 같이 코드를 작성해 보자.
MCI를 사용하면 동영상도 아주 쉽게 재생할 수 있다. AppWizard로 PlayAVI라는 SDI 프로젝트를 만들고 WM_LBUTTONDOWN 메시지의 핸들러와 WM_DESTROY 메시지의 핸들러를 다음과 같이 작성한다.
또한 프로젝트에서 이 라이브러리를 사용할 수 있도록 Project/Settings/Link 탭에 vfw32.lib를 추가한다. 그리고 동영상 파일을 프로젝트 디렉토리에 넣어두면 된다.
MCIWnd 윈도우는 마우스 왼쪽 버튼을 눌르면 만들어진다. 그 전에 hWndAVI가 유효하면 먼저 MCIWnd를 닫는 작업부터 해주고 있다. MCIWnd를 만드는 함수는 MCIWndCreate 함수이다.
- AcceleratedC++/Chapter12 . . . . 13 matches
이 구현의 세부적인 작동방식은 모두 Vec 클래스로 위임하였다. 대신에 const 클래스와 const 가 아닌 클래스에 대한 버전을 제공하였고, 표준 string 함수와의 일관성 유지를 위해서 string 대신에 char& 형을 리턴하도록 하였음.
입력 연산자는 일견 객체의 상태를 바꾸기 때문에 멤버함수로 선언이 되어야 한다고 생각하기 쉽다. 그러나 이항 연산자의 경우 파라메터의 맵핑이 좌항의 경우 첫번째 우항의 경우 두번째인자로 받는데, 이렇게 될 경우 멤버함수로 >>연산자를 오버로딩하면 우리가 워하는 결과를 얻을 수 없다.
while(is.get(c) && isspace(c)) // 입력이 있고 값이 공백이라면 무시
따라서 우리는 operator>>를 public 멤버로 만들고 data에 대한 쓰기 권한을 가지게 해서는 안된다.
그리고 operator+=() 역시도 구현해야할 필요가 있다.
이런식으로 동작하게 하면 임시 변수의 생성으로 인한 오버헤드가 상당함으로 알 수 있다. 이런 문제를 해결하기 위해서 string 클래스는 자동변환에 의존하지 않고, 피연산자들의 모든 조합에 대해 결합 연산자를 제공한다.
이항연산자는 비 멤버함수로 설계하는 것이 좋다. 이유는 멤버함수의 경우 첫번째 인자가 객체의 특정형으로 고정되기 때문에 자동 형변환을 이용할 수 없기 때문이다. 즉 대칭성(symmetry)를 유지하는 것이 가능하다.
만약 explicit 으로 Vec 클래스의 Vec<T>::Vec(size_type n) 을 정의 했다고 가정하고 다음의 코드를 보자
void* 타입의 포인터는 어떤 객체라도 가리킬 수 있는 포인터 이므로 '''유니버셜 포인터(universal point)'''라고 부른다. 그러나 그러나 포인털르 역참조하는 것은 불가능하다. 그러나 bool 타입으로의 변환은 가능하다.
그렇다고해서 data가 가리키는 포인터를 바로 넘기면 프로그램에서 그 포인터를 통해서 데이터의 수정을 할 수 잇기 때문에 캡슐화의 장점이 사라진다.
이 것을 해결할 방법은 data의 복사본을 만들어서 그 것을 리턴하고 사용이 끝난 뒤에는 복사본을 제거하는 방식으로 해결이 가능하다.
|| copy(char* ) || 인자로 받은 char*의 공간에 내부의 문제들을 복사해 넣는다. char*공간은 프로그램가 할당하고 해제하는 공간이다. ||
- DevOn . . . . 13 matches
* [정진경] - 앞 부분 못 들음. 연사는 팀 내 코드 리뷰는 문화이고, 팀 내 공감대가 없으면 효과가 없다는 것을 강조함. 코드 리뷰가 잘 안 되고 있는 사례로 '패치 몰아서 리뷰 요청하기'가 있는데 내가 그러고 있어서 반성하고 있음.
* [정진경] - Gnome 3.10 즐기기는 잘 기억나지 않는다... 미안.. 진크리에이터... Wayland는 나름 도움이 되었는데, X 서버가 컴포지터가 인터프로세스 통신을 한다는 사실을 처음 알게 되었다. Wayland는 X 서버와 컴포지터가 합쳐져 있는 형태이고, 프레임버퍼를 위한 API가 제공된다는 것.. 이 부분은 나중에 공부해서 해당 페이지에 자세한 내용을 기술할 필요가 있을 것 같다...
* [정진경] - 듣고 싶었는데 못들었음. 들으신 분?
=== 명신고 컴퓨터 AI 연구소 ===
* 아주대 알고리즘 동아리
* 퀴즈 맞추면 머그컵 준다길래 눈으로 풀고 답 맞추기. 1번 문제인 ANSI의 뜻이 뭔가가 가장 어려웠음. -[김태진]
* 다음의 웹 접근성 테스트 프로세스에 대해 설명 들음. QA팀 외에 웹 접근성을 테스트하는 팀이 따로 있다고. 보통 QA가 전부 다 하는게 아닌가 했지만 2013 하반기 신입전형에서 웹 접근성 보고서를 읽고 1500자 글을 쓰게 한 것으로 보아 매우 진지하게 생각하고 있는듯. - [서지혜]
- GDG . . . . 13 matches
* ZeroPage의 활동 모습과 Google이 주최하는 다양한 행사에 참여하는 모습을 보고 결정하겠다고 함.
* GDG Pre-DevFest Hackathon 2013 에 참여하고, GDG DevFest Korea 2013의 HackFair 안드로이드 애플리케이션 공모전에 작품 출품.
* with [고한종], [조영준], [장혁재], [김민재], [조광희]
* 고학년 분들이나 타과생들이 들어오기 편할 것
* 보고서를 좀 많이 써야 함
* 큰 행사는 GDG를 설립하지 않고도 Std.IO로 진행할 수 있음
* OpenCamp가 별로 좋지 않다는 의견으로 보일 수 있어 부연합니다. ZeroPager가 원하는 활동이 있다면 그것을 하면 되지 굳이 OpenCamp와 같은 방식의 세미나를 고집할 필요는 없다는 의미입니다. - [김수경]
* 현 ZeroPager들의 성향을 고려해야
* 대학의 이름(중앙대)을 걸고 설립을 할 수는 있어도 동아리의 이름(ZeroPage)을 걸고 설립을 할 수는 없음 (확인 요망)
* 별개의 조직으로 만들고 제로페이지 임원진과 GDGCAU 임원진은 안겹치도록. 회원은 자유.
* Chapter Status Requirements 활동이 제로페이지의 활동과 겹치는 부분이 많다고 생각함. 이 부분에 대해서 제로페이지 위주로 활동을 할 것인지, GDG 활동을 할 것인지에 따라 필요 유무가 확실하게 갈릴 것으로 보임 - [이봉규]
- JTDStudy/첫번째과제/상욱 . . . . 13 matches
* TDD로 만들려고 하니 적응도 안되고 해서 시간이 꽤나 많이 걸리네요^^; 프로그램을 위한 테스트라기 보단 테스트를 위한 프로그램이 되어지는 느낌이 팍팍;;; 하지만 장점이 많은 방법이라 앞으로 더 연습을 해 봐야겠네요~ - [상욱]
* 테스트 코드를 갖고 어떻게 해야하는지 잘 모르겠어요. import junit.framework.TestCase 구문이 있던데 이것은 어디서 가져와야 하나요? -_-;; - [문원명]
* 일단 테스트 무시하고 해. JUnit사용하는 방법은 나중에 알려줄테니깐. - [상욱]
* 그리고 스펙을 좀더 명확하게 하면 짜는 입장에서 더 쉬울 겁니다. 그러니까. [숫자야구] 같이 말이지요. 그리고 예외처리 하세요. 아래와 같이요. --NeoCoin
* ㅋ... Python... 요새 조금씩 보고 있지만 쓰기 괜찮은 언어라고 생각이 들더군요^^ - [상욱]
* 나는 Python이든, Perl이든 반드시 학습 해야된다고 생각한다. 그래야 다른 언어들을 잘 쓸수 있었다. 예를들어 Java Collection Framework를 알고는 있었지만 잘 손이 안나갔는데, STL과 Python을 익히고 나니까 아주 손쉽게 쓰게 되더구나.
* 이 언어들의 시작점으로는 간단한 계산이 필요할때 계산기보다 열기보다 늘 IDLE나 rib(ruby)를 열어서 계산을 하지. 예를들어서 [http://neocoin.cafe24.com/cs/moin.cgi/ET-house_%ED%99%98%EA%B8%89%EC%BD%94%EC%8A%A4?highlight=%28et%29 et-house환급코드 in CenterStage] 같은 경우도 그래. 아 그리고 저 코드 군에 있을때 심심풀이 땅콩으로 짜논거. SeeAlso [http://neocoin.cafe24.com/cs/moin.cgi/%EC%95%BC%EA%B5%AC%EA%B2%8C%EC%9E%84 숫자야구 in CenterStage]
* 허나 과거는 잊어버리는 모양이다. 열혈강의 Python을 보니 옆면에 열심히 본 흔적이 있군. Ruby도 SVN history를 보니 흔적이 많이 남아있고.. 어느정도 시간을 투자해야 되는 것 같아. --NeoCoin
- JavaStudy2004/클래스상속 . . . . 13 matches
각 클래스는 상위클래스(superclass)를가지며 하나 이상의 하위클래스(subclass)를 가진다.클래스들의 계층을 따라 내려가는 것을 상속된다고 한다.
자바 클래스를 새로 작성할 때 대부분 다른 클래스가 가지는 정보와 몇 가지의 추가적인 정보를 가지게 할 것이다. 예를 들어 새로운 Button을 만들려고 한다면 클래스에 Button으로부터 상속받을 수 있도록 정의하기만 하면 된다. 따라서 Button과 다른 특징에 대해서만 신경 쓰면 된다.
이러한 메커니즘을 subclassing이라고부른다.
많은 클래스를 만들기 위해서는 기존의 클래스 계층을 이용할 수도 있고, 자신만의 클래스 계층을 만들 필요도 있다. 이러한 계층을 만들기 위해서는 몇 가지 생각할 점이 있다.
* 다른 클래스에 공통적인 정보를 추출해서 상위클래스에 넣고 하위클래스에서 다시 사용하도록 한다.
예를 들어 Motorcycle클래스와 같이 Car라는 클래스를 만드는 것을 생각하자. Car와 Motorcycle은비슷한 특징들이 있다. 이 둘은 엔진에 의해 움직인다. 또 변속기와 전조등과 속도계를 가지고 있다. 일반적으로 생각하면, Object라는클래스 아래에 Vehicle이라는 클래스를 만들고 엔진이 없는 것과 있는 방식으로 PersonPoweredVehicle과 EnginePoweredVehicle 클래스를 만들 수 있다. 이 EnginePoweredVehicle 클래스는 Motorcycle, Car, Truck등등의 여러 클래스를 가질 수 있다. 그렇다면 make와 color라는 속성은 Vehicle 클래스에 둘 수 있다.
인스턴스 변수의 경우 클래스에 새로운 변수를 만들었다면, 현재 클래스의 변수와 상위클래스에서 정의된 모든 변수를 가질수 있다. 따라서 모든 클래스들의 조합으로 현재의 객체를 위한 템플릿을 형성하게되고 필요한 정보를 채우는 것이다.
만일 하위클래스에서 상위클래스의 메소드의 이름과 인자의 타입을 똑같이 가진 메소드를 정의한다고 하면 어떻게 되는가? 이것은 계층적으로 아래에 있는 것이 먼저 실행되게 되어 있다. 이러한 방식으로 임의로 상의클래스의 메소드를 감추고 하위클래스에 필요한 메소드를 정의할 수 있다. 바로 중복(overriding)이라고 부르는 것이다.
* 디폴트 전달인자라는 것하고 질문이 무슨 뜻인지 잘 모르겠습니다 ; --[iruril]
* 고맙습니다~^^
- JavaStudyInVacation/진행상황 . . . . 13 matches
Moa:HelloWorldConsideredHarmful 보시고, 해당 페이지의 파일도 받아서 음미(?) 해 보세요.
SWT 관련 상식 수준 - 한글자료가 별로 없군요. 뭐니 뭐니해도 여러분이 쓰고 계시는 Eclipse 겠지요.
See Also ["Java/NestingClass"] 정진균 군이 수고해 주셨습니다. 그냥 이렇구나 하고 읽어 보세요. --NeoCoin
* 에플리케이션과 에플릿의 차이점에 대해서 알아보고, 그 쓰임에 대해서 알아보기.
이런것들은 다 같이 찾아보고, 다 같이 토론하고, 다들 이해했으면 하나로 정리해서 써두 될텐데요^^ 위에 AWT와 SWING의 차이도.. 그리고 아래 네트워크를 사용하는 방법도 마찬가지구요~ 이렇게 각자 쓸것까지야... --["상규"]
* 그 에플릿을 포함하고 있는 HTML 문서를 만들어 각자 자기 계정에 올리고 위키에 링크 걸기.
'''''이거부터는 각자 하지 말고 같이 하라고 했는데요....''''' ["JavaStudyInVacation/과제"]를 잘 읽고 하세요. 아무래도 내일 다 끝내는건 무리가 있는듯 하군요. 다음주에는 제가 계속 학교에 있습니다. 다음주에도 계속하겠습니다. 이번주처럼 계속 참여해주세요. --["상규"]
- NumericalAnalysisClass . . . . 13 matches
전산학에서 OOP의 발전을 별로 수용하지 않은 대표적인 두 영역이 컴파일러와 수치해석 쪽이다. 또한, 대부분의 수치해석 교과서들은 잡다한 기법과 코드의 백과사전 수준에서 그치고 있다.
하지만 이 책은 다르다. 어떤 문제를 접했을 때 어떻게 프로그램을 새로 만들어 내야하는지, 디자인은 어떻게 해야하고, 훌륭한 프로그램을 어떻게 만드는지를 말하고 있다. 게다가 OOP를 "정말" -- 시늉으로써만이 아니고 -- 사용한다. 모든 코드가 Java와 Smalltalk 양자로 쓰여있는 점도 큰 장점이다.
이 과목을 재미있게 공부하고 싶은 모든 이들에게 추천하고 싶다.
세간에서 간혹 추천서적으로 꼽히기도 하는 Numerical Recipe 시리즈는 사실 전문가들로부터 "최악의 책"으로 꼽히고 있다. 단순히 책의 구성이나 깊이 등을 떠나서 잘못된 정보가 너무 많다, 수치해석에 대해서는 아마추어의 수준도 못되는 사람이 썼다는 비판이다. 인터넷에 이 책에 대한 전문적인 서평이 많이 있다 -- 문제점 하나하나 꼼꼼하게 비판한 것이다.
과목 자체의 진행은 괜찮다고 생각. 교과내용이 바뀐뒤의 첫 적용이여서 그런지, 교재내용에 없는 내용이 자주 언급되었다. (근데, 이게 그 예전 책의 내용인듯 하다는. -_a) 도서관에서 두권정도 책을 섞어봐야 할듯. (Applied Numerical Analysis 던가.. 이 책에서 내용이 수업과 비슷했던걸로 기억). 뭐. 중간에 설명하시다가 틀리시는것만 빼면 -_-; 그래도 인간성과 중간중간 인생선배 (실제로도 학과 선배이시니)로서의 조언으로 보완을. ^^;
음.. 또하나의 단점이라면..--; 윤교수님은 쉬운건 너무 자세하게 설명하시고.. 어려운건 너무 대충 설명하시는 경향이 있는것 같습니다. --인수
생각하면 2학년에 들을 만한 3학년 수업정도라고 생각됨. 수업의 난이도도 그다지 높게 책정하고 진행되지도 않고, MFC에 대한 기본적 스킬만 익히고 있다면 마지막 과제까지 해결하는데 큰 문제는 없음 - [eternalbleu]
- PairSynchronization . . . . 13 matches
하나의 대상을 놓고 둘이서 서로 번갈아가며 그리는 방법. 이때 그림은 쉽게 변경할 수 있어야하므로 화이트보드를 쓰는것이 좋다. ''' ''적합한 페이지 이름 찾습니다.'' '''
1. 이야기 하고자 하는 대상을 정한다.
1. 순서를 바꿔가며 하나의 개념을 화이트보드에 그리고, 각 개념은 선으로 그어 표시한다. See Also: MindMapConceptMap
* 한 번에 하나의 개념을 나타낼 수 있고, 하나의 선을 연결 할 수 있다.
* 다른 사람은 하나의 개념을 나타내거나, 이미 나타나 있는 개념에 선을 연결하고 설명함으로써 한 턴을 대신할 수 있다.
1. 추상적인 내용을 구체적으로 보고 이야기 할 수 있다.
["sun"]은 기존 프로그램의 업그레이드 작업에 새로 한명의 파트너와 함께 둘이 작업하게 되었다. XP를 개발에 적용해보기로 하고, 프로그램 디자인에 CrcCard 섹션을 이용하고자 했다. 처음 CrcCard 섹션을 진행해서 그런지, 별다른 진척이 보이지 않아 우선 화이트보드를 이용해서 개념을 정리해보고자 다른 색의 마커를 들고 한 번에 하나씩 개념을 그리고 선을 이어 나가며 디자인을 했다.
* 자신의 생각과 일치하지 않는 개념이나 연관관계가 나올시, 바로 피드백을 하고 서로 토론을 한 후 화이트보드에 개념이나 관계를 추가해 나가게 되므로 생각 공유의 시간이 빨라졌다.
상민이랑 ProjectPrometheus 를 하면서 CrcCard 세션을 했을때는 CrcCard 에서의 각 클래스들을 화이트보드에 붙였었죠. 그리고 화이트보드에 선을 그으면서 일종의 Collaboration Diagram 처럼 이용하기도 했었습니다. 서로 대화하기 편한 방법을 찾아내는 것이 좋으리라 생각.~ --["1002"]
- ProgrammingWithInterface . . . . 13 matches
책에서는 말한다. 많은 개발자들이 [[OOP#s-1.2|인터페이스]] 보다는 [[OOP#s-1.2|상속]]을 사용하여 개발한다고... 그렇다! 사실이다. 나도 여지껏 인터페이스로 무장한 코드를 보지 못했다.
언제나 개발을 할 때 '어라~ 같은 일 하는데? 이거 Base 클래스 만들어서 위로 올려야 겠는데?' 일말의 틈도 주지 않고 실행한다. 다형성을 사용하는 코드를 생성한다. '와우~! 한결 깔끔해 졌는걸?' 하지만 오산이었다. 시간이 지나서 먼가 추가할 동작들이 생겼다. 이제 고치기 시작한다. Base 클래스 부터... 고치고 나니 컴파일이 되지 않는다. 코드 수정의 여파가 하위 클래스들에게 까지 미친다. 정말 미친다. 이런 상속을 통한 계층 구조는 상위 클래스와 하위 클래스의 결합도를 높여준다. 지나 치게 크게..! 동감하지 않는가? 하나를 고쳤는데 수정할 꺼리가 마구 쏟아지는 상황을...
상속을 사용하는 상황을 국한 시켜야 할 것같다. 상위 클래스의 기능을 100%로 사용하면서 추가적인 기능을 필요로 하는 객체가 필요할 때! .. 이런 상황일 때는 상속을 사용해도 후풍이 두렵지 않을 것 같다. GoF의 책이나 다른 DP의 책들은 항상 말한다. 상속 보다는 인터페이스를 통해 다형성을 사용하라고... 그 이유를 이제야 알 것같다. 동감하지 않는가? Base 클래스를 수정할 때마다 하위 클래스를 수정해야 하는 상황이 발생한다면 그건 인터페이스를 통해 다형성을 지원하는게 더 낫다는 신호이다. 객체는 언제나 [[SOLID|SRP (Single Responsiblity Principle)]]을 지켜야 한다고 생각한다.
상위 클래스가 가지는 메소드가 적다면 모두 [오버라이딩]하는 방법이 있지만 만약 귀찮을 정도로 많은 메소드가 있다면 오랜 시간이 걸릴 것이다. 그리고 만약 상위 클래스가 수정된다면 다시 그 여파가 하위 클래스에게 전달된다. 또 다른 방법으로 함수를 오버라이딩하여 예외를 던지도록 만들어 원치않는 호출을 막을 수 있지다. 하지만 이는 컴파일 타임 에러를 런타임 에러로 바꾸는 것이다. 그리고 LSP (Liskov Sustitution Principle : "기반 클래스는 파생클래스로 대체 가능해야 한다") 원칙을 어기게 된다. 당연히 ArrayList를 상속받은 Stack은 clear 메소드를 사용할 수 있어야 한다. 그런데 예외를 던지다니 말이 되는가?
자.. Stack과 ArrayList간의 결합도가 많이 낮아 졌다. 구현하지 않은 clear 따위 호출 되지도 않는다. 왠지 합성을 사용하는 방법이 더 나은 것 같다. 이런 말도 있다. 상속 보다는 합성을 사용하라고... 자 다시 본론으로 들어와 저 Stack을 상속하는 클래스를 만들어 보자. MonitorableStack은 Stack의 최소, 최대 크기를 기억하는 Stack이다.
깔끔한 코드가 나왔다. 하지만 MonitorableStack은 pushMany 함수를 상속한다. MonitorableStack을 사용해 pushMany 함수를 호출하면 MonitorableStack의 입력 받은 articles의 articles.length 만큼 push가 호출된다. 하지만 지금 호출된 push 메소드는 MonitorableStack의 것이라는 점! 매번 size() 함수를 호출해 최대 크기를 갱신한다. 속도가 느려질 수도 있다. 그리고 만약 누군가 Stack의 코드를 보고 pushMany 함수의 비 효율성 때문에 Stack을 밑의 코드와 같이 수정했다면 어떻게 될 것인가???
- 금고/문보창 . . . . 13 matches
== 금고 ==
바로 코드 짜면 저번처럼 망해버릴 것만 같아서, 점화식 만들고, 간단히 증명까지 하고 코드를 짰다. 층수 n, 금고수 k 라 할때, 현재 복잡도 O(nk). 구간 값을 저장한다면 메모리와 시간 모두 더 줄일수 있을 것이다.
T(n, k) 를 층수 n 과 금고 수 k 일때의 해라 하자. 여기서 n 을 k 개의 금고를 가지고, T(n, k) 횟수 만에 모두 테스트 할 수 있는 건물의 최대높이라 하자.
층수가 n 인 건물중 해를 찾는 위치에 첫 금고를 떨어뜨린다고 하자. 그러면 건물은 그 위치 아래와 위로 나뉘어지며, 위쪽은 T(b, k) 가 되고, 아래쪽은 T(a, k-1)이 된다. 여기서 a, b는 첫 금고를 떨어뜨린 위치를 기준으로 나뉘어진 위 아래 건물의 층수다. 여기서 문제의 정의에 따라 우리가 구하고자 하는 해는
[금고]
- 동문서버위키 . . . . 13 matches
동문서버위키가 현 상황에서 제로페이지의 위키나 다른 성공적 위키 사이트에 비해 상대적으로 사용이 저조하고 NoSmok:DegreeOfWikiness 가 낮고 무엇보다도 사람들이 해당 위키를 통해 얻는 "삶 속에서의 가치"(혹은 효용)가 없어서 한마디로 실패한 커뮤니티 사이트가 된 이유는 무엇일까.
사람들의 인식을 바꾸는데에 실패했다고 본다. 일단 사람들이 위키를 현재 (익명) 게시판의 연장 혹은 (조금 저열한) 보조물 정도로 여기는 인식이 굳어졌다고 본다. 특히 최근 동문서버위키를 살리려고 감성사전 페이지를 만드는 등 구제 노력이 있었으나 그것은 오히려 상황을 더 어렵게 만들었다고 본다. 한번 여러가지로 생각해 보고 분석하고 함께 논의해 볼 문제라고 생각한다. --김창준
* 테스트 기간때의 개인페이지의 영향 - 동문서버팀에서 '좋은 선례' 를 만들어보기 위해 동문서버 프로젝트 자체가 돌아가는 모습 (ex - [http://dongmun.cse.cau.ac.kr/phpwiki/index.php?PPGroup_Board 동문서버게시판프로젝트]) 을 일부러 위키에 남겨보고, 몇몇 사람들이 공동번역페이지나 스터디 페이지 같은 것들을 열어봤었지만. 이미 그때 사람들의 주 관심사들은 자신들의 페이지들에 일기를 남기는 것이였었죠. 그 이후, 인식을 바꿀만한 사건들이 나오지 않은 것 같습니다.
* 위키 스타일의 이해차이 - 이미 잘 정립된 위키스타일을 인식하고 있는 사람이 있던가 하면 그렇지 못한 사람들도 있었죠. 이미 잘 정립된 위키스타일을 알고 있는 사람들이 바로 위키초심자에게 해당 룰을 적용하는 일은 위험한 것이라는 것을 그때 느꼈죠. (일부 사람들은 자신들이 작성하던 페이지를 도로 삭제하기도 했었죠. 위키의 룰이 강제성이 없으며, 반론을 제기할 수도 있는 것임에도 불구하고 시간낭비하기 싫었던 것일까요.. 쩝) 위키의 룰은 결국 위키를 사용하는 사람들이 이용해나가면서 서로 암묵적으로 인정해나가는 것들이 룰로서 올라가지, TopDown 식으로 명령하달식으로 내려 올 수 없는것이겠죠.
- 새싹교실/2011/쉬운것같지만쉬운반/2011.5.3 . . . . 13 matches
- 일곱번째( 09년 10년 중간고사 문제 분석 )
* 이번 시간은 강사가 여태까지 배웠던 내용을 질문하고, 학생들이 대답을 해보는 시간을 가졌습니다.
4. file을 한번에 object파일로 바꾸는 컴파일말고 다른 개념이 있을까? 있다면 어떤 개념일까?
* 1번부터 9번까지 각자의 생각으로 정리하시오. 수업시간에 들은 내용이 기억나면 기억나는 대로 써도 됨. 아예 개념조차 모른다면 '잘 모르겠습니다' 라고 쓰세요. 그게 아니라면 '''반드시''' 정리하세요.
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 지난 시간 배웠던 것을 반복을 했다. 모두에게 문제에 대한 대답을 전부 들었다. 굉장히 의미가 있었다고 생각한다. 스쳐지나가는 기본들을 다시 다잡았다고 생각한다. 잘못알고 있거나 약간 부족하게 알고 있던 내용들을 스스로 피드백을 줌으로서, 정리하게 하였다. 앞으로 마무리 할 때 쯤 다시 한번 이런 시간을 가져야겠다. - [박성현]
9. 32비트 컴퓨터에서는 기본 정수형(int)에 대해 32비트의 메모리 공간을 할당해 주는 데에 비해서 64비트 컴퓨터에서는 64비트의 메모리 공간을 할당해 주기 때문에 자료 크기가 달라지고 MSB의 위치가 달라져서 프로그램이 오작동하거나 실행할 수 없게 된다.
4. file을 한번에 object파일로 바꾸는 컴파일말고 다른 개념이 있을까? 있다면 어떤 개념일까?
32비트 시스템에선 램디스크로 놀고 있는 램마저 알뜰하게 써주는 센스가 필요합니다.
- 새싹교실/2013 . . . . 13 matches
|| 01 || [새싹교실/2013/라이히스아우토반] || [고한종] || [임지훈], [지영민], [박경준], [이명연] || 5회차 || 매주 수요일 오후 2시 ||
|| 08 || [새싹교실/2013/영고] || [정의정] || [최연웅], [조영준] || 1회차 || 매주 목요일 저녁 6시 ||
* 미리써도 되지 않을까? 해서 썼다가 한번 날림 젠장 - [고한종](13/03/16)
* ZP홈페이지 찾아보면 가이드라인이라고 된 거 몇 개 찾을 수 있겠지만... 가이드라인은 어디까지나 가이드라인일 뿐...? - [권순의]
* 새로 글 쓸 때,6. junetemplete를 쓰면 매우 편리하다는 것을 발견했다!. 다만 새싹교실/2012로 연결되니 주의. -[고한종](13/03/19)
* 여러분 새싹반이 되게 적어보이는데, 실제로는 이거보다 많이 돌아가고 있어요. 다만 위키를 쓰자는데 동의를 안한팀이 많은 것일뿐... - [고한종](13/03/22)
* 아이고 지금 위키 발견!! ㅋㅋㅋㅋㅋ 제 이름 클릭해보니 추억이 그냥 돋네요 ㅎ_ㅎ-[김상호] (13/03/25)
* 저도 오늘 가르킬려고요. 위키에 저 혼자 정리하니 한계가 있네요.ㅠㅠ -[김해천] (13/03/25)
* 혼자쓰면 안되지! 애들이 쓰는게 의미가 있어서 하는건데-[고한종](13/03/27)
* 다들 회차가 안오르네.. 분명 수업 하고 있는거 같긴 한데 ㅎㅎ 난 저거 보면 뿌듯하더라 헿헿 -[김상호](13/04/03)
* 시험끝나고 1주일 지난뒤에 들어와보니 으허...... -[고한종](13/05/01)
- 새싹교실/2013/라이히스아우토반/7회차 . . . . 13 matches
||고한종|| o || o || o || o || ㅇ|| ㅇ|| ㅇ ||
* scanf에 왜 &가 들어가고, 왜 배열을 쓸 때는 &가 필요 없는지 알게 되었습니다.
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* Can't Save가 떴을 땐 당황하지 말고, 작성한 내용을 클립보드에 보존한 뒤(Ctrl+C) 새로고침을 한 뒤 붙여넣고 저장할 것.
== [고한종] ==
준비 해오기 힘들다보니 그때 그때 생각나는데로 가르친다. 그러다보니 애들이 이해를 잘 못하고, 흥미도 많이 못 느끼는 것 같다.
오늘 명연이는 이유는 설명하지 않고 안온다 했고, 영민이는 새싹보다 밥을 선택했다. 수업이 재밌고 유익하다고 느꼈다면 이쪽으로 왔겠지??
- 재미있게공부하기 . . . . 13 matches
재미없지만 꼭 공부를 해야 한다면 재미있게 만들어라. 우선 분석을 하라. 무엇이 재미없고 지루하게 만드는지, 그리고 내가 재미있어 하는 것은 어떤 것들이고 그것들의 공통점은 무엇인지. 그리고 재미없는 것에서 내가 재미있어 하는 요소들을 찾아낼 수는(혹은 투사할 수는) 없는지.
어떤 주제를 공부하는 길은 여러가지다. 꼭 수업에서 정해준 교재로 공부해야할 필요는 없다. 모든 공부에 정도란 없다. 자신이 재미있어할만한 자료를 찾아라. 그것이 책이든, 사람이든, 인터넷이든. 다만, 그런 자료를 찾느라 모든 시간을 허비하는 잘못을 하진 말아야 한다. 먼저 공부해 본 사람들에게 물어본 다음 그 중에서 고르는 것이 효과적이다.
공부를 할 때 내가 이미 알고 있는 것, 내가 재미있어 하는 것과 연관성을 찾아라. 내 일상의 삶과 연결점을 찾아라. 메타포적인 NoSmok:그림듣기 도 좋다.
다른 사람과 함께 공부한다. 다양한 관점과 해석이 가능하다는 것을 배운다. 그들의 경험을 배운다. 용기를 얻고 두려움이 사라진다. 재미가 생긴다. 특히 서로를 가르치는 것도 아주 좋은 방법이다.
재미없는 공부에도 그나마 개중 재미있는 놈이 있다. 그 놈부터 공략한다. 그걸 공부하고 나면 이전에 재미없어 보이던 것들이 하나 둘 재미있어 보이기 시작한다. 이는 NoSmok:김창준의일반단어공부론 의 Frontier Zone System과 유사하다.
''재미있는 것부터 하기''와 비슷하게 특정 부분을 고르고 그 놈을 집중 공략해서 공부하는 방법이다. 이 때 가능하면 여러개의 자료를 총 동원한다. 예를 들어 논리의 진리표를 공부한다면, 논리학 개론서 수십권을 옆에 쌓아놓고 인덱스를 보고 진리표 부분만 찾아읽는다. 설명의 차이를 비교, 관찰하라(부수적으로 좋은 책을 빨리 알아채는 공력이 쌓인다). 대가는 어떤 식으로 설명하는지, 우리나라 번역서는 얼마나 개판인지 등을 살피다 보면 어느새 자신감이 붙고(최소한 진리표에 대해서 만큼은 빠싹해진다) 재미가 생긴다. see also HowToReadIt의 ''같은 주제 읽기''
- 정모/2012.5.21 . . . . 13 matches
참석가능여부? - 가능,생각중 => 6월초에 다시 연락드리겠다고 말함.
참여인원의 40% 이상이(18~20명정도라고 추정) 아래 방식중 하나의 스피치를 하면 좋겠어요. 자기 소개겸 주제 발표죠.
미리 위의 유형을 미리 준비하기 힘들죠. 자칫 의견으로 흐를수 있구요. 은근히 시간 많이 걸리고 보통 30분짜리를 만들어 옵니다. 그럼 아예 데블스 캠프 한 코너로 만드는거죠. 아예 모여서 1시간동안 이걸 준비한 후(10~20장 이미지)에 30분 쉬고 1시간 동안 5분씩 12명이 발표해 버리는 겁니다. 3분이면 20명이 할수 있겠네요. 3,4학년에 있을 수많은 발표 과정을 압축해서 경험할 수 있을 것 같습니다.
1학년 + 고학년 해서 1학년 발표, 둘이서 같이 준비하면 20명이 되겠죠. 주제는 어느거라도 할수 있을 것 같습니다. 새 언어 소개, 새 기술 소개, 지난주에 인상깊은 교훈 소개 등등. 주제 결정하는 시간도 아깝기 때문에, CSE 학과 과정 전체의 키워드를 모아서 골라서 하라고 해도 좋을 것 같습니다.
그리고 OST는 경험 하신 분들은 다 아실테구. 데블스 캠프 말미에 끼우면 쓸모 있겠죠.
1.5 시간동안 지루하지 않고 꽤 재미있게 기술적인 토론을 할 수 있었습니다. OST에 적용도 좋고 혹은 Speed geeking 을 코딩 작업이 끝난후에 소규모로 서로 코드 리뷰를 하면서 고학년의 의견을 붙이는 것도 좋을 것 같아요.
참고하세요. --NeoCoin
* 재미있을거같네요. 준비할 때 참고해보도록 하겠습니다. 감사합니다. - [김태진]
* 올해 들어서 참가한 ZP 정모 중에서 가장 사람이 적었던 것 같은 정모였습니다 -_-;;; 그런데 생각해보니 다들 이번 컴공 전시회 관련으로 나가서 그런 것 같네요. 그렇게 보면 오히려 ZP에 능력있는 사람이 많다는 얘기니 그건 또 그것 나름대로 나쁘지 않나 싶군요. 태진이 OMS에 사람이 덜 참가한 것은 약간 아쉬웠지만서도. 그리고 데블스 관련 연락을 돌렸는데 이렇다하게 참가를 확답해 주신 선배님이 없는 것은 좀 아쉬웠습니다. 역시 다들 사는 게 바쁘신 거겠죠... - [서민관]
- 정모/2013.4.8 . . . . 13 matches
[장혁재],[고한종],[이병윤],[정종록],[김남규],
* 책사고 나서 돈달라고 하면 줘요. 그러니까 쓰라고(요).
* 서로 어색어색 한것 같아서 [김태진]이 진행하자고 함.
= 소풍은 시험끝나고 놀이공원 =
* 시험 끝나는 주 주말에 갈려고 함.
* WINAPI를 배우기 위해서 textpad를 만들어 보고 있음.
* 네트워크에 관한 것. 어떤식으로 네트워크를 구성해야 하는가, 장비를 다루는 법도 관련되어 있고.
* 4/23일인가에 접수하는 알고리즘 대회
* 정모에서 뭔가 얘기가 나오긴 하는데, 처리되지 않는 느낌이 들었습니다. livelock 같은 느낌. - [고한종](13/04/08)
* JAVA,C++관련해 스터디 하고싶긴한데..(제가 가르치는게 아니고 다같이 공부하는 그런스터디요) 강사분 모집?! - [양아석]
- 조현태/놀이/미스틱아츠 . . . . 13 matches
그냥 게임을 따라 만들어 보고싶은 생각에 만들고 있다.
이제는 화면을 뚫고 지나가지도 않는다. (이제는 달릴줄도 안다!!)
맞고 튕겨나가는 것 설정
|| 2005.05.31 || 리펙토링, 함수를 세분화 하고 중복을 조금 줄였다. || [조현태] ||
|| 2005.06.17 || 키보드 입력 알고리즘 아기손 만큼 진화! || [조현태] ||
|| 2005.06.17 || 화면 출력 알고리즘 변화, 포인터로 간단한 레이어 효과 가능 || [조현태] ||
혹시 누군가가 게임을 만들려고 한다면, 이미지 자료를 충분히 구하고 하거나 그래픽 디자이너를 구하고 만들기 시작하라고 권하고 싶다.
하지만 언젠가는 완성하려고 생각중...음..언젠가........
- APlusProject/PMPL . . . . 12 matches
Upload:APP_TracingChart_0619.zip - 한글파일로 수정했고, 세로로 안되서 가로로 했다. 버전은 0.2
보고 똑같이 만든다고 만들었는데... 흠; 반복되는게 있네요- 윤주
우선은 그냥 올리고. 다음 주 프로젝트 끝나면 최종 자료 이외에는 다 지울거야. 그리고 최종 자료는 공개로. --재동
오케이. 기본 설계서 확인 끝. 병권이 형이 마무리만 하고 끝내면 됨. --재동
심사계획서 빼고 다 검토됐어요 위에 하나 그림이랑 인덱스 이상한거는 못고친거 고쳐달라고 글 적어놨구요
나머지 인덱스 몇개 틀린건 제가 고쳐서 다시 올려놓은 거랍니다 -- 윤주
심사 보고서는 오늘 저녁안으로 만들어 올릴께요. 그래서 내일 최종 제출하도록 하겠습니다. --재동
- AcceleratedC++/Chapter3 . . . . 12 matches
* 먼저 우리가 가지고 놀 코드를 보자.
// 요건 디폴트 생성자(그냥 넘어가자. 책에는 Default Initialization이라고 써있다.)에 의해 그냥 비어있게 된다.
// num에는 무슨 값이 들어갈까? 책에는 undefined라고 써있다. 메모리에 있던 쓰레기값이 들어가게 된다.
// 유효숫자는 3자리가 되고, 일반적으로 소숫점 앞의(정수부분의) 2자리, 소수보분의 1자리로 채워지게 된다.
위에서 살펴본 while(cin>>x)구문을 살펴보도록 하자. 위에 써놓은 바에 의하면 cin >> x가 성공할동안 계속 루프를 돈다고 했다. 그러면 언제 실패할까?
* 하지만.. 중간값은 그렇지가 못하다. 다 저장해놔야 한다. 그리고 sort를 해야할 것이다.
* vector란? - 주어진 타입의 값들의 모음을 가지고 있는 컨테이너이다. 확장요청이 있을때 커진다.
* 이러한 것들을 Telplate Classes 라고 한다. 11장에서 자세히 보도록 하자.
* size() 멤버 함수 : vector가 소지하고 있는 값들의 갯수를 리턴해준다.
* typedef : vector<double>::size_type이라고 일일히 쳐주기엔 너무 길기 ㅤㄸㅒㅤ문에 vec_sz로 줄여쓴 것이다.
return 1; // main함수가 0을 리턴하면 성공적으로 끝난것이고, 그 외의 숫자는 실패적으로 끝난것이다.
* C++의 스탠다드 라이브러리들은 걱정하지 말고 써도 된다. C++은 performance-critical한 애플리케이션 제작을 위해 만들어졌기 때문이다.
- AsemblC++ . . . . 12 matches
C 프로젝트로 빌드로 생성된 .exe파일에서 어셈블 코드를 찾아내고 그 효율성과 다른 각 IDE들의 차이점을 찾아보려는 의도로 만들어진 페이지.
[i++VS++i]를 시작한 사람이 접니다^^ 그걸 보고 관심을 갖는 사람이 있다니 반갑군요~ 혹시 누구신지요? --[상규]
어셈블리 코드는 기계어와 거의 같다고 봐도 무방하기 때문에 컴파일러의 출력 형식의 차이 정도라고 보시면 되겠습니다.
C/C++ 코드와 해당되는 어셈블리 코드를 비교하며 보고 싶다면 /FAs 옵션을 붙여보세요.
차이점은 설명하기가 귀찮네요-_-; 직접 해보시고 차이점을 알아보시길... --[상규]
== 어셈블을 이용한 [고급언어디버깅] ==
어셈블 코드들을 쉽게 보여준다면 프로그램의 보안 문제에도 직접적으로 연관이 되는 군요. 수정에 관한 보안장치도 있을 것이고요. 패리티 같은 단순한 보안장치일지라도 코드의 무결성을 지키면서 어셈블을 수정하기란 쉬워 보이지 않네요. - 톱아보다
처음에는 그냥 얼마나, 어떤식으로 컴파일러에 의해서 코드가 최적화되고 [IDE]의 버전과 종류에 따라서 어떤 차이가 존재할까 라는 단순한 물음이었지만, 지금 보니 그렇게 코드를 파해치고 분석하는게 해킹이고 크래킹 인것 같기도 합니다;; - [톱아보다]
Softice같은 프로그램을 사용해서 시리얼 번호가 있는 프로그램이나 날짜 제한 프로그램을 크랙 하기도 합니다. 이번 디버깅 세미나에서 함 해볼라고 그랬는데 집에 있는 컴퓨터에서 그게 잘 안돌아가서 보류함. - [상협]
- GofStructureDiagramConsideredHarmful . . . . 12 matches
하지만, Pattern에 대한 경험이 부족한 학생들이나 사용자들은 이 사실을 모르고 있다. 그들은 Pattern에 대한 저술들을 너무 빨리 읽는다. 단지 한 개의 Diagram만을 이해하는 것으로 Pattern을 이해했다고 착각하는 경우도 잦다. 이게 바로 필자가 생각하기에는 독자들에게 해로워보이는 GoF 방식의 단점이다.
GoF 책의 각 Pattern 마다 첨부되어 있는 구현에 대한 매우 중요하고 민감한 해설들은 어떠한가? 이 해설들을 통해서 Pattern이 여러 방법으로 구현될 수 있다는 사실을 알 수는 없을까? 알 수 없을 것이다. 왜냐하면 많은 독자들이 아예 구현에 대한 해설 부분을 읽지도 않고 넘어가기 때문이다. 그들은 보통 간략하고 훌륭하게 그려진 Structure diagram을 더 선호하는데, 그 이유는 보통 Diagram에 대한 내용이 세 페이지 정도 분량 밖에 되지 않을 뿐더러 이것을 이해하기 위해 많은 시간동안 고민을 할 필요도 없기 때문이다.
비단 패턴만이 그렇지는 않습니다. 조금은 다른 이야기를 해보고록 하지요. 사람으로부터 나온(derived) 어떤 유-무형의 것들은 그것을 만든 사람, 또 그 사람이 몸담고 있는 환경을 반영(reflection) 합니다. 예를들어, 실세계에서 집을 짓는다고 해봅시다. 거기엔 수많은 공법이 존재합니다. 또 하나의 공법을 이야기한다고해도 실제로 투입되는 사람들에따라 다양하게 나올 수 있습니다.(지난 2002년 1월 8일 뉴스에서는 측량할때마다 다른 토지 계산이 나오더군요) 조금더 엉뚱한 이야기를 해볼까요. 하나님의 말씀은 하나이겠지만, 성경은 해석하기에 따라 다릅니다. 또 그 하나하나의 성경은 하나지만 그를 믿는 사람이 받아들이기에 따라 다양해집니다.
학문, 더 넓혀서 살아감에 있어 하나의 사실이나 의견을 접할때, 절대적이란 것은 "명제" 나 "진리" 같은 것 외에는 없음을 생각해보면 답을 찾는데 도움이 될 것 입니다. 다만, 눈에 보이는 형태에서는 이를 금방 인지하기 쉬우나, 눈에 보이지 않는 형태이거나(예를들면 지식), 습관적으로 믿을만하다고 생각되는 매체에서 얻은 정보나 이야기에 대해 "경계의 레이더"를 꺼놓거나 미처 알아차릴 경황이 없게 되는 경우를 조심하면 되겠죠.
아.. 눈치를 채셨나요? 이 글도 그냥 그런가보다 하고 읽어야 하는 글중 하나입니다. :) -- 이선우
- HowManyFibs?/1002 . . . . 12 matches
input space 로 볼때 최악의 경우가 1~10^100 일 수 있겠다는 생각을 하면서 뭔가 다른 공식이 있겠다 생각, 피보나치의 closed-form 을 근거로 해결할 방법에 대해 궁리해보다. a,b 구간에 가장 가까울 f(x),f(y)를 각각 구하고, y-x 를 구하면 되리라고 생각. 하지만 3시간동안 고민했는데 잘 안되어서, 그냥 노가다 스러운 방법으로 풀기 시작.
근데, a,b=(1,10^100) 로 해도 1초도 안걸린다. 처음에는 'big integer 를 만들어라!' 라는 문제가 아니라고 생각했는데, 풀고 나니 뭔가 허탈함. 글쌔. 출제자가 원한 답은 big integer emulation 이였을까. 흑..
피보나치 수가 굉장히 크게 늘어나는 수라는 점을 생각했더라면, input space 가 크더라도 fibo(n) 의 n 값이 커지지 않을 것이라는 것을 미리 알고 있었더라면 저런 고민을 안했을 것 같긴 하다. 하지만, 이러한 사전지식이 없는 가운데, 문제를 풀라고 한다면 어떻게 접근하는게 가장 좋았었을까. 고민된다.
* 그럼에도 불구하고.. '정말 big integer 만들기' 문제였을까? 다시금 고민하게 되다.
* 구간 계산과 관련, 'a 와 가장 가까운 fibonacci 값을 구하기' 는 반복문 돌리기 & if 로 비교 말고 다른 방법이 없을까?
- LoadBalancingProblem . . . . 12 matches
Load Balancing 이라는 개념은 앞으로 몇번 접하게 될 개념입니다. 컴퓨터분야에서뿐만 아니라 다른 분야 (예를 든다면 이삿짐 업체나, 택배업체, 우체국 등등..) 에서도 쓰입니다. Load Balancing은 역할분담을 가장 적당하고 고르게 하여 각각의 개체들이 부담을 적게 느끼고 전체 작업시간을 단축시킬수 있도록 해 줍니다. 간단한 LoadBalancingProblem 문제를 접하여보고 기회가 닿는다면 조금더 복잡한 종류의 문제를 풀어보는것도 좋을것 같습니다.
IPSC, ["임인택"]이 한글화하고 요구하는 입&출력 스펙을 변경함
SuperComputer 사는 N 개의 CPU 로 이루어진 슈퍼컴퓨터를 제작하였다. 각각의 CPU는 1에서 N 까지 번호가 새겨져 있으며 각각 독립적인 작업을 수행한다. 새로운 작업이 생기면 무작위로 한개의 CPU 에 그 작업이 할당된다. 이럴 경우 어떤 CPU 에는 작업이 엄청 많고 다른 CPU 에는 할당된 작업이 적거나 아예 없는 상황이 발생하게 된다. 이럴경우 각 CPU 에 작업을 적당하게 분배하여야 하는데 각각의 재분배 작업은 N번 CPU가 1-N, 1-N CPU 에 각각 하나씩의 작업을 전달하는 것이다. 차근차근 살펴보면,
1. 2번 CPU 의 작업의 수를 본다. 만약 2 번 CPU 의 작업의 수가 많다고 생각되면 1번, 3번 CPU 로 작업을 전달 해 줄수 있다.
(이 과정을 모든 CPU 가 최고-최저<=1 이 될때까지 반복한다)
1. 몇번 돌아보았는가? (1부터 N 까지 보았을때를 1 round 라고 한다)
IPSC 라고 해서 엄청 어려운 문제도, 그렇다고 한번에 풀수 있는 쉬운 문제도 아닙니다. 풀어본 문제 몇개 중에서 재미있다고 생각되는 문제들을 여러 사람들이 함께 풀어보았으면 하는 바람에서 페이지를 열어보았습니다. - 임인택
- NUnit/C++예제 . . . . 12 matches
* NUnit이 깔린 폴더의 bin안에 보면 NUnit-gui.exe을 실행한다. 컴파일해서 나온 dll을 로딩해주고 run하면 테스트들을 실행해준다.
* 예제는 아무 생각없이 만들었고, 테스트 할 필요도 없는 거지만.. 그냥 사용법을 보는 거니까 신경쓰지 마세요.
* 헤더에다 다 구현해도 된다. 하지만 같은 이름의 cpp파일을 만들어줘야 하는것같다. 안그러면 Test없다고 안된다.
1. 일단 MFC 프로젝트를 만든다. 이것을 메인프로젝트라고 하자.
2. 전체 솔루션에 Managed C++ Library 프로젝트를 새로 추가한다. 이것을 테스트프로젝트라고 하자.
메인프로젝트에서 만든 새 클래스를 테스트 프로젝트에서 테스트하고 싶다. 어떻게 해야할까? 순진한 인수군은 #include <domain.h> 이렇게 하고, 테스트 클래스에 .h랑 .cpp 참조 넣어주면 될줄 알았다. 이것땜에 어제밤부터 삽질했다. 이렇게만 하면 안되고... 새로 만든 클래스를 일단 보자.
__gc의 가 부여하는 능력과 제약 사항에 대해서는 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_4.asp __gc] 을 참고하자. NUnit 상에서 테스트의 대상 클래스는 무조건 포인터형으로 접근할수 있다. 이제 테스트 클래스의 내용을 보자.
이렇게 해주면 된다. 이거 알아내느라 엄청 삽질했다. 그런 의미로... NUnit 많이 애용해 달라. 혹시나 더 간단하고 좋은 방법 있으면 올려 주세요.
아.. __gc를 쓰면 닷넷 플랫폼없는 곳에서는 쓸 수가 없겠네요. 그러면 이방법은 어떤가요? 일단 테스트할때는 테스트할 클래스에 __gc를 붙이잖아요? 나중에 배포할때는 __gc를 없애는 겁니다. 물론 Managed C++ Extensions의 문법을 쓰면 안되겠죠.(__gc빼고) 매크로를 잘 쓰면 어떻게 될거 같기도 한데... --[인수]
그것을 떠나서, MFC를 쓰면서 테스트를 하는 것이 의미 있어 지려면, MFC 로 작성한 프로그램이 정상 동작하면서, 테스트를 할수 있어야 하는데, MFC Frameworks 이 Managed C++ 모드로 컴파일이 잘되고, 잘 돌아가는지, 이것이 의문이다. 된다면, MS에서 모든 MFC class앞에 __gc가 붙이기라도 한걸까? 혹은 이미 해당 매크로가 존재하지 않을까?
- PragmaticVersionControlWithCVS/WhatIsVersionControl . . . . 12 matches
개중에는 네트워크에 연결되지 않은 상태에서 작업을 하고 이를 후에 반영시켜 동기화하는 매커니즘을 제공하기도 함. (ex CVS)
지역 작업공간(local workspace)는 원격에 저장된 파일들을 프로그램의 개발을 위해서 개발자가 가지고 있는 컴퓨터에 받아서 프로그램을 수정하도록 하는 공간임.
기본적으로 Version Control 에서 관리의 가장 작은 단위는 파일이다. 그외에 한개의 프로젝트 단위로 전체 프로그램을 관리하고, 그 하부에 모듈을 기준으로 해서 소스를 관리한다.
개발중심축(mainline) : 일반적인 개발환경하에서 개발자들은 동일한 코드 기반을 가지고 작업을 한다. 체크아웃, 개정판을 만들어서, 변경사항을 체크인하면 모든 개발자가 서로의 작업을 공유하게 되는 것이다. 이러한 개발흐름을 일컬어 개발중심축이라 함.
이런 개발중심축상에서 만약 특정 시점에서 프로그램의 릴리즈 버전이 완성되어서 QA과정으로 들어갔다고 생각해보자. 이때, 프로젝트의 다른 팀원들과 동시에 개발을 진행시켜 나가면서, QA과정에서 발생된 치명적인 버그를 본래의 개발중심축상에 반영시키기 위해서 만들어진 개념임. (그림이 있어야 이해가 쉬울듯. 글만 읽어서는 SE를 듣지 않은 이상 이해 힘들어보임.)
브랜치를 만들게 되면 그 시점에서 브랜치로 만들어진 소스는 개발의 중심축선상에서 빠져나와서 기본 개발축과 다른 개발을 할 수 있다. 또한 이렇게 분기된 프로젝트의 변경부분을 본래의 개발중심축선상에 반영시키는 것또한 가능하다. 또한 이 릴리즈 시점을 지나서 개발중심축이 상당부분 진행이 된 상태에서 소비자가 릴리즈버전의 버그를 보고하여, 이 버그를 고쳐야할 필요가 생겼을때 개발자들을 새로 소스를 만들 필요없이 단지 릴리즈 시점의 브랜치로 옮겨서 작업을 하고, 패치를 만들어 내는 것이 가능하다.
브랜치를 이용하면 한명의 개발자가 한개의 컴퓨터를 가지고도 릴리즈 버전의 버그 수정작업과 mainline상의 프로그램의 개발을 동시에 하는 것이 가능하다.
만약 한개의 파일을 가지고 2명의 사람이 동시에 수정작업을 거쳐서 체크인하게된다면 어떤 상황이 벌어질까? 아마 이대로는 한개의 파일이 쓰여지고 다른 파일이 그 파일을 덮어 쓰는 상황이 벌어질 것이다.
상기와 같은 식으로 소스를 수정한뒤 fix01, fix02를 순차적으로 체크인하면 fix01에 의해서 저장소에 있는 파일이 갱신되었기 때문에 fix02가 체크인 되는 시점에서 충돌이 일어나게 된다. 이경우 CVS는 fix02의 소스에서 fix01에 반영된 3번째 줄의 변경내용을 병합하여 로컬 작업 공간에 반영하고 체크인하게된다.
- PyIde/SketchBook . . . . 12 matches
* 몇몇 생각 - 소스코드에 대해 flat text 관점으로 보지 못하도록 강요한다면, 구조적으로만 볼 수 있게끔 강요한다면 어떤 일이 일어날까. 어떠한 장점이 생기고 어떠한 단점이 생길까.
''계속 생각했던것이 '코드를 일반 Editor 의 문서로 보는 관점은 구조적이지 못하고 이는 필요없는 정보를 시야에 더 들어오게끔 강요한다. 그래서 구조적으로 볼 수 있도록 해야 한다.' 였는데, SignatureSurvey를 생각하면 정말 발상의 전환같다는 생각이 든다는. (코드를 Flat Text 문서를 보는 관점에서 특정정보를 삭제함으로서 새로운 정보를 얻어낸다는 점에서.) --[1002]''
Eclipse 쓰던중 내 코드 네비게이팅 습관을 관찰해보니.. code 를 page up/down 으로 보는 일이 거의 없었다. 이전에 VIM 을 쓰면서 'VIM 으로 프로그래밍하면 빠르다' 라고 느꼈던 이유를 생각해보면
* Source Folding - 화일 하나가 긴 경우라도 짧게 줄여놓고 쓰므로.
* search - Function 이동시 편리. 게다가 일반 텍스트 에디터에 비해 search 기능을 수행하는 비용이 작다. / 한번, 그리고 바로 키워드 입력. (다른 녀석은? Ctrl+F , 키워드 입력, enter & enter. incremental search가 아닌 경우는 한단계가 더 있게 된다.)
하지만, 손가락 동선의 경우 - ctrl + O 를 누르고 바로 메소드 이동을 한다. 일반 이동도 메소드 중간 이동은 CTRL +커서키. (이는 VIM 에서의 W, B) 위/아래는 커서키. 클래스로의 이동은 CTRL+SHIFT+T. Source Folding 도 주로 Outliner 에 의한 네비게이팅을 이용한다면 별로 쓸 일이 없다. 보통 의미를 두고 하는 행동들은 클래스나 메소드들 단위의 이동이므로, 그 밑의 구현 코드들에 대해 깊게 보지 않는다. (구현코드들에 대해 깊게 보는 경우가 생긴다면 십중팔구 Long Method 상황일것이다.)
Python 으로 HTML Code Generator 를 작성하던중. 좀 무식한 방법으로 진행했는데, 원하는 HTML 을 expected 에 고스란히 박아놓은 것이다. 이는 결과적으로 test code 를 네비게이팅 하기 어렵게 만들었고, 해당 Generating 되는 HTML 의 추상도도 상당히 낮게 된다. 한화면에 보여야 할 HTML 데이터도 많아야 한다. 이는 결국 내가 에디터 창을 최대로 놓게 만들더니, 더 나아가 에디터 창의 폰트 사이즈을 11에서 8정도로 줄이고 모니터를 앞당겨 보게끔 만들었다. (15인치 LCD 모니터여서 해상도가 최대 1024*768 임.) 해당 상황에 대해 사람이 맞추는 것이 좋을까, 또는 툴의 Viewing 이 도움을 줄 방법이 있을까, 또는 사람이 이를 문제상황으로 인식하고 프로그램 디자인을 바꾸게끔 하는것이 좋을까.
또는... 그냥 사람이 툴을 바꿀것인가. -_-; (상황에 대한 인식, 그리고 툴에 대한 선택을 하는 주체는 결국 사람이다.)
- ThePragmaticProgrammer . . . . 12 matches
이 책에서, Andrew Hunt와 David Thomas는 소프트웨어 설계와 코드 작성에서의 각자의 경험 가운데 얻은 많은 유용한 노하우를 요약하여 문서화하고 있다.
이들의 프로그램학은 구체적이며, 그 구현에 이르는 경로는 간결하다. 이들은 예를들어,하나의 텍스트 편집기를 배우게 되면 그것을 모든 것에 활용하라고 독자들에게 조언하고 있다. 또한 권고하고 있는 것은, 심지어 가장 작은 프로젝트에 대해서도 버전트래킹 소프트웨어를 사용하라는 것이며, 규칙적인 수식구문과 텍스트 처리언어 학습의 장점을 계도하고 있다.
번역서(실용주의프로그래머)를 한 번 다 읽었지만 다시 봐야 할 내용이 너무 많이 있다. 다루는 분야가 매우 넓으면서도 각 장은 시간이 지나도 값어치 있을 실용적인 정보를 담고 있다. 언제 멈출지 몰라서 ''그림은 물감 속에서 사라진다''나 ''프로그래밍을 우연에 맡기면 어떻게 되는가'' 같이 내가 습관적으로 잘못하고 있는 부분을 짚어주기도 한다. -- [(leonardong)]
꼭 한번 읽어 보고 싶은 책이다. 도서관에서 반납되기만을 손꼽아 기다리고 있는 중. - [(namsang)]
''도서관 책중 한권은 내가 가지고 있는중. 여차하면 이야기하기를..~ --[(1002)]''
오~ 고마워 휘동아 ㅎㅎ - [(namsang)]
- ZeroPage . . . . 12 matches
[제로페이지]는 공부하고자하는 뜻이 있는 사람들이 모인 일종의 인력의 장입니다. 그 안에서 뜻이 같은 사람들을 만날수 있기를, 또는 자신이 아는 것에 대해 다른 사람들에게 전달해줄수 있기를, 또는 자신의 부족한 점을 다른 사람들로부터 얻어갈 수 있었으면 합니다. 개인의 이익들이 모여서 집단의 이익을 만들어가며, 집단의 이익을 추구하는 것이 곧 개개인들에게 이익이 되는 경지가 되었으면 합니다.
여러가지 힘든 여건 속에서도 뜻이 있는 사람들의 수고와 노력으로 지금까지 이어져 온라인/오프라인 활동을 계속하고 있습니다. 지금까지의 ZeroPage 는 ZeroPage를 거쳐간 사람들이 만들어놓은, 혹은 현재 활동중인 사람들의 과정에 대한 결과이며, 다시 많은 사람들에 의해 재창조되고 새로운 모습을 만들어나가게 될 것입니다. 언제나 '현재 진행형' 중인 학회이기를. 이 정의 또한 사람들이 스스로 깨뜨리고, 더 좋은 방향으로 바꾸어나가기를.
현재는 02년도부터 도입한 wiki 시스템을 통하여 각 프로젝트나 스터디를 진행할때마다 문서 산출물을 만들어 내어 양질의 정보들을 축적해 나가고 있다. 이 시스템은 스터디와 프로젝트를 팀으로 진행할때 공동 knowledge repository 의 역할을 함으로서 진행하는 회원 들에게 도움이 되고, 추후에 다른 회원이 비슷한 스터디나 프로젝트를 할때 그 wiki 페이지를 참고 함으로써 같은 곳에 쏟을 노력을 줄이고, 그 wiki 페이지를 다시 키워 나감으로써 지속적으로 양질의 정보를 축적하여왔다. 이로서 제로페이지의 wiki 시스템은 현재의 회원과 학교를 떠난 회원그리고 앞으로 제로페이지에 들어올 회원들 모두에게 도움이 되는 시스템으로서 자리매김하고 있다.
* team 'HONGHAI' 63등 : [정진경], [정의정], [고한종]
- stuck!! . . . . 12 matches
== 도구 및 참고 자료 ==
가볍고 쉬운 무료 C, C++ IDE. 한글도 지원한다.
'''[http://winapi.co.kr/clec/cpp1/cpp1.htm winapi.co.kr의 C기초강좌] 매우 자세하며 양이 많다. 이것이 교재 적당히씩 읽고 와주세요'''
email 제목에는 {stuck!!}을 접두어로 붙이고 이름과 찻수를 반드시 넣어서 제출해 주세요.
1차 : 입출력그리고 간단한 변수의 종류에 대해서 공부해보고, 이름과 학번 그리고 원하는 평점을 입력받고 그것을 그대로 출력하는 프로그램을 작성해 본다. 일요일 오후 3시까지 제출해 주세요. 미 제출시 가혹한 벌금이 있습니다ㅋㅋㅋ
2차 : 3개의 수를 배열로 입력받고. 그 수중 가장 큰수와 가장 작은 수를 골라내서 출력하라.
3차 : 자신의 프로필 페이지를 만들고 이곳에 링크를 단다. [구구단]을 만들고 담임 메일로 보낸다. 이름필수. 14일 오전 12시까지. 14일 12시에 4차 숙제 나옴.
4차 : 오늘 배운 세개중에서 가장 큰 값을 찾는 방법을 복습해 보고. 5개의 값(코드에서 미리 입력이 된다.) 에서 가장 큰 값을 찾아 본다.
- 새싹교실/2011/Pixar . . . . 12 matches
* [김수경]이 가르치고 김연석, 이승열, 한광운, 오상준이 배우는 반입니다.
1. 어떤 것이든 완벽한 것은 없죠. 그러니 새싹교실을 진행하고 나면 ''다음에는 이렇게 하면 더 좋을텐데''싶은 것들이 있을거예요. 그런 것들을 후기에 적으면 다같이 읽어보고 다음 시간은 더 나아진 새싹 교실을 진행할 수 있을거예요.
1. 수년간 경험해보아 알겠지만 사실 들은 것은 기억에 잘 남지 않습니다. 교수님께서 분명 지난주에 가르쳐주신 내용이 이번주엔 생각이 나지 않죠! 그런데 어떤 것을 배웠는지 끝나고 한번씩 되짚어보면 그냥 듣기만 했던 것보다 더 기억에 잘 남는답니다.
* 위에 후기를 쓰는 이유가 새싹 교실을 더 잘 진행하고, 어떤 것을 배웠는지 돌아보기 위해서라고 써있습니다. 그런데 그냥 막연히 좋았어요. 재미있네요. 라고 쓰면 다음 새싹 교실에도 별로 도움이 안 되고, 배운 내용도 돌아볼 수 없답니다. 그러니 처음에는 조금 어색하더라도 FiveFs를 넣어 후기를 작성해주세요.
* 어떻게 써야할지 잘 모르겠다면 다음 예를 참고하세요~
* 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 그리고 Feedback은 ''앞으로의 계획''을 지켰는지 체크하는 부분입니다. 이 부분은 일단 적지 마세요~ 새싹 교실에서 설명하겠습니다.
- 새싹교실/2011/앞반뒷반그리고App반 . . . . 12 matches
== 앞반, 뒷반, 그리고 App반 ==
~~여행의 연장으로, 위키에 작성한 글을 가지고 맞춤법 교정도 진행합니다.~~
* 오늘--- 은 assert랑 do while이랑 while을 배웠고요, for로 십자가 만들기 하려다 새싹끝났어요. "우와아 참 재미있었다-_-" -[김태진]
* 옆에 낑겨서 재밌는 거 많이 배워갑니다 ㄳㄳ 근데 assert가 어떻게 쓰는 건지 참 궁금하네...- [고한종]
* 그거쓰면 중간에 그 값이 거짓일경우 프로그램 따운 시켜버리는거임. 오류검사할때 쓴다고 봐야하려나..?- [김태진]
* 아아 기능은 알음. 근데 쓸줄을 몰라. - [고한종]
* 뭐하는 짓인가 싶지만 새싹교실 끝날때 주셨던 숫자 십자가 45도 돌리기 짜는데 성공했습니다.[고한종/십자가돌리기] - [고한종]
* 시험기간 직전에 질문시간이었어요. ~~저밖에 오지 않았지만~~ 이날 새롭게 배운것은 (수업시간에 필요없다고 넘긴것이라 필요없었음에도 잔다고 필요없다는 사실을 몰랏음) redirection이었는데요! 뭐냐니 input과 output을 바로 프로그램에서 받고 띄우는 것이 아니라 다른 문서에서 불러오거나 집어넣는 것이었어요. 지금까지는 인풋은 무조건 scanf로 직접 넣었는데, 그것과는 다른것!!이었죠. 사실 방법은 지금 잘 기억나지를 않네요 -_- 아무튼 이런 신기한걸 배웠습니다. -[김태진]
* 오늘은 포인터를 배웠어요. ********별-. 선언할 때 int *a;로 선언하게 되면 *a는 a의 주소에 있는 값을 나타내는거였지요. 음.. 하다가 현 형이 하던 프로젝트에 잠깐 지워놓고 예시를 들었다가 xcode를 끄는 바람에 소스가 날라가버렸지요.... 포인터가 있으면 지정된 크기보다 큰 용량의 자료도 불러오기 쉽다는 것도 배웠구요. 아무튼 유용하게 쓸 수 있을거 같아요 -[김태진]
- 성당과시장 . . . . 12 matches
[http://kldp.org/root/cathedral-bazaar/cathedral-bazaar.html 성당과시장] 에서 논문 번역문을 읽을 수 있다. 논문 발표후 Eric S. Raymond는 집중 조명을 받았는데, 얼마 있어 지금은 사라진 Netscape 가 자사의 웹 브라우저인 Netscape Navigtor를 [http://mozilla.org 모질라 프로젝트]로 오픈 소스시켜 더 유명해 졌다. RevolutionOS 에서 실제로 Netscape의 경영진은 이 결정중 이 논문을 읽었다고 인터뷰한다.
이듬해 Eric S.Raymond 는 [http://kldp.org/root/gnu/cb/magic-cauldron/ 마법의 솥] 이라는 오픈소스의 구체적인 사업 형태 대한 논문을 선보인다. 그리고 이후 [http://zdnet.co.kr/news/enterprise/article.jsp?id=69067&forum=1 독점SW vs. 오픈소스「뜨거운 경제 논쟁] 같이 아직까지도 꾸준한 논쟁이 이루어 진다.
국내에서는 최근(2004) 이만용씨가 MS의 초대 NTO인 [http://www.microsoft.com/korea/magazine/200311/focusinterview/fi.asp 김명호 박사의 인터뷰]를 반론하는 [http://zdnet.co.kr/news/column/mylee/article.jsp?id=69285&forum=1 이만용의 Open Mind- MS NTO 김명호 박사에 대한 반론] 컬럼을 개재하여 화제가 되고 있다.
|| 성당 || 찬란한 고독 속에서 일하는 몇 명의 도사 프로그래머나 작은 그룹의 뛰어난 프로그래머들에 의해 조심스럽게 만들어지고 때가 되어야 발표할 수 있는 엄숙한 성당 건축 방식 ||
|| 시장 || 일찍, 그리고 자주 발표하여 다른 사람에게 위임할 수 있는 것은 모두 위임하고, 뒤범벅된 부분까지 공개하는 그런 스타일은 서로 다른 의견과 접근 방식이 난무하는 매우 소란스러운 시장 같은 분위기 ||
(또한, 레이몬드 본인은 이 시장방식이라는 것을 실제로 경험해보고자 fetchmail 이라는 것을 실제로 시장방식으로 개발해보았다고한다.)
이 책은 당시 책이 발표된 시점에서 얼마뒤 네츠케이프 사가 망하고, 망하면서 Netscape 을 Mozilla 라는 Project 이름으로 발표함으로써 더욱유명해 졌다고한다.
실제로도 네츠케이프사에서 이 결정을 하는데 이 책이 중요한 역할을 했다고 한다.
- 정모/2013.9.11 . . . . 12 matches
* [김민재], [최다인], [박희정], [김현빈], [장혁재], [임지훈], [원준연], [김명규], [김상호], [고한종], [조영준], [김해천], [김윤환], [권영기], [신형준], [김태진], [백주협], [서민관], [안혁준], [이봉규], [송정규], [강성현], [송바위샘], [정의정], [김승태]
* [최다인] 학우 "귀엽고~ 깜찍하게~ 써리원! (베스킨라빈스)"
* 다양한 주제로 진행했던 OMS를 이제 학술적인 내용으로 진행하려고 합니다.
* 행사 참여비용이 인당 10만원이 넘는 경우, 그리고 단체 지원금액이 20만원이 넘는 경우, 회의를 통해서 지원 여부를 결정.
* 기존 정모 때 공유하는 방식이, 내용면에서 조금 부족하다고 판단됩니다.
* 스터디 팀끼리 돌아가면서 시간을 잡아 발표하는 것도 좋다고 생각됩니다.'
* 몇 달 간격으로 경과 보고를 진행을 해보는 것은 좋지 않을까? - 정의정 학우
* 오픈 캠프 형식으로 스터디 결과를 보고하는 방법은 좋지 않을까? - 안혁준 학우
* "제로페이지 회원이 좀 더 GDG에 행사에 참여하는 모습을 봐서 GDG 개설을 고려하겠다."라는 답변을 받았습니다.
* [고한종], [조영준], [장혁재], [김민재] 학우가 이번 9월 14일에 진행하는 Google 해커톤에 참여할 예정.
* 지금도 신청을 받고 있으므로 관심이 있으면 지원해보세요.
* 아두이노 : 아두이노 관련 서적도 보유중입니다. 아두이노를 이용한 스터디를 계획하고 있다.
- 코바용어정리 . . . . 12 matches
객체의 참조를 유지함으로써 원격 객체를 액세스할 수 있는 node(단어 선택이 부적절한 것 같군 --;;)이다. 즉 객체 레퍼런스를 사용하여 클라이언트는 객체의 오퍼레이션을 수행할 수 있게 된다. 원격 객체를 액세스 하는 과정에 대해 구체적으로 기술하면 다음과 같다. 클라이언트는 언어 맵핑을 통해 객체와 ORB 인터페이스에 액세스할 수 있다. ORB는 구현 객체와 클라이언트 사이의 커트롤 전달 및 데이터 전달 관리를 책임지고 있다. 결국 클라이언트는 언어 맵핑을 통해서 ORB와 상호 작용할 수 있고, ORB는 원격 객체에 대한 레퍼런스를 얻을 수 있게 된다. 이런 방식으로 클라이언트는 분산 환경하에서 객체를 이름과 인터페이스만으로 마음대로 참조할 수 있는 것이다. ORB를 버스라고 생각하면 쉽게 이해할 수 있을 것이다.
클라이언트의 반대쪽에는 구현 객체라고 알려진 실제 객체가 있다. '구현 객체(Object Implementation)'는 실제 상태(state)와 객체의 반응 양상(behavior)을 규정하며 다양한 방식으로 구성될 수 있다. 구현 객체는 객체의 메소드와 객체에 대한 활성화 및 비활성화 프로시저를 정의한다. 구현 객체는 객체 어댑터의 도움을 받아 ORB와 상호 작용한다. 객체 어댑터는 구현 객체를 특정하게 사용하는 데에 편리하도록 ORB 서비스에 대한 인터페이스를 제공하게 된다. 구현 객체는 ORB와 상호 작용하여 그 정체를 확립하고 새로운 객체를 생성하며 ORB에 따르는 서비스를 획득할 수 있도록 한다. 새로운 객체가 생성되면 ORB에게 통보되고 이 객체의 구현이 어디에 위치하는가를 알게 된다. 호출이 발생하면 ORB, 객체 어댑터, 스켈레톤은 구현의 적절한 메소드에 대한 호출이 되도록 만들어야 한다.
CORBA는 C++과 Java 같은 객체 지향 언어와 C와 같은 절차적 언어 양쪽 모두에서 사용될 수 있다. 객체 지향 언어에서는 사용자가 객체의 특성을 정의하고 그 프로퍼티에 액세스할 수 있게 해주는 메소드와 인터페이스를 제공한다. 이것은 비객체 지향 언어에는 없는 기능인데, 이것들은 각각
클라이언트가 호출될 객체와 수행할 오퍼레이션을 지정하고자 할 때, 특정 객체 A의 특정 오퍼레이션을 지정하는 대신 객체 호출을 동적으로 생성하도록 허용하는 인터페이스를 이용할 수 있다. 이러한 경우 클라이언트 코드에서는 수행되는 오퍼레이션과 전달되는 파라미터의 타입에 대한 정보를 제공해야 한다. 이 정보는 대개 인터페이스 저장소와 같은 런타입 소스에서 얻어진다. 실행 시간 중에 해당 정보를 얻은 후, 클라이언트 코드는 이른바 동적 호출 인터페이스(DII)를 이용해서 동적으로 호출을 할 수 있게 된다.
구현 객체가 ORB에 의해 제공되는 서비스를 이용하는 주된 방법은 객체 어댑터를 통하는 것이다. 객체 어댑터는 CORBA 라이브러리인데 ORB 코어 통신 서비스의 맨 위쪽에 위치하고 있으며 서버 객체를 대신하여 리퀘스트를 받아들인다. 객체 어댑터는 서버 객체를 인스턴스화하기 위한 실행 환경을 제공한다. 즉, 서버 객체에 리퀘스트를 전달하며 객체 ID를 부여하는 등의 작업을 하게 된다는 것이다. 또한, 객체 어댑터는 구현 저장소에 어댑터가 지원하는 클래스와 런타임 인스턴스를 등록한다. CORBA에서는 각 ORB가 기본 객체 어댑터(BOA)라 불리는 표준 어댑터를 지원하도록 규정한다. 하나의 서버가 여러 개의 객체 어댑터를 지원할 수 있다.
객체 어댑터를 통하여 ORB가 제공하는 서비스에는 흔히 객체 레퍼런스의 생성과 해석, 메소드 구현, 보안과 상호 작용, 구현 객체의 활성화/비활성화, 구현으로의 객체 레퍼런스 맵핑, 그리고 구현 객체의 등록 기능 등이 포함된다. 객체 어댑터를 통하게 되면, ORB에서 비슷한 요구 사항을 가진 특정 그룹의 구현 객체만을 한정하여 다루는 것이 가능해진다.
각각의 언어 매핑에 대해(아마도 객체 어댑터에의 의존하게 되겠지만) 각각의 타입의 객체를 구현하도록 해주는 메소드에 대한 인터페이스가 존재할 것이다. 이 인터페이스는 일반적으로 업콜(up-call) 인터페이스일 것이다. 구현 객체의 개발자는 그 인터페이스에 따라 루틴을 작성하게 되고 ORB는 스켈레톤을 통해서 그 루틴을 호출하게 될 것이다. 그러나 스켈레톤의 존재가 그에 사응하는 클라이언트 스텁의 조재를 의미하지는 않는다는 것이다. 이말은 클라이언트가 DII를 통해서 리퀘스트를 만들 수도 있다는 것이다. 또한, 어떤 언어 맵핑은 스켈레톤을 사용하지 않는데, 이것은 Smalltalk에시는 대체적으로 맞는 말이다.
ORB 인터페이스는 애플리케이션에 중요한 지역 서비스에 대한 API들로 구성되어 있지 않다. 이것은 곧바로 ORB로 가는 인터페이스이고 모든 ORB들에 대해 동일하다.ORB 인터페이스는 객체 어댑터 또는 객체 인터페이스에 의존하지 않는다. 대부분의 ORB의 기능이 객체 어댑터, 스텁, 스켈레톤 또는 동적 호출 등을 통해서 제공되므로 몇몇 오퍼레이션만이 모든 객체들에 대해 공통이다. 공통 오퍼레이션에는 get_interface와 get_implementation 같은 함수가 포함되어 있는데, 이것들은 임의의 객체 레퍼런스에 작용하며 각각 인터페이스 저장소 객체와 구현 저장소 객체를 얻는 데 사용된다.
- 콤비반장의메모 . . . . 12 matches
만화 형사 가제트(Inspector Gadget)에서 콤비 반장(Chief Quimby)은 형사 가제트에게 비밀 지령을 내릴땐 항상 자동 폭파되는 특별한 메모지를 사용하곤 했다. 그러나 인터넷 시대를 맞이한 콤비 반장은 이제 메모지 대신 한번만 사용할 수 있는 파일을 사용하려고 한다. ["콤비반장의메모"]와 같은 일회용 정보는 컴퓨터로 어떻게 구현할 수 있을까.
메모리를 mp3 버퍼.. (e.g. 32kByte) 를 더블 버퍼로 잡아서, 네트워크로 더블 버퍼링 시스템으로, 네트웍으로 받은 자료로 다음 버퍼를 채우고.. 이런 형식으로 버퍼를 채운 다음에, 플러그 인 형식으로 배포하는건 어떨까요. 머.. 이건 winamp 에만 한정되겠지요. - [zennith]
''사용자가 한번 플레이 했다는 걸 미디어에 직접 기록하는 방법으로는 디지털 워터마킹이 있습니다. 이 방법은 네트워킹 없이도 문제를 해결할 수 있는 방법입니다만 전문적 지식이 필요합니다. 네트워크로 확인하는 가장 쉬운 방법은 클라이언트는 재생시 마다 서버에서 인증을 받고, 서버측에서는 미디어의 아이디를 확인하고 재생횟수를 저장하는 방법이 아닐까 싶습니다. 미디어의 아이디 생성은 MD5 같은 해쉬함수 정도면 충분 할것 같습니다. --["데기"]''
* 기본의 암호 알고리즘만 적적히 사용해도 괜찮은 어플리케이션을 만들 수 있을꺼 같아여!
''정보보호에 있어서 사실 어려운건 암호화 알고리즘보다 "어떤 순서와 조합으로 이들을 응용할 것인가"의 문제인 것 같습니다. --["데기"]''
그냥 생각이 갑자기 나서 몇자 적어 봅니다. 자기 자신이 압축을 풀 수 있는 Zip - self-..어쩌구였는데 그러한 형태로 만들고 마지막에 분리한 데이타 파일을 지우는 식으로 만들어 봐도 재미있을꺼 같다는 생각이 들어서 .. 다 아는 건가? - fnwinter [정직]
* 사용이 간편하고 편리하다.
MGM이 11월 개봉한 20번째 제임스 본드 영화 '다이 어나더 데이' 홍보를 위해 제작한 DVD가 36시간 이내에 영화장면 일부와 예고편 내용이 사라져 영화평론가들에게 화제를 불러일으켰다.이 DVD는 새로 나온 음악과 영화정보도 알릴 수 있고 내용이 일정시간이 지나면 사라지므로 인터넷에 복제판이 뜰 염려가 그만큼 줄고 있기 때문이다.
이 기술을 개발한 플렉스플레이사와 스펙트라디스크사는 각기 DVD 겉혹은 내부에 화학물질을 첨가해 DVD를 이용하기 시작한 시간에서부터지정된 시간까지만 내용을 볼 수 있도록 하고 있다.
- 큰수찾아저장하기/조현태 . . . . 12 matches
흑.. 잠시 짜고 사라져야 하는 운명..ㅎㅎ
천하의 허아영이 못해서라니, 말도 안돼. 차라리 책에 문제가 이것밖에 없다고 해라.ㅋㅋ
그리고 난이도를 올리자고 한건말야, 오랜시간동안 생각해서 알고리즘이 많이 차이가 날만한 문제를 보고싶었던거야..ㅎㅎ 아직은 많이 비슷한듯..ㅎㅎ - [조현태]
난 나름대로 '''기초'''에는 충실한 여러가지를 접하게 하려고 노력했는데, ㅎㅎ
[반복문자열] 할 때, 선배님들이 조언 해 주신거 보구. 놀랐다니까.. 쉽다고 생각했었는데, 다른 관점을 많이 말씀해 주시니까.
그 다른 관점들이 다 똑같다고 생각했었는데, 다르다고 생각하게 만들어 주셨기도 하고 ^^
고로 쉬운것도 다시 한번 보는 센쓰~~ !! ^^ 좀만 기달리시게!~ ㅋ-[허아영]
- 튜터링/2011/어셈블리언어 . . . . 12 matches
* 6주차 : 중간고사 대비 총정리
* 7주차 : 중간고사로 휴강
* 14주차 : 고급언어 인터페이스
* 중간고사를 위한 여러분의 대비
* 책의 정의를 그대로 외우지 말고 왜 그렇게 되는지를 이해하자.
* 중간고사 기간입니다.
* 2주 하고도 반짜리 진도를 한번에 나가버렸다.
* 스택에 push되는 값이 무엇인지 생각해보고 pop된 값을 어디에 저장할지를 정하자.
* 전체 코드는 아니고 3N+1 부분만
* 커리큘럼을 잘못 계산했네요.. 15주차는 기말고사중..
* 기말고사 기간에도 강의할만큼 나에게 여유가 있지 않다..
* 나야말로 찌질거리며 피피티 파고있을듯
- 2006동계MT . . . . 11 matches
- 좋았던 점 : 제가 제일 좋아하는 zeroPage 술자리인 만큼 너무 재미있었고 다들 즐거워하는 것 같아서 뿌듯했습니다.^_^
- 좋았던 점 : 여학우와 함께한 MT?ㅋㅋ 정말 너무 즐겁게 놀고 잼있었습니다.ㅋ 방을 빨리 못구했어도 돌아다니며 공기 마시고 경치구경하고.
좀 늦게가긴 했지만 재밌었고, 술 그렇게 먹어본적 처음인듯 -ㅅ-);;
속이 안좋아서 고생한게 어흑 ㅠㅠ 아쉽다. 다음에는 컨디션이라도 한병 빨고 가야겠다.
흐흐 핸펀 사진을 좀 많이 찍을걸 그랬네요. 제가 찍은건 다 흔들리고; 난리가 아니네요.. 재밌었구요! 너무너무 수고 많았어요!! 특히 추진력있는 ZP회장 아영이에게 수고했다고 모두들 박수 -ㅅ-)// - 태훈
- 2학기자바스터디 . . . . 11 matches
그리고 배운걸 바탕으로 간단한 프로그램을 완성하고요
DeleteMe) 제 생각에는 프로젝트를 하나 진행하는 것이 낳을 것 같습니다. 책의 내용을 그대로 따라가다 보면 굉장히 지루합니다. 그냥 프로젝트를 하나 선정해서 하는 것이 재미있을겁니다. 그리고 교제는 흠... 여러분들이 영어라고 안보는 레퍼런스와 튜토리얼이면 충분하다고 생각이 들지만 그게 아니라면 비싼거 말고 싼걸루 좋은책 하나 선정해서 보시기 바랍니다^^; -[상욱]
아~ 참고로 저의 게으름으로 방학 중 자바 스터디가 허술한 점은 사과드립니다;;; -[상욱]
추석끝나고 본격적으로 시작하죠... 교재는 따로 정하지말고 도서관에서 읽기 쉬운걸로 골라서 보면 될것 같구요... 프로젝트까지는 아니어도 간단한 프로그램짜는걸로 해요(toy problem이나 5인용스터디에서 했던것처럼) -세환
내가 자바의 쉬운 GUI사용을 보여줬자나;;; ToyProblems도 괜찮지만 하나 목표를 크게 잡고 하는것도 꽤나 재미있어. -[상욱]
교재는 [게임을 만들며 배우는 자바 프로그래밍]이고 지금목표는 테트리스, 더 나아간다면 네트웍테트리스...
- Basic알고리즘/63빌딩 . . . . 11 matches
= Basic알고리즘/63빌딩 =
그 층을 알기 위해서 다섯번을 떨어질 기회가 주어진다면, 어떤 방법으로 그 층을 찾을 수 있을까 ? (search알고리즘)
* 찾을 수 있나..;; 일단 코딩은 했는데 6번 죽어야 하던데... 알고리즘을 개선해야 하나..T.T 그런데 2의 6승이니까.. 6번죽어야 할꺼 같기도 한데..- [조현태]
* 떨어졌을 때 죽었으면 더 아래층,또는 그 층이고, 안죽었다면 더 윗층에서 죽겠죠? -아영
이진검색 이란 순서대로 (이진트리안에) 보관되어 있는 데이터를 검색하기 위해서 중간에 있는 (혹은 이진 트리의 루트에 해당하는) 값을 고른다음, 찾는 값이 그보다 크면 오른쪽으로 (값이 더 큰 쪽으로 ) 이동하고, 작으면 왼쪽으로 (값이 더 작은 쪽으로) 이동하는 방법을 의미한다. 유명한 알고리즘이므로 모르는 사람이 없으리라고 생각한다. -저자^_^
임의의 층을 17층이라고 보자.
그러고 보니, 그렇네 - 17층에서 죽느냐 안죽느냐에 따라서 그 층이 달라지는거잖아. 임의의 층이 17층이므로 17층에서는 죽어야겠네? -허아영
[Basic알고리즘]
- Chapter I - Sample Code . . . . 11 matches
프로세서마다 각각 가지고 있는 특성이 다르기 때문에 우리가 포팅하려는 타겟 CPU에 맞춰 여러가지 글로벌 변수를 선언해줘야 한다. (글로벌 변수라기보다는 키워드 재정의라고 말하는게 더 맞겠다) [[BR]]
위처럼 다음과 같이 매크로 정의를 해 놓고 다음과 같은 소스를 적용시킨다고 해 보자
디스플레이는 문자기반으로 한다. x, y값을 이용해서 아스키문자와 특수문자를 출력할 수 있다. 1글자 출력에 사용되는 바이트수는 2이다. 1바이트는 글자이고, 나머지 1바이트는 포그라운드/백그라운드 컬러이다. (상위 4비트가 백그라운드이고 하위 4비트가 백그라운드 컬러이다)
uCOS-II는 여타의 DOS Application 과 비슷하다. 다른말로는 uCOS-II의 코드는 main 함수에서부터 시작한다. uCOS-II는 멀티태스킹과 각 task 마다 고유의 스택을 할당하기 때문에, uCOS-II를 구동시키려면 이전 DOS의 상태를 저장시켜야하고, uCOS-II의 구동이 종료되면서 저장된 상태를 불러와 DOS수행을 계속하여야 한다. 도스의 상태를 저장하는 함수는 PC_DosSaveReturn()이고 저장된 DOS의 상태를 불러오는것은 PC_DOSReturn() 함수이다. PC.C 파일에는 ANSI C 함수인 setjmp()함수와 longjmp()함수를 서로 연관시켜서 도스의 상태를 저장시키고, 불러온다. 이 함수는 Borland C++ 컴파일러 라이브러리를 비롯한 여타의 컴파일러 라이브러리에서 제공한다.[[BR]]
'''uCOS-II를 끝내기 전에 PC_DOSSaveReturn 함수를 호출해야한다. 그렇지 않으면 DOS가 curruped mode 가 되어버리고 이것은 당신의 windows에 영향을 줄 수도 있다.'''
- CryptKicker . . . . 11 matches
암호화된 텍스트가 한 줄 이상 입력되는데, 각 줄마다 서로 다른 치환 방법이 적용된다고 가정하자. 암호화 이전의 텍스트에 있는 단어는 모두 주어진 사전에 들어있는 단어라고 가정하고, 암호화된 텍스트를 해독하여 원래 텍스트를 알아내자.
이런 종류의 암호화를 단일환자치환법, 또는 단일환자방식의 암호화 라고 합니다. [암호의세계] 라는 책에서 이 방법에 대해서 자세히 풀어 놓았었는데;; 하하하 책 헛읽었군요;; 이걸 보니 더블릿이랑 비슷한듯. - [이승한]
단일환자 방식은 암호화 방식중에서도 기초적이고 풀기도 쉬운 방식이다. 복호화된 한줄의 원본 문장만 가지고 있어도 거의 모든 암호를 풀어내 버릴수 있기 때문이다.
영어는 26글자의 알파벳으로 이루어져있다. 단순히 짜맞추기엔 너무 많은 갯수이다. 하지만 그것들의 출현빈도는 각각다르다. z, q와 같은 글자는 1%미만의 출현비율이 나타나고,
e, i, o 와 같은 글자는 알파벳의 특성상 10퍼센트가 넘는 출현빈도가 나타난다. 기억나기론 E가 13퍼센트 정도였던것 같다. 이 규칙을 따르지 않는 문장과 단어가 있지 않나고 반박할지 모르지만 확률이다. 특수화된 경우의 문장과, 단어의 경우를 일반화 시키면 곤란하다. 이런 알파벳의 출현빈도는 몇줄의, 몇개의 단어에는 잘 맞지 않을테지만, 암호화된 문장과 문서가 많아질수록 그 출현빈도는 표중화된 확률에 거의 일치하게 된다.
또 gh, ing, ed, the, a 와같은 자주출현하는 글자쌍도 존재한다. 만약 암호화된 코드에 덩그라니 한글자짜리 x 가 존재한다면 그것은 a일 가능성이 높아진다. 또 qer가 있따면 이것은 the가 될 확률이 높아지는것이고.
송수신가자 모두 가진 무언가 공통의 법칙이 필요했을것이고, 그렇게 되면 보안상의 문제가 발생하게 되는것이다. 직접 만나서 건낼 수 있다면 좋지만, 직접 만날거면 뭣하러 암호화된 문장을 사용하겠는가. 아무튼 암호화 규칙이 노출되지 않게 하기위해서는 상당한 노력이 필요했을것이다.
단일환자치환법은 조금 허접해 보일지 모르지만 결코 이 방식을 무시할수 없는 이유는 거의 모든 암호화 방식이 이 방법을 활용하고, 변형한 방식이기 때문이다.
- DataStructure/Tree . . . . 11 matches
* n0을 잎사귀 노드의 갯수, n2를 Degree가 2인 노드의 갯수라고 하면 n0 = n2 + 1 이라는 공식이 성립한다.
* 일반적으로 정렬되어 있는 배열에서 가장 빠른 탐색을 자랑하는 알고리즘으로 알려져 있답니다.(맞나?--;)
* n이 한 2048정도 된다고 하면 일반 탐색은 2048이 걸리는 반면 이진 탐색은 11밖에 안걸린다는 말이져
* Keys in Right Subtree > Keys of Node(고로 순서대로 정렬되어 있어야 한단 말입니다.)
* 알고리즘
* if x = Root's Key then 찾았으니까 알고리즘 끝
* x의 Child가 1개 있을 경우 - 그 노드 지우고 그 자식들을 다 위로 올린다. 고로 할아버지의 자식이 된다는 것이다.(뭔가 좀 이상?--;)
* x의 Child가 2개 있을 경우 - 그 노드의 Left Subtree에서 가장 큰 값을 찾는다. 이값을 y라고 하면 y는 오른쪽 Child가 없다. y를 x자리에 갖다 놓고 여기서 다시
* y가 Child 있으면 - 그 밑의 노드들을 한단계 위로.. 고로 할아버지의 자식
- JavaStudyInVacation/과제 . . . . 11 matches
* AWT와 SWING이 무엇인지 알아보고, 그 차이점에 대해서 알아보기. 그리고 어떤것을 사용하는것이 더 좋다고 생각하는지, 그리고 왜 그렇게 생각한는지...?
* SWING을 사용하여 버튼이 있고, 그 버튼을 누르면 간단한 메시지를 출력하는 자바 에플리케이션 작성해 보기.
* 에플리케이션과 에플릿의 차이점에 대해서 알아보고, 그 쓰임에 대해서 알아보기.
* 그 에플릿을 포함하고 있는 HTML 문서를 만들어 각자 자기 계정에 올리고 위키에 링크 걸기.
'''''여기서부턴 각자 하지 말고 팀으로 같이 할것!'''''
* 클라이언트가 접속되면 클라이언트의 IP 주소와 포트를 출력해주고, 클라이언트로 "ABCDEFG" 라는 문자열을 보내준다.
* 서버와 접속을 끊고 프로그램을 종료한다.
- MoniWikiPo . . . . 11 matches
msgstr "그림 고치기"
msgstr "이름 바꾸고 그 역링크 수정"
"페이지 구독을 하시려면, ID를 등록하고 전자메일 주소를 UserPreferences에서 등"
msgstr "고치기"
msgstr "고칠수 없음"
msgstr "탬플리트를 만드시려면 Template라고 이름이 끝나는 페이지를 만드세요.\n"
msgstr "탬플리트를 만드시려면 Template라고 이름이 끝나는 페이지를 만드세요."
msgstr "고치기 도움말"
msgstr "--카테고리 선택--"
msgstr "%s을(를) 고치는 동안 다른 사람이 이 페이지를 저장했습니다"
msgstr "아무도 페이지를 구독하지 않고있습니다."
- PowerOfCryptography/조현태 . . . . 11 matches
사실 하라면 못할것도 없지만, 입력 형식과 출력 형식등을 새로 짜내고, 덧셈및 곱셈연산을 다시짜주면 간단히(?)해결된다.
두번째 소스.. 숫자가 커도 저장하고 연산할 수 있을...듯 하다..;;ㅁ;; ㅎㅎㅎ MAX_LONG의 값을 10으로 줄이고 테스트를 해서 2개 이상의 경우에도 돌아가는 것은 알겠는데... 3번째 4번째 예제의 수가 원체 커야지 말이다. 연산의 결과가 좀처럼 안나온다. 곱하기 루틴에서 계속 더하고 있는듯..;;ㅁ;;
필요할때마다 malloc으로 할당하고 포인터로 넘겨서 연산하는 방법이 있습니다만....(귀찮다...귀찮다..귀찮다..윽.. 이게 아니잖아!!) -[조현태]
└음... 그거 내가 고등학교때 짜다가 포기했던 방법이네 ㅋㅋㅋ 나중에 가니 꽤나 복잡해져서...
한번 공부하고 만들어봐... C언어에서 인라인 어셈 써서 함수 만들어두 좋구. 아래 참고. - [이영호]
;;ㅁ;; 음.. 영호선배는 넘흐 마니 알고이쩡..>ㅃ<;; C언어 소스 봐도 모르게떠용..ㅎㅎ 64비트형의 인트형의 변수를 두개 지정하고 a에다가 최대값을..(아마 부호가 있기 때문에 -1저장됬을듯한..)넣고 b에는 a-1을.. 그럼 -2가 저장..;; 음.. 이게 아니라 혹시 b가 포인터라서 메모리 한칸 앞쪽을 잡아주는 건가요? 음.. 그러면 할당되지않은 메모리를 건드는 사태가..;;ㅁ;; 이것도 아닌가.. 연구를..;;ㅁ;; - [조현태]
- ReleaseDebugBuildStartGo의관계 . . . . 11 matches
반면, CTRL-F5는 IDE가 실행 프로세스를 단순히 생성(fork)하는 역할만 합니다. 즉, 배포된 프로그램을 우리가 설치해서 실행할 때와 똑같은 환경이라고 생각하면 되겠습니다.
이 두 개의 기능은 방금 설명한 것 이외에 조금 다른 실행환경을 제공합니다. 바로 "미초기화 변수의 초기화"입니다. 그리고, 이 양상은 프로그램이 릴리즈 빌드냐, 디버그 빌드냐에 따라 다릅니다. 아래와 같은 구조체와 이것을 사용한 코드(비록 한 줄이지만)있다고 가정합시다.
이 코드를 릴리즈 빌드로 만들고, Start(CTRL+F5)로 실행할 때의 b값과 Go(F5)로 실행할 때의 b값을 체크하면 서로 다르게 나옵니다. Start의 경우 b의 값이 false가 나오고, Go의 경우 b의 값이 true로 나옵니다. 바꾸어 말하면 Start는 미초기화 변수를 0으로 놓고, Go는 0이 아닌 값으로 세팅한다는 것입니다. (실제로 bool 타입의 false 값을 VC6의 디버거로 읽으면 0입니다. VC7의 경우엔 false라고 나오지만요)
한데, 디버그 빌드의 경우는 어떨까요? 그 경우에는 Start나 Go나 차이를 보이지 않고 b값이 true입니다. 여기서 자그마한 결론을 얻을 수 있습니다.
디버깅할 때는 잘 돌던 프로그램이 그냥 실행시킬 땐 오동작을 보이는 경우가 있어 막대한 육체적/정신적 에너지를 낭비하는 경우가 있는데, 그런 경우를 만난다면 이 글의 내용을 한 번쯤 떠올려 보시기 바랍니다. 그리고 다음의 점검을 해보시기 바랍니다.
- 실수로 초기화하지 않고 쓰는 지역변수가 있는가?(요즘 나오는 대부분의 좋은 컴파일러는 경고 메시지를 내주긴 합니다만)
- TheWarOfGenesis2R . . . . 11 matches
4. GPG책 보고 A* 알고리즘 익히기
== 기본적인 길찾기 알고리즘 구현한 소스(11/05) ==
= 참고 =
* 내가 그 길찾는 프로그램 돌려봤는데.. 가끔은 벽을 뚫기도 한다. ^^ 내부벽 뿐만 아니라 외부벽을 뚫고 나가 헤매기도..;; 그리고 지그재그로 돌다가 가기도 한다. 참고하라궁...^^ --["창섭"]
* 억.. 그러냐?--; 우리가 실행한 테스트에서는 다 고친줄 알았는데 아니었나 보군.
* 내가 찾은건 자기 자신칸을 눌렀을때.. -_-헤맨다.. 벽을 뚫고가는 현상은 없는걸로 아는데..
* 잘고쳤네.. 목요일날 또 보자고 ㅡ.ㅡa --["snowflower"]
- UserStory . . . . 11 matches
UserStory 들을 작성한 뒤에는 Wiki:EngineeringTask 를 결정하고, estimate (해당 작업에 대해 얼마나 걸릴 것인가에 대한 예측)한 Story Point 와 Task Point 를 기준으로 적절히 계산해 나간다.
estimate 를 하기 힘든 경우는 두가지가 있다. 하나는 해당 Story 가 애매한 경우이고 하나는 해당 Story의 구현이 전혀 생소한 부분인 경우이다. 해당 Story 가 애매한 경우에는, 주로 Story에서 해야 할일이 많은 경우이다. 해당 Story를 작은 Story들로 나누어서 생각해본다. 구현이 전혀 생소한 부분에 대해서는 SpikeSolution을 해본뒤 estimation 하는 방법이 있다.
Use Case 에 대해서 문서를 작성하고..그 다음으로 System Sequence Diagram을 만드는데.
개발 방법론이란 것이 어떻게 보면 다 그렇고 그런거 같아. ^^ - 구근
물은 물이고 산은 산이다에서 물은 물이 아니고 산은 산이 아니다로 가고 난 후에야 비로소 다시 물은 물이고 산은 산이다로 올 수가 있죠. 항상 초월적으로 모두 다 같다 혹은 모두 다 다르다는 식으로 말하는 태도는 공부를 하고있는 학생으로서는 상당히 위험하지 않을까 하는 우려를 해봅니다. Wiki:UserStoryAndUseCaseComparison 에 양자의 유사점, 차이점에 대한 논의가 있습니다. 참고로 Use Case의 대가라고 불리우는 코번은 다음과 같은 말을 합니다.
- 객체지향용어한글화토론 . . . . 11 matches
* 좋은 책은 그 어휘를 친절하게 설명을 해주기도 한다. 하지만 모든 단어들을 설명해 놓은 책들은 없다고 보는게 좋고. 정말 난해한 책들은 그나마도 그 단어들을 설명해 주지 않고 넘어간다.
* [이승한]이 처음 C언어를 접했을때 가장 답답했던 점은 용어를 한글로 적어 놓긴 했지만 발음 그대로 옮겨 놓은것에 불과해서 그것이 어떤 뜻을 담고 있는지, 어떤 의미로 쓰이고 있는지 전혀 못 알아 보았던 점이다.
* 게다가 점임가경으로 그렇게 발음 그대로 옮겨ㅤ많은 용어들이 책마다 다르게 쓰여져 있다는 것이었다. 특히 발행년도가 몇해씩 차이가 나는 책들은 그게 유난히도 심해서 도저히 같은 용어라고 보기 힘든 경우도 참 많았다. 그래도 요즘은 국내의 개발자 커뮤니티들이 많이 활성화되어서 사람들의 암묵적인 합의가 있어서 그런지 어느정도 통일이 되긴 했다.
* 'oriented'라는 단어가 사전에서는 '지향'이라고 설명되어 있지만, 그 고어적인 뜻은 '비롯되다', '해가 뜨는', '출현하는', '발생하기 시작하는' 이라는 뜻을 가지고 있습니다. 따라서 'Object oriented'라는 용어는 '객체에서 비롯된다'라고 해석할 수 있지요. 저는 이것이 좀 더 정확한 해석이라고 생각합니다. - [http://garden.egloos.com/10001141/post/20974] - 출처
- 남자들에게 . . . . 11 matches
* 이책을 읽게 된 동기 : 솔직히 이책은 작가의 이름때문에 읽게 된거 같다. 예전에 로마인 이야기를 읽으면서 참 재밌다고 생각해서 그 책을 지은 작가도 알고 있었다. 그 작가가 바로 시오노 나나미다. 그리고 어떤 사람이 이 책을 추천하는 글을 본것도 이책을 읽게된 동기이다.
* 감상 : 음 이책은 주관적인 면이 강한거 같다. 뭐 이책의 특성상 자기의 의견이 많이 드러날 수 밖에 없는거 같다. 이책은 수필 스타일로 씌어 졌다. 그래서 평소 로마인 이야기에서와 같이 뭔가 자신의 모습은 감추는 듯한 시오노 나나미씨의 모습과는 다르게 이 책은 온통 시오노 나나미씨의 생각들이다. 그래서 더 흥미로웠는지도 모른다. 이책에서는 시오노 나나미씨가 남자들에게 말하고 싶어하는 여러가지 내용이 나와 있었다. 음 바로 어제지만 좀 많이 까먹어서 별로 많이 생각나지는 않지만 몇가지만 적으면....
* 너무 원칙에만 충실하려고 하고 다른 사람에게도 그 원칙을 강요하는 사람. 어느정도 공감이 가는 내용이었다. 그리고 나에게 적용해서 내가 고칠점은 무엇인가도 생각해 보았다. 자신이 가지고 있는 원칙이 무조건 옳고 다른 사람도 그렇게 해야 한다고 생각하는것은 정말 피해야할 생각인거 같다.
- 문자반대출력/허아영 . . . . 11 matches
그리고 char 함수를 처음 사용해서. 처음에 에러도 많이 났다.
그리고 파일 입출력도 익숙치 않다. 연습좀 해야겠다.
* ver2 를 만들려고 한다.
한글문자열을 반대로 출력하는 알고리즘이 떠오르지 않는다.
많이 고민중... +_+
choiceNum을 영어, 한글, 문자로 세분화 하려고 했으니 일단은 저렇게 코딩.
비베에서는 한글이나 일본어처럼 2바이트를 사용하는 글자의 경우 알아서-_- 판단하고 한 글자 단위로 읽는 함수가 있긴 한데 씨에서는 알파벳과 같은 1바이트 문자인지 아니면 2바이트 문자인지를 어떻게 구분해야 할까요? -태훈 [zyint]
한글로 해봤었는데, 이 프로그램은 영어만 되나, 하고 생각했었습니다. MSB를 이용하면 되겠군요. MSB에 대한 자세한 설명이 필요합니다. --아영
MSB는 비트로 표현된 값에서 가장 중요한 요인이 되는 값을 말합니다. 가령 10001000 이라는 값이 있을때 가장 왼쪽에 있는 1이 MSB입니다. 마찬가지로 가장 왼쪽에 있는 0을 LSB (Least Significant Bit)라고 합니다. 지금 설명드린 내용은 BigEndian Machine 의 경우, 즉, 비트를 왼쪽에서 오른쪽으로 읽는 아키텍처에서의 MSB, LSB를 설명드린 것이고, LittleEndian (비트를 오른쪽에서 왼쪽으로 읽는) 아키텍처에서는 LSB와 MSB가 바뀌어야겠죠. 현대의 거의 모든 아키텍처에서 영문은 ascii 코드로 표현합니다. ascii코드의 값은 0~127인데 이를 8비트 2의 보수를 사용해서 표현하면 MSB가 모두 0 이 됩니다. 이 경우에는 해당 문자가 1바이트의 문자란 것을 뜻하고, MSB가 1인 경우에는 뒤에 부가적인 정보가 더 온다 (죽, 이 문자는 2바이트 문자이다)라는 것을 말합니다.
- 방울뱀스터디 . . . . 11 matches
참여하고자 하는 사람은 참가자에 자신의 이름을 추가해 주세요.
저도 하고 싶은데 언제부터 하는 거죠? [조재화]
지금까지 해왔던 기존의 다른 스터디와는 좀 다르게 해보려고 합니다. 그동안 ''가르치는 것''에 대하여 여러가지 고민도 해보고 조언도 얻고 해서... 변해야 한다고 생각했습니다. 잘 될지는 저도 잘 모르겠습니다. --재동
처음엔 힘들지도 모르지만 하고 나면 쉽게 배우는 것보다 100배 더 뿌듯할 것입니다. --재동
형 계획에서.. 팀프로젝트같은거.. 저 제외하고 진행하시는게... 전 그냥 꼽사리 수업생으로 큭..
아 그리고 3번참여하는거에 열심히 할께요 --준환
21일에 우선 만나고 그때 이야기 하자꾸나... --재동
- 새싹교실/2011/學高/5회차 . . . . 11 matches
=== 자기 반성 및 고칠 점(feeling/finds) ===
그리고 새싹 선생님 열정적으로 가르쳐주셔서 감사해요 ㅋㅋㅋ
++i는 전에 1을 더해주고 실행하는것.
%는 나누고 나머지.
같다를 표현하고 싶다면 == 을 쓸것.
=== 자기 반성 및 고칠 점(feeling/finds) ===
그리고 = 의 주의사항
x=y일경우 x에다 y를 넣는거고, 같다는건 x==y
또한 x=x+3 보다는 x+=3요렇게 ? 인가? 이렇게가 더 많이 쓰이고 편하다는(?)것.
=== 자기 반성 및 고칠 점(feeling/finds) ===
이거 끝나고 다시 c 공부해야겠어요 ,
- 새싹교실/2011/쉬운것같지만쉬운반/2011.3.23 . . . . 11 matches
3. 나는 프로그램이 실행되고 CPU가 맨 먼저 호출하는 함수가 뭔지 안다! (O/X)
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* C언어 진도를 나간 첫 수업이었다. 내가 생각보다 수업을 빠르게 진행을 한건지 수업을 반정도 진행하니까 준비해간 내용을 전부 진도를 빼버렸다; 1시간을 가르치려면 1시간을 준비해야한다더니, 그 말이 맞는 것 같다. 다음 화요일 수업에는 더 많이 준비해야겠다. C언어 말고도, 간단하게 다른 새로운거 접해보라는 의미로 tryhaskell홈페이지를 알려주었다. 애들이 재밌게 해봤으려나?ㅋㅋ - [박성현]
* 새싹교실에서 컴퓨터는 무엇인가, 프로그램은 무엇인가, 프로그램은 어떻게 만드는가 등을 배우고 직접 코딩도 해보았다. C언어는 정말 흥미로웠다. 새싹 선생님이 알려주신 tryhaskell홈페이지에 들어가서 haskell이란 언어도 체험해봤는데 뭔가 C언어보다 고급 언어라는 느낌이 들었다(맞나....) 다음주에 배우게 될 것이 궁금하고 기대가 된다. - [송치완]
* C언어 프로그래밍을 시작하기 위해 필요한 컴퓨터와 프로그램에 대한 지식을 공부하였다. C언어는 역시 멋진 언어인 것 같다. haskell을 해 보고 싶었는데 사이트가 이상했다 ㅠㅠ.. 프로그래밍 언어는 너무 많은 것 같다. 다 배우려고 하진 말아야지... - [장용운]
상기 코드가 정상적으로 진행되었기 때문에 main함수는 0을 리턴하고 프로그램이 종료된다.
프로그램은 여러 데이터를 가지고 사용자가 원하는 일을 수행하는 것입니다.
- 새싹교실/2013/라이히스아우토반 . . . . 11 matches
* 라임을 맞추면서, 최대한 길고, 그나마 공학 냄새가 덜 나며, 북한어가 아닌 명사를 선정.
[고한종],[임지훈],[이명연],[지영민],[박경준]
> '''새싹 교실을 통해서 배우고 싶은 것, 얻어가고 싶은 것, 목표와 각오 등을 적어주세요!!'''
* 새싹을 통해 정말로 유용한 측면에서의 언어를 배우고 컴퓨터언어를 최대한 마스터 하는 쪽으로 노력하겠습니다.!!-[박경준]
* 영어, 수학 빼고 모르는거 물어보면 다 대답해 줄 수 있음(...)
* 물리는 수학임!!!... 대학교 입학하고나서 과학 과목 하나도 안건드렸는데, 물리는 애초에 못 했는데 대답해 줄 수 있을리가 없으어으ㅠㅜ
* 너무 공부쪽으로 생각하지 말고 다른것도 물어봐도 됨.
중간고사 2주전이라 기출문제를 주고 풀어보는 시간을 가진걸로 끝(...) 미안
중간고사 직전 주라 쉼
- 숫자를한글로바꾸기/허아영 . . . . 11 matches
리펙토링 하지않고 올린다.
char num_position[15] = " 십백천만"; //<-사실 여기도 그냥 "십백천만"이라고 해도 된다.
char num_position[15] = " 십백천만"; //<-사실 여기도 그냥 "십백천만"이라고 해도 된다.
음. 중간에 변수명 오타 고쳐놔뜸.ㅎ
그리고..
이런고.. 출력할때 고생하지말궁..
매번 문제내느라 수고하넹.ㅎ 고생혀~ 그럼 좋은하루.ㅎ - [조현태]
리펙토링 하지않고 올린다.
- 리팩토링은 프로그램을 완성한 후에 하는것이 아니라 프로그래밍을 하는 도중에 하는게 더 좋다고 생각합니다. - 임인택
- 정모/2011.7.4 . . . . 11 matches
== 로고 공모 ==
* [데블스캠프2011]이 끝나고 진정한 방학(?)이 되었습니다.
* 중간에 물리 교수님에게서 전화 와서 전화 받고 오니까 많은 부분이 지나가있더군요 -ㅅ-;;;; 쩝.. 뭐 그래도 들을 내용은 다 들었으니깐... 방학을 맞아 새로이 스터디가 진행되는 건 열심히 해 봐야겠네요a 결국 방학이든 아니든 학교는 자주 오게 된 -ㅅ-ㅋ 끝나고 곱창집이랑 하우스?에서 아이스크림 먹고 오락실 가서 1945한판 하고 (펌프가 없어서 못하고) 재미있었습니다. ㅋㅋㅋ - [권순의]
* 재학생으로 지낼 수 있는 마지막 학기라고 생각하니 역대 제로페이지 활동 중 가장 많은 프로젝트/스터디에 참가하게 되었습니다. 그 동안의 지피 활동에 비해 프로젝트/스터디 활동을 참 적게 했던게 부끄럽네요ㅠ 역시 공부와는 거리가 먼... 뭐 하나 도중하차 하지 않고 끝까지 하고 싶어요. 곱창은 검색한 보람이 있었고 오락실에서 아무 게임도 못한건 아쉬웠습니다. (테크니카라도 배워야 하나...ㄱ-) - [지원]
- 정모/2013.5.20 . . . . 11 matches
[김해천],[송정규],[김민재],[안혁준],[김윤환],[김현빈],[고한종],김혜준ㅋㅋㅋㅋㅋㅋ,[조광희],[이봉규],[박희정],[김남규],[임지훈],[장혁재], [김태진], [서민관], [박성현], [정종록]
* 데블스캠프 연락을 돌렸습니다. 양식은 [정모/2012.5.21] 내용을 참고로 했습니다.
* 신기한거 많고, 싸고, 재밌으니까 많이많이 갑시다.
* 금요일에 갈 사람은 [고한종]에게 연락하시오.
* 다른날에 가고 싶다 => 파티 구해서 가세요.
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* TIP : Internet Explorer를 제외한 브라우저(FireFox라던가 Chrome이라던가)로 들어오면 각 항목 우측에 "편집"이라고 떠요. 좀 더 편하게 수정 할 수 있죠.
* 왜 내가 1등인 겁니까!!... 발표 연습 많이 해야겠어요. 주제도 간결화하는 연습을 해야 겠고요. 경험 하나 쌓았다는 것에 만족하겠습니다. 근데 스터디 상태 공유를 안한 거 같은데.. - [김해천]
* 작년에 저거보다 훨씬 많았는데 저날 전화돌린다고 안적은듯. -[김태진]
- 주요한/노트북선택... . . . . 11 matches
요게 제가 동문회 겟판에 올렸던건데.. 결정하기 힘드네요.. 도데체 뭐가 다른지도 잘 모르겠고.. 왜 가격차는 그렇게 큰지.. ㅋㅋ 좀 도와주세요...
나같은 경우에는 [http://kr.dcinside14.imagesearch.yahoo.com/zb40/zboard.php?id=notesell nbinsde노트북중고] 에서 중고 매물로 소니바이오 S38LP를 158만원에 샀는데,, 아는 선배는 같은것을 새거로 290만원 가까이 주고 샀었다는 말을 주고 보람도 있었음,,
노트북은 에버라텍이 가격대 성능비가 괜찮다고 하고, IBM 거는 튼튼하다고 하고 뭐 여러가지가 있는데, 저 http://nbinsde.com 에서 직접 정보를 모아 보는게 제일 좋을듯... 나같으면 새거같은 중고 노트북을 사겠지만.. - [(namsang)]
게시판에 처럼 제목을 위키에서는 잘 안짓습니다; 자기이름/노트북선택 << 이런식으로 카테고리를 정확하게 해주세요.
- 튜터링/2013/Assembly . . . . 11 matches
* 어셈블리 언어란 무엇이며, 왜 쓰고 장단점은 무엇인지 써보자.(서술식으로 자신이 아는 내용/책에서 찾아본 내용을 써내려가보자.)
* 컴퓨터 구조가 어떤 식으로 되어있는지 써보고, CPU에는 어떤 것이 있으며 각각 무슨 일을 하는지 써보자.
* 재귀함수에 관해 써보고, n!을 재귀함수로 작성할 때 무엇을 고민해야하는지 써보자.
* 가능하다면 n!을 직접 구현해보고 돌려보자.
1. Instruction Execution Cycle을 도식하고, 설명하세요.
* 어셈블리언어의 기본문법을 보고, 어떤 프로그램이든 컴파일시키고 실행시켜보자.
1. 각 배열을 그림으로 표현하고, 다음의 실행결과가 나오도록 괄호를 채우시오.
4.다음 방식(indirect, indexed)로 코드를 작성하고, 설명하시오.
* 중간고사 이전 범위 Review
- 학술터위키와제로페이지위키링크문제 . . . . 11 matches
-상협- 이번에 학술터를 위키로 만들어서 활성화 하고자 하는 프로젝트를 동문서버팀과 정통부가 연계되어서 추진하고자 합니다. 동문서버팀이 위키를 만들어 주면 정통부에서 그 위키에 필요한 기본적인것들을 채우기로 했습니다. 그런데 위키가 처음 열릴때 기본적으로 사람들을 끌어모을만한 아이템이 필요한데, 이에 대해서 제로페이지에서 완료된 페이지들을 링크걸면 어떨까 하는 생각을 하였습니다. 이에 대해서 제로페이지인들의 허용 여부를 알고 보고 싶어서 이렇게 페이지를 개설 하였습니다.
* 검색엔진으로부터의 검색문제 - 이 또한 학술터 위키쪽에서도 문제를 일으킬 수 있는 내용이다. 동문서버 관리자 또한 검색엔진 IP를 막아야 하지만, www.caucse.net 전부가 검색엔진를 거부해서는 안되는 일이다. 이는 동문서버 관리자들도 고려해야 할 사항이다.
A : 그러니깐 프론트 페이지를 만드는것과, 거기에 필요한 아이템들을 제공하는 것이죠. 공동 강의록같은 경우 정통부에서 초기에는 주도적으로 적어 나갈 것이고, 족보 같은것도 수집하여 올려 활성화를 위해서 힘쓸것입니다. 그리고 나머지 부분에서 제로페이지에서 완료된 페이지를 링크걸고자 한다는 이야기 입니다.
DeleteMe) 제로페이지의 위키 자체를 링크하지 않고 저쪽 위키에 페이지를 열어 필요한 내용만 가져간다면 괜찮을것 같지만.(저작권이 관련 있을까요..?) 이렇게 된다면 제로페이지의 주소는 남지 않겠죠. -- 선호 (정식 답변이 아니라 제 의견입니다^^;)
==> 제 의견은 제로페이지의 완료된 프로젝트라도 학술터와 직접적 링크를 통해서 다른 사람이 더 내용을 첨가 하거나 발전시킬 수도 있을거 같아서 단지 복사해서 붙이는 거보다는 링크가 낫다고 생각했습니다. 어차피 같은 학과 사람끼리 서로 생각과 정보를 공유하면 좋겠다고 생각했던 것입니다.
- 02_Python . . . . 10 matches
* 02 학번 후배들에게 언어의 기초. 어떻게 생각하면 C 보다는 기초를 잡기는 더 쉽고 더 친숙하게 언어를 배울수 있다는 취지하에 선택
* 예를 어떻게 보여줄까가 -_- 고민됨 -_- (어떻게들 할까요 ?)
* 아 -_- 더도 말고 10명 이상만 세미나에 왔으면 하는 바램
* 사용하기 쉽고 , 배우기 쉬우며 여러 방향으로 이용할수 있는 언어이다.
* C, C++, Java 에 비해 상당히 쉬운 문법 구조를 가지고 있다
* Industrial Light and Magic 사는 파이썬을 사용하여 광고용 에니메이션을 제작한다
'' C 나 C++ 은 소스를 한꺼번에 다 치고서 나중에 "컴파일" 하는식이지만 Python 의 경우 자신이 쓰는 라인마다 읽혀들어간다. ''
'' 모듈이란 C 나 C++ 의 header 파일 처럼 각각의 명령어를 닮고있는 것의 집합이다. ''
=== 파이썬 프로그램은 모듈(module), 문(statement), 그리고 객체(object) 로 구성된다. ===
3. 문은 객체를 생성하고 처리한다.
- AM/AboutMFC . . . . 10 matches
보통 이 수준까지 알고, 짤 필요는 없습니다. 하지만, 차후에는 궁금해서 알수밖에 없죠. (예외는 있으니, 따지지 마세요.) 보통 책에서 원리 수준만 소개합니다. 지면을 할애하기에는 MFC가 매크로의 도배로 이루어 져서 설명하기가 귀찮거든요. 하지만 자료는 있죠.
MFC의 정확한 동작 원리를 알고 싶다면, 2000년 5~8월 사이의 프로그래밍세계의 MFC관련 기사를 추천합니다.(도서관에 있고, 복사할수 있습니다.) 재미있는 자료입니다. 저는 우연히 01년 상반기에 기사의 필자 곽용재씨에게 해당 내용에 대한 강의를 들은적이 있는데, 그때 그림 사용을 허락맡고 [MFCStudy_2001]를 위해 자료를 만들어서 세미나를 했습니다.
그나저나 정말 유치하게 써놨군요. 이 자료는 제 이야기를 전제하고 있어서 전혀 친절하지 않습니다.위에 언급한 프세 기사도 내용이 내용이니 만큼 :) 친절한 편은 아니지만 한줄씩 확인하면서 읽으면 알수 있습니다. 처음의 흥미로운 부분과 머릿말들을 보고 MFC 소스를 따라가는 방법만을 보세요.
MFC소스 코드 뒤지면서 재미있게 자료를 만들었습니다. 소스 뒤지는 방법은 아래를 참고하세요.
F12로 따라가는 것은 한계가 있습니다.(제가 F12 기능 자체를 몰랐기도 하지만, F12는 단순 검색에 의존하는 면이 강해서 검색 불가거나 Template을 도배한 7.0이후 부터 복수로 결과가 튀어 나올때가 많죠. ) 그래서 MFC프로그래밍을 할때 하나의 새로운 프로젝트를 열어 놓고 라이브러리 서치용으로 사용합니다. Include와 Library 디렉토리의 모든 MFC관련 자료를 통째로 복사해 소스와 헤더를 정리해 프로젝트에 넣어 버립니다. 그렇게 해놓으면 class 창에서 찾아가기 용이하게 바뀝니다. 모든 파일 전체 검색 역시 쉽게 할수 있습니다.
그렇게 소스를 참고해서 그들의 의도을 알고 코딩 스타일을 흉내내면 됩니다.
- APlusProject/ENG . . . . 10 matches
-- 병권오빠 이거 수정해야 하는데요~ 제목에 대문자도 그렇고 형식 고쳐야 겠네요 (QA 윤주) 수정하고 적어주세요 다시 검토합니다 ^^
Upload:APP_SetupManual_0609.zip --바로 위에 최종문서라고 적힌거 확인했는데 인덱스인가 승인에 잘못되어있길래 다시 수정해서 올립니다(qa)
Upload:APP_UserManual_0609.zip -- 수정 안된부분있어서 (승인인가 인덱스 부분) 다시 고쳐서 올립니다- 윤주. 승인됨
XP Home Edition과 98,ME는 방법이 없다고 하네요
프로그램 확인 했습니다. 잘 되네요. 수고하셨습니다. 한편 추가된 페이지들로 인해 기본 설계와 상세 설계가 약간 변경해야 할 듯 합니다. 구현 하면서 설계때 생각치 못했던 게 나와서 설계 문서에 영향을 주리라는 건 이미 예상했던 일입니다. --재동
2. 프로젝트 하나 불러오고
"연결이 이미 열려 있습니다(상태=Open)."라고 하면서 에러 페이지가 나옵니다.
제 컴에선 안 그러네요. 어떤 문제인지 모르니 고치기 난감하네요- ik
- Boost . . . . 10 matches
1997년, C++의 국제 표준화 작업의 마지막을 알리는 종이 울리던 그 때, 자신들의 표준으로 올리자고 주장했던 표준 라이브러리의 기능이 삭제된 것에 불만을 품은 몇 명의 엔지니어들이 있었습니다. 이들 중 몇 명은 표준화 위원회 내부 임원이었는데, 이들은 결국 2차 표준화 작업 중에 표준 라이브러리의 기능을 보완하고 추가하기 위한 기구를 만들기 시작합니다. 그 결과가 바로 Boost(부스트)로서, '''여러 사람들에 의해 검토되고 보완된 C++ 라이브러리를 무료'''로 제공하는 웹 사이트입니다. C++ 표준 라이브러리와 잘 조화되어 동작하며 이식이 가능한 라이브러리를 만드는 데에 중점을 두고 있는데, 이런 취지에는 다음과 같은 동기가 있었다고 합니다.
쉽게 말해서, Boost는 미래의 표준 C++ 라이브러리의 일부가 될 수 있는 구성 요소들의 옥석을 가려주는 역할을 한다고 볼 수 있네요. 참으로 가치 있는 서비스이고, 이러 일을 하는 분들이 있다는 데에 고개 숙여 감사해야겠습니다.
Boost Graph(Graph 관련 자료구조 & 알고리즘) library 는 아에 책이 있던데 ; --["1002"]
정헌이 이거가지고 프로그램 짰잖아. --["neocoin"]
- BoostLibrary . . . . 10 matches
1997년, C++의 국제 표준화 작업의 마지막을 알리는 종이 울리던 그 때, 자신들의 표준으로 올리자고 주장했던 표준 라이브러리의 기능이 삭제된 것에 불만을 품은 몇 명의 엔지니어들이 있었습니다. 이들 중 몇 명은 표준화 위원회 내부 임원이었는데, 이들은 결국 2차 표준화 작업 중에 표준 라이브러리의 기능을 보완하고 추가하기 위한 기구를 만들기 시작합니다. 그 결과가 바로 Boost(부스트)로서, '''여러 사람들에 의해 검토되고 보완된 C++ 라이브러리를 무료'''로 제공하는 웹 사이트입니다. C++ 표준 라이브러리와 잘 조화되어 동작하며 이식이 가능한 라이브러리를 만드는 데에 중점을 두고 있는데, 이런 취지에는 다음과 같은 동기가 있었다고 합니다.
쉽게 말해서, Boost는 미래의 표준 C++ 라이브러리의 일부가 될 수 있는 구성 요소들의 옥석을 가려주는 역할을 한다고 볼 수 있네요. 참으로 가치 있는 서비스이고, 이러 일을 하는 분들이 있다는 데에 고개 숙여 감사해야겠습니다.
Boost Graph(Graph 관련 자료구조 & 알고리즘) library 는 아에 책이 있던데 ; --["1002"]
정헌이 이거가지고 프로그램 짰잖아. --["neocoin"]
- CauGlobal/Episode . . . . 10 matches
항공권은 티켓의 유효기간에 따라 가격이 달라지고(유효기간이 길수록 비쌈), 일찍 예매할수록 저렴한 티켓을 구할 수 있습니다. 또한, 국적기는 자국민에게 할인을 못하게 되어있어서 외국 항공편을 이용하면 저렴하지요.
2001년 유럽여행을 갔을때의 일입니다. 프랑크푸르트의 한 유스호스텔에서 쉬고 있던 중, 같은 방을 쓰던 일본인 여행객과 이야기를 하게 ㅤㄷㅚㅆ습니다. 이런 저런 이야기를 하다가, 무슨의도(?)에서였는지는 모르지만, 자신이 여기올때 싼(!) 대한항공 타고 왔다고 말하면서, 우리는 어떤걸 타고 왔냐고 물어보더군요.
그래서 웃으면서 대답해줬지요. 제일 싼 JAL 타고 왔다구요. 순간 표정이 얼떨떨한 표정을 짓더군요. 짐작컨데, '아니 일본인인 우리도 비싸서 못 타는 항공기를 어떻게 한국인이 타고왔지?' 하는것 같았습니다. 조금 후에, 이러 이러해서 국적기가 비싸다라고 설명을 해줬더니 고개를 끄덕이며 이해하는것 같았습니다.
- EnglishSpeaking/TheSimpsons/S01E01 . . . . 10 matches
* 크리스마스를 즐겁게 보내는 옆집 플랜더스네 가족들, 심슨네 가족들도 나름의 크리스마스를 보내려고 한다. 반면 심슨네 가족은 호머의 회사에서 크리스마스 보너스가 지급되지 않게 되고 크리스마스 때 쓰기 위해 모아놨던 저금통도 바트가 팔에 허락없이 문신을 해버리는 바람에 이를 지우기 위한 시술비로 전부 날려버린다. 호머는 모를 통해 알게 된 산타클로스 아르바이트를 하지만 받게 되는 급료는 겨우 13달러. 호머와 바트는 바니를 통해 알게된 경구장에서 '산타의 작은 도우미'라는 개에게 13달러를 모두 걸지만 꼴찌를 하고 돈을 잃는다. 그 대신 경구장에서 아예 쫓겨나 버린 '산타의 작은 도우미'를 크리스마스 선물로 집에 데려간다.
* 내용 : 리사, 바트가 산타클로스로부터 원하는 선물을 하나씩 말하고 처형인 Patty로부터 전화가 온다.
* 내용 : 바트가 허락 없이 문신을 해버리는 바람에 병원에 가서 모아둔 현금을 다 써버린다. 호머는 이 사실을 알고 차마 보너스를 받지 못했다고 말하지 못함.
1. 10:55 ~ 12:00 // 가장 짧고 쉬운 난이도
* 내용 : 보너스를 못받았다는 사실을 차마 가족들에게 말하지 못하는 호머는 모의 술집에서 바니를 통해 산타클로스 알바가 있음을 알게 되고 면접을 본 후 일을 시작한다.
* 내용 : 산타 알바를 마친 호머는 바트와 함께 급료를 받는다. 하지만 실제 월급에 비해 너무 적게 나와버리고 호머는 바니를 따라 경구장에 가게 된다.
* 내용 : 보너스를 받지 못했다고 차마 말하지 못하는 호머와 뭔가 있음을 느끼지만 감 못잡는(?) 마지의 대화 내용.
- HowToStudyRefactoring . . . . 10 matches
OOP를 하든 안하든 프로그래밍이란 업을 하는 사람이라면 이 책은 자신의 공력을 서너 단계 레벨업시켜 줄 수 있다. 자질구레한 기술을 익히는 것이 아니고 기감과 내공을 증강하는 것이다. 혹자는 DesignPatterns 이전에 ["Refactoring"]을 봐야 한다고도 한다. 이 말이 어느 정도 일리가 있는 것이, 효과적인 학습은 문제 의식이 선행되어야 하기 때문이다. DesignPatterns는 거시적 차원에서 해결안들을 모아놓은 것이다. ["Refactoring"]을 보고 나쁜 냄새(Bad Smell)를 맡을 수 있는 후각을 발달시켜야 한다. ["Refactoring"]의 목록을 모두 외우는 것은 큰 의미가 없다. 그것보다 냄새나는 코드를 느낄 수 있는 감수성을 키우는 것이 더 중요하다. 본인은 일주일에 한 가지씩 나쁜 냄새를 정해놓고 그 기간 동안에는 자신이 접하는 모든 코드에서 그 냄새만이라도 확실히 맡도록 집중하는 방법을 권한다. 일명 ["일취집중후각법"]. 패턴 개념을 만든 건축가 크리스토퍼 알렉산더나 GoF의 랄프 존슨은 좋은 디자인이란 나쁜 것이 없는 상태라고 한다. 무색 무미 무취의 無爲적 自然 코드가 되는 그날을 위해 오늘도 우리는 리팩토링이라는 有爲를 익힌다. -- 김창준, ''마이크로소프트웨어 2001년 11월호''
기학으로 우리 사상사에 큰 획을 그은 철학자요, "서울서 책만 사다 망한 사람"으로 이름을 날릴 정도로 엄청난 지식욕을 과시하던 사상가 혜강 최한기는 그의 저술 <神氣通>에서 눈에 통하는 법(目通), 귀에 통하는 법(耳通), 코에 통하는 법(鼻通) 등을 이야기하고 있다. 어떻게 하면 우리는 코에 도통할 수 있을까? 리팩토링을 공부하거나 혹은 했던 사람들에게 많은 영감과 메타포를 주는 책이다. 일독을 권한다. --김창준
* Follow OAOO : OAOO 법칙을 가능하면 최대한 따르려고 한다. 리팩토링 자발공이 터진다.
* Follow ["LawOfDemeter"] : 디미터 법칙을 가능하면 지키려고 한다. 어떤 리팩토링이 저절로 이뤄지거나 필요 없어지는가?
* Pair Refactoring : 함께 리팩토링한다. 혼자 하는 것 보다 훨씬 빨리 훨씬 더 많은 것을 배울 수 있다. 특히, 각자 작성했던 코드를 함께 리팩토링하고, 제삼자의 코드를 또 함께 리팩토링해 보라. 사람이 많다면 다른 페어가 리팩토링한 것과 서로 비교하고 토론해보라.
- JavaStudy2003/두번째과제/곽세환 . . . . 10 matches
상태:객체가 가지고 있는 속성 또는 특성
행동:객체가 가지고 있는 기능 또는 할 수 있는 행동
특정 종류의 객체들에 대해 일반적으로 적용할 수 있는 변수와 메소드를 정의하고 있다.
상위클래스가 가지고 있는 특성들을 하위클래스에서 사용할 수 있다.
아직 상속을 읽고 있는 중이기 때문에 모르는 것이지요^^. private 과 protected 는 상속이 이루어지지 않으면 똑같이 사용이 됩니다. 하지만 상속이 이루어진다면 의미는 틀려지죠. 만약 '''자동차''' 라는 객체가 있다고 봅시다. 그런데 이것은 굉장히 추상적인 개념이지요. 이 '''자동차''' 의 하위 개념인 '''트럭''' 과 '''버스''' 와 '''승용차''' 를 '''자동차'''에서 상속받아 만들었다고 합시다. 그랬을 때 '''자동차''' 가 가지는 어떠한 상태는 '''트럭''' 과 '''버스''' 와 '''승용차'''도 역시 가지고 있을 수도 있습니다. 이런 경우 protected 로 선언해 주면 그 상태를 상속받을 수 있다는 것이지요. 하지만 외부에서 접근은 불가능하다는 사실은 변함이 없습니다. 하지만 public 은 외부에서 접근이 가능하게 되는 것이지요. 한번 직접 코드로 만들어보세요. 어떻게 다른지 채험하는게 가장 이해가 쉬울겁니다.
* 와우~ 벌써 저정도로 설계가 가능하다니 놀라운데요? ^^; 정말 실력이 뛰어난거 아님 어디서 참고를 했을 가능성이 있겠군요. 직접 하셨나요? 아니면 다른 소스를 참고하셨나요?
- LearningToDrive . . . . 10 matches
안되는 영어로 읽고 있는 중인 XP Explained 중. (제대로 뜻을 이해한건지. -_-;)
소프트웨어 개발을 운전을 배우는 것에 비유한 설명이 재미있네요. software project 의 Driver 는 customer 라는 말과.. Programmer 는 customer 에게 운전대를 주고, 그들에게 우리가 정확히 제대로 된 길에 있는지에 대해 feedback 을 주는 직업이라는 말이 인상적이여서. 그리고 customer 와 programmer 와의 의견이 수렴되어가는 과정이 머릿속으로 그려지는 것이 나름대로 인상적인중. 그리고 'Change is the only constant. Always be prepared to move a little this way, a little that way. Sometimes maybe you have to move in a completely different direction. That's life as a programmer.' 부분도.. 아.. 부지런해야 할 프로그래머. --;
최근 무지 하기 싫어하면서 억지로 했던 알바 하나가 있었죠. 기획도 늦게 나오고, 그러면서 해당 기일에는 제대로 맞출것을 얘기하면서 '너희들이 고생 좀 해줘라' 식으로 말하는 것도 괭장히 맘에 안들었었고. 시간쫓기며 프로그래밍 하는 중간에 '이기능 넣으면 어떻겠니? 이렇게 했으면 좋겠는데..'
그때는 괭장히 짜증나고 그랬었는데.. 한편으론 제가 도량이 더 넓었다면 어땠을까 하는 생각도 해봅니다. 애시당초 기획할때 제가 아는 범위 내에서 도와주려고 노력했다면, 프로그래밍 중간중간 완성된 것 보여주면서 원하는 것에 대해 제대로 수렴을 시킨건지 물어봤었더라면.
* 하지만. 한편으론 '이상적인 만남' 일때 가능하지 않을까 하는 생각도. Communcation 이란 상호작용이라고 생각해볼때.
- OpenGL_Beginner . . . . 10 matches
* 목표 : OpenGL 예제를 통해 기초를 익히고, 프로그램 만들 것을 찾는다.
- 필자는 자신이 제작한 상업용 3D 설계 툴의 소스를 가지고 오고, 라이선스 문제와, 자신이 생각하는 개선점을 고쳐서 다시 작성했다고 한다. 인상 깊었다. 이해하기도 쉽고, 구조적 프로그래밍을 OOP로 옮긴다는 관점에 도움이 되었다. STL 비슷하게 linked list글 구현해 두었고, MEC++의 지식이 도움되었다. MEC++가 허송세월을 보낸것은 아닌 느낌이다. Java3D의 강좌에서도 Java3D의 프레임웍이 좋다고 하는데, 역시 살피는 과정에서 써야 겠다. 문서화 중
* 동기 : 2학년 옛날 친구 모군과 ^^; 같이 공부 하고 싶었것만, 게을러서 못다한 꿈을 위해.
* 참고 서적 :
- Postech/QualityEntranceExam06 . . . . 10 matches
1. 알고리즘 시그마 1~ i4 까지 타이트를 로우 빅오 사용하여 증명
4. 그래프 사이클 찾는 알고리즘
6. 1~3개 문제 펌핑 렘마 사용하여 증명 혹은 오토마타로 그려서 regular 에 속한다고 증명 하기
시덮지 않은 JK 플립 플롭 2개 있는 회로가 있고 이것의 오토마타 그리기 Moore 머신으로
3. Machine Language Like 한 프로그램 만들기. 코드 주고. 스앞 함수 호출하는 부분 있고 파라미터 패싱을 설명해야함.
4.2 way assoiate 캐시에서 히트 되었나 안되었나, 뭐 그러고 구조 그리고 각 index, tag, byte offset 등 요소 알아 맞추기
2. 외부 단편화는 무엇이며 TLB 를 사용하여 어떻게 해결? 그리고 내부 단편화와 외부 단편화 대조,,
5. Mutual Exclusion 에서 Bounded Waiting, Progress, Mutual Exclusion 이 아닌것 하나를 고르기
- ProjectPrometheus/CookBook . . . . 10 matches
getParameter 가 호출되기 전에 request의 인코딩이 세팅되어야 한다. 현재 Prometheus의 Controller의 경우 service 의 명을 보고 각각의 서비스에게 실행 권한을 넘기는데, 가장 처음에 request의 characterEncoding 을 세팅해야 한다. 차후 JSP/Servlet 컨테이너들의 업그레이드 되어야 할 내용으로 생각됨 자세한 내용은 http://javaservice.net/~java/bbs/read.cgi?m=appserver&b=engine&c=r_p&n=957572615 참고
이는 <web-app> 라는 태그로 정의되어있다. 삭제하고 싶다면 '/' 외의 다른 web-app에 등록된 것들을 삭제해주면 된다.
그리고, 제어판-관리도구-서비스 에서 resin web server 서비스를 시작 시킨다.
1. Context - environment 얻고
2. environment 변수를 근거로 Data Source 얻고
3. Data Source 를 근거로 Connection 얻고 Connection 을 이용.
4. Connection 객체로 Statement 객체를 얻고
build_zpLocal.xml ( .../Prometheus/bin 에 빌드하는 스크립트 ) 를 이용, 실행되는 위치와 관계없는 곳에 일단 컴파일을 하고, 테스트를 돌리게 한다.
* ["Ant"] 에서 ["JUnit"] 을 실행시키는 방법이 있다고 한다. 추후 알아볼것.~!
- PyIde . . . . 10 matches
* 이름 : PyIde (PyIdea 로 하고 싶었으나.. 이미 sourceforge쪽에서 누군가가 같은 이름을 먹어버려서. -_-)
* idlefork, vim 말고 쓸만한 python 개발환경을 구축해보자. -_-;;
* 사람은 툴을 만들고 선택하고, 툴은 다시 사람을 지원하고 성장시킨다. 좋은 습관을 들이는데 도움을 주도록.
* Prototyping & 외부 공개소스 Review & Copy & Paste 하여 가능한한 빠른 시간내에 원하는 기능 구현법이나 라이브러리들을 연습하여 익힌뒤, Refactoring For Understanding 을 하고, 일부 부분에 대해 TDD 로 재작성.
* http://www.die-offenbachs.de/detlev/eric3.html - 스크린샷만 두고 볼때 가장 잘만들어져보이는 IDE.
* Eclipse 이나 IntelliJ 에서 제공해주는 여러가지 View 들. 그리고 장단점들.
* http://codespeak.net/pypy/ - 순수 파이썬으로 구현하는 python 이라고 한다. 관심이 가는중.
=== 기타 잡담..~ 질문하고 싶으신 것 등등..~ ===
- PythonForStatement . . . . 10 matches
어떻게 같은 동작을 하는지 이유를 모르겠다고 했지.
하지만 배열 원소의 값을 바꿀 수는 없다는 점이 C++의 배열하고 다른 점이지.
여기까지 알아 보시려면, Python Language Reference에서 sequence, for statement로 열심히 찾아 보시면 됩니다. 열혈강의 파이썬에도 잘 나와있습니다. 그리고 다음의 이야기들은 다른 언어를 좀 아시면 이해가실 겁니다.
C / Java 1.4 이하버전 의 for 제어문은 객체의 특성을 따라 동작하지 않습니다. 이 언어들에서 for문은 정해진 조건문을 검사하면서, 탈출합니다. 즉, while문을 사람이 읽기 쉽게 약간 고차원으로 추상화된 형태에 불과합니다.
C/Java1.4이하 와 Python의 for문에 대한 관점이 '''전혀''' 다릅니다. 그리고 유용하지요. C의 for문과 구분하기 위하여 python의 이러한 for문을 보통 '''for each''' 문이라고 부릅니다. 이게 진짜 for문 이라고 이야기들 하지요.
왜 C++에 안되느냐면, C++의 제어문이 C문법에 종속되어 있고, C에서는 배열과 같이 주소를 통한 인덱스로 접근하는 형들이 종료 인덱스에 대한 정보가 없어서 구현이 불가능합니다. 추상화 시켜 C++에서는 [STL]에 for_each(..) 라는 함수로 비슷한 것이 구현되어 있기는 합니다.
Java 1.5 에 advanced for statement 라는 이름으로 비슷한 것이 추가되었고, C#에는 언어가 탄생 될때 부터 있었습니다. Java 1.5에서는 수년간 논의 끝에 도입을 했는데, 언어에 녹이기 위해서는 Autoboxing/Unboxing과 편리성을 위해 Template과 같은 여러 필수불가결하고 복잡다난(?)한 개념이 함께 추가되었습니다.
- QuestionsAboutMultiProcessAndThread . . . . 10 matches
* 스위칭을 한다면, 프로세서 A에 Time Slice를 조금 남겨놓고 스위칭을 하는 것인가? 즉 I/O 작업을 계속 할 수 있도록 CPU가 조금씩 I/O 작업을 진행하면서 프로세서 B를 실행하는 것인가?
* A) processor라고 쓰신 것이 아마도 process를 의미하는 것 같군요? scheduling 기법이나, time slice 정책, preemption 여부 등은 아키텍처와 운영체제 커널 구현 등 시스템에 따라 서로 다르게 최적화되어 설계합니다. thread 등의 개념도 운영체제와 개발 언어 런타임 등 플랫폼에 따라 다를 수 있습니다. 일반적으로 process의 context switching은 PCB 등 복잡한 context의 전환을 다루므로 단순한 thread 스케줄링보다 좀더 복잡할 수는 있으나 반드시 그런 것은 아닙니다. - [변형진]
- 학교 내에 건물이 하나 밖에 없다고 가정
- 그 건물엔 화장실이 하나 있네. 그리고 한 명 들어가면 더는 못 들어가네.
* A) processor라고 쓰신 것이 process, cpu가 processor를 의미하신 것 같군요. process는 실행되고 있는 하나의 프로그램 인스턴스이며, thread는 a flow of control입니다. 즉, 하나의 프로그램 안에 논리적으로 여러 개의 제어 흐름이 존재하느냐(*-thread)와, 하나의 컴퓨터에 논리적으로 여러 개의 프로그램 인스턴스가 실행되고 있느냐(*-process)로 생각하는게 가장 좋습니다. multi-processor(multi-core)는 말 그대로 동시에 물리적으로 여러 개의 흐름을 처리할 독립적인 처리기가 병렬로 존재하느냐입니다. 위에 제시된 예는 적절하지 못한 것 같습니다. - [변형진]
* 어느 바쁜 음식점(machine)입니다. 두 명의 요리사(processor)가 있는데, 주문이 밀려서 5개의 요리(process)를 동시에 하고 있습니다. 그 중 어떤 한 요리는 소스를 끓이면서(thread) 동시에 양념도 다지고(thread), 재료들을 오븐에 굽는데(thread) 요리를 빠르게 완성하기 위해 이 모든 것을 동시에 합니다. 한 명의 요리사는 특정시점에 단 한 가지 행위(instruction)만 할 수 있으므로, 양념을 다지다가 (context switching) 소스가 잘 끓도록 저어주기도 하고 (context switching) 다시 양념을 다지다가 (context switching) 같이 하던 다른 요리를 확인하다가, 오븐에 타이머가 울리면(interrupt) 구워진 재료를 꺼내어 요리합니다. 물론 두 명의 요리사는 같은 시점에 각자가 물리적으로 서로 다른 행위를 할 수 있으며, 하나의 요리를 두 요리사가 나눠서(parallel program) 동시에 할 수도 있습니다. - [변형진]
- SpiralArray/영동 . . . . 10 matches
* 제대해서 처음으로 숙제를 제외하고 처음 짠 ToyProblem입니다. 1학년 때 프로그래밍잔치에서 못 짰던 걸 이제야 짰네요. 우선 소요시간으로 미루어 볼때 제대하고 나서 머리가 굳었다는 걸 느낄 수 있었고, 그만큼 처음부터 막 짜지 말고 설계 및 구상을 잘 해야겠다고 생각했습니다. 또한 객체지향으로 짠 것도 아니고 변수, 함수를 너무 지저분하게 쓴 거 같기도 하고... 반성할 점이 참 많았습니다. 그리고 일단 배열 크기도 미리 정했고 시작점도 0, 0으로 가정하고 해서 사용자의 잘 못된 입력에 대응하지 않은 점도 미비했네요.
- XMLStudy_2002/Start . . . . 10 matches
* 3번은 DTD도 사용하였고 태그 규칙도 맞게 작성된것이다.
*XML은 SGML을 좀더 손쉽게 사용할수 있는 대안으로서 취급 하지만 XML의 응용분야가 확대되면서 데이터로서의 역할이 점점 커지고 있음
*XML문서를 구성하는 기본 요소 시작태그와 닫는 태그가 있고 태그안의 내용이 엘리먼트의 값이된다.
*EMPTY : 컨텐츠 스펙이 EMPTY인 경우라면 이 엘리먼트는 내용으로 아무 것도 갖을 수 없다는 것을 의미하고 empty element로 사용
*내부 엔티티 : 주로 반복적으로 사용해야 할 문장을 내부 엔티티 선언하고 사용하면 편리
용에 대해서는 이런 저런 말들이 있고 관련된 책도 있다.
엘리멑르르 사용할 때 반드시 어트리뷰트를 사용해야 하고 값도 지정해 주어야 함을 의미함
id 어트리뷰트의 타입은 ID이고 이 어트리뷰트는 반드시 사용해 주어야 하는 것으로 선언되었다. 그리고 reply_required 라는 어트리뷰트는 이 어트리뷰트의 값으로는 "yes"와"no"만 사용될수 있으며 만약 어트리뷰트가 명시되지 않았을 경우에는 디퐅르 값으로 "yes"를 사용한다.
이경우에는 desc라는 어트르뷰트를 사용하지 않아도 되고,만약 사용하는 경우에 이 어트리뷰트의 값에는 White space 처리를 하지 않겠다는 예이다.
- 고수를찾아서 . . . . 10 matches
시험이 끝나고 도서관을 찾아 미정리 서가를 돌아보다가 손에 잡힌 책이다.
저자는 무예를 좋아해서 전문 잡지까지 만드는 사람이다. 여러 고수를 찾아다니며 인터뷰한 이야기, 고수를 만난 경외감을 전해주고 있다. 아마 보는 눈은 갖춘 실력이 밑바탕에 깔려있기 때문에, 고수를 찾아다니며 감탄할 수 있는 것 같다.
고수는 하루아침에 될 수 없다. 극단적으로 수련을 하든, 화두를 잡고 몇 년을 끙끙대든 결국 고수가 되는 데는 시간이 걸린다. 그리고 나면 자신만의 길을 개척할 수 있다. 처음부터 모든 것을 창조해내지는 못하는 법이다.
고수가 되어도 겸손함을 잃지 말아야 하ㅤㄱㅖㅆ다.
- 대학원준비 . . . . 10 matches
* 전공 공부 : 여름방학때부터 해도 됨. 시험 공부 하듯이 하면 된다고 함. 다음 카페에 올라온 후기 나왔던 문제 보고 미리 연습할 수 있음
면접 및 구술고사 / 필답고사
(가) 장 소 : 본 대학 고사장, 서울(휘문고) 고사장
== 참고 사항 ==
* 가끔 특차로 성적만으로 뽑는 경우 있음. 이렇게 특차로 뽑힌 사람의 경우 원하는 연구실로 가기 싶고, 추후 정시의 경우는 불리 할 수 있다고 함
- 데블스캠프2004 . . . . 10 matches
그리고 다음 강사는, 이전 강사의 후기를 보면서 자신의 강의를 발전시키세요.'''
* 시작하기 전의 토의 ''데블스캠프를 하는 5일간은 무엇이고 싶나''
* 위키를 항해해보고 느낀 점들
* 벌써 2004년도 DevilsCamp 를 시작할 때가 되었군요..^^; 하하.. 미안한 느낌만 드는건 왜일까요;; 뭐.. 그건 그렇다 치고 허접하지만 의견하나 내도 될련지... DevilsCamp는 참여하는 그 당시도 중요하지만 끝나고 나중에 "아. 그 때는 이렇게 했었지."라는 생각을 하면서 전의 내용을 확인하는 것도 중요하다고 생각합니다. 그렇기 위해서 필요한게 다시 한번 돌아보는 일입니다. 그 주제가 끝났다고 그냥 지나가는 것이 아니라는 거죠. 뭔가 부족한 것은 다시 한번 확인해서 고쳐도 보고 다르게도 만들어보고 또 다른 사람들과 비교도 하는 과정이 그대로 위키에 체계적으로 정리가 될 때 나중에 더 큰 재산이 된다는 것입니다.^^; 이상 허접한 의견이었습니다. 많은 테클 부탁드립니다.(답변은 못올림;;) -[상욱]
- 도덕경 . . . . 10 matches
"... 성스러운 사람은 함이 없음의 일에 처하고 말이 없음의 가르침을 행한다.
... 공이 다 이루어지고 일이 다 되어도 백 가지 성의 사람들이 한결같이 일컬어 나 스스로 그러할 뿐이라고 하는도다!
... 내가 함이 없으니 백성이 스스로 질서를 찾고, 내가 고요하기를 좋아하니 백성이 스스로 바르게 되고, 내게 일이 없으니 백성들이 스스로 부유하게 된다. 나는 바램을 가지지 않는다. 그러니 백성들은 스스로 통나무가 될 뿐이다.
... 사람을 잘 쓰는 자는 자기를 낮춘다. 이것을 일컬어 싸우지 않음의 덕이라 한다. 이것을 일컬어 사람을 쓰는 힘이라고 한다.
하늘의 길은 잘 이롭게 하면서도 해치지 아니하고, 성스러운 사람의 길은 잘하면서도 다투지 아니한다."
이부분 읽고 감상문 쓸 때 따로 옮겨놔야지..라고 생각했었는데[[BR]]
- 로고캐릭터공모 . . . . 10 matches
제로페이지에서는 홈페이지 개편과 더불어 대외적인 홍보 활동 및 각종 행사에 사용할 공식적인 로고와 캐릭터를 공모하고 있습니다. 본 공모에 작품이 채택되신 분께는 작은 상금도 준비되어 있습니다. 여러분의 많은 참여 부탁드립니다.
제로페이지 학회 성격을 잘 반영할 수 있는 참신하고 독창적인 이미지의
- 로고
* 로고 1편 - 2만원
* 홈페이지 http://zeropage.org/wiki/로고캐릭터공모
== 질문은 [로고캐릭터공모/문의]에 해주시기 바랍니다 ==
* 총 6개의 로고 작품. 2개의 캐릭터 작품이 접수되었으며
* 로고는 강희경의 작품이 선정(다양성과 미완결성을 표현한, ZP를 형상화한 도트이미지)
우와 좋은 아이디어다. [로고캐릭터공모/문의]로 따로 페이지 또는 게시판 링크가 걸리게 해도 좋을 것 같네. --[Leonardong]
- 상협/너만의명작을그려라 . . . . 10 matches
* 우연히 신문을 보다가 책 소개하는 부분을 봤다. 그거 보고나서 끌려서 도서관에서 빌렸다. 역시 신문은 꼭 봐야 한다니깐.. 이런정보도 있고..
* 이책의 목적은 한 인간이 삶을 훌륭하게 살아가려면 어떻게 해야 하는지에 대해서 지금까지 살와왔던 사람들중에서 훌륭한 삶을 살았다고 평가되는 사람들을 예로 들면서 그 방법을 제시해주고 있다. 이책은 이 저자혼자서 내용을 생각해서 쓴 책이라기보다 인류에게 훌륭한 인물로 평가받은 사람들이 한 말들과, 그 행적등을 밑 바탕으로 해서 쓰여진 책이다.
* 이책은 읽고나서 생각나는거 말해보라고 하면 별로 말할건 없지만, 이 책을 읽고 있을때는 많은걸 느끼고 생각하고, 내가 느껴왔던 삶과 이책에서 제시하는 삶을 비교해 보기도 하고 그랬다.
- 새싹교실/2012/Dazed&Confused . . . . 10 matches
* 사실상 첫 수업이었다. 어떻게 가르쳐야 할까 고민하다가 나름 PPT를 만들어 보긴 했는데 (그래봤자 [http://winapi.co.kr/ winpai]에서 다 복붇이었지만 -_-) 허허허.... 모르겠다 -_-a 뭐.. 어찌되었든 간에 일단 이론적으로 PPT를 보면서 설명을 하면서 진행을 했는데.. 알긴 아는 거 같은데... 음.. 좀 더 같이 해 보면 알겠지- 그래도 잘 따라와 준 것 같아 고마웠다. 많이 부족한 놈을 선생으로 둔 새싹들도 고생 많았어요 -ㅅ- 다음엔 더 준비 해 올게요a 근데 왜 회고지엔 소라 게임에 대한 이야기만 있는거지.. 에잇 - [권순의]
* 드디어 반 아해들이 맨붕을 하기 시작했습니다. 뭐 놀라운 결과도 아니지만,, 직접 보니 ...하네요. 이번에도 ppt를 열심히 복붙해서 나누어 줬습니다. 그렇게 하나하나 알려주다가 포인터부터 조금씩 힘들어 하더니 재귀함수 부분에서 실습을 원하길래 피보나치를 짜 보라고 시켰습니다. 표정들이 맨붕 복탄을 맞은 것 같더군요. 음... 그래서 결국 준비한 부분은 다 못 나갔습니다. 다음에 이어서 해야겠네요. 4주차 내용이 끝나면 한번 전반적으로 실습 위주로 시켜야 겠습니다. - [권순의]
* 진도가 빨라 매우 빨리 배우고 있단다. - [권순의]
* 포인터와 구조체, 전역 번수와 지역 변수에 대해 배웠고, 포인터가 어느 곳에서나 자료를 읽을 수 있다고 하는 것과 Call-by-Value, Call-by-Reference에 대해서도 배웠다. 포인터에 대한 개념은 알고 있었지만 깊게는 알지 못했는데 오늘 새싹으로 많은 것을 배울 수 있었다. 그러나 이 모든 것들이 하루만에 끝내려고 하다 보니 너무 부담스러웠다. 조금 더 다양한 프로그래밍 예제에 대한 경험을 했으면 좋겠다. - [김민재]
- 새싹교실/2012/개차반 . . . . 10 matches
* 참고 자료: 손봉수 교수님 수업자료: [http://cau.ac.kr/~bongbong/c10/]
* C언어는 UNIX 개발을 목적으로 만들어진 언어이기 때문에 OS의 기초가 되는 기초적인 컴퓨터시스템은 이해할 필요가 있다고 판단
* High-Level 언어의 특징과 Low-Level 언어의 특징을 모두 지니고 있다
* int는 정수를 나타내고자 할 때 사용하며 출력시 %d를 사용
* float는 소수점 아래의 숫자까지 표현하고자 할 때 사용하며 출력시 %f를 사용
* char는 문자를 나타내고자 할 때 사용하며 출력시 %c를 사용
* 고1 수학 과정 제대로 공부해보기
* 자신이 지정하는 문자열에 특정한 값 등을 지정해두고 사용할 수 있다
* 특정한 수를 입력받고 and operator를 이용하여 그 수 보다 작은 짝수 중 가장 큰 짝수를 출력하라(scanf, printf 이용)
* shift operator를 이용하여 128(=2^5)을 출력하고, 128을 특정 변수(variable)에 저장하여 그 변수와 left shift operator를 이용하여 32를 출력하라
- 새싹교실/2013/라이히스아우토반/6회차 . . . . 10 matches
||고한종|| o || o || o || o || ㅇ|| ㅇ||
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* Can't Save가 떴을 땐 당황하지 말고, 작성한 내용을 클립보드에 보존한 뒤(Ctrl+C) 새로고침을 한 뒤 붙여넣고 저장할 것.
오늘은 switch에 대한 자세한 복습을 했습니다. 그리고 그 switch 를 if랑 else if 를 사용하여 바꿔보았습니다.
꺠달은 점은 배열에서 배열이 이미 포인트의 의미를 가지고 있어서 포인트인 *를 쓰지 않아도 된다는 것입니다.
쉅시간에 실습할 때랑 느낌은 비슷하다. 이제 쫌 척척 쓰는것 같아서 좋지만 여러모로 헷갈린다. 걍 써야할지 ''쓰고 써야할지 등등..
== [고한종] ==
- 새싹교실/2013/록구록구/4회차 . . . . 10 matches
* 저번주 과제에 대한 고찰 (형 변환 등등..)
혼자서 낑낑대지 말고...ㅋㅋ
''' 뭔 말이지? 라고 하는 당신을 위한 설명 '''
(깨달은점)강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.
(앞으로의 계획)다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.
수업시간에 내가 printf를 사용할 때 for문을 사용하는 친구들을 봤었는데 직접 사용해보니 뿌듯했고 while문보다 보기 편하고 더 간편했다.:)
숙제를 하니 수업시간에 배웠던게 생각나서 좋았고 앞으로는 숙제를 절대 밀리지 않고 해야 겠다.:D
어려운줄 알았는데 생각보다 간단하고 쉬웠다.
- 위키요정 . . . . 10 matches
[위키요정], [위키정원사]는 위키를 관리하고 가꾸어 나간다.
위키는 마치 정원같다. 그래서 꾸준히 잡초는 뽑고, 큰돌은 치우고 물을 주고 자라는대 방해하는 가지는 제거해 나아 가야 한다.
관련한 기술들을 NoSmok:WikiGardening 에서 참고 할수 있다.
공개된 [위키위키]들은 누구나 [위키요정] 될수있고, 누구나 되기를 권장한다.
Wiki:WikiGnome 과 [요정]을 살펴보아, 외국 동화중 밤중에 구두를 고치고 가는 요정을 의미하는 것 같다. 과거에는 밤중에 구두를 수선하는 그림이었다는데, 그림이 바뀌었다.
[강희경]은 위키를 처음 접하고 글을 쓰던 그 때, 내가 쓴 글이 form이 일정하지 않다는 이유로 위키요정이 형태를 바꾸어놨을 때 자존심이 상하면서 글 쓰는 것이 꺼려졌었다. --[강희경]
위키를 옳은 방향으로 이끌어 나간다는건 힘든일 같습니다. 수십페이지를 올바른 방향으로 수정하면서 드는 생각은 이렇게 했을때 이 글을 쓴사람이 기분나빠서 위키를 쓰는것을 꺼려하지 않을지 걱정되기도 합니다. 내가 올바른 방향으로 생각하는 것이 다른사람에게는 옳지 않은 방향일지를 항상 고민합니다. 하지만 가끔은 리누즈 토발즈 같은 좋은 독재자가 필요한것도 같습니다. - [안혁준]
- 일정잡기 . . . . 10 matches
* 단체/개인의 일정을 잡을 때 다른 일정과 겹치지 않도록 잡는 사람이 있고, 일정을 잡고나면 꼭 다른 일정과 겹치게되는 사람이 있다. 이 차이는 어디서 나는걸까.
* 어떤 일정의 날짜를 잘 잡는데 중요~~한~~(하다고 생각되는) 요소는 3가지이다.
* 예를들어 3학년 동기엠티를 추진하는 K군이 있다고 하자. K군은 5월 중에 MT를 가고싶어한다. K군은 일정을 잘 잡는데 필요한 요소를 고려해서 1달 전에 MT를 갈 계획을 세우기 시작한다. 이 때 1달전이라는데서 얻을 수 있는 이점은 1번과 2번이다. 1번의 경우, MT참가 인원에 영향을 미치는 요소들을 미리 파악할 수 있게 된다는 장점이 생기게 되는데, 예를들어 농활(5/3~5/6) 해오름제(5/16) 축제(5/22~5/24)와 같이 일정을 잡는 사람이 바꿀 수 없는 요소를 미리 파악해 이를 피하도록 유도할 수 있다. 2번의 경우, MT참가자들의 일정을 1달전에 고정시킴으로 인해서 자신의 다른 일정들을 다른 날짜로 보내도록 만들고, 해당 날짜에 MT가 있음을 주지시켜 이 날 다른 집단이 일정을 잡는 것을 피하도록 할 수 있었다.
* 반면에 1,2,3번이 모두 결여된 경우도 있는데, C집단의 회장 L군은 2012년 C집단의 정모가 매번 다른 일정과 겹치게되는 불운을 맞이하게된다. 정보 수집을 하지 못해 학교 행사와 일정이 겹쳤음은 물론이고, 그 때문에 직전에 날짜를 바꿈으로 인해서 다른 사람들의 다른 일정과 모조리 겹쳐지게 되기도 한다. 게다가 운도 없어 그 날짜에 자신이 참석하지 못하는 불운을 맞이하였고, 일정 파토라는 최악의 사태를 낳기도 했다.
- 정모/2013.4.15 . . . . 10 matches
[고한종],[강성현],[구남영],[이병윤],[김태진],
= 중간고사 끝나고 놀러갈 계획 =
* 좋아요 누르고 그러면 만원 할인
* 여러 다른 할인도 있고
= ZeroPage로고 =
* 시험준비한다고 한주 쉼.
* 시험 끝나고 다시 재개할 예정
* 메모장 만들기 하고 있음
* 시험 끝나고나서야 제대로 진행 할 듯.
- 조동영 . . . . 10 matches
2학년1학기 알차게 보내고 2년동안의 군대 잘 보내기
군대가기전까지 700점 넘겨서 졸업인증 받고가기
재미있을거 같다 그런데 학점의 압박.. 그냥 편하게 공부해보고싶다...
젝일슨... 출석을 한번 못했다... 타격이 너무나도 크다.. 앞으론 잊지 않고...
얼떨결에 코 꿰어서 하게댄 프로젝트... 라고하긴 머하나... 다른사람에게 설명해주는 법을 공부한다고 생각하고 해야지...
== 하고싶은 것 ==
수민이형 보고파요~~
유선아 동영오빠한테도 숨기고 싶은 과거가 있으시단다....ㅎㅎㅎㅎㅎ
- 조영준 . . . . 10 matches
* GDG pre devfest 2013 seoul - 징격의 안드로이드. 그리고 밤샘. - https://github.com/ZeroPage/MorningTypeHuman
* 중간고사가 끝나면 코딩공부나 더 하고싶네요. 특히 웹 쪽으로.
* 웹 공부는 방학기간에 하고 말테다.
* LAMP 설치는 하고 [http://skywave-test.appspot.com/ 다른거] 만드는 중. 이 뭐...
* 13학번 학우들이랑 같이 뭔가 해 보고 싶습니다. 일단 애들이랑 더 친해져야지.
* 코드레이스 재미있었는데, 나중에 여유가 나면 주기적으로 주최를 해 보고 싶기도. ~~그런데 하는거랑 주최랑은 다르겠지~~
* 어찌된게 자바스터디가 반쯤 코드레이스 식으로 진행되고있음 -_-;
* 게으른 조영준은 이 일을 하지 않았다고 합니다.
* 설리 추가하고 갑니다 'v' 졸라... ^오^ 이거먼데 ㅋㅋ 깜놀했네 위키문법으악 - [최다인]
- 지금그때2005/연락 . . . . 10 matches
|| 99 || 강석천 || "일단 온다고 해두지"라고 하셨음 ||
|| || 김정욱 || 시간되면 오신다고 하셨음 ||
|| 98 || 이선호 || 온다고 하셨음 ||
|| 95 || 최성욱 || 시간되면 오신다고 하셨음 ||
|| 93 || 김창준 [JuNe] || 오신다고 연락왔음 ||
|| || 이상규 || 시간되면 오신다고 하셨음 ||
|| || 박영창 || 오신다고 하셨음 ||
|| 97 || 이선우 || 오신다고 하심 ||
|| 93 || 김창준 || 오신다고 하심 ||
- 허아영/MBTI . . . . 10 matches
* T : 사고/감정 중 사고 45
* T : 사고/감정 중 사고 47
== T(사고) ==
'''사고형 (Thingking)'''
: 진실과 사실에 주로 관심을 갖고 논리적이고 분석적이며 객관적으로 사실을 판단한다.
T가 이렇다고 내가 F(feeling)쪽의 성향도 없는것은 아니다.
내가 될 뻔한 ENTJ는 '지도자'가 가장 많다고 했다. - 2007. 2. 10. 아영.
- AdventuresInMoving:PartIV . . . . 9 matches
워털루에서 대도시로 이사를 가려고 하는데, 이삿짐 트럭을 빌려서 갈까 생각 중이다. 그런데 요즘 기름 값이 하도 비싸서 가는데 기름 값이 얼마 정도 들지 미리 계산해보고자 한다.
이 트럭은 1킬로미터를 가는 데 1리터의 기름이 필요하다. 기름통은 200리터다. 워털루에서 트럭을 빌릴 때는 기름통이 절반만큼 차 있다. 나중에 대도시에서 차를 반납할 때도 기름은 절반 이상 채워 놓아야 한다. 그렇게 하지 않으면 렌탈 회사에 훨씬 비싼 비용을 지불해야 한다. 기름 값은 최대한 아끼고 싶지만, 그렇다고 해서 길 위에서 기름이 바닥나서 멈춰서는 일은 없도록 해야 한다.
각 테스트 케이스에 대해 워털루에서 대도시까지 가는 데 드는 연료비의 최소 값을 출력한다. 문제의 제약조건에 따를 때 워털루에서 대도시까지 갈 수 없으면 "Impossible"이라고 출력한다. 서로 다른 테스트 케이스에 대한 결과 사이에는 빈 줄을 출력한다.
위의 테스트 케이스를 보면 처음에는 거리가 100인 주유소에 무조건 가야합니다. 그러면 기름은 0이 되고, 스터디때 말한 방법으로 하면 앞의 200까지를 살피고, 가장 작은 가격이 있는 곳인 (200, 777) 까지 갈 수 있는 기름 100을 넣고 출발합니다. 그러나 여기서 살펴보면 최적의 해는 여기서 50만큼의 기름만 넣고, 150의 지점에서 또 50의 기름을 넣어서 (200,777)에 가는 경우입니다. -- 보창
- AnalyzeMary . . . . 9 matches
주변에서 남들과 비슷하게 일을 하는 듯 하면서 늘 더 나은 성과를 보이는 사람들이 있다. 대부분은 "메리에겐 뭔가 특별한 것이 있다"(There is something about Mary) 수준의 감탄사를 외치는 데에서 끝난다. 그러면서 나는 왜 그들처럼 될 수 없을까 한탄하고, 곧 까맣게 잊는다.
그들을 분석하라.(이때 가능하면 그들 옆에서 그들과 함께 일하는 것이 가장 빠르다) 그리고 무엇이 그들을 그렇게 "특별하게"하는지 알아내고, 그걸 배워라. 조만간 당신도 그들이 하는 것을 할 수 있을 것이다.
어떻게 하면 남을 설득을 잘할까? 당신은 알고있다. 주변에 설득 잘하는 사람들을. 그들을 관찰하라. 무엇이 다른가?
우리는 살아오면서 수많은 사람들이 자신을 설득하려고 노력하는 것을 경험한다. 부모님, 교사, 친구, 상사, ... 어떤 사람은 처절하게 실패하고 어떤 사람은 멋지게 성공한다. 나를 설득시켰던 사람들의 공통점은 무엇인가? 무엇이 그들을 다르게 만드는가? AnalyzeMary and become Mary.
NeoCoin은 02년도 기말 시험에서 너무나 시간이 없게되는 상황을 맞이 하였다. 학교 출발까지 15분, 통학 시간 1:30 분 남은 상태에서 밥먹으면서 교수님에 성향 대하여 AnalyzeMary를 하고 15분은 강의 노트에 대한 AnalyzeMary , 그리고 도착전까지 열심히 외웠다. 도착 직전까지 외운 내용 조차 시험에 그대로 출제되어 있었다. 결국, 시험의 1문제의 부분적것 외에 전부 정답 작성이 가능했다. 여태까지 살아오면서, 최고의 효율이란 무엇인가를 느낄수 있었다. --NeoCoin
- ClearType . . . . 9 matches
Microsoft 에서 주도한 폰트 보정 기법의 하나로 기존의 안티얼라이징 기법과 최근에 나오고 있는 LCD Display 의 표현적 특성을 조합하여 폰트 이미지의 외관을 가히 극대화하여 표현하는 방식.
LCD 디스플레이는 RGB의 색상체를 각 픽셀당 하나씩. 즉, 1개의 픽셀에 3개의 색상 표현 요소를 가지고 있다. 기존의 방식은 해당 픽셀을 하나의 요소로만 판단하여 폰트를 보정하여 출력해왔던 반면 ClearType 은 해당 픽셀의 3가지 요소를 개별적으로 컨트롤해서 표현하는 방식을 취한다.
* CRT 보다는 LCD에서 더 큰 효과를 얻는다. (수평 해상도가 LCD가 CRT보다 높아서 그렇다고 한다.)
* 처음 보았을때는 글자가 뿌옇게 보여 오히려 더 안보인다고 생각할지 모르나 익숙해지면 더 편하다.
* 영문은 거의 완벽하게 구현이 되었으나 한글은 한 글자의 선 밀도가 영문보다 높아 구현에 어려움을 겪고있다.
* 폰트를 매우크게하면 적용된 상태를 볼수 있다고 한다.
* 억지로 적용을 할수는 있지만 '를' 과 같은 글자는 '■' 처럼 보이기도 한다고 한다.
* 특허문제로 Adove, Linux, Apple 들이 각 다른 방식의 벡터 드로잉 방법을 가지고 있다고 한다.
- DoWeHaveToStudyDesignPatterns . . . . 9 matches
제 개인적인 의견으로는, 다른 것들과 마찬가지로 뭐든지 공부한다고 해서 크게 해가 되지는 않겠지만(해가 되는 경우도 있습니다 -- 다익스트라가 BASIC을 배워 본 적이 있는 학생은 아예 받지 않았다는 것이 한 예가 될까요?) 공부해야 할 필요가 있겠는가라는 질문에는 선뜻 "그렇다"고 답하기가 쉽지 않습니다. 여기에는 몇가지 이유가 있습니다. (제 글을 "DesignPatterns를 공부하지 마라"는 말로 오해하지는 말아 주기 바랍니다)
우선 효율성과 순서의 문제입니다. DesignPatterns는 이미 해당 DesignPatterns를 자신의 컨텍스트에서 나름대로 경험했지만 아직 인식하고 있지는 않는 사람들이 공부하기에 좋습니다. 그렇지 않은 사람이 공부하는 경우, 투여해야할 시간은 시간대로 들고 그에 비해 얻는 것은 별로 없습니다. 어찌 보면 아이러니칼하지만, 어떤 디자인 패턴을 보고 단박에 이해가 되고 "그래 바로 이거야!"라는 생각이 든다면 그 사람은 해당 디자인 패턴을 공부하면 많은 것을 얻을 겁니다. 하지만, 잘 이해도 안되고 필요성도 못 느낀다면 지금은 때가 아니라고 생각하고 책을 덮는 게 낫습니다. 일단은 다양한 프로그램들을 "처음부터 끝까지" 개발해 보는 것이 중요하지 않나 생각합니다. (see also [WhatToProgram])
- LIB_3 . . . . 9 matches
WAIT 와 SUSPEND 그리고 FREE 큐로 나누어 질 수 있다.
그리고 FREE 큐는 메모리상에 존재하지만 죽은 태스크를 담아 놓은 큐.....쯔쯔쯔 불쌍도 해라.[[BR]]
음..이렇게 나누어지고 WAIT큐의 0번째 태스크가 지금 실행 중인 태스크를 지칭한다.[[BR]]
그리고 나서 지금의 가장 높은 태스크를 스타트 TCB로 지칭해 준다.초기화 끝[[BR]]
SUSPEND 된 TASK 들을 다시 살려주는 고마운 펑션
SUSPEND 큐에 넣어주고
음..내가 교수도 아니고 스케쥴링이 오에스에서 가장 중요할 것이다.. 그럼에도 불구하고 허접하다.[[BR]]
실행속도가 차이는 나지만 그래도 나름대로의 방식으로 만들려고 노력했다..그래서[[BR]]
- MySQL . . . . 9 matches
ZeroPage에서 사용하고 있는 데이터 베이스
''-- 이건 사용자가 root일 때만 되는거 아닌가요? 권한이 없는걸로 알고있는뎅 ^^ -jeppy''
재니가 오늘 물어보는데, ORDER BY name (스트링) 을 하는데, 가나다순으로 정렬이 안된다고 해서.
웬지 저 문제가 아닐까 하는 생각을 해보는중. (아니면 내가 삽질중인거고;) --["1002"]
앗 탄로 났다. 드뎌 영문으로 설치한 부작용이 다들 영어 써요 ~ 와~~;; 오호 통재라 모든것은 시험끝나고 이루어질것이니.. --["neocoin"]
MySQL에서 한글이 들어간 문자열을 제대로 정렬하려면 char 타입이 아닌 char binary 타입을 쓰면 됩니다. 하지만 이미 char 타입으로 되어있다면 ORDER BY BINARY 필드명 을 사용하면 됩니다. MySQL에서 char 타입은 순수한 아스키(0~127) 값에서만 제대로 동작합니다. 물론 char 타입을 쓴다고 해서 한글이 저장되지 않거나 하는건 아니지만, 검색이나 정렬등에서 제대로 작동하지 않는 경우가 있습니다. --["상규"]
''ㅎㅎ 형 고마워요~^^ --["재니"]''
위의 PHP 버전은 어떻게 만들었을까? 바로.. MySQL 코드를 보고 만들었다고 한다.- UseTheSourceLuke --[1002]
- ProjectZephyrus/Client . . . . 9 matches
''보통 SP는 해당 작업이 요하는 노동의 양으로 결정하는데 이건 중요도군요. 나중에 SP와 중요도(비지니스적 가치) 양자를 고려해서, 즉 지출과 수입을 맞춰봐서, 최고의 쇼핑을 하도록 합니다. --JuNe''
''Engineering Task나 User Story 모두 노동의 양으로 estimation을 해서, 포인트를 준다. 이렇게 "비용"이 적힌 카드들을 놓고, 어느 것을 하고, 미루고, 먼저하는 지 등의 순위 결정은 "중요도 중심", "위험도 중심"이 있는데, 작년 이후 익스트리모들(KRW)은 복잡하게 이런 걸 따지지 말고 그냥 비지니스 가치로 순서를 정하라고 한다. --JuNe''
|| 서버로부터 친구상태 받고 buddy list 에 처리 || 0.5 || ○(25분) 6/7 ||
|| 서버로부터의 결과 받고 처리 || 0.5 || ○(5분) (6/7) ||
- PythonLanguage . . . . 9 matches
* '''프로그램의 알고리즘에 집중할 수 있다.'''
* Python 을 '실행가능한 의사코드(pseudo-code)' 라고 부르기도 한다. 그만큼 완성뒤 코드를 보면 참으로 깔끔하다.
* TestFirstProgramming, UnitTest(PyUnit 참고), ["Refactoring"] 등의 방법론을 같이 접목시키면 더욱 큰 효과를 발휘할 수 있다.
* 파이썬으로 프로토타입을 빨리 개발하고, 실행 속도를 요하는 부분은 C/C++ 나 자바 코드로 다시 작성해서 붙일수 있다. (["Jython"] 참고)
Python 으로 무엇을 할 수 있는지를 알고 싶다면 'Programming Python'를 추천.
'' 파이썬 정보 광장에서 강의 노트가 상당히 좋음, 그것을 보고 처음으로 파이썬 문법을 익혔다. 그리고 나서 PyGame으로 게임 하나 짜는것도 익히는데 도움이 된다. -[상협] ''
* ~~http://board1.hanmir.com/blue/Board.cgi?path=db374&db=gpldoc - johnsonj 님의 파이썬 문서고~~
- Squeak . . . . 9 matches
스퀵은 스몰토크(Smalltalk)입니다. 일반적으로 스몰토크라 그러면 국내에서는 컴퓨터 역사의 한 부분으로 과거의 언어정도로 생각하고 있습니다. 그래서인지 국내에서는 일부 취미 생활로 공부하는 사람, 극(극극극극)히 적은 특정 분야의 회사를 제외하고는 쓰이지 않습니다. 그러나 스몰토크는 진보적이라면 진보적이지 결코! 절대로! 과거의 고리타분한 언어가 아닙니다. 무엇보다도 스몰토크는 무척! 즐겁습니다. 특히 '스퀵'은 더 즐겁습니다. ;) (소개글은 http://squeak.or.kr 에서 퍼왔습니다)
* 창준선배님과 상민형께서 올해초쯤에 마소에 게제하신 글을 보고 스퀵을 알게 되었습니다. (그전에 책을 갖고 있긴 했었지만요) 기사를 보고 스퀵을 조금 익혀두었다가 나중에 자식을 낳고 자식과 같이 스퀵을 즐길 수 있었으면 좋겠다는 생각을 하고 스퀵을 해봐야겠다는 생각을 했습니다. 하지만 아직 사용하고 있는 사람들이 많지 않은것 같더군요 - 임인택
- TAOCP . . . . 9 matches
* 문제(Exercise)를 풀어보고 모여서 서로 답을 비교한 후에 해답을 본다.
* 참고자료로 볼 수 있도록 위키페이지에 정리한다.
[삼색볼펜초학습법]으로 책을 읽고 모임을 가진다면 더 좋겠다는 생각을 한다.
[정모/2004.7.26]하고 모임을 어떻게 할 지 정해보자. 어느정도 읽어보았는데 앞쪽은 수학이네. 뒤쪽은 자료구조인 듯 하고. 아무래도 뒤쪽이 더 흥미롭지. --[Leonardong]
1.1 알고리즘 정리했음
대부분 번역하려고 노력했는데 생각보다 힘들다. 그냥 영어로 정리하는게 더 괜찮을듯
그리고 표그리기, 희안한 기호들, 작은 글자 표현하기도 힘들다
CSS상태(고정폭폰트인지)에 따라 선이 삐뚤삐뚤하기도 하다
- TCP/IP . . . . 9 matches
간단하게 설명해서 TCP 는 신뢰성있는 전송, UDP 는 '난 보냈으니 잘 가던지 말던지' 라고 하는 프로토콜이다.
애플리케이션이 데이터를 보내고 받을수 있는 추상적 계념이다. 라고 하면 '먼소리여?' 할지 모른다.
쉽게 말해서 데이터를 파일에 쓰고 읽는 것처럼 소켓을 사용해서 데이터를 쓰고 읽을 수 있단 소리다.
이렇게 하면 다른 애플리케이션 역시 쓰여진 소켓을 읽을 수 있고 그 역도 성립한다.
== 참고 ==
* TCP/IP Sockets (Java/C 버젼) : 가장 짧은 TCP/IP 서적. 짧은 시간 동안 개론적 이해를 얻는데 최고.
* Interactive Shell이 지원되는 언어(e.g. Python, Ruby, ...)를 사용하면 TCP/IP의 개념을 아주 빠른 시간 안에 배울 수 있음. (Python은 내부적으로 C 라이브러리를 그대로 사용) 또, 현재 개발된/개발중인 시스템을 테스트 하는 데에도 매우 편리함. 예컨대, 리코에서는 XMLRPC 서버 접속을 파이썬 쉘에서 하고(import xmlrpc 한 다음에...), 거기서 사용자 등록 등의 서비스를 직접 사용하게 한다.
- TheOthers . . . . 9 matches
* Weekly Report Manager? 주로 회사 같은 데서 많이 쓰는 금주 했던 일에 대한 결산 레포트이다. 어느 일을 몇시부터 몇시까지 했으며, 그 일의 종류는 무엇이며, 주별로 통계를 내어, 어느 프로젝트에 몇시간을 투자했고 자기개발에 몇시간을 투자했는지 등등을 적어 회계용도로 쓰이기도 한다.
* Specification (SVN의 UIProtoType 폴더 참고)
* GUI (SVN의 UIProtoType 폴더 참고)
* UI 사양서 (SVN의 UIProtoType 폴더 참고)
* DBSchema (SVN의 Doc 폴더 참고)
* Access DB 작성 (SVN의 Doc 폴더 참고)
* 으흠... 로고는 구해보려고 했는데 화질의 압박이... 좋은 카메라좀 빌려줘 --[snowflower]
* 내가 너희팀 로고를 만들어 ㅤㅂㅏㅆ다 인수는 지우겠지 ㅡ,.ㅡ;; --[eternalbleu]
- UnixSocketProgrammingAndWindowsImplementation . . . . 9 matches
// 에러가 났을경우( sockfd == -1) 에러를 출력하고 프로그램 종료.
// sin_addr은 인터넷 주소를 담고 있으므로 4 바이트가 필요하다.
inet_addr(): 주소를 long형으로 계산하고 htonl()를 사용해 Big-Endian으로 변환 후 값을 return 한다.
// 비교를 하여 크다면 받아들이지 않고, 작다면 크기를 줄일것이다.
※ 이를 이야기 해보고 client의 프로그램의 네트워크 정보(struct sockaddr_in)에는 무엇이 들어가야하는지 이야기해보자.
// 이것은 프로그램이 socket과 연결할 정보를 담고있다.
// exit로 종료를 하면 모든 파일 디스크립터를 자동으로 닫고 종료한다.
위의 server 에 접속 하는 client 프로그램을 짜고, Server가 보내는 메세지인 "Hello, World!"란 문장을 clinet 화면에 출력하도록 한다.
= 참고 사이트 =
- VisualBasicClass/2006/Exam1 . . . . 9 matches
OCU 중간 고사 문제
3. 다음의 설명을 듣고 물음에 답하시오.(1점)
① 프로구램의 작동 순서가 완전히 프로그램에 의해서 지시되고 제어된다.
㉠ 툴 박스에서 추가하고자 하는 툴을 클릭한다.
㉢ 폼 위에서 마우스 포인터를 컨트롤을 두고 싶은 위치에서 클릭, 드래그하면 컨트롤이 나타난다.
11. I 가 10으로 초기화되었다고 할 때 다음 중 단 한번도 수행하지 않는것은?(1점)
① 옵션이 on 또는 off 되었다는 것을 알려주는 Value속성을 가지고 있다.
18. 다음의 결과를 보고 ①~③번에 필요한 함수를 입력하시오.(* 단, '_' 기호는 공백임.)(3점)
문제의 난이도는 쉬우나 중간중간 함정이 있기 때문에 한번씩 돌려보고 답하는 것이 좋다. -_-;
- ZeroPage/임원 . . . . 9 matches
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 직책 || 기수 || 이름 || 비고 ||
|| 총무 || 21기 || [고한종] || RESIGNED ||
- ZeroPageHistory . . . . 9 matches
* 99년 말에 태어나서 운영되고 있는 당시 웹페이지의 모습
FixMe 임베팅한 사이즈 조절 할줄 모르겠음. 오리지날 파일은 아래 참고. 스크린샷 상의 오르지오 메일은 망해서 모자이크 처리 안했음 --NeoCoin
||겨울방학 ||ZeroPage 홈페이지 디자인 개편, 로고 및 마스코트 공모 ||
* [ZP&COW세미나]: 고려대 동아리와 교류
||여름방학 ||데블스 캠프 with 한양대 자람, 대대적인 PC실 고스트 작업, 가평 MT, ||
* 07년은 서버 날라갔던거 때문에 위키 및 홈피에 흔적이 없고 스터디들이 생각나지 않는다ㅠ 기억나시는 분들 채워주시길.. - [지원]
||여름방학 ||데블스 캠프 진행, 양주 MT, 로고 사생대회, 롯데월드 소풍 ||
* 2011년은 현재년이고 위키에 정리된것도 많아서 책자에 좀 상세히 적으려고 합니다. - [지원]
- ZeroPageServer/set2002_815 . . . . 9 matches
* PDS 의 Upload 시 한글이 깨지는 문제에 대한 해결책 필요. 단순히 한글 인코딩 설정말고 다른게 또 있는가?
* Admin 툴은 누가 만들었고, 정확한 용도는 무엇인가? 모든 게시판이 표시되지는 않는다, 이유는 무엇인가?
''게시판 Admin 툴을 이야기하는건지? 맞다면.. '''만든이는''' ["sun"]이고 '''용도'''는 게시판 생성/삭제를 쉽게 하려는 의도에서 였으며, '''모든''' 게시판이 표시되지는 않는것은 툴을 만들었던 시점이, 자게,질/답 등 이미 몇몇 게시판이 만들어진 이후였기 때문(변경을 게을러서 안했음). --["sun"]''
* Server 프로그램을 자기 계정에서 고정 도메인 & IP 로 돌려볼 수 있다는 것도 큰 장점.
* 류상민 (99, ["neocoin"] ) : 하겠다고 덤빈 사람
* PC실 음식물 반입금지이고, 서버는 지켜야 겠고, 복도에서 짜장면 & 짬뽕을 pc실 의자와 책상 내놓고 차려 먹다가 다시 pc실로 들어가서 상차려 먹었다.
* 27일 오후에 suexec rename, cgiwrap설치후 삭제하고, suexec 복구하자 잘 동작
- zennith/MemoryHierarchy . . . . 9 matches
이전까지의 중연 부연 횡설 수설 하는 모습을 벗고, 비교적 간단하고 알기 쉽게 설명하겠습니다.
* 성능이 줄어들고
* 가격이 낮아지고
레지스터는 메모리 계층구조에서 가장 상위 계층으로서, 가장 빠른 속도와, 가장 적은 capacity 를 제공한다. 보통 개개의 레지스터는 그 프로세서의 word 크기이며, 현재 주로 사용되고 있는 인텔 i386 계열 프로세서들의 범용 레지스터의 크기는 32bit 이다.
요즈음의 RISC 구조 프로세서에서는, 모든 연산의 연산자들로 레지스터만 허용하므로, 이 제한된 숫자의 레지스터들을 어떻게 관리하느냐가 성능 향상의 주안점이다. 가령, 빈번하게 요구되는 변수는 계속 가지고 있는다던지, 아니면 한동안 쓰임이 없는 변수를 레지스터에서 버린다던지 하는 일이다. 물론, 이 일(optimal register allocation)은 컴파일러에서 담당한다.
캐쉬의 목적 : 어떻게 하면 최대한 메모리 참조를 적게하고 레지스터로 옮길 수 있을까.
가상 메모리의 목적 : 그래.. 메인메모리까지는 참을 수 있어. 참을 수 있다고.. 그런데, 최대한 디스크까지 가는일만은 피해보자.
보조 저장공간의 목적 : 많이.. 무결하게.. 덤으로 빠르면 좋고..
- zyint . . . . 9 matches
|| 다빈치코드(일러스트레이티드 버젼;;) || . || ★★★★ || 음.. 다빈치코드는 상하권으로 나뉜거랑 이책이랑 두번봤는데... 아무래도 사진을 직접 보면서 읽으니 [[BR]] 이해가 잘갔다-_-(사실 글로만 읽다보면 이해가 전혀 안되는 부분도 있었고;; [[BR]]최후의 만찬 그림을 책을 읽으면서 바로 바로 [[BR]] 보고싶었엇는데 사진이 포함된 이책은 좋았던거 같다.ㅋ [[BR]]음.. 전체적인 줄거리와 책 속에 있는 지식은 나름대로 만족스러웠다. ||
|| 피아3집 || 11,000원 || ★★★★★ || 보컬 목소리도 마음에들고 기타랑 드럼, 키보드, 베이스 모두모두 러브리 -_-; ||
|| 웰컴투동막골 || ★★★★★ || 대박작품-_-; 제목이나 포스터에서 풍겨오는 찌질함은 영화를 보면 바로 사라진다. [[BR]]감독 특유의(이 영화에서 처음보는것인듯) 아웃포커싱 기술로-_-; 감독의 쏀쓰가 물씬 풍겼다! 정말 최고의 영화! ||
|| 스텔스 || ★ || 폭탄 터지고 비행기 터지고 -ㄱ- 이런거 좋아하는 사람이면 좋아할거같은 영화지만................ 그다지 -ㅅ-[[BR]]내용도 엉성하고..........궁금증은.. 무인전투기에 왜 좌석이 있는것일까 -_-...[[BR]]별 반개도 아까운 영화. 시각적인 즐거움뿐, 스토리구성은 0점||
엠티때 프로젝트 하나 할까하고 말했지? 음.. 그거 진짜 사람 모을까? 할래? -[조현태]
- 흐흐 오랜만에 ZP홈피 와서;; 이제 답변 다네요.. 전 만오천원짜리 닷컴도메인 쓰고 있는데 .... 조만간 닷넷 도메인 등록비용 오른다는 소문이 ㅇㅅㅇ;; - 태훈
- 날다람쥐 6월9일 . . . . 9 matches
그리고 printf("%d", a); 라는 명령어를 통해 바뀐 것을 확인할 수 있다.
만약에 INT형의 주소를 나타내는 변수 IP를 선언하고 싶으면 int* ip; 라고 표현하면 된다.
이라는 것을 외우도록 하고
라고 한다면 ap에는 a의 첫 번째 변수(a[0])의 주소가 들어가게 된다.
(맨 밑의 고치기 버튼을 누르면 수정할 수 있고, 자기 이름 밑에 내용 쓰기. 위의 내용은 바꿔도 되지만 책임못짐 ㅋㅋ)
이름과 반을 3개 입력받고 포인터를 이용해서 edit라는 함수 안에서 2번째 입력받은 사람을 수정한 후 다시 출력하기. 예) 유정석 1
바로 위의 배열을 모두 출력하는데, printf("%d", *(ap + @))의 형태로 출력해보자. 여기서 모든 값들을 출력하려면 @에 각각 어떤 수가 들어가는지 직접 해보고 왜 그런지 설명하기.
- 덜덜덜/숙제제출페이지 . . . . 9 matches
printf("수고하셨습니다n");
고쳤었요~~ "average.exe(ver.2.301)"<-이거 그럴듯 하죠?ㅋㅋㅋ- [정윤선]
너도 scanf 할때 "%s" 말고 " %s" 같이 한칸 띄워서 해봐 그리궁 이름 받을때 2중배열해서 해보궁 ㅋ - [조동영]
너가 지금 짠건 한명만 받고 한명의 평균만 낸거고 ㅋ 그렇게 5명의 이름을 모두 받기위해서 char name [5][10]; 이런식으로 2중배열로 메모리를 잡아주어서
/* 입력하고 그 평균을 구하는 */
위에 이름까지 같이 함께 묶어서 넣고 싶으면 .. 이름은 타입이 다르기때문에 구조체라는것을 써서 같이 묶어서 넣을수 있습니다. 구조체는 나중에 배울겁니다. ^^ 그리고 주석을 사용안하고 변수명으로 의미를 알수 있게 해줄수 있다면 그게 더 좋습니다. 변수명이 조금 길어지더라도 주석 없어도 이해가도록 짜면 좋습니다.(리펙토링에 나오는 얘기..) 예를 들면 국어 성적 변수명은 KoreaScore 혹은 ScoreOfKorea 이런식으로 쓸수 있습니다. - [상협]
- 루프는0부터? . . . . 9 matches
대부분의 경험있는 C++프로그래머들은, 처음에는 이상하다고 생각할만한 프로그래밍 습관을 가지고 있습니다. 그것은 바로 번호를 매길 때에 언제나 1부터 시작하는 것이 아니라 0부터 시작한다는 것입니다.
첫번째 것은 0부터 번호를 매기고 !=를 사용하는데 반해, 두번째 것은 1부터 번호를 매기고 <=로 비교합니다. 반복횟수는 둘다 동일합니다. 두번째 것보다 첫 번재 것을 더 성호하는 이유가 있을까요?
첫번째 for문은 [0, rows)를 사용하는 것이 편하고, 두번째 for문은 [1, rows]를 사용하는것이 더 편하다.
지금까지 r개의 행을 출력했따고 표현할 수 있기 때문입니다. 만약 1부터 번호를 매긴다면? 이제막 r번째 행을 출력하려는 찰나라고 정의할 수도 있겠지만, 그러한 구문은 불변식으로 정당치 않습니다. 왜냐하면, while이 조건식을 마지막으로 검사할때, rows+1이 되기 때문입니다. 이때 우리가 원하는 것은 rows행만을 출력하는 것 입니다. 따라서 우리는 r번째 행을 막 출력 하려던 것이 아닌 셈이 됩니다. 지금까지 r-1개의 행들을 출력했다고 불변식을 정의할 수도 있을 것입니다. 하지만 불변식을 그런식으로 정의 햇다면, r을 0부터 시작시켜 단순화 시키는 것이 더 낫지 않을까요?
조건식이 r!=rows라면, 루프가 끝날 때 r==rows라는 사실을 알수 있습니다. 불변식은 r개의 행을 출력했따는 사실을 말해 주기 때문에, 정확히 rows개의 행을 출력했다는 것을 알 수 있습니다. 한편, 만약 조건식이 <=rows라면, 그로부터 알 수 있는 사실은 최소한 rows개의 행을 출력했다는 사실 뿐입니다. 따라서 그 이상을 출력했을 수도 있는 것입니다. 0부터 번호를 매기게 되면 정확히 rows번의 반복을 수행했는지 확실히 하고자 할 때, R!=rows를 조건식으로 사용할 수 있습니다. 또한, 반복횟수가 rows번 또는 그 이상이 되기만을 원한다면, r<rows를 사용할 수 있습니다. 만약 1부터 번호를 매기다면 최소 rows번의 반복만을 원할때 r<=rows를 사용할 수 있습니다. 하지만, rows가 정확한 숫자가 되도록 하려면 어떻게 해야 할까요? 그런 경우에는 좀더 복잡한 조건식인 r==rows+1과 같은 방법을 사용 할수 있습니다. 하지만 이렇게 복잡하게 해서 얻을수 있는 이득은 거의 없습니다.
- 만년달력/곽세환,조재화 . . . . 9 matches
완성했당~~ *^^* 아직 코드 쉽게 이해할수 있도록 고치면 좋겠다고 창섭이형이 충고함~~ ㅠㅠ 담에 짤때는 깔금하게...
cin >> year >> month; // year 은 알고 싶은 년도, month 는 알고 싶은 달.
if(weekDay==7)//0~6 을 일~토 라고 했을때 토요일값을 입력하면 한칸 뛰운다.
cin >> year >> month; // year 은 알고 싶은 년도, month 는 알고 싶은 달.
if(weekDay==7)//0~6 을 일~토 라고 했을때 토요일값을 입력하면 한칸 뛰운다.
- 상협/모순 . . . . 9 matches
* 나는 이말에 대해서 이 소설을 읽기 전까지는 그렇게 크게 느껴지는게 없었는데.. 소설을 읽고 나서는 이말에 대해서 느껴지는게 많아 졌다. 인생을.. 미리 짜여진 계획대로.. 마음대로.. 된다고 한다면 행복할까? 자기가 하고 싶은것은 다 할수 있고, 못하는게 없다면?? 과연 행복할까~?? 어떠한 불행도 없는 행복을 행복이라고 할수 있을까? 하는 생각을 해본다. 인생이 그렇게 만만하지는 않을거 같고, 그렇게 만만하게 사는게 좋을거 같지는 않다. 나의 인생도 내 계획대로 된것도 아닌고.. 지금 생각하면 그게 더 재밌는 삶을 살 수 있게 만든건 아닌지 하는 생각이 든다.
* 이책을 읽으면서 행복과 불행에 대해서 생각해 보았다. 그리고 사랑에 대해서도 생각해 본다. 진정한 행복은 불행이 있기에 존재할 수 있는거 같다. 불행이 없는 삶은 행복또한 없는 삶이다. 행복이라는 것도 어떠한 기준이 필요할텐데 그 기준으로서 불행이 적합하기 때문이다. 모......순..... 그렇다면 어떤 방패도 뚫을 수 있는 창이 있기에 어떤 창도 막을 수 있는 방패도 존재 한다고 말할 수 있는 건가?..어떤 창도 막을 수 있다는 말에서 어떠한 창이라는 말이 어떠한 방패도 뚫을 수 있을 만한 창이라는 가정이 숨어 있다. 즉 어떠한 창도 막을 수있다는 말은 필연적으로 어떤한 방패도 뚫을 수 있는 창이라는 존재의 기반 위에서 존재 할 수 있는 것이다. 그 말의 성립 여부를 떠나서 그 말의 존재라는 기반위에서 생각하면 두 말은 서로의 불가분의 관계에 있는 것이다. 세상사의 모든 관계가 그런건 아닐까?..
- 새싹교실/2012/강력반 . . . . 9 matches
* 설유환 - printf함수, scanf함수, if문, else if문, switch 제어문을 배웠다. 특히 double, int, float의 차이를 확실히 배울 수 있었다. 잘이해안갔던 #include<stdio.h>의 의미, return 0;의 의미도 알수 있었다. 다음시간엔 간단한 알고리즘을 이용한 게임을 만들것같다. 그리고 printf("숫자%lf",input);처럼 숫자를 이용해 소숫점 표현량을 제한하여 더 이쁘게 출력하는법도 배웠다.
* 장재영 - printf와 scanf. swtich, if else if등을 배웠고 수업시간에 배운것 말고 새로운 이론도 배웠다 그래도 이론수업보다는 실습시간이 더 재밌다. 다음시간에는 반복문에 대해서 배우고 실습해 볼 것이다. 아픙로 수업시간에 듣는것 말고도 다른 것도 좀 배워보면 조헥ㅆ다. 이해가 안가는 이론을 한번더 들을 수 있어서 수업과정을 이해하는 데도 도움이 많이 되었다. 또 적은 수의 사람이 모여서 하기 때문에 프로그래밍할때 이해가 안되는 부분을 더 자세히 들을 수 있어서 이해하는데 도움이 되었다.
* 황현제 - 우선 c언어에서 쓰이는 기본적인 연산자가 무엇이 있는지에 대해서 배웠다. 또한 함수 4가지에 대해서 배웠는데, printf, scanf,switch, if에 대해서 배웠고 그리고 새싹강사님께 C를 이용해 작성하신 프로그램을 구경하기도 했는데, C로 이런것도 할 수 있다는 것을 알았다. 새싹 강사님께서 우선적으로 설명을 해주신다음 새싹들이 실습하는 방식으로 수업이 진행됬는데, 옆에서 강사님이 지속적인 피드백을 해주셔서 이해하기가 편했다. 다음에는 반복문에 대해서 배우고, 실습도 해봐야겠다.
- 새싹교실/2012/벽돌쌓기 . . . . 9 matches
* 첫 수업이라 많은 진도를 빼지 않고, 기본적으로 Hello World 프로그램 구현 가능에 중점을 두었다.
* 의외로 이해를 빨리하여 실습 예제를 빠르게 해결하였고, 흥미를 보이는 데 있어서 성공적이었다.
* 일반적으로 많이 쓰이는 반복문과 조건문을 설명하는 데에 있어 시간을 많이 투자하였고, 본 강사의 예제 코드를 따라 입력하게 한 뒤, 디버깅을 통하여 어떻게 구현되는가를 설명하였다.
* 허나 1회차의 내용을 제대로 복습하지 않아 1회차 내용을 다시 설명하는 데 시간이 조금 걸렸고, C언어를 배우는 데 있어서 필요로 되는 프로그래밍 능력 또한 키워주어야 한다고 판단 되었다.
* 본 강사의 몸 상태가 좋지가 않아 총 2시간의 강의를 진행하였고, 진도 내용 또한 부실하였다고 판단하고 반성한다.
* 함수의 구현에 있어서 기본적인 int main(void) {}로 시작하여 간단한 swap함수와 add함수를 구현하여 설명하였고 return값이 정확하게 어떤 의미를 띄는지 함수선언의 자료형에 맞춰 강의하였다.
- 새싹교실/2012/부부동반 . . . . 9 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 참고로 ZeroWiki는 MoniWiki Engine을 사용하며 Google Chrome이나 Mozila Firefox, Safari보다는 Internet Explorer에서 가장 잘 돌아가는 것 같습니다.
C/C++의 문법과 활용을 자세하게 설명한 책. 문법을 소개하는데 그치지 않고 변화화는 코드가 실제 프로그램과 하드웨어적으로 어떠한 영향을 일으키는지 비교함으로써 본 스터디의 목적과 매우 잘 부합됨
* 그 외 참고도서
코드를 Compact하고 Clear하게 구성할 수 있는 방법에 대한 전문 연구서
단 값은 변하지 않는 고정값이 보장된다.
1시간 이상 소요되지 않는 범위에서 문제를 해결하기 위한 아이디어를 서술하고 조사한 자료를 토대로
C 언어에서 데이터형을 다양하게 제공하고 있는 이유는?
- 정규표현식/스터디/문자집합으로찾기 . . . . 9 matches
마침표(.)는 어떤 문자와도 일치한다. 만약 특수한 문자와 일치시키고 싶다면,
문자 집합 찾기. 정규 표현식의 모든 문자를 뜻하는 '.'가 있음을알것이다. 하지만 모든 문자말고 소문자만 찾고싶다
대문자만 찾고싶다. 숫자만 찾고싶다 할때는 어떻게 해야하는가? 이런 해당 '범위'를 지정해서 찾는 방법은 다음과 같다.
* {{{다음과 같이 [] 는 리스트를 나열해주는 것으로 .과 같이 한글자만을 지원한다 여러개의 []리스트를 사용하고싶다면 '*'(와일드카드)를 붙이거나 범위를 지정해주는 {}를 사용하여 []* 이나 []{4,4}(4개 찾기)로 이용할수 있다.}}}
* {{{또한 다음과 같이 [0-9] = [0123456789]와 같이 사용하며 문자 또한 지원한다. 축약법은 하이픈(-)을 붙이는 방법으로 [A-Z][a-z] 이방법은 아스키 코드 방식을 따르며 축약시킬 경우 [a-A]는 역순이므로 되지 않는다. 또한 리스트([])안에서는 또다른 리스트([])와 역슬래시(\), 하이픈(-)을 제외하고는 모두 일반 문자와 같이 인식하므로 특수문자 %&^*$ 를 단순히 리스트 안에 나열하는것으로 검색할수 있다 리스트 안에서 리스트([])를 검색하는 방법은 역슬래시를 붙여 이스케이프를 시켜야한다.}}}
== 제외하고 찾기(승한) ==
* 제외하고 찾기 : {{{[^A-Z]}}}
- 정모/2007.3.27 . . . . 9 matches
- 현재 학회비가 제대로 들어오지 않고있따.(이유 : 타 학회의 인수인계 미숙, 과사의 실수)
- 현재 pc관리 비용이 나오는지도 불투명 하고 동아리 지원금 또한 불분명 하고 있다.
- 현재 문제가 되고 있는 부분이 다달이 PC관리비용이 14만원이 나오고 있어서 이 돈을 아마 4개의 학회가 골고루 나누어 질거 같다
- 회의가 끝난뒤 우리는 학회이니까 자신이 부족한 과목, 급한 숙제, 궁금한점 등등에 관해서 주제를 만들고 활용하는 방식으로 했으면 한다.
- 각 회의마다 적당한 수의 ost주제가 나와야 하므로 홈페이지에 페이지를 만들어 주제를 미리 적어보는 방법도 고려해 보자.
=> 웹쪽에서 강력한 효용성을 가지고 있음. 기초부터 시작할 예정입니다. 관심있으신 분들의 많은 참석 바랍니다.
- 정모/2013.2.26 . . . . 9 matches
* 참여자 : [김민재], [송정규], [고한종], [김태진], [정진경], [서민관], [강성현], [정의정], [권영기]
* 다음 주자 : [고한종] 학우
* 학생회 일정을 보고 확정되는대로 위키와 공지사항에 올리겠습니다.
* 총무 : 고한종
=== 세미나 예고 ===
* 김태진이 위키 쓰라고 지적해서 내가 1빠요. 근데, 19일 정모는 왜 글이 없음 ?_? 누나 졸업식 때문에 못 갔는데... - [고한종]
* 회고도 안했네요. ㅇㅅㅇ 뭐, 이제 회장단이 정해졌으니 좀 더 체계적인 활동이 시작되지않을까요? ㅋㅋ -[김태진]
* 홈페이지에서 OMS PPT를 봤는데 이거 듣고 다들 멘붕 안 했는지 궁금하네욬ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ - [김수경]
- 지금그때2005 . . . . 9 matches
* [지금그때/도우미참고]
* [지금그때2005/회고]
지금그때의 의미를 담은 자료집과 질문릴레이에서 좋은 내용을 받아 적을 수 있는 종이. 그리고 OST를 간단하게 받아 적을수 있는 종이를 나눠준다면 좋지 않을까요?? - 이승한
위키설명회에 이어 총엠티 자봉단 회의와 시일이 겹칩니다. 미리 22일에 한다고 했으니 자봉단이 그 날짜를 피해줬으면 좋겠다고 생각한 건 제 욕심이었나 봅니다. 오고 싶지만 못오는 사람이 있을지도 모른다는 생각에 안타까움을 감출 수가 없습니다. --[강희경]
자봉단장에게 회의를 옮겨줄 수 있냐고 물었더니 생각해본다긴 했지. --[Leonardong]
오늘 오후에 그것 강력하게 요청해 보는건 어떨까요?? 자봉단 할일중 반이 마임인데. 자봉단장에게 미뤄진 수요일은 작정하고 마임을 배우게 하자고 말하는것도 좋을것 같아요. - 이승한
- 캠이랑놀자/051228 . . . . 9 matches
세미나 준비와 관련하여, 추상적인 말을 줄이면서 사람들이 실제 결과를 가지고 이야기할 수 있도록 하는데 촛점 맞추기. 그러다가 종종 PIL 을 써서 프로토타이핑 하던게 생각나서 Python + PIL 로 진행.
1시간 만에 실제로 코드를 돌리고 이미지 처리를 하고 실제로 동작하는 과정을 사람들이 hand-out 으로 해보면서 효율적으로 익히게 할 방법은 python 아니면 matlab 밖에 없을 것 같은 느낌. 준비하면서도 느낌이 웬지 좋았다.
세미나를 준비하는 입장으로서, 앞으로도 계속 hand-out + 군더더기 적은 핵심적인 이론 설명을 목표로 잡아야겠다고 생각. --[1002]
hand-out으로 한다는 게 무슨 말인지? 뭔가 사람들에게 인쇄물을 나눠주고 그걸 따라가게 해보는 건가? --JuNe
hand-out 이면 유인물인가요~? (hand-on 을 잘못 쓴 느낌이;) 정확히 어떻게 진행했냐면, 개념을 설명하고, 인터프리터로 사람들 앞에서 시연을 했고, 사람들이 관찰을 했고, 그 다음 알고리즘 별로 사람들이 파이썬 인터프리터로 해당 필터 구현을 진행했습니다. 필터 구현방법에 대해서는 구체적인 답을 주진 않았으나, 중간에 간단한 힌트를 주었습니다. --[1002]
- 컴퓨터고전스터디 . . . . 9 matches
컴공과에서 고전을 공부하는 게 가능할까?
요즘 전산학과 대학생들이 모여서 리눅스 해킹법이니, MFC API니 하는 걸 같이 스터디하는 것도 나름대로 의미가 있겠지만 컴퓨터계의 고전 하나를 제대로 스터디하는 것은 어떨까 합니다. ''군자무본 본립이도생. 군자는 근본에 힘을 쓰니, 근본이 서야 길이 생기기 때문이다.''라는 말이 논어에 나오죠. 나이가 아직 어리고, 시간적 여유가 있는 때에는 어떤 구체적인 "기술"보다 좀더 일반적이고 보편적이며 이론적인 사유를 훈련하는 것이 좋지 않을까요. 구체적 기술은 거기에 갖혀버리는(Lock-In) 경향이 있습니다. 2-3년 뒤에는 쓸모없어진다든가 하는 것이죠. 하지만 고전은 대부분 앞으로도 10년은 족히 유효한 것들입니다. 꾸준히 재해석될 가능성이 있는 것들이고, 무엇보다 문제의식과 함께 치밀한 사유를 배우는 겁니다. 생각하는 법 말이죠.
왜 고전 읽기는 인문학에만 해당하는 것이라고 치부해 버리는 것인지 안타까울 때가 많습니다.
* 2002년 MentorOfArts 위키에서 MythicalManMonth 로 Moa:컴퓨터고전스터디 그룹이 ZeroPagers 와 진행
- 파스칼삼각형/허아영 . . . . 9 matches
ver.3 파스칼삼각형 코딩한다니까. 보창오빠가 흘려가는 말로 "재귀함수로 짜면 되지 않냐" 고 했던 말이 생각나서
printf("찾고자 하는 열, 행을 차례로 입력 :");
printf("찾고자 하는 열, 행을 차례로 입력 :");
그리고 문제가 '파스칼 삼각형을 출력하시오.' 가 아니었던거 같은데?? 다시 보는게..
지금 나의 머리는 터질 듯 아프단다. ^^; 포인터 때문에 데여갖고-.ㅠ 소스를 아예 바꾸는 큰 공사를 치뤘기 때문에 ㅠ
좀 있다 생각해보마 ㅋㅋ 그리고 소감 읽어주길.. 문제 잘못 푼것을 나중에 알았단다 ㅋ--아영
ㅎㅎㅎ 소감 위의 세줄은 읽고 기억했는데, 밑의 두줄은 못봤어.ㅎㅎ
2차 이상의 배열을 포인터로 넘기는건 고생인데 말야.^^
고생했겠네..^^ 포인터..ㅎㅎㅎ 그래도 즐거운 하루. 즐거운 코딩 되라구.. 진짜 일하러 가야겠다 뱌뱌~~ - [조현태]
- 프로그래밍은습관이다 . . . . 9 matches
* 대학원 다니는 아는 선배에게 디버깅 세미나 할건데 뭐 도움되는 말좀 해달라고 하니깐 '프로그래밍은 습관이다' 란 말을 해줬다. 공감이 가는 말이다. 프로그래머에게 프로그래밍은 습관인거 같다. 마치 자전거를 처음 탈때는 엎어지고 그러다가 한번 타기 시작하면 그 다음부터는 쉽게 타는것이랑 비슷한거 같다. 난 군대 가기전에 군대 갔다 오면 프로그래밍 하는것을 다 까먹을텐데 하고 걱정을 했었다. 그런데 군대 가서 프로그래밍에 더 발전은 없었지만 마치 자전거 타는 법을 배우고 한동안 안타다가 다시 타는것과 같았다. 세세한 문법같은것은 생각이 나지 않더라도, 그런것을 어디서 찾을지와, 어떤식으로 적용할지는 몸으로 체득했기 때문에(삽질ㅜㅡ ) 몸이 기억을 했다. - [상협]
* 공감 가네요. 저는 고등학교에서 대학입시를 준비하느라 한 2년 이상정도 쉬고나서 저런 느낌을 받았었습니다. 처음에는 죄다 까먹었을줄 알았는데 막상 키보드에 손가락을 올려놓고 나면 무언가 떠오르면서 자연스럽게 키보드가 나가더군요. // 저는 [손가락이기억한다] 라는 말로 군대가는 친구들 군대를 준비하는 친구들에게 이야기 하곤 합니다. - [톱아보다]
* 저번에 [상규]형이 for(i=0; i<MAX; i++){...}이런식의 아주 작은 패턴이라고 말할수 있는것을 무엇이라고 설명해 주셨었는데 정확하게 용어가 생각이 안나네요;; - [톱아보다]
- 2002년MT . . . . 8 matches
1. 청량리역에서 경춘선 타고 가서 어딘가에서 내린다. 그담에 여차여차 해서 간다.
1. 청량리역에서 버스타는곳 쪽으로 가서 버스를 타고 간다.
''제 생각엔 버스를 타고 가는게 좋을듯... - 임인택''[[BR]]
버스타고 갑시다.. 다들 귀찮.. -zennith
* 술, 고기, 참치, 김치, 상추, 나무젓가락, 일회용접시, 쌀, 라면, 휴지, 불판, 치약
* 학번별로 분류해놔야 하나.. (고학번이 위로오게 수정해주세요~)
* 기차표를 몇장 끊어야 할지 정해야 하니 이게 필요하겠네여.. 정모땐 2명 빼고 다 나올수 있다고 했는데, 정모 안오신 분들도 있으니..
- 5인용C++스터디/에디트박스와콤보박스 . . . . 8 matches
* 다이얼로그 박스에서 만들고 사용하는 방법을 발표하면 안됨!
이 멤버함수들 중에서 Create 함수를 사용하면 대화상자 템플리트에 에디트를 배치하지 않고도 실행중에 에디트 컨트롤을 생성할 수 있다.
그리고 뷰의 WM_CREATE 메시지 핸들러인 OnCreate를 작성하고 이 핸들러에서 에디트를 생성한다.
m_Edit가 CEdit의 포인터로 선언되었으므로 일단 new 연산자로 CEdit객체를 만든다. 그리고 이 객체의 Create 멤버함수를 호출하여 에디트를 생성한다. Create 함수의 원형은 다음과 같다.
첫 번째 인수로 에디트의 스타일을 주되 에디트는 메인 윈도우가 될 수 없으므로 WS_CHILD 스타일을 주어야 하고 생성하자마자 보여야 하므로 WS_VISIBLE 스타일을 주어야 한다. 또한 에디트는 디폴트로 경계선을 가지지 않으므로 WS_BORDER 스타일을 주어야 보이게 된다. 두 번째 인수로 에디트가 차지할 사각영역을 주고 세 번째 인수로 에디트의 부모 윈도우의 포인터를 준다. 마지막 인수인 nID는 에디트 컨트롤의 ID이되 통지 메시지를 처리하지 않을 경우는 ID를 주지 않아도 상관없다.
세 번째로 메시지 핸들러 함수 OnChangeEdit1 함수를 작성한다. 함수의 본체 코드는 물론이고 함수명까지 직접 입력해 주어야 한다. 이 함수는 에디트 컨트롤의 문자열을 읽어 들이는 함수이다.
- BeingALinuxer . . . . 8 matches
Being A Linuxer는 '리눅서가 되는' 정도의 뜻으로 해석할 수 있다. 이는 완료형이 아니라 진행형이다. 이 스터디로 인해 참가자들이 리눅스를 조금이나마 이해하고 리눅스 환경에 익숙해지는 것을 최종 목표로 한다.
1. 일단 전체 12명을 3개의 조(각조 4인)로 나눔. 이를 각각 1조, 2조, 3조라고 함.
2. 각 조는 2개의 작은 조로 나눔. 2인이 다시 하나의 작은 조를 이루어 같이 실습하고 학습함. (SeeAlso PairProgramming)
7. 4~6의 과정을 하나의 사이클로 보고 한 사이클을 3주에 끝내는것으로 가정. 스터디가 종료될 때까지 스터디를 반복
- ls directory 하면 그 안에 있는 내용도 보여주는데.. ls pu* 하면. pu로 시작하는 파일하고 pu로 시작하는 디렉토리 안의 내용을 보여주겠지. 글고 linux, unix, bsd 계열의 OS에서는 폴더보다는 디렉토리라고 부르는게 맞는듯. - 인택
* 요즘 잘 안되고 있는 것 같아요 -_-;; 방학해서 그런가?? [한유선]
- Downshifting . . . . 8 matches
미친 듯이 일하면서 행복감을 못 느끼는 사람들에게 일을 좀 줄이고 행복감을 찾으라는 이야기를 한다. 일중독에 빠져 놓치기 쉬운 가족관계, 여가생활, 종교활동, 봉사활동을 하면서 새로 얻게 된 시간을 활용해 보라고 권유한다.
굳이 일과 행복에 한정해서 생각하지 않는다면 유용한 충고로 받아들일 수 있다. 정말 원치 않는데도 하고 있는 것을 줄이고 자기가 즐기는 것을 좀더 많이 하면 좀더 행복할 것이다.
또 하나 유용한 충고. 다운시프팅 같은 변화를 행동으로 옮길 때는 작은 부분부터 바꾸어나가라. 그리고 한 번 변화에 실패했다고 포기하지 말라! -- [Leonardong]
- GarbageCollection . . . . 8 matches
컴퓨터 환경에서 가비지 컬렉션은 자동화된 메모리 관리의 한가지 형태이다. 가비지 컬렉터는 애플리케이션이 다시는 접근하지 않는 객체가 사용한 메모르 공간을 회수하려고 한다. 가비지 컬렉션은 John McCarthy 가 1959년 Lisp 언어에서 수동적인 메모리 관리로 인한 문제를 해결하기 위해서 제안한 개념이다.
2번째 경우에 대한 힌트를 학교 자료구조 교재인 Fundamentals of data structure in c 의 Linked List 파트에서 힌트를 얻을 수 있고, 1번째의 내용은 원칙적으로 완벽한 예측이 불가능하기 때문에 시스템에서 객체 참조를 저장하는 식으로 해서 참조가 없으면 다시는 쓰지 않는 다는 식으로 해서 처리하는 듯함. (C++ 참조 변수를 통한 객체 자동 소멸 관련 내용과 관련한 부분인 듯, 추측이긴 한데 이게 맞는거 같음;;; 아닐지도 ㅋㅋㅋ)
특정 주기를 가지고 가비지 컬렉션을 하기 때문에 그 시점에서 상당한 시간상 성능의 저하가 생긴다. 이건 일반적 애플리케이션에서는 문제가 되지 않지만, time critical 애플리케이션에서는 상당한 문제가 될 부분임. (Incremental garbage collection? 를 이용하면 이 문제를 어느정도 해결하지만 리얼타임 동작을 완전하게 보장하기는 어렵다고 함.)
이거 말고도 문제가 상당하다고 하지만, 해석해야하는 관계로;;; 아래 링크에서 확인 바람.
2번째의 것의 경우에는 자료구조 시간에 들은 바로는 전체 메모리 영역을 2개의 영역으로 구분(used, unused). 메모리를 할당하는 개념이 아니라 unused 영역에서 빌려오고, 사용이 끝나면 다시 unused 영역으로 돌려주는 식으로 만든다고함. ㅡㅡ;; 내가 생각하기에는 이건 OS(or VM), 나 컴파일러 수준(혹은 allocation 관련 라이브러리 수준)에서 지원하지 않으면 안되는 것 같음. 정확하게 아시는 분은 덧붙임좀..;;;
- HardcoreCppStudy/두번째숙제/CharacteristicOfOOP/김아영 . . . . 8 matches
데이터 은닉이란 모듈이 그것이 갖는 기능들을 명세한 인터페이스(interface)를 통해서만 접근되고, 그 기능을 구현하는 방법은 다른 모듈로부터 은닉되도록 하는 것을 말한다. 캡슐화된 객체의 외부 인터페이스를 엄밀히 정의함으로써 독립적으로 작성된 모듈간의 상호 종속성을 극소화하여 캡슐화된 객체는 외부 인터페이스만을 통하여 접근될 수 있도록 한다면, 세부적인 구현 상세 사항에 대해서는 객체내에 은닉시킬 수 있다. 또한 캡슐화된 객체는 객체 구현내역을 변경, 혹은 향상시킬 때 이 객체를 사용하는 타 객체들을 변경하거나 다시 컴파일하지 않도록 할 수 있다. 또 모듈의 내부 구현 사항들이 외부의 접근으로부터 보호될 수 있음으로, 그 객체의 정당성을 보증할 수 있으며, 오류가 발생되었을 경우에 오류는 한 모듈내로 국지화될 수 있다.
상속이란, 기존에 만들어 놓은 객체들로 부터 모든 변수와 메소드를 물려 받아 새로운 객체를 만들 수 있다는 것을 뜻한다. 즉, 새프로그램을 만들 때 기존의 자료를 이용해(상속받아) 새롭게 정의하여 사용한면 된다는 것이다. 이로인해 부수적으로 프로그래밍의 노력이 줄고 시간 단축되며 그리고 OOP의 가장 중요한 재사용성(Reusability) 얻을 수 있다. 델파이는 TObject라는 최상위 객체로부터 상속시켜 단계적으로 하위 객체들을 생성해 만들어진 구조를 지니고 있다.
추상화란, 객체가 자신의 정보를 안에 감추고 있으면서 외부에 구체적인 것이 아닌 추상적인 내용만을 알려주는 것을 말한다. 때문에 추상화란 정보의 은닉(Information Hiding)이라고도 한다.
객체지향 프로그래밍에서 다형성이란 근본적으로 상속에 뿌리를 두고 있다. 조상 클래스로부터 상속을 받아 새로운 객체들이 파생되어 생성된다. 이때 만약 새객체들이 모두 조상 클래스와 모두 동일한 값만 가지고 있다면 새로운 객체로서 의미가 없다. 왜냐면 그것을 만드는 이유는 무언가 다른 역할을 하기 위해 생성하는 것이기 때문이다. 그래서 다형성이란 조상이되는 객체로부터 상속을 받아 다른 결과물을 산출해 낼때 다형성이라는 의미를 부여할 수 있게 된다.
- HelpForDevelopers . . . . 8 matches
모니위키는 완전한 자유 소프트웨어이며 http://kldp.net/projects/moniwiki 사이트에서 개발이 이루어지고 있습니다.
=== 문제점 보고 ===
모니위키 사용중에 문제점이 발생하는 경우에는 지체없이 http://kldp.net/projects/moniwiki/bugs 사이트에서 문제점을 보고해주시기 바랍니다. 혹은 사용중에 불편한 점이 있다고 생각하셔도 보고해 주시면 고맙겠습니다.
모니위키의 일부 부족한 부분에 대해서 조금만 더 관심을 가진다면 모니위키의 기능을 확장하고 모니위키에 소스코드를 기여하실 수도 있습니다. 여러분의 기여가 많은 사람에게 도움을 줄 수 있습니다.
모니위키는 GPL이라는 공개 소프트웨어 라이선스를 준수하고 있으므로, GPL에 준하는 어떠한 기여도 환영합니다.
- Knapsack . . . . 8 matches
어느날, 커다란 주머니를 든 손님이 찾아 왔습니다. 그리고[[BR]]
예를 들어 과일의 크기와 가격이 다음과 같다고 합시다.[[BR]]
여기서 주머니의 크기가 50이라고 합시다. [[BR]]
그리고 그 때 버는 돈은 얼마인지 구하는 프로그램을 작성하세요. [[BR]]
처음부터 단박에 이 문제를 푸는 것보다 조금 더 제한적이고 쉬운 문제에서 일반적이고 어려운 문제로 점진적으로 진행해 나가는 것은 어떨까요. NoSmok:HowToSolveIt 에서 소개하는 문제 해결 테크닉 중 하나이기도 하죠. 훨씬 더 높은 교육적 효과를 기대할 수 있지 않을까 합니다.
그리고 누군가가 만든 프로그램이 옳다는 것을 테스트하기 위해서는 이를 자동화하는 것이 편할 것이고, 이것을 위해서는 인풋과 아웃풋을 좀 단순화하는 것이 좋지 않을까 합니다. ICPC의 문제들을 구경해 보세요.
- MFC/DynamicLinkLibrary . . . . 8 matches
종전의 방식처럼 정적으로 링크를 하게되면 윈도우 프로그램의 특성상 굉장히 메모리를 많이 차지하는 프로그램이 동시에 실행이 되면서 쓸데없이 동일한 코드영역이 중복적으로 메모리 공간안에 차지하게 되는 현상이 발생하였다. 여기서 착안하여 생겨난 것이 DLL이다. 이는 실제 프로그램의 수행부분을 한개로 두고서 여러개의 프로그램에서 그 부분을 공유하여 사용하는 것이다.
Library.DLL을 3개의 프로그램 A,B,C가 동시에 공유한다고 하면 각각의 프로그램이 실행될때마다 각 프로그램에서는 DLL파일의 함수로의 링크가 일어난다. 이런 과정은 윈도우 운영체제에 의해서 자동으로 이루어지고, 한개의 프로그램이라도 실행이 종료되지 않으면 윈도우는 DLL을 메모리에서 제거하지 않고 남겨준다.
프로그램이 먼저실행되데 DLL은 프로그램의 요청이 발생한 시점에서 메모리에 로드된다. 그때가 되서야 프로그램은 DLL로부터 함수의 어드레스를 얻고 그것을 사용해서 함수를 호출한다.
DLL은 함수에 대한 코드만을 저장는데 국한되는 것이 아니다. 비트맵, 폰트와 같은 리소스들을 DLL 안에 위치시킬 수도 있다. 예를 들자면 카드놀이에 사용되는 Cards.dll 에서 카드들에 대한 비트맵 이미지와 그 것들을 다루는데 필요한 함수들을 포함하고 있다.
DLL 에서 동적으로 메모리를 생성하는 경우, 해당 DLL 을 이용하는 프로세스의 힙에 해당 메모리 공간이 잡히게 된다. DLL 이 하나만 올라간다고 메모리가 공유되진 않는다.
만일 프로세스-global 한 메모리를 쓰고 싶다면, 메모리 맵을 이용하거나 DLL 공유 영역을 선언하는 방법 등을 써야 한다.
- NeoZeropageWeb . . . . 8 matches
전체적인 구상에서 의견을 얻고 싶네요.
제로페이지의 루트를 트랙백 센터로 만들고
ZP의 핵심이라고 할 수 있는 위키를 메인으로 옮기고 다른 것들은 죽인다는 설정.
뭐가 좋을까? ㅡㅡ? 쉽기는 3번이 가장 쉽고... 재미있기에는 2번이 가장 재미있고 독특한 형태가 되지 않을까 생각하는데...
흠 누가 블로그를 만든다고 했던거 같은데 --? [아잉블러그] 이건 어떻게 된건지... - [eternalbleu]
위에꺼 어떤 것을 하든 위키에 내장할 수있도록, 뭐 매크로로 지원할수 있게 하면 좋을듯,, 예를들어서 특정 문법을 쓰면 게시판이 하나 생기는거다. -_-;, 특정 문법을 쓰면 트랙이 지원되고,, 태터툴즈가 오픈소스면 그 부분만 가져다가 매크로로 제작하는것도 좋을듯... 매크로로 넣는것은 소스 이해 안해도 상관 없으니깐 ~ - [(namsang)]
- Omok . . . . 8 matches
* 화면을 움직일때 쓴 방법은 방향키 말고 그냥 영어 자판중 'I','J','L',','을 사용하여 움직이고 찍을때는 'k' 를 사용했습니다.
* 이러면 아스키 코드 사용하지 않고도 짤 수 있습니다. 전 아스키 코드 쓰는거랑 터보시에서 그래픽 하는거 싫어서 이렇게 해봤었습니다. 뭐 다른 방법으로 짜고 싶으면 짜시고요. - 상협
* 개인적으로 이걸 해봤는데.. 뭐 Visual 적인거 좋아하시면 이렇게 하시고.. 그냥 오목의 알고리즘만 생각하시면 굳이 그래픽을 사용안하셔도 좋을듯..^^
* 그리고 이거 할때 중복된 코드를 많이 만드는 경우도 있는데 가능하면 중복되는 소스를 줄이면서 짜보세요.
- ProgrammingPearls/Column6 . . . . 8 matches
* 알고리즘과 자료구조의 교체 : Sequential 한것을 Binary Tree로 교체함으로써 O(n*n)이 O(n*lg n)으로 줄었다.
* 알고리즘의 튜닝
* 알고리즘과 자료구조
* 적은 양의 스피드업을 원한다면 가장 고치기 쉬운 부분만을 고치자.
* 많은 양의 스피드업을 원한다면 다단계를 고치자. 한군데를 고침으로써 다른 부분도 고칠것이 생긴다.
- ServiceQualityOfYongsanMarket . . . . 8 matches
용산 전자상가에 갈일이 많을 텐데, 이곳에 개개인이 평가한 상점의 서비스 평가나 가격등에 대한 정보를 모아두면 좋을 것 같아서 이 페이지를 만들었습니다. 상점이름은 ID로만 표현해두고 이 ID에 대한 정보는 ZP의 게시판에만 게시를 해서 외부인은 열람할 수 없게 해 두는 것이 좋을것 같네요. -- 임인택
* 홈페이지에서 주문&입금 후 전화로 찾아갈 테니 물건을 준비해 줄 수 있냐고 묻는 도중에 내 말을 자르며, '찾아가심 됩니다' 라며 전화거는 사람을 무안하게 만들었다. 여기서 약간 기분이 상함...
* 1시간 정도 후에 매장을 찾아가 아까 전화했던 사람이라고 설명을 해주니 물건을 챙겨줌(용산의 특성상 손님을 반갑게 맞거나 하는것은 애초에 바라지도 않음). 봉지에라도 좀 담아주지...; 영수증좀 받을 수 있냐고 물으니 눈도 마주치지 않으며, '홈페이지에서 출력하시면 됩니다'. 보통 손님이 이런 요구를 하면 직접 출력해주는게 기본적인 서비스 아닌가?
* 주문한 셋트에 대한 궁합(?)을 보고 이에 대한 대안을 전화로 알려줌.
용산의 메인 고객은 소비자가 아니므로. 뭔가 핀트를 잘못맞춘건 아닐까; 그리고 용산의 영수증인 경우, 워낙에 이일저일(?) 하는 일들이 많아서 일부러 자유로이 빈 영수증 두었다가 필요할때 상호 도장찍는 경우 많음..--[1002]
보통 이런경우보다는 기분좋게 물건사는 경우가 더 많았는데, 이날은 정말 짜증이 밀려와, 개인적으로라도 이 가게는 안가려고 리스트업하는겁니다. 흐흐. - 임인택
- SimpleDelegation . . . . 8 matches
위임을 사용할때, 당신이 필요한 위임의 묘미(?)를 분명하게 해주는 도와주는 두가지 이슈가 있다. 하나는, 위임하는 객체의 주체성이 중요한가? 이다. 위임된 객체는 자신의 존재를 알리고 싶지 않으므로 위임한 객체로의 접근이 필요하다.(?) 다른 하나는, 위임하는 객체의 상태가 위임된 객체에게 중요한것인가? 그렇다면 위임된 객체는 일을 수행하기 위해 위임한 객체의 상태가 필요하다.(너무 이상하다.) 이 두가지에 no라고 대답할 수 있으면 Simple Delegation을 쓸 수 있다.
Collection처럼 작동하지만 더 많은 기능을 가지고 있는 객체를 만들고 싶다. 상속받지 말고, Collection을 지칭하도록 하자.(위임하도록 하자.)
위임하는 객체(delegating object)는 위임 객체 또는 위임자 객체, 위임된 객체(delegate)는 대리자로 번역할 수 있을 것 같고(차라리 영어를 그대로 쓰는게 좋을지도 모르겠네요), 주체성은 참조를 의미하지 않을까요?
이런 식으로 서버에게 참조를 전달하고 서버는 누가 보낸 메시지인지를 알기 때문에 처리 결과를 해당 클라이언트에게 보냅니다. 클라이언트는 서버가 보낸 처리 결과가 성공이면 UI를 업데이트하고 실패하면 메시지를 보여준다거나 하시는 식으로 처리할 수 있을꺼 같네요.--[Benghun]
- ThinkRon . . . . 8 matches
일전에 XP 메일링 리스트에 조언을 바라는 글을 하나 올렸습니다. 회사에서 XP를 진행하다가 부딪힌 문제에 대한 것이었죠. 그걸 올리고 답장이 한장도 도착하기 전에 갑자기 이런 생각이 들었습니다. "만약 RonJeffries라면 어떤 답장을 쓸까" 신기하게도 저는 그걸 너무도 분명히 잘 알고 있었습니다. 그래서 그 답을 마치 RonJeffries가 직접 만들어준 마냥 귀하게 생각하고 요리조리 궁리해보고 또 실험해봤습니다. 그랬더니 아주 훌륭한 결과를 얻었습니다. 며칠 뒤 진짜 RonJeffries가 제가 예측한 것과 거의 비슷한 답을 해주더군요.
저는 이미 RonJeffries를 어느 정도 내재화(internalize)하고 있는 것은 아닌가 생각이 듭니다. 사실 RonJeffries나 KentBeck의 언변은 "누구나 생각할 수 있는 것"들이 많습니다. 상식적이죠. 하지만 그 말이 그들의 입에서 나온다는 점이 차이를 만들어 냅니다. 혹은, 그들과 평범한 프로그래머의 차이는 알기만 하는 것과 아는 걸 실행에 옮기는 것의 차이가 아닐까 합니다. KentBeck이 "''I'm not a great programmer; I'm just a good programmer with great habits.''"이라고 말한 것처럼 말이죠 -- 사실 훌륭한 습관을 갖는다는 것처럼 어려운 게 없죠. 저는 의식적으로 ThinkRon을 하면서, 일단 제가 가진 지식을 실제로 "써먹을 수" 있게 되었고, 동시에 아주 새로운 시각을 얻게 되었습니다.
전문가 비전문가 PairProgramming을 하다가 문제에 직면했습니까? 스스로에게 물어보십시오. 만약 KentBeck이나 WardCunningham, RonJeffries 같은 사람이 이 자리에 나 대신 있었다면 이 문제에 어떻게 대응했을런지. 그리고 거기서 얻은 해답을 꼭 실행에 옮겨 보세요. 자신은 물론 상대방도 놀라게 될 것입니다. 해답은 늘 안에 있습니다.
- Yggdrasil/가속된씨플플/2장 . . . . 8 matches
* 루프불변식(loop invariant): while문이 그 조건식을 검사하는 매 경우에 대하여 참일 것이라고 가정하는 속성. 처음에 이걸 보고, 이런 개념도 있었냐고 생각했음. 루프불변식은 코드는 아니고 주석에 해당하며, while문이 진행되면서 while문의 제일 처음과 끝에서 루프의 내용이 의도한 대로 돌아간 건지를 정의한 문장이다.(말로 설명하기 애매한 듯...) 하여튼 이것을 쓰는 이유는 루프문을 제대로 설계하기 위해서. 아래의 코드는, 책에 있는 코드로, 불변식의 예이다.
//여기에서 불변식이 참이라고 가정할 수 있다
//여기서 불변식이 참이라고 확신할 수 있다
* 단락평가(short-circuit): 그러니까 if(a==0||b==0){...}에서 왼쪽의 a==0이면 b==0인지는 보지도 않고 괄호 안을 실행한다는 뜻. 자바에선 ||기호와 |기호를 구분하던 것 같았다. 아마 전자는 전부 평가, 후자는 단락평가였던 것 같다.
* 반개범위: 루프의 범위를 설정할때, for(i=0;i<3;i++)처럼, 시작인 0은 포함하나 3은 포함하지 않고 2에서 끝난다. 이것을 [0,3)으로 표현하는데, 3은 루프 범위에 표현되지 않는 "끝을 벗어난 값"이다.
- Yggdrasil/가속된씨플플/4장 . . . . 8 matches
* 장의 제목 그대로의 내용이다. 프로그램의 구조화(함수)와 데이터의 구조화(구조체) 등등을 설명하고 있다.
* 1학년 1학기 텀프로젝트를 할때, 성적정렬 프로그램에서 정렬로 순서가 전부 바뀌어버려서, 루프문의 끝에서 전부 다 초기화했던 기억이 난다. 이때 전달인자에 전달 방식을 제대로 이해하고 활용했다면 편했을 것을.
* 구조체 만드는 법은 다 알고 있으니 넘어가고, sort()에 전달인자로 구조체를 넘겨주게 되면, 어떤 기준으로 정렬할 것인지 알 수가 없다. 그래서 3번째 전달인자를 사용할 수 있다. 즉,
* 이렇게 사용하고, compare의 정의부는,
* 4.3장부터는 여러 헤더파일과 소스파일로 분리해놓고 있다.
* throw로 예외 상황이 발생되었다는 것을 알린다. 예외 클래스엔 여러개가 있으며, 생성자로 문자열을 집어 넣을 수 있고, 이건 일반적으로 출력이 안되지만, what()함수로 확인 가능.
* max()라는 함수가 의심스럽다. 분명 msdn에도 algorithm헤더에 있다고 했는데 컴파일하면 자꾸 정의되지 않은 이름이라 에러를 뱉어낸다. 이 함수의 정체는?
- ZP의 나아갈 길 . . . . 8 matches
제로페이지의 정체성과 미래에 대해서는 수도 없이 논의되었었다. 내가 1학년 때에도 그랬고 내가 회장이 되어 데블스와 통합했을때도 그랬었다. 내가 3학년이 되어 휴학을 했을 때도 그랬고 이젠 내가 제대 후 복학했는데도 같은 논의는 계속 되고 있다. 이는 발전하는 모습일까 아니면 계속해서 맴도는 정체된 모습일까. 나는 온라인 상의 회의를 결코 가볍게 여기지는 않는다. 하지만 좀 더 활동적으로 실행에 옮기기 위해서는 오프라인 모임이 절대적이라고 생각한다. 제로페이지가 정말로 모습을 바꾸고 싶다면 어느정도 알을 깨고 나와야하는 고통이 따를 것이라고 생각한다. - 이창섭
- ZeroWiki/Mobile . . . . 8 matches
* => DB 스키마 구조를 이해하고 있어야 함. 필요시 위키 페이지 소스에 대한 분석도 필요
개인적으로는 JSP로 해보고 싶다는 생각을 가지고 있지만 따로 공부를 해야 해서...
모바일 환경에서 열람만 가능할 것인가? 편집도 가능하게 할 것인가? 편집을 할 경우 편집 도구라던가 [AJAX]라던가 어떻게 해야 하나 고민이 있음
[정모/2011.3.21]에서 일단 말해보고, 반응 살펴보고, 반응 그닥이면 개인프로젝트로 진행 - [강성현]
* 올해 졸업하신 14기 [이승한] 선배님께서 모니위키 모바일 프로젝트를 진행하고 계십니다.
만약 그래도 별개의 프로젝트로 진행하고 싶다면 [http://jquerymobile.com/ jQuery Mobile]을 사용하시는 것을 추천합니다. - [변형진]
- [Lovely]boy^_^/Diary/7/15_21 . . . . 8 matches
* 스터디 고고(며칠이나 갈까..--; 최대한 열심히 해야겠다.)
* 아무리 생각해도 방학떄 너무 마니 찔러논거 같다. 이거 조금 하다 말고.. 저거 조금 하다 말고..--; 아아--;
* 오늘은 하루종일 독서만 하고 있다.--;
* 책 읽고 있다. 오늘 4장까지 봤다. 후반부는 코드는 안보고 대충대충 넘어갔따
* 태양계 모델링(이걸 어떻게 이쁜 코드로 바꿀지 고민중)
- 대학원준비에대한조언 . . . . 8 matches
여러명이 모여서 스터디를 한 지도 삼 주가 다 되어간다. 같이 준비하면서 때로는 너무 사소한 것에 매달리는 것이 아닌가 싶을 정도로 한 부분에서 넘어가지 못하는 경우가 있다. 한참을 이야기해서 결론을 내보니 이미 말하던 도중에 나왔던 이야기였거나 책을 보면 알 수 있는 내용인 경우도 있다. 하지만 그렇게 해서도 결론이 나지 않는 문제들이 있었고 [대학원준비06] 팀은 교수님께 찾아가서 질문을 했다.
질문에 대한 답도 얻었지만 [대학원준비에대한조언]을 얻은 것이 더 큰 성과였다고 생각한다. [열린질문]을 던지면서 스스로 고민하는 시간이 중요하다는 이야기를 많이 하셨다. [대학원준비06] 팀이 과목 요약을 하고 난 다음에는 고민하는 시간을 가졌으면 좋겠다.
그 밖에 연구실을 방문하라는 조언을 들었다. 포항공대에 [OpenLab]에 다녀온 경험을 생각해보면 매우 와닿는다. 심지어 아무것도 모르고 연구실을 찾아가고, 10분 남짓한 시간을 둘러보고 오더라도 연구실 사람들 직접 만날 수 있다는 사실 만으로도 얻을 것이 있다. 몇 년의 시간을 보낼 장소를 선택하는데 하루의 노력이 아까울까!
- 덜덜덜 . . . . 8 matches
제출은 널널하게 시험끝나고 모임할때 까지로 하지요 ^^;
for문 하나로도 짤수있다고 하니까요 다양한 답이 나오길 기대해볼게요 ^^
== 교재및 참고자료 ==
'''[http://winapi.co.kr/clec/cpp1/cpp1.htm winapi.co.kr의 C기초강좌] 매우 자세하며 양이 많다. 이것이 교재 적당히씩 읽고 와주세요'''
- 출석부는 선생님전용입니다 ㅋㅋ 엠에스엔 주소빼고는 건들지 마욧!!! 교수님 출석부한번 건드려봐요 어떻게대나 ㅋ
== 하고싶은 말 ==
위키는 누구나 수정 가능합니다. 틀린 정보는 고치면 되겠죠~ :) - [톱아보다]
ㅋㅋ삼각김밥 -> 덜덜덜... 우리 조 최고~~ ^ㅇ^ - [정윤선]
- 데블스캠프2009/금요일/SPECIALSeminar . . . . 8 matches
* 정해진 예산 안에서 효율적인(시간은 짧고 품질은 높은) 개발 능력 - 지원
* 그 분의 비결은? - 프로젝트가 끝나고 쉬는 기간 동안 단체로 진행했던 프로젝트를 홀로 재개발
1. 결론 : 과제를 할 때 한번으로 끝내지 말고 실험 해보고 학습 목표를 갖는 자세를..
* 내가 평생 하고 싶은 것을 찾는 것이 중요하다. - ex) 음악-연습시간 대 실력 비율 그래프
* 지금 이순간 내가 필요한 정보를 다 취하고 있는가?
* 어떻게 print를 해야 고친 것이 검증이 되는지 생각해라.
* 생각을 많이 하면 머리는 아프지만 학습도 잘되고, 시간도 단축할 수 있다.
- 데블스캠프2009/금요일/SPECIALSeminar/송지훈/김홍기/박성현 . . . . 8 matches
3. C++ 를 보고있는데 지금까지 했던 부분들을 피드백해보고 반복해보기. 다음주까지.
2. 피드백도 좋았고, 10만개 예제에서 질문에 관한 부분, 과제마인드에 대한 부분. 왜 그런지 생각을 해보고 관점을 다르게 볼 필요가 있다는 점에서 느끼는 점이 많았다.
3. 7월 한달간 한가한데 그동안 지금까지 보려고 했다고 못했던 것들을 한달동안 해볼 생각.
1. 내가 알고 있던 것과 새로 알게된 것이 많아서 좋았다.
1. 혼자하지 말고 같이할 사람을 구할 것.
- 데블스캠프2012 . . . . 8 matches
|| 4 |||| UI프로그래밍 |||| [http://prezi.com/uit4ykp5bx8g/javascript/ JavaScript 편견깨기] |||| [http://zeropage.org/seminar/62046 테스트를 위한 CTIP] |||| |||| [:데블스캠프2012/넷째날/묻지마Csharp 묻지마 C#] |||| [http://zeropage.org/seminar/62095 비트맵 가지고 놀기] || 11 ||
|| 5 |||| UI프로그래밍 |||| JavaScript 편견깨기 |||| 테스트를 위한 CTIP |||| |||| [:데블스캠프2012/넷째날/묻지마Csharp 묻지마 C#] |||| 비트맵 가지고 놀기 || 12 ||
|| 9 |||| 페챠쿠챠 |||| [http://www.hanb.co.kr/network/view.html?bi_id=1760 유지보수하기 어려운 코드 작성법] |||| 앵그리버드 만들기 |||| |||| 새내기를 위한 파일입출력 |||| 회고 || 4 ||
|| 백트래킹을 이용한 알고리즘 문제 해결 || [정진경](21기) ||
|| 비트맵가지고 놀기 || [김희성](22기) ||
|| 회고 및 정모 || [김태진](21기) ||
* '''후기 쓸 때 반드시 참고하세요 : [ThreeFs]'''
= 회고 =
- 새싹교실/2011/學高/4회차 . . . . 8 matches
define PI 3.141592<< 코딩할때 PI라고 쓰면 숫자로 인식함. define은 중간에 수정 불가.
=== 자기 반성 및 고칠 점(feeling/finds) ===
printf는 출력하는 거고 반대로 scanf는 입력값을 주는것? 이다..?
=== 자기 반성 및 고칠 점(feeling/finds) ===
그리고 printf 와 scanf 를 배웠고
%d 와 %f 도 배웠는데 d는 정수고 f는 소수점표현할때 쓰는걸 알았습니다 -
=== 자기 반성 및 고칠 점(feeling/finds) ===
- 새싹교실/2012/앞부분만본반 . . . . 8 matches
그에 따른 Linear System이 가지고 있는 해 종류
E.R.O를 하면서 발생할 수 있는 실수 몇 가지를 소개하고 , 그에 대한 주의를 당부함.그리고 이것을 예제에 적용해 보았음.
문제 2. 본인의 이름, 주소, 그리고 전화번호를 모니터에 출력하는 프로그램을 작성해보자.(\n을 사용)
제 나이는 25살 이고요.
이라고 적혀있는데
라고 되어있네요.
제가 말하고 싶은 주의는
- 새싹교실/2013/양반/2회차 . . . . 8 matches
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 새싹들 보고 후기 적으라고 해놓고서 본인은 안 적었네요. 새싹 진행하는데 있어서 시간이 부족한 것 같아서 시간 확보를 어떻게 해야할지를 고민해봐야겠습니다. 과제는 내려고 했는데 딱히 뭘 내야할지도 생각이 안나고 그래서 제어문을 배우면 내줘야 할 듯 싶습니다.
- 송치완 . . . . 8 matches
* 그리고 복학생이 되었다.
== 앞으로 하고 싶은 것 ==
* 2014년에 하고싶은것
* 내가 진짜로 하고 싶은게 뭔지를 찾고싶다.
* 군대에서 나태함과 안일함이 몸에 밴거같다. 고치자
* 이번학기도 장학금 받고 싶다.
* 님 물리하고 C++ 공부좀 - [이민규]
- 알고리즘8주숙제 . . . . 8 matches
다음과 같이 input 이 들어온다고 가정합시다. 여기서 맨 앞 하나의 정수는 노드의 수를 나타냅니다. 그 밑으로 노드에 대한 정보가 입력됩니다. 노드의 처음은 key 값이고, 그 다음 값은 확률(확률은 1이상의 정수로 임의로 입력) 입니다. 하나의 노드를 검색했을때 실패하는 경우는 없다고 가정합시다. 최적의 평균탐색시간을 가지는 이진탐색트리를 구현하고 다음을 출력하시오.
Inorder 순회를 통해 각 키값을 모두 출력하고, 또한 각 키값의 탐색시간의 합계를 출력하시오.
!! 주의 : 최적을 구하는 것이 아니고, 빠른 시간안에 최적에 가까운 값을 구하는 것이 목적임.
|| [알고리즘8주숙제/test] ||
|| 문보창 || 상섭이형보다많이 || [알고리즘8주숙제/문보창] ||
- 우리들의행복한시간 . . . . 8 matches
한데, 사람이 사람을 용서할 수 있는가? 용서라니 너무 거창하고 오만하다. 진심으로 다른 사람과 화해할 수 있을까?
책을 읽고 나서 며칠이 지나, 좋고 나쁨을 구분하는 한 가지 기준은 삶과 죽음이라고 생각했다. 좋으면 삶을 향하고, 나쁘면 죽음을 향한다. 내가 우울하고 슬프면 죽음에 가까워 진 것이고, 내가 즐겁고 행복하면 삶에 가까워 진 것이다. 언젠가 죽지만, 그때까지는 좋은 삶을 마음껏 누리자.
- 정모/2011.11.23 . . . . 8 matches
* 참가자 : [김수경], [서지혜], [고한종], [추성준], [송치완], [김태진]
* 컹 기획단 수고했다고 주신건데 ZeroPager 전원이 가는건가요?
* 수경이누나가 기획단만 가기에는 너무 큰 돈이라고 하시고, 각자 돈을 조금씩 내더라도 다 같이 가는게 더 의미 있을거라 하시더라구요. - [김태진]
* [고한종]학우의 '웹 커뮤니티가 오래 지속되려면'
* OMS 인상깊었습니다. 뭔가 뻘한듯하면서도 재미도 있고 ㅋㅋ 커뮤니티의 다양한 양상에 대해 생각해 볼 수 있는 시간이었습니다. - [김수경]
* OMS 급하게 만들어간건데 재밌게 들어주셔서 감사합니다. - [고한종]
- 정모/2012.1.6 . . . . 8 matches
* 참가자 : [변형진], [김수경], [서지혜], [강성현], [고한종], [김태진], [김홍기], [이민규]
* OOP & DP - 김수경, 고한종, 김태진, 이민규
== 2011년 회고 ==
* 코드 몇줄 가지고 방명록이 만들어지고 그게 DB랑 연동 되는걸 보니 참 신기 했습니다. 그리고 김태진 학우 혼자 회장 후보여서 저도 얼결에 추천받았는데.. 공약을 써야 한다니 ! -[고한종]
* 차기 회장 추천/신청이 정모 이전까지는 저한테 밖에 없었다는게 (추천 2명 + 자진 1명)좀 충격(?)이었습니다. 형진이형이 해준 Play framework는 음.. 뭔가 쉬운거같기도하고 어려운거같기도했네요. 하지만 빠르게 제가 만들었던걸 바로 만들 수 있었다니 그 이유가 형이 아는걸 말해줬기 때문에 모르는걸 제가 삽질한거랑 시간차가 많이 나서인지, 프레임워크때문인지는 생각을 한번해봐야겠네요.(는 코드 길이 차이가 많이나는군.) - [김태진]
- 지금그때2003/토론20030310 . . . . 8 matches
[지금그때] 준비를 위한 토론 첫번째 모임. 마저 내용을 생각해보고 옵시다.~
* 적당한 장소를 확보하고, 그에 대한 디자인을 생각하자.
== 고려사항들 ==
* 어떻게 하면, 이러한 행사(또는 다른 생산적인 행사들)를 '관습'으로 남길 수 있을 것인가. '관습'으로 유지시켜주기 위해, 더 나아가 이러한 관습을 발전시켜주고 키워주기 위해선 어떠한 시스템이 필요할까.
* 내가 만약 신입생 때 xxx 를 깨달았다면. 신입생의 궁금증을 풀어주고 친밀감과 밀도를 유지하면서 여러사람을 포용하는 방식
* 사람들 간 지식을 서로 전수해주는 문화. 보다 생산적이고 발전적인 토론.(피시실이건 어디건)
* 학기 초 들떠있을때보단, 사람들이 어느정도 차분해지고, 자신의 미래를 관찰할 수 있을때 행사를 가지는 것이 좋지 않을까?
결정 고려 요소 :
- 지금그때2004/여섯색깔모자20040331 . . . . 8 matches
글로는 그때의 느낌을 남기기 어렵지만, 일단 기억을 회상할 수 있는 연결고리를 만든다는 의미에서 적어놓습니다. --[1002]
- 검정 : 시의성으로 볼때 중요한가. 사회자의 경우 그렇지 않아고 본다
하양 : 동문서버 게시판 홍보. 이것 또한 5명과 연관이 있다고 본다.
파랑 : 사람 수는 변하기 쉽다. 숫자 자체가 중요한건 아니라고 본다. 이를 좀 더 편하게 표현하려면.. 퍼센트로 표현해보자.
파랑 : 새내기를 50%로 보고 앞에서의 새내기를 20-30으로 봤을때, 비율로 보면 다음과 같겠다.
- 검정 & 하양 : 나의 경우 신청하고 가지 않은 경우에 해당된다.
노랑 : 현 재학생중에는 경험있는 사람이 없다. '재동'은 세미나 경험도 많고, 시간관리 등 문제에 대해서 잘 해결해나갈 것이다.
그리고, 무엇이건 다 시도해보라. 전부다 플러스 요소로 작용한다.
- 캠이랑놀자 . . . . 8 matches
- 캠을 가지고 놀기!
* 가급적이면 라이브러리나 특정 프레임워크 관련하여 어려운 부분은 [1002] support 하에 진행 (뼈대가 되는 코드를 미리 제공해주고, 알고리즘과 관련된 부분에 대해서 사람들이 구현하는 식으로)
* 참여자들이 라이브러리 고생을 덜하고 해당 아이디어를 구현해보고 사고하는데 더 촛점을 잡을 수 있도록 하기.
* 최근에 나오는 다양하고 재미있는 기술들에 대한 관찰 & 실제 구현
- 타도코코아CppStudy/0724 . . . . 8 matches
|| 파스칼의 삼각형 || [수진] || Upload:pascal_sujin.cpp || 헉.. 줄까지 맞추다니 멋져요.^^ 함수 분리도 꽤 잘한거 같고.. 무엇보다 다른 개념(조합)을 사용했네요. 여태까지 한 사람들은 거의 다 위에꺼 더해서 했거든요. 하지만 로직과 보여주는게 분리가 안되어 있네요. 이따 저와 함께 고쳐 봅시다. ||
|| 랜덤워크 || [정우] || Upload:random_winy.cpp || 저랑 같이 고쳐봅시다. 고칠게 많네요. 결과는 제대로 되었지만... 이런 식으로 짠 코드는 나중에 수정하기가 골치아프답니다. ||
|| 마방진(홀수) ||[정우] ||Upload:mabang_winy.cpp || 잘했어요. 고칠 거리가 좀 있긴 하지만.. 스스로 고쳐 보세요. 랜덤워크를 저와 함꼐 고쳐보면서 배운걸 마방진 고치는데 적용해 보세요. ||
- 2010Python . . . . 7 matches
* 각자 원하는 매체로 공부해 온 뒤 5분 정도씩 자기가 공부한 내용을 발표하고 서로 토론.
* Python에서는 a = 3이라고 했을 때 a라는 객체에 3이라는 값을 담는다기보다 3이라는 객체를 a라는 이름이 가리킨다고 보는 것이 더 적당하다.
* [윤종하] - 지난 시간에 했던 Pascal's Triangle의 알고리즘을 수정하여 C++, python의 속도비교. 인터프리터 언어가 확실히 느림. 아마도 작동 원리의 차이인 듯
* [박정근] - python의 특이한 배열? keyindex를 지정가능하고 순서대로 출력도 가능함. 그리고 python은 지정하는것이 특기인 듯
참고자료
- 3DGraphicsFoundation . . . . 7 matches
* [[HTML(<strike>'01 이창섭 ["창섭"]</strike>)]] 사정상 계속 못하게되었습니다. 여지껏 도와주신 해성이형과 같이 공부한 동기들께 고맙다는 말을 남기고 싶습니다.ㅡ.ㅜ
= 참고 =
= 하고 싶은 말 =
DeleteMe)흠.. 나두 같이 하고 픈데.. 시간이 안맞네(알바때문에..) 쩝.. 3D 쬐끔하다 말고 하다말고해서 아는게 없다는.. ^^;;
- 3D업종 . . . . 7 matches
공부해와서 추첨해서 세미나 하는 식. 그리고 매주 숙제를 재혁이가 내 준다.
|| 2006.5.18 || 토론 및 Study || 3단원까지 읽고 코딩해 보기. ||
* 5.18~7~13일까지에 공백은 기말고사로 인해서 잠시 스터디를 멈춘 상태이고 7월13일 부터 다시 시작.
= 참고 =
여기서 glut 라이브러리를 받고,
vc6이나 2003을 쓸 경우, 비슷한 경로에 glut를 복사하고, 프로젝트를 만들때 win32 console로 해서 링커 옵션에 opengl32.lib glu32.lib glut32.lib 파일을 추가합니다.'''
- ArtificialIntelligenceClass . . . . 7 matches
지금 인공지능 수업이 피곤하고 졸린 이유는 뭘까. 교수님은 학생들의 feedback 을 끌어내려고 하지만, 끌어내기 위한 방법 자체를 잘 모르신다는 느낌을 강하게 받았다. 수업 내용의 경우도 책의 수준을 벗어나지 못한다. (시간상 조명상 더 졸립기까지 하다. 또는 교수님이 책의 내용을 정확하게 이해하시지 못한다는 느낌을 많이 받게 되었다.) 차라리 좀 더 구체적인 예제를 만들고, 이에 대한 해결법의 진행 과정에 대해 설명해주신다면 어떨까.
요새 궁리하는건, othello team 들끼리 OpenSpaceTechnology 로 토론을 하는 시간을 가지는 건 어떨까 하는 생각을 해본다. 다양한 주제들이 나올 수 있을것 같은데.. 작게는 책에서의 knowledge representation 부분을 어떻게 실제 코드로 구현할 것인가부터 시작해서, minimax 나 alpha-beta Cutoff 의 실제 구현 모습, 알고리즘을 좀 더 빠르고 쉬우면서 정확하게 구현하는 방법 (나라면 당연히 스크립트 언어로 먼저 Prototyping 해보기) 등. 이에 대해서 교수님까지 참여하셔서 실제 우리가 당면한 컨텍스트에서부터 시작해서 끌어올려주시면 어떨까 하는 상상을 해보곤 한다.
실제로 AI 프로그래밍을 해보면서 이경우에는 지금 나와있는 어떤 방법과 어떤 방법을 어떠한 식으로 적용해 보는게 좋고, 아니면 더 나은 대안을 찾아보고 이런식이 재밌을거 같다.
- Athena . . . . 7 matches
* 그리스 로마 신화에 나오는 지혜의 여신 "아테나" 입니다. 지혜롭게 프로그래밍을 하고자 만든 이름입니다...^^
DeleteMe 이름은 좋습니다. 하지만 ["Athena"] 라는 이름의 페이지에는 여신 아테나에 대한 정의와 소개가 들어 있는 것이 올바른 것이겠지요. 그래서 ["ProjectPrometheus"], ["ProjectZephyrus"] 라고 한거랍니다. ;; --["neocoin"]
* 입력 다이얼로그2 만들고 연결하기 (20분) -재동
* 입력 다이얼로그2 버그 고치기 (1시간) - 재동
* 입력 다이얼로그2 버그 고치기 (20분) - 재동
* Edge 디텍션 메뉴빼고 나머지 다했음(1시간30분) - 명훈
* 1. BMP 파일 읽고 저장
- CVS . . . . 7 matches
Concurrent Versions System. 공동 프로젝트를 위한 소스 버전 관리 툴. 오픈소스계열에서 Source Repository 의 용도로서 많이 이용된다. 활발하게 이용되고 있는 곳에 대해서는 http://sourceforge.net 에서 많이 볼수 있다.
* 현재 ZeroPage 에서는 CVS 서비스를 하고 있다. http://zeropage.org/viewcvs/cgi/viewcvs.cgi 또는 ZeroPage 홈페이지의 왼쪽 메뉴 참조. 웹 클라이언트로서 viewcvs 를 이용중이다. 일반 CVS Client 로서는 Windows 플랫폼에서는 [TortoiseCVS](소위 '터틀'로 불린다.) 를 강력추천! 탐색기의 오른쪽 버튼과 연동되어 아주 편리하다.
* ZeroPage의 CVS 계정을 원하는 회원은 서버관리자(["neocoin"])에게 연락 바람 자세한 내용은 홈페이지 왼쪽 메뉴 참고
* 참고: from- http://www.loria.fr/~molli/fom-serve/cache/352.html
돈이 남아 도는 프로젝트 경우 {{{~cpp ClearCase}}}를 추천하고, 오픈 소스는 돈안드는 CVS,SubVersion 을 추천하고, 게임업체들은 적절한 가격과 성능인 AlianBrain을 추천한다. Visual SourceSafe는 쓰지 말라, MS와 함께 개발한 적이 있는데 MS내에서도 자체 버전관리 툴을 이용한다.
== 관련고리 ==
- DebuggingSeminar_2005/DebugCRT . . . . 7 matches
자기가 짠 프로그램으로 돌려보고 누수 여부를 판단하기에 좋을 것이다.
//DCRT의 오버헤드가 상당하기 때문에 기본옵션이 꺼져있다고 한다. 따라서 다음과 같이 옵션을 활성화 하는 작업이 필요
CRT의 기본 함수들의 출력은 디버그 메시지 윈도우이다. 이를 변경하기위해서는 _CrtSetReportMode()라는 함수를 이용해서 출력에대한 일반 목적지를 지정하고, _CrtSetReportFile()를 이용해서 특별한 스트림 목적지를 설정해야한다.
|| _CRT_WARN || 경고 메시지 예)memory leak ||
''crtdbg.h는 ASSERT, ASSERTE라는 메크로 함수를 생성한다. 둘의 차이점은 ASSERTE는 assertion 표현을 보고하고, 다른 것은 하지 않는 다는 것이다.''
DCRT를 켜고 끄는 것에 따라서 프로그램의 수행속도의 차이가 상당하다. STL때문인지도 모르겠지만. - [eternalbleu]
- DocumentObjectModel . . . . 7 matches
대부분의 XML파서들 그리고 XSL 처리기들은 트리구조를 사용할 수 있도록 개발되었다. 그러한 구현물들은 메모리 안에서 문서의 전체 내용이 파싱되고 저장되는 것이 필요했다. 따라서 DOM은 임의로 접근하고 다루어 질 수 있는 document 요소를 가지는 응용프로그래에서 사용하기좋다. XML기반의 응용프로그램들이 한번 파싱을 할때 읽거나, 쓸수 밖에 없기 때문에 DOM은 메모리 상에서 상당한 오버헤드적 요소를 가지고 있다. SAX 모델은 속도, 메모리의 비효율성 면에 있어서 이점을 가진 모델이다.
= 바깥고리 =
요즘 XML에 대해서 보고 있는데... 하도 DOM, DOM하길래.. ㅡ.ㅡ 먼가했더니 생각보다 엄청난 개념은 아니네요. - [eternalbleu]
XML 에 대해서 파싱하는 API 방식 이야기. DOM 모델이냐 SAX 모델이냐 하는것. 인터페이스 상으로는 DOM 이 쉽긴 함. SAX 는 좀 더 low-level 하다고 할까. (SAX 파서를 이용해서 DOM 모델을 만들어내는 경우가 많음) SAX 는 Tokenizer 가 해당 XML 문서를 분석하는 중의 이벤트에 대한 이벤트 핸들링 코드를 작성하는 것이므로. 그대신 모든 도큐먼트 노드 데이터가 필요한건 아니니, SAX API 로 XML을 파싱하면서 직접 개발자가 쓸 DOM 객체를 구성하거나, 아니면 XPath 를 이용하는게 좋겠지.
- FoundationOfUNIX . . . . 7 matches
* 몇시간 정도 밖에 못할것을 감안하여, 그렇게 많은 내용을 전달할것 같지는 않고, 실습 위주로 간다히 UNIX 사용법에 대한 맛만 보여줄 것을 목표로 잡았습니다.
* ls -al : 자세하고 감추어진거까지
* :q! - 저장하는지 묻지 않고 무시하고 끝내기(강제종료)
* :wq - 저장하고 끝내기
* 쉘 스크립트 짜기 [http://kldp.org/KoreanDoc/Shell_Programming-KLDP kldp 쉘 프로그래밍 참고 강좌]
* 마지막 과제로 쉘 스크립트 언어로 쓰레기통 만들기 (고려중.. 안할지도 모름.)
- InWonderland . . . . 7 matches
|| Work || 비고 || 체크 ||
클라이언트에서 포인트 적립이나 사용이후에 남은 결과 포인트도 보여줘야 하지 않어? 그리고 로그 아웃도 필요하잖어.--철민
그건 적립이나 사용후에 "포인트 조회" 서비스를 통해서 보여주면 되겠지. 그리고 로그아웃도 서비스로 넣을 필요는 없어. --재동
고객 등록에 "주소, 전화 번호" 입력창 추가
철민아 작업은 {{{~cpp EC_AliceCardHome001.zip}}} 이걸로 하고 월요일 저녁 5시까지 해줘. 난 함수 내부 채우고 프리젠테이션 만들고 있으마. --재동
- JUnit . . . . 7 matches
참고로 저는 다음과 같이 배치화일을 만들어서 사용합니다. (주로 ViImproved 에서 Java 코딩을 하는 관계로)
그리고 배치화일 디렉토리에 path 를 걸어놓고 쓰고 있죠. 요새는 JUnit 이 포함되어있는 IDE (["Eclipse"], ["IntelliJ"] 등등)도 많아서 이럴 필요도 없겠지만요. ^^ --석천
console mode 로 표현하고 싶다면 textui runner 를 이용하시기를.. --["1002"]
textmode 로 쓰는데...흠..;; 의도가 정확히 전달이 되지 않는것 같네요..T_T. 제가 여쭤보려고했던건 보통 textui 로 실행하면
}}} 이렇게 나오지 않습니까... 이게 아니고.. 저~ 위에 있는것처럼.. (생각해보면, 별로 중요한거도 아닌데 매달리네요..-_-) - 임인택
- MFCStudy_2002_1 . . . . 7 matches
|| 날짜 || 일정 || 비고 ||
그리고 중간 중간에..함수를 만들어서 사용하고 싶은데...전달인자로 뭘 받아야하는지도 잘모르겠고..^^a[[BR]]
정훈: 2002.8.16 아아악!!! 졸려워 죽음을 무릅쓰고!! 오늘 스터디 모임이라구!! 아침 10시에 나왔는데..아무도 없다..[[BR]]
재민이는 전화도 안받고..ㅜㅜ 아아악!!!!!!!
''미안허이... 병원에 갔다간다고 미리 전화를 했어야하는데.. 병원에서 나오면서 전화를 했구먼..-.-''--창섭
- OperatingSystemClass/Exam2006_2 . . . . 7 matches
1, 2번 끔찍하게 어려웠다. 중간고사 스타일로 공부했던 모두를 낚았던-_-;
그 외에.. raid문제. 01학번 김모군이 "이거 내면 짐승이다"라고 했는 정말로 나왔음-_-; 그 말에 덧붙여 01학번 강모군이 "모니터 내면 짐승이다"라고 했는데 역시 나왔음. 말이 씨가 된다더니 옛말 틀린거 하나도 없다.
고민하는 M모군에게 P모군이 슬쩍 그래도 보는게 좋겠지 했는데 나와버렸음. ㅋㅋㅋ (M모군 열심히 외우고 갔다고 함. ㅋㅋㅋ)
7. Threshing 이 일어나는 원인과 시스템이 Threshing을 어떻게 발견하고 처리하는지 쓰시오.
- ProjectPrometheus/MappingObjectToRDB . . . . 7 matches
고려해야 할 것 : 현재 만들어진 Logic Object 들 : Database 의 연동.
ProjectPrometheus 는 RDB-Object 연동을 할때 일종의 DataMapper 를 구현, 적용했었다. 지금 생각해보면 오히려 일을 복잡하게 한게 아닌가 하는 생각을 하게 된다. Object Persistence 에 대해서 더 간단한 방법을 추구하려고 노력했다면 어떻게 접근했을까. --["1002"]
* 고민할 필요 없다; 상당히 귀찮아 보이지만, 실제 전체 작업에서 차지 하는 양은 얼마 되지 않는다. 괜히 라이브러리 만들려고 하면 더 복잡해질것이다. O/R 맵핑 라이브러리로 포커스를 맞추게 되지 않도록 조심.
* 패턴의 오/남용 문제가 발생할 수 있다. - 어설프게 아는것은 모르느니만 못한 경우가 있다. 그리고 제대로 안다고 해서 "많이" 하는 것은 정말 잘 아는게 아닐 수 있다.
1. 13개월 프로젝트인데 2만라인짜리라는점 - 뭐.. 꼭 소스 라인수로 세는건 무리가 있긴 하지만. Servlet 프로젝트 2만라인. 내가 전에 팀 프로젝트로 MFC 엑셀 만들때가 1만 7천라인이였는데. -_-a 물론, Refactoring 이 잘 되어있고, XP 가 잘 적용된 프로젝트이라면 적은라인수로 많은 일을 하겠지만.
- ReverseAndAdd . . . . 7 matches
일단 어떤 수를 받아서 그 수를 뒤집은 다음 뒤집어진 수를 원래의 수에 더하는 과정을 뒤집어서 더하기라고 부르자. 그 합이 회문(palindrome, 앞뒤 어느 쪽에서 읽어도 같은 말이 되는 어구. 예:eye, madam, 소주만병만주소)이 아니면 회문이 될 때까지 이 과정을 반복한다.
어떤 수가 주어졌을 때 회문이 있으면 출력하고, 그 회문을 찾기까지 뒤집어서 더하기를 반복한 횟수를 출력하는 프로그램을 만들어야 한다.
테스트 데이터로 쓴이는 수는 모두 뒤집어서 더하기를 1,000번 미만 반복해서 회문을 찾을 수 있는 수고, 그렇게 만들어진 회문을 4,294,967,295보다 크지 않다고 가정해도 된다.
첫번째 줄에는 테스트 케이스를 나타내는 정수 N(0<N<=100)이 들어있고, 그 아래로 N개의 줄에 걸쳐서 회문을 구해야 하는 정수가 한 줄에 하나씩 들어있다.
N개의 각 정수에 대해 회문을 발견하는 데 필요한 최소한의 반복 횟수를 출력하고, 스페이스를 한 칸 출력한 다음, 그 회문을 출력한다.
* 개인적인 사정도 있었고, 스러피에서 슬럼프에 빠졌었습니다. 다시 열심히 할께요~ - [이승한]
- STL . . . . 7 matches
* [http://oopsla.snu.ac.kr/~sjjung/stl/booktoc1.htm stl 첫배우기] - 바깥고리
* ["STL/참고사이트"]
==== 바깥고리 ====
DeleteMe) 인수가 가진 모든 STL 페이지 ["Refactoring"] (예제가 그 자체로만으로 돌아가나 컴파일. 이모티콘과 잡담 모두 빼서, Document Mode로 만들기, 쉬운말, 쉬운 예제로 고치기) 결과 ["인수"]의 모든 STL 페이지 사라짐(피바람);;
[STL]과 같은 라이브러리를 직접 만들어보는것도 (프로젝트 형식으로 해서) 좋을 것 같네요. [GenericProgramming] 의 철학을 이해하는 데에 도움이 될 것 같고 그 안에 녹아있는 자료구조와 알고리즘을 체득할 수 있을 것 같습니다. - [임인택]
"[STL] 컨테이너는 포인터를 염두에 둬두고 설계된 것이 아니라, 객체를 담을 목적으로 설계된 자료 구조이다." 이 말을 너무 늦게 봤네요ㅠ_ㅠ 기본 데이터 타입 이외에 사용자 정의 데이터 타입(분류_[class])의 포인터를 사용하기 위해서는 상당한 노력이 필요 할것 같습니다. 혹시 쉬운 방법은 없나요? - [이승한]
- Self-describingSequence/1002 . . . . 7 matches
문제는, 1000000000 의 경우에 대해서 답이 나오는 시간이 엄청나게 걸린다는 점이다. 이에 대해서 어떻게 할 것인가 고민,
어제에 이어서 고민하던 중, 문제점에 대해서 다시 생각. 결국은 f(k) 를 위한 table 생성에서 메모리를 많이 쓴다는 점이 문제.
풀고 나니, 그래도 역시 1000000000 에 대해서는 굉장히 느림. 느릴 부분을 생각하던 중 findGroupIdx 부분이
binary search 로 바꾸고 나서도 역시 오래걸림. 다른 검색법에 대해서 생각하던 중, findGroupIdx 함수 호출을 할때를 생각.
* 지속적으로 퍼포먼스 튜닝을 위해 다른 알고리즘으로 접근을 해본 점이 좋았음.
* 하지만, 수학적인 관계를 찾아내는데에는 역시 한계를 보임. 그냥 퍼포먼스 향상을 위한 알고리즘 개선법으로만 접근.
* 다시금 '이 문제에서 요구한 방법이 이 방법이였을까?' 에 대해서 고민하게 됨. 비록 원하는 성능은 나오긴 했지만.
- SharedSourceProgram . . . . 7 matches
국내에서 MVP가 되고 싶다면 본인이 한국MS MVP 웹사이트에서 신청서를 다운로드해 담당자에게 접수시키면 된다. 현재 국내에서는 1년에 세번 선발하며, 한국MS 내부 심사 1차례와 두 차례의 MS 본사 심사를 통과해야 최종적으로 MVP 인증을 받을 수 있다.
리눅스를 정부 프로그램으로 채택하는 국가들이 세계적으로 늘어나고 있는 가운데, 마이크로소프트(MS)가 오피스 소스코드 공개를 통해 오픈소스 진영에 적극 맞서고 있다.
공대차원 학회 지원 프로그램의 한가지 방법으로 Shared Source Program 이 준비되고 있다고 한다.
돈을내고 라이센스를 받아야 하는 프로그램이라 학교측에서도 그전에 컴공의 각 학회들에게 어떤 방식으로 SSP를 활용해 나갈지를 먼저 물어보고 실제로 진행을 할 예정인가보다.
- XpWeek/20041224 . . . . 7 matches
알바하느라 소홀히 한점이 아쉽다. 또한 MockObjects에 대한 이해가 부족하여 TDD로 진행하지 못한 점이 아쉽다. 5일간 쉼없이 달려왔는데 아직 미흡한 점이 많다. 혼자 리펙토링을 해보았지만 별로 재미 없었다. 구피에서 돌릴 수 있도록 간단한 리펙토링하고 GUI 기능을 추가하고 싶다. 다음주중 하루 잡아서 하는게 어때?? 그리고 나의 최종 목표는 테스트코드를 추가하는 것이다. TDD는 아니지만 네트워크에 대한 MockObjects를 구현해보고 싶다. -- 재선
[테스트주도개발]이 도착해서 읽고 따라해보고 있어. 다 읽고 나서 다시 이 프로젝트 결과물을 가다듬을 수 있을 것 같아. --[Leonardong]
- Z&D토론/학회현황 . . . . 7 matches
ZeroPage 의 경우는 일단 01에 관해서는 MFCStudy팀 초기 1회만 참석, 그리고 정모 미참석, 이후 아무런 언급이 없는 사람을 제하고 말한 것이므로, 그외 인원의 추가사항도 언급 부탁드립니다. 그리고 데블스의 경우도 통합시의 전체 Resource 파악이라는 면에서, 통합뒤 실질적인 운영을 주도하는 사람들 위주로 적어주시기 바랍니다.
DeleteMe) ZeroPage 도 OB 회원님들 다 적을까요? 겹치시는 분들도 많고 (01 중에서도 또한 같은 현상). 그리고 위에서도 언급했지만, 통합시의 전체 Resource 에 대한 파악이라고 할 때, 통합 뒤의 학회를 실질적인 운영을 주도하는 사람들 위주로 적는게 낫지 않을까 생각해봅니다. (휴학, 군복무를 표시한 이유도 같은 이유입니다.) -- 석천
DeleteMe) 당연 위 사람들중에서 현재 활동하고 있는 사람과 관심있는 사람을 정리해서 보여줘야 될것같네요. 즉 명단에서 관심을 보이지 않는 사람은 제하는 것이 바람직하겠지요. - 김수영
- zennith/w2kDefaultProcess . . . . 7 matches
분이다. Csrss는 Client/Server Run-time SubSystem의 약자로 항상 돌고 있어야 하는
만들어 내고 이 프로세스는 Msgina.dll과 같은 인증 패키지를 이용함으로써 수행된
다. 인증이 성공하면 Lsass는 해당 사용자의 Access Token을 생성하고 이를 이용해 초
되며 Winlogon 및 Win32 (Csrss.exe) 프로세스를 구동하고 시스템 변수를 설정하는 등
가 정상적으로 이루어지는 경우엔 시스템이 종료하고 그렇지 않은 경우엔 시스템을 반
확인하려면 윈2000 CD에 있는 Tlist.exe를 이용하면 되고 구문은 명령 프롬프트에서
각각의 프로세서(CPU)에서 돌고 있는 단일 쓰레드로서 시스템이 다른 쓰레드들을 프로
- 가위바위보/성재 . . . . 7 matches
{{{~cpp 에헤헤~ 소감이라고 할만한건 없지만..
시간가는줄도 모르고 했어요... 기쁘네요!}}}
cout << "이선호의 이긴 수는 " << win <<"번이고," <<endl
<<"진 횟수는 "<< lose <<"번이고,"<< endl
cout << "\n\n"<<"강인수의 이긴 수는 " << lose <<"번이고," <<endl
<<"진 횟수는 "<< win <<"번이고,"<< endl
파일을 받아서 하는거였죠... -_- 어려웠습니다.. 케이스문이 아닌 다른걸루 만들어보고 싶네요~ }}}
- 겨울방학프로젝트/2005 . . . . 7 matches
|| [AI오목컨테스트2005] || 각자 작성한 AI 오목끼리 대결, 현재 현태, 상협이 만든 두개가 있고 [MFCStudy_2005_2_야매] 스터디 멤버들이 이어서 만들거라 기대함 || 상협 현태 태훈 민경 ||
|| [OurMajorLangIsCAndCPlusPlus] || C/C++을 자신의 주 언어로 삼고 싶은 사람들의 스터디-_- || 현태 민경 도현 수생 끝 ||
|| [PaintBox] || 시험끝났다고 놀지 말고 3일 빡세게 해서 JAVA로 그림판 짜기 || 보창 아영 선호 ||
|| [알고리즘] || Introdution to Algorithm 으로 공부 || 상섭 선호 보창 휘동 민경 도현 ||
** 회의에 참가하지 못하신 분들은 참가하고 싶은 프로젝트에 이름을 적어주시고 참가하세요.
- 데블스캠프2005/RUR_PLE/조현태 . . . . 7 matches
미로찾기 알고리즘
소트 알고리즘
저번 소트 알고리즘을 한층 강화한 고속 소트알고리즘이다.
파일을 copy/paste하는 과정에서 중간중간에 빈 줄이 생겼는데, 일부 삭제하였으나 남은 것이 있을 경우 지우고 사용해야 합니다.(단 함수와 함수사이는 아닙니다.)
2개의 알고리즘이 저장되어 있는 코드파일 링크
- 데블스캠프2010/다섯째날/후기 . . . . 7 matches
* 소스를 .cpp로 만들어 보고, class가 뭔지도 맛보고, 헤더파일도 만들어 보고, 코드를 최적화(?) 하는 것도 해봤습니다. 지금까지 전
* 좀 늦었지만 그래도 재미있었습니다. cpp를 이용한 저글링들의 대결!! 그리고.. 마린.. 으악;; 뭔가 심오해보였습니다.. - [양아석]
* C++에 대해서 가장 많이 접해볼 수 있었던 세미나 였던것 같아요 ㅋ 그래서 좋았고 나중에 2:2 만들다가 실패했는데 갑자기 스타크래프트 만드신 분들이
* [스터디그룹패턴언어]의 몇 가지 패턴을 짝을 지어 (독해 수준으로만)번역해보는 시간을 가졌습니다. 주제에 대한 흥미 유발에 실패한 것 같은데, 제 책임이 큰 것 같습니다. 두어 개 패턴만 골라서 깊이 생각하고 의견을 서로 나누는 기회를 가졌다면 어땠을까 싶습니다. 긍정적인 사이드 이펙트로 "번역 재미있는데?"라는 반응을 얻은 건 다행이라고 생각합니다. 번역한 결과물의 품질이 만족스러워 질 때까지 지속적으로 다듬어질 수 있길 바랍니다. -- [이덕준] [[DateTime(2010-06-28T00:27:09)]]
- 데블스캠프2011/다섯째날/HowToWriteCodeWell/강소현,구자경 . . . . 7 matches
el.pressButten(5, 15);//현재 위치, 이동하고픈 위치
el.goTo(el.getHopeFloor());//이동하고픈 위치 이동
el.pressButten(5, 1, 15);//현재 위치, 1: up, 0: down, 이동하고픈 위치
el.pressButten(8, 1, 13);//현재 위치, 1: up, 0: down, 이동하고픈 위치
//if(el.checkSameDir()){//만약에 같은 방향으로 이동하고, 처음에 누른 사람이 이동하고픈 위치보다 미달인 곳에 있으면
el.goTo(el.closerFloor());//이동하고픈 위치 이동
- 새싹교실/2012/아무거나/2회차 . . . . 7 matches
[http://wiki.zeropage.org/wiki.php/%EC%83%88%EC%8B%B9%EA%B5%90%EC%8B%A4/2012/%EC%95%84%EB%AC%B4%EA%B1%B0%EB%82%98/2%ED%9A%8C%EC%B0%A8?action=edit 2회차 내용 고치기]
오늘 손봉수 교수님의 수업을 듣고 제대로 이해하지 못하였었던 별만들기 수업을 다시 해보니 어렵다는 것도 깨닫았고 또 별만들기를 직접 해보니 더 이해도
잘 된것 같던 것 같습니다. 역시 씨는 직접 해보는게 최고인것 같습니다. ㅋㅋㅋㅋㅋㅋㅋㅎㅎㅎㅎ (최승민)
후기 쓰는 것을 까먹어서 과제를 다하고 나서야 발견하고 쓰게되네요.(아마 창설 때문에 그런가봐요. 으헝헝.)
* 각 줄에서 공백을 출력하는 횟수와 *을 출력하는 횟수의 규칙을 찾아내어 식을 만들고 이를 조건식으로 활용한다.
- 새싹교실/2012/햇반 . . . . 7 matches
민형:: 제가 C언어 시간때 공부를 열심히 하지 않아서 바로바로 진도를 따라가지 못하고 버벅댓지만, 앞으로 열심히 하겠습니다.
상영:: 전 아무것도 모르고 이 전공을 택했고 물론 c프로그래밍에 관해서도 아무것도 몰랐지만 별찍기나 구구단만들기 같은 것을 하다보니 C프로그래밍에 흥미가 붙었고 더 많은 것을 해보고 싶다는 생각이 들었습니다
상영:: c수업때 수업안듣고 딴짓해서 중간고사 망할듯했는데 이젠 걱정없습니다 전 성진스쿨의 학생이니까요! 자신있습니다!!
- 새회원을받으면 . . . . 7 matches
AnswerMe 5월 10일 위키설명회를 하면서 새회원을 받기로 하였는데...여러가지 생각이 떠오릅니다. ZeroPagers 여러분의 의견을 듣고 싶습니다.
* 성공한 스터디 사례, 실패한 스터디 사례. 그리고 그 이유.
저도 새회원이 어떤 사람을 말하는지 알고 싶습니다. 제가 생각하는 새회원은
* 04학번에게 이상한(?) 소문을 들었습니다. 그대로 적어봅니다. ' ''제로페이지는 들어가면 졸라 빡시다. 열심히 활동 안 하면 준회원되고, 제로페이지에서 짤린다.'' '라고 하더군요. --[Leonardong]
* 그게 이상한 소문인가? 어떤 스터디에 얼만큼 참여하느냐에 따라 다르겠지만 어느 정도는 빡신게 맞고, 열심히 활동 안하면 당연히 회원 정리 대상이 된다. 휘동, 모든 사람을 만족시키려고 하지 말게나. ZP에는 다수의 어중이 보다 소수라도 정말 실력있는 사람들이 더 좋단다. --재동
- 서지혜/2011 . . . . 7 matches
* 나와 같은 생각을 하는 사람들을 만났고, 이미 생각했던 사람들을 만났고, 전혀 다른 생각을 가진 사람들도 만났습니다. 그리고 이야기를 했습니다. 너무나 소중한 시간이었습니다. 사람들에게 전파하겠습니다. see also [PNA2011]
* 해야할 일이 생기면 바로 시작합시다. 나중에 잊지말고..
* 다음주가 중간고사랩니다.. 하..
* 뭐했다고 벌써 개강 1주일째지!!
* 해야할 것을 적은건 많은데 하고 싶은 것을 적은게 없네.. 사는게 왜 재미없나 했더니 TODO List만 잔뜩 써진 하루라 재미가 없었나보다..
- 쓰레드에관한잡담 . . . . 7 matches
... 그리고... 한가지... POSIX thread를 사용하여 많은 양의 thread를 생성하면 동기화를 주목해야한다.
thread를 10개 생성 시키고 이 작업을 수행하면,
함수가 실행되고 context switch가 일어나고 arg가 제대로 안바뀌는 것 같다.
이상하다. 소스에는 문제점이 없지만 약간 많은 쓰레드가 동시에 생성되고 데이터 처리 양이 많을 때에는
function에 argument를 넘기는 것은 stack에 관계된 것이고, 개개의 쓰레드는 각각의 stack을 가지고 있을텐데. 아직 생각중이다.
- 안전한장소패턴 . . . . 7 matches
'''떠버리, 과시적인 사람, 아는체 하는 사람, 또는 지나치게 경쟁적이거나 대립적이거나 적대적인 사람은 다른 사람을 불편하거나 불안하게 만들고 아이디어를 배우고 나누고 만드는데 좋지 않은 환경을 조성한다.'''
'''각자 서로를 돕고 모두가 질문하고 실수하는데 편안함을 느끼는 따뜻하고 관대하며 공손하고 집중된 환경을 만들어라.'''
- 전시회 . . . . 7 matches
넉넉히 1시 이후에 가는 것으로 생각하고 있습니다. --[Leonardong]
오늘 전기전자공학과학회의 전시회를 보았는데 재밌어보인다. 우리도 그런 거하면 괜찮을 듯. 돈은 별로 안들어보이는데.,우리가 화드웨어가 필요한 것도 아니고..--[강희경]
* 설명자(오퍼레이터)가 항상 대기하고 있도록 시간 조정을 했다고 추정됨.
* 저것처럼 큰 행사는 아니어도. 한달에 한번씩 작은 전시회를 해보면 어떨까요??. 아무리 작은 성과라도 발표를 위해서 준비하는 과정이 필요하고 그 과정에서 다들 열심이 하는 분위기가 만들어 지지 않을까요??
* 전시회가 단순히 설명해주고 듣고 해보는 일반적인 방식이였다. 좀더 다양한 이벤트를 준비했으면 좋았을 것 같다. [윤성만]
- 정모/2011.8.29 . . . . 7 matches
* 참가자 : [김수경], [권순의], [송지원], [김태진], [고한종], [김준석], [서지혜], [송치완], [강소현], [임상현], [정진경]
* 테트리스 데모버젼을 저번주에 테스트했습니다. 한종이가 새롭게 만들어본다고 하고, 방학 마지막 주이므로 스터디를 끝냅니다.
== 회고 ==
* 9월 회고를 쓰기 (역시 미래일기)
* 간단하게 정모를 진행하고 개강파티(밥먹으러) 할 것이라고 합니다.
- 제로페이지는 . . . . 7 matches
* 제로페이지를 설명해보자. 제로페이지(ZeroPage)페이지에 기록된 소개글은 소수의 머리에서 나온것일 뿐이다. 공통의 합의를 도출해 보고 싶다. 도대체 제로페이지의 정체는 무엇인가.
* ["제로페이지는"] 중앙대학교 컴퓨터공학과의 정학회가 되면 좋겠고, 학생들간 컴퓨터공학에 관련한 학술적 정보를 효율적인 동시에 자유롭게 교류할 수 있는 시스템이 되면 좋겠다. --류상민
* ''현재로써의 제로페이지는(개인적 바램을 제외하고 말한다면) 중앙대학교 컴퓨터공학과 내의 전공 관련 학술모임으로 과내 활동단체 중 하나이다.'' 맞을까요? ^^;; 제로페이지의 역할보다는 무엇인지라는 것에 입각했습니다.--창섭
* ["즐거운공부"] 를 하고 싶어하는 사람들이 모일 수 있는 자리였으면 하네요 --["1002"][[BR]][[BR]]
* 제로페이지는 중대 컴공이라는 이름하에 지원을 받으며 지도 교수님(이찬근 교수님)이 함께 하고 계십니다. -[김태진]
* ["제로페이지는"] 같이 공부하는 사람들의 모임이다. 서로 가르쳐주고 배우면서 학과 공부로 모자란 지식을 얻을 수 있는 문화가 전해 내려온다. --[Leonardong]
* [제로페이지는] 자신의 장점을 발산하고 타인의 장점을 흡수하는 유기적인 개체들의 집합이다. - [임인택]
- 중위수구하기/허아영 . . . . 7 matches
이렇게 바꾸는게 변수도 안낭비하고 좋을 듯 한데..^^
그리고 int search_middleNum(int *a, int *b, int *c) 이함수는 구지 포인터로 값을 넘겨받을 필요는 없지 않나..
그냥 넘겨 받아도 문제는 없을 것 같은데..ㅎㅎㅎ 짜기 편하자너..ㅎㅎ 문제도 줄고..^^
음.. 뭐 단순한 내생각이니 특별히 신경쓰지 말라고~ 집에서 할일없어서 하는 소리니..^^ - [조현태]
두 친구가 젤 활발하군요. A 코드를 B로 바꾸면 중간 변수의 메모리도 낭비되지 않고, 좀더 최적화에 다가간 코드가 됩니다. 하지만 A를 B로 바꾸면 가독성이 떨어집니다. 상황에 따라 다르겠지만 running time에 별 차이가 없다라고 본다면, 저라면 가독성을 택할 것 같습니다. -- 보창
어떻게 할까 했는데 걍 소트 하믄 되는구나 ㄱ-;;;; 괜히 고민했었다;; - 태훈
- 지금그때2006/홍보 . . . . 7 matches
일부 제외하고 저학번이 주도하여 홍보한다.
|| 고동현 선배님 || ? || . || . ||
- 나머지는 수생이 담당인데, 답장이 하나도 안왔다고 알고 있습니다 -- 아영
홍보대상: 교수님,지금그때 참석 하신 선배님, 자기가 알고있는 졸업 하신 선배님
-저는 정희록 선배님 빼고는 다 성공적으로 메일을 보냈습니다. --아영
이메일을 보낸 후 답장 받으면 전화하고 행사 전에 다시 문자를 보낸다.
- 최소정수의합/문보창 . . . . 7 matches
* 원래 이렇게 쓰는거 인가요 ? n(n+1)/2 가 n까지 숫자의 합으로 알고 있는데, 코딩할 때 만약에 공식을 모르는 경우는 어떻게 하나요?
공식도 알고리즘의 일종인가요? -[허아영]
* 음... 굳이 처음에 공식을 모르더라도 문제에 나온 식을 보고서 충분히 n(n+1)/2 를 유도해 낼 수 있습니다. 공식을 외우는 것이 중요한 것이 아니고, 해당 문제에서 규칙성을 찾고, (물론 규칙성이 없는 문제도 많습니다), 이 규칙성을 하나의 수식으로 변환시킬 수 있다면 문제를 쉽게 풀어낼 수 있고, 또 이 과정이 공식을 외우는 것보다 훨씬 중요하다고 생각합니다. --보창
- 최소정수의합/허아영 . . . . 7 matches
n을 ++ 하고 출력해 버렸음. !! 그래서 1 큰 수가 출력되었다.
로 정정해주세요.^^ 그리고 n=1에서 n=0으로 바꾸어야 합니다.^^ -[조현태]
- 실수했군요~ 고치겠음 ^^ -[허아영]
만약에 3000까지가 아닌 더 큰 수를 입력하고 프로그램을 돌려보시겠어요? 위의 코드에서 int 를 double 형으로 바꾸고 3000 대신 18000000000000000000 을 넣은 코드입니다. 한번 실행해 보세요. 더 나은 방법이 생각나실수도 있을것 같아요. 문제를 풀고 나서 어떤 점을 느끼셨나요? - 아무개
흠. 아직도 돌아가고 있어요 -.- 루프가 무섭네요. 큰 수에서도 빠르게 돌아가는 방법이 뭐가 있을까 생각해 봐야겠군요.. -[허아영]
- 타도코코아CppStudy/0731 . . . . 7 matches
책 사라 하기 뭐하니까 게임 만드는데에 필요한 것만 익히고 넘어갑시다. 모르는건 언제든지 질문하세요. --[인수]
예를 들어, 지뢰찾기를 만든다고 하면, 우리에게 필요한 메세지는 뭐가 있을까?
* 윈도우에 그림을 그려주기 위해서는 DC라는게 필요하다. MFC에서는 DC를 랩핑하고 있는 가장 기본적인 클래스로 CDC를 지원한다. CDC는 그림 그리는 사람의 손이라고 생각하면 된다. 그림을 그려주기 위해 어떤 색깔의 펜이나 붓을 고를수 있을 것이다. 또한 사각형, 원도 그릴수 있다. 이러한 행위들을 CDC의 멤버함수로 정의해놨다. 우리는 그걸 갖다 쓰기만 하면 된다. 세부적인 것은 나중에 알아도 된다.
* 해오면 첨삭해 줍니다. 자유...라고 하면 아무도 안해올걸 알지만서도... 왠만하면 해보세요. 많은 도움이 될겁니다.
* randomwalk2 거의 끝나 간다.~~ 우하하하하~~ 알바 끝나고 와서 올립니다.~~ [수진]
- 화이트헤드과정철학의이해 . . . . 7 matches
계속 화이트헤드에 주목하는 이유라면 (김용옥씨 관점의 화이트헤드해석일지도 모르겠다. ["이성의기능"] 때문이지만.) 점진적 발전과 Refactoring 에서 뭔가 연결고리를 흘핏 봐서랄까나. 잘못하면 뜬구름 잡는 넘이 될지 모르겠지만. 이번에도 역시 접근방법은 '유용성' 과 관련해서. 또 어쩌면 용어 차용해서 써먹기가 될까봐 걱정되지만. 여유를 가지고 몇달 생각날때 틈틈히 읽으려는 책.
김용옥씨의 서문의 인상이 꽤 깊게 남는다. 일상적 경험으로부터 귀납적 관찰로 쌓아올리지 않고, 조급하게 하나를 통찰하는 연역의 원리를 먼저 찾으려는 모습에 대한 비판. 과연 나의 말은 나의 과정들, 경험들을 얼마나 담고 있는건가.
* '진정한 발견의 방법은 비행기의 비행과 유사하다. 그것은 개별적인 관찰의 지평에서 출발하여 상상적 일반화의 엷은 대기층을 비행한다. 그리고 다시 합리적 해석에 의해 날카로워진 새로운 관찰을 위해 착륙한다.' - 서문중 인용된 Whitehead 글.
철학책이고 형이상학을 그린 책이라지만, 읽을수록 예전에 내가 이야기했었던 학문론(뭐 '론' 을 붙이기도 뭐하지만)이 생각이 난다.
우리는 진리를 찾기 위해 오늘도 자신의 공식에 Control Point 를 하나더 추가하고 있는것일지도 모른다. (단, 라그랑주일경우엔 좀 더 정확해보이는 Cubic Spline 으로 페러다임 전환을 하자. ^^;)
- 05학번만의C++Study/숙제제출1/조현태 . . . . 6 matches
std::cout << "섭씨 온도를 입력하고 Enter 키를 누르십시오 : ";
책 읽어보고, using namespace std; 쓰는이유, 뭐 이런것을 익히고 자신만의 C++스타일도 찾을겸.
그리고, 너가 짠 소스는 문제에 대한 답이 아닌것 같은데? 문제를 잘 읽고 써주길 - 아영
책은 아직 안샀고, 답은 함수를 추가했음 - [조현태]
- 10학번 c++ 프로젝트 . . . . 6 matches
0. 프로젝트의 이름은 10학번 c++ 프로젝트라 하고, 이는 프로젝트의 정기모임에서 변경될 수 있다.
* 고문: [남상혁]
* 상호야 ㅋㅋ 내가 하는건 C++ 프로젝트로 분류하기 좀 애매함 ㅋㅋ 객체지향 프로젝트라고 보는게 맞음 ㅋㅋ - [박성현]
* 애들이 갖고 온걸 합쳐보고 있음
* 근데 헤더문제(?)땜에 속 썩고 있음
- 2011년독서모임/주제 . . . . 6 matches
||실존 인물이 다뤄진 책||네 꿈에 미쳐라, 가우디 임펙트, 마리아 칼라스 내면의 열정의 고백||
||본격 중간고사 기념 자유주제||당신없는 나는, 하늘 호수로 떠난 여행||
||자신의 취미가 담긴 책 읽기||Legend, 고구려, 수집이야기||
||동화책 원작 읽기||알고보면 무시무시한 그림동화||
||돈(MONEY)!||경제학 콘서트, 금융지식이 미래의 부를 결정한다, 통장의 고백, 지금 당장 경제공부 시작하라. ||
||소외된 사람을 다룬 책||바보 빅터, 친구가 되기 5분전, 산 자와 죽은 자, 미안하다고 말하기가 그렇게 어려웠나요&&소외 ||
- 2학기파이선스터디/함수 . . . . 6 matches
return은 계산된 값을 함수를 호출한 곳으로 돌려준다. def는 함수 객체를 생성하고 그 객체를
add란 이름에 할당한다. 즉, 이름 add는 함수 객체의 reference를 갖고 있다.
>>> f(a) # a를 t를 통해 넘겼으므로 t는 a와 동일한 참조를 갖는다. 그리고 t = 10에서 t가 객체 10을 참조한다. 이때 a의 참조는 변함없다.
함수 f내부의 h를 전역변수로 사용하려면(즉, 전역변수h의 값을 바꾸고자한다면)
고정되지 않은 수의 인수를 함수에 전달 - 나머지는 모두 튜플 형식으로 받는다
|| 내부 변수 선언 || 지역 영역에 변수를 생성하고 사용하는 것이 가능 || 지역 영역에 변수를 생성하는 것이 불가능 ||
- 5인용C++스터디/다이얼로그박스 . . . . 6 matches
1-3 대화상자에서 MFC AppWizard[exe]를 선택을 하고, Location: 에 사용자가 생성시키고 싶은
곳에 경로를 선택하고, Project name: 에 프로젝트명을 적고 OK버튼을 누른다.
이 부분에서 사용자가 선택하고 싶은 것을 선택을 한다. 이 Test프로그램은 Dialog based를
modalless dialog의 예는 글 워드 프로세서의 찾기 창을 들 수 있다. 찾기창을 띄운 후 창을 닫지 않로서도 문서편집 작업을 계속해서 할 수 있다. 이러한 속성을 modalless라고 한다.
- APlusProject . . . . 6 matches
Upload:Chasedocument.zip -- 재동오빠가 추적하라는거 할려고 했는데 아무래도 이거는 프로그램 아는 사람이 해야할듯한데요
보기 좋고 바로바로 알려주기 위해서 준비한다고 생각했는데 요구사항 번호 이런게 있으면 옆에 요구사항 간단한 언급도 필요할 것 같더라구요
현재 이곳에 올려 놓는 자료는 모두 암호를 가지고 있습니다. SE 수업이 끝나면 모든 소스와 문서는 공개할 예정입니다. 혹시 파일 다운을 못받으신다면 '인터넷 익스플로어'에서 도구 -> 인터넷 옵션 -> 고급 -> 'URL을 항상 UTF-8로 보냄'의 체크를 없애고 재부팅 해야 다운 받으실 수 있습니다. (파일 이름의 한글이 문제입니다)
- ATmega163 . . . . 6 matches
* 그리고 납땜질용 인두와 실납을 준비후 납땜 시작.
* 이렇게 까지 연결하고 컴퓨터에 시리얼 케이블을 COM1 에 연결.
* ISR 모듈을 COM2에 연결하고
* 이후 새롬 데이타맨에서 모뎀에 의한 연결로 SETTING하고 baud rate를 19300(ㅠㅠ) 로 설정 후 reset 버튼을 누르면 [[BR]]
c:\> 에서 avrgcc 폴더로 옮기고
device missing or unknown device 라고 나온다. ponyprog 에서 장치를 꼭 163 L 로 해야하나? 163 밖에 없던데..
- AttachmentMacro . . . . 6 matches
올리고 싶은 파일 이름 혹은 이미 첨부된 파일 이름을 {{{attachment:파일이름.확장자}}}라고 써준다.
파일이 이미 올려 있을 경우에는 그 파일을 받을 수 있는 링크가 자동으로 걸리게 되고, 파일이 아직 업로드되지 않았다면 파일을 업로드 할 수 있는 링크가 생성된다.
/!\ Attachment는 매크로로 구현되어 있으므로 {{{[[Attachment(hello.png)]]}}}라고 해도 똑같은 방식으로 작동을 합니다. 그러나 '''attachment:'''문법을 쓰시기 바랍니다.
== 그림 파일에 대한 고급 옵션 ==
손톱그림의 내정된 기본 크기로 손톱 그림이 만들어지고 보여진다.
- C++스터디_2005여름/학점계산프로그램/허아영 . . . . 6 matches
제 소스가 C++의 특징인 OOP를 사용하지 않은 껍데기 소스라고 보창오빠는 말하더군요 ㅠㅠ( 상처ㅡㅡ++++++ )
void scholarship();//장학금, 학고 학생 출력,
cout << "학고 명단" << endl;
괜찮아 괜찮아~! 인생 모이떠~ 막 가눈고야~~>ㅃ<;;
아예 한쪽은 죽어라 입출력 계산만 하고 한쪽은 자료보관만 하는계 좀더 깔끔했을지도~
자자~ 그럼 힘내서 오늘도 즐겁게 놀자고~'ㅇ')/ 곧 개강이니까.훗..ㅎ 좋은하루!- [조현태]
- CommentEachOther . . . . 6 matches
전에도 느꼈었고, 여러 대가들께서도 자주 말씀하시곤 하는데, 자신의 코드의 퀄리티를 높이려면 남이 만들어놓은 소스를 보라는 이야기가 있다. 이 글을 읽는 분들도 동의하리라 생각한다. CommentEachOther 는 [AOI]나 LittleAOI 처럼 여러 사람이 한 문제에 대한 풀이를 올리고 그것들에 대한 코멘트를 하는 스터디라 할 수 있겠다. 여기서 코멘트라 함은 소스코드에서 명령문 옆에 붙이는 간단한 부연설명이 될 수도 있겠고, 코드 전체에 대한 비평이나 느낌일수도 있다. 처음에는 간단한 문제로 시작해서 디자인 principle 이 들어가있는 프로그램으로 횟감의 스케일을 키워나가는게 어떨까 생각을 한다. 나는 그냥 제안하는 입장이고, 간혹 간단하게 작성한 소스를 올리는 정도로만 참여하도록 하고, 적극적인 참여를 할 사람들이 생기면 이곳에 문제와 자신의 코드를 올리고 토론을 해봤으면 좋겠다. 토론의 방법이야 오프라인 모임에서 하거나 따로 코멘트 페이지를 만들거나. 자. 다들 어떻게 생각하시는지? 참여할분들(!) 계시면 아래에 참여자 목록과 문제를 업로드해 주셨으면.~ - 임인택
- Counting . . . . 6 matches
구스타보는 수를 셀 줄은 알지만 수를 쓰는 방법은 아직 배운지 얼마 되지 않았다. 1,2,3,4까지는 배웠지만 아직 4와 1이 서로 다르다는 것은 잘 모르기 때문에 4라는 숫자가 1이라는 숫자를 쓰는 또 다른 방법에 불과하다고 생각한다.
그는 그가 만든 간단한 게임을 하면서 놀고 있다. 그가 알고 있는 네 개의 숫자를 가지고 수를 만든 다음 그 값을 모두 더한다. 예를 들면 다음과 같은 식이다.
112314 = 1 + 1 + 2 + 3 + 1 + 1 = 9 (구스타보는 4 = 1 이라고 생각한다.) |}}
구스타보는 합이 n인 수를 몇 개 만들 수 있는지 알고 싶어한다. n = 2 일 경우에는 11,14,41,44,2 이렇게 다섯 개의 숫자를 만들 수 있다 (5 이상의 수도 셀 수는 있다. 다만 쓰지 못할 뿐이다). 하지만 2보다 큰 경우에 대해서는 그가 만들 수 있는 수의 개수를 알 수가 없어서 여러분에게 도움을 청했다.
- DPSCChapter2 . . . . 6 matches
디자인 패턴에 대한 구체적인 설명에 들어가기 전에 우리는 다양한 패턴들이 포함된 것들에 대한 예시들을 보여준다. 디자인 패턴 서문에서 GoF는 디자인 패턴을 이해하게 되면서 "Huh?" 에서 "Aha!" 로 바뀌는 경험에 대해 이야기한다. 우리는 여기 작은 단막극을 보여줄 것이다. 그것은 3개의 작은 이야기로 구성되어있다 : MegaCorp라는 보험회사에서 일하는 두명의 Smalltalk 프로그래머의 3일의 이야기이다. 우리는 Don 과(OOP에 대해서는 초보지만 경험있는 사업분석가) Jane (OOP와 Pattern 전문가)의 대화내용을 듣고 있다. Don 은 그의 문제를 Jane에게 가져오고, 그들은 같이 그 문제를 해결한다. 비록 여기의 인물들의 허구의 것이지만, design 은 실제의 것이고, Smalltalk로 쓰여진 실제의 시스템중 일부이다. 우리의 목표는 어떻게 design pattern이 실제세계의 문제들에 대한 해결책을 가져다 주는가에 대해 설명하는 것이다.
Data Entry. 이것은 다양한 form으로부터 health claims 를 받는 다양한 시스템으로 구성된다. 모두 고유 id 가 할당되어 기록되며, Paper claims OCR (광학문자인식) 로 캡쳐된 데이터는 각 form field 들에 연관되어있다.
Validation. 스캔되고 입력되어진 form들은 각 필드들에 대해 일관성보증과 모든 폼이 완전히 채워졌는지에 대한 보증을 위해 검증작업을 거친다. 불완전하거나 적절치 못한 입력은 시스템에 의해 reject되고, 재확인을 위해 요구자에게 도로 보내진다.
- DataStructure/String . . . . 6 matches
= 가장 기본적인 패턴 매칭 알고리즘 =
* 요건 걍 심심해서 만들어 봤습니다. 뭔가 코드가 좀 더러운거 같긴 하지만..-.-;; 앞으로 공부를 개념을 익히면 소스를 보기 전에 제 손으로 만들어보는 연습을 하려고 합니다.
j = 5 일때, pattern = abcabc 여기서 [[HTML(<b><font color=red>)]]abc[[HTML(</font></b>)]][[HTML(<b><font color=blue>)]]abc[[HTML(</font></b>)]]이므로 i = 2이고 i < j이므로 f(5) = 2
j = 4 일때, pattern = abcab 여기서 [[HTML(<b><font color=red>)]]ab[[HTML(</font></b>)]]c[[HTML(<b><font color=blue>)]]ab[[HTML(</font></b>)]]이므로 i = 1이고 i < j 이므로 f(4) = 1
j = 3 일때, pattern = abca 여기서 [[HTML(<b><font color=red>)]]a[[HTML(</font></b>)]]bc[[HTML(<b><font color=blue>)]]a[[HTML(</font></b>)]]이므로 i = 0이고 i < j 이므로 f(3) = 0
고마워.^^근데 C로 fail() 구현 부분은 더 신기하다. ㅡㅡ; --[Leonardong]
- DispatchedInterpretation . . . . 6 matches
인코딩은 프로그래밍에 있어서 필수적이다. 데이터가 계산으로부터 분리되어 있던 과거에는, 인코딩 작업은 매우 중요했다. 삑사리 한번 내면 돈 겁나 많이 들었다. 하지만 객체지향 시대에는 좀 다르다. 인코딩은 두번째로 밀려나고 객체들 사이의 책임을 분배하는 것이 가장 중요하게 된 것이다. 잘짜여진 OO 프로그램에는, 어떠한 정보에 관심을 가지는 객체가 하나밖에 없어야 한다. 그 객체는 자신의 정보에 직접 접근하고, 은밀하게 인코딩과 디코딩을 수행한다.
위의 코드를 보면 알겠지만, CURVE 다음에는 STROKE, FILL 등이 계속 나올 것이다. 즉, case 구조를 씀으로써, OAOO의 원칙을 위반하고 있다. 이에 우리는 case 구조가 인코딩된 객체 안에 숨겨지도록 하는 해결책이 필요하다.
모든 커맨드를 위한 case 구문을 쓰지 말고, PostScriptShapePrinter에 모든 커맨드를 두자.
또한, commantAt이나 argumentAt같은 메세지 말고, sendCommand(at,to) 같은 메세지를 제공하자. 위의 line,curve도 이꼴이므로 같이 다룰수 있다.
정리해놓고 보니... 무슨 말인지 모르겠다.--; 앞이랑 뒤의 연관관계가 상당히 떨어진다. 본인의 해석이 부족한 탓이다. 빠른 시일 내에 보강해서 올리겠다.
- EasyJavaStudy . . . . 6 matches
=== 참고 페이지 ===
* 여러분들 각자가 알아서 지금 공부 하시고 계신가요?^^; 이 스터디 그룹 멈춘거 아니구요 계속 하고 있는겁니다. 각자가 하다가 막히는 일이 있으면 실시간으로 서로 의논하고 하기로 합시다. 저는 자바로 스카치 를 만들어볼까 하고 있어요~! -상욱(["whiteblue"])
- (03.04.27) 자료구조 시간에 이야기 해보지 =ㅅ=a 근데 아 자바... 잡아먹어버리고 싶다 -_- 덴장... -[Dantert]
- EightQueenProblem/nextream . . . . 6 matches
처음엔 2차원 배열 메모리 공간을 두고 메모리 상에 체크해 가며 루프를 돌릴까 하다가 생각을 바꿔서 재귀호출을 이용하게 되었습니다. 첫 문제에서 일단 제일 첫 퀸은 무조건 (0,0) 이라고 고정하고 재귀를 두번째 퀸부터 돌렸는데, 오히려 나중에 이 생각이 두번째 문제 풀때 딱 한글자만 바꿔서 적응이 되는 것을 가능케 한것 같습니다.
원래 첫번째 해법은, 한개만 뽑든지, 아니면 다뽑든지 둘중 하나였어야 하는데, 결론적으로는 문제를 풀긴 했지만, 어정쩡한 모습이 되버리고 말았습니다.
기본 아이디어는 한 라인씩 진행해 가면서 현재 라인 선상에서 X좌표값을 바꿔가며 위에 있는 퀸들에 의해 위협을 받는지 검사해서 안전한 경우에는 계속 다음 라인으로 진행하고, 아닌 경우에는 철수하는 것입니다. 위협여부에 대해서는 같은 세로선상이거나, 대각선인 경우는 X, Y 좌표의 합과 차가 각각 동일한 것이 있는지를 조사하는 것으로 만들었습니다.
- FactorialFactors/1002 . . . . 6 matches
그리고 F, Count 들에 대해서 caching 을 진행할 수 있으리라 생각, 다음과 같이 풀음.
* 알고리즘의 속도를 보니 Counter 부분이 O(n^2) 이다. caching 을 함에도 그렇다는 것은 무언가 다른 접근법이 있으리라.
* Python 에서 O(n^2) 인 알고리즘은 C++ 에서도 O(n^2) 이다. -_-
결국은 Python 에서 5초 내를 밟는 알고리즘을 만들어야 C++ 로 1초 이내의 속도가 나올 것이다.
* 현태꺼 알고리즘 속도 보고 좌절하다. 내가 ZP 를 떠날 때가 되었구나.;;
- FileStructureClass . . . . 6 matches
다른 건 둘째치고, 교재의 Pseudo Code 가 정말 마음에 안든다. 전혀 구조적으로 볼때 한번에 이해하기 어렵게 만들어놓았다는 느낌을 지울 수가 없다. 고로, 교수님의 수업을 잘 듣고 필기할 필요가 있다. (교수님이 잡아주는 예제가 더 쉽고 이해하기도 좋다.)
강현철 교수님에게 인상적인 부분이 있다고 한다면, 중간에 질문을 던지신 뒤 학생들이 답했을때의 자세이시랄까. 그럴때 바로 '틀렸다' 라고 이야기하지 않는다. "만일 자네의 의견이 맞다면, 어떻게 이 부분을 전개한것인지 말해보게." 식으로 논리과정을 서술하게끔 다시 질문하신다. --[1002]
- Hartals . . . . 6 matches
방글라데시의 정당들은 자신의 세를 과시하기 위해 정기적인 동맹 휴업(파업)을 추진하는데, 이 동맹 휴업은 경제에 상당한 피해를 끼칠 수 있다. 이 문제에서는 각 당을 동맹 휴업 지수(hartal parameter)라고 부르는 h라는 양의 정수로 나타낼 수 있다고 하자. 이 동맹 휴업 지수는 한 동맹 휴업과 다음 동맹 휴업 사이의 기간을 날짜 수로 표시한 값이다.
세 개의 정당이 있다고 생각해보자. 그리고 i번째 당의 동맹 휴업 지수를 hi라고 할때 h1=3, h2=4, h3=8 이라고 가정하자. N일(N=14) 동안의 세 당의 행보를 시뮬레이션하면 다음과 같이 표시할 수 있다. 시뮬레이션은 항상 일요일에 시작하며 금요일이나 토요일에는 동맹 휴업이 없다.
- HotterColder . . . . 6 matches
뜨거워 차가워라는 게임이 있는데, 게임 방법은 다음과 같다. 일단 A가 방을 비우면 B가 방 안 어딘가에 어떤 물건을 숨긴다. A는 (0,0) 위치로 방에 다시 들어와서 방 안의 다양한 위치를 돌아다닌다. A가 새로운 위치로 움직였을 때, 물건을 숨겨둔 위치와의 거리에 따라 B가 이동 결과를 말해준다. 더 가까워지면 "뜨거워(Hotter)"라고 말하고, 멀어지면 "차가워(Colder)"라고 말하고, 차이가 없으면 "똑같아(Same)"라고 말한다.
최대 50줄까지 입력될 수 있으며, 각 줄마다 (x, y) 좌표를 나타내는 숫자 한 쌍과 "Hotter", "Colder", "Same" 중 한 가지가 입력된다. 숫자 한 쌍은 방 안에서의 위치를 나타내는데, 방은 (0,0)과 (10,10) 두 점에 의해 만들어지는 정사각형 모양이라고 가정하자.
- JTDStudy/첫번째과제/원희 . . . . 6 matches
자바가 완전 기초라서요, 숫자 세개 입력받을때 1 2 3 이렇게 입력받으면 배열에서 1,2,3 이렇게 들어가게 할려고 노력을 해봤지만 어렵네요......ㅠㅠ 생각의 한계로 결국은 따로따로 입력받기......
* 방법은 여러 방법이 있지. 만약 100자리라면, int 형이 정수값만 가지고 나머지는 버리는 특성을 이용해서 123%10 하면 3이 나오고, 12%10 하면 2 나오고 나머지는 1이고... 이런식으로 숫자른 나누어 줄 수도 있고, 입력시에 어짜피 String형으로 받아지기 때문에 문자 하나씩 끊어 읽게끔 해도 되지^^ 조금만 생각해보면 방법이 나올 수도 있어 - [상욱]
- JavaStudy2004/조동영 . . . . 6 matches
지적하시고싶으신부분 써주세요 ^^;
* 역시 깔끔하고 보고 쉬운 소스 네요
아쉬운 점은, 공격받았을때 실드 깎이고 hp깍이는 설정, 사실 이건 별 상관없고요,
자식 클래스의 생성자는 전달인자가 없는 기본 생성자 모양으로 해놓고( ex) zealot() )
- LUA_2 . . . . 6 matches
그리고 추가적으로 table이라는 자료형이 있습니다. table은 배열로 볼 수도 있지만 루아에서는 좀 더 다른 의미를 갖습니다. table은 나중에 따로 설명하도록 하겠습니다. 우선 오늘은 맛보기로 table을 만들어만 보겠습니다.
> print (a>3 and a<4) --- a는 3보다 크고 4보다 작다.
문자열 비교 연산자, 문자열도 알파벳 순으로 비교, 크고 작고를 알 수 있습니다.
> print( -fake_two + 2 ) --- -fake_two는 앞에 '-'로 인해 음수가 되고 여기에 2를 더해서 0이 출력 됨
마지막으로 오늘 배운 것 이외에 추가로 주석처리 하는 방법을 살펴 보겠습니다. 앞서 예제에서 '--' 를 하고 코드를 설명했는데 '--' 가 주석을 시작하는 코드입니다. 한 줄 이상의 주석 처리는 "--[[" 와 "--]]"를 통해서 처리할 수 있습니다.
- POLY/김태진 . . . . 6 matches
* 가로줄을 층이라 치고, X개로 만드는 것의 경우는
* X-1개(제일 위층을 제외하고) + 제일 위층 1개 , X-2개 + 최상층 2개, ... , 1개 + 최상층 X-1개, 최상층 X개 로 쪼갤 수 있다.
* (예를들어 최상층 3개, 두번째층 2개(그 아래층은 상관없음)인 경우는 " 최상층 + 두번째층 - 1 ", 즉 4개의 경우가 생기고, 이를 곱해야한다.
* 여기까지 이해를 했다면 직접 DP 점화식을 만들어보고, 그렇지 않다면 코드를 보고 이해해보려고 노력해보자. 실제로 유의미한 코드는 3번째 for문과 점화식 한줄, 총 두줄 뿐이라는 것을 알게 될 것이다.
- PowerReading . . . . 6 matches
읽기에 도움을 주는 4주간의 코스. 의외로 그 방법들이 복잡하지 않고 단순하고 간결하다.
- 저도 읽어보고있는데 괜찮은것 같아요. self-testing ..(?) 을 안해서 그렇지..-_-; Do It Now! 를 마음속으로만 외치는군요.....- 임인택
- 휴가 나와서 글쓰기 귀찮음에도 불구하고, 아주 아주 많은 도움을 준 책이길래 이렇게 글을 씁니다. 뭐 이 한권 읽고 기억나는건 읽을때 손가락으로 가리키면서 읽는거 밖에 없지만, 이 조그마한 차이가 엄청난 변화를 가져왔죠. 예전보다 읽는 속도가 3~4배 정도는 빨라진거 같고(원래 무진장 천천히 읽긴 했죠 -_-;) 속도가 좀 빨라지다 보니깐 책 읽는 재미도 느끼게 되어서 더 많은 책을 읽게 되었죠. 결국 이책에서 익힌 기법으로 책을 많이 읽게 되었기에, 이 책은 저에게 가장 큰 영향을 준 책이 된 셈이네요. - 남상협
- ProjectVirush/Rule . . . . 6 matches
* 명령을 수행하는데는 현실 세계의 시간이 필요하다. 따라서 플레이어는 게임에 접속해서 명령이 수행될 시간을 예약한다. 그리고 예약한 시간에 자신의 명령이 수행되었는지를 다음 번에 확인하고 새로운 전략을 세운다.
* 숙주는 기본적으로 모든 바이러스를 잡을 수 있는 항체를 어느 정도 갖는다. (이를 '''기본 항체'''라고 한다.)
* 기본 항체가 새로운 바이러스를 잡기에 모자라는 경우(바이러스 사살 속도<바이러스 증식 속도), 숙주는 새로운 바이러스임을 알아차리고 이에 특화된 항체를 생산한다. 특화된 항체는 기본 항체보다 바이러스 사살 속도가 빠르다.
* 한 번 특화된 항체를 생산한 경우 이를 '''습득 항체'''라고 하고, 특화된 항체를 생산하는 과정이 빨리 일어난다.
- ProjectZephyrus/간단CVS사용설명 . . . . 6 matches
=== 프로젝트 처음에 가지고 오기 ===
라고 넣는다. 이렇게 되면 나머지 인자들도 다 들어간다.
==== 프로젝트 처음에 가지고 오기 ====
내컴퓨터->등록정보->고급->환경변수->새로만들기(N)
를 만들고 내용은
* 가상의 유저를 파일의 권한을 그자(?)에게 돌리고, CVS내부 기록은 각 유저가 하도록 한다. .
- SpikeSolution . . . . 6 matches
어떻게 보면 우리가 일반적으로 하고 있는 것이다. Visual C++로 해당 라이브러리를 이용한 프로그래밍을 할때 우리는 어떻게 할까? 아마도 Visual C++을 2개를 띄울 것이다. 그리고 한 창에서는 해당 라이브러리가 제대로 작동하는지, 대강 값들을 넣어보고 이리저리 제대로 원하는 일을 하게끔 여러 시도들을 하게 될 것이다. 그렇게 함으로서 미지인 부분에 대한 대강의 선을 잡아놓는다.
이러한 실험들을 XP에서는 Spike Solution이라고 한다. 다른 점이라면, 우리는 보통 실험 코드를 만든 뒤 실전 코드에 바로 붙일 것이다. 하지만 Spike Solution 의 경우는 '실험은 실험에서 끝난다' 에서 다를 수 있다. 보통 Spike Solution 에서 실험한 코드들을 메인소스에 바로 적용시키지 않는다. Spike Solution은 처음 계획시 estimate의 선을 잡기 위한 것으로 메인소스에 그대로 적용될 코드는 아닌 것이다. 지우고 다시 만들어 내도록 한다. 그러함으로써 한편으로는 학습효과를 가져오고, 실전 소스의 질을 향상시킬 수 있다.
- StacksOfFlapjacks/이동현 . . . . 6 matches
해법은 일단 0~n 까지 케익 중 가장 큰 케익 바로뒤에 주걱을 꼽고 한번 뒤집어 가장 큰 케익을 맨 위에 오게한 후 다시 flip(1)로 뒤집어 가장 큰 케익이 맨 아래 n에 오게한다.
그 다음엔 0~n-1 까지 케익을 가지고 동일한 동작을 반복하고.. 이렇게 최고 n번정도만 하면 팬케익이 작은것부터 큰것까지 정렬된다.
여러줄 입력받는걸 만들기 힘들어 일단 그냥 한줄 입력받고 결과출력 하는 식으로 했다.
void flip(int n){ //n번에다가 주걱 넣고 뒤집어!
- SwitchAndCaseAsBadSmell . . . . 6 matches
그리고, 사고의 도구들을 적극적으로 활용하기 바랍니다. 스테이트 다이어그램이나, 심지어는 x,y 좌표계를 사용하는 것, 혹은 서브루틴을 통해 문제를 소문제(subproblem)로 나누는 것도 아주 훌륭한 사고의 도구가 됩니다 -- 문제의 복잡도를 낮춰주기 때문이죠.
* 텍스트화일로부터 입력자료 읽고 해석하기
사실은 이런 종적 상태로서의 프로그램이 중요한 것이 아니고, 어떻게 이런 프로그램에 도달할 수 있었는지, 그 사고와 프로그래밍의 과정이 중요합니다.
- TheWarOfGenesis2R/일지 . . . . 6 matches
* 파일을 읽고 쓸 수 있다. (Text모드도 Binary모드도 OK)
* 초기에는 Text모드로 스크립트를 만들고, 추후에 Binary모드로 스크립트를 만들 계획
* 가드의 공격 알고리즘을 간단하게 할수 있을거 같은데.. 잘 떠오르질 않는다.
* 초기화 구문의 존재를 계속 잊고 있다가 오늘 번뜩 생각이 나버렸다.
* 선호군이 인수군이 만든 전투 루틴을 그대로 갖다 쓸수 있을까 하는 의심을 품었다. 이에 발끈한 인수군, 조금 뚝딱거려서 mfc로 포팅해보았다. 잘된다. 고친거라곤 cout 이것과 명령어 파싱하는 그 부분밖에 없다. 잘된거 같다.
* 리팩토링의 위대함을 계속 느껴 버렸다. Extract Method는 기본이고, 상위 클래스로 올리기, 등등 이것저것 하니까 매우 간단해지는 것을 느꼈다.
- TwistingTheTriad . . . . 6 matches
ModelViewPresenter 관련 Article 읽고 정리.
C++ 시스템의 Taligent 로부터 유래. Dolphin Smalltalk 의 UI Framework. 논문에서는 'Widget' 과 'MVC' 대신 MVP 를 채택한 이유 등을 다룬다고 한다. 그리고 MVC 3 요소를 rotating (or twisting)함으로서 현재 존재하는 다른 Smalltalk 환경보다 쓰기 쉽고 더 유연한 'Observer' based framework 를 만들 것을 보여줄 것이다.
고 한다. -_a
- 내가 파악한 MVC 모델은 너무 얕은 지식이였나. 여태껏 그냥 Layer 단으로만 그렇게 나누어진다만 생각했지 해당 이벤트 발생시나 모델의 값 변화시 어떠한 단계로 Control 이 흘러가는지에 대해서는 구체적으로 생각해본 적이 없었던 것 같다. 화살표를 보면 Application Model -> Controller 로의 화살표가 없다. 그리고 Problem Space 의 범위도 차이가 난다.
- VMWare . . . . 6 matches
유사제품으로 [Parallels] ( [eXtremeProgramming] 으로 개발되었다고 함. Mac 버전의 경우 윈도우 환경을 거 70%~90% 퍼포먼스로 구현했다고 들었음) 가 있다.
최근에는 CPU 수준에서 가상 환경에 맞춘 명령어 셋을 지원하면서 에뮬레이팅 환경의 고속화도 가능하다.
유사기술을 적용한 Linux [Xen] 커널이 등장하기 시작했으며, Xen 은 차후 나타나게될 멀티코어 CPU 환경(플랫폼 자체가 완전히 다른)에 적합한 커널의 구축을 목표로 하고 있다고 한다. (완전히 다른 프로세서라면 당연히 해당 머신에 접근하는 인터페이스 역시도 다를텐데 XEN 을 이용해 해당 부분을 추상화시켜서 접근하는 식으로..) 현재에는 해당 기술을 보안 분야에서 이용하기 위한 연구가 진행중이며 기존의 단일 커널하의 커널모드, 유저모드 식의 구분이 아닌 관리자 커널, 애플리케이션 커널과 같은 구분으로 2개의 서로 다른 커널을 구현해 커널 단에서 애플리케이션이 머신에게 직접적으로 접근할 가능성을 원천 차단하는 방식의 연구가 되고 있다.
- Westside . . . . 6 matches
* 하고싶은거 아직 없다. 슬프다. *
* 올해 방학때는 스쿠버다이빙을 배워보고싶다. *
* 이제 시작이다. 해보고 싶은건 많지만 여건이 안된다. 차근히 만들어가자. *
== 하고싶은 것 ==
* 제로페이지, 역시 해보고 싶다. 새로운 경험을 하고 싶으나, 아직은 때가 아니다. *
- WinAPI/2011년스터디 . . . . 6 matches
* 고한종 : 내년 컴공주점에서 쓸 포스기 제작.
||이름||고한종||송치완||
* 일단 시작했다는데 의의를. 나만 신난것 같아서 조금 불안하지만 그래도 시작이라도 한게 좋다. - [고한종]
||이름||고한종||송치완||
* 윈도우 스타일 이나 옮겨 적어 놔야지.-[고한종]
* 쉬면 안되는데 쉬어 버렸다. 이러다가 격주 될것 같네.-[고한종]
- callusedHand . . . . 6 matches
* 알고리즘 공부
=== 읽고 있는 책 ===
''DeleteMe) 처음 독서 방법에 대한 책에 대해 찾아봤었을때 읽었었던 책입니다. 당연한 말을 하는 것 같지만, 옳은 말들이기 때문에 당연한 말을 하는 교과서격의 책이라 생각합니다. 범우사꺼 얇은 책이라면 1판 번역일 것이고, 2판 번역과 원서 (How To Read a Book)도 도서관에 있습니다. --석천''
=== 읽고 싶은 책 ===
''(move to somewhere appropriate plz) 논리학 개론 서적으로는 Irving Copi와 Quine의 서적들(특히 Quine의 책은 대가의 면모를 느끼게 해줍니다), Smullyan의 서적들을 권하고, 논리학에서 특히 전산학과 관련이 깊은 수리논리학 쪽으로는 Mendelson이나 Herbert Enderton의 책을 권합니다. 또, 증명에 관심이 있다면 How to Prove It을 권합니다. 대부분 ["중앙도서관"]에 있습니다. (누가 신청했을까요 :) ) --JuNe''
== 알고리즘 공부 ==
- django/RetrievingObject . . . . 6 matches
한 모델에 대해서는 여러 가지 필터를 설치할 수 있다. 필터는 SQL문에서 where절에 해당하는 역할을 한다. 필터에는 검색하는 컬럼의 완전 일치, 부분 일치, 사이 값, 포함, 연월일 옵션을 줄 수 있다. 기본적으로 필터는 AND 조합으로 이루어지며, OR조합을 사용하고 싶다면 Q라는 쿼리 오브젝트를 사용해야 한다.[9] 아래는 필터를 이용해 보고 날짜가2006년 10월 1일 이후인 위험 보고서를 찾는 python코드와 그에 해당하는 SQL문을 보여준다.
사용자는 원하는 경우 extra메서드를 이용해 원하는 컬럼을 추가한 결과를 얻을 수 있다. 다음은 2006년 1월 1일 이후 보고서를 최신으로 표시하는 컬럼을 가진 리포트 정보를 가져온다.
extra메소드를 사용하면 다음과 같은 조금 복잡한 질의도 할 수 있다. 각 직원이 몇 번이나 위험 보고서를 작성했는지 알아낸다.
사용자는 values함수를 이용해서 원하는 속성을 지정할 수 있다. 이는 검색 조건을 만족하는 레코드의 필요한 속성만을 이용하므로 효율적이다. 또한 values함수는 QuerySet을 상속한 ValuesQuerySet을 리턴하므로 다시 위에서 사용한 검색 조건을 사용할 수 있다. 하지만 ValuesQuerySet은 사전형(dictionary) 자료구조를 가지고 있기 때문에, 많은 수의 레코드를 얻어오기에는 부적절하다. 다음은 사원 정보에서 이메일 속성만을 얻어온다.
- zyint/articleTest . . . . 6 matches
태훈 : 원츄한다고는 하지만
박봉에다가 힘들다는걸 알려주고 싶은데
여러가지 아르바이트 중에서 많이들 알고는 있지만 해보지는 못한 방청 아르바이트를 직접 체험해보고
체험해 보았다 라고
DeleteMe ) 역링크 걸고 갑니다. [OrphanedPages] 가 될 것 같아서요 : ) --[창섭]
- 권형준 . . . . 6 matches
처음 개인페이지의 추천 양식입니다. 적당히 고쳐서 쓰세요.
... 키는 말하기 싫고.. 몸무게도 말하기 싫고..ㅋ 그냥 흑서커입니다..ㅋㅋ
== 하고싶은 것 ==
그냥 놀고만 싶은데...공부는해야되니ㅠㅋ
== 하고싶은 말 ==
- 금고/조현태 . . . . 6 matches
== [금고/조현태] ==
나갔다 와서 저녁먹기전에.. 풀려고 잡았는데.. 배가 고파서 본능의 힘으로 풀었음 ㅡㅡV (본능의 위대함~!!)
그런데 왜 하필 떨어지는게 금고인거지?? (맞으면 아프지 않을까??)
배고파도 음악넣어주는 센스!!
[금고]
- 데블스캠프2005/RUR-PLE/정수민 . . . . 6 matches
어쨋든 지금까지의 노력과 수고에 경의를 표하오.
그리고 여기서 재귀함수는 선을 그어서 그밑에있는건 무조건 실행해 더 낮은 줄에있어도 if이있으면 실행이 돼는 =0=;;
... 승한이형이 보셨으면 이렇게 말씀하셨을꺼닷.. 지긋지긋한년.. 자다가 일어나서 고치다닝; @0@~
뭐..나도 밤새 놀고있긴 하지만 말야..ㅎㅎ (대신 난 낮에 잔다우.. 이놈의 데블스..;;)
맵을 올려주겠소..ㅎㅎ 빨리 고치시옷~~ㅎㅎ
나도 이녀석 제귀호출이 C랑 똑같았어도 이렇게 오래걸리진않았다고 ;ㅡ;
- 문자열검색/허아영 . . . . 6 matches
프로그래밍에 있어서도 구상과 설계는 매우 중요하다고 느낀다.
==== 알고리즘 ====
그냥 알고리즘을 생각했다. 어떻게 보면 복잡한 것 같기도 하다.ㅡㅠ
이번 프로그래밍의 알고리즘.
만약에 첫 글자 부터 동일하지 않다면 비교도 하지 않고도 찾지못함을 알린다.
exist_str[num] = x_n + 1; //빈칸 다음에 문자열이 나온다고 가정.
- 새싹교실/2011/學高/8회차 . . . . 6 matches
* 컴파일은 안 해봤지만 함수 원형 선언 시 매개변수의 타입은 왜 써주지 않았는지 궁금하네요. 받을 때는 num으로 받고 쓸 때는 n으로 쓴 것도; 그리고 전역 변수를 안 써도 리턴 값을 통해 카운트 충분히 할 수 있을 것 같은데... - [김수경]
== 자기 반성 및 고칠점 ==
* 앞으로 날밤새고 새싹하지 않겠다. 술먹고 취해서 새싹하는 느낌이었다.
== 자기 반성 및 고칠점 ==
- 새싹교실/2012/아우토반/앞반/5.10 . . . . 6 matches
다음 진도 예고
2. 다음 소스 코드를 실행하고 결과를 확인, 이유를 분석해오시오
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
위에 *p=&a에서 변수 p는 a의 주소 값을 가르키고 *p는 a의 주소안에 있는 값을 나타내므로
네번째 printf함수에서 변수 *p의 값은 0 이고
- 새싹교실/2013/록구록구/3회차 . . . . 6 matches
''' 뭔 말이지? 라고 하는 당신을 위한 설명 '''
(깨달은점)강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.
(앞으로의 계획)다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.
여러 조건문과 while문을 배우고 나니 내가 이전까지 했던 방법보다 훨씬 간편하고 빨리되었다.
이제 좀 고급스러운걸 쓸 수 있을거 같아서 신났다.
- 수/구구단출력 . . . . 6 matches
printf("알고싶은 구구단단계를 쳐주세요.");
변수명은 가능하면 a,b 나 i,j 같이 이름만 보고 무슨 의미인지 알기 힘들게 짓기 보다는 조금 더 길어지더라도 이름만 보고 이게 무슨 역할을 하는 변수명이구나 하고 알수 있게 짓는 버릇을 들이는게 좋다. 주석이 필요 없을 정도로 변수명 함수명만 보고 이게 무슨 일을 하는 변수, 함수 이다라고 알수 있게 하면 더 더욱 좋다. - [상협]
- 수업평가 . . . . 6 matches
물론 해에 따라 교수가 바뀌고, 교재가 바뀌고 강의의 내용이 조금씩 다를 수 있다. 여기서는 특정 수업을 평가한다기보다, 중앙대학교 컴퓨터 공학과의 일반적 교육 수준과 학생들의 과목별 중요도에 대한 생각을 평균해 보는 데에서 의미를 찾고자 한다.
*영향 : 이 과목이 나의 '''사고'''에 얼마나 많은 영향을 끼쳤나
*수업의 질 : 수업이 얼마나 알찼고, 교수법, 교재선택, 그룹활동 등에 대한 지도 등이 잘 이루어졌나
(주: "수업의 질"은 안좋았어도 혼자 독학을 했다면 "영향"은 높을 수 있고 그 반대도 가능.)
- 숫자를한글로바꾸기/김태훈zyint . . . . 6 matches
C++로 해볼라고 했으나; 너무많은 에러로 좌절하고 걍 씨로 했다..
스위치문 압박이얌..;;ㅁ;; 이게 모햐~~>ㅃ<;;; ㅎㅎ 그거 빼고는 다 이쁘넹!~헤...ㅎ 그런데 말야.^^ 수민이꺼나 네꺼 0넣으면 답이 안나오쟈넝..;;ㅁ;; 0이 불쌍해..ㅠ.ㅜ ㅎㅎㅎ 그거빼고는 다 잘해떵..ㅎㅎ 나도 쓰잘때기없는 그 클래스 뺄껄.ㅎ 괜히 넣었어..편하게 짤려다가 더 복잡해 보이는걸~ㅎ ㅎㅎㅎ 그럼 좋은하루~~>ㅁ<;; - 현태
글게말이다 ㅠㅠ 내가 왜 저리 해두었는지 나두 쫌 뻘쭘하다 ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 걍 배열로 저리 해두면 됐는데.. 음 글고보니 영만 땡 치면 아무것도 안나오겠구나 ㅠㅠ
나두 언넝 클래스 배워서 소스 좀 깔쌈하게 짜고 싶은데 아직 안배워서 ㅠㅠ - zyint
- 아주오래된농담 . . . . 6 matches
홀어머니 밑에서 두 아들과 늦둥이 막내 여동생이 자란다. 큰아들은 법대, 작은 아들은 의대에 다니며 밝은 미래가 보이는 듯 싶다. 하지만 큰아들은 미국가고, 작은 아들은 한국에 남아 가족을 챙긴다. 이제는 흔한 이야기인 고부갈등, 불륜, 재산문제, 말기암 따위 이야기가 쉴틈 없이 이어진다.
마음이 불편하다. 사람이 사람을 속이기가 얼마나 쉬운지 생각해본다. 자기한테 이익이 되니까, 재미로 남을 골탕먹이려고 속이기는 물론이고 자기 딴에는 배려한다고, 사랑하기 때문에 속인다. 남을 속이고, 나까지 속인다. 위선자가 되기 싫으면 최소한 나는 속이지 말아야지.
- 얼굴빨개지는아이 . . . . 6 matches
아무리 천천히 읽어도 한 시간이면 읽을 수 있는 분량인데, 절대 감동이 덜하거나 내용이 빈약하지 않다. 마르슬랭 까이유와 르네 라토는 친구다. 갑작스레 라토가 이사간 이후, 커서 다시 만난다. 그리고 행복한 우정을 이어나간다.
''사람들은 우연히 한 친구를 만나고, 매우 기뻐하며, 몇가지 계획들도 세운다. 그러고는, 다신 만나지 못한다. 왜나하면 시간이 없기 때문이고, 일이 너무 많기 때문이며, 서로 너무 멀리 떨어져 살기 때문이다. 혹은 다른 수많은 이유들로.''
''하지만 그들은 여전히 아무것도 하지 않고 아무 얘기도 하지 않고 있을 수 있었다. 왜냐하면 그들은 함께 있으면서 결코 지루해 하지 않았으니까''
- 여사모 . . . . 6 matches
* 다음 스터디 일정 - 6월 4일 금요일 7시 7피(회의끝나고)
게 strlen()함수야. 문자열을 초기화할 때에는 예를 들어 char * arr = "ABCDE"; 라고 하면 arr[5]에는 자동
때문에 이상한 값이 출력되는 거지. cout << a; 라고 해보면 이상한 문자들이 출력되는게 보일꺼야. 7,8을 입력
했을때 23이 나오는 것은 포인터 a가 가리키고 있는 주소+23에 NULL문자가 들어 있다는 뜻이지.
- 아, 그리고 new연산자는 char[b]가 저장될 만큼의 메모리를 확보해서 그 주소를 포인터a에 넘겨주는 거지
- 앞에 *을 찍으면 값을 참조하고 그냥 쓰면 주소를 가리키지 --;
- 위시리스트 . . . . 6 matches
* 처음 작성하시는 분들은 아래 '지난 신청'을 참고하세요.
* 제로페이지 회원들이 학술 활동 중 필요하다고 생각되는 물품에 대해서 신청하면 제로페이지에서 지원해 주는 제도입니다.
* 2: 나는 쓸거같긴한데 다른 사람들이 쓸지는 몰르겠고..
* 비싸지 않은 안드로이드(iOS) 공기계 : 폰 잃어버릴때 대용으로 쓰라는건 아니고..(하루이틀은 그럴수도있겠지만) 개발용 - [김태진]
* 소파 커버 : 흰색소파 좀 더러운듯함.. 우리 잘 닦지도 않고. 커버라도 하나 씌우면 어떨까. - [김태진]
* 서적같은 경우는 회원 개개인의 관심분야에 따라 수요가 달라질 수 있으니 서적을 신청할 때 해당 서적의 수요 조사를 하고 수요가 높은 순서대로 신청하는 것도 좋을 것 같습니다 - [장혁재]
- 이차함수그리기/조현태 . . . . 6 matches
잠온다.. 졸고 한줄작성하고,, 뭐작성했는지 까먹고.. 위에보고..다시한줄 작성하고..
원래 모습을 보고싶으면 TAB_Y의 값을 1로 해주면 됨.
- 장용운 . . . . 6 matches
알고리즘
=== 배우고 있는 것 ===
=== 배우고 싶은 것 ===
은 배우고 있다
== 사건, 사고 ==
*API랑 PHP 배우면 좋음? 프로그래밍하는데 둘러보니까 이거 두개 코드 무지 짧은데 뭔가 대단하던데 ;;;; - [고한종]
- 정규표현식/스터디/문자하나찾기/예제 . . . . 6 matches
1. t.*\.txt : t로 시작 .* 0개 이상의 문자 문자 \.txt '.'을 이스케이프 시켜 보통 문자로 만듬 그리고 txt랑 붙어있음
2. 140[0-9] : 140이 앞에 붙어있고 뒤에 마지막 한글자는 0에서 9밖에 못나온다
3. 13[0-9][0-9] : 13이 앞에 붙어있고 뒤에 두글자는 0~9밖에 못나옴
4. .p.*13[0-9][0-9] : 첫번째는 아무거나 '.'그다음 두번재 p 그리고 뒤에는 아무거나.* 그리고 13[0-9][0-9]
라고 입력하면 몇개의 항목이 나올까요? (-_-)?
- 정모/2002.5.2 . . . . 6 matches
* 위키 FrontPage 관련 - 학기중에는 Project 단위에 대해 일의 처리가 어렵습니다. 이에 따른 FrontPage 학기모드용으로 전환을 할까 합니다. 그리고 그에 따른 위키 정리 관련. -- 석천
* 손혜연 : 어제 저녁 집에 오는길에 버스안에서 사고를 당해서. 허리부상으로 오늘 아무데도 나가지 않고 누워있었습니다. 죄송합니다.
* 이병희 : 수업 끝나고 잠시 눈을 붙였는데..일어나보니 10시 가까이..ㅠㅠ 죄송합니다~
하지만 새로 사용하게된 위키가 기존의 컬럼 게시판이 하던 일을 더 멋지게 해내고 있습니다.
이에, 옮길만한 글은 옮기고 컬럼 게시판을 삭제했으면 합니다. --이선우
- 졸업논문 . . . . 6 matches
* [졸업논문/본론] - 내용을 보충하고 나눌 것
* [졸업논문/참고문헌] - 참고 문헌의 열거 순서는 인용한 순서 혹은 첫 번째 저자의 이름의 사전순으로
* 참고 문헌을 인용할 시에는 해당 참고 문헌의 번호를 꺾쇠 괄호(bracket)안에 명시한다. (예: [1])
* 웹 이외의 자료도 찾아서 참고한다.
- 좋은위키페이지 . . . . 6 matches
["데기"]는 생각과 느낌을 나누는(곱하기까지 하면 더 좋고...) 페이지가 좋다. ["Python"] 페이지에서 파이썬 학습을 위한 로드맵만을 만나는 것보다 "내가 어제 말로만 듣던 파이썬을 써서 구구단을 짰는데 너무 쉽고 재밌어서 감동이더라."와 같은 경험을 나누는게 더 반가울것 같다. --["데기"]
["상민"] 이도 ["데기"] 가 말하는 부분들이 아쉽다. 그러한 느낌을 기록하고, 그것을 공유하는 것이 위키의 순기능중 하나라고 생각한다. 하지만, 그런 모습이 ZeroWiki에 부족한 이유가 느낌을 기록하기 위해 글을 쓰는 '''용기'''가 부족하기 때문이라고 생각한다. ZeroWiki에서는 경험과 느낌이 표현되는 곳은 프로젝트 페이지의 '''여정'''이나 '''느낌''' 기록하는 부분이나 이벤트의 '''후기''' 같은 부분이 주가 되고 있다. --["상민"]
- 지금그때 . . . . 6 matches
* 지금그때는 단지 고학년이 저학년에게 경험을 나누어주는 정도의 행사는 아니라고 생각합니다. 마치 개구리 올챙이적 시절 기억못하듯이, 그때 궁금해 했지만 지금은 왜 궁금했는지 조차 모르는 그런것, 지금과 다르게 생각했던 그시절 기억들. 그런것을 고학년도 경험을 할 수 있는 기회되지 않을까요?? 때로는 우리가 조언해 주고 있는 사람들이 가지고 있는 신선한 질문들은 자신을 자신의 일을 한번 더 돌아볼수 있게 만드는 기회를 주기도 하지 않나요?? - 이승한
SeeAlso 컨셉 [지금알고있는걸그때도알았더라면], [도덕경]
- 지금그때2006/질문레스토랑 . . . . 6 matches
* 이창섭 - 영어를 더 평소에 해두는 것도 좋고, 방학중에 못했던 것들을 해보는 것도 좋다.
* 설윤창 - 알고리즘. 수학을 좋아하기 때문에..
* 설윤창 - '뉴턴의 일생'이라는 책. 데카르트의 책등.. 여러가지 고서.
* 이창섭 - 감정은 한순간이니까 휘둘리지 말라고 했던 친구..
* 강희섭 - 사람을 대할때 자기보다 어리다고 생각하지 말라고 했던 것.
- 최소정수의합 . . . . 6 matches
- 이거.. 꼭 이 조건을 만족해야만 하는건지.. 루프를 사용하면 꼭 while 이나 do .. while 을..? for 는 안되고요..? 그럼 for loop 가 없는 언어로는.. 못푸는건가.. -_-. 글고 루프를 쓰지 않으면 안되는건가요..? ^^; - [아무개]
- 문제가 그렇습니다. 처리조건은 HINT라기 보다는 그 말 대로, 처리하기 위한 조건이라서 문제의 하위 조건이라고도 볼 수 있습니다.
구지 for을 쓰고 싶으시다면 쓰셔도 됩니다 ^^
- loop를 쓰는 방법 말고 부등식을 사용하는게 젤 간단할것 같아서 그렇게 했는데, 문제에서 제시된 조건을 반드시 만족해야 하는가 해서요 ㅠㅠ - 임인택
정정합니다. n은 78 이 아니고 77 이어야합니다. 이것땜메 괜히 헷갈렸습니다. -_- 임인택
- 타도코코아CppStudy/0804 . . . . 6 matches
* 대근이 말고는 스터디 할 생각이 없는것 같군요. 쫑낼까요? 내일 결정하겠습니다. 처음의 그 의욕적인 모습들은 다 어디로 갔나요? 제가 괜히 공부하기 싫은 사람들 붙들어 놓고 공부시키는건 아니죠? 아닐거라고 믿습니다. --[인수]
* 숙제가 조금 어려운 면도 있어요..^^ 후배님들!! 대학생활은 모든지 선택이랍니다..^^ 인수행님, 어제 밤샜고 오늘 폐인의 모습으로 찾아뵙죠..ㅎ ㅔㅎ ㅔ^^ --[CherryBoy]
* 충분히 쉬운 것도 있다고 생각한다. 내가 보기엔 하려는 노력도 안한거 같다. 그게 아니라면 하다 만거라도 가지고 와바라.--[인수]
- 탈무드 . . . . 6 matches
* 언제든지 이보다 더한 불행이 있다고 생각하라.
* 이미 해버린 일을 후회하기 보다는 꼭 하고 싶었는데 하지 못한 쪽을 후회 하라.
* 노예도 현재의 상태에 만족하고 있으면 자유로운 사람이며 자유인도 현재의 상태에 만족하고 있지 않으면 노예가 된다.
* 아무리 길고 훌륭한 쇠사슬이라도 고리 하나가 망가지면 못 쓰게 된다.
- 파스칼삼각형/김준석 . . . . 6 matches
에.. 우선 무식하게 배열을 선언하고 했네..
전체출력 하려고 할려고하는데 어떻게 해야할까;;?
졸렵다 지금 1시 11분이다 누군 술마시고 있는데 난 컴 앞에 앉아서 조는구나.
자고 업그레이드 해야지 배끼는것 같지만[..]
== 저에게 하고 싶은 말 ==
- 프로그래밍/장보기 . . . . 6 matches
타이머를 켜놓고 시간을 우선시하다보니 역시 Refactoring을 하고 싶지 않았다. 요구사항을 읽고 감이 팍 오는 문제는 그냥 막 코딩하는 식이다. main에 확 집어 넣고 풀어도 그냥 풀린 문제를 굳이 메소드로 나누고 여러 군데에서 사용되는 변수를 필드화하는 것이 정말 귀찮았다. 하지만 그러한 방식으로 전환하고 습관화하는 능력을 키워야 겠다.
- 헝가리안표기법 . . . . 6 matches
그러나 실제로 현장에서 일하다 보면 헝가리안 표기법을 제대로 지키는 개발자는 그리 많지 않다. 어느정도 개발경험을 가지고 있는 프로그래머는 물론 심지어 시중의 프로그래밍 서적에서 조차 저자마다 변수명을 개인에 따라 가지각색으로 짓고 있어서 처음 프로그램을 배우는 입문자들들이 변수 명명에 대한 기준을 제대로 잡지 못하고 있는 실정이다.
솔직히 필자도 얼마전까지 이런 변수 명명에 대한 관례를 잘 지키지 않았다. 그러나 변수 명명에 관한 표준화된 관례를 지켜주면 코드의 가독성을 높여줄 뿐 아니라 예를 들어 카운터 변수를 count라고 지을지 cnt라고 지을지 고민하지 않아도 되는 편리함을 누릴 수 있다. - [http://dasomnetwork.com/~leedw/mywiki/moin.cgi/_c7_eb_b0_a1_b8_ae_be_c8_20_c7_a5_b1_e2_b9_fd?action=edit 출처]
- 황재선 . . . . 6 matches
* 숙제의 압박에서 벗어나 프로젝트 진행하고 싶구나.
== 하고 싶은 말 ==
* 어제 만나서 반가웠어 ^^ 위키 재밌으니 자주 업데이트하고 놀자~~ -- [황재선]
특정 column 길이가 짧아서 고민하고 있었는데 감사합니다.^^ 링크를 보고 힌트를 얻어 table 전체 사이즈를 변경하는 방법을 찾았습니다. 문제 해결해서 기쁘네요 :)
- 회비 . . . . 6 matches
|| 98,000 원 || - 20,000 원 || 2005/3/15 || 제로페이지 로고 공모전 상금(강희경) ||
오늘 학과장님이신 최광남 교수님(실습실관리는 박재화교수님 이라더군요)과 이야기 하고 왔습니다. 지급 총액이 삭감되었다 하시더군요. 동네팀, ZP, Jstorm, netory 모두 49만원씩이라고 이야기 해주셨슴돠. 만원이 깍이긴 했지만 선방했죠 모. ㅋㅋㅋ - 이승한
마이너스군요...근데 왜 5만원이나 쓰인거죠? 준비물 구입비 10000원을 휘동이한테 주고 간식은 3만원 어치 사기로 한 것 같은데요. -[강희경]
급기야 회비 통장이 마이너스가 났군요. 저번에 위키설명회 2005에서 남은 만원을 넣어야 넣어야 한다는 생각을 했었는데;; 요새 극심한 생활고에;; 내일은 채워 넣어야 겠네요. 휘동형한테 만원도 갚고요 ㅠ.ㅠ - 이승한
- 희경/엘레베이터 . . . . 6 matches
cout << "지금 현재 " << floor << "층에 있고" << endl
<< in << "명이 타고 " << out << "명이 내려서" << endl
cout << "지금 현재 " << temp << "층을 지나고 있습니다" << endl
cout << "지금 현재 " << temp << "층을 지나고 있습니다" << endl
cout << "지금 현재 " << floor << "층에 있고" << endl
<< in << "명이 타고 " << out << "명이 내려서" << endl
- 01학번모임 . . . . 5 matches
01 학번들의 협력을 통해 제로페이지 내에서 모범적인 고학번의 모델을 제시하기 위해 앞으로도 지난 2006년 3월 10일의 모임과 같은 자리를 꾸준히 가지면 좋을것 같다는 생각이 드는데...
그러면서 자기가 바쁘다면서 안나올려고~~ㅋㅋ - 상섭
모범적인 고학생이라... 왠지 서글픈데..ㅋㄷㅋㄷ
한달에 한번 정도는 부담도 없고 말야~~ - 준수
-_-그정도야 뭐.... 서로 이야기도 하고 좋지.. - 선호
- 05학번만의C++Study/숙제제출/1 . . . . 5 matches
숙제1/허아영 <<- 글쓰기를 눌러서 이런 식으로 페이지를 만드시고 거기에 자신의 소스를 올리시면 됩니다.
=> 숙제 페이지는 프로젝트 페이지의 하위 페이지에 만드시기 바랍니다. 여러 프로젝트가 존재하고 그것을 기록, 보존, 관리 차원에서 05학번만의C++Study/숙제1/허아영 와 같은 식으로 프로젝트의 하위 페이지로 만들기 바랍니다. -- 재선
섭씨 온도를 전달인자로 전달받아 화씨 온도로 환산하여 리턴하는 사용자 정의 함수를 main() 함수가 호출하는 프로그램을 작성하시오. 프로그램은 섭씨 온도로 입력할 것을 요구해야 하고, 다음과 같은 실행 결과를 출력해야 한다. 참고로, 섭씨 온도를 화씨 온도로 변환하는 공식은 Fahrenheit = 1.8 X Celsius + 32.0 이다.
섭씨 온도를 입력하고 Enter 키를 누르십시오 : 20
- 2002년도ACM문제샘플풀이 . . . . 5 matches
* [http://cs.kaist.ac.kr/~acmicpc/problem.html 2002년도 문제 샘플] 풀이입니다. ["신재동"]과 ["상규"]가 '개발 시간 최소화' 라는 문제 때문에 시작부터 TDD와 Refactoring 그리고 OOP를 버렸습니다. 그래서 중복도 심하고 남에게 보여주기 정말 부끄럽지만... 용기내서 올립니다. 리펙토링 후에 변한 모습을 다시 올리도록 하겠습니다.
''부끄러워할 필요가 없다. 촉박한 시간에 쫓겼다고는 하나, 결국 정해진 시간 내에 모두 풀은 셈이니 오히려 자랑스러워 해야 할지도 모르겠다. 아마 네 후배들은 이런 배우려는 태도에서 더 많은 걸 느끼지 않을까 싶다. 이걸 리팩토링 해서 다시 올리는 것도 좋겠고, 내 생각엔 아예 새로 해서(DoItAgainToLearn) 올려보는 것도 좋겠다. 이번에는 테스트 코드를 만들고 리팩토링도 해가면서 처음 문제 풀었던 때보다 더 짧은 시간 내에 가능하게 해보면 어떨까? 이미 풀어본 문제이니 좀 더 편하게 할 수 있을 것 같지 않니? --JuNe''
- 2005리눅스프로젝트<설치> . . . . 5 matches
* 데비안을 사용할려고 했지만 경험부족 때문에 X-WINDOW를 설치를 못해서 다른 버전중에 레드핫 계열인 Fedora core4를 선택했습니다. 레드핫,데비안,Fedora 설치 해서 이 버전이 제일 갠찮은 것같아서 이걸로 사용하기로 결정을 했습니다.
* 만약 하드가 모자르던지 윈도우에서 리눅스를 돌리고자 하시는 분은 위 VMware을 사용하시기 바랍니다.
* 저도 데비안을 사용하고 싶은데 그 x-window 깔줄몰라서 이러는 중입니다...ㅜㅜ
* 데비안 밀었다가 다시 설치하고 싶은데.. 그나저나 이번주 월요일은 스터디 쉬는거지?? 학교도 안가는데..그렇담 여유가 좀 있군... 아님 낭패..ㅋㅋ [[BR]]그리고 질문!! Fedora로 통일해야하는거야?? 아님 Fedora 를 중심으로 돈다는건가? ...<< 그게 그말인가?? 요즘언어의 장벽을 느끼는 형노.;;;;;; [(laciel)형노]
- 2006년4학년1학기수업 . . . . 5 matches
서울 32732 - 01 고급프로그래밍실습(1) 컴퓨터공학부 전공 봅스트홀 컴퓨터공학과실습실3(월9,10,11,12)
고급프로그래밍실습(1) 들을듯.
재선아 형인데 프로그래밍실습(1) 요고 들으믄 안댈까?
일단 신청해 놓으세요. 구피에서 수업하면 20명 정원이니 나중에 신청하기 힘들어요. 교수님이나 조교에 따라 스타일이 다르니 수업을 어떤 식으로 진행할지는 모르겠네요. 저는 고급(1)신청할래요~ -- 재선
2학점짜리 전공하나 들어야대고 하나는 자유선택으로 OCU
- 2ndPCinCAUCSE/ProblemB . . . . 5 matches
우리 나라는 가족 혹은 친척들 사이의 관계를 촌수라는 단위로 표현하는 문화를 가지고 있다. 이러한 촌수는 다음과 같은 방식으로 계산된다. 기본적으로 부모와 자식 사이를 1촌으로 정의하고 이로부터 사람들 간의 촌수를 계산한다. 예를 들면 나와 아버지, 아버지와 할아버지는 각각 1촌이므로 나와 할아버지는 2촌이 되고, 아버지 형제들과 할아버지는 1촌이므로 나와 아버지 형제들과는 3촌이 된다. 여러 사람들에 대한 부모 자식들 간의 관계가 주어졌을 때, 주어진 두 사람의 촌수를 계산하는 프로그램을 작성하시오.
입력은 표준 입력이다. 입력의 첫줄에 테스트 케이스의 개수를 나타내는 정수 T(10 이하)가 주어진다. 다음 줄 부터 T개의 테스트 케이스가 주어진다. 테스트 케이스에서 사람들은 1,2,3,...,n (1<=n<=100)의 연속된 번호로 각각 표시된다. 테스트케이스의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야하는 서로 다른 두 사람의 번호가 주어진다. 그리고 셋째 줄에는 입력할 부모-자식 관계의 개수 m이 주어진다. 넷째 줄부터 m개의 줄에는 부모-자식 관계를 나타내는 두 번호 x y 가 나온다. 이 때 앞에 나오는 번호 x 는 뒤에 나오는 정수 y의 부모 번호를 나타낸다.
- 3 N+1 Problem/조동영 . . . . 5 matches
ㅠㅠ 안배꼈는데... 하고나서보니 희경이형꺼랑 똑같네요... 음.. 1과 1000000입력하면 답이 안나오고요...
흔히 생각하는 알고리즘은 다들 비슷해서 소스가 비슷한 경우가 많어. 그걸 더욱 더 향상 시키려는 노력이 필요하지. 요즘 다른 알고리즘을 생각하려고 노력 중인데 잘 안떠오르네 ㅋ --[강희경]
- ACM_ICPC . . . . 5 matches
* 알고리즘 공부
* 올해부터 시상을 학교 순위가 아닌 본선 순위로 진행된다고 합니다. ~~수상권을 멀고 힘든 것~~
* 작년과 비슷하게 진행된다고 보시면 될 것 같습니다.
* 장소 : 킨텍스 제2전시장 4층 회의장 ~~서울 리저널인데 왜 고양에서..~~
- AI오목컨테스트2005 . . . . 5 matches
* 각자 오목 AI를 짜서 대결 하는 이벤트.. 이번에도 우승하는 사람에게 책 한권 주겠음.(물론 난 빼고.)
* 1학년에게는 좀 무리였나 보다. 왠만하면 1학년 프로젝트로는 적절하지 않은것 같다. 다시는 1학년 프로젝트로 안하는게 좋을것 같다. 프로젝트 선택을 잘못한것 같다. 어떻게 생각하면 3학년 AI 팀플이 오목과 비슷한 오델로 AI 짜는건데 일학년에게 짜라고 한것은 좀 오바였나 보다. 이 프로젝트에서 결과물을 만들지 못한 회원들도 좌절은 하지 말고 열심히들 해 나가길~ - [(namsang)]
= 참고 페이지 =
아마도 파이선으로 저번에 짜려고 하는거 같던데... 5월에 구상하던 일이 방학에.. ^^;; - [eternalbleu]
- Applet포함HTML/영동 . . . . 5 matches
음... 계정에 올린 다음 링크를 시켰는데 이상하게 안 되네요. 경로도 맞고 권한도 문제 없을텐데...
또 위의 두개가 안 되길래 친구의 컴내꺼 계정을 조금 빌려 올려봤는데, 접근이 거부되었다고 나오네요.
즉, 영동군의 계정에서 ~/public_html 을 만들고 test.txt 란 파일을 넣으면, 외부에서는 http://zeropage.org/~rimyd/test.txt
DeleteMe 한가지 지적하고 싶은데요. jre 의 버전이 낮은것으로 applet 링크가 세팅되어 있어서, 최신 버전의 jre의 pc라도 jre 1.4.0_03 을 설치하려고 하는군요.
- BeeMaja/고준영 . . . . 5 matches
마음에 들지 않는다. 아무런 계획없이 무턱데고 코딩부터 했더니 이래저래 지저분게 되었다.
아무래도 나말고 다른사람은 절대로 알아볼수 없을듯.. --;;;;;;
for (row=0; CAL(row) < willy; row++)에서 매번 for문이 돌때마다 CAL(row)로 계산하지 말고 미리 계산된 값을 변수에 저장해놓고 비교하는게 더 좋을듯. - 고준영
- C++Study_2003 . . . . 5 matches
* 여러가지 방법이 있겠지만... 이번엔 담임이 주로 가르치는 방법이 아닌 학생이 중심이 되어 공부하고 발표하는식은 어떨까요? 처음 몇번은 담임이 세미나를 하는 식으로 하고.. 다음부터는 학생이 주제별로 준비를 해서 발표하고.. 부족한 부분은 담임에 채워주는 방식.. --[상규]
* 한다고 해놓고 알바 때문에 못 할 가능성이 크네요 ㅡㅡㅋ
- C++스터디_2005여름/학점계산프로그램/정수민 . . . . 5 matches
cout << "학고 명단\n";
나는 C++같은거 안배워서 모르겠다모~@0@ 검은건 글이고 흰건 배경이얌~>ㅃ<;;
모르긴 몰라도 이정도면 잘한고 같운데..ㅎ 숫자를 앞에 상수로 선언하면 더욱더 좋겠지만...ㅎ 구래두 잘해떵~>ㅁ<:;
헤헤헤.. 개강하고 우리 수사마(엥;;) 에게 배워야 겠눈뎅..ㅎ
구럼 개강하고 봐~~ 뱌뱌~'ㅇ')/ - [조현태]
- CanvasBreaker . . . . 5 matches
1. BMP파일 읽고 저장하는 기능
* 유사연산자, 차연산자, embossing, Median Filtering, 영상 질 향상 그리고 나머지 - 3시간
첫 회의를 하였다. 간단하게 팀 이름과 관련된 이야기를 하였고 앞으로의 일정에 대해서 이야기 하였다.
역시 자신의 필기가 아닌 남의 필기를 참조하려니.. 약간 힘들다. 그리고.. 1차그래프의 방정식을 잊고 살았다니.. 너무한것 같다는 생각이 --["snowflower"]
- CollectionParameter . . . . 5 matches
ComposedMethod의 단점중 하나는, 작은 메소드들 사이의 연관때문이다. 큰 메소드 하나에서 공유되었던 임시 변수들이, 이제는 작은 메소드들 사이에 공유된다. 가장 해결하기 쉬운 방법은 ComposedMethod를 없애고 다시 하나의 큰 메소드에 다 때려넣는 것이지만, 안좋다. 또 다른 해결책으로는 이 작은 메소드들 사이에서 공유되는 임시 변수를 멤버변수에 넣는 것이다. 이것은 객체의 생명기간 동안 유효한게 아니라, 저 메소드들이 실행될때에만 유효하다. 역시 안좋다.
return marriedMen() + unmarriedMen(); // 될지 안될지는 모르겠지만 된다고 가정하자.
콜렉션을 리턴하지 말고 각각을 콜렉션에 더하자.
즉, 두 메소드의 결과를 모으는 경우인데, 그리 흔한 경우는 아니였던걸로 기억. 약간은 다르긴 하지만 나의 경우 CollectionParameter 의 성격으로 필요한 경우가 read/write 등 I/O 가 내부적으로 필요할때 또는 Serialization 등의 일이 필요할때. 그 경우 I/O 부분은 Stream 클래스로 만들고(C++ 의 Stream 을 쓰던지 또는 직접 Stream 클래스 만들어 쓰던지) parameter 로 넘겨주고 그 파라메터의 메소드를 사용하는 형태였음. --[1002]
- ConstructorMethod . . . . 5 matches
한가지 예로 위의 것을 고쳐보자.
''DesignPatterns 로 이야기한다면 일종의 FactoryMethod 임.(완전히 매치되는건 아니고, 어느정도 비슷) 비교적 자주 사용되는 패턴인데, 왜냐하면 객체를 생성하고 각각 임의로 셋팅해주는 일을 생성자 오버로딩을 더하지 않고서도 할 수 있으니까.
ps. 스몰토크에서는 오버로딩이 없는 걸로 알고 있음. --[1002]''
- CppStudy_2002_1/과제1/Yggdrasil . . . . 5 matches
//testing의 복사본을 보관할 공간을 할당하고
하고
//testing을 새 블록에 복사하고
//이름이 입력되면 1을 리턴하고, 이름이 빈 문자열이면 0을 리턴한다
cout<<"\n바꾸고 싶은 이름을 입력하시오: ";
- C언어정복/3월30일-숙제 . . . . 5 matches
1. 인치(inch) 단위를 센티미터 단위로 변환하는 프로그램을 사용자에게 입력을 받고, 계산된 값을 출력하라. (1in = 2.54cm)
1. 나는 3000원을 가지고 있습니다.
2. 나는 6000원을 가지고 있습니다.
3. 나는 9000원을 가지고 있습니다.
(if문은 아직 안 배웠으므로 책을 참고)
- DNS와BIND . . . . 5 matches
=> (책에는 BIND 버전 4와 BIND 버전 8 모두 설명하고 있는데 버전 8만 정리하겠음)
이 네임서버가 이 영역의 데이터에 대한 최고의 정보 제공처라는 것을 의미
(db 파일들은 /usr/local/named에 존재한다고 가정)
와우~ 수고하십니다. 이후에 유용한 자료가 될듯.. ^^ - [임인택]
그냥 필요한거 일부분만 정리했구요. DNS개념이나 고급적인 부분은 직접 책을 보시는게 좋을거에요 ^^ --[곽세환]
- DesignPatternsAsAPathToConceptualIntegrity . . . . 5 matches
디자인패턴의 조직에 대한 우리의 토론중 디자인 패턴의 '자연적인 생성' 을 정의하기 어렵다는 의견이 있었다.만일 우리가 어떻게 디자인 프로세스에서 디자인 패턴들이 이용되는지 이해한다면, 그리고 패턴들의 조직화가 멀리 숨어있지 않다면, 이는 정의를 위한 좋은 프로퍼티가 될 것이다. 크리스토퍼 알렉산더(Alexander) 는 디자인 패턴의 자연적 생성은 이득이 되는 요소중 하나임을 강조했다. 소프트웨어의 관점의 업무 내에서 자연적인 생성은 실패한것 처럼 보이며, 디자인 패턴을 이용하는 더 일반적인 접근 방법은 다음과 같은 식으로 묘사된다. "xyz 문제에 대해 직면하게 되었을때.. 해결책은.." 혹자는 소프트웨어계에서 더 디자인패턴의 편의주의적인 적용은 디자인패턴의 생성적인 이용보다 유용하다고 말할지도 모른다.
하나의 어프로치는 정의, 가장 최우선의 중요한 특질을 상승시킨다. (어뎁터빌리티나 변화에 대한 분리) 그리고 이 퀄리티들들을 디자인 프로세스의 설립의 용도로 이용할 수 있다. 만일 이 최우선의 특징이 프로세스의 목적이나 구체적 디자인 분류의 하나라면 아마 'many'는 같은 개념적 완전성을 "약간의 좋은 감정"으로서 적시에 프로덕트를 ..
저자에 의하면, 오직 RDD 와 EDD 가 OO 디자인 대한 명확한 룰을 가지고 있으며 그러므로 이들은 설득력있는 OO 디자인 방법들이다.
J2EE 는 1차적인 모듈화 원리를 가지고 있는가?
- DevelopmentinWindows . . . . 5 matches
(앞으로 Windows 서브시스템 기반의 프로그래밍을 윈도우즈 프로그래밍이라고 하겠다.)
* 프로그램이 순차적으로 실행되지 않고 메시지 발생에 따라 실행이 되는 방식
* 하드웨어를 신경쓰지 않고 프로그래밍 할 수 있다.
* 일반적으로 "동사 + 목적어" 또는 "동사 + 보어" 로 만들고 각 단어의 첫글자는 대문자로 나머지는 소문자로 쓴다.
=== 참고자료 ===
- DirectVariableAccess . . . . 5 matches
인스턴스 변수의 값을 어떻게 얻어오고 어떻게 셋팅해주는가?
스몰토크 진영에서는 IndirectVariableAccess를 선호했다. 그러다가 켄트아저씨가 DirectVariableAccess를 써 보고는 그것의 가독성에 놀랐다.
아래는 한번 보고 '음. 메세지 x를 보내는군' 하고 잠깐 생각해야 하지만,
와드 아저씨의 말로는, '클래스에 아주 적은 양의 메소드만 존재한다면, getter/setter를 추가하는 것만으로도 메소드의 수가 두배가 되어버린다. 이는 전혀 사용되지 않을 유연성을 위해 쓸데없이 갯수를 늘린 것이다.' 라고 한다.
- EightQueenProblem2 . . . . 5 matches
''"소스수정 없음"은 잘 이해가 되지 않습니다. 첫번째와 두번째의 요구사항, 즉 기대하는 결과가 다르다는 점을 생각할 때 프로그램이 조금이라도 달라져야 합니다. 분명 처음에는 모든 해를 구하라는 요구조건이 없었는데 그렇게 했다면 당시로서는 그건 YAGNI(You Aren't Gonna Need It)이거나 혹은 고객이 원하지 않는 프로그램 아닐까요?''
처음 문제에 '모든 해를 구해서는 안된다' 라는 말도 없고, '모든 해를 구하라' 라는 말도 없는데.. 제가 문제 이해를 잘못한건가요..? 지적해 주셔서 감사합니다 - 임인택
만약 이 모든 것을 완료했고, 뭔가 더 도전할 것을 찾는다면, N-Queens Problem을 풀면 됩니다. (요구사항의 또 다른 변화! :( ) NXN 체스판에서 N개의 여왕을 배치하는 프로그램이 되도록 수정하는 겁니다.
저의 경우가 그렇지요..ㅡㅡ 소스를 어케 만들었길래 고치는데.. 헤매는지.. 쿨럭.. --선호.
이러한 변형 N-Queen 문제는 어떻습니까? http://eunjae85.new21.org/problem11/problem11.htm 입력값은 n과 h이고, 한 퀸이 h개까지 다른 퀸을 공격할 수 있게 하는 것입니다. h=0 이면 보통 N-Queen 문제가 되지요. --아무개.
- ErdosNumbers/조현태 . . . . 5 matches
끙..;; 처음에 문제를 보고 C++로 자료구조를 만들어서 해보자는 생각으로 했지만..
이렇게 두개를 만들어서 나름대로는 연산이 쪼~~~끔 줄었다고 말하고 싶지만..
다만들고 나니 그것도 아닐지도..훗.. 괜한 고생이었나..;;
- ForeverStudent . . . . 5 matches
언제나 배우는 학생이다. 공자는 스스로를 호학(배움을 좋아하는 -- 참고로 好의 레게 영역은 love다)하는 사람이라고 평가했다.
학생으로의 부분적 기간이 종결되는 순간 자기 스스로를 학생의 무리에서 제외시켜 버리는 경우가 있다. 하지만 우리는 영원히 학생일 뿐이다. 배울 것이 있는데, 내 나이가 몇이고 내가 뭘하고 몇 학년인지 따질 필요가 있겠는가.
제가 하는 세미나에는 교수님, 직장인, 대학생을 가리지 않고 많은 분들이 참석합니다. 그곳에 오신 교수님의 배우려는 자세에서 오히려 제가 더 배웁니다. 가르치려는 사람은 우선 배울 준비가 되어야 한다는 생각이 듭니다. --김창준
- FrontPage . . . . 5 matches
* 제로페이지에 처음 방문하신다면 [ZP%20Docs|여기]를 참고..
* [[WikiSandBox]] : 위키 문법에 대한 간단한 설명이 있고, 자유롭게 위키 사용을 연습할 수 있는 공간입니다!
* 페이지를 여는 사람들은 [[페이지이름]]과 [[페이지제목띄어쓰기토론]]을 한번쯤 참고해 주세요.
* [[ZeroWiki/제안]] : {{{ZeroWiki에 대한 제안을 받고 있습니다.}}}
* ZeroPage에서 하는 활동에 대해 궁금하시면 [[활동지도]], [[정모]]를 읽어보세요. 서버계정신청은 [[ZeroPageServer/계정신청방법]]을 참고하세요.
- Googling . . . . 5 matches
Google, Inc 는 미국의 공공기업이다. 이 기업은 1998년에 개인적으로 설립된 회사이다. 이 회사는 구글 인터넷 검색엔진을 설계하고 운영한다. 구글은 Mountain View 에 Googleplex에 본사를 두고 있다. 그리고 4000명 이상의 사원이 있다.
구글사이트에는 대단히 다양한 정보가 존재한다. 현재 8,168,684,336(81억개ㅡ,.ㅡ)개의 페이지를 단 몇초만에 검색하고 가장 많은 사람들이 이용하는 사이트를 가장 합리적인 판단 기준에 의거해서 반환해준다. 이만큼 다양한 페이지가 존재하는 만큼 다양한 검색 옵션을 제공한다. 단지 몇개의 검색 명령어만을 아는 것 만으로도 자신이 원하는 정보를 아주 쉽게 찾을 수 있다.
''원래 책의 목적은 이런 검색은 아니지만... 이 책만큼 구글링을 잘할 수 잇는 테크닉을 다룬 책도 없을 것 같다. 얼마전에 한서도 출간되었고, 앞부분만 읽어도 왠만한 검색 테크닉은 알 수 있다.''
- HardcoreCppStudy/첫숙제/Overloading/변준원 . . . . 5 matches
전달인자 리스트를 가지고 함수를 사용할 때에는 디폴트 전달인자를 오른쪽에서 왼쪽의 순서로 첨가해야 한다. 즉, 어떤 전달인자의 값을 내정하려면 그 전달인자보다 오른쪽에 있는 모든 전달인자를 디폴트 전달인자로 해야 한다.
8.7 참고-디폴트 전달인자를 가진 문자열 함수
다음은 함수의 다형성에 대하여 알아보자. 디폴트 전달인자는 개수를 변화시켜 가면서 같은 함수를 호출하게 했다. 함수의 다형성은 함수의 재정의라고도 하는데, 이는 여러 개의 함수가 같은 이름을 사용할 수 있게 해준다. ‘다형성’이라는 표현은 많은 형태를 가질 수 있게 해 준다.
함수 재정의의 중요한 열쇠는 함수의 전달인자 리스트인데, 이것을 함수의 시그내처라고도 한다.
8.8 참고-left() 함수의 재정의
- HelpOnActions . . . . 5 matches
모니위키는 액션이라는 확장기능을 제공합니다. 액션은 현재 보고 있는 페이지 혹은 전체 위키에 대한 특별한 확장 기능을 말합니다. 매크로와는 다르게 위키 페이지에 직접 매크로를 삽입해야 하는 것이 아니라 그 페이지를 다른 방식으로 보는 방법을 제공합니다. 예를 들어 페이지를 편집하는 기능를 `edit` 액션이라고 하며, 북마크를 하는 기능은 `bookmark`액션을 통해 이루어지고, 전체 검색, 제목 검색, 역링크 검색 등등 여러가지 기능을 제공합니다. 이러한 액션은 플러그인 방식으로 다른 기능을 손쉽게 확장할 수 있게 하여 위키의 풍부한 기능을 가능하게 만들어주고, 일부 액션은 페이지의 내용과 상관 없는 기능을 제공하기도 합니다. (페이지 지우기 기능은 DeletePage 혹은 페이지 이름을 바꿔주는 RenamePage 기능)
* `print`: 페이지를 프린트 뷰로 보기. 상단과 하단의 메뉴가 나오지 않고 콘텐츠를 위주로 나옵니다.
- HelpOnUserPreferences . . . . 5 matches
* 이메일 주소는 반드시 고유해야 하며, ACL 설정에 따라서는 이메일 주소를 반드시 필요로 하는 경우도 있습니다.
* '''[[GetText(Preferred theme)]]''': 원하는 테마를 고르실 수 있습니다.
* '''[[GetText(User CSS URL)]]''': 자신이 원하는 CSS로 변경하고 싶을 경우에 사용합니다.
* '''[[GetText(Subscribed wiki pages (one regex per line))]]''': 모든 페이지의 변경알림을 받아보고 싶은 경우에 '''`.*`''' 를 집어넣으시면 됩니다. (위키위키가 많은 변경이 있는 경우 권장하지 않습니다.) 각 페이지를 보고싶은 경우에는 각각의 페이지 이름을 줄 단위로 넣으시면 됩니다. 정규식에 익숙하신 사용자의 경우에 정규식을 사용하실 수도 있습니다. 설정에 따라서 상단의 아이콘 툴바에 [[Icon(email)]]이 나타날 수 있으며, 이메일 아이콘을 누르면 해당 페이지를 구독하는 폼이 뜨게 됩니다.
- Ieee754Standard . . . . 5 matches
부동소수점 연산/표현에 대한 IEEE 표준. 대부분의 현대 언어(Java, C++, ...)가 따르고(최소한 따른다고 광고하고) 있다.
전산/컴공과 학생이 NumericalAnalysisClass를 통틀어서 오로지 한가지만 배워야 한다면 나는 부동소수점 연산을 들고 싶다. --JuNe
- IsBiggerSmarter?/문보창 . . . . 5 matches
단순히 Greedy 알고리즘으로 접근. 실패. Dynamic Programming 이 필요함을 테스트 케이스로써 확인했다. Dynamic Programming 을 실제로 해본 경험이 없기 때문에 감이 잡히지 않았다. Introduction To Algorithm에서 Dynamic Programing 부분을 읽어 공부한 후 문제분석을 다시 시도했다. 이 문제를 쉽게 풀기 위해 Weight를 정렬한 배열과 IQ를 정렬한 배열을 하나의 문자열로 보았다. 그렇다면 문제에서 원하는 "가장 긴 시퀀스" 는 Longest Common Subsequence가 되고, LCS는 Dynamic Algorithm으로 쉽게 풀리는 문제중 하나였다. 무게가 같거나, IQ가 같을수도 있기 때문에 LCS에서 오류가 나는 것을 피하기 위해 소트함수를 처리해 주는 과정에서 약간의 어려움을 겪었다.
lcs_length함수에서 cost table을 만들어주는 과정의 running time은 O(n*n), memory cost는 O(n*n)이다. 그리고 print_lcs 함수에서 longest path를 거슬러 올라가는 running time은 O(n + n) = O(n)이다.
무엇보다 몇일동안 고생해서 푼 보람이 있어 좋다.
이 알고리즘은 답을 산출해 내지 못한다.
- JAVAStudy_2002/진행상황 . . . . 5 matches
* 1월 30일 : 객체지향 부분 중간까지는 치다가 후반부 부터는 대충 읽으면서 넘아간 덕분에 지금은 awt보면서 단추랑 만들어 보고 있습니다.
* 2월 4일 : Core Java 책 Event Handling 부분 다보고 나서 이제 Swing 부분 보기 시작 했습니다.
* 2월 7일 : Core Java 책 보다가 질려서 다른책으로 바꿔서 공부하는중 무지 삽질 한 결과 대기실 UI 만듬. 제 홈페이지랑 연결해가지고 보여주고 싶지만 연결을 어떻게 해야 할줄 몰라서..^^;;
그리고 간단한 ID입력창도 만들어 보았습니다.[[BR]]
- KIV봉사활동/준비물 . . . . 5 matches
* ''모기장 : 2-3인용 2개, 끈, 스티커고리( 1kg 3피스 1세트짜리를 4세트 샀음. 총 12개 )''
* 한과 - 밀가루, 물엿, 색 낼거 -> 김준석이 해보고 할지말지 정하자
* 달고나 - 설탕, 식소다
* 떡볶기 - 떡, 고추장, (오뎅), 파, 설탕
* 된장 고추장
- MIB . . . . 5 matches
헐리우드의 오락판 X 파일이라고 할만한 영화이다.
* ["MIB"]들은 일반인들이 알수 없는 집단이며 검은 양복을 착용하고 다닌다.
* ["MIB"]들은 일반인들이 외계인을 의식하지 않고, 살수 있도록 하는 임무를 수행한다.
* 요즘 ["상민"]이는 "MIB들이 처리해 줄꺼야" 라는 말을 많이 쓴다. dcinside에서 "MIB들이 처리 했습니다." 라는 소리 한마디 듣고 전염이 되어 버렸다. 여기에서 MIB라면 일전에 창준 선배가 말씀하신 그린베레 프로그래머(Green Beret Programmer(Wiki:GreenBeretCoding) 정도의 의미가 될 것이다. 후에 MIB Programmer가 더 적당한 말이 될수 있겠다고 생각하곤 한다.
- NamedPipe . . . . 5 matches
// 쓰레드가 생성이 되면 hThread 값이 NULL 이고 그렇지 않으면 열어 놓은 Handle값을 닫아준다.
} // 파일을 열고 Pipe를 서버에 접속하기 전까지 대기 상태로 만들어둔다.
// 여기서 잠깐 PIPE_READMODE_MESSAGE는 읽기용이라고 나와있지만 MSDN에는 이 모드가 새로운 모드로
// 읽기와 쓰기 모두 가능한 모드라고 나와 있다.
// Default는 PIPE_READMODE_DATA 이고 PIPE_READMODE_MESSAGE가 실패할 경우 default로 정해진다.
- Polynomial . . . . 5 matches
다항식을 표현하는자료구조는 크게 두가지로 생각해 볼 수 있다. linked list 와 array 이다. 배열은 모두들 잘 알겠고 linked list 는 동적으로 storage를 할당받아 각 노드를 포인터로 연결한 자료구조를 말한다..(라고 우선 설명만 해둬야지 정확한 정의는 내리지 못하겠다..-_-). 물론 동적으로 할당받지 않고도 linked list 를 구현할수 있지만 그럴꺼면 배열로 하는게 낫지 그 노가다를 뭐하러 하나...-_-
* 다항식을 표현하는 클래스를 만들어서 operator overloading 을 사용해도 되겠지만 이는 위에 말한 내용을 이미 구현한 후 이걸 클래스로 포장하는거기때문에 지금수준에서는 무리라고 생각됨... - 임인택
* 이거 작년에 했다가 한명("영창이")만 겨우 풀었어요 저도 이거 하다 포기했고 1학년에게 넘 어려운 문제가 아닐런지...-재동
- ProjectAR/CollisionCheck . . . . 5 matches
일단 히트 판정이 날려면 주인공이 공격을 하게 됩니다. 그 때 발생하는 무기의 범위는 부채꼴이 되겠죠? 그렇게 때문에 오브젝트가 주인공의 위치와 무기의 거리사이에(각도는 제한된 상태) 들어온다면 히트 판정이 나게 되겠죠? 그러므로 정교한 히트 판정이 나기 위해서는 사각형 영역보다 부채꼴 형태가 더 적합하다고 생각합니다. 그리고 적의 충돌을 판정하기 위해서는 적은 최대한 둥근 모습으로 만든다면 해결이 어느정도 가능하다고 생각합니다. 둥그스름한 물체가 땅에 닿는 곳은 원형이 되겠죠? 그 원형을 판단하면 되지 않을까요? 어짜피 그려지는 곳의 머리가 주인공의 무기와 겹치는 동시에 친다면 더 부자연스러울꺼 같네요...
* 그런데 왜 부채꼴이야? 창이라면 푹 찌르니까 사각형 + 사각형이 될테고.. 검도 찌르면 사각형 + 사각형. 베면 사각형 + 부채꼴이 되겠구나. 생각외로 복잡하군.
* 잊고있었다
- ProjectCCNA/Chapter5 . . . . 5 matches
* ip주소는 2진수 32자리로 되어있음 -> 약 42억 9천개 -> 현재 사용자를 고려하면 남은 ip주소가 얼마 없음
* 시리얼 인터페이스의 ip주소는 상위계열의 ip주소에 맞춰 배정되고 서브넷마스크는 동일하게 된다.
* 한 네트워크 영역에서 ip주소는 네트워크 부분은 다 같아야하고, 호스트 부분은 모두 달라야함.
* 네트워크를 나타낼 땐 호스트 부분을 0으로 표현. 그리고 각 클래스에서 표현 가능한것의 제일 작은 수와 제일 큰수는 사용불가.
* 서브넷 마스크는 ip주소가 어디까지가 네트워크 부분이고, 어디까지가 호스트 부분인지 나타내는 역할도 있다.
- Randomwalk/조동영 . . . . 5 matches
// 바퀴벌레를 이동시키고 모두 이동하면 종료하는 while문
// 바퀴벌레를 이동시키고 카운트를 하는 함수
초반에 알고리즘짜는데 어려움이 있었는데..
지금 코드를 보면 한번 움직일 때마다 모든 타일을 돌아다니면 0이 남아있는 지를 검사하는 시간낭비가 있구나. 이런 낭비를 없애기 위해 내가 1년전에 썼던 알고리즘을 하나 알려줄께. m*n의 공간에서 값이 0인 타일을 밟게되면 카운트를 +1해주면 카운트의 값이 m*n이 되면 그 공간의 모든 타일을 적어도 한번씩은 밟았다는 얘기가 되지. 한번 움직일 때마다 그 카운트 값을 검사하면 되겠지? 이해 안되면 나중에 물어보고. -[강희경]
- RedThon/HelloWorld과제 . . . . 5 matches
왕초보 파이선 강의를 보고..이것 저것해보는데..
다음..함수를 이용한...나름대로..함수이길..바라고 있음...;;
* 참고 하세요. 그러나 이것도 무조건 공백이 들어가서 안되는군요.
그리고..클래스...상당히..어려울거같아...좀더..공부한후에 할께요..
사실 그 클래스때문에 오프모임을 하자는 거지. 클래스라는 문법도 생소할 뿐더러, 클래스를 가지고 객체 지향이라는 개념을 이야기할 수 있기 때문이야. --[Leonardong]
- RoboCode . . . . 5 matches
다시 말해, 로봇 전쟁 시뮬레이터로 참가자들은 로봇을 만들어 전투에 내보내고 이를 다른 개발자가 만든 로봇들과 겨뤄 득점율이 높은 로봇이 승리하게 됩니다
각 로보코드 참가자는 자바 언어의 요소를 사용하여 자신의 로봇을 만들면서 자바가 갖고 있는 상속성, 다형성, 이벤트 처리 및 내부 클래스 다루는 방법을 배우게 됩니다
로보코드는 오픈소스를 기본 전제로 합니다. 등록되어 있는 다른 개발자들의 소스를 다운받아 분석하고 자신의 소스를 업로드하는 과정을 반복하면서 로봇은 점차 진화하게 됩니다. 이것이 오픈소스의 묘미이지요.
시간 제한 안에 로봇을 만들어내라고 했더니 아무것도 못 하는 사람도 있었다. 많은 명령어 가운데 어느 것을 사용해야 할 지 감을 못잡아서 그럴 것이란 생각이 들었다. 처음 로보코드를 접하는 사람들에게는 간단한 규칙을 정해놓고 연습해보는 시간을 가져보는 것이 어떨까? 이를테면 명령어 몇 가지만을 사용한다든지, 총 명령 개수를 제한한다든지 하는 규칙이 있겠다. --[Leonardong]
- StacksOfFlapjacks/조현태 . . . . 5 matches
그러나!! 알고보니 왼쪽과 오른쪽을 꺼꾸로보고 생각했던것...
.. 한번 생각하기는 쉽지만, 생각을 고치기는 어렵다고..
고치는데 머리아퍼따.ㅎ
- TermProject/재니 . . . . 5 matches
char name[students][7] = {"고재선", "권현진", "김동욱", "김무영", "김민재",
cin >> select; // 서브메뉴를 출력하고 사용자로부터 입력받음
<< " 이름t 학번t점수n"; // 선택된 메뉴를 출력하고
sort(i, j); // 데이터의 정렬을 실행하고
for (i = 0 ; i < 3 ; i++){ // 각 과목의 평균과 총 평균은 변수를 사용하지 않고
- TheKnightsOfTheRoundTable . . . . 5 matches
아서 왕이 천장에 삼각형 창이 있는 방에 원탁을 놓을 계획을 세우고 있다. 그는 햇빛이 원탁 위에 비추게 하고 싶다. 특히 정오에 태양이 바로 머리 위에 있을 때는 원탁 전체에 햇빛이 비추도록 하려고 한다.
그래서 그 원탁은 방 안의 특정한 삼각형 영역 안에 자리잡아야 한다. 물론 아서 왕은 주어진 조건 내에서 최대한 큰 원탁을 만들고 싶어한다.
테스트 케이스의 개수에는 제한이 없으며, 각 테스트 케이스마다 삼각형의 세 변의 길이를 나타내는 실수 세 개(a,b,c)가 입력된다. 어떤 변의 길이도 1,000,000을 넘지 않으며, max(a,b,c) ≤ (a+b+c)/2 라고 가정해도 된다.
- TheTrip/Leonardong . . . . 5 matches
각 여행자가 1센트까지 쪼개서 나워 가진다고 생각한 코드입니다.
일단 문제를 이해하는데 시간이 20분 정도 걸렸다. 문제 해결책을 찾아보던 중 평균보다 많이 가진 사람들이 돈을 나누어 주면 된다는 사실을 깨닫기까지 14분 걸렸다. 코드로 만드는데는 41분이 걸렸는데, 알고리즘을 따라 무난히 작성하였다. 나머지 시간은 문법을 보거나 디버깅했다.
문제를 풀기 전에 샘플 입력부터 보는 경향이 있다. 문제를 이해 못했으므로 샘플 입력을 보다가 결국 다시 문제를 보느라 시간이 지체된다. 따라서 문제를 다 이해하고, 정의한 뒤 샘플 입력을 보아 정의가 맞는지 확인하는 순서로 문제를 풀어야겠다. 해결책은 문제를 정의한 다음에 떠올린다.
무엇이 잘못 되어도 테스트를 추가해본다는 점은 역시나 TDD가 매력적일 수 밖에 없는 요인이다. 이제는 손으로 테스트를 하려면 너무 귀찮고 시간낭비라고 생각한다. TDD 리듬을 조절해줄 파트너가 옆에 있다면 더욱 좋으련만. :) --[Leonardong]
- UglyNumbers/1002 . . . . 5 matches
처음 문제를 제대로 이해하지 않고 '그냥 2,3,5 외의 소수 제외한것 아닌가?' 로 접근하다가 14 는 아니라는 것을 간과. 다시 처음부터 접근.
그러다가, '에이.. 걍 sort 해버리자.' 접근. 하지만, n 값에 따라 결과가 영향을 받을 것이라는 막연한 생각에 연습장에서 한참 고민. 그냥 실제 원하는 값 보다 여유분 값을 만들고 적당히 답을 내는 방식으로 접근. 하지만, 무언가 굉장히 찝찝함.
[UglyNumbers/JuNe] 코드 분석. 2시간 동안 보다가 도무지 접근법을 이해 못하다. 한 3시간째쯤 보다가 http://www.acmsolver.org/?itemid=28#ggviewer-offsite-nav-9512048 보고 이해 & 좌절.
나중에 어떤 생각을 하면 저 방법이 떠오를까에 대해 고민.
- VoiceChat . . . . 5 matches
* 거원소프트에서 만들었다. [http://www.cowon.com/product/d_voice/software/jet-voice-chat/download.html 홈페이지], 가입할 필요가 없고. 한 사람이 채팅서버 역할을 하고 나머지 가 클라이언트가 된다. 음질도 5k, 32k 선택가능.
* KaZaA 의 개발진이 만들었다고 한다. 전 세계적으로 많이 쓰이고 한글화도 되어있다. PeerToPeer 기술을 사용했다. [http://web.skype.com/home.ko.html 홈페이지]
지루하고 집중 안 되는 메신저에 비해 좋아 보이네요.--[Leonardong]
- VonNeumannAirport/Leonardong . . . . 5 matches
Traffic하고 Configuration을 각각 2차원 행렬로 표현했다. Traffic은 ( origin, destination )에 따른 traffic양이고, Configuration은 origin에서 destination 까지 떨어진 거리를 저장한 행렬이다. 전체 트래픽은 행렬에서 같은 위치에 있는 원소끼리 곱하도록 되어있다. 입출력 부분은 제외하고 전체 트래픽 구하는 기능까지만 구현했다.
현재 요구사항에 맞추더라도 행렬에 해당하는 기능을 정리하고, 트래픽이나 거리 계산에는 행렬을 이용하는 식이 되어야 할 것이다. 지금처럼 상속받을 까닭이 없다.
거리를 계산하는 더 좋은 알고리즘이 있을까? 지금은 O(num of city^2).
- WeightsAndMeasures . . . . 5 matches
여러 줄이 입력되는데, 한 줄에 한 쌍의 정수가 입력된다. 첫번째 정수는 체중을, 두번째 정수는 거북이의 체력을 나타낸다. 거북이의 체중은 그램 단위로 입력된다. 즉 체중이 300g이고 체력이 1,000g인 거북이등 위에는 700g을 올려놓을 수 있다. 거북이는 최대 5,607마리이다.
나와 있는대로 적은 것이지. 원문보고 해 -- 재선
배경설명 - Yertle이라는 거북이 왕이 더 멀리 내려다 보려고(자신이 내려다 보는것들을 자신이 지배하고 있다고 생각함) 왕좌, 한마디로 앉을 곳을 만드는데 거북이들을 쌓아서 만드는것이다. 처음엔 10마리 정도로 시작하다가 욕심이 끝이 없어서 계속 계속 거북이들을 쌓는다. Mack은 맨 밑에 깔려있던 거북이 이름.
- ZP&COW세미나 . . . . 5 matches
* 잘 모르는 새로운 것을 안다는 것이 뿌듯했다. 준비할 때 참여자들 수준을 고려했다면 더 좋았을 것이다. 로보코드 재미있다.
* 늦게 와서 TDD는 보지 못하고 로보코드만 재미있게 했다. 다음부터 시간을 잘 지켜야 겠다.
* 참가자를 좀더 고려했으면 좋았을 것이다. 방학 내내 로보코드 폐인이 되지 않을까.
* 유익하고 즐거운 시간이었습니다...^^ 또 봐요.. 덕분에 배우는 것도 많고 새로운 흥미거리를 많이 발견합니다.. -지용
- ZeroPage회칙토론 . . . . 5 matches
이전 ZeroPage의 회칙이 있다고 알고 있습니다. 구해서 참고한다면 좋을텐데요. --이덕준
각 항목에 몇조 몇항을 두는 이유는 index가 용이하라고 있는것이겠지만, 이 상황에 경우는 그리 필요없을것이라 생각함.--석천
회칙의 강제성만 부여된다면 기본적인 것들(위에 나온 것들)로도 충분하다고 생각함. --지환
- [Lovely]boy^_^/Diary/2-2-7 . . . . 5 matches
* 푸쉬푸쉬 프리젠테이션 오늘했다. 발표라는걸 정말 오랜만에 해보는거 같다. 초등학교때는 서로 발표하겠다고 손들고 난린데.. 나이 갈수록 점점 서로 안할라는거 보면 정마 신기하다.
* 제길.. 왜 재수없게 벼락을 맞고 그러지--; 빨랑 시험공부 해야되는데--;
* 컴터 고쳤다.
* 알카노이드 좀 손대다 데이터통신 보고 있다.
- teruteruboz . . . . 5 matches
{{{~cpp 오늘은 좀 많이 졸립니다. 집에가서 물마시고.. 어서 자야지이~ ^-^
그래도 오늘은 공부도 하고.. 너무 행복했어요!!! >_</}}}
벌써 1학기가 끝나가는데요.. 난 그동안 뭘했나..하는 생각도 해 보고요~
== 하고싶은 것 ==
심사숙고하여 특별한 악연으로 배치를...쿨럭...-_-;[[BR]]
- 강희경/도서관 . . . . 5 matches
== 읽고 싶은 책 ==
=== 소유하고 있는 책 ===
|| 2 || 누워서 읽는 알고리즘 || 임백준 || 중도 || ||
*상식(경제,정치,역사)과 관련된 책을 읽고 싶은데 추천 좀 해주세요 -[강희경]
''고마워요~추천해주신 책들 다 읽어볼께요 하하'' -[강희경]
- 권영기/web crawler . . . . 5 matches
Python을 이용해서 Web Crawler를 제작하면서 Python의 사용법을 익히고, 원하는 웹 페이지를 긁기 위한 Web Crawler를 제작한다. (네이버웹툰(돌아온 럭키짱, 신의 탑...), 네이버 캐스트, 그 외의 각종 웹페이지..)
자꾸 글자만 나오는 환경을 보니까 질리기 시작했다. 아직 완성은 멀었지만 GUI로 만들어보려고 함. 어차피 나중에 해야되니까...
* 사실 라이브러리 다 깔아놓고 Auto Config하면 됨..
* 내가 인터넷에서 jpg 파일 긁어오려고 만든 파이썬 코드 있는데 혹시 필요함? - [서민관]
* 로그인이 가능한 페이지를 긁고 싶은데 방법을 모르겠다.
- 꿈 . . . . 5 matches
가문의 족보에 획을 긋기 위해 살고있음..
== 하고싶은 것 ==
- 두마리의 토끼를 잡고싶다.
- 목숨을 걸만한 것을 찾고싶다.
그녀석이 믿어보란다...한없는 기다림속에..끝있다고...
- 데블스캠프2004/위키항해소감 . . . . 5 matches
* 2004년 데블스캠프 첫날에 위키를 항해하고 느낀 점을 토의한 것을 적은 페이집니다.
* 황재선: 앞으로도 위키를 갖고 나갔으면 좋겠다.
* 김태훈: 역링크 외의 다른 기능도 알고 싶다.
* 권정욱: 역링크, 하위링크가 많은 것도 있고 적은 것도 있었다.
DeleteMe) 이거 말고 몇조 더 있었는데 그때 서기 맡으신 분은 적어주세요.
- 데블스캠프2011/둘째날/Machine-Learning/NaiveBayesClassifier/김동준 . . . . 5 matches
this.sectionWord.put(wordTmp, 1); // 1개로 새로 넣고 추가
//해당 기사에 대한 연산 결과를 반환하는 함수. 양수일 경우 해당 Index Section 에 일치하는 기사로 판단한 것이며, 음수일 경우 해당 Index Section 에 일치하지 않는 기사라고 판단한 것이다.
// 해당 File 변수에 대한 Index Section 과의 매치율을 보여주는 함수. 맞은 것과 틀린것, 그리고 그 것에 대한 판단 확률을 반환한다.
위의 주석처럼 필요없는 (http, //, blog, yahoo, empas, tistory 같은) 단어를 제외하고 작성할 수 있게 수정했습니다.
각 단어중 특별한 단어에 Advantage 를 부과했는데, 단어가 해당 Section 에 Unique 하고 그 빈도가 클수록 Advantage를 크게 부과했습니다. (하지만 이도 분석한 Section에 상대적입니다.)
- 문원명 . . . . 5 matches
프로그램을 잘 만들수 있는 창의적인 알고리즘 구상능력의 계발.
== 하고싶은 것 ==
네트워크를 통해 할 수 있는 간단한 놀이 프로그램을 만들고 싶어요.
한수 한수 신중을 기해서 둘 수 있도록 고안했지....ㅋㅋ
송승헌은 11월이고 난 5월이다..내가 니 애비군번이다 ㅋㅋ - [문원명]
- 물푸 . . . . 5 matches
만화책은 100권을 읽었고, 책은 28권을 읽었는데... 그림책이 대다수이니...쩝 2월 마지막 2주동안 책을 멀리 했더니 계획에 차질이 많이 생겼네요. 겨울방학에 한거라고는... 한숨만 나오지만 오랫동안 후회만 하지는 않으렵니다. 대신 3월을 바쁘게 보내야지욤.
* '''도둑 고양이 : 쿠노 치아키'''(2003.4.9)
* 많이 보고 많이 읽고 많이 쓰자!!! [[BR]]
- 사람들이모임에나오지않는다 . . . . 5 matches
사람들을 다그쳐 봐야 아무런 효과가 없습니다. 어떻게 그들에게 영향을 줄까(influence)를 고민해야 합니다. 내가 그 사람을 바꾸려고 하지말고, 그 사람이 스스로 바뀌어서 "자발적으로 나오고 싶은 마음이 굴뚝 같게" 될 수 있는 상황을 만들어야 합니다.
이미 사람들이 모임에 잘 나오지 않는다는 것은 그 모임을 통해 아무 가치도 얻고 있지 못하다는 이야기일 수 있습니다. 차라리 모임을 중단하는 게 나을런지도 모릅니다. 그렇지 않으려면, 모든 사람들이 모임에서 어떤 가치를 얻을 수 있도록 만드십시오.
- 상쾌한아침 . . . . 5 matches
오우...- _ -ㅋ;; 7시 이전;; 난 8시에 일어나서 못견디고 다시 11시까지 다시 잤는데;; - [이승한]
늦게 자고 늦게 일어났군...오늘 계획 꽝~ --[강희경]
음화화~ 두시간 자고 일어났슴돠;; 아 머리아퍼;; - [이승한]
참여~ !! 아침공기를 맡고 싶다. - 보창
그동안 자봉단이다, 이사다, 인터넷 문제다 해서 완전히 잊고 있었던 페이지. 잘 될진 모르겠지만 다시 해볼람니다. 일딴 게으름을 물리쳐야 하겠죠~^^ - [이승한]
- 상협/인공지능/오목 . . . . 5 matches
* 2002.2.3 : 허접하고 중복많은 소스를 통해서 AI오목을 만듬, 어찌나 중복이 많던지 쓸데없이 4200라인이나 나옴..-_-;;내가 미쳤지..
|| 4 || 주변상황 고려해서 효율적으로 1->2개 만드는거(공격) || 0 || 그냥 만듦 ||
|| 5 || 주변상황 고려해서 효율적으로 2->3개 만드는거(공격) || 0 || 그냥 만듦 ||
= 핵심 알고리즘 설명 =
* 재활용 : 원래 두지 않은 곳이지만 가상으로 돌을 두었다고 가정하면서 이것 저것 검사하기(새로운 함수 만들 필요 없이 이전에 만들었던 함수를 재활할수 있음)
- 새싹교실/2011/AmazingC/5일차(4월 14일) . . . . 5 matches
* 명령을 반복할 횟수를 알고 있을때 사용
* 따라서 명령을 반복할 횟수를 모르고 있을때 사용하면 편리
[이가희] - 지금까지 배운 부분중에 가장 중요한 부분이라고 생각되는 반복문과 조건문! if, while, for! 뒤에 별찍는게 좀 무서워보이긴 합니다만 열심히 해보겠습니다^_^ 오빠도 시험 잘보세요~ 아니 잘 보시고 계신가요 ㅋㅋㅋㅋ?
과제 재밌어보인다... - [고한종]
- 새싹교실/2011/씨언어발전/2회차 . . . . 5 matches
새싹강사 오리엔테이션에서 얘기했던 방법대로 입출력을 설명할수도 있겠지만 우선 강사도 잘 모르고..
외우라는 식으로 사용법을 배우고 나중에 좀더 자세히 알 수 있도록 하려고 생각중입니다.
우아>.< 교수님 수업시간에 멍때리고 있었는데 이제 좀 알겠다.
그리고 오늘 진도도 많이나가서 교수님 진도를 뛰어넘었다.
- 새싹교실/2012/아우토반/앞반/4.5 . . . . 5 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
* 어깨가 빠지는줄 알았어요..유.유 왜냐면 제 노트북을 가져왔었거든요. 제 노트북으로 신나게 프로그램 4개를 ㅉㅏ 보았습니다. 아우토 샘이 힌트를 좀 주셨지만, 그래도 스스로 생각해서 해보아서 보람찼습니다. 그리고 프로그래밍의 세계는 매우 무긍무진합니다. 왜냐하면 같은 프로그램인데 성준이아 소스코드가 달랐기 때문입니다. 하하하.. 신나요신나 WoW~~ 앞으로 프로그램 많이 짜보며 연습하고 복습도 열심히! 질문도 열심히 하겠습니다. 룰루랄라
* 아 왜이렇게 머리에 안들어오지. 눈으로 보는거랑 직접하는거랑 너무너무 다른것 같습니다. 역시 코딩은 많이해봐야 제맛인것 같습니다. 다음에는 미리 책을 읽고 개념에 대한 이해를 먼저 해와야할것 같습니다.
- 숫자를한글로바꾸기/조현태 . . . . 5 matches
자꾸 우려먹는거지뭐.,ㅎㅎㅎ 새로 짜기도 귀찮고.ㅎ
소스가 프로그래머의 자산이라고나 할까..ㅎㅎㅎ
뭐.. 문제에서 적어놨으니까 '일만'이라고 읽지만.. 안이쁘닷..ㅠ.ㅜ 문제 고쳐주..ㅠ.ㅜ
모양만 객체고 malloc을 사용하다니 -_-;;; 하이브리드 소스다 -_-;;; 안좋아 -_-;;;
- 윤성만 . . . . 5 matches
정말 공부 잘하고 싶습니다~!!''
환일고등학교 졸업
대학 졸업 때까지 : 최고의 실력자
== 하고싶은 것 ==
프로그램 잘짜고 싶은데~
- 이영호/시스템프로그래밍과어셈블리어 . . . . 5 matches
몇몇 게임(카트라이더, 워록, 대항해시대 등등)의 프로그래머들이 Application 층만을 다룰줄 아는 무식한 프로그래머라는 것을 알았다. (특히, 워록의 프로그래머는 프로그래머라기 보다 코더에 가깝고 배운 것만 쓸 줄 아는 무식한 바보이다. 그 프로그래머는 개발자로서의 수명이 매우 짧을 것이다. 3년도 못가 짤리거나 혹은 워록이라는 게임이 사라질걸?) - (이 게임들은 코드를 숨기지 못하게 하는 방법도 모르는 모양이다. 이런식으로 게임들을 건들여 패치를 만들 수 있다. KartRider는 요즘에와서 debug를 불가능하게 해두고 실행 파일을 packing 한 모양이다. 뭐 그래도 많은 코드들을 따라가지 않고 ntdll.ZwTerminateProcess에 BreakPoint를 걸어 앞 함수를 건들이면 그만이지만.)
Assembly를 자유자재로 다루지 못하는 프로그래머는 그 수명이 매우 짧다. 아니라고? 100에 80~90%는 그럴걸? 나머지 10~20%의 프로그래머도 디버그 능력은 현저히 떨어질 것이다. 디버그 능력이 좋다고 해도 Assembly를 자유자재로 다루는 프로그래머를 결코 능가 할 수 없지.
- 정모/2002.10.30 . . . . 5 matches
* 중간 고사로 약간의 지체, 약 2주차 정도 진행후에 프로젝트의 진행으로 성격을 바꿀 것 예정
* 고객을 모집합니다. 고객은 저희와 함께 개발하며, 프로그래밍적 지식이 없어도 상관 없습니다.
이벤트 아이디어가 있습니다. 또 그 이벤트를 리드하거나 서포트해 줄 의향도 있습니다. 아주 즐겁고 교육적인 시간이 되리라 생각합니다. --JuNe
창준이 형이 오신 이벤트치고 정말 유익하지 않거나 재밌지 않은 적이 없었는데.. 이번에도 매우 기대됩니다.. ^^ --["Wiz"]
- 정모/2002.12.30 . . . . 5 matches
이전까지는 방학중에 4주에서 6주 정도를 잡아 스터디나 프로젝트를 했지만 이것을 방학 초 1주에 몰아서 한다. 우선 스터디 또는 프로젝트 그룹을 나눈 후, 목표를 정하고,
1주에 걸쳐 나인투나인(AM 9:00 ~ PM 9:00) 으로 아주 타이트하게 진행한다. 마지막날에 그룹별로 발표를 함으로 끝낸다. 4주에서 6주 정도 잡고 스터디를 하는것보다 오히려
더 효과적인 학습이 이루어질거라고 생각한다.
방학중에는 정모, MT 등을 통해서 친목 도모를 한다. 그리고 가끔 다수가 관심갖는 것에 대해서 세미나도 개최한다.
방학이 끝나기 전에 다시한번 모여 특별한 이벤트를 한다. 이때는 스터디나 프로젝트보다는 흥미롭고 새로운 경험을 해볼 수 있는 시간을 마련한다.
- 정모/2011.11.9 . . . . 5 matches
* 참가자 : [김수경], [서지혜], [강소현], [김태진?], [고한종], [추성준], [권순의], [임상현], [김준석]
== 10월 회고 ==
* 소닉 OMS를 보면서 소닉이 돌 때 마다 제 머리도 따라서 움직인 듯한 느낌이?! 그리고 소닉x는 사람도 등장하길래 안 봤었는데, 쉐도우가 궁금해서 봐야할 듯 합니다ㅋㅋ 게임에 나오던 로봇 소닉도 등장한다고 봤던거 같은데 은근 재밌을 것 같아요. 다음 주에 예정된 쓰레기로 작품을 만드는 것도 기대됩니다. 혹시 A4용지 박스 필요하면 말씀주세요ㅎㅎ - [강소현]
* 이번 OMS를 하면 좀 오래 걸릴 거라 생각했는데 역시 오래 걸렸네요. (시간 보신 분은 아실 듯.) 그래도 해야 될 말을 다 못한 거 같아 아쉬웠습니다. (뭘 더 이야기 하려고 -_-) 빨리 이번 신작 주문한게 왔으면 하네요.;; 여하튼. 10월 한달 동안은 시험기간이었지만 뭔가 이것 저것 많이 한 것 같았습니다. - [권순의]
- 정모/2011.4.4/CodeRace . . . . 5 matches
* 두명이 하나의 모니터를 보고 하나의 키보드로 프로그래밍 해야 한다.
* 배를 타지 않고 강을 건널 수 없다.
1. 레이튼 교수가 A마을에서 배를 타고 강을 건너 B마을로 간다.
1. 알고보니 배가 2인승이었다.
* 내가 이걸 진행상황을 다 알고 다시 프로그래밍한다면...
- 지금그때2005/회고 . . . . 5 matches
[지금그때2005]를 준비한 사람들의 회고.
JuNe 형님께서도 이에 대해 언급을 하셨는데, 저도 ''지금''과 ''그때''에 너무 연연해 할 필요는 없다고 생각합니다. - [임인택]
= 고칠 점 =
[질문레스토랑]에서 대답할 때마다 점수를 주고 '''오늘의 토크왕'''같은 걸 뽑으면 재밌겠다. -[강희경]
[지금그때]와 같은 행사를 제로페이지 내에서만 단독적으로 할 필요는 없는것 같습니다. JStorm에서도 http://gift2005.ce.ro 와 같은 행사를 하더군요. 겹치는 부분도 많다고 보여집니다. 내년에는 Netory, JStorm과 같이 연계해서 해보는건 어떨까요? -[sun]
- 지선아사랑해 . . . . 5 matches
* 이책에서는 TV에서도 익히 나왔던 전신 화상을 당한 이지선씨에 대한 이야기가 실려 있다. 이책을 읽으면서 그런 최악의 상황에서도 꿋꿋하게 맞서서 버티는 모습을 보면서 대단하다는 생각이 들었다. 그런 악 조건 속에서도 하나 하나에 감사하는 모습을 보고 본받아야 겠다는 생각이 들었따. 그리고 현재 내가 가진 몸, 얼굴에 대해서도 항상 감사하는 마음을 가져야겠다. 그리고 긍정적 낙천성을 가져야겠따. 그리고 어떤 고난, 시련이 닥쳐도 나에게 유리한 방향으로 받아들여야겠다.
- 최대공약수/허아영 . . . . 5 matches
if(x1 < x2) // 이 부분이 꼭 필요하지 않다고 문득 느낌..
*처음부터 x,y값을 프린트하고 그 값을 계속 쓰는 방법, 그리고
프로그램의 마지막 부분에서 원래 값을 프린트하고 그의 복사본으로 GCD를 계산하는 방법이 있다는 것을 알았다.
아.. 글고보니 정말로 꼭 첫번째 값이 클 필요는 없겠네.. 아 이거 헤깔려 죽겠드라 ㄱ-;;;; - 김태훈[zyint]
- 최소정수의합/송지훈 . . . . 5 matches
=> n의 범위를 무한대의 자연수로 잡고, n까지의 합과 n+1까지의 합 사이에 3000이 들어가는
그러한 n+1을 찾아보려고 식을 저렇게 썼습니다.
최대한 haskell로 짜보려고 노력했는데 안되네요...
-> 그러고 보니 while 함수를 만들어서 써도 되겠다는 생각이..
요리조리 해보려고 했는데 잘 모르겠슴다...-_-;
- 큰수찾아저장하기/김태훈zyint . . . . 5 matches
문제는 금방풀고; 이 프로그래밍 함수 어떻게 나눌지 생각한게 한시간 걸렸을듯...
//행렬[i][3]에는 각 행 중 가장 큰 수를 찾아 저장하고,
//행렬[3][j]에는 각 열 중 가장 큰 수를 찾아 저장하고,
//행렬[i][3]에는 각 행 중 가장 큰 수를 찾아 저장하고,
//행렬[3][j]에는 각 열 중 가장 큰 수를 찾아 저장하고,
- 파스칼삼각형/조현태 . . . . 5 matches
if (yol==1) //행이 1일때를 하는게 옳으나, 그때는 열이 반드시 1이고 이렇게 하는것이 연산을 줄일 수 있어서... 가독성 없음;
└ㅎㅎ 분석할게 없어서 내소스를 분석하니..;; 가독성 0의.. 고생하겠네..^^ - [조현태]
└ ㅎㅎㅎ 고등학교 수학이라우..ㅎㅎㅎ - [조현태]
└;; 네 소스랑 같은 알고리즘 이잖아..;; 뭐가 신기해. 너랑 똑같은데..ㅎㅎ 군데 변수명은 정말 이뽀..ㅎㅎ - [조현태]
└난 이런거 배운기억이 없어 =_=;; 고등학교어디서 이런걸 배워; 흠.... 이거 함번 짜볼려구했는데 영 안돼네 =0=
- 형노 . . . . 5 matches
=== 하고싶은 것 # ===
하루종일 도서관에서 책에 둘러싸여 즐거움을 느끼는것... 근데...그런다고 즐거워 질까?
=== 하고싶은 말 # ===
그리고 발도장 찍고 가요~ ㅋㅋ
- 1thPCinCAUCSE/ProblemA . . . . 4 matches
아날로그 시계는 12시간 단위로 동작하며 시침과 분침이 있다. 주어진 시간 동안 시침과 분침이 몇 번 겹치는가를 알고 싶다. 예를 들어, 시작 시각이 11시 1분이고 끝 시각이 3시 20분이면, 이 시간 동안 시침과 분침은 4번 정확하게 일치한다. 각자 자기 시계로 확인 해 보세요. 시작 시각이나 끝 시각에 시침과 분침이 일치하더라도 회수에 포함한다.
입력은 표준 입력이다. 입력의 첫줄에 테스트 케이스의 개수를 나타내는 정수 T (10 이하) 가 주어진다. 다음 T줄의 각 줄마다 테스트 케이스가 주어진다. 테스트 케이스는 정수 네개로 이뤄진다. 이들 정수 사이에는 빈칸이 있다. 앞 두개의 정수는 시작 시각의 시와 분을 나타내고 뒤 두 개의 정수는 끝 시각의 시와 분을 나타낸다. 시는 1 이상 12 이하의 정수이고, 분은 0 이상 59 이하의 정수이다.
- 2008리눅스스터디 . . . . 4 matches
= 참고 페이지 =
* 위키 페이지 만들었습니다. 스케쥴 대충 홈페이지 참고하고 어쩌고 해서 정리했구요..
- 2dInDirect3d/Chapter2 . . . . 4 matches
* Viewport를 생성하고 사용하는 방법
이 객체는 IDirect3D 객체와는 달리 실질적일 일을 하는 객체이다. 이 객체를 생성하는 함수는 다음과 같다. IDirect3D 객체는 이것을 생성하기 위해 존재한다고 해도 과언이 아니다.
1. 앞쪽의 두 변수는 함께 움직인다. count에는 0을 넣으면 되고 pRect는 NULL을 넣어주면 된다. count가 0이 아니라면 pRect에는 count의 개수만큼 D3DRECT의 배열이 들어간다. 그 Rect부분만 클리어할 수 있다.
백버퍼에 그림이 들어오거나 클리어 한 경우엔 그것을 앞으로 끌고나와야 한다. 그것을 하는 함수가 Present함수이다.
- 2ndPCinCAUCSE/ProblemC . . . . 4 matches
유치원에 N명의 아이들이 있다. 오늘은 소풍을 가는 날이다. 선생님은 1번부터 N번까지 번호가 적혀있는 번호표를 아이들의 가슴에 붙여주었다. 선생님은 아이들을 효과적으로 보호하기 위해 목적지까지 번호순서대로 일렬로 서서 걸어가도록 하였다. 이동 도중에 보니 아이들의 번호순서가 바뀌었다. 그래서 선생님은 다시 번호 순서대로 줄을 세우기 위해서 아이들의 위치를 옮기려고 한다. 그리고 아이들이 혼란스러워하지 않도록 하기 위해 위치를 옮기는 아이들의 수를 최소로 하려고 한다.
예를 들어, 7명의 아이들이 다음과 같이 순서대로 줄을 서 있다고 하자.
- 3rdPCinCAUCSE/ProblemB . . . . 4 matches
네 개의 직사각형이 평면에 있는데, 밑변이 모두 가로축에 평행하다. 이 직사각형들이 차지하는 면적을 구하는 프로그램을 작성하시오. 이 네 개의 직사각형들은 서로 떨어져 있을 수도 있고, 겹쳐 있을 수도 있고, 하나가 다른 하나를 포함 할 수도 있으며, 변이나 꼭지점이 겹쳐질 수도 있다.
입력은 표준 입력이다. 입력의 첫줄에 테스트 케이스의 개수를 나타내는 정수 T(10 이하)가 주어진다. 다음 줄 부터 T개의 테스트 케이스가 주어진다. 각 테스트 케이스는 네 줄로 이뤄지며, 각 줄은 네 개의 정수로 구성된다. 첫 번째와 두 번째의 정수는 사각형의 왼쪽 아래 꼭지점의 x 좌표, y 좌표이고, 세 번째와 네 번째의 정수는 사각형의 오른쪽 위 꼭지점의 x 좌표, y좌표이다. 단, x좌표와 y좌표는 1이상이고 1000 이하인 정수이다.
- 3rdPCinCAUCSE/ProblemC . . . . 4 matches
예를 들어, N=5 이고, M=4 쌍의 구슬에 대해서 어느 쪽이 무거운가를 알아낸 결과가 아래에 있다.
위와 같이 네 개의 결과만을 알고 있으면, 무게가 중간인 구슬을 정확하게 찾을 수는 없지만, 1번 구슬과 4번 구슬은 무게가 중간인 구슬이 절대 될 수 없다는 것은 확실히 알 수 있다. 1번 구슬보다 무거운 것이 2,4,5번 구슬이고, 4번보다 가벼운 것이 1,2,3번이다. 따라서 답은 2개이다.
M개의 쌍에 대한 결과를 보고 무게가 중간인 구슬이 될 수 없는 구슬의 개수를 구하는 프로그램을 작성하시오.
- 7피관리 . . . . 4 matches
* [PC실관리/고스트]
* [PC실관리/고스트/네트워크를이용한OS설치]
일반 PC : 76-119, 121 (120번은 네토리 서버로 사용되고 있음.)
|| 기종 || 대수 || CPU || MEM || 비고 ||
- AM/20040712세번째모임 . . . . 4 matches
* 참고자료 Upload:am_study2.ppt [DevelopmentinWindows]
사각형을 하나 그리고 방향키를 누르면 움직입니다.
== 후기(기타 하고 싶은말) ==
* 시간부족, 노트북 말썽, 참여율 저조,... 여러 안 좋은 상황에서도 꿋꿋이 모임이 진행되었습니다. 발표자로서 설명할 내용이 많았는데 제대로 전달하지 못한것 같아 아쉽구요. 혹시라도 시간문제때문에 참여못하신분은 가능한 시간을 적어주세요. 최대한 시간을 조절하겠습니다. 그리고 예습은 필수랍니다~~ --[곽세환]
- AcceptanceTest . . . . 4 matches
UserStory는 해당 UserStory의 AcceptanceTest를 Pass 하기 전까지는 수행되었다고 생각할 수 없다. 이는 새로운 AcceptanceTest들은 각 Iteration 때 만들어져야 함을 뜻한다.
요새는 CustomerTest 라고 표현하기도 한다. (UnitTest 를 ProgrammerTest 라고 부른다고 할때 상대적인 개념일듯).
- ActiveXDataObjects . . . . 4 matches
마이크로소프트 ADO(ActiveX Data Objects)는 데이터 소스에 접근하려고 고안된 COM객체이다. 이것은 프로그래밍 언어와 데이터 베이스 사이의 층을 만들어준다. 이 층은 개발자들이 DB의 구현부에 신경쓰지 않고 데이터를 다루는 프로그램을 작성하도록 해준다. ADO 를 이용할 경우, 데이터베이스에 접근하기 위해서 SQL 을 알 필요는 없다. 물론, SQL 커맨드를 수행하기 위해 ADO 를 이용할 수 있다. 하지만, SQL 커맨드를 직접 이용하는 방법은 데이터베이스에 대한 의존성을 가져온다는 단점이 있다.
ADO 는 ActiveX 이므로 C++ 이건 VB 이건 Python 이건 어디서든지 이용가능. 하지만, 역시나 VB 나 Python 등에서 쓰는게 편리. 개인적으로는 ODBC 연동을 안하고 바로 ADO 로 C++ Database Programming 을 했었는데, 큰 문제는 없었던 기억. (하긴, C++ 로 DB Programming 할 일 자체가 거의 안생겨서..) --[1002]
- AnEasyProblem/강소현 . . . . 4 matches
bit 연산이 익숙치가 않아, 10진수 -> 2진수 변환해서 배열에 넣었습니다ㅠㅠ(끝내고 다시 반대로..;ㅁ;..이런 비효율적인!)
1이란 숫자를 찾았을 때 그 앞의 숫자가 0이면 1을 앞으로 보내고, 1이면 맨 끝쪽으로 보내는...
* 2^20 = 1048576 으로 1000000보다 크니까 배열의 크기를 20으로 잡았었는데, 1과 0을 옮기면서 이 숫자보다 더 커지는 경우를 고려하지 못했습니다. 그 결과 1~1000000 중에서 4개의 숫자가 맨 앞의 1이 짤려서 숫자가 작게 출력된! ;ㅅ; 언뜻 보길래 맞은 줄 알아서 뻘짓을 많이 한 ㅋㅋ poj는 죄가 없어! 내가 바보임 ㅠㅠ
* 제가 처음에 하다하다 안되서 10진수를 2진수로 표기하려고 했다가 그게 매우 어렵다는걸 깨달았죠...; 배열로 하는 방법도 있었군요. -[김태진]
- BasicJAVA2005 . . . . 4 matches
- JAVA라는 언어를 가지고 어느정도의 프로그램을 짤 수있게 '''기초를 다지기!!'''
|| 4 || 06.01.12 || 선호 민경 아영 규완 지희 수생 태훈 현태 || 다솔 희웅 || 빙고판 만들기(Swing) || [BasicJava2005/4주차] ||
- 핸드폰이 고장나는 바람에 문자를 못받았네요 -ㅂ- 다음주는 스키장 가서 도저히 참석이 불가능할거 같습니다. 죄송해요 ㅠㅠ 1월달부터 열심히 할게요!! -태훈
- 정말 이책 싫당..ㅠㅠ 빨리 팔아 버리고 다른 책으로 바꿔야징.;; -수생
- Bigtable/DataModel . . . . 4 matches
1. 태블릿은 SSTABLE들의 집합으로 구성되어있으며 SSTABLE들의 리스트를 저장하고 있다.
태블릿은 SSTABLE들의 집합으로 구성되어있으며 SSTABLE들의 리스트를 저장하고 있다.
1. 태블릿은 SSTABLE의 ID+오프셋을 리스트를 저장하고 있다.
1. '''인덱스 블럭 : 태블릿이 참조하고 있는 SSTable의 블럭 인덱스들 merge'''
- C++Seminar03 . . . . 4 matches
* 사회자의 역할: 간단한 개념을 설명하고 개념에 대한 실습에서 코드 작성 돕는다.
1. 사회자 한명과 2인 1PC 또는 3인 1PC 로 PC 1대당 한조가 되어 PairProgramming 식으로 진행. 사회자는 간단한 개념을 설명하고 개념에 대한 실습(?) 또는 적용된 코드작성을 Pair 해본다. (이런식으로 진행할경우 장소에 문제가 될 수도 있을것 같네요. 실습실 하나를 제로페이지가 점령할수도 없는 일이고..-_- 강의실에서 간단한 설명 -> PC 실로 이동.. 정도가 대안이 될까요? ) --["임인택"]
- 써놓고 보니 바보같은 질문이군요.. ^_^;;
- C++스터디_2005여름 . . . . 4 matches
왠만하면 헤더파일 .h 말고 파일명 없는걸로 쓴는게 좋지 않을까요??
헤더파일 말고 파일명이 없는걸루 어떻게 쓰나요 ? --[허아영]
등으로 고치면 될겁니당...@,.@ - 상섭
꼭 목요일 마지막 시간에는 지금까지 내 준 숙제 2개를 해서 페이지에 올리고, 모두 참석해 주세요. 만약 다 못하게 되더라도 혼자 힘으로 한곳까지 올려서 오세요. 마지막 날은 숙제를 비교해 가며 마무리를 하도록 하겠습니다. -- 보창
- CC2호 . . . . 4 matches
페이지를 고치려면 위에 '''고침'''을 눌러요.
= 참고자료 =
[PracticalC]를 정리하는 이런 페이지도 있네요. 모두 같이 정리해 보고 활용해 보았으면 좋겠습니다.
- CompleteTreeLabeling/조현태 . . . . 4 matches
3280개의 노드가 생긴다. 고로 이걸 3280!해서 나오는 경우의 수를 생각하면 10^10000이 사뿐히 넘어간다는... 애초에 계산이 될리가 없잖..
아..그리고 그 결과값을 넣을 만한 변수도 없.. 너무 크잖아..;;
이제는 5*2라도 풀 수 있다. 저번 펙토리얼식 알고리즘을 조합식 알고리즘으로 수정하여 많은 속도의 향상을 가져왔다. 하지만 모든 결과를 내기에는 충분하지 않은속도..
- ComposedMethod . . . . 4 matches
메세지를 보내는 데에는 시간이 걸린다. 즉 함수 호출에는 오버헤드가 뒤따른다. 그러므로 최고의 속도를 내려면 하나의 메소드에 모든걸 때려넣을 수도 있다. 하지만? 댓가는 클것이다.(인력낭비, 비구조적 프로그램 양산)
초보자들은 작은 크기의 많은 메소드를 보고는, 프로그램의 진행 상황을 잘 모른다고 할 수도 있다. 하지만 경험이 쌓일수록, 잘 지어진 이름의 메세지는 코드의 흐름을 알기 쉽게 해준다. 메소드 이름을 의도가 드러나게 짓는것은 하나의 메소드 크기를 작게 하는 가장 큰 이유가 된다. 그 코드를 보는 사람들은 하나 하나의 작은 부분을 이해함으로써, 더 큰 부분을 이해할수 있게 된다. 또한 메소드를 작게 하면 버그가 발생했을때도 거기에 국한시킬 수가 있다. 뭔가 개선하기가 쉬워질 것이다. 물론 상속도 자연스럽게 할수 있다.
당신이 가장 중요하게 Composed Method를 쓸때는, 당신이 뭔가를 구현하고 있을때 새로운 책임을 발견했을때이다. 당신이 둘 이상의 메세지를 다른 객체로 보낼때, 수신 객체에서는 그 메세지들을 합치는 Composed Method를 만들 수 있다. 이러한 Method들은 당신의 시스템의 다른 부분에서도 유용하게 쓰일 것이다.
- DevCppInstallationGuide . . . . 4 matches
└'''기본언어로 설정'''을 해주면 선택사항이 고정됩니다. 프로젝트 이름은 프로그램 이름이라고 생각하면 됩니다.
수고했네. 내가 실행해보고 몇가지 내용 추가했어. -[강희경]
- DirectX2DEngine . . . . 4 matches
거창하게 엔진이라고는 했지만, 그정도는 아니고 재사용 가능한 루틴을 만드는 것이 목표.
짧은 기간에 빨리 작성하고 다음 프로젝트와 연결 할 예정
* 더 이상 받지 않겠습니다. 굳이 참여하고 싶은 분은 개인적으로 연락해 주세요
- EightQueenProblemSecondTry . . . . 4 matches
이번에는 소스코드를 모두 삭제하고, 맨땅에서 다시 시작을 합니다. EightQueenProblem을 만족하는(즉 하나의 해법만 얻는) 프로그램을 다시 한번 작성합니다. 자신이 처음 EightQueenProblem을 풀면서 얻었던 통찰(insight)만을 이용하고, 가능하면 더 깔끔한 해답을 얻으려고 노력하면서 말이죠.
* LOC - ''Lines of Code. 보통 SLOC(Source Lines of Code)이라고도 함.''
- EuclidProblem . . . . 4 matches
유클리드가 밝혀낸 바에 따르면, 임의의 정수 A, B에 대해 A와 B의 최대공약수를 D라고 할 때 AX + BY = D 를 만족하는 정수 X와 Y가 존재한다. A와 B가 주어졌을 때 위 식을 만족시키는 X와 Y, 그리고 A와 B의 최대공약수 D를 구하라.
입력된 각 줄에 대해 각각 스페이스로 구분된 세 개의 정수 X와 Y 그리고 D를 출력한다. 식을 만족하는 X와 Y가 여러 개 있으면, (첫째로) |X| + |Y|가 최소가 되고 (둘째로) X <= Y 인 값을 출력한다.
- FactorialFactors/조현태 . . . . 4 matches
누가 1억을 3-4초안에 출력하게 해주..ㅠ.ㅜ (참고로 이 소스는 12-13초 걸린다.)
그러고보니 우리집 컴퓨터의 성능을 고려하지 않았다...;; 뭐 다른집도 비슷하리라 생각한다..^^;; 3.2G CPU...OTL..
이야 뭐가뭔지 몰르겟어 넘 고난의도의 스킬을 ㅋㅋㅋㅋ
- FifteenSecondsRule . . . . 4 matches
예를 들어, 경매 시스템이 있을 때, "이 시스템은 무얼 하는 것이냐?"라는 질문에 15초 이내에 깔끔하지만 '''완전한'''(complete) 대답을 할 수 있어야 하며, "그럼, 이 시스템에서 {{{~cpp Authentify}}} 서브 시스템은 뭘 하는 것이냐?"라는 질문에 역시 15초 이내에 완전한 대답이 가능해야 하고, "이 {{{~cpp FooBar}}} 객체는 무엇을 하는가?"라는 질문에 또 15초 이내의 대답이 나와야 합니다. 이런 식의 설명이 모두 끝났을 때, 소스 코드 '''전체'''를 훑은 셈이여야 합니다 -- 이게 용이하려면 프로그램의 구조가 이런 설명의 구조와 유사해야 합니다.
만약 이것이 불가능하다면 왜 그렇고, 어떻게 해야 그것이 가능할지(예컨대, 특정 개념을 표상하는 새로운 어휘를 고안한다든지, 추상 수준이 다른 것을 한 곳에 섞지 않는 것 등) 고민해 보면 많은 것을 배우게 됩니다.
- Hacking2004 . . . . 4 matches
* 목적 : 적을 알기위해 먼저 어떤식으로 크래킹하는지 배워본다 흐흐;; 물론 그것의 약점을 파악하고 어떤 식으로 막을것인지도 배운다
* 새로 참여하고 싶으신분들은 언제든지 댓글 달아주세요
== 참고자료 ==
* 데브피아에서 TCP/IP 세미나 한다고 하네요. 아마 무료였던것 같은데. 생각나서 올립니다. - [이승한]
- HanoiTowerTroublesAgain! . . . . 4 matches
공을 한 번에 하나씩, 번호가 커지는 순서로 기둥에 끼우는 게임을 한다(즉 1번을 끼우고 나서 2번을 끼우고, 그리고 나서 3번을 끼우고 하는 식으로 공을 기둥에 끼움). 더 이상 서로 밀어내지 않도록 공을 끼울 수 없게 되면 게임이 끝난다. 게임의 목표는 최대한 많은 개수의 공을 끼우는 것이다. 위에 있는 그림에는 기둥이 네 개인 경우에 최대한 많은 공을 끼운 결과가 나와 있다.
- HelpOnInstallation/SetGid . . . . 4 matches
보안상의 이유로 웹서버는 php 스크립트를 `nobody, www, apache` 혹은 `httpd`같은 특별히 제한된 계정으로 실행하게 됩니다. 이러한 이유로 [모니위키] 스크립트가 생성하게 되는 여러 파일 혹은 디렉토리는 이러한 특별한 계정의 소유가 되며 진짜 사용자가 소유하지 못하게 되는 일이 발생하고 어떤 경우는 이렇게 만들어진 파일을 읽을수도 지울 수도 없게 됩니다.
이러한 것을 방지하기 위해서 [모니위키]가 특별한 파일을 생성하게 되는 몇몇 디렉토리에 대하여 그룹 아이디로 퍼미션을 가지게 할 수 있습니다. 이렇게 Setgid를 사용하도록 그룹 퍼미션을 주게되면 wiki.php에 의해 새롭게 만들어지는 모든 파일은 진짜 사용자의 그룹아이디와 같게 되며, 그룹 아이디가 가지는 퍼미션을 진짜 사용자도 누릴 수 있게되어 읽거나 고치거나 지울 수 있게 됩니다.
그런 다음 monisetup.php를 웹상에서 실행시키면 monisetup.php는 필요한 여러 디렉토리를 만들게 되며 이 디렉토리들은 setgid에 적용을 받게 되고, 이렇게 최초 setgid 설정을 마친 후에는 최상위 디렉토리의 퍼미션을 원래의 퍼미션으로 되돌려야 합니다. (보통 `chmod 755`로)
/!\ 모니위키는 config.sh/monisetup.php 설치 스크립트를 통해 setgid를 최초 설치할 때 부터 지원하고 있습니다.
- HelpOnNavigation . . . . 4 matches
* [[Icon(edit)]] 페이지 고치기
* [[Icon(info)]] 페이지에 관한 정보 보기 (페이지의 모든 고친 정보 등)
상단의 페이지 제목 링크를 클릭하면 현재 보고있는 페이지를 가리키고 있는 모든 페이지 목록(역링크)을 보여줍니다.
- HelpOnSmileys . . . . 4 matches
스마일리를 :) 와 같이 넣으려면 {{{:)}}}와 같이 입력합니다. 아래의 스마일리 목록을 참고하실 수 있습니다. {{{:)}}}를 집어넣을 때는 양쪽에 '''공백이 있거나''' 다른 '''글자들과 떨어져 있어야''' 스마일리가 정확하게 들어갑니다.
편집 화면에서 {{{[[SmileyChooser]]}}}를 넣고 싶은 경우에는 아래와 같이 EditTextForm 페이지를 편집해주셔야 합니다.
{{{#editform}}}이 들어가는 부분에 편집 폼이 위치하고 되고, 그 아래에 {{{[[SmileyChooser]]}}}가 들어가게 됩니다.
- HowManyPiecesOfLand?/문보창 . . . . 4 matches
이론상으론 O(1) 시간만에 되겠지만 문제는 입력범위가 2 <sup>31</sup> - 1 까지 들어올 수 있기 때문에 고정도 연산을 수행해야 한다. GNU C++ 이나 Java는 고정도 연산을 수행할 수 있는 클래스를 포함하고 있으나, 윈도우 C++에는 없다(혹, 내가 못찾는 것일수도 있다). 따라서 고정도 연산을 수행할 수 있는 클래스를 짰다. 성능이 너무 떨어진다. O(1) 을 O(n<sup>5</sup>) 정도로 바꿔 놓은 듯한 느낌이다. 이 Class를 개선한뒤 다시 테스트 해봐야 겠다.
- JavaStudy2002/영동-2주차 . . . . 4 matches
* 상욱이의 지적에 따라 하나의 클래스에서 모든 걸 처리하지 않고 클래스를 여러개로 분리했습니다.
Class Board--벌레의 발자국이 남는 판. 발자국을 통해 바퀴벌레의 이동 상황을 보고한다.
* 영동아 while 문안에 중복이 넘 심하다. 조금만 고민해보면 중복 왕창 줄일 수 있을꺼야...^^ --재동[[BR]]
* 데블스 캠프할때 저런거 해결하는 팁 나왔었던 거 같은데. LookUpTable이라고.. -- 인수
- JavaStudy2002/입출력관련문제 . . . . 4 matches
* 여러분이 어려워하시는것 같아, 입력 부분을 만들었습니다. 해당 static method의 기능은 한줄을 읽고, 공백이나, 탭을 기준으로 배열을 반환합니다. 사용 방법은 해당 함수의 main 을 참고하시고, 다른 소스에서 import해서 그냥 사용하세요. --["neocoin"]
참고 {{{~cpp
- JavaStudy2003/두번째수업 . . . . 4 matches
* 위의 내용 제가 정말로 피땀흘려 만들어놓은 내용입니다. Copy & Paste 하나도 없이 제가 순수하게 참고만 해서 만든 튜토리얼입니다. 이렇게 노력한걸 좀 가상하게 여겨서 숙제 좀 제대로 해 보죠? -_-+ -[상욱]
* 앞으로 이런식의 튜토리얼을 3번정도 더 만들어볼까 합니다. 제가 임의로 만든 것이기 때문에 보고서 좀 어렵다 싶은 부분 있으면 바로바로 말해 주세요. -[상욱]
* 왜 들 과제를 낼 생각을 안하고 있죠? 이러다가 이 스터디 폐쇄 됩니다...ㅡ.ㅡ; -[상욱]
== 참고자료 ==
- JavaStudy2004/이용재 . . . . 4 matches
함수명이나 변수명을 지을 때 mynameis같이 쓰면 나중에 보거나 딴 사람이 보았을 때 이해하기가 힘들 수 있으니 myNameIs나 my_name_is처럼 각 단어끼리 구분 짓는 습관을 갖는 것이 좋다고 생각합니다. --[강희경]
죄송, 이름만 보고 04학번 '김용재'라고 생각하고 반말을 했네요. --[강희경]
- KnightTour/재니 . . . . 4 matches
* 재니야--; Night가 아니고 Knight야--;
* 위의 알고리즘은 broot-force하게 루트를 찾는 것인데,
나이트가 위치한 셀이 고립된 경우 BackStep 과정을 한 번 더 실행하면 루트를 찾는 시간이 훨씬 짧아짐.
* 셀이 고립되면 어차피 다른 경로로 접근할 수 없어서 BackStep 을 두번 한 건데...
- LoveCalculator/zyint . . . . 4 matches
오옷~!! 역시 진트.. 무한한 알고리즘의 복잡함에서 저렇게 깔끔한 소스를 만들어내다닛.. 요리왕..아니 소스왕 진트..ㅎ
알파벳에서 숫자가 아닌 문자(alpha = alpha - 'a' +1)로 처리 하였다면 가독성이 좋아지지 않았을까? 그런데, 이건 내 취향일 수도 있지만,.. class로 함수들을 묶어 외부 접근을 못하게 했으면 나중에 소스코드를 재사용하기 훨씬 쉬워졌을텐데. 함수 분류는 현태 말대로 좋은거 같네. (그리고 upper함수는 toupper라고 이미 구현되어 있어.) - 이영호
└ 아!!!!!! 그렇게 하면 되는군요.. 미쳐 생각지 못했습니다.. 단순히 'a' 요렇게만 하면 됐는데 ㅋ 아스키 번호를 생각해내는 수고는 덜필요가 있겠네요
- ModelViewPresenter . . . . 4 matches
* Presenter - 어플리케이션을 표현하고 코디네이트한다. 다른 오브젝트들을 생성하거나 관계를 맺는다.
C++, Java 의 다음 세대 프로그래밍 모델. Smalltalk 의 고전적인 MVC 프로그래밍 모델에서 나왔으며, 다양한 번위의 어플리케이션과 컴포넌트 개발 테스크를 위한 강력하면서 이해하기 쉬운 디자인 방법론. 이 개념의 framework-based 구현물은 MVP 를 em쓰는 개발 프로그램에 훌륭한 가치를 더해준다. MVP는 또한 다중 client/server 나 multi-tier 어플리케이션 아키텍쳐에도 적합하다. MVP 는 IBM 의 대부분의 OO Language 환경들에 대해 단일한 개념의 프로그래밍 모델을 제공해 줄 수 있을것이다.
실제 IBM 의 샌프란시스코 프레임워크에 사용되었다고 들었던것 같다. (그래서 그런지 좀 추상적이면서 광고성의 문구로 보이긴 하다 -_-;) --[1002]
- PHP . . . . 4 matches
PHP를 처음 만든 사람이 자기 홈페이지에 누가 접속했는지 보려고 만들었다고 합니다. 그때 그래서 명칭이 저거였는데 지금 쓰이는 명칭도 저거인지는 확실히 모르겠습니다.
PHP약어를 풀어쓰면 PHP: Hypertext Preprocessor입니다. 약어의 첫번째 글자가 약어이기 때문에 많은 사람에게 혼란을 줍니다. 이와 같은 약어를 재귀적 약어라고 부릅니다. 궁금하신 분은 Free On-Line Dictionary of Computing사이트를 방문해보세요.
= 참고 사이트 =
- PHPStudy2005 . . . . 4 matches
* 만약 참여하고 싶으신 분이 있으면 밑에 참여자 명단에 이름 올려 주세요.
* 일방적인 정보 전달 스터디가 아닌, 하는 방법(메뉴얼 찾아서 하기, 틀정 사이트 Q & A 찾아서 하기, 있던 PHP소스 재활용하기, 모를땐 메신저로 선배한테 물어보기-_- 등..) 을 알려주고, 그에 따라 간단한 PHP 프로그램을 작성해본다.
* [http://ezphp.net/lecture/ 다우니 PHP 초보 강좌] - 정현아 왼쪽꺼 강좌 3 문법 배우기, 4 카운터 만들기만 익히면 된다. 그리고 바로 투입~! ㅋ -[상협]
옛날에 신입생 대상으로 하려고 했던건데 ㅋ, 그냥 PHP 과외 -_-; - [상협]
- PersonalHistory . . . . 4 matches
* [알고리즘] 스터디
* [PPProject] - 2004년 2학기 자료구조&알고리즘
* 참고 페이지 - [GuiTesting]
* 자전거 타고 부산가기 - 7월 1일 ~ 12일
- PowerOfCryptography/이영호 . . . . 4 matches
// 여기서 문자를 숫자로 변경하고 log10 함수를 사용한다.
// 반올림 하지 않고 바로 log10을 취해도 됨.
// 반올림을 하고 정수로 캐스팅한다.
// 수학 함수는 func(). n, p를 받아들이고 정수 k를 반환함.
- ProjectAR/ThinkAbout . . . . 4 matches
엑션 RPG는 리얼타임(실시간)으로 진행이 되고, 임펙트의 화려함이 있어야 게임의 재미가 높아지기에
- 속도는 많이 걱정하지 않아도 될것이다. 해상도가 낮고 텍스쳐의 크기가 작다면 생각보다 높은 속도를 얻을 수 있다. --선호
를 일으키지 않고 잘 진행이 되게끔 하는 것도 생각해 보아야 한다.
들을 많이 고민 할 필요가 있겠다.
- ProjectSemiPhotoshop/요구사항 . . . . 4 matches
시스템 설계에 관한 전반적인 밑그림을 그리기 위해, 팀은 스토리 구현에 필요한 세부적인 작업에 대한 아이디어 수집을 한다. 이 단계에서 고객은 프로그래머가 전혀 이해하지 못하는 부분을 알아 볼 수도 있다. 설계 프로세스를 지켜보면서 팀 전체는 공통의 지식과 자신감을 얻게 된다.
1. BMP 파일 읽고 저장하는 기능 (O)
단, 교재에 있는 코드를 그대로 복사해서 제출하면 참신한 코드라고 할 수 없으므로 가산 점이 주어지지 않는다.
* 레포트 표지에 자신이 수행한 내용 중 3)을 추가한 경우 설명서의 6, 7, 8과 같이 표시하고, 4)의 내용을 추가한 경우 설명서의 번호 9.를 표시한다.
- PythonNetworkProgramming . . . . 4 matches
Python 에서는 기본적으로 Socket Library 를 제공해준다. 그리고 async i/o 모듈인 medusa 가 이제는 기본으로 제공된다.
만일 winsock 을 쓰고 싶다면 windows extension libary 들을 설치해주면 된다.
MFC 의 CSocket 를 사용하는 스타일로 프로그래밍을 할 수 있는데, Python 이기에 코드가 더 깔끔. 그리고 Windows/Linux 양쪽 다 가능.
=== 참고 사이트 ===
- RAD . . . . 4 matches
전통적인 소프트웨어 개발 방법(waterfall 모델)은 오랜 기간의 분석, 설계, 프로그래밍 그리고 테스트 과정을 되풀이한 후 최종 단계에서 비로소 사용자가 요구한 시스템을 완성할 수 있었다. 그러나 이와 같은 방법으로는 소프트웨어의 생명주기가 점차 짧아지는 등의 급변하는 프로그램 시장과 사용자의 요구를 수용하기가 매우 어렵다. 따라서 소프트웨어의 생산성을 향상시키면서 동시에 개발 기간과 비용을 단축시킬 수 있는 방법이 요구되었고, 이러한 연구의 결과로 RAD와 같은 개념이 등장하게 되었다.
RAD는 우수한 소프트웨어 개발 도구를 이용하여 전통적인 개발 방법보다 더 적은 시간과 비용을 투자하더라도 보다 나은 품질의 소프트웨어를 개발할 수 있는 소프트웨어 개발 과정을 말한다. 이러한 RAD 방식의 개발은 응용 프로그램의 전체 개발 과정을 하나로 통합하여 기존의 반복적이고 점진적인 소프트웨어 개발 과정은 그대로 수용하면서도, 개발 과정 초기에 사용자에게 실행 가능한 기본적인 프로토타입을 제시하여 사용자의 요구를 훨씬 더 명확하게 수용하여 차후에 일어날 수 있는 많은 문제를 줄이고, 설계 과정을 그대로 개발에 재사용함으로써 전체적인 개발 기간의 단축을 꾀하는 것을 목적으로 한다.
- RandomWalk2/Vector로2차원동적배열만들기 . . . . 4 matches
vector 좀 들여다 보다가 대충 만들어봤습니다. 고칠거 있으면 마음-_-껏 고쳐 주세요. 행이랑 열 입력 받아서 모두 0으로 초기화하는겁니다
위의 방법 외에도 클래스로 감싸주고, 내부적으로는 1차원 배열을 쓰는 방법이 있겠죠. row*width+col로 특정 원소를 레퍼런스할 수 있습니다.
* array보다 vector를 먼저 가르치는 대표적인 책으로 "진정한 C++"을 가르친다는 평가를 받고 있는Seminar:AcceleratedCPlusPlus
- Robbery/조현태 . . . . 4 matches
.. 너무 놀았으니 자기전에 간단히 한개 풀어주고 자야지.. 해서 푼게 이것.
CSI를 많이 봐서 그런지 형사아저씨를 돕고싶었나보다.^^
경우의 수가 여러가지 나오는 경우를 어떻게 처리할까 고민했는데.. 못찾은 걸로 할까? 아니면 답으로 간주해서 출력할까? 하다가, 이 경우는 못찾은 걸로 처리하였다. ( "Nothing known." 으로 출력된다. )
이전의 경우 도둑이 특정시간에 존재할 수 없는경우 "The robber has escaped." 를 출력했으나, 지금은 모든 시간의 움직임을 고려해서 존재하지 않으면 "The robber has escaped."를 출력하도록 수정하였다. (사실 소스상에선 그다지 바뀐건 없다..^^)
- SharedVision . . . . 4 matches
어떻게 들으면 Top-Down 식의 위에서부터의 명령 하달처럼 들리지만, 나는 다르게 해석하고 싶다. 즉, 사람들 개개인 구성원들이 자신들의 역할을 스스로 결정짓고, 그것이 조직의 비전이 되는 경지.
* 또하나 생각난다면, 구심점이 되는 작은 사람들 (이때쯤 되니 또 20 : 80 법칙 생각이;)이 영향력을 발휘하는 방법. 보통은 이 스타일이 되는 것 같다. 문제제기 & 대안제안자 10%에 실제로 수습하는 사람 10%, 동의해주고 따라주는사람 40%, 60% 가 넘어간 뒤 인력의 작용(한쪽에 커다란 힘이 모여있으면 이 또한 인력이라고 생각한다. 월드컵 축구를 보라. -_-; 뉴스건 사람들이건 신문이건 전부 축구이야기만 하면 영향 안받나;) 30%, 나머지 무관심 10% (반대의견을 내는 사람은 실제 수습자들속에 있기도 하다. 물론 냉소만 보내는 사람도 있지만)
- SignatureSurvey . . . . 4 matches
HTML Template 부분을 Generating 하는 부분을 하던중, 디자이너가 툴로 만든 HTML 코드를 분석해볼때 SigntureSurvey 의 방법을 적용해보면 어떤 일이 일어날까 의문이 들었다. 그래서 간단하게 실험해보고, 어떠한 View 를 얻을 수 있을까 구경해보다.
28 냉장고<..>2
정확히 분석을 한 것은 아니지만. <> 태그 안으로 쓴 글자수가 같다면 화면상에서도 비슷한 것을 보이게 하기 위해 C & P 를 했을 확률이 높다. 그러면 그 부분에 대해서 looping 을 하는 식으로 묶으면 될것 같다. 종이로 찍어놓고 보면 반복되는 부분에 대해서 일반화된 패턴이 보인다는 것을 알 수 있다. 그 부분에 대해 적절히 1차적으로 검색을 하고, generating 할때의 단위들을 끄집어내면 되는 것이다.
- SmallTalk_Index . . . . 4 matches
| <보기> >: 현재 진행되고 있는 글
| *: 현재 쓰여지고 있는 글
| ! 2.2.6. 고급 셈! 셈! 셈! <#11>
| ! 2.3.5. 무른값, 굳은값, 그리고 바로값 <#19>
- SoftwareEngineeringClass/Exam2002_1 . . . . 4 matches
문제 달랑 3개라는 것도 알고 있었고, Sprial Model 은 나올줄 알고 있었건만. 우.. 복병을 만나다;
암튼 3문제중 두문제가 QA에 관한 것이라니 당황; Structured A&D 나 정보공학에 대해서는 아에 언급이 없군. (혹시 이거 kaspa 시험인가; 아무리 이경환 교수님이 kaspa 회장이시라고 하지만.) 암튼. 흑; --석천
- Spring/탐험스터디 . . . . 4 matches
* 세미나가 아니라 각자가 공부한 것을 바탕으로 공유하고 정답을 찾아나가는 스터디
* 스터디 모임에서는 각자 한 주간 학습하고 과제를 수행한 경험을 공유하고 궁금증을 해결
* 스터디 대상이 매우 방대하므로 충분한 개인적인 학습과 과제 수행, 그리고 스터디 모임에서 많은 질문을 할 것
- Telephone . . . . 4 matches
미국에서는 이발소 TV 광고의 경우 전화번호와 동시에 'HAIRCUT' 이라는 문구를 보여준다. 'HAIRCUT' 은 전화기의 번호의 각 영문에 대응되기 때문에 전화번호로 번역이 가능하다.
자 이러한 광고문구 글을 해당 전화번호로 번역해주는 프로그램을 만들어보자.!
다음 화일을 편집기에 작성하고, 실행화일이 있는 디렉토리 (ex)1002\Telephone\debug) 에 저장하세요.~
그 다음 소스를 수정하실 때마다 test.bat 화일을 실행하시고, 비교해보세요.
- TowerOfCubes . . . . 4 matches
여러 테스트 케이스가 입력될 수 있다. 각 테스트 케이스의 첫번째 줄에는 주어진 정육면체의 개수를 나타내는 정수 N(1≤N≤500)이 입력된다. 그 밑으로 N줄에 걸쳐 각 정육면체를 설명하는 내용이 입력된다. 각 정육면체를 설명하는 부분에서는 각 면의 색이 입력되는데, 각각 앞, 뒤, 왼쪽, 오른쪽, 위, 아래의 색을 나타내는 색이 순서대로 입력된다. 편의상 색은 1에서 100까지의 정수로 표현하자. 정육면체는 무게가 증가하는 순서대로 입력된다고 가정해도 좋다. 즉 첫번째 정육면체가 가장 가볍고 N번째 정육면체가 가장 무겁다고 가정할 수 있다.
우선 각 케이스마다 출력 예에 나와있는 식으로 테스트 케이스 번호를 출력한다. 그 다음 줄에는 가장 높은 탑의 정육면체 개수를 출력한다. 그 다음 줄부터는 탑을 이루는 정육면체를, 맨 위에 있는 정육면체부터 아래로 내려가면서, 한 줄에 하나씩 출력한다. 정육면체를 출력할 때는 입력된 순서를 나타내는 번호를 출력하고 스페이스를 하나 출력한 다음, 어느 방향에 있던 면이 위로 올라가도록 쌓았는지를 나타내는 문자열(front, back, left, right, top, bottom, 앞, 뒤, 왼쪽, 오른쪽, 위, 아래를 나타냄)을 출력한다. 답이 여러개 있을 수 있는데, 그 중 아무 답이나 출력해도 된다.
- UniversalsAndParticulars . . . . 4 matches
뭘 가르쳐야 하나. 나는 특수를 통해 보편을 가르쳐야 한다고 생각한다. 특수를 가르치느라 보편이 가리워지면 안된다.
WardCunningham은 이런 말을 했다. 작지만 유용한 프로그램을 매일 만들어봐라. 복잡하고 큰 걸 만들다 보면 중요한 아이디어가 감추어져 버릴 수 있다.
대학에서는 특히 보편을 배워야 한다. 소학이 아니고 대학이기 때문이다. 그러나 보편은 특수를 통할 때에 맥락을 갖는다.
자바 스윙에서 어떤 API를 통해 어떻게 그림을 그리는지를 가르치기 보다, Event Driven Programming을 가르치되, 스윙이라는 맥락을 방편으로 이용해 가르친다. 해당 프레임웍의 API가 복잡한 경우, 학습자들은 오히려 그 API를 외우고 공부하느라 더 중요한 것을 잊을 수 있다. 따라서 이런 경우 가르치는 사람이 미리 좀 더 추상적인 차원의 레이어를 만들어(이를 교육학에선 스캐폴딩이라 한다) 제공할 수 있다.
- Vaccine . . . . 4 matches
도스 시절부터 v3을 사용해왔고 바이러스 검출 능력이 좋고 속도가 빠르다고 생각되어 계속 사용하고 있습니다. 구하기 쉽다는 장점도 있는것 같네요.; -- 재선
- ViImproved . . . . 4 matches
사실 다들 오해하고 있는 것 중의 한가지로는 vim은 불편하다는 것이다. 최근의 vim은 플러그인을 통해 여러가지 기능을 지원하며 그 중에는 단어 자동완성을 물론 문맥 자동완성뿐만 아니라 대부분 언어에 대한 syntax highlight를 지원한다. 요즘에는 흔히 볼수있는 탭기능도 지원하기 시작한지 오래되었으며 좌측에 파일 트리를 띄워두고 작업할수도 있다. 또한 .vimrc파일을 통한 강력한 커스텀마이징이 가능하며 이를 이용하여 이클립스를 능가하는 편의성을 지니기도 한다.
* vimrc 을 직접 건들여 수정하기 힘든 사람들에게 꼭 추천하고 싶은 사이트 [[https://vim-bootstrap.com]] - 사용법은 직접 검색바람 - makerdark98
= 참고 링크 =
- WordPress . . . . 4 matches
MovableType이 유료화의 길을 걷기 시작한뒤 그 뒤를 바짝ㅤㅉㅗㅈ고 있는 설치형 Blog. 오픈소스로 개발되고 있으며 php 를 기반으로 동작하며, 충실한 플러그인 기능이 인상적이다. 기본적으로 css 를 통한 블로그 디자인이 가능했으며, 현재는 테마기능역시 지원하고 있다.
특징적인 강점으로는 mt에 비해서 굉장히 설정이 간편하고, configuration 이 엄청나게 간단하다.
- WorldCup/송지원 . . . . 4 matches
|| 입력 ||팀의 수와 경기 수, 그리고 각 팀의 총 획득 스코어를 입력 (0은 끝을 의미) ||
== 알고리즘 ==
* 이길 경우 한 팀이 3점 받고 비길 경우 각 팀이 1점씩 받으므로 승패가 가려지면 총 3점, 안 가려지면 총 2점이 취득될 것임.
* 범위에 따른 예외 처리 따위 하나도 안했는데 Accepted 되었을 뿐이고...-_-
- XpWeek . . . . 4 matches
[http://www.okjsp.pe.kr/upload/Agile_Voice.zip 기민한 문화 이야기]를 안 보신 분은 꼭 보고 오셨으면 합니다.
고객과 개발자 역할을 때때로 바꾸어 가며 합니다.
xp에 대한 기본 지식이 없어서 조금 막막하지만 해보고 싶군요! -- 재선
여차저차 해서 프로젝트가 끝나갑니다. 내일은 크리스마스 이브죠. 마지막 하루인데 제 시간에 나와서 깔끔하게 마무리 짓고 끝내 봅시다! --[Leonardong]
- [Lovely]boy^_^/Cartoon . . . . 4 matches
보고 싶은거 있으시면 말씀하세요.
|| 제목 || 가지고 있는 권수 || 제목 || 가지고 있는 권수 ||
저기여.. 왜 답이 없으시네여.. 저 정말로 보고 싶어서 그러는데여..ㅜ.ㅜ
- [Lovely]boy^_^/Diary/7/29_8/3 . . . . 4 matches
|| C++ || 슈퍼마켓 뜯어 고치면서 새로운 방법 익힘 || 100%? || 커맨드 패턴이라고 부르더군 ||
* 역시 밤 10시까지 일하고 새로하는 라이벌 보고 스타리그 보다 보니 아무것도 못했다
- [Lovely]boy^_^/EnglishGrammer/PresentAndPast . . . . 4 matches
* 우리말로 하자면 현재 진행형. 말하는 시점에서 그 일이 진행되고 있음. 아직 끝나지 않음
* 꼭 말하는 시점에서 그 일이 진행되고 있지 않더라도 요즘 하고 있는 일 같은거 말할때 쓰는것 같음.
(일반적이고 반복적으로 일어나는 일을 표현할때 단순 과거를 쓴다. 말하는 시점에서 일어나는지 안일어나는지는 중요하지 않음)
- bitblt로 투명배경 구현하기 . . . . 4 matches
이름이야 멋지게 지었지만, 투명배경이라고 해도, 사실은 배경이 보이게 이미지를 겹쳐그린다는 뜻입니다.^^
그리고 투명화될 색상은 RGB값 255,0,255입니다.^^
흠흠.. 진정하고, 이제는 배경도 처리를 해줘야 겠죠?
이런거 말고 좌우로 자동으로 바꿔서 그려주는 방법은 엄나;;;
- cogitator . . . . 4 matches
향후 소프트웨어산업쪽의 단가측정및 정책방향을 연구하는 position에 있고자함
혹 비슷한 방향의 공직/ 기업쪽 전략파트를 물색하고있을지도 모르겠군.
= 후배들에게 하고 싶은 이야기 =
그리고 나무와 숲을 번갈아 볼줄 아는 식견을 넓히시기를..
- jQuery . . . . 4 matches
jQuery를 사용함으로써 일반적이고, 반복되며, 업무량을 증가시키는 불필요한 마크업들을 제거할 수 있고, 이를 통해 작고, 훌륭하며, 이해하기 쉬운 자바스크립트 코드를 작성할 수 있습니다.
ajax의 바람을 타고 jscript 에도 라이브러리의 바람이 불어오네요;; -_-;
- mantis . . . . 4 matches
* apm 설치후, 걍 www 폴더에 복사후 웹으로 해당 localhost/mantis 들어 가면 인스톨 나오고 DB 관련 한것을 넣어 주면 설치가 됩니다.
* /core/user_api.php 에서 416line 을 아래와 같이 바꿔서 이메일 인증이 아니라 임시 암호를 부여하고, 사용자가 바꾸게끔 한다.
* administrator , 암호는 root 로 로그인 후에 계정관리에서 preference 부분에 가서 제일 하단 부에 있는 언어 선택을 한글로 해야 한글로 메뉴를 보고 한글을 사용할 수 있습니다.
테이블을 만들때 euc-kr 으로 만들었고 euc-kr 을 mantis 에서 사용하기 위해 아래와 같이 mantis 소스를 수정 하였습니다.
- programmer . . . . 4 matches
제가 생각하는 것은 의미보다는 범주를 염두에두고 범주의 정의를 확실히 해둘 필요가 있는거 같애서 적었는데, 상당히 애매할꺼 같군요. ["nautes"]
제가 표현하고자했던 말은 누구를 프로그래머라고 부를 수 있냐는 것이였습니다. 초보/중급/ 이런건 생각해보지 않았는데, 그렇게도 여길 수 있겠군요. 너무 막막하죠. "프로그래밍 언어를 이용하여서 현재 프로그램을 만들고 있거나 가까운 시일내에 만들 사람" 먼저 간략히 이정도만 정의해놓죠.
- whiteblue/파일읽어오기 . . . . 4 matches
음. 근데 이거 스펙대로 한건가? 스펙에는 linked list 아니면, array 쓰라고 한것 같은뎅..-_-a - 임인택
음. 정확히 linked list 라고는 말할수 없고.. 친척 정도라고 말할수 있으려나. 두개 사이에 교집합이 존재하지만, 어떤것이 다른 하나에 속한것은 아니니 - 임인택
- 고한종/on-off를조절할수있는코드 . . . . 4 matches
[고한종]
//이 부분은 scanf_s("%c",&keyOnOff);로도 쓸 수 있지만 scanf_s와 scanf의 차이도 잘 모르고 scanf는 사실 매우 어려운 함수;
오늘 장용운이에게 비효율적이라는 말을 들었습니다. 그래서 용운이가 이렇게 고쳐주더라구요.
// 코드 쓰고 싶은거
- 김영록/연구중/지뢰찾기 . . . . 4 matches
뭐..뭐냐.ㅎㅎ 나는 지뢰 파인더 만들고 있는데.. 옆에서 지뢰찾기를 만들다닛..
지뢰 파인더 알고리즘에 아무것도 없는 빈칸 주위를 찾는 알고리즘을 만들어 봐서 그런데..ㅎㅎ
ㅎㅎㅎ 그럼 수고하라구^^ - [조현태]
- 꼬마혜성 . . . . 4 matches
DeleteMe 그러고 보니 자네도 무지 재미있군. 위키 어렵다고 쓰기 힘들다고 하더니 개인 위키 만들어서 돌리고 있었나 보군. 다소 황당한 느낌이 든다. zp서버가 공짜 호스팅 업체로 생각되는 것은 당연한것 아닐까. --["상민"]
- 넥슨입사문제 . . . . 4 matches
요새 카트라이더로 말이 많은 넥센이라는 회사가 있지요. 건너 건너 아는 사람이 이 회사에 입사를 하려고 이력서를 냈더니 서류는 통과했습니다. 한데 면접 보기 전에 이 3 문제를 주고 풀어서 메일로 제출하라고 했더랍니다. 이 중 3번 문제가 재미있었습니다. :) --재동
이전에 내 친구가 넥슨입사문제 보여준건 길찾기 알고리즘 구현이였는데, 이번엔 또 다르네..~ 종종 바뀌는듯. --[1002]
- 데블스캠프2009/금요일/SPECIALSeminar/조현태/변형진/김준석 . . . . 4 matches
2. 커버리지 테스트!! 보다 많은 테스트!! 좋은 인생 목표!! 를 세우고 진행해야겠다.
1. 일단은 기본이 중요하다. 그리고 기본에대한 방향성에 대해 어느정도 감이 잡히는듯 하다.
2. 실무에 관해서 학교에서 배우고 나가서 '난 딱 이정도다.'라고 간단하게 증명되는게 아닌것 같다.
- 몸짱프로젝트 . . . . 4 matches
DataStructure를 배우면서 나오는 알고리즘을 구현해보자는 취지로 만든 프로젝트페이지.
* 참고한 책 : ProgrammingPearls(번역서 [생각하는프로그래밍])
== 해 보고자 하는 것 ==
* 피타고라스 수
- 문제풀이/1회 . . . . 4 matches
책에서 숫자를 가지고 장난 친경우는 없는것 같아서...
이런 경우를 개선하기 위해서 map 함수가 있는것입니다. 이를 Haskell에서 차용해와 문법에 내장시키고 있는 것이 List Comprehension 이고 차후 [http://www.python.org/peps/pep-0289.html Genrator Expression]으로 확장될 예정입니다. 그리고 print 와 ,혼용은 그리 추천하지 않습니다. print를 여러번 호출하는것과 동일한 효과라서, 좋은 컴퓨터에서도 눈에 뜨일만큼 처리 속도가 늦습니다. --NeoCoin
- 박효정 . . . . 4 matches
처음 개인페이지의 추천 양식입니다. 적당히 고쳐서 쓰세요.
나도 코딩신이 되어보고싶땅 ㅠ_ㅠ!
== 하고싶은 것 ==
== 하고싶은 말 ==
- 사랑방 . . . . 4 matches
시험이 막바지에 이르자, 사람들이 글러쉬를 하고 있다. --["neocoin"]
''약간은 사기라고 봐도 됩니다. 퀵소트에서 첫번째 원소를 피봇으로 잡는 경우가 헤스켈에서 아주 간단히 표현될 수 있다는 점을 이용한 것이죠 -- 첫번째가 피봇이 되면 문제가 생기는 상황들이 있죠. 보통 헤스켈의 "간결성"을 강조하기 위해 전형적으로 사용되는 예입니다. 뭔가 독특한 점을 강조하기 위해 쓰인다는 것 자체가 이미 약간의 과장을 암시하고 있습니다. see also Seminar:QuickSort --JuNe''
* "&" 이고 "\d{1,3};" 은 아닌 것.
- 새싹교실/2012/아우토반 . . . . 4 matches
> '''새싹 교실을 통해서 배우고 싶은 것, 얻어가고 싶은 것, 목표와 각오 등을 적어주세요!!'''
* 새싹 교실을 통해서 내가 C에 대해 알고 있는 것들을 되짚어 보고, 후배님들을 잘 이끌어 줄 수 있는 기회가 되었으면 좋겠습니다. - [장용운]
- 새싹교실/2012/열반/120402 . . . . 4 matches
* 위의 printstar(int) 함수가 정의되었다고 가정
* printstar 및 N이 정의되었다고 가정했습니다.
* 자잘한 문법오류들을 보니 실습이 자주 필요하다는 생각이 듭니다. 다음주부터는 새로운 내용보다는 기존 내용을 확실히 하고, 중간고사 준비도 약간 해줘야겠습니다. -[정진경]
- 새싹교실/2013/책상운반 . . . . 4 matches
2. 새싹들의 이해도를 높이고 보완하는 데에 신경을 쓸 것입니다.
> '''새싹 교실을 통해서 배우고 싶은 것, 얻어가고 싶은 것, 목표와 각오 등을 적어주세요!!'''
= 이 반에 대해서 하고 싶은 말 =
- 송년회날짜정하기 . . . . 4 matches
가능한 날에 이름을 적고, 모아봅시다. 가장 많은 사람이 오는 날짜를 송년회 날로 합시다.
* 26일에 있는 혜영이 누나랑 30일에 있는 분은 다른 분인가요? 성을 안 붙이고 붙이고 한걸로 보아 혹시 26일에 있는 분이 97선배인가 싶어서요...^^; --창섭
* 아.. 또 만들려고 했었는데..ㅋㅋ 그러면 되겠네요. ^^; --창섭
- 순차적학습패턴 . . . . 4 matches
'''작가는 서로를 반박하고, 서로의 아이디어를 확장하고 부차적으로 서로를 참조하기 때문에 작품을 연대 순으로 학습하지 않는 경우 독자는 중요한 연결고리를 놓치거나 오해하기 쉬워진다. 일부 작품은 순서대로 학습하지 않으면 절대 이해할 수 없을 수도 있다.'''
연대 순으로 작품의 순서를 매기고 나면, 그룹은 지적인 아젠더([아젠더패턴])와 학습 주기(StudyCyclePattern)를 만들게 된다.
- 숫자를한글로바꾸기/정수민 . . . . 4 matches
알고리즘은 문제가 없는데 자잘한 실수때문에 2시간이나 더걸려버렸다.
이런식으로 시간소모한게 하루이틀은 아니니 넘어가고;
그리고 코딩 스타일을 여러가지 건드려보는 중이다.
이런건 만들시간있고 자바는 안건드리는거 승한이 형이 알면 화낼태지만 ㅡㅡ;;;
- 숫자야구/강희경 . . . . 4 matches
cout << "☞예: 컴퓨터가 123을 고르면 521는 원스트라이크 원볼," << endl;
cout << "컴퓨터가 숫자를 고르고 있습니다." << endl;
이 코드를 다시한번 [리팩토링]하여 보세요. 프로그램을 조금 더 이해하기 쉽게 그리고 코드의 모양을 좀더 이쁘게 바꿀 수 있지 않을까요? 이미 작성했던 코드를 다시 작성한다거나, 기존에 자신이 작성했던 코드를 [리팩토링]한다면 많은 것을 얻을 수 있을 것입니다. [임인택]
- 시간맞추기/조현태 . . . . 4 matches
그런데.. 도데체 왜 for를 쓰라고 했는지..ㅠ.ㅜ while도 아니고..
뭔가 for를 for답게 뽀대나게 만들어 줄려고 하다보니 길어졌다.^^;;;
그리고 문제에 오차율이 빠져있었다. 얼마나 정확하게 하라는건지..1/1000초는 아닐테지?? 1/100인가??
- 오페라의유령 . . . . 4 matches
뮤지컬의 이미지때문인지 (한번도 안본 뮤지컬에 대해 이미지를 떠올리는것도 우스운 일이다. OST와 Sarah 의 뮤직비디오는 많이 보긴 했지만) 크리스틴을 볼때마다 사라아주머니의 젊었을때의 사진을 떠올렸고, Phantom 이 등장할때엔 그 Main Theme (Phantom 의 그 멋진 웃음소리와도 같게 들리는...) 를 떠올렸다.
* EBS 에선가 Joseph and the Amazing Technicolor Dreamcoat를 방영해줬던 기억이 난다. 성경에서의 요셉이야기를 이렇게 표현할 수 있을까; 형 왈 '아마 성경을 이렇게 가르친다면 교회에서 조는 사람들 없을꺼야;' 어떻게 보면 '아아 꿈많고 성공한 사람. 우리도 요셉처럼 성공하려면 꿈을 가져야해;' 이런식이였지만, 아주 신선했던 기억이 난다.
* 암튼 Phantom of the opera 에서 가장 멋진 목소리는 Phantom 이라 생각. 그리고 당근 Sarah 아주머니; Phantom 이라는 캐릭터 이미지가 맘에 들어서. 그리고 노래도.
- 음계연습하기 . . . . 4 matches
피아니스트는 연주 능력 향상에 크게 도움이 될 것 같지 않은 음계를 여러 달 동안 계속 연습하기도 한다. 그러나 그 연습이 피아니스트로 하여금 원하는 음악적 성취를 이룰 수 있도록 해준다. 외과 의사는 능숙한 수술 실력 향상에 크게 도움이 될 것 같지 않은 작은 손놀림을 익히기 위해 여러달 동안 계속해서 봉합용 실과 씨름을 한다. 외과 의사는 그 꾸준한 연습 덕분에 수술을 빠르고 정확하게 하게 되고, 그 결과 소중한 인명을 구하기도 한다. [[HTML(<FONT COLOR=RED>무언가를 성취하는 것은 반복적인 연습에 의해서만 가능하다. </FONT>)]]
에릭슨(Ericsson)의 전문성(expertise)연구가 이쪽 방면에 유명합니다(see also http://www.vocationalpsychology.com/expertise.htm 및 각종 인지심리학 서적). 바이올린 전문가들에 대해 막대한 추적조사를 해보았는데, 그들의 실력은 자신이 바이올린 연습(정확히 말하면 deliberate practice)에 투자한 시간과 거의 비례했습니다. 하지만 에릭슨은 여기에 전제를 답니다. 단순한 반복 연습은 아무 도움이 안된다고 강조합니다. 자기 자신을 관찰하는 것, 그리고 피드백을 통해 재조정하는 것이 중요합니다.
- 정모/2003.11.17 . . . . 4 matches
=== 고려대학교 생물학 관련 세미나 ===
* 뒷풀이 비용으로 지난번에 걷었던 회비(총 2만원)을 썼고, 그때에 걷었던 것도 회비로 치겠습니다.
음... 그때 돈을 안가지고 가서 못냈던것으로 기억합니다. - 창재
* 자바 스터디: 무기한 보류. 위키 페이지에 끝났다고 써놓기.
- 정모/2005.12.15 . . . . 4 matches
C++05 -> 어느정도 진도 나가고 흐지부지.
다음주 모임에는 꼭 결정 할 것이니 각자 생각해 보고 오시기 바랍니다.
- 다음주 모임에 고학번 선배님께서 1,2학년을 대상으로 이시기에는 어떤걸 보면 좋을거라는 "참고용"조언 해 해주셨으면 해요 ^^
- 정모/2012.8.22 . . . . 4 matches
* 참여자 : [변형진], [김준석], [김수경], [권순의], [서민관], [서영주], [고한종], [이민규], [이진규], [김태진], [정진경], [김민재], [권영기]
* [고한종]학우의 Mac | Xcode | iOS를 반년 정도 쓰면서 느낀 경험담. -매우 난잡함-
* 회계 내역과 관련된 중간 보고서 제출
* 오늘( 12. 08. 22 ) 나머지 절반을 처리할 계획 입니다. - [고한종], [이진규], [김태진], [권순의], [정진경], [김민재], [김해천]
- 정모/2013.3.4 . . . . 4 matches
* 참여자 : [김민재], [송정규], [고한종], [김태진], [김윤환], [서민관], [강성현], [김해천], [정종록], [장혁수], [구남영], [이병윤], [권순의]
* [고한종] 학우의 밀리언아서를 가장한 직접만든 확밀아 안드로이드 앱 소개 + 설명.
* 새싹강사는 12명으로 예상하고 계획중.
* 링크좀 걸어줘라.. 여기 찾아오는데 검색을 써야 하잖아; - [고한종](13/03/16)
- 조재화 . . . . 4 matches
* 03. 한해동안 C++MFC와 PYTHON그리고 JAVA를 좀 잘 이해해서 컴퓨터 프로그램이나 겜을 많이 만들고 싶당.
* 그리고 겨울방학 미국배낭여행~~ㅋ
== 하고싶은 말 ==
- 지금그때2006/세부사항 . . . . 4 matches
목적 책을 소개 받고 그책을 기증 받아서 후배들이 그책을 읽고 많은 생각을 더 할수있게 하고 선배님은 자기에 책을 소개함 으로써 후배들에게 좋은것을 알려준다.
참여율이 적어도 선배님들께서 좋은 것을 알려 주실려고 하는 것 이기때문에 무조건 받는다.
- 파이썬으로익스플로어제어 . . . . 4 matches
* ie의 type이 instance라고 나오는데, ie가 사용할 수 있는 메소드(맞나요?)에 대한 설명이 있는 문서가 어디 있나요? 어제 보여주신 id, pw를 입력폼에 넣는 메소드 및 사용법을 알고 싶어요. -- 재선
* 파이썬 인간적으로 너무 쉽네요. 우린 c++/mfc/atl/com으로 하고있는데 - [ljh131]
== 참고 ==
- 프로그래밍잔치/첫째날 . . . . 4 matches
* 페이지를 고칠수 있는 '''용기'''를 생각해 보자.
1. 제시되는 여러가지 종류의 언어중 하나를 고른다.
* 알고 있는 장점. 단점?
그룹별 진행자가 존재하고, 위키 좋은점, 나쁜점(불편한점) 으로 나누어 진행
- 하얀가면의제국 . . . . 4 matches
오랜만에 박노자씨 책을 읽었다. 무심코 받아들이는 담론을 다시 생각하게 만든다. [당신들의대한민국]이 한국의 배타적 성격을 잘 드러내었다면, [하얀가면의제국]은 힘있는 나라가 보여주는 야만성을 지적하고 경각심을 일깨운다.
대한민국은 지리적으로도 여러 나라 사이에 있다. 그렇다고 다른 나라에 맞설 힘이 대단한 것도 아니다. 따라서 외세에 기대거나, 극명히 외세에 저항하기 쉽다. 이는 개인에게도 해당한다. 동경하거나 저항하거나. 그리고 동경하는 무리가 더 많다.
[장정일삼국지]를 읽으면서 강대국 사이에 낀 약소국의 처신이 어때야 하는지 생각했는데, 이번에도 또 생각하였다. [하얀가면의제국]에서도 말하지만 외세에 의존하면 역사가 말해주듯이 그 끝이 좋지 않다. 그렇다고 힘 없이 외세에 대적하기란 어렵다. 불행히도 지금 대한민국은 외세에 의존하는 듯이 보인다.
- 후기 . . . . 4 matches
함수형 언어 Haskell을 배우는 시간을 많이 가졌는데 참 재미있었다. 더욱 재미있는 것은 함수형 언어의 좋은 점이 다른 언어에도 녹아들 수 있다는 것이다. 수학에서 출발하는 개념이 실제로 쓰이도록 중간에서 다리 역할을 하고 있다. 수학이 프로그램 언어에 미치는 영향력을 볼 때 학부 때 컴퓨터 공학 대신에 수학을 전공해도 좋을 것 같다. 그게 안 된다면 대안언어축제라도 참가하면서 [성장]할 수 있어야 한다.
대안언어가 보여준 많은 새로운 생각이 널리 퍼지지 않아 안타깝다. 혁신을 이루려면 많은 사람이 그 아이디어를 받아들여야 한다던데, 대안언어축제 이후에 어떠한 변화가 있을까? 새로운 아이디어를 적용한 코드를 작성할 수 있을까? 새로운 프로그램을 만드려고 할 때, 현재 사용하는 언어보다 더 적당한 언어를 선택할 수 있을까? 기존에 개발하던 프로그램이 있을 때는 새로운 언어로 갈아탈 수 있을까? 창의적인 아이디어와 실용성 사이 간격을 좁혀서 대안언어가 정말로 대안이 되길 꿈꿔본다.
더 대중적인 축제를 만들 생각도 해 보았다. 사람에게 감각적인 자극을 줄 수 있는 언어나 그 언어로 만들어진 프로그램, 혹은 다른 무언가가 있으면 어떨까? Mathmetica에서 프랙탈로 삼각형을 그리는 모습을 보고 사람들은 감탄했다. 패널토론 도중에 Squeak에서 보여준 시뮬레이션 역시 놀라웠다. 마이크로칩을 프로그램하여 모르스 부호를 불빛으로 깜박거리는 모습도 신기했다. 프로그램 언어에 익숙하지 않은 다른 분야를 공부하는 참가자들은 눈에 보이지 않는 동작 보다는, 감각적인 자극에 많은 호기심을 느낄 것이다. 시각 이외에 다른 감각을 자극하는 볼거리가 준비된다면 가족끼리 대안언어축제에 놀러 올 수 있을 것 같다. 마치 구경도 하고, 직접 체험해 볼 수도 있는 전시장에 온 것 같은 기분을 낼 수 있을 것이다.
- 05학번만의C++Study/숙제제출/2 . . . . 3 matches
* 숙제1/허아영 <<- 글쓰기를 눌러서 이런 식으로 페이지를 만드시고 거기에 자신의 소스를 올리시면 됩니다.
* 여기서 질문!! 전달인자가 1개인 함수와 2개인 함수만들어 오버 로딩 하라는 것인가? 그게 아니라면... cin을 라인별로 입력 받아햐겠는데.. 어떤때는 변수를 하나만 받고 어떤때는 변수를 두개 받아야하니.. 라인별로 처리 해야할듯.. 하지만 라인별로 처리해도....;;;; 음... 생각이 떠오르지 않음..;;; 쳇..;;[[BR]] 어제 교수가 defalte 에 대해 설명했던거 같은데.. 전달인자를 취하지 않으면 이미 입력된 변수의 값으로 처리한다. 라고...;; 음..;;;이렇게 해야하나?
- 2thPCinCAUCSE . . . . 3 matches
* 맞춘 문제에 대해서는 경시 시작부터 문제를 제출한 시각까지 시간을 분으로 환산한 것이 점수로 주어진다. (따라서 점수가 적을수록 유리) 그리고 여기에 penalty 점수를 합산한 것이 그 문제의 최종 점수가 된다. 예를 들어, 어떤 한 문제에 대해서 다섯 번째 제출을 시작후 1시간 20분에 하여 맞추면, 지나간 시간이 80분이므로 80점, 네 번째까지는 틀렸으므로 4번*10점=40점이 penalty, 최종 점수는 120점이 된다.
3. 필요 없는 파일을 생성하거나, 표준입력을 하지 않고 파일 입력을 하면 역시 틀림.
5. 채점 팀은 채점에 필요한 데이터를 파일로 만들어서 가지고 있다가 이를 학생의 수행파일에 파일 redirect를 통하여 수행파일에 입력시킨다.
- 2학기파이선스터디 . . . . 3 matches
(참여하고 싶으면 이름을 적으세요.)
* 지금 문제가 많고, 너무 어설픈데 방학까지 끌고가는건 어떠냐? - 창재
- 2학기파이선스터디/문자열 . . . . 3 matches
>>> p = ''' 내가 지금 이짓을 왜 하고 있는가??? 황재선은 못생겼다.
나휘동은 레오나르동이다. 장창재는 최고의 파일럿이다.
* 자주 쓰일거라고 예상 되는것 중심으로 편집.
- 3N+1Problem/Leonardong . . . . 3 matches
* 구하는 범위가 Cutoff보다 크면 시작하는 수가 홀수일 때 CycleLength가 클 것이므로 홀수부터 시작해서 짝수는 무시하고 구한다.
파이선만으로 12초가 걸린다. 새로운 걸 한 번씩 시도할 때마다 시간이 줄어들어 신기했다. 중간에 코드를 고치면서 시간 테스트만 돌리다가 답이 잘못 나오는 코드를 가지고 한동안 작업했었다. 새로운 기능을 추가하면 테스트를 전부 돌려야겠다. --[Leonardong]
- 5인용C++스터디 . . . . 3 matches
* '''숙제 및 결과물은 UploadFile을 참고하여 올리면 됩니다.'''
2003년 8월 27일로 공식적인 스터디가 종료되었습니다. 하지만 비공식적으로 최종 결과물이 만들어질때까지 계속 하는거 아시죠?^^ 강요하는건 아니지만 최종 결과물을 만들어서 목표를 달성해보면 많은 도움이 될 것입니다. 도움이 필요하면 언제는 연락주세요~ 그리고 다들 [5인용C++스터디/후기]에 스터디를 끝내고 난 후기를 적어주세요~ --[상규]
- AM/20040705두번째모임 . . . . 3 matches
* 연락을 하지 않고 온 사람들로 인해 기존 정한 룰이 깨짐. 룰에 의한 효과도 저하됨.
* 스터디 진행을 두 부분으로 나누는 방법. 앞부분에서는 이론적인 부분을 같이 정리하고, 뒷 부분에선 Pair로 실제 구현을 진행하기
* 실습실을 이용할때는 반드시 전에 미리 와 있는 사람들에게 양해를 구하고 스터디를 진행하기.
- AOI . . . . 3 matches
''누구나 문제 푸시고 해당 페이지에 올려주세요.''
* 어려운 문제의 경우 해당 알고리즘 지식이 필요한 경우가 많습니다. 문제를 해결한 후 꼭 문제 접근방식을 코드와 곁들여 넣어 주세요.
* 기존 [AOI] 경우는 쉬운 문제 위주여서 언어실력의 기초를 다지는 효과가 컸지만 앞으로는 심도있는 문제를 풀어보며 알고리즘과 문제해결능력향상 위주의 공부를 하도록 하겠습니다.
- AnC . . . . 3 matches
실력 그리고 커뮤니티 형성을 주 목적으로 두고 있는
현재 ZP 07학번 [김동준] 학우가 선수로 뛰고 있다.
- AppletVSApplication/영동 . . . . 3 matches
* 개발된 소프트웨어의 설치를 신경 쓰지 않아도 된다. 실제 플랫폼과는 무관하므로 플랫폼이 다르다고 코드 수정할 필요가 없다. 그런데 이건 자바 가상머신이 가진 기본적인 특징아닌가요...?
* 잘못된 코드로 시스템의 다른 부분이 영향을 받지 않는다. 자바 언어와 애플릿 구조에서 갖고 있는 보안성 때문이다. 이런 점 때문에 회사 내부에서만 사용하는 소위 인트라넷 클라이언트/서버 시스템에 자바가 널리 사용되고 있다.
- AppletVSApplication/진영 . . . . 3 matches
* "'''Application'''"은 main()함수를 포함하고 있어서 자기 스스로 실행이 되는 반면에
* "'''Applet'''"은 main()함수 없이 자기 스스로 실행되지 않고 html에 의해 돌아가는 것 같습니다.
어디까지나 '한 번' 실행해보고 느낀 점일뿐...;;[[BR]]
- Basic알고리즘/팰린드롬/조현태 . . . . 3 matches
== [Basic알고리즘/팰린드롬/조현태] ==
[Basic알고리즘] [Basic알고리즘/팰린드롬]
- BeeMaja . . . . 3 matches
마야라는 꿀벌이 있다. 마야는 수천 마리의 다른 벌들과 함께 육각형 모양의 벌집에서 살고 있다. 그런데 마야에게 문제가 생겼다. 그녀의 친구 윌리가 만날 장소를 알려줬는데, 윌리(숫놈 일벌)와 마야(암놈 일벌)는 서로 다른 좌표계를 사용한다.
|| [고준영] || C || ? || [BeeMaja/고준영] ||
- Boost/SmartPointer . . . . 3 matches
* [http://boost.org/ boost] 에 가서 다운받고 설치한다.
* new 를 해주고 delete 하는 것 에서 해방을!
* 표준 라이브러리에도 auto_ptr 이라고 같은 개념의 클래스가 있지만, 버그가 있다. -_-;; auto_ptr를 컨테이너에 집어넣으면 버그땜시 스스로 삭제가 안되 메모리가 새는 아주 심각한 문제이다.
- BoostLibrary/SmartPointer . . . . 3 matches
* [http://boost.org/ boost] 에 가서 다운받고 설치한다.
* new 를 해주고 delete 하는 것 에서 해방을!
* 표준 라이브러리에도 auto_ptr 이라고 같은 개념의 클래스가 있지만, 버그가 있다. -_-;; auto_ptr를 컨테이너에 집어넣으면 버그땜시 스스로 삭제가 안되 메모리가 새는 아주 심각한 문제이다.
- BuildingParserWithJava . . . . 3 matches
책을 보면서 그 때 했던 고민이 하나 둘씩 풀려감을 느낄 수 있다. 만들어보기 전에 한 번이라도 보았다면 매번 마감에 ㅤㅉㅗㅈ기는 일이 없었을 것 같다. 아니면 그 때의 고민이 지금 책을 읽는 데 도움이 되는 것인가?
파서를 만들면서 고생했던 기억이 있는 사람이라면 책과 함께 CD를 꼭 빌려서 예제를 보길 강력히 추천한다.
- BusSimulation/영동 . . . . 3 matches
* 열심히 할라고 한거 같지만 문제의 의도에서 벗어 났음. 이 문제는 실제 각 이벤트가 일어나면 다른 조건에도 긴밀하게 영향을 주고 받아야 제대로 돌아 간다. 버스가 이동할때와 버스 정류장에 도착할때 다른 데이터들에게 어떠한 영향을 끼치는지에 대해서 생각해 보아야 한다. 즉 각각의 데이터에 영향을 끼치는 이벤트가 어떠한 상황에 발생하는가를 생각해보고 그 상황에서 영향을 끼치는 데이터에 어떠한 방식으로 그 영향을 반영할 것인가도 생각해볼 문제- 상협
- BusSimulation/영창 . . . . 3 matches
* [[HTML(<STRIKE>)]]탄 사람이 내리는 곳을 고려해야함. (랜덤이어야 함)[[HTML(</STRIKE>)]]
* 역에서 기다리는 사람이 타려고하는 버스가 도착하면 그 버스에만 탑승해야한다.
왜 OOP적 접근법이 필요한지 약간 감이 잡힌다고 해야할까? 이런 현실의 내용을 simulation 하기에는 structured programming의 접근법으로는 참 다루기가 힘든점들이 많을 것 같다. - [eternalbleu]
- C++스터디_2005여름/학점계산프로그램/문보창 . . . . 3 matches
void show_bad_student(); // 학고 명단 출력
// 학고(학점 1.5미만)의 명단을 보인다.
cout << "학고 명단\n";
- C/Assembly . . . . 3 matches
C언어의 특징들을 살펴보고자 함이다.
(C언어의 특징이라고 하였지만, 번역하는 컴파일러의 특징이라고 해야 옳다.)
- C/Assembly/포인터와배열 . . . . 3 matches
// 마지막 k변수는 index 주소를 사용해 메모리를 목사하고 있다.
사람들이 엉뚱하게 생각하는 가장 쉽고도 어려운 문제?
하지만 배열(LC0)은 프로그램이 수행 되고 정의 부분이 되는 순간 LC0 영역의 데이터를 스택 영역에 복사한다.
- CProgramming . . . . 3 matches
[PracticalC]를 정리하는 이런 페이지도 있네요. 모두 같이 정리해 보고 활용해 보았으면 좋겠습니다.
참고한 것 10m
하고 싶은 것 5m
- CompleteTreeLabeling . . . . 3 matches
모든 잎(leaf)의 깊이가 같고 모든 내부 노드의 차수(degree)가 k인(즉 분기계수(branching factor)가 k인) 트리를 k진 완전 트리(complete k-ary tree)라고 한다. 그런 트리에 대해서는 노드의 개수를 쉽게 결정할 수 있다.
k진 완전 트리의 깊이와 분기계수가 주어졌을 때 트리의 노드에 번호를 붙일 수 있는 모든 가능한 방법의 수를 결정해야 한다. 이때 각 노드의 레이블은 그 자손의 레이블보다 작아야 한다. 이진 힙 우선 순위 큐 자료 구조가 바로 이런 속성을 가진다(이진 트리이므로 k=2). N개의 노드가 있는 트리에 번호를 붙일 때, 1에서 N까지의 레이블을 붙일 수 있다고 가정하자.
- ComputerNetworkClass/Exam2004_1 . . . . 3 matches
다음은 IPv4 의 헤더이다. IPv6 의 헤더를 그리고(각 부분의 사이즈, 순서는 상관없음) 차이점을 설명하시오.
UDP 가 TCP 보다 장점을 가지는 경우를 쓰고, UDP 에 알맞는 어플리케이션에 대해 2개의 예를 들어라.
TCP 에서 접속시에 이용하는 프로토콜을 그리고 설명하여라.
- CryptKicker2 . . . . 3 matches
알려진 평문 공격법(known plain text attack)이라는 강력한 암호 분석 방법이 있다. 알려진 평문 공격법은 상대방이 암호화했다는 것을 알고 있는 구문이나 문장을 바탕으로 암호화된 텍스트를 관찰해서 인코딩 방법을 유추하는 방법이다.
여러 줄의 텍스트가 주어졌을 때 같은 케이스에서는 모든 줄에서 같은 치환 방법을 사용한다고 가정하고 그 중 한 줄은 the quick brown fox jumps over the lazy dog라는 평문을 암호화한 것이라는 점을 이용해서 암호화된 텍스트를 복호화하라.
- DataCommunicationSummaryProject/CellSwitching . . . . 3 matches
* 고정길이 셀 사용(53byte = 48 byte의 페이로드 + 5byte의 헤더, ATM의 패킷은 셀이라고 한다.)
* 고정길이의 장점?
- DataStructure/Stack . . . . 3 matches
* 스택(Stack) : 나중에 들어온게 먼저 나감. 밑은 막혀 있고 위만 뚫려 있는 통이라고 생각하면 됨. 밑을 도려내고 꺼낼수는 없는 노릇이니 집어넣을때도 위로, 뺄때도 위로 빼야겠져?^^;;
- DebuggingApplication . . . . 3 matches
디버깅하는 데, 유용하다고 볼 수도 있고 어떻게 보면 절대적이라고도 볼 수 있는 툴
- DefaultValueMethod . . . . 3 matches
가장 쉬운 방법은 코드에 그냥 쓰는 거다. 읽기도 쉽고 빠르고 쉽게 쓸수도 있다.
의사소통을 더 쉽게 해주고, 상속될때에 오버라이딩 할 수 있는 여지를 남겨준다.(상속관계마다 상수가 다른 경우를 말하는 것 같다.)
- DermubaTriangle/허준수 . . . . 3 matches
오답 잡던 도중에 친구가 소주한잔 하자고 해서.. 일단 여기까지하고~
술자리를 파한 후 취중 개코딩..-..ㅡ;; 빙고! ㅋㄷㅋㄷ
- DesignPatternSmalltalkCompanion . . . . 3 matches
약자만 모아서 DPSC라고 부름. zeropage에서 가장 많이 보유하고 있을 것이라 생각되어지는 DesignPattern 서적. (모 회원이 1650원이라는 헐값에 구입했다는 이유만으로. -_-;)
다음과 같은 이유에서 DesignPatterns (이하 GoF)를 먼저보고 보거나 같이 보는 것을 추천한다.
- DesignPatterns . . . . 3 matches
["디자인패턴"] 서적중에서 레퍼런스(Reference) 라 불러지는 책. OOP 를 막연하게 알고 있고 실질적으로 어떻게 설계해야 할까 하며 고민하는 사람들에게 감동으로 다가올 책. T_T
- Direct3D . . . . 3 matches
기본적인 클래스인 CD3DApplication 이 있고, 이것을 상속받은 CMyD3DApplication을 사용하여 하고싶은 일을 할 수 있다.
( 참고로 자신이 생성한 객체를 릴리즈하지 않으면, 프로그램 종료시 에러를 낸다. )
- Doublet . . . . 3 matches
재미있는 내용들이 많습니다. 그 곳에 가면 어떤 할아버지(?)가 눈을 치켜뜨고 쳐다보시는데, "너 왜 지금 공부 안하고 있는거지" 하고 호통치시는것 같아 뜨끔하더군요. 그분이 그동안 말로만 들었던 누쓰(Knuth) 이네요. --이선우
- EdsgerDijkstra . . . . 3 matches
위의 Stepwise Program Construction과 The Humble Programmer는 초강력 추천. 감동의 물결. 아마 그 글을 읽고 몇 주 동안은 여러가지 실험을 해보며 흥미진진하게 보내게 될 것이며, 몇 몇은 프로그래밍에 획기적인 전환점을 맞이할 수 있을 것이라 믿음. --김창준
[http://www.cs.utexas.edu/users/UTCS/notices/dijkstra/ewdobit.html 2002년 8월 6일 타계]. 위대하다고 불리는 인물들이 동시대에 같이 살아있었다는 것, 그리고 그 사람이 내가 살아있는 동안에 다른 세상으로 떠났다는 사실이란. 참 묘한 느낌이다. --["1002"]
- EightQueenProblem/이창섭 . . . . 3 matches
== 알고리즘 ==
* 임의의 한 점에 퀸을 놓고 그곳을 시발점으로 하여 공격할 대상이 없는 곳에 퀸을 놓아 퀸이 총 8개가 되면 출력하고 끝난다. 퀸이 8개가 되지 않으면 다시 임의의 점을 수정한다. 이 임의의 점은 모든 좌표를 돌며 정해진다.
- EightQueenProblem/임인택 . . . . 3 matches
8bit == 1byte 라는 생각을 하고 비트연산만으로 할 수 있을것 같다는 생각을 하였다. 하지만 이 경우는 n-Queen 으로까지 확장하기까지 힘들고 간단한 index 로 값을 참조할수 있는 배열에 비해 비능률적인 방법이다. 단지 속도가 조금 빠를 것으로 믿었는데.. 빨라봤자 얼마나 빠르겠어.--;
처음에 시작 call 을 좀 이상하게 한다. loop 을 돌면서 첫번째 라인의 원소에 대한 get_Queen()함수를 호출한다. 생각에는 get_Queen(0,0); 처럼 호출하는게 가장 이상적이라고 생각하는데..--;
- ExtremeBear/VideoShop/20021106 . . . . 3 matches
* TDD 속도가 빨라지고 있다.
* 고객이 요구하는 게 많아지니까 {{{~cpp steam++}}} 이다.
* Test 가 자연스럽고 쉬웠다.
- FindShortestPath . . . . 3 matches
ex1) 1,10 을 입력했을경우.. (1,2,10)이 두 숫자간의 가장 짧은 거리.. 고로 3이 되겠지..
이문제를 통해 프로그램의 기술적인 문제는 습득하기 힘들거라고 생각되지만..
자신의 생각을 프로그램으로 어떻게 구현해야 되는가.. 에 대한 훈련으로는 큰 도움이 될것이라고 생각됨..
- FromCopyAndPasteToDotNET . . . . 3 matches
=== 참고 자료 ===
* 듣고 싶은데 아쉽군 --["neocoin"]
* 이 자료가 복학하고 나니깐 필요하게 되었구만, 상규야 쌩큐 - [상협]
- FundamentalDesignPattern . . . . 3 matches
DesignPatterns 의 패턴들에 비해 구현이 간단하면서도 필수적인 패턴. 전체적으로 가장 기본이 되는 소형 패턴들. 다른 패턴들과 같이 이용된다. ["Refactoring"] 을 하면서 어느정도 유도되는 것들도 있겠다. (Delegation의 경우는 사람들이 정식명칭을 모르더라도 이미 쓰고 있을 것이다. Java 에서의 InterfacePattern 도 마찬가지.)
근데, 지금 보면 저건 Patterns in Java 의 관점인 것 같고.. 그렇게 '필수적 패턴' 이란 느낌이 안든다. (Proxy 패턴이 과연 필수개념일까. RPC 구현 원리를 이해한다던지 등등이라면 몰라도.) Patterns in Java 에 있는건 빼버리는 것이 좋을 것 같다는 생각. (DoubleDispatch 는 잘 안이용해서 모르겠고 언어 독립적으로 생각해볼때는 일단은 Delegation 정도만?) --["1002"]
- HanoiTowerTroublesAgain!/이도현 . . . . 3 matches
하노이 타워라고 보기는 좀 그런 문제다.
기웅이형이 Closed Form이 나온다는 말을 듣고 열심히 구해봤다 ㅋㅋ
결국 고딩수학이 딸려서 해맸다 -.-;
- IDL . . . . 3 matches
[CORBA] 의 경우 분산된 네트워크상에 따로 위치한 객체 간의 투명한 접근을 제공하는 서로 간의 약속이 필요하다. 이런 약속을 정의할 때 특정 언어([C], [C++], [Java] 등)에 의존하지 않는 인터페이스 정의 언어가 필요하게 되었는데, 그것이 바로 IDL(Interface Definition Language)이다. 서버와 클라이언트가 서로 통신을 하기 위해서 서버는 클라이언트에게 제공하는 서비스 인터페이스를 IDL 로 정의하게 되며, 클라이언트는 이런 인터페이스 정보를 활용하여 서비스를 활용하게 되는 것이다. CORBA 프로그램을 개발하기 위해서는 가장 먼저 IDL 을 정의해야 하는데, IDL 은 구현에 대한 정보는 포함하고 있지 않아 정의된 IDL 을 원하는 언어로
물론, 인터페이스를 정의하는 방법이 IDL 만 있는 것은 아니다. [Visibroker] 의 경우 [Caffeine] 이라는 것을 이용하면 IDL 을 사용하지 않아도 되며, Java 의 RMI 나 RMI-IIOP 를 이용해면 IDL 을 몰라도 인터페이스를 정의할 수 있다. 하지만, IDL 은 OMG에서 규정하고 있는 인터페이스 정의 언어의 표준이고 개발자가 익히기에 어렵지 않은 만큼 CORBA 프로그램을 할 때는 꼭 IDL 을 사용하도록 하자.
- ISAPI . . . . 3 matches
* IIS(Internet Information Services)란 웹 서버, FTP 서버와 같이 기본적이고 범용적인 인터넷 서비스를 시스템에서 제공할 수 있게 해주는 소프트웨어를 말한다. 기존 윈도우2000 제품군의 경우 기본적으로 IIS 5.0을 제공하였고 윈도우XP의 기존 IIS 5.0의 기능을 개선한 IIS 5.1을 제공하고 있다. 한 마디로 HTTP, FTP, SMTP 서버의 묶음이다.
- JavaScript/2011년스터디/JSON-js분석 . . . . 3 matches
* 자바스크립트의 strict모드 ([http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/ 레식이 홈피참고])
* perl에서는 "use strict"라고 썻을 경우 선언되지 않은 변수등은 오류로 뜸(프로그래머의 실수 방지)
* 더 알고 싶은 것
- LinuxSystemClass . . . . 3 matches
[LinuxSystemClass/Report2004_1] - PosixThread 를 이용, 스레드를 만들고 그에 따른 퍼포먼스 측정.
개인적으로 교재가 마음에 든다. 단, 제대로 공부할 것이라면 가능한 한 원서를 권한다. 한서의 경우 용어의 혼동문제와, 중간 오역문제가 눈에 띈다. (inexpensive를 expensive 로 정 반대의 뜻으로 해석한) 뭐, 물론 그럼에도 불구하고 아마 사람들은 한서 읽는 속도가 원서 읽는 속도의 3배 이상은 될테니. 알아서 잘.
학교 수업공부를 하거나 레포트를 쓰는 경우 위의 학교 교재와 함께 'The Design of the Unix Operating System' 을 같이 보면 도움이 많이 된다. 해당 알고리즘들에 대해서 좀 더 구체적으로 서술되어있다. 단, 책이 좀 오래된 감이 있다.
- Minesweeper/이도현 . . . . 3 matches
방법은 여러가지가 있겠지만 아주 간단하게 2차원배열을 잡고 8가지 방향을 모두 조사해보는 방법을 사용하였다.
이 문제는 출력세트별로 반드시 빈 줄을 추가하라고 했다. 이것이 매우 애매한 해석으로 이루어져서 코딩에 어려움을 겪었다.
결과적으로 이야기하면 하나의 출력세트가 있을 경우엔 밑에 빈 줄이 없어야하고 하나 이상일 때만 빈 줄이 있어야한다.
- OOP . . . . 3 matches
'''Object Oriented Programming''' : 객체 지향 프로그래밍. ~~객체를 지향하는 프로그래밍입니다.~~이 이전에 Object Based Progamming 것이 있었다.이 다음 세대의 프로그래밍 기법은 GenericProgramming이라고 이야기된다.
* [Implementation](구현 : 인간의 개념 속에 존재하는 생각과 사상 등을 실제 물리적인 객체로 구성하는 일련의 작업. 예를 들어 새로운 구조의 컴퓨터 시스템을 만들어 내는 작업과 설계 과정을 거쳐서 전달된 내용을 실제 프로그램으로 구성하여 컴퓨터에서 사용할 수 있도록 하는 작업 등이 모두 구현 작업의 한 가지에 해당된다고 할 수 있다. : 정보문화사 컴퓨터 용어사전 발췌)
== 바깥고리 ==
- One/구구단 . . . . 3 matches
printf("알고 싶은 구구단 단수를 입력하세요!!!\n");
printf("당신이 알고 싶은 %d 단은 다음과 같습니다.\n", number);
printf("몇단을 알고 싶어요?");
- OurMajorLangIsCAndCPlusPlus/locale.h . . . . 3 matches
#define LC_ALL (integer constant expression) 모든 카테고리에 대한 로케일 설정을 위한 환경변수이다
|| char* setlocale(int category, const char* locale); || category에 대해 로케일 locale을 설정하고 (물론, 사용 가능한 로케일인 경우), 설정된 로케일값을 리턴. ||
/* 로케일을 변경하고 subroutine을 수행한다. */
- OutlineProcessorMarkupLanguage . . . . 3 matches
최초 OPML을 개발할 당시에는 단순히 사고(idea)를 정리하고, 프로젝트를 관리하는데 쓸만하다는 것이 주 목적이었지만,
그 활용가능성을 인정받아 현재는 rss에서 피드를 공유하는 것과 같은 곳에서 이용되고 있다.
- Plex . . . . 3 matches
특히 좋아하는 이유로는 State Machine 의 개념으로 텍스트를 파싱하고 가지고 놀 수 있다는 점이 있겠다. 예를 들어 HTML에서 span 태그에 대해 파싱한다고 할때 <span 시작 - span 내용 - </span> 끝이라면 그냥 이를 서술해버리면 된다는.~
- Profiling . . . . 3 matches
이런 '''성능'''을 좌우하는 것은 문제 상황에 적절한 자료구조와 알고리즘이다. 그리고 우리가 감안해야 할점은 이것이다.
이탈리가 경제학자 파레토는 사회 전반을 관찰하면서 부의 편중, 자원의 편중 통계를 분석해서 20/80 법칙을 제시하였다. 통칭 20/80법칙, 파레토 법칙이라고 불리며 기타 여러 분야에도 폭넓게 적용된다.
- ProjectPrometheus/Iteration9 . . . . 3 matches
* 그리고, 아직 시험서비스여서인지 모르겠지만, 퍼포먼스가 이전보다 더 느려진것 같은. -_-; 이에 대해서도 궁리.
* 전반적 UI 전체 (많이 이뻐졌다. 고로 RE 모듈이 수고 좀 하겠군. --a)
- ProjectPrometheus/LibraryCgiAnalysis . . . . 3 matches
다른건 둘째치고, 제발 안정화되어서 검색 좀 제대로 되었으면 좋겠다. -_-; 젠장 검색이 되야 뭘 분석을 하던지 하지. -_-
* 한번 검색 하고 다음 페이지가 넘어갈때는 HISNO 의 값이 유지되고, SEQNO 가 증가한다.
- ProjectVirush/ProcotolBetweenServerAndClient . . . . 3 matches
|| 지역 선택 || showmap 1(지역 번호) || showmap Server내용 참고 || 지역 구별자(숫자) || showData 지도에보여줄감염자수 정상인수 + 바이러스이름1 개수1 항체수1 + 바이러스이름2 개수2 항체수2 ... ||
|| 연구실 || showlab || showlab Server내용 참고 || 연구실 들어감. || showLab 지도에보여줄감염자수 정상인수 + 바이러스이름1 개수1 항체수1 + 바이러스이름2 개수2 항체수2 ... ||
|| 실험실 || experiment 바이러스이름 || experiment Server내용 참고 || 바이러스 투여 || 그래프 3개(현재 바이러스 수, 해당 항체수, 사람의 생명력) 그래프 당 점 7-8개 ex) experimentData 8 host8개 antibody8개 virus8개 ||
- RUR-PLE . . . . 3 matches
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
''''' 공감이 가는 말이다. 피아노를 아무리 책만 보고 공부한다고 피아노 잘 치는게 아닌것처럼.. -[상협]'''''
- RUR-PLE/Etc . . . . 3 matches
* 처음 시작한 창문 말고 나머지 창문들을 beeper를 앞에 두는 식으로 해서 닫는다. 로봇은 처음 시작하는 창문으로 온다음에 그 창문을 바라보아야 한다. 시작시에 로봇은 beeper를 충분히 가지고 있다.
* 여기 있는 beeper들을 모두 모아가지고 왼쪽 위 구석에 모두 모은다.다 모은후 시작할때의 위치에서 그 자세로 있는다.
- RandomWalk2/서상현 . . . . 3 matches
파이썬으로 개발함. 7/1 밤 11시부터 1시까지 3시간. 중간에 ["RandomWalk2/질문"]. 7/2 다시 30분간 수정. 다시 질문. 답변을 받고 몇군데를 다시 고쳐서 업로드함.
DoItAgainToLearn 할 생각임. 처음 할때는 중간 과정을 기록하지 않고 했지만 다시 할때는 과정을 기록해 봐야겠음.
- ReverseAndAdd/1002 . . . . 3 matches
* 옆의 형이 matlab 으로 풀고 나는 python 으로 풀기 시작. python 이 시간이 약간 덜 걸렸는데,
* 예외처리 안하고 가능한 한 빨리 짧게 풀기로 고민. 실제 bot 으로 돌릴때는 다를지도 모르겠지만. (196 넣으면 에러 발생)
- Ruby/2011년스터디/강성현 . . . . 3 matches
* 기존 사이트를 조금 더 사용자 친화적으로 만들고, 모바일 기기에서도 부담없이 볼 수 있도록 함.
=== 참고자료 ===
* 루비 설치폴더\bin 안에 http://www.winimage.com/zLibDll/zlib125dll.zip 에 있는 dllx64\zlibwapi.dll 파일을 복사하고 이름을 zlib.dll 로 바꿈
- STL/string . . . . 3 matches
* 그냥 "인수 천재" 라는 문자열을 만들고 싶으면
* string 클래스라고 해서 공백을 무시할수 있는것은 아니다. 학교 교재에 보면 getline()과 get()이 나온다. string 변수로 입력을 받는다 해도 cin >>을 사용하면 공백을 입력 받을수 없다. 따라서 getline() 써줘야 한다.
["[Lovely]boy^_^"]는 이걸 망각하고 1시간동안 삽질을 한 경험이 있다. 이럴때는 일단 char input[255]정도로 큰 배열 잡아 놓은 다음 string으로 변환 시켜준다. 예제를 보자.
- SchemeLanguage . . . . 3 matches
MIT에서 가르치는 프로그래밍 언어로, 흔히 우리가 알고 있는 C/C++, Java 등과는 완전히 다른 개념의 함수형 언어이다.
* http://zeropage.org/pub/language/scheme/intro.txt - Scheme 이라는 언어가 무엇인지 소개하고있는 자료
* http://zeropage.org/pub/language/scheme/quickref.txt - Quick Reference로 프로그래밍을 할 때 참고할만한 자료
- ShellSort . . . . 3 matches
여틀 왕(King Yertle)은 그의 거북이 왕관을 재배치해서 가장 계급이 높은 귀족과 가장 가까운 측근들을 더 위쪽으로 올리고 싶어한다. 쌓여있는 거북이들의 순서를 바꾸는 방법은 거북이 한 마리가 원래 자기 위치에서 빠져 나와서 맨 위로 올라가서 자리를 잡는 방법 밖에 없다.
입력의 첫번째 줄에는 테스트 케이스의 개수를 나타내는 K라는 정수 하나만 들어있다. 각 테스트 케이스는 스택에 들어있는 거북이의 개수를 나타내는 n이라는 정수로 시작되며 그 밑으로 n개의 줄에 걸쳐서 거북이 스택의 원래 배치가 기술된다. 각 줄에는 거북이의 이름이 들어있으며 맨 윗 줄에는 스택 맨 위에 있는 거북이의 이름이 있고 위에서 아래로 순서대로 거북이의 이름이 나열된다. 각 거북이한테는 그 거북이만의 이름이 주어지며 각 이름은 80글자를 넘지 않는 문자열이고, 알파벳, 숫자, 스페이스 문자, 점('.')만 쓰인다. 그 밑으로는 n개의 줄에 걸쳐서 새로운 스택이 기술되며 여기에서도 위에 있는 거북이부터 아래있는 거북이 순으로 이름이 열거된다. 각 테스트 케이스는 정확하게 2n+1개의 줄로 구성된다. 거북이의 수(n)는 200 이하로 제한된다.
- SmallTalk/문법정리 . . . . 3 matches
* 선택자는 특정한 기호(하나나 둘이상의 문자, 숫자가 아님)이고, 인수가 딱 하나만 있다.(the selector is one or two non-alphanumeric characters, followed by exactly one argument object)
* 각 키워드에 인수가 있을 때, 선택자는 하나 이상의 키워드이다.(the selector is one or more keywords, when called each keyword is followed by an argument object) -> 세번째 예시 참고
리팩토링 관련 문구 계속 나오고 있다.
- SmalltalkBestPracticePatterns/DispatchedInterpretation . . . . 3 matches
과거로 돌아가서 데이타가 연산으로부터 불리되었을 때, 그리고 종종 그 둘이 만나야 했을 때, 인코딩 결정은 중대한 것이었다. 너의 어떠한 인코딩 결정은 연산의 많은 다른 부분들을 점차적으로 증가시켜나아갔다. 만약 잘못된 인코딩을 한다면, 변화의 비용은 막대하다. The longer it took to find the mistake, the more ridiculous the bill.
객체들 사이에서 어떻게 책임을 분배하는가는 중요한 결정이다, 인코딩은 그 다음이다. 잘 요소화된 프로그램들의 대부분에서, 오직 하나의 객체만이 한 조각의 정보에 관심을 가진다. 객체는 정보를 직접적으로 참조하고 사적으로 필요한 모든 인코딩과 디코딩을 수행한다.
때때로, 그러나, 한 객체의 정보는 다른 객체의 행위에 영향을 미칠 것이다. 정보의 사용이 단순할 경우, 또는 제한된 정보에 기반해서 선택이 가능할 경우에는 인코딩된 객체에게 메시지를 보내는 것이 충분히 가능하다. 이와 같이, 부울린 값들은 두 클래스의 하나의 인스턴스로 표현되어진다는 사실은, True 그리고 False, 메시지 #ifTrue: ifFalse:. 뒤로 숨겨진다
- StacksOfFlapjacks . . . . 3 matches
스택을 정렬하는 과정은 일련의 팬 케이크 뒤집기 작업을 통해 이루어진다. 한 번 뒤집는 작업은 스택에 쌓여있는 것 중 두 팬 케이크 사이에 주걱을 집어넣고 그 주걱 위에 있는 모든 팬 케이크를 뒤집는 작업(주걱 위에 있는 팬 케이크로 구성된 하위 스택의 순서가 거꾸로 되도록 만드는 작업)으로 구성된다. 한 번의 뒤집기 작업은 전체 스택을 기준으로 뒤집어질 하위 스택의 맨 아래에 있는 팬 케이크의 위치를 지정하는 방식으로 표시된다. n개의 팬 케이크로 구성된 스택이 있을 때 맨 밑에 있는 팬 케이크의 위치는 1, 맨 위에 있는 팬 케이크의 위치는 n으로 표시된다.
filp(3)을 통해 왼쪽 스택이 가운데 스택으로 바뀔 수 있다. 그리고 flip(1)이라는 명령을 쓰면 가운데 스택이 오른쪽 스택으로 바뀐다.
입력은 여러 개의 팬 케이크 스택으로 구성된다. 각 스택은 한 개에서 서른 개 사이의 팬 케이크로 구성되며 각 팬 케이크의 지름은 1 이상 100이하의 정수로 주어진다. 입력은 파일 끝 문자에 의해 종료된다. 각 스택은 한 줄에 입력되며 맨 위에 있는 팬 케이크가 맨 앞에, 맨 밑에 있는 팬 케이크가 맨 뒤에 입력되고 모든 팬 케이크는 스페이스에 의해 구분된다.
- StringOfCPlusPlus/상협 . . . . 3 matches
int search(char se);//찾고자 하는 문자열의 갯수로 알려줌
delete [] temp;//이부분에서 고생 했쓰...
nam.reverse();//끝에것이 짤리고 뒤바뀌지 않는 문제
- StudyingFundamentalsOfTcpIp . . . . 3 matches
TCP/IP 가 우리와 얼마나 가까 있는지 아시죠? 인터넷의 근간이 되는 프로토콜에 대해 스터디를 하고자 합니다. 관심있는 분의 많은 참여 부탁드립니다.
[[ISBN(0201633469)]] 입니다. 상당히 평이 좋은 책이라고 합니다. 1학년때 잠깐 (챕터두개정도;; ) 보다가 덮어둔지 어언 3년이 되어가는군요. 책 없는분은 제본하면 될것 같네요
* 일정 분량을 공부하고 멤버들끼리 질답을 갖는 시간을 정기적으로 갖을 것입니다.
- SuperMarket/재니 . . . . 3 matches
cout << "사실 물건을 고르세요 >> ";
== 만들고나서 ==
* 재니야 소스 보기 좋게 올려라... 들여쓰기 좀 제대로 하고... 보기 힘들잖어...-,-;;; --재동
- TheJavaMan/스네이크바이트 . . . . 3 matches
System.out.println("움직이고자 하는 방향을 입력하세요");
MenuItem diff3 = new MenuItem("고수");
else if(e.getActionCommand()=="고수")
- TugOfWar/이승한 . . . . 3 matches
150/200 빼고는 답이 나오긴 하지만. 분명히 틀린 알고리즘.
급기야는 오류가 보이자 땜빵으로 매꿔버리기도 하고...-_-ㅋ;;
- UglyNumbers/구자겸 . . . . 3 matches
int ind; // 알고 싶은 인덱스
scanf("%d", &ind); // 알고 싶은 심술쟁이 수를 얻는다
딱 3분 걸린다. 경고음 붙여서 라면 먹을때 이용하면 좋겠다.
- UglyNumbers/이동현 . . . . 3 matches
처음엔 어글리넘버의 규칙성을 찾았다. 이것으로 너무나 많은 시간을 허비하고나서
규칙성은 없다(실제로 없는지는 모름)고 결론.(있었다면 0.1초내로 답이 튀어 나올것이므로 '4초내로'라는 단서도 없었을듯..)
일단 n번째 어글리넘버 이후의 수들은 이전 어글리넘버에 2나 3이나 5를 곱해서 이루어진다는 것을 가지고 1부터 시작하여
- VendingMachine/세연/재동 . . . . 3 matches
== 나름대로 고쳐본 소스 ==
3. 클래스명과 함수명 그리고 변수명을 좀 더 평범하게 변형
6. 더 고쳐져야 할 부분이 보이지만 미묘해서 그만 둠...-,-;;;
- VimSettingForPython . . . . 3 matches
Python extension 을 설치하고 난뒤, BicycleRepairMan 을 install 한다. 그리고 BRM 의 압축화일에 ide-integration/bike.vim 을 VIM 설치 디렉토리에 적절히 복사해준다.
아직 단축키들은 완벽하게 셋팅하지 않은 상태이긴 하다. 대략 다음의 셋팅을 보면서 조금씩 고쳐나가면 좋을 듯 하다.
- VisualStudio2005 . . . . 3 matches
== 그리고 ==
이번 [VisualStudio2005]에서는 Express Edition이라는 버전을 다운로드할 수 있도록 제공하고 있다.
* 씨샾은 배우고 싶은 기분이 들 정도네요;;
- WorldCupNoise/권순의 . . . . 3 matches
* 근데 Presentation Error가 나는데 -_-;; Terminate the output for the scenario with a blank line 이 부분을 내가 잘못 이해하고 있어서인거 같기도 하네염 -ㅅ-;; 에잇,, Visual Studio에서 돌리면 돌아는 갑니다. -ㅅ-
* 아... 입력 받고 시나리오 바로 출력하는 방식이었네요.. 전 처음에 입력 다 받고 나서 출력하는 거였는데.. 영어가 문제네요 -_-a
- ZPHomePage/20050111 . . . . 3 matches
* 제로페이지 로고, 캐릭터 디자인 공모
* 상금결정(캐릭터-3만, 로고-2만) => 제로페이지회의에 입안
=> 회원가입하지않고도 쓸 수 있는 게시판을 만들어 둔다. 위키는 회원만??
- ZeroPageSeminar . . . . 3 matches
|| 나휘동 || 네트워크 기초 지식, TCP/IP 중심, 우리가 지금 쓰고 있는 네트워크가 어떻게 동작하는지에 대해 || 2~3학년 ||
세미나를 해줄 수 있는 분들입니다. 자신이 세미나를 해줄 수 있다고 생각하면 주저하지 말고 적어주세요.
- ZeroPagers . . . . 3 matches
* [고은진]
* [고한종]
* 고준영
- ZeroPager구조조정 . . . . 3 matches
초기 인원 50(05학번)에서 지금 활동하는 인원은 많지 않기 때문에 Zeropage의 효율적인 관리를 위해서 등등을 위해 05학번을 대상으로 구조조정을 해보려고 합니다.
크게 정회원과 준회원으로 나누는 것만 정하려고합니다.
구조조정은 아영과 현태가 저번 [정모/2005.12.23]에 나온 내용들을 고려하여,
- ZeroWikiHotKey . . . . 3 matches
2. [Explorer]에서는 실행이 안된다고 합니다.
3. 단축키로 기능을 분류하지 않고. 기능으로 단축키를 분류하였습니다. 단축키로 기능을 분류한 페이지는 [woodpage/VisualC++HotKeyTip] 가 있습니다.
멋진 페이지네요~>__<ㅋ 그런데 이것 말고 [ZeroWiki]의 페이지에서 본적이 있는것 같은데. - 이승한
- [Lovely]boy^_^/Diary/2-2-2 . . . . 3 matches
* 우리나라에 사람 무는 바퀴벌레가 들어온 기념으로.. TDD를 이용한 RandomWalk2를 해보았다.(Python) 파이썬 문법 자체에서 좀 많이 버벅거렸다는게 좀 아쉽다. 테스트 수십개가 통과하는 것을 보고 있자니 괜시리 기분이 좋아진다는--;
* ["EffectiveSTL"] 5장 정리, 7장,9장,13장,14장 읽고 정리
* ["EffectiveSTL"] 26,27장 읽고 정리
- [Lovely]boy^_^/Diary/2-2-5 . . . . 3 matches
* MOA의 컴퓨터고전스터디에 참여할 생각이다. 이런거 정말 해보고 싶었는데 기회가 생겼으니..
* 신촌 서강대 5시 스터디 까페 나눔에서 고전스터디
- eXtensibleMarkupLanguage . . . . 3 matches
= 바깥고리 =
* 최근의 많은 Syndication 포맷이 XML에 기반을 두고 있다. (RSS, ATOM, OPML, Attention, Userlist etc) - [eternalbleu]
* DTD로 검색하다 여기로 왔네요ㅋㅋㅋ 예전에 쓰신 것 같아서 지금은 아시는 내용이겠지만 나중에 다른 분들이 이 페이지를 보실 수 있으니 시간을 건너뛰어 댓글 답니다~ DTD는 Document Type Definition의 약자로 XML 문서 작성을 위한 규칙을 기술하는 형식입니다. valid XML Document의 경우 well-formed XML Document이면서 XML에서 사용되는 원소 이름이 해당 문서에 대한 XML DTD나 XML Schema에 명세된 구조와 합치되어야 한다고 하네요. 이 내용에 대한 수업을 들으며 씁니다ㅋㅋㅋㅋㅋㅋㅋ - [김수경]
- eXtensibleStylesheetLanguageTransformations . . . . 3 matches
XSLT를 잘 이용하는 곳의 하나로 feedburner를 뽑고 싶다. 한때 MS XSLT 구현 방법에 대해서 말도 많고 탈도 많았으나... 뭐 어쨋든 나름대로들 잘 사용하고 있는 듯 보임.
- hanoitowertroublesagain/이도현 . . . . 3 matches
하노이 타워라고 보기는 좀 그런 문제다.
기웅이형이 Closed Form이 나온다는 말을 듣고 열심히 구해봤다 ㅋㅋ
결국 고딩수학이 딸려서 해맸다 -.-;
- snowflower . . . . 3 matches
||[알고리즘]||알고리즘 스터디|| 2005.12 ~ 2006.02 ||
* 사이월드 여기다 공개한다고 찾아가지 않는다.ㅋㅋㅋ 니가 사람들걸 찾아가야지 ㅋㅋ - [창섭]
- ssulsamo . . . . 3 matches
* 개인페이지 템플릿 추천 양식입니다. 적당히 고쳐서 쓰세요.
1년의 공백기간을 깨고...[[BR]]
Ghost지만 공부하고 싶은걸. 핫 -- [[BR]]
- ★강원길★ . . . . 3 matches
학사경고 탈출
== 하고싶은 것 ==
== 하고싶은 말을 써주세요 ==
- 강연 . . . . 3 matches
- 아무나 가도 되는것 같던데. 영어라고 너무 걱정하진 말길. 다 알아들을 사람은 아무도 없으니. 한번두번 계속 참석하면서 익숙해지는거지. 나도 영어로 진행되는 강연은 이번에 두번째밖에 안된다우. - [임인택]
* 쉽고 재미있는 강연이었다. 못알아들은 내용도 있었지만, 교수님의 유머감각은 단연 돋보였다. 영어로 술술 질문하는 영교과 학생들도 인상적.. -_-; - [임인택]
* 소주한잔+고추가루 컴비네이션 원츄~ - [임인택]
- 강희경/그림판 . . . . 3 matches
제로위키 로고 제작 할 때 문득 떠오른 이미지.
=== 제로위키 로고 ===
=== 제로페이지 로고 ===
- 걸스패닉 . . . . 3 matches
저도 神은 아니더라도 동네 고수 였던 시절이...ㅋㅋ --[강희경]
* 이런 말하긴 뭐하지만, 시일 내에 마치기는 힘들 것 같다. 밀린 숙제도 해야되고...전시회는 포기하고 좀 완급조절할까? 이러다가 흐지부지 될까봐 두렵다. --[강희경]
- 공업수학2006 . . . . 3 matches
* 벌금제 : 기말고사후 뒷풀이~~
이번 모임은 5시에 시작하면 어떨까요? [지금그때2006]때문에 6시에 시작한다면 저는 중간에 나가야 하거든요. 한 시간 당기면 모두 같이 [지금그때2006]에 갈 수도 있고요. -- 휘동
도현이도 하는거야?? 고맙다 앞으로 많은 기부 바란다 ㅋㅋ - [eternalbleu]
- 기본데이터베이스/조현태 . . . . 3 matches
그많은 자료구조중에서 왜 배열이냐고오..ㅠ.ㅜ 막강한 메모리 낭비와 오버플로우의 한계를 느끼고 싶은 것인가아..;;ㅁ;;
에러코드는.. 단순한 장식.. ㅋ (뭐든지 뽀대가 나고 봐야함.ㅎ)
- 김상호 . . . . 3 matches
일단;; 수업 안빠지고 잘 듣기, 지각 안하기 ㅎ_ㅎ<<상호야 진짜?!
== 하고싶은 것 ==
== 하고싶은 말 ==
- 김재현 . . . . 3 matches
포인터에 대한 이해가 아직 부족해서 스스로 코드를 짜진 못하고,교수님이 올리신
소스코드를 참고해서 하나로 합쳤습니다. 앞으로 분발하겠습니다....
하고픈말이 있으시다면. 여기에.
- 남상재 . . . . 3 matches
뭐냐 난 또라이라고 왜 시비거삼
== 하고싶은 것 ==
== 하고싶은 말 ==
- 누가소프트웨어의심장을만들었는가 . . . . 3 matches
* 현재 컴퓨터 모델을 지은 폰 노이만은 누구에게 영감을 받았을까? 앨런 튜닝. 현재 PC는 어떻게 탄생하게 되었을까? 메멕스. Wiki와 인터넷이 나오게 된 Hyper-Media란 것은 무엇인가? 이 책은 우리가 습관처럼 쓰고있는 IT가 어떻게 이루어졌는지 알려준다. IT의 기반을 세운 '영웅'들의 사상을 정리하고 간략하게 요약해서 보여주는 멋진 책이다. 그들이 발명한 이론과 활동에 대해 그 세세한 과정을 다뤄주지 않지만 이 책을 통해 소프트웨어 역사가가 되는 한 걸음을 딛을수 있을것이다. 그리고 저자 분의 이력도 흥미롭다 :) - [김준석]
- 데블스캠프2003 . . . . 3 matches
|| 학번 || 이름 || 비고 ||
|| 학번 || 이름 || 비고 ||
- 음.. 좋은 생각은 아니고요... 7월 1일에 농활 2차 후발대로 출발할것 같습니다. 농활의 유혹을 뿌리칠수가 없군요.ㅠㅠ [임인택]
- 데블스캠프2005/언어디자인/그까이꺼 . . . . 3 matches
viewer란 프로그램이 있다. 뒤에 출력하고싶은 것을 입력한다. ','로 구분한다.
viewer<-star,ent는 *를 출력하고 한줄을 띄운다.
loop(viewer<-star,ent)x5는 별을 화면에 하나 나타내고 한줄 띄우는 프로그램을 5번 반복한다.
- 데블스캠프2005/참가자 . . . . 3 matches
현재 동문서버와 개인적인 경로로 참가자를 받고 있습니다.
* 안성진(03)은 저번 3월달에 받은 회원은 아니지만 이번에 데블스 캠프에 참가 해보고 싶다고 해서 올립니다. - [상협]
- 데블스캠프2009/수요일 . . . . 3 matches
|| 이름 || 주제 || 내용 || 비고 ||
|| 김준석 || 객체 지향 프로그래밍(OOP) || OOP에 대한 개요 이해, 추상화에 대한 개념. OOP 기반의 프로그램 설계를 코드가 아닌 글로 새내기와 함께 해본다. || 문법은 잊고 의사코드를 사용한 설계실습을 해보자 ||
|| 송지원 || Simple Java & JUnitTest || Java의 간단한 문법과 개념을 배우고,[[br]]JUnitTest를 통해 TDD 기반의 프로그래밍에 대해 맛보기. || 아무래도 Test가[[br]]메인이다 보니,[[br]]Java를 통한 OOP 개념의 실습은[[br]]시간상 진행하지 않는다. ||
- 데블스캠프2011 . . . . 3 matches
|| 9 || [송지원] || [:데블스캠프2011/첫째날/Java Play with Java] || [:상협 남상협] || [:데블스캠프2011/둘째날/Machine-Learning Machine-Learning] || [윤종하], [황현] || [:데블스캠프2011/셋째날/Esolang 난해한 프로그래밍 언어] || [서지혜] || [:데블스캠프2011/넷째날/루비 루비] || [김수경] || [:데블스캠프2011/다섯째날/Cryptography Cryptography], 회고 || 4 ||
* '''후기 쓸 때 반드시 참고하세요 : [ThreeFs]'''
= 회고 =
- 데블스캠프2011/둘째날/Machine-Learning/NaiveBayesClassifier/송지원 . . . . 3 matches
* 가장 느리고 무식한 Linear Search로도 문제해결 했다를 보여주는 의지의 한국인 코드
* 고로 이 프로그램을 복붙해서 그냥 실행하면 돌아가지 않습니다
* 이 프로그램은 Bayes Classifier 값을 구하는것 까지이고, 시간 관계상 값의 참/거짓 빈도는 엑셀을 이용해서 계산했습니다.
- 땅콩이보육프로젝트2005 . . . . 3 matches
* 최종 모임 - '''12월 22일 목요일 10시 7층 피시실!''' 통합하고 마무리하는 시간을 가집니다.
== 참고사이트 ==
* [http://www.aawoo.com/ 와우닷컴] 국내 최초라고 하는 영어 채팅 로봇
- 레밍즈프로젝트/프로토타입/에니메이션 . . . . 3 matches
AddFrame(UINT ITEM)으로 프레임을 추가시키고 외부에서 적절한 타이머를 통해서 움직임을 조절한다.(NextFrame())
CDC를 확장한 [레밍즈프로젝트/그리기DC]에 자동 에니메이션을 구현 하고자 하였다.
하지만 OnDraw에서 생성되고 파괴되는 그리기DC에서 프레임단위의 에니메이션 처리는 옳지 않다. 만약 하게 된다면 모든 레밍들의 객체를 그리기DC안에 넣어야 할 것이다.
- 로고캐릭터공모/문의 . . . . 3 matches
(하단의 EditText를 누르시고 자유롭게 내용을 써주세요)
로고의 크기는 어느 정도가 좋을까요? 크기가 제한되지는 않나요? --[강희경]
[로고캐릭터공모]
- 마인드맵핑 . . . . 3 matches
''캠프에서의 첫날은 <나는 그것을 할 수 없다> 날로 불리워지는데 그것은 아이들의 정신과 육체가 할 수 없다고 생각하는 것을 하는 날이기 때문이다.''
''두뇌는 그것을 거부하고 반항하다가 마침내 성공을 하게 되고 갑자기 저항할 수 없는 성취감이 공포감을 대신한다.''
- 만년달력/강희경,Leonardong . . . . 3 matches
cout << endl; //다음줄로 가고
지난 달이 며칠인지를 알고 거기에 지난달이 시작하는 요일을 알면
1년 1월이 31일이고 월요일부터 시작하므로 (31 + 1) % 7 == 4 로
- 문서구조조정 . . . . 3 matches
이 역할을 해야 할 사람은 특별하게 정해져있지 않다. 위키는 해당 페이지에 대해 누구나 접근하고 고칠 수 있다. 즉, 누구나 이 역할을 할 수 있으며, 이 또한 새 페이지의 주제를 열고 글을 쓰는 것 처럼 중요한 일이다.
- 문제풀이/제안 . . . . 3 matches
* 단순한 프로그래밍 언어 지식 획득 이상의 무언가의 공부가 필요하다고 생각하여 시작.
* 매주 목요일에 아무나 풀어보고 싶은 문제를 올립니다.
* 문제 페이지는 "문제풀이/회차" 의 형식으로 만들고 이 페이지에 연결을 걸어둔다.
- 박재홍 . . . . 3 matches
코드 보고 이해하기 ㅜㅜ
== 하고싶은 것 ==
== 하고싶은 말 ==
- 반복문자열/허아영 . . . . 3 matches
선배님들 소스가 장난이 아니에요. 사실 간단한 문제라고 생각했었는데, 고정관념이 깨인듯한 느낌이네요. -[허아영]
CAUCSE 문자열도 함수 입력으로 넣어 주면 좀 더 변화하기 쉬운 소스가 되지. 그리고 message나 messages 같은 함수 이름도 좀 더 명확하게 하는 게 좋을 거 같아. 나 같으면 밑에 처럼 풀 거야. 함수로 추출해 낼 때는 의미 단위로 추출하는 게 좋아. 그래야 함수 이름을 지을 때 편하지. 역으로 함수 이름을 짖기가 힘들다면 잘못된 설계가 되는거지. --재동
- 삼총사CppStudy/Inheritance . . . . 3 matches
상속에 대해서 설명해 보고자 합니다. 길더라도 끝까지 읽어봐주세요
다음날 문제점이 발견되었다. 마린과 파이어뱃으로 부대를 구성하여 배열에 저장하려고 하였는데 두개의 클래스가 틀리기 때문에 한개의 배열로는 포함할 수가 없었다.
일단 파이어뱃도 아니고 마린도 아닌 유니트를 만들어보자
- 새싹교실/2011/AmazingC/6일차 . . . . 3 matches
6일차를 너무 늦게 올렸다. 얘들아 미안 ㅋㅋㅠㅠ 함수에 대해 좀 자세하게 알려주고 싶어서 2파트로 나눴다. 함수의 기본적인 개념들이라, 그리 어렵진 않았을 것 같다. 그리고 삼항 연산자를 이용해서 팩토리얼을 계산하는 방법도 알려주었다. 다음 시간엔 지역변수,전역변수,정적변수에 대해 배우고, 함수를 이용한 다양한 연산을 연습합니다.-[[신기호]]
- 새싹교실/2011/씨언어발전 . . . . 3 matches
* 예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
3회차 수업이 예정되어있던 4월 6일 각자 여러가지의 이유로 참여를 못하고 해서 다음 수업부터는 개인 사정 상관없이
- 새싹교실/2012/절반 . . . . 3 matches
|| 4/24 |||||| 중간고사 ||
* [새싹교실/2012/절반/중간고사전]
* [새싹교실/2012/절반/중간고사후]
- 새싹교실/2013/록구록구/1회차 . . . . 3 matches
''' 뭔 말이지? 라고 하는 당신을 위한 설명 '''
(깨달은점)강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.
(앞으로의 계획)다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.
- 새싹교실/2013/양반/4회차 . . . . 3 matches
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
꼭 이 두가지를 잘 쓰도록 해서 편하게 프로그래밍을 하고싶습니다. ㅎㅎ
- 소프트웨어장인정신 . . . . 3 matches
소프트웨어를 개발하는데 장인정신이라는 비유를 사용한다. 프로세스와 프로세스 산출물에 초점을 맞추는 소프트웨어 엔지니어링은 규모가 작은 프로젝트에는 좋은 선택이 아니다. 평범한 소프트웨어 개발자 여럿을 두고 이를 관리하기보다 장인 소프트웨어를 개발자 한 명을 고용하는 편이 속도나 품질 모두에서 낫다. 따라서 전통적인 수공업에서 나타나는 도제생활이 초보 프로그래머에게는 필요하다. 프로그래머는 도제를 거쳐 중간 장인으로, 결국에는 장인으로 성장하게 된다.
보통 소프트웨어 엔지니어링에서 말하는 과학적 방법론과는 다른 시각을 보여준다. 그렇다고 기존의 방법론과 공존할 수 없는 개념은 아닌 것 같다. 내 주변에 있는 장인은 누구일까?
- 신혜지 . . . . 3 matches
처음 개인페이지의 추천 양식입니다. 적당히 고쳐서 쓰세요.
== 하고싶은 것 ==
== 하고싶은 말 ==
- 윤성복 . . . . 3 matches
처음 개인페이지의 추천 양식입니다. 적당히 고쳐서 쓰세요.
== 하고싶은 것 ==
== 하고싶은 말 ==
- 이민석 . . . . 3 matches
* 졸업논문: 하스켈을 이용한 효율적인 알고리즘 설계
* 취업을 하고자 여러 회사에 지원을 했는데
* 한 회사는 구글이 답장을 스팸 메일에 쳐넣어서 한달 뒤에 보고
- 이승한/mysql . . . . 3 matches
mysql - 두부파일 - 테이블들. //mysql - 테이블 로 알고 있었다. //계정별로 접근성을 다르게 설정할수 있는듯 하다.
테이블 스키마만 남기고 레코드 모두 삭제 : delete from score;
[MySQL] 페이지가 있네. 몰랐다면 참고~ --[Leonardong]
- 이영호/미니프로젝트#1 . . . . 3 matches
// 클래스의 상속성으로 인해 기존의 클래스를 고치지 않아서 인것 같다.
main.c -> IRC Server로 메세지를 보내는 역할을 하고 자식 프로세스를 생성한다.
file.c -> 파일 입출력을 다루는 함수와 메세지들을 Log하는 부분을 담당한다. 일단 프로그램을 어느 정도 만들고 구현하도록한다.
- 인수/Assignment . . . . 3 matches
|| 과목 || Assign date || Due date || 내용 || 비고 ||
|| 과목 || Assign date || Due date || 내용 || 비고 || Submit? ||
|| AI || 9/19 || 9/25 || A*알고리즘의 Optimality 증명 (A4반쪽정도) || || O ||
- 인수/Smalltalk . . . . 3 matches
* 짜놓고 생각 : 이건 스몰토크프로그래밍이 아니다. C++/Java의 냄새가 너무 많이 나는것 같다. 부분부분을 좀더 간단하게 할 수 있을것 같기도 하다. 책을 더 봐야 할듯 싶다. 인스턴스 생성할때도 인자를 넘겨 받을 수 있을 텐데 잘 안된다.(지금 보니까 그렇게 하지 말라 한다. 대충 찾아보니 팩토리 메소드를 많이 쓰는것 같다. 또 클래스 메소드 만드는법 알아낼라고 줄기차게 삽질을 했다.--;) do라는 좋은게 있었군.
* 2차원 배열 클래스가 있었다. 레퍼런스를 잘 찾아보고 하자. 이제 조금 볼만하구나.
- 정모/2005.3.21 . . . . 3 matches
그 날 모집하는 회원은 [ZeroPagers]임. 그러나 [DevilsCamp]에는 참여 해야한다.(참고-[ZeroPage회칙])
* 신입회원 모집 홍보는 어떻게 하기로 되어있나요? 동문서버 안들어 가거나 있는 모르는 사람들도 많을텐데... 강의실 홍보나 대자보 홍보가 적어도 이번주 부터 이루어져야 좋을거 같습니다. 그리고 홍보할때 꼭 신입생 말고 복학생,전과,편입생들도 염두에 뒀으면 좋겠습니다.
- 정모/2006.1.5 . . . . 3 matches
윗사람과의 관계에서 중요한 부분은 '예의' 입니다. '예'에서 어긋나게 되면 그 이후 그분과 대화를 할 수가 없을 것입니다. 정모때 우리가 교수님께 요구할 수 있는 것들에 대해 생각하는 것도 중요하지만, 교수님께 일단 인사를 드리는 것도 중요하다고 봅니다. 일단, 회장이 바뀌었다는 것으로 교수님께 찾아뵙고 인사드리는 것도 생각해 볼 부분이 아닐까 생각됩니다. 이전에 담당교수님과 컨텍을 한 적도 없으므로, 일단 대화창구를 여는 것이 먼저라 생각합니다. --[1002]
- 사실 요구사항 전에 현태랑 저랑 찾아뵐려고 교수님께 메일을 보냈었어요 ^^;; (저거께)
- 정모/2011.11.16 . . . . 3 matches
* 참가자 : [김수경], [강소현], [고한종], [추성준], [송치완], [임상현], [김준석]
* 다음주자 : [고한종]
* [김태진] - 오늘 갔다면 다음주 OMS를 하려고 했었는데 튜터링하느라 못가서 아쉽네요 ㅠㅠ 딱히 이변이 없다면 다다음 OMS는 제가 진행했으면 좋겠네요 ㅋㅋ.
- 정모/2012.10.8 . . . . 3 matches
* TED (그리고 자아 성찰...) - [장혁수]
* 오늘 1학년들이 없어서 전혀 여기에 대한 진척이 없네요. 제가 좀 알아보고 미리 연락해봐야겠습니다. -[김태진]
* 사람이 많을때/적을때의 장점과 단점을 느끼고 있네요. 음..
- 정모/2013.1.29 . . . . 3 matches
* 김민재 : 새내기들이 zeropage에 가입하는 데에 있어서의 방식을 바꾸고 싶습니다.
* c++ 11 사주세요. 라는 이야기. ->가격은 28.8만원 -> 회계상황보고 결정.
* ACM study - 팀원들 각각 2문제 씩 풀었습니다. 그리고 벌금제도 도입. 자세한것은 ACM위키페이지참조.
- 제로페이지위키베타 . . . . 3 matches
* 제로페이지 회원들은 zeropage 카페에 가입을 하시고, 추후에 자신의 위키에서 글을 쓰고 그 글을 zeropage에 올리고 싶을때는 편집창 카페 선택에서 제로제이지를 선택하면 그 글은 제로페이지에 올라가게 됩니다.
- 주민등록번호확인하기/정수민 . . . . 3 matches
오옷...멋지닷..ㅎㅎㅎ 만드느라 수고했어..^^ 역시 맨트가 같네..ㅎㅎ 그런데 공식부분 약간 노가다성이..^^;;ㅁ;;
그건 그렇고 너도 빨리 LittleAOI 참가하라고!! ㅎㅎㅎ - [조현태]
- 중위수구하기/김태훈zyint . . . . 3 matches
소스간단한게 최고+ㅁ+
* 오랜만이군 PHP 고등학교 때 이거배워 PHP 사이트 Hacking 하고 다녔는데. 근데 C랑 비슷해. 쉬운 변수형의 C -_-ㅋㅋ --영호
- 지금그때2005/회의20050318 . . . . 3 matches
주사위를 굴려서 걸린 사람이 질문을 던지고, 나머지 사람들이 대답하는 게임이다.
정말 질문하고 싶은 경우 개인당 1회로 질문권 발동
메뉴판에 없는 질문이 하고 싶은 경우 포스트 잇에 적음
- 질문레스토랑 . . . . 3 matches
주사위를 굴려서 걸린 사람이 질문을 던지고, 나머지 사람들이 대답하는 게임이다.
* 정말 질문하고 싶은 경우 개인당 1회로 질문권 발동
* 메뉴판에 없는 질문이 하고 싶은 경우 포스트 잇에 적음
- 책분류Template . . . . 3 matches
사용법은 NoSmok:ISBNMacro 를 참고하세요.
* B) * 5 : [나를만든책]이다. 탁월하다. 이미 고전이거나, 혹은 앞으로 고전이 될 것이다.
- 코코아 . . . . 3 matches
03학번의 손용준이라고 해요~
근데 이거 위키 되게 신기하면서도 재미있고 조금은 조심스러운...ㅋ
* 오 고맙습니다!
- 파스칼삼각형/김태훈zyint . . . . 3 matches
멋지답~ +.+ 나두 이렇게 멋진 소스를 짜고 싶은데.. 영 계획없이 짜서말야..;;
아영아 이런 소스를 참조하라고.. 내거 같은 가독성 없는 소스 말고..ㅎㅎ - [조현태]
- 프로젝트 . . . . 3 matches
* [PPProject] - 2004년 2학기 자료구조&알고리즘
* 자전거 타고 부산가기 - 7월 1일 ~ 12일
* 참고 페이지 - [GuiTesting]
- 05학번만의C Study/숙제제출1/이형노 . . . . 2 matches
cout << "섭씨 온도를 입력하고 Enter 키를 누르십시오 : " ;
음... 저 fah 라는 변수... 쓸데 없는건가?? 고민되네...ㅋㅋ -- [(laciel)형노]
- 05학번만의C++Study/숙제제출1/이형노 . . . . 2 matches
cout << "섭씨 온도를 입력하고 Enter 키를 누르십시오 : " ;
음... 저 fah 라는 변수... 쓸데 없는건가?? 고민되네...ㅋㅋ -- [(laciel)형노]
- 05학번만의C++Study/숙제제출4/최경현 . . . . 2 matches
- 확실히.ㅎㅎ 버그가 있네. 이 버그는 클래스를 삭제한 뒤에 그 공간이 비게되는데, 거기에서 값을 체크하는 함수를 실행시키려고 시도했기 때문에 발생하는 문제야.
해결 방법은 그 공간뒤의 클래스들을 한칸씩 앞으로 당기고, i의 값을 1줄여주면 되겠지.ㅎㅎ
- 1thPCinCAUCSE/ProblemC . . . . 2 matches
칸을 하나 누르면 그 칸과 이웃한 칸들의 색이 반대로 변한다. 예를 들어, 1번을 누르면 1,2,4,5 번의 색이 반대로 변한다. 6번을 누르면 2,3,5,6,8,9 번의 색이 반대로 변한다. 물론 5번을 누르면 1,2,3,4,5,6,7,8,9 번의 색이 반대로 변한다. 예를 들어 아래 그림 (a)에서 6번칸을 누르면 그림 (b)로 변하고, 여기서 1번칸을 누르면 그림 (c)가 되어 모두 하얗게 변한다. (a) 그림을 모두 하얗게 만드는데 누르는 회수는 2이다.
입력은 표준 입력이다. 입력의 첫줄에 테스트 케이스의 개수를 나타내는 정수 T (10 이하) 가 주어진다. 다음 T줄의 각 줄마다 테스트 케이스가 주어진다. 테스트 케이스는 b와 w로 이루어진 길이 9인 문자열이 주어진다. 이 글자들 사이에는 빈칸이 없다. 이들은 차례로 1,2,3,4,5,6,7,8,9에 해당하는 칸의 색을 나타내는데, b는 검은색이고, w는 흰색이다.
- 2002년도ACM문제샘플풀이/문제E . . . . 2 matches
* 막 알고리즘 생각하다가..
* {{{~cpp TestCase}}}를 살펴보다 보니, 열라 어이없는 규칙을 발견하고 맘.
- 2005리눅스프로젝트 . . . . 2 matches
그리고 담주까지 기초 강의 자료는 올리겠습니다.
- 데비안 날렸다가 다시 설치 해봐야겠군.. x서버 올리는것도 다시 시도해봐야겠고...;;;[형노]
- AM . . . . 2 matches
* 진행 방식 : 각자 정해진 분량을 공부하고 정모에 팀원들이 번갈아 가면서 공부한 내용을 세미나한다. 질문답변하며 피드백하는 과정을 갖는다.
== 하고 싶은 말 ==
- APlusProject/CM . . . . 2 matches
그리고 CM 개인적으로도 가지고 계셨으면 합니다. --재동
- AnEasyProblem . . . . 2 matches
예를들어, "78"이 주어지면, 여러분은 "1001110"과 같은 이진수 형태로 쓸 수 있습니다. 이 이진수는 4개의 1을 가지고 있습니다. "1001110" 보다 크고 4개의 1을 포함하는 가장 작은 정수는 "1010011"입니다. 출력값은 "83"이 되어야 합니다.
- BasicJava2005/5주차 . . . . 2 matches
throws : 이 함수에서는 예외처리 하고 싶지 않을때 사용한다.
throw : 임의로 예외를 발생시키고자 할 때 사용한다.
- BaysianFiltering . . . . 2 matches
그리고 PatternClassification 관련한 여러 알고리즘에도 BayesTheory 를 기본으로 하는게 상당히 많다.
- Benghun . . . . 2 matches
nosmok - moin 으로 바꾸어서 이런 [FrontPage] 링크가 됩니다. 그리고 로그인 기능을 풀어 놨으니 해보세요. 편해요. --NeoCoin
그렇군ㅇ. ^^; 제가 지금 다음에 머무르고 있어서, 혹시나 했습니다. --NeoCoin
- Bigtable/분석및설계 . . . . 2 matches
* 알고리즘 or 동적 흐름도
* 프로그래밍에 가깝게. 자료구조와 알고리즘등이 나옴.
- C++ . . . . 2 matches
벨 연구소의 [http://www.research.att.com/~bs/homepage.html Bjarne Stroustrup]은 1980년대에 당시의 [C]를 개선해 C++을 개발하였다. (본디 C with Classes라고 명명했다고 한다.) 개선된 부분은 클래스의 지원으로 시작된다. (수많은 특징들 중에서 [가상함수], [:연산자오버로딩 연산자 오버로딩], [:다중상속 다중 상속], [템플릿], [예외처리]의 개념을 지원하는) C++ 표준은 1998년에 ISO/IEC 14882:1998로 재정되었다. 그 표준안의 최신판은 현재 ISO/IEC 14882:2003로서 2003년도 버전이다. 새 버전의 표준안(비공식 명칭 [C++0x])이 현재 개발중이다. [C]와 C++에서 ++이라는 표현은 특정 변수에 1의 값을 증가시키는 것이다. (incrementing이라 함). C++이라는 명칭을 이와 동일한 의미를 갖는데, [C]라는 언어에 증가적인 발전이 있음을 암시하는 것이다.
- CheckTheCheck/곽세환 . . . . 2 matches
깔끔하게 짜려고 했는데 의외로 지저분해졌다.
처음엔 모든 말의 위치를 기준으로 검사를 하려고 했는데 굳이 그럴필요 없이 왕의 위치를 기준으로 검사를 하면 더 간단할것 같아 그렇게 짰다.
- ChocolateChipCookies . . . . 2 matches
초코칩 쿠키를 만들기 위해 밀가루와 소금, 기름, 베이킹 소다, 초콜릿 칩을 섞어서 반죽을 만든 다음 가로, 세로 50cm의 정사각형 모양으로 밀어서 편다. 그리고 이 평평한 반죽을 원형으로 잘라서 쿠키판 위에 놓은 다음 약 20분 동안 오븐에서 굽는다. 쿠키가 다 되고 나면 오븐에서 꺼내서 식힌다.
- ClassifyByAnagram/sun . . . . 2 matches
* genKey() 메소드의 성능 개선. qsort2([http://www.cs.bell-labs.com/cm/cs/pearls/sortanim.html ProgrammingPerals 참고]) 이용.
* 다른 알고리즘, 자료구조 생각요.
- ClipMacro . . . . 2 matches
잘 안되네요. 윈XP pro !SP2 , Internet Explore 6.0 !SP2 에서 테스트 했습니다. paste와 copy는 별 반응없고, Unload 괜히 눌렀다가 위의 그림만 지웠네요 ^^;
클립보드에는 그림이 잘 들어가 있었구요. 포토샵7.0에서 copy했는데 그림판이나 워드등에는 잘붙여지고 있네요...
- Code/RPGMaker . . . . 2 matches
내부적으로 자바의 java.awt.Color 클래스를 가지고 있으며 이를 이용하여 모든 값을 주고받는다.
- CommonPermutation . . . . 2 matches
두 개의 문자열 a, b가 주어졌을 때 글자의 순서를 바꿔서 a의 부분 문자열도 만들 수 있고, b의 부분 문자열도 만들 수 있는 것 중 가장 긴 문자열 x를 출력하라.
입력 파일에는 여러 개의 케이스가 들어갈 수 있으며 각 케이스는 두 개의 연속된 줄로 구성된다. 즉 첫번째 줄과 두번째 줄이 한 테스트 케이스를 이루며 세번째 줄과 네번째 줄이 또 다른 테스트 케이스를 이루는 식이다. 각 행에는 소문자로 이루어진 문자열이 하나씩 들어있으며 한 테스트 케이스를 이루는 문자열 중 첫번째 것을 a, 두번째 것을 b라고 하자. 각 문자열의 최대 길이는 1,000글자다.
- ComputerNetworkClass/Report2006/PacketAnalyzer . . . . 2 matches
아마도 listen, accept 가 패킷 필터링을 하는 것으로 보이는데 dst 상관없이 무조겁 application 까지 올라오니깐 필요없는 것이 아닐까? 그런 생각하고 있음. -_- - [eternalbleu]
= 참고 =
- CppStudy_2002_1/과제1/CherryBoy . . . . 2 matches
0을 입력받고 싶지 않은데 그게 어렵네요...
//이름이 입력되면 1을 리턴하고, 이름이 빈 문자열이면 0을 리턴한다
- Cracking/ReverseEngineering/개발자/Software/ . . . . 2 matches
기존 배우고 있던 것들과는 별개로 Cracking에 대한 것들을 익혀야한다. (여기서 Cracking은 시스템 전반에 관한 지식을 익혀 그것을 악용 하는 것이다.)
개발자가 만들어 놓은 Software는 다른 사람들에 의해(물론 이런 사람들은 어느정도 컴퓨터에 대한 지식이 있는 사람들) 파괴 되고 분석된다.
- CxxTest . . . . 2 matches
C++ 의 경우는 언어차원에서의 리플랙션을 지원하지 않기 때문에 테스트를 추가하는 부분이 자바나 파이썬 등에 비해 상당히 귀찮다. 그에 대한 대안으로 [CUT] 등의 C UnitTestFramework 의 경우 외부에서 Perl 등으로 작성한 스크립트언어로 테스트실행과 관련한 Runner 를 코드제너레이팅하는 방법을 쓰고 있다.
[1002]의 경우 요새 CxxUnit 을 사용중. 밑의 스크립트를 Visual Studio 의 Tools(일종의 External Tools)에 연결시켜놓고 쓴다. Tool 을 실행하여 코드제너레이팅 한뒤, 컴파일. (cxxtestgen.py 는 CxxTest 안에 있다.) 화일 이름이 Test 로 끝나는 화일들을 등록해준다.
- Devils . . . . 2 matches
두 단체의 차이점은, [데블스]는 다수 회원이 겹쳤지만, [제로페이지]와 완전한 독립 단체를 선언하고 활동하였으며, [폴리곤]은 [제로페이지]내의 작은 소모임으로 존재한다.
이 두 단체는 [제로페이지]의 규모가 작아지고, 과거의 시작 멤버 이후로 모임의 강도가 약해지면서 [제로페이지]와 통합하였는데, [데블스캠프]는 [데블스]의 정신을 이어 받은 신입생을 위한 밤새기 세미나로 남아 있다.
- DrawingToy . . . . 2 matches
MFC를 익히기 위해 [강희경]이 고안해낸 프로그램.
빨간색 네모박스에 황금색 모니터(?)가 있고 그 밑에 단추 두개가 양 옆에 달려있다.
- EightQueenProblem/밥벌레 . . . . 2 matches
30분동안 뭔가 다른 방법을 찾아 볼라고 고민을 했습니다만 포기.......-_-;;
- EightQueenProblem/최태호소스 . . . . 2 matches
EQ() 함수에서 return 1 하는 대신 계속 풀도록 하고..
그리고 메인함수에서 결과 출력하는 루틴은 제거 하였다.
- ExtremeBear/OdeloProject . . . . 2 matches
고객의 요구로 오델로 게임 구현
고객 :["신재동"]
- Gnucleus . . . . 2 matches
소스가 굉장히 깔끔하고, 원래 부터 확장성이 좋은 누텔라 기반인지라 P2P 이용 어플리케이션에 많이 이용된다.
누텔라의 쿼리 라우팅이나 PUSH 기법은 특별한 장점은 보기 힘들지만, 꽤나 재미있는 것이라고 할 수 있다.
- GotoStatementConsideredHarmful . . . . 2 matches
주로 JuNe 과 [jania] 의 토론을 읽으면서 이해를 하게 된 논문이다. '실행시간계'와 '코드공간계' 의 차이성을 줄인다는 아이디어가 참으로 대단하단 생각이 든다. 아마 이 원칙을 제대로 지킨다면, (즉, 같은 묶음의 코드들에 대한 추상화도를 일정하게 유지한다던가, if-else 의 긴 구문들에 대해 리팩토링을 하여 각각들을 메소드화한다던가 등등) 디버깅하기에 상당히 편할 것이고(단, 디버깅 툴은 고생좀 하겠다. Call Stack 을 계속 따라갈건데, abstraction level 이 높을 수록 call stack 깊이는 보통 깊어지니까. 그대신 사람이 직접 디버깅하기엔 좋다. abstraction level 을 생각하면 버그 있을 부분 찾기가 빨라지니까), 코드도 간결해질 것이다.
- GuiTestingWithWxPython . . . . 2 matches
TDD로 컨트롤을 하나하나 붙이고 위치값을 잡고 리스트박스에 초기값을 설정하는 예제
- HardcoreCppStudy/첫숙제 . . . . 2 matches
* 함수의 중복정의(Overloading)에 대해 기술할 것. 예제도 스스로 만들어 보기 // 책에는 재정의라고 나와있음.
* 마방진 만들기 // 데블스 캠프 참가자와 불참가자간의 균형을 맞추기 위해 함. 마방진을 풀 수 있는 사람은 랜덤워크도 해볼것. 일단 배열 동적할당은 안 해도 되고 5*5칸으로 해도 됨.
- HaskellLanguage . . . . 2 matches
* 저 위에보면, featuring static typing, higher-order functions, polymorphism, type classes and modadic effects 라고 있는데, 이것들이 아마 haskell language의 큰 특징들이 아닐까 한다. 각각에 대해서 알아두는게 도움이 될듯. ([http://www.nomaware.com/monads/html/ monad관련자료])- 임인택
* (Num t)는 t의 자료형이 Num이라고 알려주는 것이에요. 함수는 화살표가 -> 로 나오네요.^^
- HelpOnLists . . . . 2 matches
숫자가 매겨진 리스트와 총알 리스트를 아주 자연스럽게 입력하실 수 있습니다. 총알 리스트를 만들고 싶으시면 그 줄의 첫 시작을 "{{{[공벡]*}}}"로 시작하여 써주시면 됩니다; 숫자가 매겨진 리스트는 그 줄의 시작을 {{{[공백]1.}}}으로 시작하시면 됩니다.
만약 공백을 넣어 들여쓰기만 하고 {{{*}}}나 번호리스트를 지원하는 {{{1.}}} {{{a.}}} 이외의 다른 문자가 온다면, 그 단락은 들여쓰기된 단락으로 인식됩니다.
- HelpOnProcessingInstructions . . . . 2 matches
* {{{#title}}} ''페이지 제목'': 좀 더 장황하고 설명적인 페이지 제목으로 바꿔준다.
* {{{#redirect}}} ''url'' : 페이지를 보게되면 `url`이 가리키는 곳으로 이동한다. `url`은 페이지 이름이 될 수도 있고, 인터위키, url 등등이 될 수 있다.
- Hessian . . . . 2 matches
그리고 RPC Test 를 구현해보자. (여기선 Hessian Servlet 을 이용)
그리고 class 화일을 Servlet 이 돌아가는 디렉토리에 복사한다. 이로서 RPC Publish 기본준비는 ok.
- HomepageTemplate . . . . 2 matches
== 하고싶은 것 ==
== 하고싶은 말 ==
- IsThisIntegration? . . . . 2 matches
아래에 정사각형 ABCD의 그림이 나와있다. AB = BC = CD = DA = a 다. 그리고 각각 A, B, C, D를 중심으로 하고 반지름이 a인 네 개의 원호가 그려져 있다. A를 중심으로 하는 호는 꼭지점 B에서 시작해서 꼭지점 D에서 끝난다. 다른 모든 호도 비슷한 방식으로 그려진다. 이렇게 하면 서로 모양이 다른 세 가지 영역이 만들어진다. 이렇게 서로 모양이 다른 각 영역의 넓이 합을 구하라.
- Java/JDBC . . . . 2 matches
* 드라이버를 다운받아서 jre/lib/ext 폴더에 넣고, 재시작.
* 그후 아래와 같은 식으로 접속 가능하다. 아래에서 NSH2 는 전역 데이터베이스 이름임으로 각자 알아서 적고, 연결에서 아이디와 비번을 넣는다.
- Java/스레드재사용 . . . . 2 matches
아래 코드에 문제가 있는것 같아요. 분명 두개의 메소드가 같아보이는데 (주석처리된 run() 메소드와 run() 메소드) 한개만 되고 나머지 한개는 에러가 납니다(unreachable statement) - 임인택
waitfortarget() 콜하기 전에 중괄호가 두개 있고 하나 있는 차이인것 같은디?? 음.. 지금 주석처리 안한 run에서 에러가 나는거야?
- JavaStudy2003/세번째과제 . . . . 2 matches
== 참고 ==
* 으... 수업 내용을 읽고 이 페이지를 여러분들이 직접 만들줄 알았습니다. 제가 만들게 된 사태 중 하나는 역시 한분도 안읽어서인가요..ㅡ.ㅡ; -[상욱]
- JollyJumpers/Leonardong . . . . 2 matches
처음에 리스트에 차를 집어넣은 후 정렬하려 했다가 집합 개념이 떠올라 그 쪽으로 해결했다. statementForSeries메서드 부분에 있던 CheckJolly메서드를 따로 테스트하면서 ExtractMethod를 하게 되었고, 차가 음수인 경우도 테스트를 통해 알게되었다. 보폭이 아직 좁지만 술술 진행한 문제이다.
실제 코딩에 들어가기 전에 생각하는 시간을 가진다. [생각하는프로그래밍]에서 읽은 게으른 프로그래머가 될 필요가 있겠다. 가능한 디자인 공간을 5분이라도 탐구하고 그 가운데 가장 괜찮은 놈으로 시도해봐야겠다. --[Leonardong]
- JollyJumpers/황재선 . . . . 2 matches
3. test코드를 다듬었다. 테스트할때마다 콘솔로 입력받는 게 귀찮아서 test클래스에서 메인 클래스의 field를 정의하고 진행했다. 또 다른 테스트를 하기위해서 고쳐야할 부분이 흩어져 있다. 테스트코드의 설계에 관심을 가져야겠다.
- KIV봉사활동/자료 . . . . 2 matches
* ''뉴하트 (~2008, 完)'' - 중앙대를 보여줄 수 있는 좋은 드라마라고 생각됨. 이것도 1화 정도만 받으면 될듯
* ''태왕사신기 (~2007, 完)'' - 1화만 받아주세요. 고조선 단군 신화 때문에 있으면 좋을 듯.
- LC-Display . . . . 2 matches
한 친구가 방금 새 컴퓨터를 샀다. 그 친구가 지금까지 샀던 가장 강력한 컴퓨터는 공학용 전자 계산기였다. 그런데 그 친구는 새 컴퓨터의 모니터보다 공학용 계산기에 있는 LCD 디스플레이가 더 좋다며 크게 실망하고 말았다. 그 친구를 만족시킬 수 있도록 숫자를 LCD 디스플레이 방식으로 출력하는 프로그램을 만들어보자.
[문제분류], [알고리즘/문제목록]
- LazyInitialization . . . . 2 matches
LazyInitialization의 하나의 변수당 두개의 메소드로 나눠서 초기화를 한다. 하나는 변수가 LazyInitialization되는 것을 감추어 주는 getter이고, 다른 하나는 변수에다 디폴트값으로 할당을 해줄 DefaultValueMethod이다. 이 방법은 유연성이 증대된다. 당신이 서브클래스를 만든다면, DefaultValueMethod를 오버라이딩함으로써, 기능을 바꿀 수 있다. 전장에서도 언급했듯이 성능도 증대시킬 수 있다.
별로 안쓸듯하지만... 켄트벡 왈 : 일단은 ExplicitInitialzation으로 출발을 하고, 상속될 거 같으면 LazyInitialization을 사용한다.
- LinuxSystemClass/Exam_2004_1 . . . . 2 matches
다음 SVR4 스케줄링 테이블을 보고 답하시오. (책의 153p)
globpri 가 1이고 index 가 1인 상태.
- Lotto/김태진 . . . . 2 matches
* 솔져는 못풀고 대체제로 이거슬 풀었습니다. 이번주는 진경이한테 덜 까이겠군여.
* 아, 그리고 오랜만에 포인터를 썼는데 예상대로 써져서 흡족했습니당.-
- MT날짜정하기 . . . . 2 matches
/!\ 주의! 출발날짜로 가능한 날짜를 투표해주세요. 그리고 표 모양 안일그러지게 해주세요...^^;
재학생도 참가비 내고 가는건가? 너무 센데 저거? --NeoCoin
- MoniWikiProcessor . . . . 2 matches
MoinMoin 1.1 이하에서는 Processor와 Parser로 분리되어있었고, 1.3 이후에는 Processor Parser가 Parser로 통합되었다.
MoniWiki에서는 이미 Processor와 Parser개념을 통합및 간소화 하여 Processor라는 이름으로 쓰이고 있다.
- MoreEffectiveC++/C++이 어렵다? . . . . 2 matches
처음에는 문서 작성을 시작했고, 레이아웃을 잡아가는 과정에서 항해지도를 작성하고, 대본(?)을 만들어 보는건 어떨까 생각을 해보았다. 언제나 새로운 시도는 기대되는 것
- NetBeans . . . . 2 matches
제임스 고슬링이 열을 올리고 있다는 그 자바툴
- NumberBaseballGame/jeppy . . . . 2 matches
/* 지화니네 집에서 할일없이 뒹굴거리다가 ZeroWiki에서 보고 함 해봤음 --v
ex) 223 이라고 나오면 쉽게 풀 수 있을까? 흐음..
- NumberBaseballGame/성재 . . . . 2 matches
아아악~ 이거역시 어렵습니다아~ ㅜ_ㅜ 한참 고생해서 도움받고...에이구우~
- OekakiMacro . . . . 2 matches
{{{[[OeKaki]]}}}라고만 쓰면 페이지 전체를 OeKaki게시판처럼 쓸 수 있다. 단, 코멘트는 위키위키식으로 단다.
(!) 짧막한 코멘트를 달게끔 해도 괜찮을 것이다. Comment 플러그인을 만들고, Blog의 코멘트와 Vote매크로를 응용해서 페이지 임의의 부분에 좀 더 쉽게 코멘트를 덧붙일 수 있게 한다.
- OurMajorLangIsCAndCPlusPlus/float.h . . . . 2 matches
float형에서 유효숫자의 최소개수. 이 매크로의 값은 ANSI C에서, 적어도 6으로 지원되고 있다.
이것은 지수부의 베이스(base) 또는 기수(radix)의 값이다. 이것은 이 절에 설명된 다른 매크로와는 달리 상수 표현식임이 보장된다. IBM 360과 그곳에서 파생된 제품을 제외하고는 모든 기계에서 2로 되어있다.
- ProjectLegoMindstorm . . . . 2 matches
* 빨리 위키 사용법을 익히고 페이지를 만들어 나갔으면 좋겠네요. - [이승한]
* [http://mindstorms.lego.com/eng/Hong_Kong_dest/Default.aspx 레고 마인드스톰 홈피]
- ProjectPrometheus/UserStory . . . . 2 matches
* Book Cart 기능 - 책 검색중 맘에 드는 책 (또는 도서관에 대여하려고 점찍어놓은 책)에 대하여 자신만의 Book Cart 에 넣어둘 수 있다. 점찍어놓은 책들을 보관하고 간단한 메모를 적을 수 있다.
- ProjectSemiPhotoshop . . . . 2 matches
* ["경태"] : 회닉 중임다. 한마디로 찬란한 광채를 숨기고 구름 뒤에 숨어있는.. 짧게 말해 ZP기생충.. >.<
* 상민 : 너무나 방해가 많은 프로젝트 였다. 강기, 조부 상, 이런 소사들이 팀 프로젝트에 많은 영향을 끼치지 않은것으로 Truck Number가 낮다고 생각되는 것이 참 만족할 느낌이였다.
- PyIde/BicycleRepairMan분석 . . . . 2 matches
brm_xxx_event 메소드류들을 찾고 이를 보면서 가장 바깥단에서 어떻게 실행하는지 알게 되었다.
* BRM 을 분석하는데 BRM 을 쓰고 있다. 느낌이 묘한중. :)
- R'sSource . . . . 2 matches
name = raw_input("검색하고 싶은 게이머의 이름을 입력하세요 : ")
inputDir = raw_input("""저장 하고 싶은 경로를 지정하세요.(예>c:\\\\replay\\\\) : """)
- RandomFunction . . . . 2 matches
rand() % a + b의 형식을 사용하면 b ~ a+b 사이의 숫자를 얻을 수 있습니다. ( 1da + b 라고도 하지요. )
int x2 = rand() % 9 + 1; // % 9를 하면 0~8까지의 숫자가 들어갈 수 있고
- RandomQuoteMacro . . . . 2 matches
이 내용을 좀 바꿔보고 싶은데 어떻게 해야 할지 알 수가 없네요. -- lordmiss
'''A''' : FortuneCookies 에 있는 내용을 뿌려주는걸로 알고있습니다.
- RandomWalk . . . . 2 matches
'술취한 바퀴벌레' 문제라고도 한다. 다음과 같은 격자에 술취한 바퀴벌레가 있다고 해 보자 [[BR]] [[BR]]
- RecentChanges . . . . 2 matches
'''로그인 하고 쓰시면 ip대신에 자신의 멋진 id가 남습니다. ''' 현재 [[PageCount()]] 개의 페이지가 있습니다.
|||| [[Icon(new)]] ||북마크하신 이후 새로 만들어졌고 다시 편집되지 않은 페이지를 의미합니다.||
- RubyLanguage/InputOutput . . . . 2 matches
* 파일을 new로 부르지 않고 사용할 수 있다.
* [http://lambert.tistory.com/167 참고 사이트]
- RunTimeTypeInformation . . . . 2 matches
동적으로 만들어진 변수의 타입을 비교하고, 특정 타입으로 생성하는 것을 가능하게 한다. (자바에서는 instanceof를 생각해보면 될 듯)
MFC에서 CRuntimeClass 구조체, DECLARE_DYNAMIC, IMPLEMENT_DYNAMIC, DECLARE_DYNCREATE, IMPLEMENT_DYNCREATE, RUNTIME_CLASS 를 이용해서 구현하고 있다.
- STL/참고사이트 . . . . 2 matches
ObjectSpace 예제 : ObjectSpace는 300개가 넘는 예제를 가지고 있고, 따라서 초보자에게 아주 좋은 출발점을 제시해준다. ftp://butler.hpl.hp.com/stl/examples.zip
- Score/1002 . . . . 2 matches
1줄로 표현할 방법을 이리저리 고민.
각 sub 단위의 "O" 의 갯수를 세고 이에 대해 각 부분별로 f(n) = f(n-1)+1 에 대한 총합 계산을 해주면 되겠다 생각.
- SeedBackers . . . . 2 matches
2005년 2월 졸업생들. 졸업 논문 심사를 통과하기 위해. 조금 더 양질의 논문을 산출해내기 위해 서로의 논문을 같이 준비하고 피드백(feed-back)을 넘어선 시드백(seed-back)을 주고받기 위한 프로젝트 페이지
- SoJu/숙제제출 . . . . 2 matches
printf("\n보고싶은 구구단의 숫자를 입력하시오.\n\n");
//이프로그램은 정수를 입력받은뒤 1-9사이일 경우에만 구구단을 출력하고,
- Star/조현태 . . . . 2 matches
모처럼 아침에 일찍일어나서.. 아침운동삼아 풀어보려고 했던게 화근..T.T
나~~~~~~~~~~중에 언젠가 시간나고 할일없으면 속도 개선해서 올리겠다.^^
- SummationOfFourPrimes . . . . 2 matches
오일러는 솟수가 숫자 영역에서 무한하다는 가설을 자신의 고전이론으로 증명했다. 모든 수들이 4개의 양의 솟수 합으로 표현될 수 있을까? 답을 알 수는 없다. 답은 느린 386 컴퓨터에서도 돌아갈 수 있기를 원한다. 시간 제한은 펜티엄3 800 컴퓨터를 기준으로 한다. 이 문제에서 솟수의 정의는 "완전한 두 개의 다른 정수로만 나눠 떨어지는 양수"이다. 예를 들어,37은 정수 37과1로만 나눠지는 솟수이다.입력은 한 라인에 하나의 정수N만 포함한다. 여기서 N은 10000000이하의 수이다. 이 수는 4개의 솟수의 합으로 구성될 수 있는 수이다. 입력은 하나의 수만 받는다. 입력 라인에 맞춰, 주어진 조건에 맞는 4개의 솟수를 한 줄에 출력한다. 입력된 수가 솟수 4개의 합으로 표현될 수 없으면"Impossible."이라 출력한다. 답은 여러개가 있을수 있다. 모든 정답을 받아들인다.
[문보창]이 푼 게 200등이네... 내 순위 찾다가 발견함. 참고로 난 394등. 나도 분발해야겠다 --[곽세환]
- SuperMarket . . . . 2 matches
사실 물건을 고르세요 >>
다음과 같이 표준입출력을 통한 커맨드라인 인터페이스가 어떨까요? (자동) 테스트하기도 훨씬 쉬울테고요.
- TAOCP/Exercises . . . . 2 matches
그리고 점프쓰려면 레이블 달아야 할듯
X^13이 rA에 들어가는 프로그램 작성(X^13이 한 WORD를 넘지 않는다고 가정)
- TestDrivenDevelopmentBetweenTeams . . . . 2 matches
팀단위로 TDD를 한다고 한다면?
일단 각 팀들끼리 TDD 를 하면서 팀들간의 대화를 통해서 일종의 공통 interface 를 빼낼 수 있다. 일단은 일종의 MockObject 로 가짜값을 채워서 테스트를 통과시킨뒤, 실제 Object 가 구현되면, 천천히 하나씩 실제 Object 의 interface 를 끼워가면서 테스트를 통과하는지를 확인한다. 그리고 최종적으로 실제 Object 로 MockObject 를 대체시킨다.
- TestDrivenDevelopmentByExample . . . . 2 matches
* http://groups.yahoo.com/group/testdrivendevelopment/files/ - TestDrivenDevelopmentByExample 문서. (아직 미완성중. 계속 업데이트 되고 있습니다. 최신 버전을 받으세요.)
개인적으로 TDD 중 빠른 테스트 통과를 위해 가짜 상수로 쌓아나갈때 어떻게 '중복' 이라 하여 ["Refactoring"] 할까 고민했었는데, 이전의 SeminarHowToProgramIt 에서의 예제 이후 이 문서에서의 예제가 깔끔하게 풀어주네요. 인제 한번 들여다 본 중이긴 하지만, 저자가 저자인 만큼 (KentBeck).~
- TheJavaMan/지뢰찾기 . . . . 2 matches
그래픽적으로 더 신경을 쓰고 싶지만
어떻게 해결할지 고민중이다
- TheLagestSmallestBox/하기웅 . . . . 2 matches
수학문제라 문제만 풀고나니 코딩은 금방 됐다~~
대부분 똑같은 방식으로 풀었으리라 예상하고 설명 안함^^
- ThePriestMathematician/문보창 . . . . 2 matches
{{| 0.5a(a + 1) ≤ n, (a ≥ 0 이고, 수식을 만족하는 가장 큰 정수) |}}
p.s. 처음에는 k 개의 원반을 찾으려고 노력했으나, 실마리는 k 에 있지 않았다. 우리가 원하는 것은 k 를 찾는 것이 아니라 원반을 옮기는 총 횟수를 구하는 것이었다.
- TugOfWar/강희경 . . . . 2 matches
알고리즘 생각이 힘들었다. 하지만 미완성.
완성시키려면 더욱 더 세련된 알고리즘을 개발하거나, 프로그램이 엄청난 과부하를 갖던지 둘 중 하나
- TugOfWarInput . . . . 2 matches
참고로 TugOfWar 온라인 로봇 심사위원은 틀렸다. 잘못된 프로그램(50,50,100,200 경우 답이 150,250이어야 하는데, 200,200인 프로그램도 통과)을 걸러내지 못한다.
사람이 총 네사람 있다. 몸무게가 각각 50, 50, 100, 200이다. 이 네사람을 두 팀으로 나눈다면 가능한 경우는 둘 씩 나누는 경우 하나 뿐이다. (하나 셋으로 나누면 두 팀의 인원 차이가 2가 되어서 부적격) 둘 둘 나눌 때 두 팀 간 몸무게 차이가 최소가 되는 경우는 150, 250인 경우이다. 200, 200으로 나누는 것은 불가능하다. 그러나 현재의 온라인 로봇 심사위원은 이런 틀린 답이 나올 "예리한" 테스트 케이스를 포함하고 있지 않아서 잘못 작성된 프로그램도 통과시킨다.
- UML/CaseTool . . . . 2 matches
Rational Software Architect, Together가 유명하고, 오픈 소스로는 Argo, Violet 이 유명하다.
UML 케이스 툴과 달리 Visio 같은 경우에는 Diagramming 기능만을 제공한다. Diagramming Tool 이라고 분류하는 듯하다.
- UpgradeC++ . . . . 2 matches
참여하고 싶으신 분은 이름을 추가해 주세요.
== 하고 싶은 말 ==
- VoteMacro . . . . 2 matches
||[[Vote(off,일찍 자고 일찍 일어난다 6, 늦게 자고 늦게 일어난다 14, 내 맘대로 19)]]||[[Vote(아침 6, 점심 9, 저녁 13)]]||
- WeightsAndMeasures/신재동 . . . . 2 matches
sort()에 비교 함수('''turtlesCompare''') 넣는데 은근히 힘들었음. 처음에는 C++의 STL에서 vector에 비교 함수 넣는 것과 같으리라고 생각하고 비교 함수를 만들었는데 안되서 확인해보니 파이썬의 리스트에서는 결과를 '''{-1, 0, 1}'''로 해야지 제대로 돌아간다는 것을 알았음. --재동
- WikiGardening . . . . 2 matches
실제 위키의 View 구조를 조성하는 사람을 WikiGardening을 하는 사람이라고 보면 될까요? see NoSmok:WikiGardening --["이덕준"]
구조조정 모델로 참고 할 만한 페이지는 [페이지제목띄어쓰기토론] 같습니다.
- WritingOS . . . . 2 matches
실제로 대학에서 교육용으로 쓰고 있는 OS
이야~ 멋진데 ㅎ 재밌겠다. 나도 하고 싶긴 한데 이번 방학땐 다른걸 하기로 했으니,, - [namsang]
- ZPBoard/PHPStudy/쿠키 . . . . 2 matches
* 쿠키(Cookie)는 클라이언트 컴퓨터의 하드에 해당 컴퓨터의 여러가지 정보가 저장된 파일을 지칭하는 말입니다. 현재 많은 사이트들이 이를 이용해서 여러가지 서비스를 제공하고 있습니다. 예를 들자면 제로위키에서는 이를 이용해서 로그인 서비스를 제공하고 있답니다.
- ZPBoardHistory . . . . 2 matches
*세미나 게시판 : 세미나에 관련된 내용을 담고있습니다.
*프로젝트 신청 게시판 : 프로젝트의 신청을 하고 사람들을 모았었습니다.
- ZP도서관/2013 . . . . 2 matches
* 책에 QR코드를 붙이고 위키 플러그인을 만들어서 그 QR코드를 찍으면 대출, 반납, 연장, 예약 등을 선택할 수 있게 한 뒤 원하는 작업을 클릭하면 위키에 자동으로 기록하게 해준다면 편하겠죠... - [김수경]
* 레일즈로 도서 조회 사이트 만들자! 루비 튜토리얼이 도서관리 프로그램 만들기라 그런건 아니고!! - [서지혜]
- ZeroPageServer/BlockingUninvitedGuests . . . . 2 matches
- [임인택]의 [http://purepond.cafe24.com/ 개인위키]도 ZeroPage 에서와 같은 문제점을 (그것도 더 심하게) 겪었는데 아파치의 보안기능 (.htaccess 파일 이용)을 적용해봐도 결과는 마찬가지였다. 누군가의 장난이거나 검색엔진(+사용자)의 무지에서 오는 문제인것이 확실하였는데. 결국 NoSmoke:노스모크모인모인 의 '''등록한 사용자만 글을 쓸수 있게 하는''' 기능을 이용하여 이 문제를 해결하였다. 여담으로.. 쓰레기 페이지를 손수 지우느라 엄청 고생함...-_-;;
다른 의견 갖고 계신분 있나요? - [임인택]
- ZeroPageServer/UpdateUpgrade . . . . 2 matches
ZeroPageServer 는 데비안 (SeeAlso [http://debianusers.org/ 한국데비안 사용자 모임] , 위키의 DebianKr:대문 )을 사용하고 있다.
확인하면서 업그레이드 하고 싶다면
- [Lovely]boy^_^/Diary/2-2-14 . . . . 2 matches
* 난 항상 지하철 타고 다니는 사람들이 부러웠다. 지하철에선 책을 볼수가 있기 때문이다. 멀미를 잘 하는 나로서는 버스에서 책을 본다는건 미친 짓이다... 학교 왔다 갔다 하는데 드는 2시간을 어떻게 때울까가 현재 고민이다.
- [Lovely]boy^_^/Diary/2-2-6 . . . . 2 matches
* 알고리즘 레폿 나왔다.--; 미치겠다
* 컴퓨터 고전 스터디 신촌 신관 민토 5시
- [Lovely]boy^_^/EnglishGrammer/Passive . . . . 2 matches
If we want to say who does or what causes the action, we use by(수동태에서 누가 했는지 알고 싶으면 by 쓰래요)
We use get mainly in informal spoken English. You can use be in all situations.(항상 be 쓸수있단다. 고로 귀찮은 get쓰지말자... 클래스에서 get 보는것도 지겨운데..--;)
- [Lovely]boy^_^/USACO/MixingMilk . . . . 2 matches
* 이제 assert문 쓰는 법을 알아 가고 있다.
* 전문 프로그래머들은 assert문을 자주 쓴다고 한다.
- aekae/* . . . . 2 matches
== 하고싶은말 ==
오~ 잘하는데? 이정도면 For 문은 완벽하게 이해했다고 봐도 되겠는걸?? ^^; - 상욱([whiteblue])
- apache/mod_python . . . . 2 matches
* DeleteMe) mod_python의 mod를 module인줄 모르고 파이선의 한 종류인줄 알았었다는...-_-ㅋ;;
* [ftp://ring.aist.go.jp/archives/net/apache/dist/httpd/modpython/win/] : 윈도우즈 환경에서 Apache 와 연동해서 설치할 경우에 왼쪽 링크 참고. 특히 주의할 점은 Apache 버전 자신의 것과 맞는 것으로 다운 받아야 함.(안그럴 경우 아파치 서버 시작 못함)
- dlaza . . . . 2 matches
== 하고 싶은 것 ==
c++의 기초를 다시 공부하고 싶음
- erunc0/Mobile . . . . 2 matches
mobile. 왠지 거창하다. 내가 하는 일은 요즘 pda를 산다면 대부분이 사는 arm processor 를 장착한 wince 기반의 ipaq 기종에 미니 게임을 만든다는.. --; 아직 시장도 없거니와. sk 쪽에서 휴대폰에 이어 앞으로 펼쳐지게(?)될 pda 시장에 sk 이름에 걸맞게 휴대폰 장사에 이어 독점 비슷하다 싶이 하기위해 자그마치 500 억이라는 투자로 인해 매일 같이 삽질을 하고 있다.
* active sync - pda 를 가지고 있다면 ubs port 를 통해 pc와 통신을 할수 있게 하는 program
- fnwinter . . . . 2 matches
몇가지만 완료하면 Free 하게 생활할 수 있을 텐데. 앞으로 한달반은 더 고생해야 할 듯.(2005.4.18)
태호형- 태호형 보고감..^^
- html5/communicationAPI . . . . 2 matches
* 메세지의 송수신을 통해 둘 이상의 웹 페이지가 서로 데이터 주고받음
* 보안을 위해 메세지를 주고받는 상대의 신원 확인 필수
- html5practice/즐겨찾기목록만들기 . . . . 2 matches
* 원래 목적은 naver api를 끌고 와서 별표 찍는 연습을 만들려고 했는데. 이건 뭐. ajax cross domain 문제로 접근 불가. 난이도 하향. 로컬 목록을 사용자가 만들어서 그걸 즐겨찾기 추가 삭제 하는 코드를 만들었음. 기능과 UI가 안습이지만, 그래도. 만들었음.
- ljh131 . . . . 2 matches
모든 프로그래머들이 copy & paste에 빠져있어 구글신께서 포맷으로 심판하려 할 때 홀로 노가다 코딩을 하던 아노아씨는 구글신의 특별한 계시로 포맷이 닥칠것을 미리 알게 된다. 그는 120번의 이터레이션에 걸쳐 방주(신개념 version control system)를 제작해, 8개의 대형 오픈 소스 프로젝트와 한 패키지씩의 여러 sf프로젝트를 커밋한다. 포맷이 닥치자 모든 오픈 소스 프로젝트가 실패하고 말았지만, 이 방주에 커밋된 프로젝트들은 살아 남았다고 한다.
- lostship/MinGW . . . . 2 matches
* STLport 를 받고 압축을 푼다. [http://www.stlport.com/ STLport]
* /STLport-4.5.3/doc/index.html 에서 컨피그 셋팅을 보고 필요하면 수정한다.
- 겨울과프로젝트 . . . . 2 matches
* 지나치게 모이지 않는다면 프로젝트에 대한 커뮤니케이션에 지장이 생길지도 모르니 단위별로 적어도 일주에 한번씩은 모임이 있었으면 좋겠습니다. 참고해 주십시요. ( 정기적인 모임은 정모와 겹쳐도 상관없습니다. )
* XpWeek가 진행되며 방학을 즐기며 술독에 빠져 사는 경우가 많음으로 프로젝트 참가자를 받고, 프로젝트 진행을 위한 사전 준비를 한다. ( 학습방법, 교재, 모임주기, 기타등등 )
- 격언 . . . . 2 matches
* 21세기의 문맹자는 글을 읽을 줄 모르는 사람이 아니라 학습하고, 교정하고, 재학습하는 능력이 없는 사람이다. - 앨빈 토플러
- 경시대회준비반/BigInteger . . . . 2 matches
C++ 용 BigInteger 클래스로 거의 모든 연산을 지원한다. UVA 사이트의 구식(?) 컴파일러에도 문제없이 통과할 뿐 아니라, 성능또한 훌륭하다. 고정도 정수 연산을 하는 문제의 경우, 고정도 연산을 하는 라이브러리를 본인이 직접 짜거나, 이 클래스를 이용하면 된다. 몇 일동안 삽질한 결과 후자가 낫다는 판단이 선다. 되게 잘 짜여진 코드다. 시간 내서 분석해봐야 겠다.
- 김경환 . . . . 2 matches
== 하고싶은 것 ==
== 하고싶은 말 ==
- 김태진/Search . . . . 2 matches
제목 그대로 서치인데, 배열에서, 찾고자 하는 값이 2개 이상일 경우 모든 값의 위치를 찾아주는걸 해봤습니다.
* 과제를 더 발전시켜보았군요. 좋은 자세입니다. 다음엔 static variable말고 구조체로도 해보세요 ㅋㅋ - [서지혜]
- 김태형 . . . . 2 matches
==== 하고싶은 것 ====
=== 하고싶은 말 ===
- 김희성/ShortCoding/최대공약수 . . . . 2 matches
'''알고리즘''' - 유클리드호제법을 사용합니다.
'''Coding Skill''' - a^=b^=a^=b;(a^=b;b^=a;a^=b;)는 추가 변수 없이 두 수의 값을 바꾸는 방법입니다. 하지만 두 수가 같을 시 두 수의 값이 0이 되는 치명적인 버그가 있습니다. 본 코드에서는 while문에서 a%=b라는 조건을 주어 이 버그를 차단하고 있습니다.
- 달라이라마와도올의만남 . . . . 2 matches
* 현재 2권을 읽고 있는데 한번쯤 읽어볼만한 책인 것 같습니다 --[강희경]
도올이 인도에 가서 달라이라마를 만나고 와서 쓴 기행문 형태의 책, 총 3권으로 되어있다.
- 데블스캠프/2013 . . . . 2 matches
* '''후기 쓸 때 반드시 참고하세요 : [ThreeFs]'''
= 회고 =
- 데블스캠프2006/SSH . . . . 2 matches
* 문제상황 : 리눅스용 프로그램을 만들어야 하는 과제가 나왔다. 해당 과제는 컴파일과 실행을 리눅스에서만 해야 한다. 그런데 vi로 하기는 싫고, visual studio 나 editplus로 작업을 하고 싶다. 어떻게 할까?
- 데블스캠프2006/준비 . . . . 2 matches
- 수 : 자료구조, 알고리즘, 재귀호출 / 상섭, 기웅, 보창, 성민, 민경 '''<- 여기에 알고리즘도 넣기로 한거 아니었나요?''' - [상규] - 맞아요
- 데블스캠프2006/참가자 . . . . 2 matches
|| 06 || [고준영] || || || 22~ || . ||
* 강원도 여행 때문에 22일부터 참가하려고 합니다(빠르면 21일). -[지원]
- 데블스캠프2011/첫째날/오프닝 . . . . 2 matches
* 누구나 글 작성 가능하고, 편집도 가능하다.
2. 이 페이지를 고쳐 자기 이름을 추가한다.
- 레밍딜레마 . . . . 2 matches
이 책은 얇다. 그래서 이 책을 5가지 정도의 '''역할 바꾸기'''로 쉽게 읽을수 있었다. 각 역할의 모든 사람에게 가치를 주고, 쉽게 공감할수 있는 이야기와 설명임을 느낄수 있었다.
시리즈 물인데, 같은 시리즈의 하나인 혜영이가 남긴 감상 [http://zeropage.org/jsp/board/thin/?table=multimedia&service=view&command=list&page=0&id=145&search=&keyword=&order=num 네안데르탈인의 그림자] 와 같은 짧고 뜻 깊은 이야기이다. 왜 이 책을 통해서 질문법을 통한 실용적이며, 진짜 실행하는, 이루어지는 비전 창출의 중요성을 다시 한번 생각하게 되었다. ["소크라테스 카페"] 에서 저자가 계속 주장하는 질문법의 힘을 새삼 느낄수 있었다.
- 레밍즈프로젝트/박진하 . . . . 2 matches
주말동안 알바덕에 못했던 거 수정하려고 파일을 열어봤더니;
그러나 결국 그것도 살짝 버려지고,
- 몸짱프로젝트/CrossReference . . . . 2 matches
* 파이선 코드를 바탕으로 짜려고 했으나, 완전히 다르게 되어버려 시간이 더 오래걸렸다.
(*node) = new Node;// 노드를 새로 만들고
- 문자반대출력 . . . . 2 matches
문제 : 파일 입력으로 문자열을 입력한 후, 어떠한 알고리즘을 통해 반대로 된 문자열을 파일로 출력한다.
* C 에도 라이브러리로 문자열 반전 시켜주는 함수를 제공합니다. strrev()라는 함수를 사용하면 '\0'바로 전 글자부터 거꾸로 만들어주죠. 물론 ANSI 표준은 아니고 Semantec, Borland, Microsoft 에서 제공하는 컴파일러의 경우에 자체 라이브러리로 제공합니다. 이식성을 생각하지 않는 일반적인 코딩에서는 위에 나열한 컴파일러를 이용한다면 사용할 수 있습니다. - 도현
- 문자반대출력/문보창 . . . . 2 matches
음 만약에 한글과 같은 확장문자가 담겼다면 process_wchar() 함수에서 약간의 꼼수를 부린다. 가상의 예(실제로 이렇게 되지는 않지만, 원리는 같음)를 들어보자. "가나" 라는 문자열을 ver1과 같은 통상의 프로그램으로 뒤집으면 "나가"와 같이 프로그래머가 원했던 결과가 나오는 것이 아니고 "ㅏㄴㅏㄱ"가 나온다. 그렇다면 확장문자를 판단해서 문자열을 뒤집기 전에 "가나"라는 문자열을 "ㅏㄱㅏㄴ" 이렇게 만들어 놓는다면 기존 ver1의 프로세스를 전혀 바꾸지 않고도, process_wchar()만을 추가하는 것으로 원했던 기능을 모두 수행하게 된다.
- 문자열검색 . . . . 2 matches
검색하려고 하는 y문자열은 받아들이고,
- 문자열연결/조현태 . . . . 2 matches
피곤한데 머리 안써도되고 딱 좋다고나 할까.ㅎ
- 문자열연결/허아영 . . . . 2 matches
자료구조에 대한 문제라고 되어있어서 올려봤다.
책이 이제 조금 있으면 스택, 큐 그리고 정렬에 대한 문제들이 많다.
- 미로찾기/황재선허아영 . . . . 2 matches
// 주위에 0이 하나있고 2는 없어.
}// 주위에 0은 하나 있고 2가 있어.
- 반복문자열/김정현 . . . . 2 matches
소스 다 친다음에 딴애들꺼 봤다. 상당히 고칠부분이 많은듯.. 하지만 놔두겠다 [김정현]
-소스페이지 양식은 [반복문자열/허아영]을 참고해 주시구요. -- [허아영]
- 배민화 . . . . 2 matches
=== 나는 고준영 입니다. ===
고준영은 신경스지 않아도 됩니다..-_-..훗.. (당해봐..;;)
- 빵페이지/도형그리기 . . . . 2 matches
내일 물리수업 GG칠 각오를 하고......
* 오호~ 잠도 안 자고 한거야?? 난 그냥 잤는데ㅋ - 일정
- 삼미슈퍼스타즈의마지막팬클럽 . . . . 2 matches
제목은 한겨레신문에서 수도 없이 보았지만 이제서야 읽었다. 재밌어서 깔깔 웃었다. 1할 2푼 5리 슬률로 살아가는 모든이들에게, 어쩌면 필요없는 조언일지도 모르겠다. 그보다는 9할 넘는 승률로 살아가는 어떤이들에게 고민을 안겨주지 않을까? 어쨌거나 나에게는 잘 놀고 열심히 살자는 이야기였다.
- 새싹교실/2011/學高/6회차 . . . . 2 matches
=== 자기 반성 및 고칠 점(feeling/finds) ===
=== 자기 반성 및 고칠 점(feeling/finds) ===
- 새싹교실/2012/아무거나/1회차 . . . . 2 matches
[http://wiki.zeropage.org/wiki.php/%EC%83%88%EC%8B%B9%EA%B5%90%EC%8B%A4/2012/%EC%95%84%EB%AC%B4%EA%B1%B0%EB%82%98/1%ED%9A%8C%EC%B0%A8?action=edit 1회차 내용 고치기]
3. 빨간공을 설정을 초록색줄 왼편에 클릭을 하면 설정이 되고, 그것을 설정한 후에 f5 를 누르면 그 줄이 실행이 된다.
- 새싹교실/2012/열반/120507 . . . . 2 matches
* 어떤 도서관의 서가에 책이 정렬되어 있지 않다고 가정해봅시다. 그 상황에서는 어떤 특정한 책을 찾기는 매우 힘듭니다. 우리가 도서관에서 책을 쉽게 찾을 수 있는 이유는 책들이 정렬 되어 있기 때문입니다. 단, 저런 편리함을 위해서는 어느 정도의 비용이 발생합니다. 기존의 데이터를 정렬할 때 드는 비용이 있고, 새로운 데이터가 삽입하려 할 때 정렬을 유지하기 위해 드는 비용이 발생합니다. 예를 들어 도서관의 서가에 책이 정렬되어 있으면 새로운 책이 들어왔을 때 제 자리에 찾아 꽂아야 하지만, 정렬되어 있지 않다면 아무 빈 공간에 꽂으면 됩니다. 이렇듯 비용이 발생하기 때문에, 어떤 자료를 항상 정렬할 필요는 없습니다. 찾는 일보다 추가하는 일이 훨씬 많다면 정렬하지 않는 것이 이득이 될 수도 있습니다.
- 새싹교실/2012/열반/120514 . . . . 2 matches
* 내용이 많아 주석을 많이 달지 못했습니다. 직접 컴파일하고 실행해보고, 궁금한 점은 질문하시기 바랍니다.
- 새싹교실/2013/록구록구/8회차 . . . . 2 matches
int형 이기 때문에 소수점 이하가 잘리는 문제는 그냥 무시합니다. (출력 예시 참고!)
* 주영이는 역시 잘하고, 정경이도 잘 따라와서 좋았다 ^^
- 새싹교실/2013/양반/5회차 . . . . 2 matches
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
- 새싹교실/2013/양반/7회차 . . . . 2 matches
예를 들어 지난주에 돈가스를 먹은 것에 대해 후기를 쓴다면 : "지난주에 강남에 가서 하나에 5만원하는 돈가스를 먹었다.(사실) 기대를 잔뜩 했는데 별로 맛이 없었다.(느낌) 강남은 땅값이 비싸서 값만 보고 엄청 맛있을거라 기대하면 안된다는 것을 알았다.(깨달은점) 다음에는 미리 인터넷에서 평을 찾아보고 별점이 높은 돈가스집을 찾아서 가봐야겠다.(앞으로의 계획)"
- 새페이지만들기 . . . . 2 matches
'''방법 2(권장)'''. EditText를 한뒤 편집하는 장소에 {{{[["페이지이름"]]}}} 을 쓴다. 그리고 나서 그 페이지를 보면 해당 페이지이름이 붉은색으로 링크가 걸릴 것이다. 해당 페이지이름을 클릭하면 새 페이지를 편집할 수 있으며, 해당 페이지가 만들어지고 난 뒤부터는 일반링크가 걸린다.
- 선택과집중 . . . . 2 matches
마음만 먹는다면 '무엇이든' 할 수 있다는 말이 있지만, 당신이 '모든 것'을 할 수는 없다. 삶은 우리에게 무한대의 선택을 제공한다. 하지만, 우리가 그것들을 '선택'이라고 부른다는 사실은 우리가 그것들 모두를 가질 수는 없음을 보여준다. 우리가 성숙해지려면 우리의 삶을 규정하는 선택과 노력을 제대로 해야 한다.
... 내가 여러분에게 소개하는 여러 기법들을 보기전에 먼저 꼭 해야 할 것은 당신의 삶을 보면서 정말로 관심을 쏟고 싶은 것은 무엇인지 결정하는 것이다. 물론 당신은 언제든지 우선순위를 바꿀 수 있다. 하지만, 당신이 줄 수 있는 관심보다 더 많은 관심을 줄 수는 없다.
- 송지훈 . . . . 2 matches
(할매-지원이-는 나를 꽤 많이 알고 있음...)
* 남부럽지 않은 취미를 가지고 있군여. ㅋㅋ -[김태진]
- 수 . . . . 2 matches
교재에 나오는 소스 중 아직 이해하기 힘든 부분은 굳이 이해 하려고 하실 필요는 없습니다.
== 연결고리 ==
- 수학의정석/방정식 . . . . 2 matches
문제: 강물이 흐르는 속력은 xkm/hr 이다. 이 강을 따라 ykm의 거리를 배로 왕복하는 데 t분 걸렸다고 한다. 이 때, 잔잔한 강물 위에서의 이 배의 속력을 구하여라.
이 페이지의 목적이기도 하다. 최대한 효율적인 알고리즘을 창출하는 것이다.
- 순수원서 . . . . 2 matches
착하고 순수한 원서♡
== 하고싶은 것 ==
- 시간맞추기 . . . . 2 matches
문제 : user가 시간을 맞추는 프로그램이다. 프로그램 시작 후 8초가 경과되었다고 생각했을 때, user가 아무키나 누른다.
라고 출력.
- 식인종과선교사문제/변형진 . . . . 2 matches
이 문제를 푸는데 흔히 이용되는 Backtracking 기법을 사용하지 않고 구현하는 방법이 없을까 해서, Case-by-case로 최소한의 상황에 대한 처리 방법을 지정해보았다.
* 모든 케이스를 DB에 저장해서 푸는것과 비슷하게 머신러닝으로 학습시켜 풀게 만들면(문제 해결에 관한 state를 저장했다가 푸는것이므로 유사하다고 생각했습니다) 정답률이 얼마나 나올까요? - [[bluemir]]
- 신기훈 . . . . 2 matches
지금까지 로그인이 안된다고 생각했었는데
그거 하고 나서 로그인 하니 되네요...
- 실습 . . . . 2 matches
8) An empty project를 선택하고, Finish를 선택한다.
11) C/C++ Header File을 선택한 후, 오른쪽 File 칸에 "SungJuk.h"라고 기입한다.
- 여름방학프로젝트 . . . . 2 matches
배우고 싶은 것이나 해보고 싶은 것들을 제안해 주세요.
- 오목/곽세환,조재화 . . . . 2 matches
//MessageBox("그곳에는 입력할 수 없습니다.", "경고1");
//MessageBox("같은곳에는 입력하실 수 없습니다.", "경고2");
- 위키개발2006 . . . . 2 matches
* 사이트내 실시간 채팅 매크로 추가. 아래와 같은 매크로 사용시에 실시간 채팅 매크로가 추가 된다. 직접 구현은 안했고, gabbly 거 이용함.
== 고려사항 ==
- 위키메뉴얼 . . . . 2 matches
위키에 대한 설명이 아직 많이 부족합니다. 지금 쓰다만 저런 형태말고 부드럽게 구어체로 정리할려고 합니다.
- 유럽여행 . . . . 2 matches
== 특별히 하고 싶은 일 ==
결혼식 같은 지역 행사에 참여, 힘들면 그냥 구경이라도 하고 싶다.
- 이병윤 . . . . 2 matches
1 파싱결과를 통해 신청하고자 하는 과목의 여석이 존재하는지 확인한다.
- 먼저 장바구니에 자신이 듣고싶은 과목만 넣어둔다.
- 이승한/tip . . . . 2 matches
그 외의 #pragma 의 기능이 많다고 한다. 뭘까. 알고싶긴한데. 영문이라 압박이다.
- 임수연 . . . . 2 matches
== 하고싶은 것 ==
배고파서 죽겠다,ㅋ [장이슬]
- 전철에서책읽기 . . . . 2 matches
서서 책을 오래 보다 보니 나중엔 등이 아픈것 같다. 자세를 똑바로 하고 봐야 한다. --[인수]
''지하철에서 잠이 드는 것은 일종의 버릇이라고 생각된다. 잠이 오면 서서 책을 읽어 보는 것이 좋을 것 같다. 단, rollback 이 안되니 주의! :)'' --[Passion]
- 정모/2002.11.13 . . . . 2 matches
= 이런걸 해보고 싶어요 =
||알고리즘||_||
- 정모/2002.5.16 . . . . 2 matches
* HCI(Human Computer Interaction)발표 하겠습니다. 이번 심리학과 리포트 때문에 작성하던 것인데, 같이 하시는 분께서 관련 업계 종사자라서, 너무 많은 자료 때문에 제가 치일 정도 입니다. 일단 방대한 자료는 필요시 드릴수 있고, (관련 논문, Samsung 개발자료 etc, xp, aqua, palm guide line 등) 발표 골자는 기본적으로 심리학의 이해 시간에 발표 자료 기반으로 컴공과에 맞추어 발표 하겠습니다. 못했지요. 약간 아쉽네요. 차후 HCI자료가 필요하신분이 있거나, 이런 분야도 있구나 란걸 알고 싶으면 세미나 해드립니다. --상민
- 정모/2003.8.26 . . . . 2 matches
* [HardcoreCppStudy] => 마지막 수업이 남았고, 원래는 OOP를 중심으로 실습하려했으나 여러 사정으로 마지막 시간을 OOP로 하고 끝낼 예정
- 정모/2004.2.3 . . . . 2 matches
* 소풍을 여행으로 바꾸려고 합니다. 동문서버 제로페이지 게시판에도 있고 [2004겨울여행] 에도 관련 내용이 있으니 참석할 수 있는지 없는지 적어주세요. 다른 장소를 추천하셔도 좋습니다. -[Leonardong]
- 정모/2004.7.26 . . . . 2 matches
* [걸스패닉] - 팀 이름을 짓고 참가신청을 해서 시작이란 각오를 다짐
* [TAOCP] - 책 사고 스터디 시작
- 정모/2004.9.14 . . . . 2 matches
* 회의 뭐 했습니까... 듣기로는 짜장면 먹었다던데... 아 글구 스터디는 어떻게 됐습니까? 저는 홈페이지 만드는 그런 스터디 하고 싶습니다~ -성만(??)
* 공연준비 아주 잘 되고 있다. - 커스
- 정모/2006.1.12 . . . . 2 matches
참고 : [겨울방학프로젝트/2005]
그리고 그 외 보여주실 수 있는 스터디 팀은 준비해 주셔도 됩니다.
- 정모/2006.6.29 . . . . 2 matches
* 정회원 안되신 분은 프로젝트 및 스터디 참여 그리고 회의를 잘 참여 하시면 정회원으로 추후 결정 하기로 했습니다^^
* 프로젝트 & 스터디 : 다이렉트2D,AJAX,알고리즘(간단한),MFC,토익영단어 [2006년활동지도]
- 정모/2007.1.12 . . . . 2 matches
=> 잡담 : 경청&요약 -> 다른사람들의 이야기를 경청(혼자 놀면 안됨), 끝나고 아무나 지목해서 요약
4. 세미나 품질 강화 -> 세미나 날짜가 나오면 세미나 일까지 기본적인 스터디를 하고 참여
- 정모/2007.1.19 . . . . 2 matches
MT를 가지말고 ZP의 밤 같은 행사를 하자.
* MT날짜는? -> 좀더 생각해보고 사람많이 참여한날 확 정해버리자.
- 정모/2007.1.6 . . . . 2 matches
Q.신입생에게 '학회/제로페이지'라는 익숙하지 않은 개념을 어떻게 전달 하고 진입장벽을 어떻게 깨줄 것인가?
Q.후배에게 말을 했을때 '선배라고 저에게 그렇게 말을 하실건 없잖아요.'
- 정모/2013.1.22 . . . . 2 matches
* 참여자 : [권순의], [안혁준], [송정규], [강성현], [김태진], [서민관], [김민재], [조광희], [고한종], [윤종하], [이진규], [권영기], [김윤환], [정의정], [임상현]
* ACM : DP의 Subset 문제,그래프문제 풀고 토론
- 정모/안건 . . . . 2 matches
[정모]에서 진행해보고 싶으신 안건을 추가해 주세요.
C세미나는 신입회원중 1학년 전체를 대상으로 하고, 나머지 세미나는 신입회원중 희망하는 사람들 그룹별로 나누는게 어떨까요?
- 정서 . . . . 2 matches
전 서라고해요 ㅋ
== 나에게 하고싶은 말 ==
- 조영준/다대다채팅 . . . . 2 matches
* 새싹교실에서 소켓에 대해 배우고 쓰레드에 대해 배운 다음에 삘받아서 슉슉 만든 프로그램.
* 사실 구조까지 혼자 해 보려다가 멘붕하고 인터넷에서 구조는 찾아봄...
- 주승범 . . . . 2 matches
== 하고싶은 것 ==
== 하고싶은 말 ==
- 지금그때2003/계획 . . . . 2 matches
지연시간이 없도록 하려면 어떻게 해야할지 연구해 봐라. 예를 들면 참석자들에게 6시50분까지 착석이 되어야 한다고 선전을 할 수 있겠다. 그리고 패널(2,3,4,졸,외부인사) 소개 시간이 필요하다. --JuNe
- 지금그때2003/규칙 . . . . 2 matches
* 게임규칙을 적은 종이를 항상 왼손에 들고 이야기 한다.
* Test 중 2번의 룰을 좀더 완화 하였다. 경험을 붙이니 말에 너무 많은 제약사항이 붙었다. 그래서 우리는 한가지 제약사항을 없애고, '''제가, 저는, 저도'''로 룰을 바꾸어 해보았는데, 자신을 낮추는 것만으로 원만한 대화의 장이 될수 있었다.
- 지금그때2004/토론20040324 . . . . 2 matches
* 목요일 1학년 '경제와 사회' 수업이 끝나고 홍보
* 강의실 선전이 끝나고 써 붙이기
- 지금그때2004/홍보 . . . . 2 matches
DeleteMe) 해당 날짜에 홍보를 하고 난 뒤, 등록한 사람 수를 체크합니다.
이번 [지금그때2004]에서는 적정인원 15~20명을 맞추려고 하는중.
- 진법바꾸기/김영록 . . . . 2 matches
매우 오래걸린것 같고 다분히 놀러갔다와서 ㅡ,.ㅡ 머리가 돌인된것 같기도
정렬이 안되네 ㅋ;; 지적고마우이 - [김영록]
- 창섭/삽질 . . . . 2 matches
* 같은 실수를 두번하지 않도록. 페이지를 만들어 가끔 둘러보다보면 무의식중에 실수를 방지할 수 있을 거란 생각에 만듦. 사람은 한 번 본것은 무의식에 저장을 하고 자신도 모르게 무의식이 의식으로 나온다 하지 않던가...
* 특히 멀쩡하던거 고칠 때 확인 잘하자.
- 최소정수의합/이규완 . . . . 2 matches
기본형식입니다.^^ 소스를 만들어서 코드에 넣어주시고, 소감을 작성해 주시면 끝입니다.^^ -[조현태]
이 알고리즘대로 수행하면 계산 결과에 1이 더해서 나옵니다.^^ 덧셈후 n에 1을 증가시키기 때문입니다.^^
- 최소정수의합/이도현 . . . . 2 matches
첫 번째는 수1에서 배웠던 자연수 합 공식이고 두 번째는 무식한 for 돌리기 입니다 ㅋㅋ
나중에 복잡한 알고리즘을 풀 때 아주 다른 결과를 나타내는 것 중 하나가 loop문에서 실수 입니다.
- 타도코코아CppStudy/0728 . . . . 2 matches
* 해오면 첨삭해 줍니다. 자유...라고 하면 아무도 안해올걸 알지만서도... 왠만하면 해보세요. 많은 도움이 될겁니다.
* 인수형~~~~~ 파일 입출력 Random Walk2 올렸씁니다.. 지금 시간 8시..1시간정도 걸렸네요..-_-; 파일 입출력 고생하다..!! - [CherryBoy]
- 파스칼삼각형/김영록 . . . . 2 matches
LITTEL AOI 거꾸로 풀어갈려고 하는데
첨에 풀려고하니까 막막한데 ; 수능수학 처럼생각했더니 ;;
- 페이지지우기 . . . . 2 matches
삭제하고 싶은 페이지의 내용을 지우거나, 해당 페이지 아무곳에서나 '''DeleteThisPage''' 를 남긴다. 그러면 ZeroWiki 관리자가 해당 문자열 검색을 통해 페이지를 지우게 된다.
'''If you want to delete this page, YouNeedToLogin.''' 현재 ZeroWiki 에서 Delete''''''Page 권한은 계정 관리자가 갖고 있습니다. 로그인한 사용자도 그 권한을 사용할 수 있도록 한 단계 더 공개하는건 어떨까요? security.py 에서 {{{~cpp self.delete = self.delete and user.valid}}} 이 한 라인을 추가하면 됩니다. --["데기"]
- 피보나치/김영록 . . . . 2 matches
변수 a,b,c를 이용해서 a,b가 주 숫자고 c는 임시 변수 입니다
printf("이보삼 알고싶은번째 피보나치수좀 알아보셈 : ");
- 피보나치/허아영 . . . . 2 matches
사실 알고리즘 이런건 잘 모르고..
- 학회간교류/08 . . . . 2 matches
* 자람에 연락은 제가 하고 TGWing에는 승한형이 하기로. 일단 연락에 대한 회답이 오길 기다림 2008.11.30 - [김홍기]
* 학생이다. 시험기간에는 시험에 집중하자. 그렇다고 논의를 중단할 수는 없다. 온라인에서 토론을 진행하자.
- 행사 . . . . 2 matches
중앙대학교 컴퓨터 공학부 내 학회 ZeroPage의 행사를 정의하고 설명하는 페이지.
* "지금 알고 있는 것을 그때도 알았더라면"
- 허아영 . . . . 2 matches
>> [Basic알고리즘]
* 근데 Haskell 가지고 몰 어쩌자는건지..=_=;; - 임인택
- 홈페이지Template . . . . 2 matches
처음 개인페이지의 추천 양식입니다. 적당히 고쳐서 쓰세요.
== 하고싶은 것 ==
- 홈페이지분류 . . . . 2 matches
["홈페이지분류"]로 분류되는 페이지들은 개인 페이지이므로 자유롭게 사용하되 제로페이지에서 자신이 참여하고 있는 스터디, 혹은 개인적으로 하고 있는 공부들, 전시회 준비 상황과 같은 내용들이 포함되면 더욱 좋을 것 같다. -- ["데기"]
- 05학번만의C++Study/숙제제출1/정진수 . . . . 1 match
cout << "섭씨 온도를 입력하고 Enter 키를 누르십시오 : ";
- 2010php/방명록만들기 . . . . 1 match
== 입력을 받고, 출력(페이지 추가) ( print.php ) ==
- 2ndPCinCAUCSE/ProblemA . . . . 1 match
같은 길이의 성냥개비가 여러 개 주어져 있다. 이것들을 평면에 늘어놓아서 삼각형을 만들려고 한다. 삼각형의 한 변은 여러 개의 성냥개비를 직선으로 이어서 만들 수 있지만, 성냥개비를 꺾거나 잘라서 변의 한 부분을 만들 수는 없다. 성냥개비의 개수가 주어졌을 때, 이들 성냥개비를 사용하여 만들 수 있는 서로 다른 삼각형의 개수를 구하는 프로그램을 작성하시오. 예를 들어서 9개의 성냥개비로 만들 수 있는 서로 다른 삼각형은 3가지이다.
- 2학기파이선스터디/모듈 . . . . 1 match
어떠한 속성을 정의하고 있는가...
- 3N+1Problem/문보창 . . . . 1 match
문제에 나와 있는 단순한 알고리즘을 제대로 구현만 해도 성공하는 쉬운 문제.
- 3N+1Problem/황재선 . . . . 1 match
http://bioinfo.sarang.net/wiki/AlgorithmQuiz_2f3Plus1 에서 yong27님의 소스코드를 보았다. 소스가 정말 깔끔했다. 실행속도가 빨라서 그 원인을 분석해가며 지난번 작성했던 코드를 수정했다. 나의 목적은 0.001초라도 빠르게 결과를 출력하는 것이었다. 실행시간을 최소화하기위해 클래스마저 없앴다. 특히 두 부분을 수정하니 실행시간이 현저히 줄었다. 하나는 클래스 멤버변수를 제거하고 지역변수화한 경우인데 왜 그런지 모르겠다. 둘째는 사전형 타입인 cycleDic 에서 key를 문자열에서 숫자로 바꾼 부분이었다. 지난번 구현시 무엇때문에 수치형을 문자열로 변환하여 key로 만들었는지 모르겠다. -- 재선
- 5인용C++스터디/메뉴와단축키 . . . . 1 match
실행창의 주메뉴 핸들을 구하여 *cmenu에 대입하고 주메뉴의 첫번째 부메뉴판의 핸들을 구한다.
- 5인용C++스터디/스택 . . . . 1 match
|| 황재선 || Upload:Stack_JS.cpp|| 잘 했음.. exit로 끝내는것 빼고.. ||
- 5인용C++스터디/작은그림판 . . . . 1 match
선, 사각형, 원을 그릴 수 있고 색칠을 할 수 있는 간단한 그림판 만들기.
- 8queen/문원명 . . . . 1 match
미완성입니다..중괄호 관리도 안된것 같고, 각 변수의 값 조정 변화에 오류가 있는 것 같다.
- 8queen/민강근 . . . . 1 match
복잡할거라고 생각한건가? 하지만 1년뒤에 다시 이 코드를 봐바. 한눈에 이해가 될테니^^; -[상욱]
- AKnight'sJourney . . . . 1 match
기사는 또 다시 같은 검은색과 흰색 사각형을 보는 것이 지루해 '''전 세계'''를 여행하기로 결심했다. 기사의 세계는 8*8 보다 각은 면적을 가진 체스판이다. 기사는 이동할 때 두 칸 이동하고 직각으로 한 칸 이동한다.
- AcceleratedC++/Chapter1 . . . . 1 match
interface : 객체의 타입으로 묵시적으로 내포 되어 있는 것은 인터페이스로서, 해당 타입의 객체에 사용 가능한 연산(operation)들의 집합을 말합니다. name을 string 타입의 변수(이름 있는 객체)로 정의 하게 되며, 우리는 string으로 할 수 있는 모든 일들을 name으로 하고 싶다는 뜻을 묵시적으로 내포하게 됩니다.
- AirSpeedTemplateLibrary . . . . 1 match
소스는 subversion 을 이용해서 다운받으면 됨. (해당 위키 페이지 참조. [Trac] 으로 관리되고 있음)
- Ajax2006Summer/프로그램설치 . . . . 1 match
10. 다운로드가 끝나면 중간에 설치할 것이냐고 물어보는데 '''Install All'''을 선택해 줍시다.
- Algorithm/DynamicProgramming . . . . 1 match
== [금고] ==
- AnEasyProblem/강성현 . . . . 1 match
* 처음엔 배열로 하려고 했다가 복잡한거같아서 걍 포기. 그냥 편하게 한것 같네요. 바로 accept 돼서 좀 놀람
- AndOnAChessBoard/허준수 . . . . 1 match
간단하게 돌아가게 해보려고 했다. 레베루가 1인 만큼 그다지 어렵지는 않은 듯.
- Ant/BuildTemplateExample . . . . 1 match
Ant Build 를 위한 기본 Template 예제. 적당히 해당 부분을 고쳐쓰면 된다.
- AstroAngel . . . . 1 match
* 명덕초('91) → 문백초('94) → 문일중('96) → 문일고('99) → 중앙대('02) with KJSE('02)
- AutomatedJudgeScript/문보창 . . . . 1 match
단순한 문자열 비교문제라는 생각이 들었다. Presentation Error와 Accepted 를 어떻게 하면 쉽게 구별할 수 있을지를 고민하다 입력받을때부터 숫자를 따로 입력받는 배열을 만들어 주는 방법을 이용하였다.
- BasicJAVA2005/실습1 . . . . 1 match
- 3개의 숫자를 입력받아 자리와 숫자가 맞으면 스트라이크, 자리는 틀리지만 숫자가 맞으면 볼을 출력하고 3개의 숫자가 맞으면(3스트라이크) 종료하는 프로그램
- BasicJAVA2005/실습2/허아영 . . . . 1 match
//컨텐트 패인을 얻고 레이아웃을 설정한다.
- BeeMaja/하기웅 . . . . 1 match
30분 만에 푼만큼 소스도 알고리즘도 원시적이다^^
- BlackBoxTesting . . . . 1 match
말 그대로 모듈을 Black Box 처런 내부를 생각하지 않고, 모듈에 대한 입력 대비 결과를 테스팅하는 방법.
- BookShelf/Past . . . . 1 match
1. [고수를찾아서] - 20060426
- C++0x . . . . 1 match
= 참고 사이트 =
- CPPStudy_2005_1/STL성적처리_2 . . . . 1 match
짜고서 느낀건;;
- CarmichaelNumbers/문보창 . . . . 1 match
중간에 발생하는 버그를 잡는데 대부분의 시간을 허비했다. 65000 이란 수는 작지만 65000의 제곱은 int형의 범위를 벗어난다. ㅡㅡ; 오버플로우를 교모히 이용한 함정에 고생했다.
- ChangeYourCss . . . . 1 match
|| 누르스름한 바탕. 디폴트에서 배경색만 바꾼 색. 링크색과 비슷한 갈색계열이라 왠지 모르게 편안하고 아늑한..^^; || /~wizardhacker/cgi-bin/MoinMoin/wiki-moinmoin/wizneo.css ||
- Class . . . . 1 match
해수의 염도가 더 진해진다고해도 빗물이나 민물, 지하수에는 아무런 영향도 끼치지 않는다. ->객체의 성질.
- ClassifyByAnagram/1002 . . . . 1 match
나중에 Psyco bind 하고 나서는 4.4 초.
- ClassifyByAnagram/재동 . . . . 1 match
* 우선은 빠르게 하는 거 생각하지 않고 그냥 생각나는 대로 짰습니다. 이제 이걸 토대로 '빠르게'를 생각해 보아야겠지요 --재동
- Cocos2d . . . . 1 match
* Cocos2d를 다루면서 배우는 코드를 이 곳에 작성하여 공유하고자 함.
- CompilerTheory/ManBoyTest . . . . 1 match
Donald Knuth 가 Algol 60의 구현 정도를 판변하기위해서 만든 프로그램. 테스트의 목적은 올바르게 구현된 scoping rule, call-by-name의 구현 정도를 판별해서 boys(algol 60 구현물)들중에서 men (쓸만한 놈)을 가려내는 용도로 고안되었습니다.
- CppStudy_2002_1/과제1 . . . . 1 match
* 문제2번 : 여기서도 전역변수를 피하기를..그리고 주석도 영어로 다는 연습을 하는것도 괜찮을듯 싶다.
- Data전송 . . . . 1 match
2. post : 주소에 넣지 않고 보내는 방식
- DebuggingSeminar_2005/UndName . . . . 1 match
DLL 파일에 의해서 분석된 내용을 보면 DLL 에 함수의 이름이 이상하게(?) 변형되어 있는것을 확인하실 수 있는데(DUMPBIN.EXE 를 통해서 가능합니다.) 이 이름의 원형을 알고 싶을때가 있습니다. 그럴때 undname.exe 라는 파일을 사용하시면 아주 쉽게 확인해 보실 수 있습니다.
- DecomposingMessage . . . . 1 match
메세지를 다루는 또 다른 방법은 여러 개의 조각으로 나누는 것이다. 리팩토링의 ExtractMethod이다. 스몰토크는 잘게 쪼개는 것을 좀 더 공격적으로 한다. 그래서 한 메소드의 길이가 3-4줄정도밖에 안된다고 한다. 이것이 가능한 이유는 스몰토크는 다른 언어에 비해 높은 수준의 추상화를 제공해주기 때문이다. self 에게로 메세지를 보내자.
- Eclipse/PluginUrls . . . . 1 match
* Memory 사용정보를 보여주고 ["GarbageCollection"]을 사용가능하게 해 주는 Plugin, 시간을 설정해두면 주기적으로 알아서 GC를 해줌.
- EightQueenProblem/lasy0901 . . . . 1 match
두번째 프로그램은 ... 이상하게 컴파일이 안되더군요.. 알고보니 #include <stdafx.h> 을 안 넣어서 (VC6.0) 낭패-_-a
- EightQueenProblem/서상현 . . . . 1 match
모든 해를 출력하려면 recur 함수를 이렇게 고친다.
- EightQueenProblem/이덕준소스 . . . . 1 match
주석처리된 부분은 도전한 이후에 다시 코드를 보았을때 불필요하다고 생각되는 부분을 지운 것입니다. --이덕준
- EightQueenProblem/조현태2 . . . . 1 match
//출력하고 종료한다.
- EmbedAudioFilesForFireFox . . . . 1 match
웹 페이지에 Embed된 오디오 파일을 FireFox에서 수월하게 재생시키기 위해서는 아래와 같이 type 속성을 주고 플레이어의 크기를 명시적으로 적어줘야 한다.
- EmbeddedGogo . . . . 1 match
부트로더 공부할려면 어셈블리하고 인텔 CPU에 대해 우선 공부해야 될텐데 ---[fnwinter]
- English Speaking/The Simpsons/S01E04 . . . . 1 match
* 내용 : 다른 가족들을 보고 상심한 호머가 모의 술집에서 술을 마시는데 다른 집을 배회하던 무리들을 찾는 경찰들이 들어온다. 다행히 호머는 그게 심슨 가족들이었단 것을 들키지 않지만 자신의 자녀들에 대해 나쁜 말을 하는 바니와 싸움이 붙는다.
- EnglishWritingClass/Exam2006_1 . . . . 1 match
글만 쓰라고 할 줄 알았던 것과는 달리...
- Euclid'sGame/강소현 . . . . 1 match
* 왜 중간단계로 [11 7]이 나오는 지 이해가 안 갔었다. 베스킨라빈스31 게임처럼 숫자를 자유롭게 부르되 이기려면 절대적으로 불러야하는 숫자가 있는 것처럼, 이 것도 처음 시작하는 사람이 이기려고 일부러 덜 뺀 거였다 ㄷㄷ
- EuclidProblem/조현태 . . . . 1 match
고등학교.. 아니 중학교때 부터 느꼈지만.. 유클리드 아저씨..정말 밉다..ㅠ.ㅜ
- EuclidProblem/차영권 . . . . 1 match
유클리드 호제법과 디오판토스 방정식에 대해 공부해 볼 수 있는 좋은 기회였다고 생각한다.
- Expat . . . . 1 match
파이선의 기본 XML 파서로 채택되어 이용되고 있다. 정직 형님의 강력 추천에도 불구 MS 계열의 개발자는 좀 꺼리는 듯 하다. ㅡ.ㅡ;; (사람은 익숙해지면 못버린다. ㅋㅋ)
- Fmt/문보창 . . . . 1 match
뭐가 잘못됐는지 모르겠다.!!!!!!!!!!!! 문제도 애매하고, 원 ㅡㅡ;
- FromDuskTillDawn/조현태 . . . . 1 match
참고 : 나름대로 약간의 최적화가 되어있다. 그러나~ vector가 아닌 list를 사용한다면 좀더 효과적일듯하다.ㅎ 이런 귀차니즘~
- GDBUsage . . . . 1 match
gdb 를 이용하기 위해서는 gcc 옵션에 '''-g'''를 주고 컴파일 해야함.
- GuiTesting . . . . 1 match
GuiTesting 을 하는 이유는 여러가지가 있을 수 있다. GUI Programming 에 대한 TestFirstProgramming 에 대한 시도를 할 수 있기 때문이다. 해당 UI Control을 하나하나 만드는 일부터 시작할 수 있다. 하지만, 보통의 경우 UI Control을 만드는 일들은 IDE 툴들에서 하는 것이 더 편하다. GuiTesting 은 해당 이벤트 발생시에 따른 처리과정에 대한 TestFirstProgramming 을 시도하려고 할 때 도움을 줄 것이다.
- Hacking . . . . 1 match
== 참고자료 ==
- Hacking/20040930첫번째모임 . . . . 1 match
* VMware와 리눅스 설치하고 기본명령어 공부하기
- HelpOnInstallation/MultipleUser . . . . 1 match
이렇게 하면 [모니위키] 설치에 필요한 파일이 public_html 하위에 일부는 복사되고 일부는 설치 디렉토리에 남게됩니다.
- HowBigIsIt? . . . . 1 match
이안이 캘리포니아로 이사를 가기 위해 짐을 싸고 있는데, 지금까지 모은 원도 포장해야 한다. 일련의 원이 주어졌을 때 그 원들을 모두 집어넣을 수 있는 가장 작은 직사각형 상자의 크기를 구하는 프로그램을 만들어야 한다.
- IDE/VisualStudio . . . . 1 match
Ctrl + Shift + C : 탐색트리로 캐럿 이동. (<- 개인적으로 가장 중요한 단축키라고 생각함. ;;)
- IdeaPool . . . . 1 match
* 우리는 아이디어를 갖고 있어도 어떠한 사정에 의해 실현(혹은 개발)까지 이르지 못하기도 한다. 따라서 모두의 아이디어를 공유한다면 프로젝트를 비롯한 각종 활동 사항에 촉진제가 될 것이다.
- ImmediateDecodability/문보창 . . . . 1 match
단순히 조건에 나와있는데로 Decodablility를 파악해 주면 되는 문제다. 코드를 계속 압축해 나가다 보니 수행시간이 갈수록 빨라졌고, 상위에 랭크될 수 있었다.
- IntroductionToAlgorithms . . . . 1 match
CLR 책이라고도 불린다.
- JSP . . . . 1 match
3. htp://localhost:7070 (host 를 7070 으로 설정) 에서 제대로 고양이가 나오면 OK
- JTDStudy/첫번째과제/영준 . . . . 1 match
* 짜긴 짯는데, 하고 보니 어째 쫌 조잡하네요 ;; [영준]
- JTDStudy/첫번째과제/정현 . . . . 1 match
if문과 이중for 루프를 돌지 않으려고 발버둥쳤다;
- Java/ReflectionForInnerClass . . . . 1 match
innerclass 에서는 기본적으로 Inner Class 를 포함하고 있는 상위클래스의 레퍼런스가 생성자로 들어간다. 마치 C++ 에서 메소드들에 대해 this 가 기본 파라메터로 넘어가는 것과 같은 이치랄까.
- JavaStudy2004/스택 . . . . 1 match
* 스택에 Push하고 Pop 하는 것을 GUI로 볼수 있게 구현
- JollyJumpers/1002 . . . . 1 match
고민하던중,. 다른 사람들의 코드를 보니 시간이 오래걸린 부분이 입력값 parsing 부분이였나 보다 생각이 듬.;
- JollyJumpers/iruril . . . . 1 match
* [MineSweeper/황재선] 코드를 참고한 다음 코딩했습니다
- KentBeck . . . . 1 match
ExtremeProgramming의 세 명의 익스트리모 중 하나. CrcCard 창안. 알렉산더의 패턴 개념(see also DesignPatterns)을 컴퓨터 프로그램에 최초 적용한 사람 중 하나로 평가받고 있다.
- LUA_4 . . . . 1 match
변수 범위는 이 밖에도 다양한 이슈를 만들 수 있습니다. 예를 들면 do ~ end 문에서도 local 로 범위를 한정할 수 있고 function 자체도 변수와 같이 범위(scope)를 한정하여 사용할 수 있습니다. 또한 local을 사용하지 않으면 전역 범위 내에서 변수나 함수 자체를 접근/변경할 수 있습니다.
- LinkedList/세연 . . . . 1 match
DeleteMe ) 내용은 LinkedList 가 아니라 Stack의 구현 사항인데, 문제 사항에는 LinkedList라고 해놨네요.
- LinkedList/숙제 . . . . 1 match
pList=(List *)malloc(sizeof(List)); // malloc은 (List *)가 단위인 크기가 List인 메모리 공간을 생성하고 그 메모리 공간 첫 주소를 반환한다. 그 주소가 pList에 대입(정의)된다.
- Linux/ElectricFence . . . . 1 match
= 참고 =
- MFC/CObject . . . . 1 match
|| DECLARE_SERIAL() || 런타임 클래스 정보와 동적인 객체 생성, 그리고 객체들의 시리얼화를 지원한다. ||
- MFC/Control . . . . 1 match
|| 편집 컨트롤 || 텍스트라인을 입력하고 편집가능하다. 여러줄의 텍스트를 편집하도록 확장 가능. ||
- Marbles/신재동 . . . . 1 match
문제를 푸는 속도에 초점을 두어서 지저분하고 냄새 많이 남. --재동
- MineSweeper . . . . 1 match
각 지뢰밭에 대해 Field #x:라고 적혀있는 메시지를 출력한다. 이때 x는 필드 번호를 나타내며 1에서 시작한다. 그 다음 줄부터는 n개의 줄에 걸쳐서 '.'문자 대신 그 칸에 인접한 칸에 들어있는 지뢰의 개수를 출력한다. 각 지뢰밭에 대한 출력 사이에는 반드시 빈 줄이 하나씩 있어야 한다.
- MobileJavaStudy . . . . 1 match
* 창섭이는 어떻하고? --; --인수
- MoinMoin . . . . 1 match
* 모니위키로 개인위키를 운영하고 있었는데 기능에 한계가 있어 모인모인으로 이사하는 중 입니다. - 이승한
- MoniWiki/HotKeys . . . . 1 match
|| '''핫키''' || '''액션''' || '''비고''' ||
- MoniWikiTheme . . . . 1 match
MoniWiki는 기본적으로 header.php와 footer.php를 고쳐서 다양한 모습으로 자신의 개인위키를
- One/주승범 . . . . 1 match
{{|1,2,3만 뜨고 나머지는 error |}}
- OperatingSystem . . . . 1 match
일종의, [[SeparationOfConcerns]]라고 볼 수 있다. 사용자는 OperatingSystem (조금 더 엄밀히 이야기하자면, [[Kernel]]) 이 어떻게 memory 와 I/O를 관리하는지에 대해서 신경쓸 필요가 없다. (프로그래머라면 이야기가 조금 다를 수도 있겠지만 :) )
- OperatingSystemClass/Exam2002_2 . . . . 1 match
2002년 1학기 기말고사.
- OurMajorLangIsCAndCPlusPlus/XML/조현태 . . . . 1 match
* C...C++이랑 많이 다르구나~ @.@ const, bool형이 없고 형체크가 정확하지 않아서 조마조마 했다는..ㅎㅎ
- OurMajorLangIsCAndCPlusPlus/print/하기웅 . . . . 1 match
puts를 통해 글을 찍는 방법을 배웠고 fputs, putchar, _fcvt등에 대해서 알게 되었다. 코드가 지져분하게 만들어졌지만 앞의 내용과
- OurMajorLangIsCAndCPlusPlus/stdio.h . . . . 1 match
|| FILE * freopen(const char *, const char *, FILE *) || 세번째 인자의 스트림을 닫고 그 포인터를 첫번째 인자의 파일으로 대체한다. ||
- OurMajorLangIsCAndCPlusPlus/stdlib.h . . . . 1 match
|| ldiv_t ldiv(long int numer, long int denom); || div()와 동일하고 변수 타입만 long int ||
- PlatformSDK . . . . 1 match
[http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm 다운로드 페이지] : 최신 버전은 VC6 와 호환되지 않는 다고함.
- PolynomialCoefficients . . . . 1 match
문제의 다항식 읽는데 불편하시면 번거로우시더라도 원문을 참조해 주세요. 아니면 원문을 보시고 푸는 습관을... -- [문보창]
- PragmaticVersionControlWithCVS/HowTo . . . . 1 match
이 경우 체크인처럼 여러번 그리고 자주하는 일에 적용되는 규칙은 간단해햐한다.
- ProjectAR/Temp . . . . 1 match
4. 직업을 바꾸더라고 스킬은 일정 확률로 남을 수 있다.(ㅡㅡ!!)
- ProjectPrometheus/AcceptanceTest . . . . 1 match
* 테스트들을 testserver.py 에 등록하지 않고 해당 디렉토리내의 모든 테스트들을 찾아서 실행하게끔.
- ProjectPrometheus/Iteration5 . . . . 1 match
|||||| User Story : Login 후에 Search을 하고 책을 보면 추천 책이 나온다. ||
- ProjectSemiPhotoshop/계획서 . . . . 1 match
* 10/31 pm5:00~pm10:00 현민과 경태, 현민 집에서 알카로이드의 기본을 열심히 배우고 익힘
- ProjectVirush . . . . 1 match
외계인이 지구에 있는 생명체에게 바이러스를 보낸다. 강력한 바이러스로 지구 생명체를 몰살하려고 플레이어는 바이러스를 통제하는 과학자가 된다. 외계 본부에서 받은 지령을 성공적으로 수행하면 보상이 뒤따르지만, 그러기 위해서는 만만치 않은 다른 바이러스들을 따돌릴 전략을 세워야 한다.
- Python/DataBase . . . . 1 match
== 참고 ==
- PythonIDE . . . . 1 match
* PyScripter : 개중 가장 좋은 기능과 공개라는 장점을 가진 IDE. 가히 최고라 불릴만하다. 하지만 wxPython 과의 상성이 좋지 않아 wxPython 유저에게는 그림의 떡. 완벽한 디버깅 모드를 제공한다.
- RandomWalk/성재 . . . . 1 match
코딩 줄수 줄이는게 최고가 아니란거 알았습니다..
- RandomWalk/신진영 . . . . 1 match
이쁘게 구현하려고 노력했습니다....;; -ㅅ-a
- RandomWalk/은지 . . . . 1 match
고쳐야지..
- RandomWalk/재니 . . . . 1 match
= 만들고나서.. =
- RandomWalk/종찬 . . . . 1 match
int y_move = rand()%3; // 이부분을 루프안에 안 넣어서 고생..
- RandomWalk2/영동 . . . . 1 match
//x, y 총좌표수를 입력받고 배열생성, 초기화===
- RandomWalk2/질문 . . . . 1 match
(1) 음식을 먹고 일시적으로 슈퍼바퀴가 된 정상바퀴가 5턴이 지나기 전에 다시 음식을 먹으면 어떻게 되나요? 예를 들어 슈퍼바퀴가 된 지 2턴만에 다시 음식을 먹었다면 그 뒤로 8턴동안 슈퍼바퀴인지, 아니면 다시 이때부터 세서 5턴간 슈퍼바퀴인가요?
- Redmoon . . . . 1 match
먼가..해볼려고..함...
- Reverse Engineering처음화면 . . . . 1 match
5. Pack되어있는 프로그램 분석. Pack 프로그램 제작. 알고리즘 제작.
- Ruby/2011년스터디/서지혜 . . . . 1 match
* 해당 브라우저에게 종료 메세지 보냄 (혹은 경고창을 띄움)
- RummikubProject . . . . 1 match
|| 배열 확인 알고리즘 || (V) ||
- SRPG제작 . . . . 1 match
2. 전투부분과 시나리오 부분의 구현이 필요하고
- STL/map . . . . 1 match
* dictionary 구조를 구현하였다. DataStructure 에서는 symbol table 이라고 말한다.
- SWEBOK . . . . 1 match
[http://object.cau.ac.kr/selab/lecture/undergrad/20021/참고자료/SWEBOKv095.pdf SWEBOK] - Software Engineering Body of Knowledge
- ScaleFreeNetwork/OpenSource . . . . 1 match
= 참고 문헌 =
- Server&Client/영동 . . . . 1 match
* 아직 문자열 전송은 못 했고 연결만 했습니다.
- ServiceOrientedProgramming . . . . 1 match
=== 참고자료 ===
- SimpleTextIndexerUsingSQLite . . . . 1 match
* 아래 소스 참고 : D:\test 폴더가 없으면 뻑남. setting.ini 에서 폴더를 변경 하던지 만들던지
- Slurpys/문보창 . . . . 1 match
힘들게 버그를 잡고 통과. 재귀함수 사용시 여러가지 통로(?)를 잘 관리해 줘야한다.
- SoftwareEngineeringClass/Exam2006_2 . . . . 1 match
4. 심사를 하고 받은 후의 Software Engineer 로써 앞으로 조직의 비전을 위한 자신의 각오, 결단을 기술하시오.
- SolidStateDisk . . . . 1 match
백업 메카니즘으로서 배터리나 일반적인 자기디스크를 내장하곤 한다. SDD 는 일반적인 HDD I/O interface 로 연결된다. 이로 인해서 얻을 수 있는 잇점은 적은시간에 빈번한 I/O 작업이 일어날 경우에, seek time 이나 rotational latency 가 없는 메모리로서, 자기디스크에 비해 월등한 성능을 나타낼 수 있다. 그에 덧붙여 구동부가 없는 구조로서 좀더 내구성이 뛰어나다고도 할 수 있겠다. 단점은, 특성상 대용량화가 어려우며 커다란 데이터의 요구량이 커질때. 즉 access time 보다 transfer time 이 더 요구될때 효율성이 안좋다.
- StackAndQueue/손동일 . . . . 1 match
DeleteMe - [StackAndQueue/손동일] 로 [페이지이름고치기] 했습니다 - [임인택]
- StephaneDucasse . . . . 1 match
최근 Stephane 은 Squeak 에 대한 책을 쓰고 있다. http://scgwiki.iam.unibe.ch:8080/StephaneDucasseWiki 에서 읽을 수 있다. Turtle Graphics 를 이용한 튜토리얼을 제공하는데 정말 재미있다! Smalltalk 를 입문하려는 사람에게 추천.!
- SubVersionPractice . . . . 1 match
저장소에 있는 프로젝트를 사용자의 컴퓨터로 가져오는 명령이다. 사용자는 체크아웃한 프로젝트를 가지고 작업한다.
- SystemPages . . . . 1 match
* OrphanedPages - 역링크가 걸려있지 않은 고아 페이지들.
- TCP/IP 네트워크 관리 . . . . 1 match
책을 끝까지 다 읽어보자..^^; 그리고 TCP/IP에 대해서 알게 되었으면 좋겠다.
- TheWarOfGenesis2R/ToDo . . . . 1 match
* 현재 맵의 편집이 숫자로만 가능. 그림을 보면서 편집할 수 있도록 고칠 예정.
- ThreeFs . . . . 1 match
''나는 오늘 친구들과 어떤 어떤 술을 어떤 어떤 순서로 마셨고 나중에 오바이트 했다. 우선은 기분 째지게 좋았다. 이런 조합의 술이 사람을 기분 좋게 한다는 점과, 얼마 안가 폐인으로 만들어 준다는 점을 배웠다.''
- WikiGardeningKit . . . . 1 match
http://no-smok.net/nsmk/WikiGardening 이걸 전부 할 수는 없고
- WikiSandPage . . . . 1 match
i. 맹고
- WinampPluginProgramming/DSP . . . . 1 match
// this_mod 는 일종의 this pointer 라고 생각해도 좋을듯 하다. 해당 모듈(위의 mod1~5) 의 포인터이다.
- XMLStudy_2002/Encoding . . . . 1 match
*유니코드에 대해서 자세히 알고 싶거나 참조해야 하는 경우 : [http://www.unicode.org/]
- ZPBoard/HTMLStudy . . . . 1 match
* 상규형~ 제목이랑 요구사항 똑같이 적어서 숙제 많은 줄 알고 겁 먹었자나요...ㅡ.ㅡ;;; - ["재니"]
- ZPHomePage/20041228 . . . . 1 match
* 캐릭터, 로고, 배너 제작 => 후에 뱃지 제작에도 이용
- ZeroPageServer/FixDate . . . . 1 match
그런데, rdate 가 이번 테스트 업그레이드 버전 부터 안되는 것이다. 새버전에서 servername 을 입력받을수 없다고 하는데, 왜그런지 모르겠다. 그래서 대안으로 이것을 사용한다.
- ZeroPageServer/set2001 . . . . 1 match
* 정확한 날짜나 기록이 없어서, 알고 있는 사실만을 기록합니다.
- ZeroPageServer/계정신청방법 . . . . 1 match
ZeroPagers 이고, 신입회원에 대한 정책은 [정모]에서 결정
- ZeroWikian . . . . 1 match
2013년 11월 ZeroWikian을 다시 정리합니다. 현재 wiki에 ZeroWikian조차 달리지 않은 페이지가 너무 많습니다. 그런 페이지들을 여기에 링크 달아주시고 해당 페이지에 ZeroWikian을 달아주세요.
- [Lovely]boy^_^/Diary/2-2-1 . . . . 1 match
* ["EffectiveSTL"] 6장 읽고 정리
- [Lovely]boy^_^/Diary/2-2-11 . . . . 1 match
* 공부도 안된다. 빨리 창3파2 깨고 공부해야겠다.
- [Lovely]boy^_^/ExtremeAlgorithmStudy/MathematicalFoundations . . . . 1 match
* 초반부는 뭐.. 별로 볼거 없다. 다 고등학교때나 자료구조 시간에 했던것들
- [Lovely]boy^_^/USACO/BrokenNecklace . . . . 1 match
* 테스트 케이스에 맞춰 프로그램 고쳐나가다 보니..;; 점점 더러워졌다는;;
- callusedHand/projects/fileManager . . . . 1 match
* 참고 소스: file-browser, mc
- fm_jsung . . . . 1 match
== 하고싶은 것 ==
- html5/web-workers . . . . 1 match
= 참고 =
- html5practice . . . . 1 match
* 각종 이미지 프로세싱 알고리즘 적용
- jinahut . . . . 1 match
왠지 내 이름으로 페이지를 만들고 거기에 뭘 쓴다는게,
- maya . . . . 1 match
현재 서버관리자를 맡고 있습니다.
- spaurh . . . . 1 match
== 하고싶은 것 ==
- tempOCU . . . . 1 match
페이지의 형식을 지켜주시고.
- whiteblue/MyTermProject . . . . 1 match
{ "고재선" ,20025301, 85, 90, 80 },
- whiteblue/MyTermProjectForClass . . . . 1 match
Data( "고재선" ,20025301, 85, 90, 80 ),
- wiz네처음화면 . . . . 1 match
* Collage Library: Book Number 0000507310 디자인 패턴, 0000494011 위대한 승리, 0000387354 설득의 심리학, 0000476065 유비처럼 경영하고 제갈량처럼 마케팅하라, 0000317364 로마인 이야기, 0000345061 커피 한잔에 담긴 성공신화...., 멘큐의 경제학..? 0000553812 사람을 움직여라 : MK택시 유봉식 회장의 성공철학!
- wlsdud1616 . . . . 1 match
== 하고싶은 것 ==
- ㄷㄷㄷ . . . . 1 match
오늘 원래 if else 문을 가르쳐 주려고 했거덩~
- 가루치 . . . . 1 match
== 하고싶은 것 ==
- 가위바위보 . . . . 1 match
입력으로 사용자의 가위, 바위, 보를 받고
- 검색에이전시_temp . . . . 1 match
== 참고 사이트 및 페이지 ==
- 고슴도치의 사진 마을 . . . . 1 match
|| [http://165.194.17.5/wiki/index.php?url=zeropage&no=3818&title=알고리즘&login=processing&id=celfin&redirect=yes algorithms] ||
- 고슴도치의 사진 마을처음화면 . . . . 1 match
|| [http://165.194.17.5/wiki/index.php?url=zeropage&no=3818&title=알고리즘&login=processing&id=celfin&redirect=yes algorithms] ||
- 고영준의Wiki처음화면 . . . . 1 match
+ 규율 : 훈련된 자세에 힘입어 어느 명령에 대하여 신속하고 자동적이며 도식적인 복종을 어느 일정한 다수의 인간에게서 발견할 수 있는 가망성을 뜻한다.
- 구구단/송지훈 . . . . 1 match
조건처럼 2단 3단 4단 5단 과 같이 출력하진 않았고
- 글로벌CEO . . . . 1 match
* 솔직히 들은지 몇주밖에 안되었지만 수업이 너무 좋은거 같아서 이렇게 글을 쓴다. 수요일 7,8,9 에 중앙문화예술관 10902에서 하니깐 청강 하실분은 해보시길.. 그냥 경영학 수업 듣는거 보다 이렇게 다국적 기업 CEO들의 경험과 노하우가 녹아 있는 수업을 듣는게 더 나은거 같다. 책에서는 배울수 없는 것들을 배우는 만큼 좋은 기회라고 생각한다. 지금까지 몇주동안 들은 수업 내용중에서도 상당히 귀중한 것들을 느꼈다.-[상협]
- 김도현 . . . . 1 match
저는 05학번 김도현이라고 해요~
- 김동준 . . . . 1 match
* 하라는 공부는 안하고 맨날 삽질중.
- 김민재 . . . . 1 match
* 뭔가 거창하지는 않지만 알찬 플젝 하나 해보고 싶다.
- 김범준 . . . . 1 match
duco ornamentum(라틴어로 계산기이지만 컴퓨터라고 하기로 함)
- 김상협 . . . . 1 match
== 하고싶은것 ==
- 김준호 . . . . 1 match
== 하고싶은말 ==
- 노상현 . . . . 1 match
=== 저에게 하고싶은말 한마디!! ===
- 답변 및 의견 2 . . . . 1 match
* 고것이 방법이 또 있는것 같던데.;; 담주 수요일에 이클립스로 하는거 해보장.ㅋㅋ - [송수생]
- 데블스캠프2005/FLASH키워드정리 . . . . 1 match
if, else, switch, goto 등의 문법들은 거의 비슷한 모습을 하고 있다.
- 데블스캠프2005/월요일/BlueDragon . . . . 1 match
print '차가 지나가고, 사람도 지나다닙니다.'
- 데블스캠프2006/월요일/연습문제/기타문제/주소영 . . . . 1 match
1부터 10까지 5제외하고 출력
- 데블스캠프2006/화요일/pointer/문제4/정승희 . . . . 1 match
b[length]='\0';//NULL문자는 문자 집어넣고 바로 다음에 넣는거다.
- 데블스캠프2009 . . . . 1 match
== 참고 링크 ==
- 데블스캠프2009/금요일/연습문제/ACM2453/송지원 . . . . 1 match
* 78, 83일땐 잘나오는데 정작 1일때 안됨..;; 난줴 고쳐야겠
- 데블스캠프2009/수요일/OOP/박준호 . . . . 1 match
class 붕어빵 {구워지는 최저온도, 구워지는 최고 온도, 구워진 상태, 상태변화, 온도변화}
- 데블스캠프2009/월요일 . . . . 1 match
|| 이름 || 주제 || 내용 || 비고 ||
- 데블스캠프2009/월요일/연습문제/svn코드레이스/박근수 . . . . 1 match
printf("%d부터 %d까지 숫자를 넣으라고 말하는 겁니다아아!!!\n",min+1,max-1);
- 데블스캠프2009/월요일/연습문제/svn코드레이스/박준호 . . . . 1 match
printf("먹고 ,다시 말하시오\n");
- 데블스캠프2009/화요일 . . . . 1 match
|| 이름 || 주제 || 내용 || 비고 ||
- 데블스캠프2010/다섯째날/ObjectCraft . . . . 1 match
* 사실 원래 하려고 했던 것은?
- 데블스캠프2011/넷째날/Git/권순의 . . . . 1 match
// 사용자 입력을 띄어쓰기 단위로 나누고 몇개로
- 데블스캠프2011/넷째날/루비 . . . . 1 match
* [http://nightshadow.tistory.com/entry/%EA%B0%9D%EC%B2%B4%EC%A7%80%ED%96%A5-%EC%8A%A4%ED%81%AC%EB%A6%BD%ED%8A%B8-%EC%96%B8%EC%96%B4-%EB%A3%A8%EB%B9%84 블로그 참고]
- 데블스캠프2011/다섯째날/HowToWriteCodeWell/권순의,김호동 . . . . 1 match
// 안에서 엘레베이터를 타지만 최고층을 초과하는 경우
- 데블스캠프2011/다섯째날/HowToWriteCodeWell/김준석,서영주 . . . . 1 match
Elevator el = new Elevator(20, -5, 1);//최고 높이, 최저 높이, 초기높이를 받는 생성자
- 드릴러2004 . . . . 1 match
올려보면 좋을 듯 한데 당장 코드가 없어서 못 올렸는데...몰랐던 사람도 있고
- 로마숫자바꾸기 . . . . 1 match
* 참고용 로마숫자
- 만년달력/방선희,장창재 . . . . 1 match
DeleteMe) 나두 태클 걸고 싶네...ㅡ.ㅡ;; - ["재니"]
- 맞춤교육 . . . . 1 match
참으로 안타까운 소식입니다. 이제는 대학이 취업의 전단계로 인식되고 있다지만.. 한발 더나아가 기업은 대학을 인재선발의 전진기지 정도로 생각하는것 같네요 - [임인택]
- 몸짱프로젝트/BinarySearchTree . . . . 1 match
* 다 만들고서 리펙토링을 했다.
- 박성현 . . . . 1 match
== 참고할 것 ==
- 박진섭 . . . . 1 match
DeleteMe [홈페이지Template] 를 참고로 하여 페이지를 구성하시기를 추천합니다. --NeoCoin
- 박진하 . . . . 1 match
**********음..위키 한줄이라도 쓰래서 쓰고갑니다 ㅋ
- 반복문자열/이강희 . . . . 1 match
이상한거 있으면 지적해주시고;
- 반복문자열/황세연 . . . . 1 match
책보고 해봤어요...ㅠㅠ
- 배진호 . . . . 1 match
* [http://www.cyworld.com/bloodjino 싸이주소] 진부하다고 하지만 아직 합니다
- 병희 . . . . 1 match
== 하고 싶은 말 ==
- 새싹교실/2012/새싹교실강사교육 . . . . 1 match
* 고한종
- 새싹교실/2012/열반/120409 . . . . 1 match
* 중간고사 이후 배열과 주소를 학습합니다.
- 새싹교실/2012/주먹밥/이소라때리기게임 . . . . 1 match
// 그리고 반복
- 새싹스터디2007 . . . . 1 match
== 고준영(06) ==
- 손동일 . . . . 1 match
== 하고싶은 것 ==
- 수/마름모출력 . . . . 1 match
패턴을 입력 받고 변의 길이를 입력 받아 마름모 출력.
- 수/정렬 . . . . 1 match
숫자 5개를 입력 받고 큰 순서대로 출력.
- 수면과학습 . . . . 1 match
1. 수면은 지속적인 기억 흔적을 제공하는데 기여한다. 즉 단기->장기 기억 전환시 Rem이 중요하다. (다음 조사 참고)
- 수학의정석/집합의연산/이영호 . . . . 1 match
어렵다. 알고리즘 구현이 어렵다...
- 수학의정석/집합의연산/조현태 . . . . 1 match
알고리즘은 1과 0으로 수를 저장, 한칸씩 옮겨가면서 모든 경우의 수를 찾는 것이다.
- 숙제1/최경현 . . . . 1 match
cout << "섭씨 온도를 입력하고 Enter 키를 누르십시오 : ";
- 숫자를한글로바꾸기 . . . . 1 match
* 이강성 교수님께서 만드신 TestDrivenDevelopment 강의 동영상에서 다룬 내용과 같은 문제네요. 이 문제를 푸신 분들은 제게 메신저로 말씀을 해 주세요. DevilsCamp 때도 TestDrivenDevelopment 에 대해서 잠깐 접해보셨겠지만 이 동영상을 보시면 많은것을 얻으실 수 있을 것 같네요. 참고로 제 MSN 주소는 boy 골뱅 idaizy.com 입니다. 원저자께서 해당 파일이 무작위적으로 유포되는걸 원치 않으셔서 신청자에 한해서만 파일을 보내드리겠습니다. - 임인택
- 숫자야구/ 변준원 . . . . 1 match
int base = rand() % 1000; // % 9를 하면 0~9까지의 숫자가 들어갈 수 있고
- 알고리즘8주숙제/test . . . . 1 match
[알고리즘8주숙제]
- 알카노이드 . . . . 1 match
[임민수], [권정욱], [김홍선], [이재환] 같이 하실분 이름 추가하고 들어오세요
- 위키설명회2006 . . . . 1 match
하겠다고 연락 온 분 : 재선, 휘동, 현태, 유선, 수생, ..!
- 유주영 . . . . 1 match
친구들고 함께 열심히 연구(?)를.!
- 윤종하/지뢰찾기 . . . . 1 match
/*걍 멋있으라고 한 시작화면*/
- 임다찬 . . . . 1 match
|| 날짜 || 언어 ||문제명 ||비고||
- 임인택/CVSDelete . . . . 1 match
deleteCVSDirs('C:\MyDocuments\Programming Source\Java\초고속통신특강\neurogrid')
- 자리수알아내기 . . . . 1 match
어떤 정수 n이 몇 자리인지 알아내고 싶습니다. 어떻게 알 수 있을까요?
- 정규표현식 . . . . 1 match
* 스터디 모임요약본은 정규표현식/모임 안에 날짜별로 카테고리를 만들어 작성한다
- 정모/2003.12.1 . . . . 1 match
* 학기중에 활동한 사람은 연락하고 아닌 사람은 공지만.. (02, 03 대상)
- 정모/2003.2.12 . . . . 1 match
* 안녕하세요 03학번 강희경이라고 합니다^^
- 정모/2005.9.13 . . . . 1 match
* 캠가지고 놀자! : 문보창, 허아영
- 정모/2005.9.5 . . . . 1 match
* 저고학번이 한팀이 됨. 학생회 점검표를 활용한다. 매달 조를 바꾼다. 담당제. 정도의 이야기
- 정모/2006.2.2 . . . . 1 match
- 조사 한 뒤, 마음에 드는 회원증 샘플이 없고, 너무 비싸다.
- 정모/2006.4.10 . . . . 1 match
10. 숙제로 제출하고 선배가 흰트를 준다.
- 정모/2006.9.7 . . . . 1 match
HTML+CSS+JAVAS+PHP+PYTHON > 잔고 - 지원, 상협, 지훈, 우용, 준석
- 정모/2013.10.2 . . . . 1 match
* [김민재], [박희정], [김현빈], [임지훈], [고한종], [김해천], [신형준], [김태진], [서민관], [안혁준], [송정규], [조영준], [김도형]
- 정모/2013.8.26 . . . . 1 match
* 슈퍼컴퓨팅 알고리즘 대회
- 제안 . . . . 1 match
["제안"]이라는 ["페이지이름"]이 너무 모호하다고 생각합니다. ["ZeroWiki/제안"]으로 ["페이지이름바꾸기"]하겠습니다. --["이덕준"]
- 조동영/이야기 . . . . 1 match
- 먼저 생각을(짧게)하고 코딩 시작 (재환)
- 조응택 . . . . 1 match
== 하고싶은 것 ==
- 조현태/놀이 . . . . 1 match
== 하고싶은말 ==
- 졸업논문/요약본 . . . . 1 match
웹 환경은 이제 하나의 플랫폼으로 자리 잡고 있다. 빠르게 변하는 웹 환경에는 python같은 객체지향 언어가 적당하다. Django는 python으로 만들어진 웹 애플리케이션 프레임워크로, 데이터베이스를 추상화하여 개발자가 기민하게 웹 애플리케이션을 작성하도록 돕는다. Django에서는 기존에 ODBC등을 이용하는 CLI 보다 한 단계 더 높은 수준에서 데이터베이스를 사용할 수 있다. 예를 들어 주언어 python에 클래스를 정의하면 데이터베이스 테이블을 자동으로 생성해주며, 클래스가 변경되면 데이터베이스 테이블도 자동으로 수정해준다. 그 밖에 삽입, 삭제, 수정, 조회 기능을 클래스가 가진 메소드로 추상화하여 주언어 수준에서 데이터베이스를 사용할 수 있도록 한다. 이러한 지원을 바탕으로 웹 애플리캐이션 개발자는 기민하게 프로그램을 작성할 수 있다.
- 지금그때2003/ToDo . . . . 1 match
* 일요일 까지 선전문을 작성하고 올려야 한다. [지금그때2003/선전문] (V)
- 지금그때2004/연락 . . . . 1 match
패널들에게는 패널이라고 일러줍시다--[Leonardong]
- 지금그때2004/전통과사유20040329 . . . . 1 match
* '고문(?)', '경악', '空', '모호', '즐거움', '희망'
- 지도분류 . . . . 1 match
||["Java"]|| Sun사에서 태어나고, 여러 업체들에 의하여 발전하는 프로그래밍 언어이자 플렛폼 ||
- 최연웅 . . . . 1 match
* 순천금당고등학교 졸업 (혹시 동문 없나요..)
- 코드레이스출동/CleanCode . . . . 1 match
* [(aekae)Eclipse단축키] 참고
- 큰수찾아저장하기/김영록 . . . . 1 match
정렬소트를 연습해보고 싶다.
- 테트리스만들기2006/예제1 . . . . 1 match
=== 참고할 예제소스 ===
- 토이/숫자뒤집기/임영동 . . . . 1 match
int reversedNumber=reverse(inputNumber);//뒤집을 숫자를 입력받고 reverse()호출
- 통계청 . . . . 1 match
통계청은 http://www.nso.go.kr 이고
- 파이썬->exe . . . . 1 match
win32com 에 있는 것들을 사용해서 프로그램을 만들고 나면..
- 페이지이름바꾸기 . . . . 1 match
#redirect 페이지이름고치기
- 프로젝트분류 . . . . 1 match
위키위키를 이용해서 진행하고 있는, 또는 완성된 프로젝트들.
- 피보나치/고준영 . . . . 1 match
상당히 좋지 않은 알고리즘 인것같다.. 내 컴퓨터를 서버로 테스트한결과 20이 넘어가면 gg....;;;;;;
- 피보나치/정수민,남도연 . . . . 1 match
printf("몇번째 숫자를 출력하고 싶습니까?\n-> ");
- 피보나치/조현태 . . . . 1 match
//메인함수- 값을 입력받고 출력하는 역활을 합니다.
- 홍길동 . . . . 1 match
== 하고싶은 것 ==
- 황세중 . . . . 1 match
== 하고싶은것 ==
Found 1297 matching pages out of 7557 total pages (2160 pages are searched)
You can also click here to search title.