- 1002/Journal . . . . 19 matches
* 2학년, 3학년들에 대해 좀 더 실용적인 RT로 한다면, 해당 프로그래밍 언어에 대한 RT를 할 수 있을것도 같다. (노트북 2대정도 이용, 사람들이 다같이 둘러서 보는..)
* 처음 프로그래밍을 접하는 사람에게는 전체 프로젝트 과정을 이해할 수 있는 하루를, (이건 RT 보단 밤새기 프로젝트 하루짜리를 같이 해보는게 좋을 것 같다.) 2-3학년때는 중요 논문이나 소프트웨어 페러다임 또는 양서라 불리는 책들 (How To Read a Book, 이성의 기능, Mind Map 이나 Concept Map 등)을 같이 읽고 적용해보는 것도 좋을것 같다.
* Blank Error 의 에러율 변화에 대한 통계 - 이론으로 Dead Lock 을 아는 것과, 실제 Multi Thread 프로그래밍을 하는 중 Dead Lock 상황을 자주 접하는것. 어느것이 더 학습효과가 높을까 하는 생각. 동의에 의한 교육에서 그 동기부여차원에서도 학습진행 스타일이 다르리란 생각이 듬.
해당 클래스 내에서 생성하는 디자인은 그 클래스를 교체해줄 수가 없으니 유연한 디자인이 아니다. 그렇다고 setter 를 두는 것도 좋은 디자인은 아닌것 같고. (프로그래밍 실행 중간에 Delegation 하는 객체를 교체할 일은 드물다. State Pattern 이나 Strategy Pattern 이 아닌이상.) 아마 처음에 Mock Object 를 이용하여 BookMapper 를 만들었었다면 Connection 을 직접 이용하거나, Library 객체를 내부적으로 직접 인스턴스를 생성하여 이용하는 디자인은 하지 않았을 것이란 생각이 든다.
* TDD의 테스트들은 마치 모래주머니 같다. 묵직한 느낌을 주면서 프로그래밍 한 것들을 이해하게 하니까. 그리고, 갈수록 느끼는 것이지만, 테스트 없는 리팩토링은 정말 상상하기 어렵다. 요새는 중간중간 테스트를 작성하지 않는 코드들도 이용하고 있다. 조심스럽긴 하지만, 모듈의 복잡도,중요도에 따라 적당히 골라쓸 수 있을 것 같다.
* 요새들어 다시금 느끼지만, vi 로 파이썬 프로그래밍 하는게 가장 편한것 같다. cygwin 을 쓰니까 윈도우건 ZP 계정이건 작업스타일이 똑같아서 좋다. 그리고, command 위주의 작업환경은 내가 하려는 일에 대해 명시적으로 생각하게끔 하는 효과를 주는것 같다. NoSmok:단점에서오는장점 이랄까.
* 예전 PHP 프로그래밍 할때 맨날 제로보드 소스보면서 욕했는데 -_-; (보고 배울 소스 아니다 둥둥, 왜 스킨제작하는 사람들이 소스 수정하여 기능들을 만들어내야 하는가 등등 -_-.. 디자인적으로 그리 보고 배울 것이 아니라고 생각했기 때문. 그냥 노가다 코드라고 생각.)
* ["프로그래밍잔치"]
처음 고려할때부터 글쓰기를 고려하고 작성한 문서는 아니여서; (그냥 소스만 주욱 변화과정을 보이려고 했다는.) 차라리 처음부터 프로그래밍할때마다 바뀐부분에 대해서만 과정을 적어나갔더라면.
* 만일 영어권에서 살았던 사람이라면 더 빨리 만들었을텐데. 일상 쓰는 단어나 프로그래밍때의 함수 이름이나 똑같이 지을테니. 흐음. 히구;
1. Visual C++ 에서 클래스로 만들어쓰면 인텔리센스 기능 지원을 받아서 프로그래밍 하기 편하다는.
즉, OOP 식 사고에서의 장점이 아닌, 기존 개인스타일의 프로그래밍중에서의 장점이였다. 스스로 생각하기엔 OOP라 생각했던 것들도, 알고보면 OO의 언어를 쓸 뿐, OOP가 아니였었던 것이다. 세미나중 'OOP 로 하면 뭐가 좋아요?' 라고 질문할때 저렇게 답할 수는 없겠지.
다시 'OOP는 왜 하는가' 에 대한 질문을 하면서 내가 플밍하는 방법에 대해 생각하게 되었고, 내가 프로그래밍을 하면서 유용하게 이용했었던 사고습관(일련지는 모르겠다 정확하게는;) 에 대해 생각하며 OOP 세미나 스케줄 1차 초안을 만들어보기 시작했다.
1. 무엇을 할것인가 : 어떻게 할 것인가의 관점. 나는 초기에 학교 전공 중 Science 와 Engineeing 의 기준을 저것으로 나누었었다. 내가 '무엇을 공부할까?' 라고 질문을 할때는 앞의 분류를, '어떻게 할것인가?' 라는 질문을 할때는 뒤의 분류를. 바로 적용되진 않겠지만, "OOP 는 '프로그래밍을 어떻게 할것인가?' 라는 분류에 속한다" 라고 말해주면 머릿속에서 분류하기 편할것이란 생각을 했다.
1. 객체지향프로그래밍 과정 - OOP를 하면서 나는 기계로 만들어진 엔진을 떠올리곤 한다. 볼트, 너트, 실린더, 크랭크, 배기밸브... 저것들을 닦고 조이고 기름쳐가며 만들어가기. 이 부분을 어떻게 설명할까 하면서 '차라리 벡터 그래픽 툴을 만져보게 할까' 하는 생각도 해봤었다. 중간에 Python Interpreter 를 만져보게 하는것이 좋겠다는 생각을 했었고, 창준이형과의 전화중 더욱 더 확신을 가지게 되었다.
1. 프로그래밍에 대한 전반적 접근 - 문제를 Top Down 으로 나눈다는 관점. 2학년때 DirectX 로 슈팅 게임을 만들때 가끔 상상하던것이 석고로 만든 손을 조각하는 과정이였다. 조각을 할때엔 처음에 전체적 손 모양을 만들기 위해 크게 크게 깨 나간다. 그러다가 점점 세밀하게 조각칼로 파 나가면서 작품을 만들어나간다. 이런 식으로 설명할 수 있겠군 하며 추가.
1. Stepwise Refinement - 이번에 전과한 사람중에 수학과가 있었던것 같다. 그런 사람들에게 수학문제에 대한 전개과정과도 같아보이는 프로그래밍 방식을 보여주면 좋겠지 하는 생각에 하나 골라보았다. 개인적으로 수치해석 숙제를 할때 유용하게 써먹었던 방법이기도 해서.
* ["프로그래밍파티"], ["ProgrammingPartyAfterwords"]
* 다양한 경험 - 내용을 만들어내려면, 그만큼 경험이 필요하기에. 성장계단이라던가, 자신이 '배운' 내용을 '적용' 해볼 수 있는 터로서 이용한다던가, ["Refactoring"] 과 프로그래밍 개발의 관점에서 설명한다던가 등등 (이것같은 경우 내용을 알고 있어도, 사람들의 레벨에 맞춰야 하기때문에 적절하게 꺼낼 타이밍을 맞춰야 할것 같은데. 이야기가 흘러가면서 페이지 구조조정, ["Refactoring"] 으로까지의 이야기흐름전개. 어떻게 흘러온걸까.)
- PairProgramming . . . . 16 matches
하나의 컴퓨터에서 둘이서 서로 상의하면서 번갈아가며 프로그래밍을 하는 방법.
* 5분 Pair-Change - 장과 단이 존재하긴 하는데. 장점으로 본다면, 자신의 프로그래밍 차례가 빨리 돌아오면서 Pair 끼리의 Feedback 이 빠르다는 점에서 집중도가 높다는 점이 있다. 단, Junior 의 경우 자신의 사고가 성숙해질 시간을 방해할 수 있다. 이 경우 5분으로 시작, 점차적으로 Change 의 기간을 늘려주는 방법이 있다.
* Protocol Analysis, 지식의 전달 - Seminar:CognitivePsychology 참조. 다른 사람의 사고과정을 관찰하고, 또한 자신의 사고과정을 다른 사람으로 하여금 관찰할 수 있게 해준다. 이는 자신의 프로그래밍 과정중 잘못된 부분을 고치는데 도움을 준다.
* 해당 시간 내 집중도의 상승, Pair Pressure - 평소 프로그래밍 외의 것(프로그래밍 중 음악듣기, 쓸데없는 웹서핑, 메일 읽기)에 대한 잡음을 없앤다. 작업 자체에만 몰두하게 해준다. ["TestDrivenDevelopment"] 와 상호작용이 빠른 언어(["Python"] 등..)를 이용하면 Feedback 이 빠르므로 집중도가 더 높아진다.
* Junior : Junior Pair 는 의미가 없다? - 결과물에 상관하지 않는 학습의 경우 그 의미가 있다. Junior 의 실력 한계 내에서의 Output 으로도 의미가 있다. 처음 프로그래밍을 익히는 사람에게 Pair 를 하는 것 자체가 새로운 학습경험이 된다.
동문서버 프로그래밍 팀의 인수인계용으로 이용되었었다. PP를 주로 하고 한두번의 VPP를 했다. 해당 소스를 같이 만들어가면서 기존의 프로그램을 설명했다.
Expert : Junior . 즉, 해당 분야에 대한 전문가 : 초심자 의 문제이다. 이 경우 그 진행이 늦어질 수 있다. (Expert : Expert는 최고의 효율성을 가진다. 물론 이것도 열린 마음을 바탕으로 한다. Junior : Junior 도 나름대로(?) 빨리 움직인다. (제대로 움직인다는 보장은 못한다. -_-;)) 그리고 Expert가 해당 프로그래밍에 대한 답 (코드)을 이미 알고 있는 경우 Expert의 집중도와 긴장감을 해치게 된다.
전문가라 하더라도 프로그래밍의 실력과 다른사람에게 답변해주는 능력은 다르다. 커뮤니케이션 능력은 실제 도메인에 대한 지식과는 다를 수 있다. Expert 는 Junior 에게 설명을 해줌으로서 기존의 지식에 대한 정리를 해 나갈 수 있다. Junior 는 혼자서 삽질하는 것보다 더 빨리 필요한 지식에 대해 접근할 수 있다.
* Pair 의 진행을 이끌어가는 것 - 프로그래밍의 흐름이라고 해야 할까. 디자인을 어느정도 선정도로 맞추고 어떠한 문제를 풀 것인가에 대한 약간의 선이 필요할 것 같다. 이 경우에는 초반 디자인이 허술했었다는 약점이 있었다. '전체적인 관점에서 무엇무엇을 하면 프로그램이 완성될 것이다' 라는 것. UserStory 만 생각하고 EnginneringTask 를 간과한 것이 큰 문제였다. (그때 EnginneringTask 에 대한 개념이 없었었다는. 어디서 함부로 주워만 지식. --; 사고를 하자 사고를. -_-)
집중도는 거의 최고라는 점! (이 점에서 둘이 서로 동의를 했다.) 평소 혼자 프로그래밍할때는 중간에 웹서핑을 하는 등 주위가 산만해지는 경우가 많았다. 하지만 이 Pair 중에는 사람들이 프로그래밍과 토론에만 전념할 수 있었다. (오히려 중간중간 일부러 10분 휴식을 두어야 했다.)
* Junior 로서의 실수 - 기존 앞에서의 경험에서는 상대적으로 내가 Expert 의 위치에서 작업을 하였다. 이번에는 Junior 의 입장에 서게 되었는데, 기존에 Junior 의 위치에 있었던 사람들의 실수를 내가 하게 되었다. 어려운 부분에 대해서는 이해를 제대로 하지 못했음에도 불구하고 Expert의 속도를 저해할지도 모른다는 생각을 하며 대강 넘어갔었다. (다른 Junior 의 경우도 PP에서 어려움을 겪는 부분중 하나가 이것일지도 모른다. 특히 선후배 관계의 경우) 하지만, 이는 오히려 사태를 악화시킬 수 있다. 프로그래밍 작업을 계속 Expert에게만 의존하게 되기 때문이다. 확실하게 개념을 공유해야 Observer 의 역할과 Driver 의 역할 둘 다 잘할 수 있다. (쉬운 일은 아니다. 확실히)
* Junior 의 위치에서 바라본 학습 효과 - 이전에 상경이형이 채팅 프로그램 만드는 법을 직접 보여줬을때가 생각이 난다. (그때 '자. 15분동안 하나 만들어줄께~' 하면서 후다다닥 MFC로 서버/클라이언트 예제를 바로 보여주던 모습은 잊혀지지 않는다;) Junior 의 입장에서 Expert 행동 하나하나는 Check Point 이다. 좋은 습관과 프로그래밍 스타일, 디버깅하는 모습을 직접 눈으로 확인할 수 있었다.
* 협동 - 이번경우는 비교적 협동이 잘 된 경우라고 생각한다. Python 으로 문제를 풀기 위한 프로그래밍을 하는데는 석천이, Idea 와 중간에 데이터 편집을 하는데에는 정규표현식을 잘 이용하는 상민이가 큰 도움을 주었다. 적절한 때에 적절하게 주도하는 사람이 전환되었던 것으로 기억.
* 집중 - 이번 경우에는 '시간제한' 이라는 것까지 있어서인지; 석천은 더더욱 프로그래밍 자체에 집중했다. (스크립트 언어 스타일의 접근방법과 이전의 TDD 연습도 한몫 거든듯. 조금씩 만들고 결과 확인해보고 조금 또 만들어보고 결과 확인을 했다. 단, 이번엔 Test Code 를 안만들어서, 뒤에가서 버그가 났을때 대체를 못했다는.-_-; 잘될때는 문제가 아니다. 잘 안될때, 문제상황에 대한 대처가 중요하다고 생각.)
- 데블스캠프2002/진행상황 . . . . 14 matches
이번 세미나의 부제를 단다면 "우리는 어떻게 사고하고 어떤 과정으로 프로그래밍 하는가" 정도가 될 것이다. 지금 학생들의 프로그래밍 과정과 사고 과정을 밖으로 끄집어 내어서 함께 관찰하고, 함께 논의할 수 있도록 했고, 동시에 선배/전문가들의 사고 과정과 프로그래밍 과정을 직접 보여주어서 그 차이를 느끼고, 거기서 학습이 일어나도록 했다.
* OOP를 바로 설명하기 전에 나의 프로그래밍 사고 방식을 깨닫고, StructuredProgramming 의 경우와 ObjectOrientedProgramming 의 경우에는 어떠한지, 그 사고방식의 이해에 촛점을 맞추었다.
* 일단 지난시간에 만들었었던 RandomWalk 의 스펙을 수정한 RandomWalk2 를 사람들로 하여금 풀게 한뒤, 그 중에 완성한 두명을 뽑아 (상규와 현민) 자신이 어떻게 프로그래밍을 했는지에 대해 창준이형의 진행으로 질답을 하면서 설명해나갔다. 그리고 코드를 프로젝터와 노트북을 이용, 신피의 벽에 비추며 설명하였다. (["RandomWalk2/상규"], ["RandomWalk2/현민"])
* ObjectOrientedProgramming - ["RandomWalk2"] 에 대해서 창준이형과 ["1002"] 는 서로 이야기를 해 나가면서 하나씩 객체들을 뽑아내가는 과정을 설명했다. 일종의 CRC 카드 세션이었다. 그러고 나서는 프로젝터를 통해, 직접 Prototype을 만들어 보였다. OOP/OOAD로 접근하는 사람의 사고방식과 프로그래밍의 과정을 바로 옆에서 관찰할 수 있었다.
또한, JuNe과 ["1002"]의 CrcCard 세션을 (마치 주변에 사람이 없는 듯 가정하고) 보여줬던 것도 좋은 반응을 얻었다(원래는 ["1002"]가 혼자 문제를 푸는 과정을 보여주려고 했다가 JuNe이 보기에 두 사람의 협력 과정을 보여주는 것도 좋을 듯 했고, 분위기가 약간 지루해 지거나 쳐질 수 있는 상황이어서 중간에 계획을 바꿨다.) 선배들이 자신이 풀어놓은 "모범답안"으로서의 코드 자체를 보여주는 것은 했어도 분석하고 디자인하고, 프로그래밍 해나가는 과정을 거의 보여준 적이 없어서, 그들에게 신선하게 다가간 것 같다.
* '''Pair Teaching''' 세미나를 혼자서 진행하는게 아닌 둘이서 진행한다면? CRC 디자인 세션이라던지, Structured Programming 시 한명은 프로그래밍을, 한명은 설명을 해주는 방법을 해보면서 '만일 이 일을 혼자서 진행했다면?' 하는 생각을 해본다. 비록 신입회원들에게 하고싶었던 말들 (중간중간 팻감거리들;) 에 대해 언급하진 못했지만, 오히려 세미나 내용 자체에 더 집중할 수 있었다. (팻감거리들이 너무 길어지면 이야기가 산으로 가기 쉽기에.) 그리고 내용설명을 하고 있는 사람이 놓치고 있는 내용이나 사람들과의 Feedback 을 다른 진행자가 읽고, 다음 단계시 생각해볼 수 있었다.
["RandomWalk2"]를 풀 때 어떤 사람들은 요구사항에 설명된 글의 순서대로(예컨대, 입력부분을 만들고, 그 다음 종료조건을 생각하고, ...) 생각하고, 또 거의 그 순서로 프로그래밍을 해 나갔다. 이 순서가 반드시 최선은 아닐텐데, 그렇게 한 이유는 무엇일까. 두가지 정도를 생각해 볼 수 있겠다.
하나는 사람들이 별다른 외현화를 하지 않고 바로 프로그래밍에 들어갔기 때문이다. 외현화라는 것은 자기 생각을 머리 바깥에 표현하는 것을 말한다. 다이어그램을 그리거나, 글을 쓰거나 해서 표식을 남기는 것이다. 외현화가 필요한 이유는, 사람의 단기기억 장치는 상당히 작은 수의 것들만 기억할 수 있기 때문에 일종의 "보조기억장치"를 통해 기억부담을 줄여야 하기 때문이다. 그런데, 미리 문제이해/분석/기획시에 특별히 자신이 이해하고 계획한 문제풀이를 외현화하지 않았기 때문에, 프로그래밍을 하는 중엔 유일한 보조물인 "요구사항"을 그대로 보고 따라하게 된 것이 아닐까 생각한다. 만약 문제를 보고 분석을 하면서 간단한 다이어그램을 그려뒀고, 그것을 참조하면서 프로그래밍했다면, "좀 더 바람직한 순서"를 택할 수 있지 않았을까.
* 실습 - Personal Web Server 설치 & 간단한 ASP 실습. 윈도우즈 프로그래밍 관련 실습. 도스용 ["Omok"] 프로그래밍
- 데블스캠프계획백업 . . . . 13 matches
* 우선 신입생들이 직접 프로그램에 고민을 많이 하게 했으면 합니다. 기술적인 것보다는 알고리즘을 스스로 생각하게 하는 것을 우선적으로 많이 하게 했으면 합니다. 그리고 전에 창준 선배님이 가르쳐 주신 페어 프로그래밍 방식도 한 번 해 보는 것도 괜찮을 듯 합니다. 구체적인 모습은 저도 좀 생각 하고 다시 쓰겠습니다. 마지막으로 개인적인 이야기지만 작년에 ["데블스캠프"]를 하며 일주일 동안에 정말 많은 걸 배우고 느꼈습니다. 그것을 후배들도 느끼게 했으면 좋겠습니다...^^ --재동
* ["PairProgramming"]은 안했으면 하네요.. 아직 프로그래밍에 대한 기초가 없을텐데.. 데블스 캠프의 목적이 프로그래밍의 기초를 다지는데 있지 페어 프로그래밍 방법의 전수는 아니라고 생각하거든요. --태호형
''["PairProgramming"]을 하냐 안하냐 하는 것은 크게 중요한 것은 아닌데, 한가지 오해가 있군요. 페어 프로그래밍은 "["PairProgramming"] 방법의 전수"를 위해서 하는 것이 아니고, 프로그래밍을 잘하기 위해서 하는 것입니다. 과외가 "과외방법의 전수"를 목적으로 하는 것이 아니고, 공부를 잘하기 위해서 하는 것이듯. --JuNe''
* 솔직히 저는 ["PairProgramming"]의 장점을 모르겠습니다. 같이 프로그래밍을 하면서 다른 사람의 프로그래밍 기술을 습득하는것이 장점인지 아니면 프로그램의 개발 속도 향상을 하는것이 장점인지 .. 아마도 둘다 장점이 되겠지요. 하지만 ["PairProgramming"]의 목적은 둘중에 개발 속도 향상에 중점을 두고 있다고 생각하네요. 다른 사람의 프로그래밍 기술의 습득은 부가적인 것이구요. 후배들에게 하는 세미나는 개발을 위한게 아니고 실력 향상을 위한 것인데 제가 보기에는 ["PairProgramming"]을 해서 얻는 기술보다는 기존의 방법들이 훨씬더 효과적일거라고 생각하네요. 그들 자신이 이 문제를 어떻게 해결해야 할 것인가에 대한 고민을 하고 자신의 생각을 코드로 표현할 수 있는 능력을 기르는 것. 문제 해결의 해법을 어느정도 찾을 수 있고 자신의 생각을 코드로 표현 할 수 있으며 타인의 코드를 완벽하게는 아니더라도 어느정도 이해 할 수 있는 수준이 된 사람이라면 ["PairProgramming"]으로 얻을 수 있는 기술들은 많을거라 생각하지만 전혀 그렇지 않는 신입생들에게는 무리일거 같군요. -태호-
* 기존 방식대로.. 위에서 말하는 방식들은 어느정도 프로그래밍에 기초가 다져진 사람들에게 적합할듯.(신입생들의 실력이 어느정도일지는 모르지만 구구단도 제대로 못짤것 같음.) 기존의 방식은 아직 프로그래밍의 기초가 없는 사람들을 대상으로 성공적이었으므로. 그리고 몇년의 시행착오를 거쳐서 굳어진 방법이므로 . 새로운 방법을 도입한다면 해왔던 만큼의 시행착오를 해야 하므로 후배들이 얻을수 있는 것들에 대한 확신을 못함. --태호형
* 제 생각에는 꼭 한가지 방법을 모든 신입 회원들에게 적용할 이유는 없다고 생각합니다. 아직 기초가 부족하다 싶은 회원, 좀 프로그래밍에 익숙하다 싶은 회원을 각자 다른 방법으로 캠프를 진행해도 괜찮다고 생각합니다. (작년에 MFC스터디 벽돌깨기팀과 오목짜기 팀처럼 익숙한 정도에 따라 방법을 나누는 거죠..) - 상협
* 학교를 다니면서 혼자서는 거의 공부하지 않을만한, 그러나 중요한 것들(see also FocusOnFundamentals). 앞으로 학교생활에서 체험하기 힘든 것들. 학교를 졸업할 때까지 유효한 지식으로 남아있을만한 생명력이 긴 것들. 학교생활 동안 공부, 프로그래밍에 영향을 많이 끼칠 메타 수준이 높고 늘상 하는 것들. 사고하는 방법. 프로그램을 만드는 방법. 아마추어 아이디어 맨은 "아이디어"를 만들고, 프로 아이디어 맨은 "아이디어를 대량으로 생성해 낼 수 있는 구조와 과정"을 만들어 낸다고 합니다 -- 프로가 만든 아이디어는 엄청난 양의 아이디어를 자동 생산해 냅니다. 제가 학교를 다닐 때 "프로그램을 생성해 낼 수 있는 구조와 과정"을 선배에게서 배웠더라면 얼마나 좋았을까 하는 생각을 자주 합니다. 예를 들어, 이메일 주소를 찾는 RE를 "답"으로서 가르치거나, 혹은 무작정 시행착오를 거치면서 그 답을 찾으라고 종용하거나 하는 것보다는, 그런 RE를 효율적이고 손쉽게 생성해 낼 수 있는 과정과 인식적 도구를 가르쳤으면 합니다. --JuNe
- TddRecursiveDescentParsing . . . . 12 matches
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
# 이 테스트를 만족할때까지 프로그래밍
- 데블스캠프2002/날적이 . . . . 12 matches
* [영동] : 처음엔 남훈이 형의 세미나를 들었습니다. 제가 컴퓨터에 대해 거의 모르는 터라 처음 보는 용어가 너무 많았습니다. 그래서 그런지 "A는 어떤 어떤 일을 한다..."는 설명을 들으면 A가 어디에 속한 건지 혼란이 온달까... 그래도 나중에 동영상을 보니 그럭저럭 이해가 되는 것 같습니다. 남훈이 형 수고 많이 하셨습니다. 나중에 목소리 잘 안 나오는 거 보고 참 감사하다고 생각했습니다. 그리고 세미나가 끝나고 드디어 객체지향 프로그래밍으로 랜덤워크(스케쥴드워크로 개명됨)를 짜게 되었습니다. 어제 고민되던 문법은 의외로(?) 간단하더군요. 아직 구체적으로 들어간 게 없어서 그런가? 프로그래밍을 하는데 초반에는 5분에 한번씩 키보드를 파트너에게 넘기는 룰이 있었으나 후반엔 버그에 서로 정신이 팔려 그 규칙을 잊어버리고 거의 파트너였던 재니가 거의 짠 거 같습니다... 하여간 여기서 어려운 것은 전달인자를 넘기는 것이었습니다. 넘길 때 자꾸 변수 이름이 혼란스럽다는 것. 그리고 처음에 작성한 추상적으로 보이던 OOP 디자인. 여기서 프로그램을 이끌어 낼 수 있다는 것이 놀라웠습니다. 물론 그 이끌어 내는 과정이 너무 어렵다는 것이 문제지요. 또 한가지 놀라운 것은 확실히 객체지향 프로그래밍을 쓰면 코드의 길이가 확실히 줄어든다는 것이었습니다. 마지막으로... 세미나 준비하시고 프로그래밍 도와주신 선배님들 정말 감사합니다.
* 명진 : 갈수록 어려워지는 듯한 프로그래밍... 알고리즘을 잘못 생각해서 오목이 2~3개면 끝나버리는 현상이 나타나고... 다음부터는 연습장 같은것에 써가면서 하나씩 알고리즘을 확장해나가야 할듯 하군요.
* 세연 : 하루 쉬어서 그런지 다른때보다 체력이 받쳐줘서(?) 조금은 업된 상태에서 프로그래밍 할 수 있었지만 [[BR]]
* 성재) 우선 처음의 Unix의 경우는 쉽고 재밌었습니다. 제가 개인적으로 홈페이지에 관심이 많던터라 퍼미션 조정에 대해서도 잘 알수 있었구요.. 서버에서의 html을 찾아가는 경로도 알수 있어서 좋았습니다. 그런데... -_-;; 씨 프로그래밍은 여전히 어려웠습니다...-_-;; 첫번째 문제밖에 못풀었는데요.. 우선 Randomwork경우에는 문제조차 이해를 바로하지 못했던게 문제였던 것 같습니다. 동적배열을 쓰는 법도 잘 몰라서 문제였구요. 선배들이 도와주셔서 알긴 했지만 좀 더 공부해야 겠다는 생각이 들었습니다. 그리고 중요한 에러중에 하나가 괄호를 생략하는데서 나온건데요.. 코딩시 줄을 줄여보겠다는 일념<?>하에 괄호가 필요하지 않은데는 일일히 해주지 않았더니 꼬이더라구요... 코딩을 하는데에서의 인터페이스와 여러가지에 대해 깨우치고 알았던 기회였던 거 같습니다. 다음에는 좀 더 찬찬히 알고리즘부터 쫘악 짜서 천천히 풀어봐야 겠습니다...
* 명진 : 프로그래밍이란 역시 어려운듯... Unix할때는 도스와 FTP를 합쳐놓은 느낌이라서 비교적 쉽게 넘겼는데, 프로그래밍으로 들어가니 역시 쉽지 않더군요. 랜덤 워크 하나 하는데도 괄호를 잘못 치고 루프 범위를 잘못 표현하고 초기화를 안하는 듯 해서 계속 틀리고, 도움을 많이 받아가면서 간신히 끝냈습니다. 나머지 2문제는 20분밖에 남지 않았던 관계로 손도 대지 못함(않음?)... 좀 더 열심히 할 필요가 있을듯 하네요.
프로그래밍은 계속 랜덤워크만 했는데 무지 어려웠습니다. 프로그램을 하면서 에러가 아닌 실행중 잘못된 점을 찾지 못한것이 문제 였던
링크드 리스트는 코딩해본 경험이 있어서..... 프로그래밍은 경험이 중요하다는 걸 다시 한번 느낄 수 있었다
* 명진 : 역시 프로그래밍이라는 건 어렵군요. 특히 C++을 제대로 하지 않은 덕분에... 하지만 주위에서 도와주셔서 많이 배운듯. 아무튼 남은 기간동안 계속 힘내야겠지요.
- 프로그래밍잔치 . . . . 12 matches
== 프로그래밍 잔치 ==
2002년 여름의 마지막을 마감하는 조촐한 프로그래밍 모임. 이름은 ["프로그래밍파티"]의 오마쥬, 남상협군 제시
여름방학의 끝자락에서 방학을 시작한 데블스캠프 처럼, 방학을 마무리 하는 조촐한 프로그래밍 이벤트
|| ["프로그래밍잔치/첫째날"] ||
|| ["프로그래밍잔치/둘째날"] ||
|| ["프로그래밍잔치/셋째날"] ||
* ["프로그래밍잔치/첫째날후기"]
* ["프로그래밍잔치/둘째날후기"]
* ["프로그래밍잔치/셋째날후기"]
* ["프로그래밍잔치/정리"]
* 원래 1학년 위주의 프로그래밍 파티를 생각했는데, 1학년 위주라는 것이 협소하다는 생각과 외부의 의견으로 방학 마무리로 정리로 바꾸었습니다. 계획에 대강 쓰여진것 말고, 좋은 의견이 있으면 내놨으면 제시해 주세요. --["상민"]
- HolubOnPatterns/밑줄긋기 . . . . 11 matches
* 여러 패턴들이 서로 관련이 있으며 실제 프로그래밍할 때는 이들을 엮어 함께 사용하는 경우가 많다는 사실만 명심하면 된다.
* 객체 지향 디자인(OOD)과 객체 지향 프로그래밍(OOP)은 매우 다른것이다.
* 프로그래밍 프로세스는 디자인에서 시작하며 상속, 캡슐화, 디자인 패턴 등을 이용하고 디자은의 실체인 컴퓨터 프로그램을 내놓는다.
==== 자바를 C언어 스타일로 프로그래밍하기 ====
* 절차 지향 프로그래밍은 데이터를 조작 혹은 검토하는 서브루틴 간의 데이터 흐름을 구조화 한다.
==== 열린 눈으로 프로그래밍하기 ====
* 디자인이 아닌 구현단계에서도 이러한 상황을 "''우연에 의한 프로그래밍''"이라고 설명을 하더라고요. 그리고 대부분의 개발자는 "''우연에 의한 프로그래밍''"을 하고 있다고... 실용주의 프로그래머에서 본 기억이 있네요..? - [박성현]
== 인터페이스로 프로그래밍하기 그리고 몇 개의 생성 패턴 ==
* 인터페이스 관점에서 프로그래밍 하는 것은 OO 시스템의 기본 개념이며 GoF와 디자인 패턴은 이의 구체적이 예가 된다.
* 깨지기 쉬운 기반 클래스 문제를 프레임워크 기반 프로그래밍에 대한 언급 없이 마칠 수는 없다. MFC(Microsoft's Foundation Class) 라이브러리와 같은 프레임워크는 클래스 라이브러리를 만드는 인기있는 방법이 되었다.
- SmallTalk/강좌FromHitel/소개 . . . . 11 matches
이 글은 Smalltalk라는 프로그래밍 언어에 대한 몇 가지 중요한 이야기를 담고
나라에서는 C/C++이 프로그래밍 언어의 주류를 이루고 있으며, 요즈음은 Delphi
오늘날 많이 사용되고 있는 C++, Java, Object Pascal 등은 모두 프로그래밍 언
조적 프로그래밍 습관에 익숙한 우리들에게 객체 지향 기법을 구현할 수 있는 생
(software community)에 의해 매우 중요한 객체지향 프로그래밍 환경으로 여겨
졌고, Smalltalk의 언어 명세는 다른 모든 객체지향 프로그래밍 언어의 잣대가
그럼에도 불구하고 Smalltalk는 범용 프로그래밍 언어로써 사용되기에는 몇 가지
며, 이것이 Smalltalk가 범용 프로그래밍 언어로써 쓰이는데 하나의 커다란 장벽
아울러, 위의 예와 같이 극단적인 경우는 실제 프로그래밍에서 극히 드문 일이라
게 프로그래밍을 짤 수 있는 시스템을 개발을 원래 목표로 삼고 있었기 때문입니
어야 하는데, 이것이 일반적으로 프로그래밍의 초보자가 정말 넘기 힘든 '장벽'
- SmallTalk_Introduce . . . . 11 matches
이 글은 Smalltalk라는 프로그래밍 언어에 대한 몇 가지 중요한 이야기를 담고
나라에서는 C/C++이 프로그래밍 언어의 주류를 이루고 있으며, 요즈음은 Delphi
오늘날 많이 사용되고 있는 C++, Java, Object Pascal 등은 모두 프로그래밍 언
조적 프로그래밍 습관에 익숙한 우리들에게 객체 지향 기법을 구현할 수 있는 생
(software community)에 의해 매우 중요한 객체지향 프로그래밍 환경으로 여겨
졌고, Smalltalk의 언어 명세는 다른 모든 객체지향 프로그래밍 언어의 잣대가
그럼에도 불구하고 Smalltalk는 범용 프로그래밍 언어로써 사용되기에는 몇 가지
며, 이것이 Smalltalk가 범용 프로그래밍 언어로써 쓰이는데 하나의 커다란 장벽
아울러, 위의 예와 같이 극단적인 경우는 실제 프로그래밍에서 극히 드문 일이라
게 프로그래밍을 짤 수 있는 시스템을 개발을 원래 목표로 삼고 있었기 때문입니
어야 하는데, 이것이 일반적으로 프로그래밍의 초보자가 정말 넘기 힘든 '장벽'
- 새싹교실/2012/세싹 . . . . 11 matches
- 즉, 소켓 프로그래밍도 해당 함수와 하위 함수들의 작동원리를 잘 모르더라도 어떤 기능을 하는지만 알면 쉽게 통신 프로그래밍을 할 수 있습니다.
* 소켓 프로그래밍을 시작하였습니다. 네트워크에 대해 전혀 지식이 없는 친구들에게 짧은 시간안에 어떻게 개념을 알려주나 많이 고민했고 결과는 역시 fail이었던 것 같습니다. 짧은 시간에 이론적인 부분을 하는건 강사나 새싹이나 멘탈이 찢어지는 일인 것 같습니다..... 그리고 화요일 시간을 조정해야될 것 같네요.. 새싹 수업이 선대 끝나고 바로 있어서 희성이가 꾸벅꾸벅 졸았습니다. 선대를 안들은자만이 돌을 던지라. - [정의정]
* 오 C로 소켓 프로그래밍은 처음 보네요 재미있을듯ㅋㅋ - [신기호]
* 소켓 프로그래밍에 대해서 배웠습니다. 수업 내용을 잘 따라가지 못할 것이 두려워 걱정을 많이 했는데 선생님이 설명을 잘 해주셔서 수업 내용을 이해 할 수 있었습니다. 옛날에 자격증 딸 때 보았던 단어들이 막 나오니까 신기했습니다. 다음 수업까지 복습을 열심히 해야될 것 같습니다. '''아 그리고 선생님의 강의 노트가 굉장히 탐이 났습니다'''. - [권영기]
concurrent 프로그래밍을 다음시간부터 하겠습니다.
다음시간에 어떻게 프로그래밍 할 것인지 같이 알아보겠습니다.
잠깐 소개했던 thread프로그래밍을 김희성 학생이 thread로 소켓을 짜는 것인줄 알고 채팅 프로그래밍을 완성시켰네요. 강사 멘붕
* concurrent 프로그래밍에 대해 배웠습니다.
1) thread 프로그래밍
- 2006년4학년1학기수업 . . . . 10 matches
서울 22390 - 01 프로그래밍실습(1) 컴퓨터공학부 전공 봅스트홀 컴퓨터공학과실습실3(수10,7,8,9)
서울 32732 - 01 고급프로그래밍실습(1) 컴퓨터공학부 전공 봅스트홀 컴퓨터공학과실습실3(월9,10,11,12)
서울 31582 - 01 데이터베이스프로그래밍실습 컴퓨터공학부 전공 한상만 봅스트홀 컴퓨터공학과실습실3(목10,7,8,9)
고급프로그래밍실습(1) 들을듯.
재선아 형인데 프로그래밍실습(1) 요고 들으믄 안댈까?
|| 7(3:00) || || || 프로그래밍실습(1) || || ||
|| 8(4:00) || || || 프로그래밍실습(1) || || ||
|| 9(5:00) || || || 프로그래밍실습(1) || || ||
|| 10 || || || 프로그래밍실습(1) || || ||
프로그래밍실습(1) : 22390-01
- ProjectPrometheus/Journey . . . . 10 matches
* Pair 라는 것은 꼭 프로그래밍이 아니다 하더라도 여러가지 시너지를 발휘할 수 있다. 혼자서 생각하는 것보다 빠른 피드백을 받을 수 있기에. 오늘 떡볶이 먹으면서 아이디어 궁리할때의 아이디어들이 모이고 상대방에게서 반응을 들어보고 덧붙여지고 의외로 새로운 아이디어가 창출될때의 그 느낌이란. --["1002"]
오늘은 일의 진행이 정말 일사천리로 이루어졌다. 모이고 처음 일을 시작할때 상민이와 이전에 했던 일들과 오늘 해야 할일에 대해 간단하게 정리를 한 점이 주효한것 같다. 간단한 일이긴 하지만, 그날의 할 일에 대해 미리 머릿속에 그림을 그려둔다는 점에서 5분 Stand Up Meeting 은 의외로 효과를 주는것 같다. 그리고 Pair 를 하는중 디버깅이나 기타 일을 할때 미리 자신이 어떠한 일을 하려고 하는지 짧으면서도 자주 대화가 오고 갔던 점, 프로그래밍때 자주 체인지 한것도 오늘 일이 잘 진행되는데 도움이 컸다고 생각. --["1002"]
(그래서 수요일날에는 프로그램 작성전 Menual Test 방법을 먼저 생각해두고, 프로그래밍 작성을 하는 식으로 접근함)
Spike Solution으로 만들어 두었던 것들이, 실제로 프로그래밍 소스로 전환되고 있는 과정 중이다. 이제 User내의 Spike Solution관련 코드들이 사라지면 Spike Solution의 Test들도 다 깨지면서 사라 질것이다. 내일이면 DB와의 연동이 마무리 되고, 웹에 인터페이스 노출이 이루어 질것 같다. 그렇게 되면 커다란 줄기는 완성되는 것이다. 역시나 감회가 새롭다. Acceptance Test에 관련한 코드들을 내가 너무 모르고 있다. 그쪽 코드를 보고 이해 해야 불안하고 들뜬 마음을 안정 시킬수 있을것 같다. 나는 즐거운거 맞는 걸까? 학교 더 일찍오면 확실히 즐거울꺼 같다. ;; --["상민"]
머리가 잘안돌아 가는 느낌을 받기 시작한 것이 6시 즈음인데, 한시간은 괜히 잡고 있었던것 같다. DB스키마에 관해서 조금 생각해 보았고, 8일에는 DB연동 디자인이 들어가야 할것이다. Test 위주의 프로그래밍 작성은 아무리 생각해도 멋진거 같다. --["상민"]
일단 알고리즘부분을 대강 생각한뒤 Python 으로 TDD 를 했다. ([http://zeropage.org/browsecvs/index.php?&dir=ProjectPrometheus%2FPythonProject%2F&file=RSSpike.py&rev=1.1&cvsrep=ZeroPage 소스]). CRC 세션을 먼저하여 시나리오를 시각화해두고 프로그래밍을 했었다면 좀 더 빨리 작성할 수 있지 않았을까 하는 생각을 해본다.
알고리즘에 대한 SpikeSolution 에 대해서는, 일단 연습장에 명확하게 알고리즘을 세운뒤 프로그래밍에 들어가는 것이 좋겠다고 생각함. 그리고 알고리즘 디자인시에 Matrix 와 Graph 등의 모델을 그려서 생각해보는 것이 효율적이겠다는 생각이 들었다.
오늘 무엇을 할 것인가 하며 ["ProjectPrometheus/Iteration"] 를 보고선 HTML Parsing 을 진행하기로 했다. 그 전에 ["1002"] 는 '아, 작업하기 전에 Book Search 에 대한 전반적인 그림을 그려 놓는게 좋겠군. 그리고 난 뒤 HTML Parsing 부분에 대해 구현해야지' 라고 생각을 했다. 한편 ["neocoin"] 은 수요일때와 마찬가지로 'HTML Parsing 부분에 대해 일단은 SpikeSolution 으로 만든뒤 모듈화 시켜나가야지' 라는 생각을 했다. 프로그래밍 스타일이 다른 두 사람이 진행 방법에 대한 언급없이 진행을 하려고 했다. ["1002"] 는 '아 전체 그림' 하며 CRC 세션을 하려고 하는 중간. 한편 ["neocoin"] 은 같이 진행하고 있는 CRC 세션에 중간에 대해서 '지금 서로 무엇을 하고 있는거지?' 하며 혼란에 빠졌다. 똑같은 디자인 단계에 대해서 ["1002"] 는 전반적 Book Search 에 대해 생각을 하고 있었고, ["neocoin"] 은 모듈과 모듈간 연결고리에 대해 생각을 하였다.
CRC가 잘 추출되지 않을때는 차라리 UserStory를 따라가면서 클래스를 만들고, 거기에서 다시 CRC를 생각해 보는 방법이 시간 절약에 현명할 것이라고 생각된다. 객체 지향 의 프로그래밍을 추구해온 결과, Scenario나, UserStory를 따라가며 코딩하면서 수많은 클래스들이 책임에 따라서 생겨나는 것을 보면서 자연 스러움과, 약간 의아함 마져 들었다.
* 설계를 하면서 프로그래밍 접근법에 대해 생각해보았다.
- ZeroPage . . . . 10 matches
* 12회 중앙대학교 프로그래밍 경진대회
* 11회 중앙대학교 프로그래밍 경진대회(Programming Championship)
* 10회 프로그래밍 경진대회
* 9회 프로그래밍 경진대회 우승
* 8회 프로그래밍 경진대회 우승
* 7회 프로그래밍 경진대회 우승
* 4회 프로그래밍 경진대회
* 3회 프로그래밍 경진대회
* 2회 프로그래밍 경진대회
* 1회 프로그래밍 경진대회
- 프로그래밍잔치/둘째날후기 . . . . 10 matches
* 행사 : ["프로그래밍잔치/둘째날"]
* 팀별 정리 : ["프로그래밍잔치/Successor"], ["프로그래밍잔치/ErrorMessage"]
* 100 % 완성이 못된게 못내 아쉽지만 그럭저럭 잘된 팀 프로그래밍이였음다. 이번 팀에서는 역할 분담이 잘되었고 페어간의 의사소통이 잘된 게 좋았던 것 같습니다. 잘못된 점은 처음 디자인이 부족해서 역할과 역할이 서로의 디자인을 잘모르게 되었다는 것입니다. 담에는 ["프로그래밍잔치/Successor"] 정리에 있는 잘못된 사항인 No 되었던을 Yes로 바꿀 수 있게 노력해야 겠습니다. --재동
* 오늘 하면서도 느꼈던 것은 고정관념을 버려야 한다는 것!! 어제 역시 새로운 언어를 해보면서 이전까지의 언어에서의 고정관념에 사로잡혀 허우적되는 나를 발견했었는데... 오늘도 또다시 고정관념을 버려야한다는 것을 느끼게 했다. 프로그래밍에서 디자인이 시간낭비라는 고정관념, 코딩이 가장 중요하다는 고정관념, 프로그램 개발에서 가장 많은 시간을 소비하는 부분은 코딩이라는 고정관념.... 반드시 버려야겠다. 디자인은 절대로 시간낭비가 아니라는것... 가장 중요한 것이 코딩이 아니라것... 프로그램 개발에서 가장 많은 시간을 소비해야 할 부분이 코딩이 아니라는것.... 꼭 기억해야 겠다. --["상규"]
* 아쉽게도 오늘 한 것의 코딩 내용의 수준이 저에게 좀 높았던 거 같습니다. 그래서 중반 이후 거의 선호형이 맡게 되었고, 갈수록 소외되는 식이 되었습니다. 음... 다음부턴 팀 프로그래밍 중 팀원간에서 뒤쳐지지 않도록 노력해야겠습니다. 좋았던 점이라면 팀 프로그래밍이 어떤 거다...는 걸 알 정도의 경험이랄까...입니다. --영동
* 팀프로그래밍을 하면서, 대화가 중요하단 생각을 했다. 형식적이지 않은 이런 저런 의사소통도 많이 필요하겠지만 어느정도의 형식이 갖춰진 대화를 하는 것이 필요할 것 같다. 예를 들면, 언어선택의 문제에 있어서 대충 한 두명이 이걸로 짤까?? .. 그럴까?? 이런 대화보다는 정식으로 사람들한테 자신이 아는 언어와 생각을 물어서 종합적인 결론을 도출하는 과정이 필요했던거 같다..그리고 자신이 알고 있는 것과 모르고 있는 것에 대해서 스스로 잘 알필요가 있을듯..;; 또 다른 사람의 입장을 한번더 생각하는 맘도 필요한 것 같다. --은지
["프로그래밍잔치"]
- EightQueenProblem . . . . 9 matches
이 문제를 프로그래밍을 해서 풀어보세요. 어느 언어를 사용하든 상관없습니다. 가장 자신있는 언어를 사용하세요. 그리고, 맞는 결과를 구했다면 다음 칸을 채워주세요. 비교적 간단한 문제이지만, 문제를 해결해 나가는 중에 자신의 실력과 사용하는 도구, 프로그래밍 과정, 디자인 방법 등에 대해 생각해 볼 기회가 될 것입니다. 모든 후배들에게 꼭 한번 시도해 볼 것을 권합니다. 이 경험에 대해 스스로 분석해 보고, 남들과 경험을 공유하고 차이를 살피고(AnalyzeMary), 또 토론하면서 '''아주 많은 것을 배우게 될 것입니다.''' 어쩌면 이제까지의 프로그래밍 경험에서보다 더 많은 것을 말이죠. 사실 이 실험의 진정한 가치는 문제 자체보다 이 문제가 가능케 하는 자기 관찰/반성과, 타인과의 논의에 있는 것인지도 모릅니다. --김창준
''참고로, 소요시간이 모두 얼마냐 하는 것이 크게 중요한 것은 아닙니다. 중요한 것은 그 동안 얼마나 가치있는 무엇을(얼마나 더 얼마나 덜) 했냐는 것이죠. 남들보다 시간이 오래 걸리고, 코드가 길어졌다고 슬퍼하십니까? 아닙니다. 오히려 '''축하드립니다'''. 당신은 그만큼 큰 배움의 기회를 만난 겁니다. 자신의 프로그램이 다른 사람들의 그것보다 월등하다고 자랑스러워하며, 더 이상 배울 것이 없다고 생각하십니까? 아닙니다. 당신은 자신이 이렇게 훌륭한 해를 구한 것을 남에게 설명해 줄 기회를 찾았습니다. 가르치는 것만큼 큰 배움도 없습니다(이 때 자신이 만든 프로그램 자체를 설명하려고 하는 것보다 자신이 어떤 사고과정과 어떤 프로그래밍 성장 과정을 통해 최종물에 도달했는지를 반추해보고 설명해주는 게 더 좋겠습니다). 또 다른 사람들은 무엇 때문에 자신과 같은 좋은 해를 얻지 못했는지 분석을 할 여유가 있습니다.''
오늘의 교훈 : 감기약먹고 프로그래밍하지 말자. --; - 임인택
* 자신의 프로그래밍 과정을 돌아보고(self-reflect), 남들의 그것과 비교해볼 기회 제공을 위해
* 프로그래밍을 잘한다는 것은 단순히 빠른 시간 안에 짧고 기발한 프로그램을 만들어낸다는 것이 아니라는 것을 인식시켜주기 위해
* 프로그래밍을 잘하는 사람은 프로그래밍과 사고 과정에 어떤 효율적 체계(system)들을 여러가지 갖고 있다는 것을 알려주기 위해
- ProjectZephyrus/ClientJourney . . . . 9 matches
* PairProgramming 을 할때 가장 답답해지는 상황은 잘 이해 안가면서 넋놓고 있을때랑, 둘이 같이 있어도 Solo Programming 하느 사람 마냥 혼자서 문제를 끙끙거리며 풀려고 하는 모습이다. 꼭 문제를 스스로 삽질해서 풀어야만 자기실력이 향상되는것일까? 다른 사람에게 올바른 질문을 할 수 없는 사람은 혼자서 문제 푸는데에도 오래걸리게 된다고 생각한다. 상대방에게 질문을 하면서 자신이 모르는 것 자체를 구체화하고 (문제 자체가 모호한상태 자체가 문제다. 무엇이 문제인지, 자신이 모르는 것이 구체적으로 무엇인지 모르면서 어떻게 문제를 해결할까? 자신이 모르는게 버클리소켓 전체 사용과정인지 소켓 API의 인자들을 모르면서 네트웍 프로그래밍을 할 수 있을까. 그런사람들에게 '지금 모르겠는게 뭐지?' 라고 물으면 80-90%는 '다 몰라요' 이다. 모르겠는 부분에 대해서 하나하나 구체화시켜나가라. 구체화시킨 예로서 생각을 해봐도 좋을것이다. 시나리오를 만들어보면서, 그림을 그려보면서, 아니면 자기 자신이 그 시스템의 일부가 되어 보면서.) 다른 사람의 아이디어를 자신의 사고에 붙여나가면서 '더 좋은 방법' 을생각해낼 수는 없을까? 언제나 문제의 답을 내는 방법은 '이사람의 방식' 아니면 '저사람의 방식' 뿐일까.
* PairProgramming 의 교대시간을 5분으로 해봤다. 한 사람이 5분동안 해당 부분을 플밍하다가 다 못짜면 다음사람이 다시 5분의 시간을 가지고 이어서 짜고 하며 교대로 프로그래밍을 이어나가는 (마치 릴레이경주와도 같다) 방법이다. 사람들에게 제안했을때 그 표정들이 심상치 않다;; 그래 너희들은 실험용 모르모트다;; 흐흐.
(그 이후 창섭이가 와서 영서에게 JTree관련 Solo Programming 을 시켰는데, 말이 안되는 프로그래밍을 했다. -_-; 아직 영서가 Swing 에 익숙하지 않아서 그런데, 앞의 프로그램은 어떻게 만들어졌을까 의문이 들 정도였다; 아마 5분 간격 플밍시에는 서로 앞 사람 소스작성을 한 것을 기준으로 붙여나가는 방식이기에 그 흐름을 잡고 프로그래밍을 해서 Pair 가 성립이 가능했던것 같다는 생각도 해본다. 이는 처음 프로그래밍을 하는 사람과의 PairProgramming 시 궁리해봐야 할 사항인듯)
영서에게 JTree 관련 프로그래밍에 대해서 설명을 했다. JTree와 관련하여 미리 공부하라고 하긴 했는데, 아직은 힘든가 보다. 오늘 작업시간이 5시 30분부터 9시 (저녁 30분가량), 약 3시간 가량이 걸렸던것으로 기억된다. 팀으로 모일 수 있는 시간이 흔하지 않으므로, 각 필요한 부분에 대한 학습과 예제 코드등의 JDK에 대한 SpikeSolution 에 대해서는 집에서 해 봐야 할 것이다. 작업 시간에 학습시간을 같이 할애 하기엔 시간이 그리 넉넉치 않다. [[BR]]
중반 어느정도 대부분의 목표 코드가 나와서 나머지를 채워넣는 과정에 대해서는 Solo 로 영서에게 시켰는데, 아직까진 프로그래밍에 익숙하지 않은 듯 싶다. 자꾸 해당 부분을 플밍하려는데에서 같은 부분이 구현된 소스코드가 있음에도 불구하고 자꾸 책을 찾아보려고 한다. 자신감의 차이였을까. 해당 부분에 대해 꼭 코드를 외워서 플밍하려 하지 않았으면 한다. '하려는 일' -> '각 언어별 구현 방법 순서 잡아보기' -> '구현' 의 과정을 거치거나, 해당 부분에 대해서 응용할 수 있는 이전에 만들어진 코드 (책의 코드 말고 현재 '작성된' 코드)를 들춰보고 생각해봤으면 하는 생각이 든다. [[BR]]
간단한 에코서버 관련 프로그래밍을 하는 것인데, 일부러 할일을 주석으로 쓴 뒤, 한단계씩 넘어가는 방법을 써 보았다. TDD 까지는 아니지만, 작은 단계단계를 만들고 확인해보는 것이 더 효과적인 것 같다. [[BR]]
Client 팀은 일단 메신저와 관련한 자신들의 디자인을 설명해보는 시간을 가졌다. 사람들은 프로그래밍을 하기 전에 어떤 스타일로 구상을 하게 될까. Agile Modeling 에서 봤던가. 모델 보다는 모델링이 중요하다고 했었던 이야기. 모델링을 해 나가면서 자신의 생각을 정리하고, 프로그램을 이해해 나가는 것이 중요하기에.[[BR]]
- 데블스캠프2005/주제 . . . . 9 matches
|| 금 || ? || [신재동], [임인택] , 이정직[fnwinter] || 실습까지 3시간 예상 , 윈도우즈 프로그래밍 || 네트워크 이용한 게임 정도 ||
난 뭘하지? 윈도우즈 프로그래밍? -- f n w i n t e r
정직이형~ 윈도우즈 프로그래밍 세미나 해주세여~ 세미나 한번 하고 나서 테트리스 같은거 짜는 과제 한번 내주는것도 회원들의 도전의식에 자극을 줄 수 있을거 같은데여, 말 들어보니깐 형 있을때의 데블스 캠프에서는 윈도우즈 프로그래밍 좀 알려주고 나서 테트리스 짜는거 했다던데여 - [상협]
시간에 여유가 있으면 이런 시간을 마련해 보는것도 좋을 듯 합니다. 일종의 '토의'인데요. 신입생, 재학생 (여름방학정도 되면 신입생, 재학생을 구분하는 의미가 축소되기는 하지만 여기서 표면적으로나마 준비하는 사람들-참가하는 사람들을 구분해서 표현할만한 마땅한 표현이 없으므로 패쓰)들이 그동안 경험해 왔던 '프로그래밍 공부'에 대한 이야기를 나눠보는 것입니다. 이러한 이야기를 나눠봄으로써 참가자들간에 많은 피드백이 이루어질 것이고, 이러한 경험들은 앞으로 공부를 하는데 있어서나 프로그래밍을 하는데 있어서 소중한 양분이 될 것입니다.
프로그래밍을 경험한 기간에는 차이가 있겠지만 오히려 이 점이 이 토의를 더 영양가 있게 만들수 있다고 생각합니다. 신입생이 대학에 입학해서 처음으로 프로그래밍을 접했다고 했을 때, 대부분이 프로그래밍을 공부한 방법은 수업시간에 특정 언어에 대해 수업을 들은 것이 대부분이고 코딩경험도 수업시간에 내준 레포트를 작성하는 것이 전부일 것입니다. (물론 개인적으로 열심히 한 사람들도 있겠지요) 재학생의 경우에는 자신이 그동안 어떠한 방법으로 공부를 했으며, 어떻게 했으면 더 좋았겠다. 라는 생각을 분명히 갖고 있을 것입니다.
- 데블스캠프2010/첫째날/후기 . . . . 9 matches
* 비록 프로그래밍 완전 허접하게못하지만 위키나 SVN둘다 재밌네요 후훗..^^ - [양아석]
* 새롭게 경험해보지 못한 Rur-ple이라는 파이썬을 이용한 프로그래밍 언어 환경을 사용해보았습니다. 평소에 프로그래밍 언어에 대해 머리아프다고만 생각했었는데 이렇게 로봇을 이용해 움직이는것을 보니 좀더 재미있게 프로그래밍을 할 수 있었습니다. 머리를 많이 사용해서 그런지 좀 어지럽긴 하지만 평소에 C나 자바 대신 이것으로 프로그래밍을 한다면 코딩도 잘하고 성적도 잘 받을수 있을것만 같네요ㅎㅎ - [허준]
* 우수법의 위대함을 재발견했어요ㅋㅋ창설했던게 프로그래밍에 도움이 많이되었던거 같네요.. 막 상황에 맞춰서 끼워맟추는 프로그래밍 실력이 엄청 늘었다는 느낌이랄카ㄷㄷ 준석이형 진짜 수업준비 엄창 잘해주셨어요ㅋㅋ 미로 대박이었어요!! 피카츄는 긔엽긔 -[백주협]
* 러플을 처음 접해보았는데 흠 역시 일반적인 프로그래밍 언어와는 달랐습니다. 그리고 작년에 했던 NXT가 생각나더군요. 교육용 언어에 대해 별 생각이 없었는데 오늘 해보고 나니 새로운걸 배워본다는 취지로는 좋았습니다. 언어 자체의 문법도 간단할뿐더러, 결과를 바로바로 확인해볼 수 있더라구요. 한가지 아쉬운 점이 있었다면 러플을 해본적도 없는 제가 도우미로 나섰던 점... ㅋㅋㅋㅋ 그래서 파이썬과 러플이 무슨 관계인지 확인을 못해봤습니다. 궁금했었는데... ㅋㅋㅋ - [박성현]
* 리눅스 커널 링크드 리스트를 구조체를 이용해 설명해주셨었는데, 집중도가 떨어진 상태라 잘 듣지 못했습니다. 기억나는 것은 구조체를 넘기는 것 보단 구조체 포인터를 넘겨라 입니다. 이 말의 의미가 &Struct보단 &(pStruct)를 하라는 의미인가요? 많이 헷갈리더라구요 ㅜㅜ 템플릿에 대한 이야기도 잠깐 해주셨는데, 기억나는건 '템플릿은 좋다'입니다. 그런데 저는 '프로그래머가 자신의 편안을 추구하면 결국 유저에게 그 부담이 간다.'는 생각을 하고 있거든요. 설계가 아닌 문법사용에 있어서요. 앞으로 일반화 프로그래밍을 공부해볼 생각인데, 일단 먼저 오늘 생긴 의문을 풀어줄 부분을 공부해봐야겠네요 ㅋㅋ - [박성현]
- 정모/2011.4.4 . . . . 9 matches
* 내가 너보다 더더더더더더 허접했을 때 페어프로그래밍이 많이 도움 되었었음. 그리고 내가 2학년이었을 땐 너보다 더더더더더더더더 코딩 못함. 너무 걱정하지 말고 내가 도움은 많이 안되지만 튜터링을 통해서라도 내가 아는 것은 열심히 가르쳐주겠음 - [Enoch]
* 페어 프로그래밍을 하기 때문에 생산성이 높아지고 속도가 빨라진다는 점은 동의합니다. 하지만 페어 프로그래밍의 더 큰 장점은 속도보다는 프로그램의 완성도라고 생각했습니다. 빨리 짜는게 최우선이었던 이번 코드레이스가 속도의 향상을 보여준 시간이었다면, 다음 페어 프로그래밍은 프로그램의 설계 혹은 완성도가 향상됨을 더 느끼게 해주면 좋겠다는 의미였습니다. - [Enoch]
* 간만의 페어 프로그래밍이라 재밌었습니다. 개인적 성향일지도 모르겠지만 혼자 코딩하면 코딩 참 싫어하는데 페어 프로그래밍을 할 때는 상대적으로 훨씬 즐겁게 하는 편입니다. 상대가 성현이라서 더 긴장하고 집중하고 했던 것도 큽니다 ㅋㅋㅋ (미안해, 성현아 누나가 허접해서...) 중간에 수경이에게 뭐라 한마디 하면서 정모 분위기를 흐린건 죄송합니다. 다른 학우들은 어떻게 생각했을지 모르겠습니다. 수경이가 못할 말을 하진 않았고, 방호실 아저씨가 옳다고는 전혀 생각하지 않습니다만 제 입장에선 전달법이나 태도는 대표자로서 맞지 않다고 생각했습니다. 학생회장이 조금만 부주의하게 언행을 일삼아도 비난받고 총무부장이 자기도 모르는 새에 조금만 빈틈을 보여도 욕을 먹듯이 리더이고 회장이고 제로페이지의 얼굴이기 때문에 싫어도 가져야 하는 자세가 있습니다. 한번 생각해보셨으면 좋겠습니다. - [Enoch]
* 오늘 OMS를 들으면서 이전 기억을 되돌아 보았습니다. 정말 팀플에서 서로간의 신뢰가 깨졌을 때 극단적으로 나올 수 있는 상황이 생각나더라구요. 서로 같은 테이블에 앉아서 마주보고 앉아 각자의 노트북을 보고 프로그래밍을 하고 있을 때, 상대가 하는 것을 전혀 신뢰하지 못하고 계속 의심하게 되는 상황을 겪어봐서 그런지, '''서로를 신뢰하는 것'''이 정말 중요하다는 걸 다시 한번 깨닫게 됩니다. 페어 프로그래밍을 하면서 느꼈던건, '''''(비록 시간이 촉박할지라도)''문제다! 라는 인식을 하게 되면 잠시 멈추고 생각하는 시간을 가져야 할 것 같다'''는 것입니다. Deadline처럼 느껴졌던 3분이라는 시간에 너무 연연하게 되어 Tunnel Vision에 빠져버렸습니다...OTL... 단계를 밟아나가는 단 맛에 빠져, 점점 벌집으로 다가가고 말았죠 ㅋㅋㅋ 몇 단계만 더 진행됬으면 결국 벌집을 건드리고 말았을겁니다 ㅋㅋㅋㅋ 아무튼 재미있고 유익한 시간이었습니다. 후기를 적으면서 느낀 것인데, 전 바로적는 후기보다, 하루~이틀 정도 지난 후에 다시 되돌아보면서 쓰는 것이 훨씬 넓은 시야에서 생각하면서 쓸 수 있는 거 같네요 ㅋㅋ - [박성현]
* 음, 이번에 강의실 대여 논의때 "내가 너무 돈을 밝히는 듯한 언행을 해 오진 않았는지"를 생각해볼 수 있었습니다. 답은 "YES"고요....... 자중해야겠습니다. TDD의 경우는, 제가 평소 뭔가를 만들 때(특히 OOPHP Application) 흔히 사용하던 방식이라(클래스를 만들고 밑에 작동 코드를 적은 다음 브라우저로 확인) 조금만 더 노력하면 다른 곳에서도 사용할 수 있을 것 같습니다. 페어 프로그래밍은...... 소현 누님. 결코 누님의 탓이 아닙니다....... <( ºДº)> - [황현]
- DevelopmentinWindows . . . . 8 matches
(앞으로 Windows 서브시스템 기반의 프로그래밍을 윈도우즈 프로그래밍이라고 하겠다.)
=== 윈도우즈 프로그래밍 ===
* 하드웨어 독립적 프로그래밍
=== 하드웨어 독립적 프로그래밍 ===
* 하드웨어를 신경쓰지 않고 프로그래밍 할 수 있다.
* 윈도우즈 프로그래밍을 하기 위해 필요한 함수들을 제공
* 윈도우즈 프로그래밍에서는 대부분의 라이브러리가 DLL로 제공된다.[[BR]]
- 데블스캠프2005/RUR-PLE . . . . 8 matches
* 프로그래밍 언어를 배우는것은 재밌어야 한다는 취지에서 만들어진 환경이다. 실제로 해보면 재밌다. 도움도 많이 된다.
* Python 언어를 사용하여 컴퓨터 프로그래밍 언어를 배울수 있는 환경이다.
* 실제로 로봇에 프로그래밍 해서 그 로봇이 현실에서 자신이 프로그래밍 하는데로 움직이는것을 보면 정말 좋겠지만 여건이 안되는 만큼 -_-; 화면으로나마 그 로봇이 움직이는 것을 보면서 프로그래밍 해볼 수 있다. 여기에서 작성하는 코드들이 무슨 쓸모가 있을까 싶기도 하겠지만, 추후에 실제 로봇의 동작을 프로그래밍해서 넣는다면 여기서 쓰이는 방식과 비슷하게 넣을것이다.(하드웨어적으로 복잡한것을 명령어로 추상화 시킨다음에 그 명령어을 적절하게 복합적으로 사용하여 원하는 행동을 로봇이 하게 만드는 식으로..) 즉 말그대로 로봇 프로그래밍을 간접적으로나 해볼 수 있다.
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
- 새싹교실/2012/주먹밥 . . . . 8 matches
* [김준석] : 기존 기획했던 커리큘럼 프로젝트 결과물 3개 이상. 그리고 C언어의 파일입출력 및 네트워크 프로그래밍까지 가르치겠다. 그외 잡식은 +@
* [박도건] : 컴퓨터에 관한 여러가지 잡 지식 + 프로그램 사용법 습득, 네트워크 프로그래밍, 게임 만들어보기.
* [용상훈] : 기본적인 c언어와 안드로이드,아이폰 어플을 만들기 프로그래밍 사용법 습득.
* 박도건 - 게임했습니다. 카트라이더 했습니다. 1주일 내내. 프로그래밍했습니다. map editor만드는거 굉장히 노가다에요. 빡쳐요. 학교수업은 선대가 매우 짜증나요. C는 할만해요. 교수님이 훅훅 지나가는데 전 상관없음. 나 좀 짱임. 고등학교 친구들과 만나서 막창고기 먹음. 돼지 되겠음.
* 답변 : 객체 지향 프로그래밍(Object Oriented Programming)입니다. 프로그래밍 설계 기법이죠. 전에도 얘기했듯이 프로그래밍 설계 기법은 프로그래머의 설계를 도와 코드의 반복을 줄이고 유지보수성을 늘리는데 있습니다. 하지만 생산성이 있는 프로그래머가 되고싶다면 API를 쓰고 알고리즘을 병행해서 공부해야 된다는것을 알리고 싶습니다. 그리고 단순히 Class를 쓰는것과는 다른기법입니다. 객체 지향적으로 설계된 C++이나 Java에서 Class를 쓰기때문에 Class를 쓰는것이 객체지향으로 알고있는 사람들이 많습니다. 그건... 아니죠. 절차지향 프로그래밍과 다른점은 차차 가르쳐 드리겠습니다. C에서 Class란 개념이 설계상으로 발전했는지 알려드렸습니다. 함수 포인터와 구조체였죠. 그게 원형입니다.
- 코드레이스/2007/RUR_PLE . . . . 8 matches
* 프로그래밍 언어를 배우는것은 재밌어야 한다는 취지에서 만들어진 환경이다. 실제로 해보면 재밌다. 도움도 많이 된다.
* Python 언어를 사용하여 컴퓨터 프로그래밍 언어를 배울수 있는 환경이다.
* 실제로 로봇에 프로그래밍 해서 그 로봇이 현실에서 자신이 프로그래밍 하는데로 움직이는것을 보면 정말 좋겠지만 여건이 안되는 만큼 -_-; 화면으로나마 그 로봇이 움직이는 것을 보면서 프로그래밍 해볼 수 있다. 여기에서 작성하는 코드들이 무슨 쓸모가 있을까 싶기도 하겠지만, 추후에 실제 로봇의 동작을 프로그래밍해서 넣는다면 여기서 쓰이는 방식과 비슷하게 넣을것이다.(하드웨어적으로 복잡한것을 명령어로 추상화 시킨다음에 그 명령어을 적절하게 복합적으로 사용하여 원하는 행동을 로봇이 하게 만드는 식으로..) 즉 말그대로 로봇 프로그래밍을 간접적으로나 해볼 수 있다.
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
- 타도코코아CppStudy/0724/선희발표_객체지향 . . . . 8 matches
* 객체지향이란 프로그래밍을 좀더 현실생활과 비슷하게 하기 위해 나온 개념이다.
=== 절차적 프로그래밍과의 비교 ===
|| '''절차적 프로그래밍''' || '''객체지향 프로그래밍''' ||
|| 구조적 프로그래밍 || 객체지향 프로그래밍 ||
또한, 일반적인 구조적 프로그래밍 언어(structured programming language : C, Pascal 등)도 객체지향 개발에 활용될 수 있는가 하면 객체 지향 데이타베이스 관리시스템(OODBMS)이 개발의 도구로 이용될 수도 있다.
객체지향의 초기개념은 프로그래밍 언어로부터 시작됐으나, 이젠 실세계를 바라보는 새로운 시각으로 그 중요성이 변화하고 있으며, 개발언어에 너무 종속될 필요는 없다.
- 타도코코아CppStudy/객체지향발표 . . . . 8 matches
* 객체지향이란 프로그래밍을 좀더 현실생활과 비슷하게 하기 위해 나온 개념이다.
=== 절차적 프로그래밍과의 비교 ===
|| '''절차적 프로그래밍''' || '''객체지향 프로그래밍''' ||
|| 구조적 프로그래밍 || 객체지향 프로그래밍 ||
또한, 일반적인 구조적 프로그래밍 언어(structured programming language : C, Pascal 등)도 객체지향 개발에 활용될 수 있는가 하면 객체 지향 데이타베이스 관리시스템(OODBMS)이 개발의 도구로 이용될 수도 있다.
객체지향의 초기개념은 프로그래밍 언어로부터 시작됐으나, 이젠 실세계를 바라보는 새로운 시각으로 그 중요성이 변화하고 있으며, 개발언어에 너무 종속될 필요는 없다.
- 프로그래밍은습관이다 . . . . 8 matches
= 프로그래밍은습관이다 =
* 대학원 다니는 아는 선배에게 디버깅 세미나 할건데 뭐 도움되는 말좀 해달라고 하니깐 '프로그래밍은 습관이다' 란 말을 해줬다. 공감이 가는 말이다. 프로그래머에게 프로그래밍은 습관인거 같다. 마치 자전거를 처음 탈때는 엎어지고 그러다가 한번 타기 시작하면 그 다음부터는 쉽게 타는것이랑 비슷한거 같다. 난 군대 가기전에 군대 갔다 오면 프로그래밍 하는것을 다 까먹을텐데 하고 걱정을 했었다. 그런데 군대 가서 프로그래밍에 더 발전은 없었지만 마치 자전거 타는 법을 배우고 한동안 안타다가 다시 타는것과 같았다. 세세한 문법같은것은 생각이 나지 않더라도, 그런것을 어디서 찾을지와, 어떤식으로 적용할지는 몸으로 체득했기 때문에(삽질ㅜㅡ ) 몸이 기억을 했다. - [상협]
프로그래밍은 습관이다. 그래서 학습과 반(反)학습 모두 쉽지 않다. 특히 NoSmok:UnlearnTheLearned 가 어렵다. 세살 버릇 여든 가기에, 나쁜 프로그래밍 습관은 프로그래밍 언어가 바뀌어도 유지된다.
- 프로그래밍잔치/첫째날후기 . . . . 8 matches
(이 부분은 Document Mode 이며, 해당 한 일들을 기억하는 사람들끼리 기억을 모아서 만듭니다. ^^ 그날 했었던, 일어난 일들에 대해 기억나는대로 간단히 정리해봅시다. 너무 길어지면 '프로그래밍잔치첫째날' 식으로 페이지를 나누어도 좋겠고요. )
일단 간단하게 ["프로그래밍잔치"] 소개를 하고 위키에서 ~~ 한 부분에 대해 설명을 하였다.
사람들은 서로가 고른 언어로 만든 Hello World, 구구단 을 시연하면서 각자의 개발환경, 프로그래밍 방법 등을 보여주었다. 그리고 JuNe 은 중간에 Smalltalk (Squeak)의 OOP 적인 특성, Scheme, Haskell 의 함수형 언어 페러다임에 대해 보충 설명을 했다.
-- 어느정도 Python 을 익숙하게 써본 뒤, Python 이전에 썼던 언어들과 비교해보면 각 언어들을 더 잘 비교해볼 수 있지 않을까 생각해. 요새 자바프로그래밍을 주로 하면서 느꼈던건, '만일 자바가 인터프리터 쉘에서 실행되는 언어라면, 나의 프로그래밍 작업 방식은 어떻게 바뀔까?' 하는것. ["Python"], ["Jython"] 을 꾸준히 쓰면서, 컴파일언어에서 느끼지 못한 재미를 (즉각적으로 결과 반응이 올때 특히!) 느껴서..~ --["1002"]
* 의외로 몇몇 언어들이 공통되는 부분도 있는거같군요...(제 수준에서) 그리고 Haskell은 언어보다 수학에 가까운 듯한 느낌이었습니다. 전혀 모르는(?) 언어를 사용하여 첫번째 프로그래밍할 때 가슴이 참 떨리더군요. - 영동
그리고 언제나 열려있는 자세가 중요하다는 걸 느끼면서 프로그래밍 잔치를 마쳤다, 열려있는 자세....... -- 세연
["프로그래밍잔치"]
- 1002/TPOCP . . . . 7 matches
try & error 식으로 접근. 프로그래밍전 미리 생각하거나 머릿속으로 그려보지 않음
프로그래밍 뒤에 잊어버린다.
프로그래밍에 대해 배운다. (문제상황이란 그의 개발 과정중 부수적인 일들)
프로그래밍의 각 부분에 대해 동일한 능력과 수고가 필요하다고 생각하는 것을 잘못이다.
'분석, 플로우 다이어그램 작성, 코딩, 테스팅, 도큐먼트' 로 분리하는 사고는 여러 면에서 프로그래밍을 왜곡시킨다.
프로그래밍 프로젝트를 정의된 단계들로 세밀하게 나눌 수 있지만, 좋은 아이디어는 아니다.
프로그래밍 프로젝트에 대한 전체 한바퀴를 돌고 난뒤, 프로그래머들이 작업하는 더 올바른 방법으로 작업을 나누는 것을 시도한다.
- SeminarHowToProgramItAfterwords . . . . 7 matches
''그래서 PP나 XP의 과정을 Jazz에 비유하곤 합니다. 그리고 한번 유의어사전을 프로그래밍시 일주일간만 사용해 보세요. 그리고 거기서 무엇을 더 배웠는지 이야기해보면 참 좋겠네요. --김창준''
* [재동]:여러 사람과 처음으로 프로그래밍을 같이 하면서 커뮤니케이션이 얼마나 중요한 지를 확실히 알았습니다. 이제부터는 '말 많은' 프로그래머가 되어야 겠습니다 ^^ 오늘 세미나 정말 수고하셨습니다
* 흥미로운 것은 시끄러운 프로그래밍이였다는 것이였습니다. 혼자서 하는 프로그래밍(PairProgramming을 알고나니 새로운 개념이 생기는군요. 원래 Programming이라는 것은 혼자하는 거였는데, 이제 프로그래밍하면 pair인지 single인지 구분을 해주어야겠군요)을 하는 경우에는 팀원들이 소란스럽게 떠들면 ''아 지금 설계하고 있구나''하고 생각하고, 조용해지면 ''아 지금 코딩하고 있구나..''하는 생각이 들었는데, PP는 끝까지 시끄럽게 하는거라는 느낌이 들더군요. 그렇게 대화가 많아지는 것은 코딩에 대한 이해도의 증가와 서로간의 협력 등 많은 상승효과를 가져올 수 있다는 생각을 했습니다.
* 그리고 관찰하던 중 PairProgramming에서 Leading에 관한 사항을 언급하고 싶습입니다. 사용하는 언어와 도구에 대한 이해는 확실하다는 전제하에서는 서로가 Pair에 대한 배려가 있으면 좀더 효율을 낼 수 있을꺼라 생각합니다. 배려라는 것은 자신의 상대가 좀 적극적이지 못하다면 더 적극적인 활동을 이끌어 내려는 노력을 기울어야 할 것 같습니다. 실습을 하던 두팀에서 제 느낌에 지도형식으로 이끄는 팀과 PP를 하고 있다는 생각이 드는 팀이 있었는데. 지도형식으로 이끄는 팀은 한 명이 너무 주도적으로 이끌다 보니 다른 pair들은 주의가 집중되지 못하는 모습을 보인 반면, PP를 수행하고 있는 듯한 팀은 두 명 모두 집중도가 매우 훌륭한 것 같아서 이런 것이 정말 장점이 아닌가 하는 생각이 들었습니다. 결국 PP라는 것도 혼자가 아닌 둘이다 보니 프로그래밍 실력 못지 않게 개인의 ''사회성''이 얼마나 뛰어냐는 점도 중요한 점으로 작용한다는 생각을 했습니다. (제가 서로 프로그래밍중에 촬영을 한 것은 PP를 전혀 모르는 사람들에게 이런 형식으로 하는 것이 PP라는 것을 보여주고 싶어서였습니다. 촬영이 너무 오래 비추었는지 .. 죄송합니다.)
- SoftwareEngineeringClass . . . . 7 matches
* 컴퓨터 공학과 전공 수업을 통틀어 다섯 손가락 안에 꼽을 수 있을 정도로 중요한 역할을 하는 과목이다. 그러나 중앙대학교 컴퓨터 공학과에서 이 과목의 위상은 그다지 크지 않은 듯 하다. 내가 생각하는 첫번째 문제는 교재에 있다. 두번째는 비현실적인 실습내용이다. 구체적이고 실용적인 실습이 필요하다. 세번째는 학생들의 인식부족이다. 소프트웨어 공학 수업이 자신의 프로그래밍 커리어에 얼마나 많은 실질적 효용을 줄 수 있는지 전혀 깨닫지 못한다. 물론 이것은 대부분 수업 자체의 문제에서 연유한다.
* 본인은 거의 독학으로 SE 공부를 했다. 수업시간에 구조적 프로그래밍(structured programming)에 대해 설명을 들었을 때는 전혀 감흥이 없었고 졸음까지 왔다. 기억나는 내용도 없다. 하지만 스스로 공부를 하면서 엄청난 충격을 받았다. OOP는 구조적 프로그래밍의 패러다임을 완전히 벗어나지 못했다! 구조적 프로그래밍을 Goto 제거 정도로만 이해하는 것은 표피적 이해일 뿐이다! 구조적 프로그래밍 하나만 제대로 익혀도 내 생산성은 엄청나게 향상될 것이다! (참고로 정말 구조적 프로그래밍이 뭔지 알고 싶은 사람들은 다익스트라의 6,70년대 이후의 저작들을 읽어보길 권한다. 칸트 철학을 공부하는 사람이 칸트의 1차 저술을 읽지 않는다는 게 말이 되겠는가.) --김창준
* 나의 생각에 SE 수업을 제대로 배우고 있다면 학기가 지나면서, 혹은 최소한 학기가 끝난 후에 내가 혹은 내 팀이 프로그래밍 과제(꼭 해당 수업 것만 말고)를 하는 "생산성"에 향상이 있어야 한다. 아니 적어도 그런 과제를 수행하는 과정을 이전과는 다른 각도에서 볼 수 있어야 한다. 이것이 Here And Now의 철학이다. 조그마한 학기 프로젝트 정도를 진행하는 데에 소프트웨어 공학은 필요없다고 생각할런지 모르겠으나, 작은 것도 제대로 못하면서 큰 것을 논한다는 것은 어불성설이다 -- 특히 프로젝트 규모가 커질수록 실패확률이 몇 배 씩 높아지는 통계를 염두에 둔다면.
- ZP도서관 . . . . 7 matches
|| Flash Action 액션스크립트 활용사전 || 장동화 환재현 || 정보문화사 || [이승한] || 이것도 프로그래밍 ||
|| Windows NT 프로그래밍 || Julian Templeman || 정보문화사 || ["1002"] || 한서. Wrox 번역판 ||
|| 자바 네트워크프로그래밍 2ed || Merlin Hughes 외 ||Manning||["혀뉘"],["erunc0"],["구근"]||인포북 번역서||
|| C언어 프로그래밍(원서명: The C Programming Language) || Brian W.Kernighan, Dennis M.Ritchie || Prentice-Hall || 도서관 소장(대영사 번역판본) || 프로그래밍언어 ||
|| The Art of Assembly 2nd Edition || Randall Hyde || Not printed yet || http://webster.cs.ucr.edu/ || 프로그래밍언어 ||
|| Quick Python Book || Daryl Harms, Kenneth McDonald || Manning || 도서관 소장 || 프로그래밍언어 ||
- 데블스캠프2011/셋째날/후기 . . . . 7 matches
* 약간 늦게 도착해서 초반 설명을 약간 듣지 못하고 짜게 되었네요. 이 프로그램이 파이썬을 배울 수 있는 용도로 짜여있다고 했는데, 명령어들은 NXT프로그래밍 명령어랑 정말 비슷했다고 생각했어요- (창설의 악몽이 되살아났다?) 간단한 설명을 듣고 1 주워담기를 위해 1을 놓아야하는데, 그게 귀찮아서(프로그래머적 '귀차니즘'면모 발현) 놓는걸 짜고 먹는걸 짰네요. 그 뒤에는 소트를 해야 했는데, 저는 한쪽으로 쭉 밀어 넣으면 좋겠다고 생각했으나.. 그건 소트라기보단 줄맞춤(?)에 가까운거였다고 하시더군요. 아무튼 치완이랑 제가 그걸 짜서 문상 GET! 끝나고나서는 미로도 짰는데 로봇녀석이 이미 방향이란걸 가지고 있다보니 C로 짠거보다 훨씬 쉽게 짰네요.
== 윤종하, 황현/난해한 프로그래밍 언어 ==
* 상당히 난해한 프로그래밍이었습니다. 틀에 박힌 언어가 아니라 기상천외한 다양한 언어들이 신기하기도 했고 재미있었지만 코드를 다시 짜고싶진 않네요.. 코딩을 하는중에도 앞에 해놓은게 뭐한거였는지 가독성도 떨어지는게 아니라 아예 없는수준이고.. 그래도 기존에 많이 쓰이는 언어들의 소중함을 느끼게 해주는 시간이었습니다.
* 정말로 난해한 프로그래밍 언어였다. 프로그램도 난해하고, 세미나도 난해하고,,, 절대로 프로그래밍 하고 싶어지지 않는 언어들 이었다. 종하가 설명한 언어중에 비펀지로 피보나치수열을 짜는 미션을 받았는데 어떻게 해도 하나의 스텍으로 피보나치 수열을 짤 수가 없었다.
* 실제로는 보기만 해도 이해가 안 갈 독특한 프로그래밍 언어를 모아서 설명하는 시간이었습니다. 뭐, 유명한 Brainf**k이나 Befunde 등의 언어가 어떤 식으로 되어 있는지 알아보고 직접 써보고. 더 괴상한 언어들도 보고. 보면서 느낀 것은 역시 세상은 넓고 Geek들은 많다는 점이었겠군요. 사실 Esolang 위키에 있는 언어들은 아무리 봐도 만든 사람들이 재미있어서 만든 것 같은 느낌이었으니까요. 그리고 다들 생각했을 평소에 쓰는 프로그래밍 언어에 대한 고마움도 새삼 느꼈습니다. 그런데 이번 경험이 나중에 어떻게 도움이 될 수 있을까는...... 잘 모르겠군요 -_-;;; 앞으로는 어떤 언어를 봐도 무섭지 않게 되는 건가...
- 데블스캠프2012/첫째날/후기 . . . . 7 matches
=== [데블스캠프2012/첫째날/UI프로그래밍] ===
* GUI 프로그래밍 : 그래도 제대로 참여한 세션으로 GUI 부분은 참 신기했습니다. wpf인가? 하는 건 정말 편집할 때의 느낌도 그렇고 코딩이 아니라 디자인이라는 느낌을 주기 위해서 많이 노력한 느낌을 주려고 노력한 것 같더군요. C#이라는 게 좀 걸리긴 하는데, 하기에 따라서는 써 볼 만 할지도 모르겠군요.
* UI프로그래밍 : wpf의 블렌드가 신기했습니다. mfc나 스윙보다 훨씬 발전된 느낌. 보고 있으니까 이걸로 프로그램 만들면 편하겠다는 생각이 들어서 C#을 공부해보고 싶은 생각이 마구 들었습니다.
프로그래밍을 해야하는 신입생 대상(?)의 세션에서는 신입생들의 역량을 잘 알고 진행의 속도나 난이도를 조절해야 한다고 느꼈네요. 이론과 실습의 비율도 적정해야할 것 같구요. 올해 C프로그래밍 담당 교수님이 바뀌면서 후반부에 배우는 내용이 약간 달라진 것 같기도 합니다.
* 늦게 와서 C는 듣지 못하고 UI 프로그래밍부터 참여 했습니다. C로 UI를 만들 수 있는 툴을 배웠는데, 오늘 실습해본 툴은 C#툴이고 사양이 높은 툴인것 같아서 저사양의 다른 툴을 찾아보고 사용할 수 있을 것 같습니다. 내일 웹서버관련된 세미나를 진행하는것 같은데 늦지않고 일찍 와서 유익한 시간이 됬으면 좋겠습니다.
* c프로그래밍 시간에 배웠던 함수포인터를 연습해볼 수 있는 좋은 기회였습니다.
- 새싹교실/2011/데미안반 . . . . 7 matches
* C언어의 단점 중 low-level적 특성으로 프로그래밍을 하는데 많은 주의를 요한다 했는데, 실제로 잘못 사용한 사례는?
* 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 출처 링크! 클릭하세요:)]
* [박성국] - 이 수업이 C프로그래밍 강의에서 이해 안되었던 부분을 이해 할 수 있게 도와졌어요^^ 앞으로도 모르는것 많이 알려주세요~.
- 프로그래머의길 . . . . 7 matches
"어떻게 하면 프로그래밍을 잘 할 수 있습니까? 만약있다면 그 해답을 가르쳐 주세요"
프로그래밍에 대한 정의는 여러가지가 있지만, 필자는 이와 같이 말하고 싶다.
'프로그래밍이란 정열로 시작해 끈기로 끝나는 일련의 작업니다. 정열은 짧고 높지만 끈기는 길고 낮다.'
이 글을 읽고 있는 독자라면 어느 정도 프로그래밍을 해본 경험이 있을 것이다. 초보자라 함은 프로그래밍에 입문하고자 하는 사람을 말한다. 즉 컴퓨터 사용부터 천천히 배워나가고 있는 사람들이다. 이들은 특정 학원 혹은 학교의 정규 과정을 통해 동료들과 함께 배우기도 하고, 또는 개인적으로 학습해 나가는 경우도 있다. 초보자들의 공통점은 전문가들의 논쟁을 아직 이해 할 수는 없지만큰 관심을 갖고 있으며, 컴퓨터로 모든 일이 가능할 것이라는 부푼 기대에 차있다는 것이다. 여기서 그들의 기대감이 문제시 된다. 기대가 크면 클수록 돌아오는실망감은 비례한다.바로 컴퓨터로 할 수 있는 일이 한정돼 버리는 시점에서 더 이상의 진전이 없게 되는 것이다.
"프로그래밍이라는 것은 단순히 코딩한다는 의미보다는 컴퓨터를 이해한다는 의미로 받아들여야 한다."
지금까지 프로그래머가 걸어가면서 만나게 되는 세가지 벽에 대해서 살펴 보았다.물론 모든 이들이 이러한 벽을 만난다는 것은 아니다. 하지만 필자가 지금까지 프로그래밍을 해오면서, 그리고 많은 사람들과 같이 프로젝트를 진행해 오면서 경험한 일을 토대로 나름대로 정리해 본것이다. 아직 필자도 세번째 벽인 '''마음의 벽'''을 완전히 뛰어 넘었다고 생각하지 않는다. 만약 이벽을 뛰어넘는다면 또 다른 제4의 벽이 다가올지도 모른다.
- 프로그래머의편식 . . . . 7 matches
리눅스에서 프로그래밍을 오랫동안 해온 사람이 '난 윈도우 프로그래밍은 전혀 할 줄 몰라' 라는 것을 자랑스레 얘기한다. 그러면서 MS욕을 실컷하고 나서 vim에 대한 칭찬을 늘어놓는다. '난 윈도우에서도 vim을 깔아놓고 쓴다'면서 visual studio에 내장된 에디터를 어떻게 쓰냐며 이해못하겠다는 듯한 표정을 짓는다.
OS별로 시스템 API가 다르지만 따지고 보면 다 거기서 거기다. 한국에서 개라고 하는 것을 미국에서 Dog라고 하는 차이가 있을 뿐 OS가 다르다고 해서 프로그래밍하는게 완전히 새롭지 않다. 많은 OS에서 개발을 해보면 서로 놀랍도록 비슷하다는 것을 알 수 있다. 그러니, 새로운 OS에서 개발하는 것에 대해 두려워하거나 걱정할 필요 없다. 한가지 OS에 대해 제대로 알고 있다면, 처음보는 OS에서 개발하는 것도 90%는 이미 알고 있다고 생각해도 된다.
세상엔 리눅스에서 vi를 기가 막히게 쓰면서도 윈도우 프로그래밍도 잘하는 사람이 널리고 널렸다. 그러니, '난 윈도우따위에선 프로그래밍 안해'라는 걸 자랑스레 얘기해봐야 우스워 보일 뿐이다. 자기가 한심하다는걸 떠벌리는 셈이다.
이처럼 편식하는 것을 마치 guru인척 하는 것을 프로그래머들 사이에선 흔하게 볼 수 있다. OS나 에디터 뿐만 아니라 프로그래밍 언어, 패러다임, 라이브러리, 심지어는 키보드나 마우스에 이르기까지 자기가 선호하는 것만을 고집하며 그외의 것에 대해 베타적인 태도를 보인다.
해피 해킹 키보드를 쓴다고 다 guru가 되는게 아니다. vim을 화려하게 쓴다고 코딩을 잘하는 것도 아니다. 중요한 것은 프로그래밍의 본질에 대한 것이며, 그것은 플랫폼이나 언어를 뛰어넘는 것이다. 그것은 알고리즘이기도 하고 패턴이기도 하고 경험이기도 하다. 때론 수학이기도 하다.
- CppStudy_2002_1/과제1/Yggdrasil . . . . 6 matches
//458page 프로그래밍 연습 1번
//458page 프로그래밍 연습 2번
//458page 프로그래밍 연습 3번
//458page 프로그래밍 연습 4번(미완성->입력받을 때 초기화가 안 되어
//458page 프로그래밍 연습 5번
//458page 프로그래밍 연습 6번
- ProgrammingPartyAfterwords . . . . 6 matches
2002년 5월 19일 서강대에서 있었던 ["프로그래밍파티"] 후기 (see also ProgrammingPartyPhotos)
1시 40분 경 문을 열고 들어오는 이가 오늘의 Mentor 중 한명인 김창준씨와 신제용씨였다. 그들은 오늘 프로그래밍 파티의 경기 규칙이나 룰, 시간 같은것을 말해 주었다. 2시 10분경 상협군이 헐러벌떡 뛰어 왔다. 쫌 전에 창섭이와 혁기도 왔다.
시간이 좀 흘렀을 때, 희록님의 생각은 '우리 모두 이 프로그램을 짜는데서 왜 알고리즘이 사용되어야 하는지 모르고 있다. 이는 문제를 제대로 파악하지 못했다는 것을 의미한다' 라는 생각을 하였다. 그 때, 누군가가 입력 형식에 관해서 Mentor에게 물었다. 하지만 아쉽게도 입력형식에 대해서 명확한 답을 얻을 수는 없었지만, 몇가지 새로운 사실들을 알수 있었다. 하지만 진행은 계속 지지부진하게 되었다. 희록님은 다시 그것을 깨고자 "CRC카드를 한번 사용해서 문제를 다시 한번 생각해보자"라고 하였다. 우리는 CRC카드를 작성하기 시작하였고, 우리가 CRC카드를 이용해서 시뮬레이션을 실행해보고서는 요구사항을 분석하는데는 크게 도움이 되지 않았지만, 우리가 프로그래밍시에 어떤 객체들이 필요할지와 그 속성들에 대해서는 약간 명확해졌다.
그 때쯤인가, ZP#2팀의 Mentor이신 김창준님이 '슬쩍' 오셔서 Design이 잘 떠오르지 않는다면, 비슷한 아키텍쳐를 가진 문제를 풀어서 그 아키텍쳐를 재사용해 보라는 말씀을 하셨다. 하지만, 우리 팀원중 아무도 그것에 대해선 이후에 언급하지 않았다.(묵살되었다. --) 그러다가 우선 요구분석에 대한 이해를 높이고, 디자인을 상세화하기 위해서(디자인->코딩->디자인->코딩 단계를 반복하였다.) 코딩을 시작하기로 하였다. 상협군과 인수군은 매직펜을 맡았고, 희록군은 키보드를 맡았다. 희록군은 Unix환경에서의 Eclipse의 작업 문제로 인해 심각한 스트레스를 받고 있었다. 그러다가 컴퓨터를 한번 옮겼으나 그 스트레스를 줄이진 못했다. 아무래도 공동으로 프로그래밍 하는거에 익숙하지가 않아서 좀 서투룬 감이 있었다. 그래도 해야 겠다는 생각을 하고 문제의 요구 사항을 분석하고 어떻게 설계를 해야할지 의논했다.
중간 4시가 넘어간 즈음, 1002는 시간이 지체된다고 판단, 프로그래밍에 들어가기를 유도했다. '처음부터 디자인을 해 나가시는 방법도 있겠지만요. 디자인을 도출해 내기 위해 프로그래밍을 병행하시는 방법도 있습니다. 대강의 디자인이 나왔으면 약간 코딩해보신뒤 다시 모여서 재디자인해보세요.'
- SeminarHowToProgramIt . . . . 6 matches
애들러의 How to Read a Book과 폴리야의 How to Solve it의 전통을 컴퓨터 프로그래밍 쪽에서 잇는 세미나가 2002년 4월 11일 중앙대학교에서 있었다.
프로그래밍이란 것을 어떻게 하는가? 어떤 사고의 과정을 거치는가? 어떤 인지적 보조물의 도움을 받을 수 있는가? 어떻게 하면 프로그래밍을 더 잘할 수 있을까?
* TestDrivenDevelopment -- 프로그래밍의 코페르니쿠스적 전환
대상은 프로그래밍 경험이 부족한 분, 혹은 너무 많은 분.
처음에는 신입생 대상으로 Python 강의가 있다고 해서, 거기에 보탬이 될까 하는 마음으로 세미나를 해드리겠다고 했는데, 어떻게 중간에서 "프로그래밍 전반"에 대한 세미나로 성격이 변한 것 같습니다. 실습 중심으로 하게 될 것이고, 아무리 Python이 배우기 쉬운 언어라고 해도 Python에 익숙한 사람이 하나도 없는 페어가 두시간 안에 뭔가 다른 것을 (Python을 통해) 익힌다는 것은 어렵고, 또 효율적이지 못하기 때문에, 여러분들 자신이 가장 "자신있는" 언어를 사용하도록 하는 게 좋겠다는 생각을 합니다.
- 데블스캠프2009/월요일후기 . . . . 6 matches
* [송지원] - HTML, CSS라고 해서 단순히 웹 프로그래밍 언어인 태그들만을 생각했었는데 웹 표준의 개념과 기존 웹의 문제점에 대해 지적했다. 표준 웹은 두리뭉실하게만 알았던 개념이었는데 더 확실히 배울 수 있었던거 같다. 다만 도입부에서 기존 웹의 문제점과 웹 표준에 대해 설명하는 과정에서 말이 좀 어려웠던것 같다;;
* [김준석] - 단순하지만 있을건 있는 프로그램. Easy, Enjoy라는 개념이 어울린다. 프로그래머가 아닌 일반인(유치원생)도 이런 프로그램을 사용해봄으로서 나와 같은 프로그래머의 입장이 되어 쉽게(Easy) 즐길수(Enjoy) 있는 기회를 준것이다. 내가 1학년때 송기원교수님이 한 말이 떠오른다 "언젠가는 일반인도 쉽게 만들수 있는 프로그램 언어가 나올꺼다. 전화 프로그램 만들고 싶으면 사람하고 사람 그림 두개 따서 전화기 그림을 가운데 놓고 연결하면 이게 전화 프로그램이 되는. 그럼 너희들은 뭐 먹고 살래? 사람들이 머리만 조금 굴리면 알아서 딱딱 만드는 세상이 될텐데 아이디어랑 생각이 중요한거야." 딱, 이거 아닌가? 물론 프로그램 언어의 현상황에서 프로그래밍에 업을 달고 사는 사람에게 쉽고 즐긴다는 말은 저기 저 먼 안드메다에 있는 개념만큼 멀게 느껴지지만 마지막에 송지원학우님이 얘기해주신것처럼 프로그래밍이 단순히 어렵고 복잡한것을 뜻하는것만이 아니라 새로운 아이디어로 생각해 그 시각으로 바라보는것으로 개발자의 입장이되는 우리도 더 쉽고 재밌게 즐길수 있을것이다. 그렇지만 기본은 먹고 살아야지.
* [김수경] - 대안언어축제에서 Scratch를 접했을 때도 느낀 점이지만, 프로그래밍 언어를 처음 접한 사람에게 코딩을 친숙하게 해주는 정도로는 좋은 것 같아요. 그런데 이미 다른 언어를 어느 정도 쓸 줄 아는 사람에겐 제약이 많다는 것과 일일히 찾아서 드래그해야 한다는 점이 오히려 귀찮게 느껴지는 것 같아요. 누구나 쉽게 쓸 수 있는 툴은 기능이 아쉽고, 강력한 기능을 제공하는 툴은 복잡해서 쓰기 어렵고.. 이런 문제는 도대체 어떻게 해결할 수 있을까요ㅋㅋ 이건 Scratch에만 국한된 문제는 아니지만요;
* '''강소현''' - c언어에서 쓰이던 거를 블럭으로 쉽게 나타내, 프로그래밍하는 방법을 전혀 몰라도 활용할 수 있어 좋았어요. 게다가 그림을 이용해 간단한 애니메이션이나 게임을 만들 수 있어, 이번 수업 이후에도 자주 애용할 거 같아요.
* '''박준호''' - 새로운 프로그래밍언어를 배워봐서 재미있었다. 로보랩을 할때와 비슷한 느낌이라 더 좋았고 만약 C 언어의 함수를 다 모르고 그런 상태라면 이런 사람에게 친근한 고급언어가 더욱 쉽고 유용한거 같다.
- 데블스캠프2010/둘째날/후기 . . . . 6 matches
* 일반적으로 C 프로그래밍은 자신이 아는 출력(또는 원하는 출력)을 위해서 구조를 짜는데 PROLOG는 중간만 만들어 놓으면 답이 알아서 나온다는 상당히 특이한 구조를 가지고 있어서 꽤 신기했습니다. 근데 이건 좀 편견일지도 모르겠지만 어째 이건 뭘 만들기보다는 연구하기 위한 언어가 아닌가 싶네요. - [서민관]
* 프로그래밍 공포증이 있는 저로서는 역시 좀 무서운 시간이었습니다. 그래도 직접 해보면서 작년보다는 많이 늘었다는 것을 스스로 느낄 수 있어서 좀 뿌듯함도 있었습니다. 근데 앞으로 공부는 한참 더 해야겠네요. - [서민관]
= 게임 프로그래밍(강사: 남상혁) =
* 코딩을 하면서 프로그래밍 언어에 맞춰서 생각을 하고 있지는 않은가. 확실히 이런 부분은 조금씩 배움이 커져가면서 자신도 모르게 생기는 나쁜 습관이 아닌가 합니다. 그리고 생각해보면 스스로도 조금 그런 경향이 강해지지 않았나 합니다. 그런 것들은 바깥에서 말해주지 않으면 스스로 깨닫기는 힘든 만큼 자기 자신의 코딩 습관을 다시 돌아볼 수 있는 기회가 되었다고 생각합니다. 다만 후반의 코딩은 분위기가 좀 가라앉은 느낌이 있어서 너무 안타까웠어요. - [서민관]
* 단일 변화로 인한 수정이 발생했을 떄를 미리 예상하고 프로그래밍한다 - [윤종하]
* 2학년이지만 아직까지도 프로그래밍에 서툴고 흥미도 부족한데 세미나를 들으면서 많은것을 느끼고 깨닫게 된 것 같아요. 오늘 배운내용이 정말 전공을 공부하는데 있어서 꼭 기억해야겠네요. 가장 기억에 남는게 말하듯이 코드를 짜는것 그리고 '단일 변화가 발생했을 때 수정사항은 예측 가능한 곳에 있도록 해라'라는 말은 꼭 잊지말고 기억해야겠어요ㅎㅎ - [허준]
- 새싹교실/2012/startLine . . . . 6 matches
* 서민관 - 제어문의 사용에 대한 수업(if문법, switch.. for...) 몇몇 제어문에서 주의해야 할 점들(switch에서의 break, 반복문의 종료조건등..) 그리고 중간중간에 쉬면서 환희가 약간 관심을 보인 부분들에 대해서 설명(윈도우 프로그래밍, python, 다른 c함수들) 저번에 생각보다 진행이 매끄럽지 않아서 이번에도 진행에 대한 걱정을 했는데 1:1이라 그런지 비교적 진행이 편했다. 그리고 환희가 생각보다 다양한 부분에 관심을 가지고 질문을 하는 것 같아서 보기 좋았다. 새내기들이 C를 배우기가 꽤 힘들지 않을까 했는데 의외로 if문이나 for문에서 문법의 이해가 빠른 것 같아서 좀 놀랐다. printf, scanf나 기타 헷갈리기 쉬운 c의 기본문법을 잘 알고 있어서 간단한 실습을 하기에 편했다.
* 프로그래밍 패러다임 - 함수형 프로그래밍.
* 함수와 구조체 문법에 대한 복습과 '함수형 프로그래밍'에 대해서 다루었다. 복습은 시험이 끝나고 잊어버렸을 테니까 한 것이고 중요한 것은 뒤쪽에서 했던 함수형 프로그래밍 부분이다. 전체적인 내용은 프로그램을 의미단위(함수)로 쪼개는 의사코드를 적고 함수의 껍데기를 만든 후에 내용물을 채워 나가는 방식이었다. 개인적으로 내 새싹에서 꼭 다루고 싶었던 내용의 절반에 해당하는 부분이라 고민을 많이 했는데, 그래도 전하기는 잘 전한 것 같다. 다음으로는 가르쳐야 할 나머지 절반인 설계에 대한 실습을 좀 해 봐야 할 것 같다. - [서민관]
점점 C언어가 function 위주의 프로그래밍이라는 걸 더 깊이 이해하게 된다.
- 우리가나아갈방향 . . . . 6 matches
''DeleteMe) 오해의 소지가 있게 쓰긴 했네요. 본래의 의도는 (01들은 내가 한 이야기를 들어서 알겠지만) 스터디를 할때, 책을 미리 읽고 난 뒤의 생각이나 프로그래밍을 했을때의 경험들을 들고 올 생각을 하지 않고, 모이고 난 뒤에 그제서야 책을 읽을 생각을 한다는 점을 지적하고 싶었습니다. 모임자체를 하나의 시스템으로 보고 공부하지 않은 자신을 시스템으로 억지로 묶어보려고 하는 모습같아서.. 그 점을 지적하고 싶었습니다. 같이 공부했을때의 효율이 혼자서 할때보다 높기 위해서는 (장점을 가질 수 있으려면) 사전에 공부하려는 해당 부분에 대한 의미를 조금이라도 파악해두어야 한다고 생각합니다. --석천''
시대의 흐름을 바로 읽어 우리가 해야 할 것들에 대한 명확한 목표를 제시하고 서로 도와가며 공부할 수 있는 분위기를 조성하는데 주도적인 역할을 하길 바랍니다. 낯선 학문에 대한 설레임과 막연한 두려움 때문에 어느 곳부터 손을 대야 할 지 몰라 고민하는 신입생들이 많이 있습니다. 또 프로그래밍 언어 1~2가지를 익혔으나 그 다음에는 무엇을 해야하는지 내가 이 도구를 공부해서 무엇에 써야하는지 몰라 일관성 없는 학습만을 반복하여 제자리를 맴돌고 있는 친구들도 많이 있습니다. 우리 학회에는 훌륭한 선배님도 많이 계시고 능력있는 회원님들도 많이 있다고 자부하고 있습니다. 이런 분들이 배우고자 하는 회원들에게 방향을 제시하고 또 배우는 사람들은 자발적으로 학습하며 자신의 능력을 개발해 나가는 것이 중요합니다.
이번 방학에도 어김없이 프로젝트나 스터디가 열리고 있습니다. 프로그래밍 언어를 좀더 잘 다루려고, 공부나 프로젝트를 같이 해보는 경험을 쌓으려고, 자신이 공부해서 알고 있는 내용을 다른 사람에게 설명해주려고, 아니면 그냥 재미로 참여하는 분들이 많으리라 생각합니다. 그러는 가운데서 지식과 경험을 쌓을 수 있기에 제로페이지 활동은 현재로도 분명 값어치가 있습니다.
우리나라의 기업은 인턴쉽 제도가 발달되어 있지 않기 때문에, 대학생들이 방학이 되어도 자신의 전공과 관련된 경험을 쌓은 기회를 잡기가 쉽지 않아 보입니다. 그나마 아르바이트를 구하는 경우에는 프로그래밍 언어를 다루는 능력이 뛰어나고 경력이 있는 사람을 선호합니다. 그렇기 때문에 경력도 없고 프로그래밍 실력이 뛰어나지도 않은 대다수의 학부생이 방학 때 경력을 쌓기란 어렵습니다.
윗 글에서 ''게임이나 유틸리티 같이 쓸 목적으로 프로그램을 만드는 프로젝트''를 해야 한다는 말에 공감합니다. 실제로 저런 프로젝트를 하면서 프로그래밍 하는 재미를 느끼게 됩니다. 먼저 2학년 이상인 ZP 회원들부터 저런 프로젝트를 하는 모습을 후배들에게 보여줘야 한다고 생각합니다. -[상협]
- 이영호/개인공부일기장 . . . . 6 matches
☆ 구입해야할 책들 - Advanced Programming in the UNIX Environment, Applications for Windows, TCP/IP Illustrated Volume 1, TCP/IP Protocol Suite, 아무도 가르쳐주지않았던소프트웨어설계테크닉, 프로젝트데드라인, 인포메이션아키텍쳐, 초보프로그래머가꼭알아야할컴퓨터동작원리, DirectX9Shader프로그래밍, 클래스구조의이해와설계, 코드한줄없는IT이야기, The Art of Deception: Controlling the Human Element of Security, Advanced Windows (Jeffrey Ritcher), Windows95 System Programming (Matt Pietrek)
☆ 앞으로 공부해야할 책들(사둔것) - Effective C++, More Effective C++, Exeptional C++ Style, Modern C++ Design, TCP/IP 네트워크 관리(출판사:O'Reilly), C사용자를 위한 리눅스 프로그래밍, Add-on Linux Kernel Programming, Physics for Game Developers(출판사:O'Reilly), 알고리즘(출판사:O'Reilly), Hacking Howto(Matt 저), Windows 시스템 실행 파일의 구조와 원리, C언어로 배우는 알고리즘 입문
☆ 레퍼런스 - 리눅스 공동체 세미나 강의록, C언어 함수의 사용법(함수 모음), 데비안 GNU/LINUX, C사용자를 위한 리눅스 프로그래밍, Add-on Linux Kernel Programming, Secure Coding 핵심원리
2005년 7월 4일~7월20 완벽히 끝낸책 : 안녕하세요 터보 C, Teach Yourself C, C언어 입문 중,고급, C언어 펀더멘탈, 쉽게 배우는 C프로그래밍 테크닉
2005년 7월 21일~ 29 완벽히 끝낸책 : C++ 프로그래밍
- 20 (수) - C언어 책 6권 복습 끝냄. (안녕하세요 터보 C, Teach Yourself C, C언어 입문 중,고급, C언어 펀더멘탈, 쉽게 배우는 C프로그래밍 테크닉)
- 정모/2002.5.30 . . . . 6 matches
''두 사람을 한 컴퓨터 앞에 같이 앉혀놨다고 해서 PP가 되지는 않습니다. 그렇다고 PP에 규칙이나 방법이 따로 정해져 있는 것은 아닙니다. 두 사람이 같이 앉아있으면서 그 팀이, 그리고 두 사람 모두가 어떤 가치를 얻고 있다면 저는 PP라고 부르겠습니다. 그런데, 이렇게 되기까지에는 훈련이 필요하고, 또 언제나 개선하고 공부할 여지가 있습니다. 결국 PP도 "어떻게 타인과 잘 대화하고 잘 협력할 것인가"의 연장이니까요. 직접 일주일 동안 페어를 해보고, 남이 페어하는 것을 하루 정도 구경해 보면 아주 많은 것을 배울 겁니다. 설령 결론이 "페어는 저절로 된다"일지라도 말이죠. 프로그래밍을 40년도 넘게 한 사람이 좋다고 말하면 그것이 무엇이건 간에 최소 한 달 정도는 실험해 보자는 것이 제 원칙이자 그 분에 대한 예우입니다. 한 달 정도야 그 분의 수십년간의 피땀에 비하면 조족지혈이겠지만... --JuNe''
* PairProgramming 에 대한 오해 - 과연 그 영향력이 '대단'하여 PairProgramming을 하느냐 안하느냐가 회의의 관건이 되는건지? 아까 회의중에서도 언급이 되었지만, 오늘 회의 참석자중에서 실제로 PairProgramming 을 얼마만큼 해봤는지, PairProgramming 을 하면서 서로간의 무언의 압력을 느껴봤는지 (그러면서 문제 자체에 대해 서로 집중하는 모습 등), 다른 사람들이 프로그래밍을 진행하면서 어떠한 과정을 거치는지 보신적이 있는지 궁금해지네요. (프로그래밍을 하기 전에 Class Diagram 을 그린다던지, Sequence Diagram 을 그린다던지, 언제 API를 뒤져보는지, 어떤 사이트를 돌아다니며 자료를 수집하는지, 포스트잎으로 모니터 옆에 할일을 적어 붙여놓는다던지, 인덱스카드에 Todo List를 적는지, 에디트 플러스에 할일을 적는지, 소스 자체에 주석으로 할 일을 적는지, 주석으로 프로그램을 Divide & Conquer 하는지, 아니면 메소드 이름 그 자체로 주석을 대신할만큼 명확하게 적는지, cookbook style 의 문서를 찾는지, 집에서 미리 Framework 를 익혀놓고 Reference만 참조하는지, Reference는 어떤 자료를 쓰는지, 에디터는 주로 마우스로 메뉴를 클릭하며 쓰는지, 단축키를 얼마만큼 효율적으로 이용하는지, CVS를 쓸때 Wincvs를 쓰는지, 도스 커맨드에서 CVS를 쓸때 배치화일을 어떤식으로 작성해서 쓰는지, Eclipse 의 CVS 기능을 얼마만큼 제대로 이용하는지, Tool들에 대한 정보는 어디서 얻는지, 언제 해당 툴에 대한 불편함을 '느끼는지', 문제를 풀때 Divide & Conquer 스타일로 접근하는지, Bottom Up 스타일로 접근하는지, StepwiseRefinement 스타일를 이용하는지, 프로그래밍을 할때 Test 를 먼저 작성하는지, 디버깅 모드를 어떻게 이용하는지, Socket Test 를 할때 Mock Client 로서 어떤 것을 이용하는지, 플밍할때 Temp 변수나 Middle Man들을 먼저 만들고 코드를 전개하는지, 자신이 만들려는 코드를 먼저 작성하고 필요한 변수들을 하나하나 정의해나가는지 등등.)
일반적으로 피시실 등이나 세미나때에 선배들과 이야기하고, 선배들에게 조언을 들으면서 프로그래밍을 하는 것과 프로그램의 처음 작성부터 PairProgramming 을 하는 경우가 어떤 차이가 있을지 생각을 해보고 이러한 '페어가 저절로 진행되어서' 라고 결론을 내렸으면 합니다.
문제를 내 주고 난 다음에 선배들과 이야기하면서 프로그래밍을 하는 경우, Programming 의 주도자는 문제의 당사자인 후배가 됩니다. 하지만, 문제를 풀어나가는 순서 (즉, 문제를 받고, 컴퓨터 앞에 앉았을때부터의 작업 진행과정들)는 여전히 후배들의 순서를 따르게 됩니다.
- 타도코코아CppStudy/0724 . . . . 6 matches
* 구조적 프로그래밍
* 객체지향 프로그래밍
* 윈도우프로그래밍에 대해 간단히 : [CherryBoy]
* 구조적 프로그래밍
* 객체지향 프로그래밍
* 윈도우프로그래밍에 대해 간단히 : [CherryBoy]
- 1thPCinCAUCSE . . . . 5 matches
1회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회에 대한 자료.
혹시 여러가지 언어를 수용하는 경진대회가 궁금한 사람은 ICFP 프로그래밍 경진 대회(http://icfpcontest.cse.ogi.edu/ )를 한번 둘러보시기 바랍니다. 눈이 확 뜨일 겁니다. 특히 올해 주제는 로봇 프로그래밍입니다. 무척 흥미로운 주제지요.
수학 경진 대회건, 프로그래밍 경진 대회건 그걸 준비하는 사람들은 매일 비슷비슷한 유형의 문제들만 "최단시간내에" 풀어제끼는 훈련을 하고, 덕분에 어떤 해답 집합을 미리 외우고 있 습니다. 알고리즘 X하면 바로 무의식적으로 손 끝에서 해당 알고리즘을 구현한 모범 답안이 튀어나오게 자신이 프로그램 되어 있죠. 다 좋습니다만, 모든 사람이 그렇게 훈련받을 필요는 없지 않을까요?
See Also ["컴공과프로그래밍경진대회"]
- ACE . . . . 5 matches
ADAPTIVE Communication Environment. 플랫폼 독립적인 네트워킹 프레임워크. [Java]가 VirtualMachine 을 사용하여 플랫폼 독립적인 프로그래밍을 가능하게 하는 것 처럼 플랫폼에 상관없이 안정적이면서도 고성능의 네트워크 프로그래밍을 할 수 있도록 도와주는 프레임워크이다.
우리가 많이 사용하는 버클리 소켓 API 를 사용한다 하더라도, 이기종간 프로그래밍을 하기는 어렵다. 이는 플랫폼간 이식성이 결여되어있고 약간의 차이가 있기 때문에 이식성 높고 안정적인 프로그래밍을 하는데 많은 어려움을 주기 때문이다. 또한 이식에 성공한다 하더라도 이전의 성능을 완전하게 보장받을 수도 없다. 또한 이식을 고려하지 않고 단순하게 소켓 API 만을 사용한다하더라도, 개발자가 조심하지 않는 이상 소켓 API 는 개발중에 문제점을 일으킬 확률이 높다. 이는 소켓 API 가 개발중에 일어날수 있는 문제점에 대한 방지를 보장하지 않기 때문이다. 이러한 문제점을 해결하기 위해 수년간 개발되어온 프레임워크가 [ACE] 이다. [임인택]은 간단한 서버를 작성할때 조차도 [Java]를 많이 선호하였는데, [ACE] 를 알게되면서는 [ACE] 로 서버를 작성해 보고 싶다는 생각을 하였다.
[프로그래밍분류]
- CleanCodeWithPairProgramming . . . . 5 matches
|| 00:20 ~ 01:30 || Pair Programming || 시키는 대로 하는 묻지마 프로그래밍 ||
* 페어프로그래밍 - 박성현이 나에게 똥을 던져서 열심히 치웠습니다. - [정의정]
* 전체적으로 시간이 좀 부족한 느낌이 있어서 좀 아쉬웠습니다. 아마 현업이 실제로 그렇기 때문이겠지만... 페어 프로그래밍은 확실히 바쁜 상황에서 더 도움이 되는 것 같습니다. 정신이 없을 때 놓치기 쉬운 부분을 옆에서 잘 잡아주네요 - [서민관]
* Sonar와 Jenkins, maven... 실제로 이런 자동 빌드 시스템을 사용해본 적이 없었는데, 직접 보기 신기했습니다. 페어 프로그래밍도 재밌었습니다. 하지만 여전히 시간에 쫓기는 프로그래밍은 힘들더군요... - [박성현]
- CodeRace . . . . 5 matches
코드 레이스는 팀 단위 실시간 프로그래밍 경진 대회입니다. 온라인게임이나 바둑, 혹은 스포츠 중계를 컴퓨터 프로그래밍에 적용하면 어떨까요? 코드 레이스는 10여팀이 동시에 같은 문제를 두고 프로그래밍을 하고, 이 모습이 실시간으로 벽에 투영되며, 해설자들은 관중과 교감해가며 그들이 두는 코드 한 수 한 수를 해설하는 독특한 행사입니다.
자신의 프로그래밍 실력을 뽐내고 싶거나 혹은 뛰어난 프로그래머들의 모든 것을 현장에서 직접 느끼고 싶은 분들을 환영합니다. 프로그래밍도 하나의 엔터테인먼트가 될 수 있다는 것을 체감하실 수 있을 겁니다.
- CodeYourself . . . . 5 matches
요즈음, 신입생들이 숙제때문에 고민을 많이 하는 것으로 알고있다. 프로그래밍, 조금 더 구체적으로 말하자면 C언어, 에 대해서 전혀 모르는 상태에서 일기를 프로그래밍 형식으로 써 보라니. 신입생의 입장에서는 어이가 없겠지만, 나의 생각은 조금 다르다. 오히려 이러한 과제를 내 주신 교수님이 어떤 분인지 궁금할 정도로 흥미있고 유익한 과제라고 생각한다.
C언어로 일기를 쓰라는 숙제가 있었나요? 재미있네요. 그런데 이건 좀 어려운 과제 같습니다. 왜냐하면, 프로그래밍의 일상적 시간 흐름과 정반대가 되기 때문입니다. 무슨 말이냐면, 프로그래밍이라는 행위는 시간의 순방향입니다. 내가 작성한 프로그램은 미래에 일어날 사건(실행)에 대한 청사진이죠. 하지만 일기는 주로 시간의 역방향입니다. 과거에 일어났던 일들을 정리, 기록하는 성격이 강하죠. 프로그램으로 과거의 일을 기록한다는 것은 어찌보면 쉽지만 또 어찌보면 매우 어려운 문제일수도 있습니다. 신입생 입장에서는 시간의 흐름에 따라 일어났던 과거의 이벤트 연속을 적는 수준이면 될 것 같습니다. 아쉬운 것은, 이렇게 되면 조건 분기문을 활용하기가 어렵다는 점입니다. 힌트를 준다면, 리팩토링을 하면 가능합니다(내 하루의 중복을 어떻게 제거할지 생각해 보세요 -- higher-order function이 나올 정도면 상당히 진전된 것입니다). 어차피 과거의 기록 역시 "기술"(description)의 일종이고, 미래의 계획도 "기술"이니까요.
이런 훈련이 되면 "과거형 프로그래밍"이 가능해집니다. 마치 과거에 일어난 일에 대한 기술인 것처럼 프로그램을 작성하는 것이죠. 이것은 일종의 사고의 도구입니다. 이런 실험이 있습니다. 자신의 교수가 다가오는 여름휴가 때 뭘 할지 상상을 해서 종이에 적어보라고 학생들에게 시켰습니다. 다른 그룹의 학생에게는 그 교수가 이미 여름휴가를 다녀왔다고 가정을 하고 과거형으로 무슨 일을 했는지 적어보라고 했습니다. 후자의 그룹이 쓴 내용이 훨씬 더 풍부하고 자세했다고 합니다.
- JavaScript/2011년스터디 . . . . 5 matches
* 명령형 구조적 프로그래밍 언어로서의 자바스크립트
* 함수형 선언적 프로그래밍 언어로서의 자바스크립트
* 프로토타입 기반 객체지향 프로그래밍 언어로서의 자바스크립트
* [박정근] - javascript에 관한 전반적인 내용들을 배웠습니다. 지난 시간동안 javascript를 공부하면서 배웠던 내용들을 정리하는시간이 되었던것 같습니다. 게다가 이론으로는 알고잇던 프로토타입같은 내용은 실제로 구글개발자 툴의 콘솔을 이용하여 직접 보면서 설명을 들으니 확실히 이해되기도 하였구요ㅋ 관심가는 부분에는 함수형 선언적 프로그래밍인데 함수형 언어를 사용한 적이 없어서 그런 방식으로 프로그래밍 하는 것에 대해 신선함을 느끼고 더 알고 싶어졌습니다. 또 자바스크립트를 하면서 DOM에 관해서도 알아야 겠다는 생각이 들었습니다. 하아.. 공부할게 많네요ㅋ
- ProgrammingContest . . . . 5 matches
프로그래밍 컨테스트. ACM의 ICPC가 유명.
만약 자신이 K-In-A-Row를 한 시간 이상 걸려도 풀지 못했다면 왜 그랬을까 이유를 생각해 보고, 무엇을 바꾸어(보통 완전히 뒤집는 NoSmok:역발상 으로, 전혀 반대의 "極"을 시도) 다시 해보면 개선이 될지 생각해 보고, 다시 한번 "전혀 새로운 접근법"으로 풀어보세요. (see also DoItAgainToLearn) 여기서 새로운 접근법이란 단순히 "다른 알고리즘"을 의미하진 않습니다. 그냥 내키는 대로 프로그래밍을 했다면, 종이에 의사코드(pseudo-code)를 쓴 후에 프로그래밍을 해보고, 수작업 테스팅을 했다면 자동 테스팅을 해보고, TDD를 했다면 TDD 없이 해보시고(만약 하지 않았다면 TDD를 하면서 해보시고), 할 일을 계획하지 않았다면 할 일을 미리 써놓고 하나씩 빨간줄로 지워나가면서 프로그래밍 해보세요. 무엇을 배웠습니까? 당신이 이 작업을 30분 이내에 끝내려면 어떤 방법들을 취하고, 또 버려야 할까요?
특이한 점은 토너먼트 형식으로 제한된 시간내에 프로그래밍 대결을 벌인다는 거죠. 이긴자에게 상금을 줍니다만 미국외의 사람에겐 받을 자격이 없는 것 같기도 합니다. 스윙 애플릿을 다운로드 받아서 주어진 문제에 대해 자바, C++, C# 등으로 코딩할 수 있고 제대로 해결했는지 그 자리에서 바로 확인할 수 있습니다. -- 박지훈
- ProgrammingLanguageClass . . . . 5 matches
프로그래밍 언어 수업
수업내용: 프로그래밍 언어의 구현 & 구성요소에 대한 전반적 이해.
* ''Programming Language Pragmatics'' by Michael L. Scott : 이제까지 나온 프로그래밍 언어론 서적 중 몇 손가락 안에 꼽히는 명저.
프로그래밍 언어를 배우는 것은 사고와 표현의 방식을 하나 더 배우는 것이다. 따라서, 설사 해당 언어로 프로그래밍을 할 기회가 별로 없다고 해도, 판이한 언어를 하나 더 배우는 것은 가치있는 일이다. 동시에 무슨 언어를 배우느냐, 어떤 신택스를 익히느냐는 것은 크게 중요하지 않다. 언어는 변하고 사멸하고 신생하며, 유행도 바뀐다. 그보다 그런 언어 저변에 깔려있는 다양한 패러다임을 접하고 충분히 이해하고 적용할 수 있어야 한다. 하지만 이게 가능하려면 구체적인 언어라는 채널을 통하지 않을 수가 없다.
- TeachYourselfProgrammingInTenYears . . . . 5 matches
Pascal:3일간으로, Pascal 의 문법을 배우는 것은 가능할지도 모르는(유사한 언어를 이미 알고 있으면)가, 그 문법의 이용법까지는 충분히는 배울 수 없다.즉, 예를 들면 당신이 Basic 프로그래머이다고 하여, Basic 스타일로 Pascal 의 문법을 이용한 프로그램의 쓰는 법을 배울 수 있을지도 모르지만, Pascal 가 실제의 곳, 무엇에 향하고 있을까(향하지 않은가)를 배울 수 없다.그런데 여기서의 포인트는 무엇일까? Alan Perlis(역주1) 은 일찌기, 「프로그래밍에 대한 생각에 영향을 주지 않는 것 같은 언어는, 아는 가치는 없다」라고 말했다.여기서 생각되는 포인트는, 당신이 Pascal(그것보다 어느 쪽일까하고 말하면 Visual Basic 나 JavaScript 등의 (분)편이 현실에는 많을 것이다)를 그저 조금 배우지 않으면 안 된다고 하면(자), 그것은 특정의 업무를 실시하기 위해서(때문에), 기존의 툴을 사용할 필요가 있기 때문일 것이다.그러나, 그러면 프로그래밍을 배우는 것으로는 되지 않는다.그 업무의 방식을 배우고 있을 뿐이다.
=== 프로그래밍을 독습하려면 10년 걸린다 ===
여기서 프로그래밍으로 성공하기 위한, 나나름의 레시피를 소개하면(자):
프로그래밍에 흥미를 가져, 그것을 즐거움을 위해서(때문에) 할 것.그것이 충분히 즐거운 계속 것이면 , 10년이라도 기꺼이 계속할테니까.
- ZeroPageServer/Telnet계정 . . . . 5 matches
* 웹 프로그래밍을 할수 있다. 현재 zp서버에서 '''~/public_html/''' 이하 cgi 프로그래밍이 가능하다. ( ~ 은 자신의 디렉토리를 의미한다. )
* 종류 '''php, python, perl, jsp''' 프로그래밍이다. 하지만 jsp는 Server 관리자(["neocoin"]) 에게 문의하시면 상담하고 권한 설정 해 드립니다.
* Linux 프로그래밍을 할수 있다. 더불어 서버 프로그래밍을 할수 있다.
- 강성현 . . . . 5 matches
* 컴퓨터공학부 프로그래밍 경진대회 (2013 CPC) 문제 출제 (12.3)
* 컴퓨터공학부 프로그래밍 경진대회 (5.25)
* 컴퓨터공학부 프로그래밍 경진대회 (10.6)
* 컴퓨터공학부 프로그래밍 경진대회 (9.24)
* 컴퓨터공학부 프로그래밍 경진대회 (5.28)
- 데블스캠프2004/세미나주제 . . . . 5 matches
* 프로그래밍을 위한 기술들
* 3D 프로그래밍
* 컴퓨터 네트워크 (TCP/IP +네트워킹 프로그래밍)
* Linux (또는 UNIX) 기초. 간단한 커맨드들과 쉘 프로그래밍
* SeeAlso [프로그래밍잔치]와 해당 페이지의 계획 파트와 후기들
- 데블스캠프2011/첫째날/후기 . . . . 5 matches
* 형진이를 보면서 항상 많은걸 느낍니다. 비단 나의 동기라던가 실력이라던가 형진이의 인지도(?) 때문만이 아니라 자신의 현재 위치에 그치지 않고 언제나 이것저것 많은 시도를 하는것 같아요. 반면 저는 정체된(?) 개발자.... - 부연 설명을 하자면 저는 학교를 다니면서 프로그래밍보다는 그 외 경험 측면에서 이것저것 많이 겪어보려고 했었기에...
* 2009년에 Java와 JUnitTest를 주제로 진행했을 때 실습 미션을 잘못 준비해오고 시간이 많이 비었던 뼈아픈 기억 때문에 시간이 부족했음에도 불구하고 나름 신경을 많이 썼던 섹션이었는데 오히려 타임오버가 되었네요;; 프로그래밍보다 수학 시간이 되었던거 같은 실습시간.. (그래서 처음에 겉넓이를 뺐던 것이었는데 팀이 많아서 추가하고 으헝헝) 그리고 다들 프로그래밍을 잘해서 '''Unit Test를 굳이 하지 않아도 버그가 없었던''' 프로그램을 완성하는 바람에.. Unit Test의 필요성을 많이 체감하지 못한것 같아서 좀 아쉬웠어요. 역시 '''적절한 예제'''를 만들기는 어려운것 같아요.
* java를 이번학기에 수강을 하였기 때문에 어느정도 자신이 있었습니다만, 지원누나의 설명을 들으면서 역시 알아야 할것은 많구나 라는 생각이 들었습니다. 특히 SVN을 사용한 커밋과 JUnit은 팀플할때에도 많은 도움이 될 것 같아 좀더 공부해 보고 싶어졌습니다. 저번 java팀플때는 Github을 사용했었는데 SVN과 무슨 차이점이 있는지도 궁금해 졌구요. JUnit Test는 제가 실제로 프로그래밍 하면서 사용하였던 원시적인 test와 많은 차이가 있어서 이해하기 힘들었지만 이 또한 더 사용하기 좋은 기능인것 같아 점 더 공부해 봐야겠습니다.
* 툴을 잘 쓰는 것도 기술이라는걸 느끼게 해주는 시간이었다고 생각합니다. 학교 수준에서는 거의 그냥 이클립스만 주물러대는데 어떤 유용한 기능들이 있는지 잘 봤습니다. 개인적으로는 페어 프로그래밍으로 다른 사람의 코딩 방식을 볼 수 있었던 것도 좋은 경험이 됐다고 생각합니다.
- 데블스캠프2012/둘째날/후기 . . . . 5 matches
* [김민재] - 저도 그 동안 JavaScript를 Copy & Paste로 이용해 온지라.. JavaScript에 대해서는 깊게 이해해야겠다는 생각을 해 본 적이 없었는데, 이번 기회를 통해 짧지만 여러가지를 알 수 있었습니다. 특히 var abc=function()이 된다는 사실에 매우 놀랐습니다. 웹 프로그래밍을 위해 JavaScript를 열심히 공부해야겠습니다.
* [정종록] - 자바스크립트에 대해 아는게 별로 없어서 편견이 없기에 편견을 깨지 않고 그대로 받아들이는 시간. 다른언어 c나 자바 같은데서 못하던게 가능해서 신기했고 재미있었음. 문제는 새내기들이 피보나치를 못해서 당황스러웠지... 왜 피보나치하는데 다이나믹프로그래밍이 생각나는거냐 알고리즘 ㅋㅋㅋㅋ
* [김해천] - 신기했습니다. 근데 집중력이 떨어지고 말았네요. 인식을 이용한 게임은 여러가지로 나와있습니다만, 이런 걸 프로그래밍으로써 본 것은 처음이였습니다. 왠지 모르게 신기하다는 말을 자주 씁니다만, 정말로 신기한게 많은 하루였습니다!
* [정종록] - 유지보수가 불가능한 코드.. 진짜 환상적인 스킬들이었습니다. 재미도 있었고 신기한 코드도 보았고... 신입생도 재학생도 재미있게 들은것 같습니다. 근데 그 코드들을 보면 프로그래밍한 본인도 조금만 지나면 유지보수 못할듯... 그리고 그 스킬들을 썼다는거에서 부터 그 프로그래머는 머리가 참 좋은듯...
* [서민관] - 전에도 ZP 홈페이지에 올라왔어서 읽어봤었는데, 저런 코드를 짜면 본인도 유지보수가 불가능하지 않은가 싶네요. 그리고 새삼 느낀 거지만 역시 변수명이나 함수명이 프로그래밍에서 참 중요하지 싶습니다.
- 스네이크바이트 . . . . 5 matches
*자료구조공부 및 MFC프로그래밍
윈도우 프로그래밍에 필요한 약 300여 개의 클래스를 계층구조적으로 구현해 놓은 클래스 라이브러리이다.
=== 객체 지향 프로그래밍 ===
객체 지향 프로그래밍이란 한마디로 말해, 프로그램을 만들 때 이 세상의 오브젝트를 프로그램을 구성하는 기본 단위로 해서 만들겠다는 의미이다.
대형 프로그램을 작성할 때, 모든 것을 한꺼번에 생각해서 만들기는 너무 복잡하다. 그래서 작은 단위로 나누어서 만든다. 객체 지향 프로그래밍에서 그 단위가 바로 '클래스'이다.
- 위시리스트/130511 . . . . 5 matches
* 대규모 병렬 프로세서 프로그래밍, 저자: 데이비드 B. 커크,원메이 W. 후 (중요도: 4) -[김태진]
* 뇌를 자극하는 C# 4.0 프로그래밍 - [김민재]
* Visual C++ 2008 MFC 윈도우 프로그래밍 최호성 저 | 프리렉(이한디지털리) - [김민재]
* 안드로이드 프로그래밍 정복 (중요도 : 2) : 저자 : 김상형, ISBN : 9788968480034/9788968480041 - [안혁준]
* 세가의 신입 사원 교육 과정에서 배우는 게임 프로그래밍의 정석 (저자: 히라야마 타카시, 역자: 김성훈) - 아무리 생각해도 있어도 그만 없으면 도서관 가지라는 생각;; - [권순의]
- 이영호/64bit컴퓨터와그에따른공부방향 . . . . 5 matches
참고로, 어플리케이션 개발쪽에서는 다른 이야기들이 이슈가 됩니다. 순수하게 프로그래밍 부분만을 생각한다면(조금 개인적인 생각이 짙습니다만)
참고로 저는 82년부터 기계어(Machine Code)로 프로그래밍을 해본 사람입니다. 그렇지만 그 경험이 제가 현재 컨설턴트로, 프로그래머로 살아가는데 결정적 도움이 되었다는 생각은 들지 않습니다.
다양한 것을 접하라. 맞는 말입니다. 제가 고등학교 때 배운 수학이나 현대물리학 이러한 것들이 프로그래밍 하는데에도 많은 도움이 되고 있습니다.(또한 의식적이거나 무의식적으로 그러한 지식이 코드에 베여나오기도 하구요) 하지만 이렇게 다양한 것을 접하는 것은 대학 강의 자체에서도 할 수 있는 것이 아닐까요?
생각이 너무 한쪽에 치우신거 같네요. 아마도 저 말고 다른 선배님들도 저와 비슷한 심정(생각)으로 글을 쓰셨을거 같습니다. 선배님들 말이 어셈블러를 공부하지 말라? C++만 공부하라~~ 이렇게 들리셨나요? 저는 아닌거 같은데요. 조금만 더 생각하고 읽었으면 좋겠네요. 위에 쓰신 글들을 보니 어쩌면 프로그래밍에 관련해서 저보다 더 많이 알고 있으리라 생각되는데요. 우선 젤하고 싶은 생각은 남의 글을 비판적으로 읽는것도 중요하지만, 그사람의 입장에서 생각해보는게 좋을거 같군요. A라고 말했는데, B라고 들으면 안돼겠죠. 어셈을 익히고 C++을 익히는것도 좋습니다. 그렇다고 C++을 익히고 어셈을 익히는게 나쁜 방법이라고 생각하지는 않는데요..@,.@. 제생각에는 님은 "어셈을 꼭 인힌다음 C++을 익혀야돼" 라는 고정관념에 빠진듯 함니다. 어셈을 모른다고 프로그램을 적게 이해한다고 생각하지도 않구요. 제 의견이지만 특정 프로그램언어 보나는 알고리즘, 자료구조 이런것들이 더 중요하다고 생각합니다. 그리고 C++이 쉽다? 정말 그럴까요? 정말 C++이 어셈보다 쉽다고 생각하시나요? 이펙티스 C++이나 엑셀레이터 C++ 이런책들을 한번 읽어 보시는것도 좋을거 같네요. 머 주저리 주저리 쓰게 됐는데 어디까지나 제 생각이고, 다른사람들의 입장에서 글들을 한번 다시 읽어 보는것도 괜찮은 생각인거 같군요. - 상섭
상규의 생각에 전적으로 동의합니다. 시스템 프로그래밍에서 있어서 최고가 되는 데에는 영호군이 말한바도 한가지 방법이 되겠지요. 하지만 절 비롯한 많은 분들이 B 를 잘하려면 A 부터 탄탄히 닦아야 한다는 의미로 받아둘여질 수 있어 저로서는 동의하기 힘든 부분입니다. 다른 사람의 생각을 자신의 기준으로만 재는 것은 바람직하지 않다고 생각합니다 - 임인택
- 임베디드방향과가능성/정보 . . . . 5 matches
(소수의 천재들... 프로그래밍 제네레이터 --... 저걸 만들려고 아이디어를 가지고 있었는데 같은 생각을 하는 사람이 있었네... -_- 컴파일러 이론은 너무 어렵지만... 가장 먼저 만들 수 있을까...)
정부가 개입하면 시장 왜곡이 발생하여 윗분말씀처럼 웹디 꼴 나기 십상이죠. 임베디드는 핵심부품 설계가 힘들지 프로그래밍은 단순노가다 성이 강합니다. 정부가 띄우는거 막무가내로 조사도 안하고 진로결정하심 지금 웹디꼴 나니 조심하세요.
그리고 과거에도 CPU를 사용하여 제품들을 제어하는 업무가 많았는데.. 그것을 운영하는데 인터럽트나..무한루프를 이용하여 제어를 한 반면에..요즘에 임베디드 시스템이라고 하는것들은 간단한 운영체계를 도입한게 다른데.. 이것도..별것 아닌데.. 왜 임베디드 엔지니어니..뭐니떠드는지 잘 모르겠습니다. 그냥 마이크로 프로세서를 이용하는 땜쟁이들이 기본으로 익혀야할.. 노가다이고... 핵심 부품 예를들면 ARM7의 코어부분등은 핵심기술을 가진 회사에서 독점하고있어서..그걸 이용해서 칩을 파는 업자나.. 프로그래밍짜는 엔지니어나..그냥.. 그들의 하수인에 불과할수도 있겠네요..요즘에는 임베디드 OS도 객체지향을 이용하고.. 그래픽 라이브러리들이 잘 나와있어서 WIN CE나 윈도우즈에서 제어용 프로그래밍 짜는 수준의 단순노가다로 넘어가고있는 추세입니다.. 하여간에 이것도 다들 하니까.뭐.. 별 영양가 없는것 같습니다.. 모 업체에서.. 벼레별거 다할수있는 기술적인 능력이있는데.(암9보드에 하드도달고 액정도달고..달수있는것 다 달고..) 막상 그 보드를 만들어놓고 쓸데가 없답니다. 요즘 추세를 보니까..몇년전까지도 고급기술자의 업무였던.. PC에서 기계제어하는것들도..이젠 전문대졸업자나..고졸자가 주로하는 일이 되어버렸더군요.. 제 생각에는 미래에는 엔지니어가 그다지 많이 필요하지는 않을것 같습니다. 소수의 천재들이.. 프로그래밍 제네레이터.. 임베디드 칩 제네레이터 만들어서.. 가상현실상에서..뚝딱 뚝딱 맞추면.. 결과물이 떡하니.그냥 나와버리는 시스템이되고.. 다른 대부분의 경우에는 시스템이 거의모든 상황을 커버할만큼 고성능이되어버려서..별 예외조치에대한 필요성이 없는것이죠.. 엔지니어링 분야도..워드프로세서가 지구상에 몇개 안되는걸로 다 카바되는것처럼..그리될거같고.. 하여간에.. 기술분야에서도 극빈층에 속하는 재화를 소비만 하는 덧샘 뺄샘도 모르는 대다수의 사람과..극소수의 모든것을 다 할수있는 초기술을 가진 과학자들의 두가지 집단만이 살아남을듯 하네요.. 아마도 그런 과학자들에 의해 사육되겠지요...
- 프로그래밍 . . . . 5 matches
* 2005.11.18 [프로그래밍/Score]
* 2005.11.18 [프로그래밍/DigitGenerator]
* 2005.11.18 [프로그래밍/Pinary]
* 2005.11.20 [프로그래밍/장보기]
[프로그래밍/ACM]
- 프로그램내에서의주석 . . . . 5 matches
처음에 Javadoc 을 쓸까 하다가 계속 주석이 코드에 아른 거려서 방해가 되었던 관계로; (["IntelliJ"] 3.0 이후부턴 Source Folding 이 지원하기 때문에 Javadoc을 닫을 수 있지만) 주석을 안쓰고 프로그래밍을 한게 화근인가 보군. 설계 시기를 따로 뺀 적은 없지만, Pair 할 때마다 매번 Class Diagram 을 그리고 설명했던 것으로 기억하는데, 그래도 전체구조가 이해가 가지 않았다면 내 잘못이 크지. 다음부터는 상민이처럼 위키에 Class Diagram 업데이트된 것 올리고, Javadoc 만들어서 generation 한 것 올리도록 노력을 해야 겠군.
좌절이다. 일단 자네 의견에 동의 정도가 아니라 같은 의도의 말이었다. 위의 자네 말에 대한 내가 의미를 불확실하게 전달한거 같아서 세단락 정도 쓴거 같은데.. 휴 일단 다시 짧게 줄이자면, "프로그래머의 낙서의 표준"인 UML과 {{{~cpp JavaDoc}}}의 출발은 아예 다르다. 자네가 바란건 디자인 단위로 프로그래밍을 이해하길 원한거 같은데, 그것을 {{{~cpp JavaDoc}}}에서 말해주는건 불가능하다고 생각한다. Sun에서 msdn에 대응하기 위해(?) {{{~cpp JavaDoc}}}이 태어난것 같은데 말이다. [[BR]]
하지만, "확실히 설명할때 {{{~cpp JavaDoc}}}뽑아서 그거가지고 설명하는게 편하긴 편하더라."라고 한말 풀어쓰는 건데, 만약 디자인 이해 후에 코드의 이해라면 {{{~cpp JavaDoc}}} 없고 소스만으로 이해는 너무 어렵다.(최소한 나에게는 그랬다.) 일단 코드 분석시 {{{~cpp JavaDoc}}}이 나올 정도라면, "긴장 완화"의 효과로 먹고 들어 간다. 그리고 우리가 코드를 읽는 시점은 jdk를 쓸때 {{{~cpp JavaDoc}}}을 보지 소스를 보지는 않는 것처럼, 해당 메소드가 library처럼 느껴지지 않을까? 그것이 메소드의 이름이나 필드의 이름만으로 완벽한 표현은 불가능하다고 생각한다. 완벽히 표현했다면 너무나 심한 세분화가 아닐까? 전에 정말 난해한 소스를 분석한 적이 있다. 그때도 가끔 보이는 실낱같은 주석들이 너무나 도움이 된것이 기억난다. 우리가 제출한 Report를 대학원 생들이 분석할때 역시 마찬가지 일것이다. 이건 궁극의 Refactoring문제가 아니다. 프로그래밍 언어가 그 셰익스피어 언어와 같았으면 하기도 하는 생각을 해본다. 생각의 언어를 프로그래밍 언어 대입할수만 있다면야.. --["상민"]
DeleteMe)위에 좌절인 이유를 안써놨는데, 상세히 각 종류별로 생각을 적어 놓았는데, commit시에 충돌이 나서 먹어 버렸어. 하..하..하 ... 암튼 이번에 프로그래밍을 하면서 생각한 컨셉들을 서로 설명하면서 같이 말해야 겠군. [[BR]]
- 학회간교류 . . . . 5 matches
* 임베디드프로그래밍에 관하여.. : OS포팅부터 라이브러리 삽입, 기타 임베디드 장비에 관해 어떻게 다루는지 알려주세요. 태진이형 원츄! -- Netory:경태
* NDIS 프로그래밍에 관하여.. : 창선씨!~~ ?^^ -- Netory:경태
하드웨어 제작, 혹은 임베디드 프로그래밍, 혹은 유비쿼터스에 관련된 것들, 혹은 디바이스 드라이버 제작, OS제작, 그리드컴퓨팅, AdHoc, RFID, 블루투스, 영상인식, 생체인식, 음성인식, HCI, MPEG, 휴대폰관련프로그래밍.. 기타등등..
어떤 방식으로 해야 재밌으면서 서로에게 유익할 수 있을까? '같이 해서 좋을 거리들' 에 대해서.~ ZP 의 행사중 자주 하는 PairProgramming 이나, 혹은 이전의 서강대 MentorOfArts 에서의 프로그래밍 파티 처럼.
- AdvertiseZeropage . . . . 4 matches
* WikiWiki Seminar 를 하거나 프로그래밍 Seminar
* 학회의 성격을 분명히 한다. (일부 새내기들이 ZeroPage에 들어오면 선배들이 프로그래밍을 가르쳐줄 것이다 라고 생각하고 있습니다)
* 지금 ZeroPage의 성격은 무엇일까요? 프로그래밍을 가르쳐 주는 것이 전부가 되서는 안 되겠지만, 처음에는 주로 가르쳐주는 성격을 가지지 않나요?--[Leonardong]
- 제가 의미한 것은 '프로그래밍을 가르쳐주는곳. That's all.' 이었습니다. 제가 생각하는 ZeroPage는.. '같이 공부하면서 무언가를 얻을 수 있는곳' 아닌가요.? - [임인택]
- Android/WallpaperChanger . . . . 4 matches
일반적으로, 빠르거나 효율적인 코드라는 것은 메모리 할당을 최소화 하고, 꽉 짜인 코드를 작성하고, 특정 프로그래밍 언어나 잠재적으로 성능상 문제가 될만한 프로그래밍 어법들을 피하는 것을 말합니다. 객체지향 용어로 말하자면, 이러한 일이 가장 빈번히 일어나는 곳은 메소드 레벨이며, 이와 비슷하게 실제 코드 라인들과 반복문 등에서 발생합니다 .
전통적인 지혜에서는 Map을 사용해야 한다고 할 것입니다. Map 인터페이스를 구현한 어떤 것으로라도 구현체를 바꿀 수 있기 때문입니다. 전통적인 지혜는 전통적인 프로그래밍에는 맞습니다만, 임베디드 시스템에는 그다지 대단하지 않습니다. 인터페이스 참조를 통해 호출하는 것은 명확한 참조를 통한 가상 메소드 호출보다 2배 더 소요될 수 있습니다.
안드로이드에서는 나쁜 생각입니다. 가상 메소드 호출은 인스턴스 필드 참조보다 더 비용이 높습니다. 일반적인 객체 지향 프로그래밍 관습에 따르거나, 공용 인터페이스에서 getter, setter을 가지는 것은 이치에 맞습니다. 그러나 클래스 내부에서는 언제나 직접적으로 필드 접근을 해야합니다.
- AspectOrientedProgramming . . . . 4 matches
본 글은 Markus Voelter에 의해 작성된 글 중 일부이다. 원문은 AOP 기본 개념, Xerox PARC에 의해 구현된 Java의 AOP 확장 버전인 AspectJ 소개, Metaclass 프로그래밍과의 비교 등 총 3 파트로 구성되어 있으며, 번역문은 이 중 첫 번째 파트만 커버한다. 참고로 원문의 AspectJ 관련 코드는 상당히 오래된 문법에 기반하여 현재의 그것과 많은 차이를 보인다.
최근 몇 년에 걸쳐 객체지향 프로그래밍(Object-Oriented Programming, OOP)은 절차적 방법론을 거의 완벽히 대체하며 프로그래밍 방법론의 새 주류로 떠오르게 되었다. 객체지향적 방식의 가장 큰 이점 중 하나는 소프트웨어 시스템이 여러 개의 독립된 클래스들의 집합으로 구성된다는 것이다. 이들 각각의 클래스들은 잘 정의된 고유 작업을 수행하게 되고, 그 역할 또한 명백히 정의되어 있다. 객체지향 어플리케이션에서는 어플리케이션이 목표한 동작을 수행하기 위해 이런 클래스들이 서로 유기적으로 협력하게 된다. 하지만 시스템의 어떤 기능들은 특정 한 클래스가 도맡아 처리할 수 없다. 이들은 시스템 전체를 들쑤시며 해당 코드들을 여러 클래스들에 흩뿌려 놓는다. 이런 현상을 횡단적(cross-cutting)이라 표현한다. 분산 어플리케이션에서의 락킹(locking, 동기화) 문제, 예외 처리, 로깅 등이 그 예이다. 물론 필요한 모든 클래스들에 관련 코드를 집어 넣으면 해결될 문제이다. 하지만 이런 행위는 각각의 클래스는 잘 정의된(well-defined) 역할만을 수행한다는 기본 원칙에 위배된다. 이런 상황이 바로 Aspect-Oriented Programming (AOP)이 잉태된 원인이 되었다.
[프로그래밍분류]
- ExtremeProgramming . . . . 4 matches
ExtremeProgramming 은 경량개발방법론으로서, RUP 등의 방법론에 비해 그 프로세스가 간단하다. XP 에서의 몇몇 개념들은 일반적인 프로그래밍에서도 유용하게 쓰일 수 있다. 특히 TestDrivenDevelopment(TestFirstProgramming) 의 개념과 Refactoring, UnitTest는 초기 공부할때 혼자서도 실습을 해볼 수 있는 내용이다. 개인 또는 소그룹의 훈련으로도 이용할 수 있을 것이다.
Iteration 중에는 매일 StandUpMeeting 을 통해 해당 프로그램의 전반적인 디자인과 Pair, Task 수행정도에 대한 회의를 하게 된다. 디자인에는 CRCCard 과 UML 등을 이용한다. 초기 디자인에서는 세부적인 부분까지 디자인하지 않는다. XP에서의 디자인은 유연한 부분이며, 초반의 과도한 Upfront Design 을 지양한다. 디자인은 해당 프로그래밍 과정에서 그 결론을 짓는다. XP의 Design 은 CRCCard, TestFirstProgramming 과 ["Refactoring"], 그리고 StandUpMeeting 나 PairProgramming 중 개발자들간의 대화를 통해 지속적으로 유도되어지며 디자인되어진다.
개발시에는 PairProgramming 을 한다. 프로그래밍은 TestFirstProgramming(TestDrivenDevelopment) 으로서, UnitTest Code를 먼저 작성한 뒤 메인 코드를 작성하는 방식을 취한다. UnitTest Code -> Coding -> ["Refactoring"] 을 반복적으로 한다. 이때 Customer 는 스스로 또는 개발자와 같이 AcceptanceTest 를 작성한다. UnitTest 와 AcceptanceTest 로서 해당 모듈의 테스트를 하며, 해당 Task를 완료되고, UnitTest들을 모두 통과하면 Integration (ContinuousIntegration) 을, AcceptanceTest 를 통과하면 Release를 하게 된다. ["Refactoring"] 과 UnitTest, CodingStandard 는 CollectiveOwnership 을 가능하게 한다.
* SpikeSolution: 주어진 문제에 대한 구현의 난이도를 예측하기 위한 작은 실험 프로그래밍.
- HowToStudyDataStructureAndAlgorithms . . . . 4 matches
제가 생각컨데, 교육적인 목적에서는, 자료구조나 알고리즘을 처음 공부할 때는 우선은 특정 언어로 구현된 것을 보지 않는 것이 좋은 경우가 많습니다 -- 대신 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''도 강력 추천합니다. 전세계의 짱짱한 프로그래머/전산학자들이 함께 꼽은 "위대한 책" 리스트에서 몇 손가락 안에 드는 책입니다. 아마 우리 학교 도서관에 있을 것인데, 아직 이 책을 본 적 없는 사람은 축하드립니다. 아마 몇 주 간은 감동 속에 하루하루를 보내게 될 겁니다.). 만약 함께 스터디를 한다면, 각자 동일한 아이디어를 (같은 언어로 혹은 다른 언어로) 어떻게 다르게 표현했는지를 서로 비교해 보면 또 배우는 것이 매우 많습니다. 우리가 자료구조나 알고리즘을 공부하는 이유는, 특정 "실세계의 문제"를 어떠한 "수학적 아이디어"로 매핑을 시켜서 해결하는 것이 가능하고 또 효율적이고, 또 이를 컴퓨터에 어떻게 구현하는 것이 가능하고 효율적인지를 따지기 위해서이며, 이 과정에 있어 수학적 개념을 프로그래밍 언어로 표현해 내는 것은 아주 중요한 능력이 됩니다. 개별 알고리즘의 카탈로그를 이해, 암기하며 익히는 것도 중요하지만 더 중요한 것은 알고리즘을 생각해 낼 수 있는 능력과 이 알고리즘의 효율을 비교할 수 있는 능력, 그리고 이를 표현할 수 있는 능력입니다.
그리고 마지막으로, 자료구조/알고리즘 공부를 할 때에는 가능하면 실질적이고 구체적인 실세계의 문제를 함께 다루는 것이 큰 도움이 됩니다. 모든 학습에 있어 이는 똑같이 적용됩니다. 인류의 지성사를 봐도, 구상(concrete) 다음에 추상(abstract)가 오고, 인간 개체 하나의 성장을 봐도 그러합니다. be 동사 더하기 to 부정사가 예정으로 해석될 수 있다는 룰만 외우는 것보다, 그러한 다양한 예문을 실제 문맥 속에서 여러번 보는 것이 훨씬 나은 것은 자명합니다. 알고리즘/자료구조 공부를 할 때 여러 친구들과 함께 연습문제(특히 실세계의 대상들과 관련이 있는 것)를 풀어보기도 하고, ACM의 ICPC 등의 프로그래밍 경진 대회의 문제 중 해당 알고리즘/자료구조가 사용되는 문제를 -- 이게 가능하려면 "이 알고리즘이 쓰이는 문제는 이거다"라는 가이드를 해줄 사람이 있으면 좋겠죠 -- 같이 풀어보는 것도 아주 좋습니다.
왜 우리는 학교에서 "프로그래밍을 하는 과정"이나 "디자인 과정"을 배운 적이 없을까? 왜 해답에 이르는 과정을 가르쳐주는 사람이 없나? 우리가 보는 것은 모조리 종적 상태의 결과물로서의 프로그램 뿐이다. 교수가 어떤 알고리즘 문제의 해답을 가르칠 때, "교수님, 교수님께서는 어떤 사고의 과정을 거쳐, 그리고 어떤 디자인 과정과 프로그래밍 과정을 거쳐서 그 프로그램을 만드셨습니까?"라고 물어보자. 만약 여기에 어떤 체계적인 답변도 할 수 없는 사람이라면, 그 사람은 자신의 사고에 대해 사고해 본 적이 없거나, 문제 해결에 어떤 효율적 체계를 갖추지 못한 사람이며, 따라서 아직 남을 가르칠 준비가 되어있지 않은 사람이다. --김창준
- Java Study2003/첫번째과제/노수민 . . . . 4 matches
* 자바는 Sun Microsystems 에서 개발한 객체지향형 프로그래밍 언어
* 기존의 프로그래밍 언어에 비해서 간단하며 배우기가 쉽고, 핸드폰에서, 대형 금융권 시스템에까지 그 활용범위가 무궁무진한 프로그래밍 언어이자 플랫폼
다른 자바 프로그램에 의해 삽입(import)되어 사용될 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있다.
- Java Study2003/첫번째과제/방선희 . . . . 4 matches
* 2. 서블릿이나 JSP 는 J2EE의 구성원들로서 서버사이드 스크립트라고 합니다. JSP가 만들어진 이유가 뭐냐하면, 서블릿의 문제점을 해결하기 위해서라고나 할까... 웹 프로그래밍이란게 본질적으로 웹디자이너와의 협력이 불가피한데 서블릿의 경우에는 DISPLAY 부분을 수정하기 위해서 웹디자이너가 접근하기 어렵다는 단점이 있죠.. 이때문에 JSP가 만들어졌다고 알고 있습니다. JSP라는 파일은 웹 디자이너가 페이지를 수정하기 편하게 되어있다는게 장점이죠. JSP가 컴파일되면 서블릿이 됩니다.(이게 전부임...) 그리고 서블릿이 실행되면 실제 HTML 페이지가 클라이언트에게 전송되는 것입니다.
프로그래밍을 할때 데이터베이스에 대한 접근이라든가 또는 다른 시스템에 대한 참조를 할때 굳이 그 시스템에 대해서 세세하게 알필요 없이 그저 외부에 주어진 인터페이스만을 이용해서 접근하면 됩니다. (예를 들자면 어떤 기능을 이용할때는 이런 메소드를 호출하면 된다. 어떤 값을 저장하기 위해서는 이런 메소드로 접근하면 된다 정도). 빈즈에 대한 내용은
실제로 J2EE 프로그래밍을 해야지만이 알 수 있을듯 합니다.
* 자바가 가지는 단점이 하나도 없군요..;; 단점도 같이 조사해 주세요. 언어가 가지는 특징이 꼭 장점만 가지라는 법은 없구요 그 단점을 알아서 그것을 극복하여 프로그래밍 하는 것도 필요하답니다.
- JavaNetworkProgramming . . . . 4 matches
*다중 쓰레딩은 자바 네트워크 프로그래밍에서 매우 중요한 부분이다. ^^;;
=== Chapter6 스트림을 사용한 파일처리 프로그래밍의 진수 ===
*15장 : 클라이언트 프로그래밍 실전 예제
*17장 : 웹 서버 프로그래밍
- NextEvent . . . . 4 matches
이 토론 기법을 프로그래밍에 적용합니다. 그리고 축구중계의 개념을 집어 넣습니다. 안의 사람들이 프로그래밍을 하고 이것을 벽면에 프로젝션합니다. 해설자와 아나운서가 이 광경을 해설합니다. 프로그래밍을 하는 팀원들 중에 피곤한 사람은 밖으로 나올 수 있습니다. 해설자는 나오는 사람을 인터뷰하기도 하고, 방금 어항 속 물고기의 행동에 대한 해설을 해줍니다. "아~ 멋진 페인트 액션이에요~" "저게 바로 압박 프로그래밍이라는 것이죠." 사람이 비면 밖의 사람이 안으로 들어갈 수 있습니다. 또 밖의 사람이 안으로 들어가면 안의 사람 중 한 사람은 밖으로 나옵니다. 이런 식으로 팀원이 항상 유동적으로 바뀝니다. 대신 개발하는 프로그램은 계속 유지됩니다.
- OOD세미나 . . . . 4 matches
* 원래 정말 철저하게 절차지향적으로 프로그래밍 하던 사람이라... 오늘 내용이 좀 어려웠습니다;; 특히 그냥 들을때는 이해하면서 넘어가도, 실제 프로그래밍을 하려니까 막막하더라구요. 마지막 실습때 질문도 했었는데, 형은 if문 안에서 Comparer 객체를 선언해서, equals 함수를 사용하라고 하셨는데, 전 if문 안에서 객체를 생성할 생각조차 하지 못했었거든요. 그저 주어진 정보만 가지고, 반복문을 돌릴 생각뿐이었죠; 그런데 집으로 돌아오면서 생각해봤는데, 제가 짠대로 하면 '''“단일 변화로 인한 수정 사항을 예측 가능한 범위 내에 집중시켜라.”''' 라는 말과는 거리가 한 참 멀어지더라구요;; 예측은 가능한데 예측범위가 프로그램 소스 코드 전~부 라는거죠. 덕분에 "아, 정말 이런거 때문에 OOP를 하라는 거구나" 라는걸 알게 되었습니다 ㅋㅋ
오늘 했던 내용 중 정말 특히 기억에 남는건 '''"상속을 하기 위한 프로그래밍을 하지 말아라" & "패턴을 적용시키기 위한 프로그래밍을 하지 마라"''' 였습니다.
- OOP . . . . 4 matches
'''Object Oriented Programming''' : 객체 지향 프로그래밍. ~~객체를 지향하는 프로그래밍입니다.~~이 이전에 Object Based Progamming 것이 있었다.이 다음 세대의 프로그래밍 기법은 GenericProgramming이라고 이야기된다.
[프로그래밍분류]
- PythonLanguage . . . . 4 matches
'~을 하기에 적합한' 언어는 있어도 '~을 하기 위한' 것이란 없다. -_-; ('~을 하기 위한 API'는 존재할 수 있겠다.) 이녀석도 프로그래밍 언어이므로 프로그래밍을 하기 위한 언어이다. ^^; (PHP도 사람들이 웹프로그래밍으로만 접근해서 그렇지 원래는 shell script programming 도 가능하다. perl 보다 편하게 쓰는 사람들이 많다.)
* '''프로그래밍이 즐겁다.'''
- SmallTalk/강좌FromHitel/강의2 . . . . 4 matches
1.1. 프로그램과 프로그래밍 언어
리고 Smalltalk 프로그래밍에 대한 흥미를 느낄 수 있도록 짤막한 Smalltalk
명령의 실행방법과 Smalltalk 프로그래밍의 생김새를 어느 정도 파악할 수
다음 명령은 이미 프로그래밍 언어를 접해본 사람들에게 의미가 있을지도 모
- SmallTalk/강좌FromHitel/강의4 . . . . 4 matches
1.1. 프로그램과 프로그래밍 언어
이처럼 일터는 여러분의 Smalltalk 프로그래밍에 있어서 가장 자주 접하게
Smalltalk에서는 모든 것이 객체입니다. 그러므로 프로그래밍을 할 때에도
탐색기'에서 할 수 있기 때문에, '일터'와 더불어 프로그래밍을 할 때 가장
- TFP예제/WikiPageGather . . . . 4 matches
=== 프로그래밍 중 느낀점 ===
* Python 이라는 툴이 참 재미있는 녀석이라 생각한다. 방식이야 basic에서의 그것이겠지만, '인터프리터언어라는 것이 쉽고 편하다' 의 이유를 다시 생각하게 해준 계기가 되었다. 일반적으로 우리가 프로그래밍을 할 때는 (여기서는 C++이라 하자) Visual C++ 을 하나만 띄어놓고 프로그래밍 하는 경우가 별로 없다. 보통 product code 를 위한 하나, 해당 함수 기능의 부분구현 (임시코드 구현)을 위한 하나. 서버-클라이언트 프로그래밍인 경우에는 3개를 띄우는 경우도 다반사이다. Python 의 shell 은 임시코드를 구현하는데 매우 편리한 도구이다. (한편 이쯤되면 검문이 필요하다. VS 2-3개 띄우는 거랑 python IDLE을 2-3개 띄우는 거랑 다를바가 뭐냐.. --; 내가 말하고 싶은 것은 C++이나 PHP에 파이썬처럼 공통 인터프리터 쉘이 있었으면 하는 것. -_a 흐흐..) 암튼. 나는 모인모인소스를 보면서 제목 검색 관련 일부 코드를 짤라서 쉘에서 간단히 실행해보고 검토하고 실제 소스에 적용해볼 수 있었다.
- VisualBasicClass/2006/Exam1 . . . . 4 matches
4. 비주얼 프로그래밍에 대한 설명으로 가장 거리가 먼 것은?(1점)
④ 이벤트 중심의 프로그래밍 방식을 사용한다.
입력문자 : 비주얼_베이직_프로그래밍
_프로그래밍_________->_________6 byte
- WhatToProgram . . . . 4 matches
프로그래밍의 궁극은 "사용자"와 프로그램의 사용을 통해 그가 받는 "현실적 가치"에 있다. 프로그래밍을 하면서 사용자를 생각하지 않는 것은 도무지 아무 의미가 없다. 프로그래밍이라는 행위 자체가 성립하질 않는다. 골방에 틀어박혀 자기만족적인 지적 유희를 즐기는 해커가 아니라면 말이다. 우리는 사용자의 마음을 꿰뚫어야 한다. 여기에 있어 직접 사용자가 되는 것만큼 좋은 방법은 없다. 업계에서 혹자는 요구사항 분석시 사용자와 한 달 간 같이 생활해 보라는 말도 한다.
프로그래밍 기술보다도 중요한 것은 어쩌면 현실세계의 문제를 해결하는 것 그 자체일지도 모른다(도구와 기술은 본질적 문제를 해결해 나가는 과정으로서 필요에 따라 공부하면 되겠다). 우리는 정말 사용자를 위한 프로그램을 만들어야 한다. 그리고 이 공부는 가까운 곳에서부터 출발한다.
- neocoin/Log . . . . 4 matches
|| [http://www.ocu.or.kr/ Unix 프로그래밍(U)]|| [http://cvlab.cau.ac.kr/ Object Programming(OP)]|| [http://cvlab.cau.ac.kr/ 정보 표준화(IS)] ||.||
* ["프로그래밍잔치"] 기획, 진행
* 프로그래밍 언어론 4th 한서 ( Concepts of Programming Language ) : PL 수업
* 프로그래밍 언어론 한서 : p200
- 김정욱 . . . . 4 matches
* WinCE 프로그래밍.
* 윈도우 멀티미디어 프로그래밍.
* 게임 및 멀티미디어 프로그래밍.
* 가전 기기 및 소형 컴퓨터, 로봇 등의 프로그래밍.
- 데블스캠프2010/넷째날/후기 . . . . 4 matches
* 자바스크립트가 C언어와 많이 닮은것 같아서 매우 인상깊었습니다. 하지만 저의 C언어 실력이 미숙하여 하는데에 많은 어려움을 겪으면서 많은 생각을 하게 되었습니다. 일단 기본적인 C언어의 문법과 선언하는 함수 등을 자세히 공부하고, 자바스크립트에서의 C언어의 활용 방법을 좀더 연구해야겠다고 생각했습니다. 그리고 자바스크립트를 통해 비쥬얼 스튜디오보다 좀더 편리한 프로그래밍을 할수있어 더 좋은 내용의 프로그램을 만들수있다는 것에 대하여 생각해 보았습니다. 앞으로 좀더 열심히 공부해야겠다고 생각합니다. - [양아석]
* C++0x라는건 처음들어봤는데 프로그래밍 언어도 계속 발전하고있다는 사실을 알았고 콘솔프로그래밍이 모든것의 기초라는것도 다시한번 느낄 수 있었고 C++0x에 대한건 자세히 이해하지는 못했지만 대충 어떤거라는거는 알수있었던 뜻깊고 감동적인 시간이었습니다. - [경세준]
* 실재 프로그래밍의 프론티어에 계신 분의 강의이여서 스스로의 정체성과 미래를 생각 해볼수잇는좋은 기회가 되었습니다 ^^ 역시 제로페이지가 짱이에요 ! - [김정욱]
- 데블스캠프2011/다섯째날/후기 . . . . 4 matches
* 옛날에 c로 TCP/IP 프로그래밍 책을 본 적이 있었는데 그쪽에서 소켓을 이용하는 부분을 생각해보면 c에 비해서 파이썬쪽에서는 참 쉽게 되는구나 싶었습니다. 그리고 개인적으로 좀 신기했던게 리턴 값이 하나 이상 있을 수 있는 함수도 있다고 한 부분이었습니다. 이건 파이썬쪽의 특성인지 아니면 다른 인터프리터쪽 언어도 이렇게 될 수 있는지 궁금하네요. 네트워크쪽에 대한 기본적인 설명도 좋았습니다. 와이어샤크쪽에 대해서는 제대로 알려면 공부가 더 필요할 듯. -_-
* 루아에 대해서 찾아보니까 주목받는 이유는 역시 용량이 작기 때문인 것 같은데 폰쪽에서 일하셨다는 부분도 그렇고 역시 임베디드쪽인가 싶었습니다. 임베디드에서 루아로 프로그래밍을 하기 위한게 따로 있다고 하신 부분이 좀 궁금했습니다. 이번에 파이썬에 루비, 루아까지 스크립트 언어쪽을 많이 본 것 같습니다. 다들 문법적으로는 비슷한 느낌인데 어떤걸 쓰는지는 용도 나름인 것 같습니다.
* 수경이의 String 코드 레이스에서 저의 프로그래밍 달리기를 너무 빡세게 했던게 부끄러워서 이번엔 1학년 학우(저 같은 경우 성화수 학우)에게 설명해주고 그 학우가 하고 싶은 스펙으로 함께 프로그래밍 하고자 많이 노력했습니다. 파트너 교체 후 순의랑 파란 바를 만들어버리는 실수를 저지르긴 했습니다만 제가 부족한 탓이었구요-_-;; 개인적으로 화수의 '0층부터 지하까지' 아이디어는 신선했어요. 형진이가 처음에 의도했던 엘레베이터 문제(밖에서 누르고 층을 누르는 케이스)는 다른 클래스도 필요하고 일단 화수를 이해시키는데에 초점을 둬서 그걸 못 푼 점은 좀 아쉬웠어요.
- 데블스캠프2013/셋째날/후기 . . . . 4 matches
* 사실 소켓 프로그래밍을 새싹교실에서 했었는데 복습을 안 해서 반 쯤 까먹었다가 (...) 이번 기회에 다시 기억을 되살리고, C#이 아닌 C로도 짜니 어려웠지만 흥미로웠습니다. 특히 마지막에 웹 서버가 제일 인상깊었네요. 인상깊었던 만큼 휙 지나간게 아쉬웠습니다 :Q - [조영준]
* 소켓프로그래밍은 언젠간 공부해봐야지 하면서도 안하고 있다가 단면을 알게될 기회를 갖게되서 좋은 세션이였습니다. 이런 소켓프로그래밍을 가지고 놀면 재밋는것도 나올 수 있겠다라는 응용여지가 많아서 더 재미있는 세션이였습니다. - [김윤환]
* 역시 명불허전 머신러닝! C언어 입출력에서 이렇게 나를 괴롭힐줄이야.. 코딩하면 코딩할수록 '내가 지금 펜을 잡고 생각을 정리해야하는데, 왜 타자기만 잡고 있는 것인가'라는 생각을 하게 되었습니다. 페어 프로그래밍이어서 더 떨렸습니다... 멍청한거 들킴; 제출된 코드 중 파이썬 코드가 있었는데 참 맘에 들더군요. 로직에만 집중할 수 있도록 해주는 언어! 파이썬! - [박성현]
- 새싹교실/2011/AmazingC . . . . 4 matches
* C 프로그래밍과는 별개로 '''선형대수학'''도 수업 과목에 넣기로 하였습니다.
==== part1. 프로그래밍의 기초 ====
* 컴파일러, 링커, 전처리기, 디버깅 등의 프로그래밍의 기본적인 요소에 대해 알아보았다.
* [[박지호]]: 프로그래밍의 기초에 대한 내용을 배웠습니다. 수업 내용이 이미 배운 것이었지만 질 자체는 꽤 괜찮았다고 생각합니다. 또한 직접 ppt까지 제작하신 기호형의 성의가 돋보였습니다. 앞으로 수업에 대한 기대가 큽니다.
- 새싹교실/2011/Pixar/3월 . . . . 4 matches
* Keywords : 컴파일러, 프로그래밍 언어, printf 함수, main 함수, #include, assert 함수, 변수, 자료형
1. 매년 아는 게 조금씩 늘어나서 해주고픈 말도 너무 많아요. 그런데 제 머리속에선 흐름이 잡혀있는 이야기들이지만 막상 프로그래밍을 처음 접하는 새내기들이 듣기엔 이 소리했다가 저 소리했다가 왔다갔다 하는 것으로 느껴질 것 같습니다. 다음 시간부터는 흐름을 잃지 않도록 간단히 키워드 목록이라도 준비해올게요~
* 두번째로 c프로그래밍을 배웠습니다! 피드백을 좀 늦게쓰게됬습니다. 저번시간에는 전처리기에 대해서 배웠습니다 컴파일 전에 읽어주기 때문에 전처리기라고 합니다. 우리가 써본건 #include 와 #define 입니다 그리고 변수이름으로 사용할 수 있는것들을 배웠습니다. 학교 수업이 너무 어려워서.. 열심히 하려고합니다!!.. -이승열-
* 세번째 c프로그래밍수업 새싹교실을 했습니다. 연산자에 대해서 배웠습니다. 연산자는 사칙연산이랑 나머지를 구하는거등이 있었고, assert를 이용해서 확인해보면서 & 나 | 등 배우고 printf에 대해서도 배웠어요 내일은 수업이 없다고 하니 오늘 한것을 복습을 열심히 하겠습니다~! 점점 잘할수 있을거같다는 마음이 드네요 . -이승열-
- 새싹교실/2011/무전취식/레벨1 . . . . 4 matches
* 이렇게 쓰면 되나요 ? 오늘 처음으로(?) C프로그래밍을 해보았는데..(교수님은 뭐란말인가 ㄷㄷ) 처음에는 좀 정말로 뭐가 뭔지 몰라서 난감햇는데 선생님의 설명이 '굳' 이어서 정말 잘이해됬어요 ㅋㅋ 재밌네요.... 근데 지금 vs2008을 깔고싶은데 어케깔아야될지를 모르겠어서 못깔고있어요 어떡하죠ㅠ. - [강원석]
* C라는 것을 처음 접해봤다. 그리고 간단하지만 코딩이라는 것도 해봤다. 사실 대학교 입학하기 전에 C는 본적도 없었는데..그리고 VS2008도 처음 켜보고..화요일이라 C실습 날이라서 새싹하기전에 잠깐 하고 왔는데! 강의시간에는 왜 하는지 몰랐던 것을 새싹에 와서 이유도 알고 뭔지도 알았다. C프로그래밍 시간마다 졸립기만 했는데 새싹교실은 되게 재밌는것 같다. 그리고 코딩에 성공하고 그러니까 재밌는 것 같기도 하다. 아직 더 해봐야 알겠지만.. 새싹에서 열심히 공부해서 프로그래밍을 잘하고 싶다! 그리고 옆에서 소라가 도와줘서 더 잘할 수 있었다 야호! 그리고 선생님도 참 좋은것 같다 짱!! 근데 집에다 vs2008을 깔면 컴퓨터가 사망할 것 같다ㅠㅠ그래도 집에가서 도전해봐야지 ㅠㅠ -[이진영]
* VS2008이란 것을 처음으로 사용해보았습니다. 처음 새싹수업에서는 어려운 점을 많이 느껴서(긴장을 좀 한 탓도 있어요ㅋㅋ) 그날 배웠던 것을 잊어먹지 않기 위해 계속 해서 성공할 때까지 실습을 했습니다. 하나 하나씩 성공을 하고 나니 뿌듯함도 느끼고 자신감도 생기는것 같아서 기분이 좋습니다. C프로그래밍 시간에 졸았던게 많이 후회가 됩니다ㅋ 대학교와서 노는 시간이 많이 늘긴 했지만 초심을 잃지 말아야 겠어요ㅋ. 앞으로는 수업한 내용들을 가능하면 당일날 복습을 해둬야 할 것 같습니다. 새싹교실 들기를 정말 잘 한 것 같아요~! -[서원태]
- 새싹교실/2012/AClass/1회차 . . . . 4 matches
-컴파일 : 프로그래밍언어로 코딩한 것을 컴퓨터가 이해할 수 있는 기계어 코드로 변환하는 작업
- 함수형 프로그래밍은 프로그래밍의 주된 구조가 함수 호출에 기반을 둔 프로그래밍을 말한다. 기존 명령형 언어로 작성한 프로그램보다 간결하고 더 추상적이며 이해하기 쉽고 형식적인 분석과 조작이 용이하다는 특징이 있다.
- 새싹교실/2012/우리반 . . . . 4 matches
* C프로그래밍 Java C++
* 프로그래밍 문장이 어떻게 되는지, 한 문장을 나누는 기준 (;) 에 대해서.
* 프로그래밍의 기초를 배운 것같다.. 감을 익혔다.. 외울 것이 많은 것 같다..
* 아직도 c프로그래밍은 어려운 것 같아요...-[장윤화]
- 생각하는프로그래밍 . . . . 4 matches
아, 여태 열심히 프로그래밍 언어를 배운 건, 다 알고리즘 구현하는데 쓰려고 그랬던 거구나. 프로그래밍은 단순히 키보드 두드리는 게 아니구나. 생각을 잘 하고 프로그래밍 해야겠구나.
내가 산 책은 군대간 동기 녀석한테 빌려줬다. 하지만 어렵다고 안 본댄다. 부대에 프로그래밍 하다 온 사람도 조금 읽다가 그만뒀댄다. 어투가 건방지다나.
- 졸업논문/결론 . . . . 4 matches
기존의 웹 어플리케이션을 만들 때 설계한 대로 데이터베이스를 사용하도록 프로그래밍 하는 시간을 줄였다. 기민하게 웹 어플리케이션을 작성할 수 있기 때문에, 개발자는 데이터베이스를 올바로 설계하고 사용자에게 정말로 필요한 기능을 구현하는 데 집중할 수 있다. 또한 실제로 사용하기에 부족한 점이 있더라도, 프로토타입을 만들어 보려면 더할 나위 없이 좋은 프레임워크라고 생각한다.
RoR와 django 같은 경량 프로그래밍 기법이 힘을 얻는 또 다은 이유는, 강력한 표현력을 가진 주언어를 사용할 수 있기 때문이다. Ruby와 python은 스크립트 언어의 성격을 가지고 있으며, 객체 지향 개념과 함수형 프로그래밍 언어의 패러다임을 포함한다. 비록 느려서 시스템 프로그래밍에 사용하기에는 적당하지 않지만, 동적으로 빠르게 변하는 웹 환경에서는 ruby와 python같은 언어가 변화를 손쉽게 따라갈 수 있어 적당하다.
- 지금그때/OpeningQuestion . . . . 4 matches
* 프로그래밍 잘 하는 방법 : 가르치는 척은 하지만 별로 못 배웁니다. 혼자서 혹은 선배와 동기를 통해 배워야 합니다.
* 전산 이론 : 매일매일 프로그래밍하는 데에 큰 영향력은 없습니다만 학계에 남으려거나 자신의 가치 차별화를 하려면 아주 중요합니다.
* 프로그래밍 언어 : C, C++, Java 정도를 배웁니다. 하지만 직접 가르쳐주는 것은 문법 수준이고, 대부분은 숙제를 하면서 직접 익혀야 합니다.
== 프로그래밍 ==
- 프로그래밍잔치/Successor . . . . 4 matches
["프로그래밍잔치/둘째날"]에 팀 프로그래밍 한 것입니다.
["프로그래밍잔치"]
["프로그래밍잔치/둘째날"]
- 프로그래밍잔치/첫째날 . . . . 4 matches
프로그래밍 잔치 첫째날 계획.
* 우리가 졸업을 하면서 접하는 언어의 수가 얼마나 되는가? 10손가락에 꼽을수 있지 않을까? 프로그래밍 경력이 짧은 사람이라면, 많은 경험을, 많은 사람이라면 색다른 경험을 접해 보자.
후기 : ["프로그래밍잔치/첫째날후기"]
["프로그래밍잔치"]
- 02_Archi . . . . 3 matches
컴퓨터 구조에 대한 이해는 프로그래밍에 기본 바탕이 되어집니다. 로우레벨의 프로그래밍을 하기 위한
=== 2.어~ 쌤아저씨의 바보같은 프로그래밍 ===
- 2005Fall수업 . . . . 3 matches
자바 IO & NIO 네트워크 프로그래밍
== 프로그래밍 실습(2) ==
== 프로그래밍 실습 ==
- 5인용C++스터디/멀티쓰레드 . . . . 3 matches
프로그램 작성하다 보면 프로그램 수행도중 현재 프로그램은 다른 작업을 수행하면서 또하나의 작업을 수행하고자 할 때가 있을 것입니다. 이때 사용하는 것이 바로 스레드 입니다. 작업을 함수로 프로그래밍을 하고 난후에 이것을 스레드로 형태로 실행하면 됩니다
동기화는 멀티 쓰레드 프로그래밍에서 고전적인 문제이다.
OS에서 공유자원이나 특정코드가 수행되는 도중에 다른 프로세스에 의해 interrupt 되는것을 방지하기 위해 크리티컬 섹션을 사용하게 된다. 이는 윈도우즈 프로그래밍에서 스레드관련 처리를 해 줄 때에도 나오는 용어이다.
- AM/AboutMFC . . . . 3 matches
MFC의 정확한 동작 원리를 알고 싶다면, 2000년 5~8월 사이의 프로그래밍세계의 MFC관련 기사를 추천합니다.(도서관에 있고, 복사할수 있습니다.) 재미있는 자료입니다. 저는 우연히 01년 상반기에 기사의 필자 곽용재씨에게 해당 내용에 대한 강의를 들은적이 있는데, 그때 그림 사용을 허락맡고 [MFCStudy_2001]를 위해 자료를 만들어서 세미나를 했습니다.
F12로 따라가는 것은 한계가 있습니다.(제가 F12 기능 자체를 몰랐기도 하지만, F12는 단순 검색에 의존하는 면이 강해서 검색 불가거나 Template을 도배한 7.0이후 부터 복수로 결과가 튀어 나올때가 많죠. ) 그래서 MFC프로그래밍을 할때 하나의 새로운 프로젝트를 열어 놓고 라이브러리 서치용으로 사용합니다. Include와 Library 디렉토리의 모든 MFC관련 자료를 통째로 복사해 소스와 헤더를 정리해 프로젝트에 넣어 버립니다. 그렇게 해놓으면 class 창에서 찾아가기 용이하게 바뀝니다. 모든 파일 전체 검색 역시 쉽게 할수 있습니다.
그런데요. C# 관련해서 프로그래밍 프로젝트는 없어요? Windows플랫폼이라면, 일반 어플리케이션은 C# 뿐만아니라, Embeded 까지 .NET 계열이 맡게 될텐데 말이죠 :) --NeoCoin
- Basic알고리즘/빨간눈스님 . . . . 3 matches
프로그래밍에서 알고리즘을 찾는 것과 유사하다고 저자는 말하고 있는데요, 알고리즘을 찾아봅시다 ㅋㅋ!! - [허아영]
상당히 좋은 문제입니다. 이 문제를 컴퓨터를 도구로 사용해서 해결을 하는 훈련을 하면 상당한 사고훈련이 될 것입니다. 적극 권합니다. 스스로 이 문제의 답을 알고 있다고 생각하는 사람도 직접 프로그래밍을 해보거나 하시면 많은 것을 느끼고 깨닫게 될 것입니다. --JuNe
너의 이론이 맞는지 직접 프로그래밍해서 실험해 보면 어떨까. --JuNe
- C++ . . . . 3 matches
C++은 범용성을 가진 컴퓨터 언어이다. 이는 정적으로 분류된(?) 다중 패라다임을 지원하는 언어이다. ( [:절차적프로그래밍 절차적 프로그래밍], [:GenericProgramming 제네릭 프로그래밍]을 지원한다.) 1990년대에 C++은 가장 상업적으로 인기가 있는 언어중의 하나가 되었다.
- CToAssembly . . . . 3 matches
고급언어 변환기, 어셈블러, 편집기, 다른 프로그램을 만드는 작업을 돕는 프로그램들이 시스템 소프트웨어에 속한다. 우리는 이미 프로그래밍에는 기계어, 어셈블리어, 고급언어 세 단계가 있음을 안다.
프로그램이 어셈블리로 수학 알고리즘만을 구현하지 않는다면, 입력을 받고, 출력하고, 종료하는 등 어떤 작업이 필요하다. 이를 위해 운영체제 서비스를 호출해야 한다. 사실 운영체제 서비스를 제외하고는 여러 운영체제간의 어셈블리어 프로그래밍이 매우 비슷하다.
= 인라인 어셈블리 프로그래밍 =
- CppStudy_2002_1 . . . . 3 matches
* C++의 문법도 익히고, 나아가서 사용법, OOP에 대해서 더 친숙 해지기, 다양한 과제를 통한 프로그래밍 경험 쌓기
|| 7.18 ||8.함수의 활용(104page)|| 458P ~ 460P 프로그래밍 연습 + ???? ||
|| 8.16 ||12.클래스 상속(72page)|| ["LinkedList/StackQueue"][[BR]]C++2팀과의 프로그래밍 잔치? 링크드 리스트로 스택,큐 구현||
- EightQueenProblem2Discussion . . . . 3 matches
당신은 어떤 식으로 이 문제에 접근을 했고, 어떤 사고의 과정을 거쳤으며, 어떤 과정으로 프로그래밍을 했으며, 어떤 디자인 결정을 했습니까? 만약 실패했다면 당신이 했던 것 혹은 하지 않았던 것 중 무엇이 실패의 주요인이었다고 분석을 하십니까?
처음 문제를 해결할 때, 아무 어려움이나 장애도 없었나요? 지금 뒤돌아볼 때에 자신이 거친 과정 중에 "개선되었으면 하는 부분"이 있나요? 만약 이 문제를 다시 처음부터 새로 풀기 시작한다면 역시 똑같은 방식으로 프로그래밍을 할 것 같습니까(see also EightQueenProblemSecondTry)? 조금 더 깔끔하고 쌈박하게 푸는 방법도 있을까요? 어떻게 처음에 접근했더라면 더 "깨끗한" 코드가 나올 수 있었을까요? 비슷한 문제에 직면했을 때 일반적으로 적용할 수 있는 어떤 "추상적 패러다임" 같은 것을 발견할 수 있을까요? 그 코드를 난생 처음 보는 사람이 있다고 했을 때 몇 분만에 그 코드를 이해시킬 수 있겠습니까? 만약 그 사람 혼자 그 코드를 본다면 쉽게 이해할 수 있을까요? 주석이 없이도요? 혹시 코드 내에 중복되는 정보는 없습니까? 본인의 의도가 모두 분명히 드러나고 있습니까? --김창준
어제 서점에서 ''Foundations of Algorithms Using C++ Pseudocode''를 봤습니다. 알고리즘 수업 시간에 백트래킹과 EightQueenProblem 문제를 교재를 통해 공부한 사람에게 이 활동은 소기의 효과가 거의 없겠더군요. 그럴 정도일줄은 정말 몰랐습니다. 대충 "이런 문제가 있다" 정도로만 언급되어 있을 주 알았는데... 어느 교재에도 구체적 "해답"이 나와있지 않을, ICPC(ACM의 세계 대학생 프로그래밍 경진대회) 문제 같은 것으로 할 걸 그랬나 봅니다. --김창준
- GenericProgramming . . . . 3 matches
한소스를 여러 type에 적용시키는 프로그래밍 기법
어떤 사람들은 OOP 다음 세대의 프로그래밍 방법이라고 하더군요.
["프로그래밍분류"]
- Java Study2003/첫번째과제/장창재 . . . . 3 matches
- 자바(Java)를 이야기할 때 크게 두 가지로 나누어 이야기 할 수 있습니다. 먼저, 기계어, 어셈블리어(Assembly), 포트란(FORTRAN), 코볼(COBOL), 파스칼(PASCAL), 또는 C 등과 같이 프로그래밍을 하기 위해 사용하는 자바 언어가 있고, 다른 하나는 자바 언어를 이용하여 프로그래밍 하기 위해 사용할 수 있는 자바 API(Application Programming Interface)와 자바 프로그램을 실행시켜 주기 위한 자바 가상머신(Java Virtual Machine) 등을 가리키는 자바 플랫폼(Platform)이 있습니다. 다시 말해서, 자바 언어는 Visual C++와 비유될 수 있고, 자바 플랫폼은 윈도우 95/98/NT 및 윈도우 95/98/NT API와 비유될 수 있습니다.
다른 자바 프로그램에 의해 삽입(import)되어 사용될 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있습니다. 다음에 나오는 그림은 JDK 1.2.2 에서 제공되는 패키지를 보여주고 있습니다.
- MFCStudy_2002_2 . . . . 3 matches
''처음에는 책을 위주로 보는게 좋겠지만, vc를 이용해서 윈도우 프로그래밍을 할때에는 MSDN 을 참조하는 훈련을 하는것도 중요합니다. 책은 그리 중요하지 않지만. 문서가 중요하죠.~'' - 임인택
''덧붙임. 비단 윈도우 프로그래밍뿐만 아니라 다른 어떤 종류의 프로그래밍을 하더라도 레퍼런스(라고 해야하나.. 적당한 단어가 생각이 안나네요..;;)는 없어서는 안되죠'' - 임인택
- ModelViewPresenter . . . . 3 matches
C++, Java 의 다음 세대 프로그래밍 모델. Smalltalk 의 고전적인 MVC 프로그래밍 모델에서 나왔으며, 다양한 번위의 어플리케이션과 컴포넌트 개발 테스크를 위한 강력하면서 이해하기 쉬운 디자인 방법론. 이 개념의 framework-based 구현물은 MVP 를 em쓰는 개발 프로그램에 훌륭한 가치를 더해준다. MVP는 또한 다중 client/server 나 multi-tier 어플리케이션 아키텍쳐에도 적합하다. MVP 는 IBM 의 대부분의 OO Language 환경들에 대해 단일한 개념의 프로그래밍 모델을 제공해 줄 수 있을것이다.
- MoreEffectiveC++/Basic . . . . 3 matches
사견: Call by Value 보다 Call by Reference와 Const의 조합을 선호하자. 저자의 Effective C++에 전반적으로 언급되어 있고, 프로그래밍을 해보니 괜찮은 편이었다. 단 return에서 말썽이 생기는데, 현재 내 생각은 return에 대해서 회의적이다. 그래서 나는 COM식 표현인 in, out 접두어를 사용해서 아예 인자를 넘겨서 관리한다. C++의 경우 return에 의해 객체를 Call by Reference하면 {} 를 벗어나는 셈이 되는데 어디서 파괴되는 것인가. 다 공부가 부족해서야 쩝 --;
오해의 소지가 있도록 글을 적어 놨군요. in, out 접두어를 이용해서 reference로 넘길 인자들에서는 in에 한하여 reference, out은 pointer로 new, delete로 동적으로 관리하는것을 의도한 말이었습니다. 전에 프로젝트에 이런식의 프로그래밍을 적용 시켰는데, 함수 내부에서 포인터로 사용하는 것보다 in에 해당하는 객체 사용 코딩이 편하더군요. 그리고 말씀하신대로, MEC++ 전반에 지역객체로 생성한 Refernece문제에 관한 언급이 있는데, 이것의 관리가 C++의 가장 큰 벽으로 작용하는 것이 아닐까 생각이 됩니다. OOP 적이려면 반환을 객체로 해야 하는데, 이를 포인터로 넘기는 것은 원칙적으로 객체를 넘긴다고 볼수 없고, 해제 문제가 발생하며, reference로 넘기면 말씀하신데로, 해당 scope가 벗어나면 언어상의 lifetime이 끝난 것이므로 영역에 대한 메모리 접근을 OS에서 막을지도 모릅니다. 단, inline에 한하여는 이야기가 달라집니다. (inline의 코드 교체가 compiler에 의하여 결정되므로 이것도 역시 모호해 집니다.) 아예 COM에서는 OOP에서 벗어 나더라도, 범용적으로 쓰일수 있도록 C스펙의 함수와 같이 in, out 의 접두어와 해당 접두어는 pointer로 하는 규칙을 세워놓았지요. 이 설계가 C#에서 buil-in type의 scalar형에 해당하는 것까지 반영된 것이 인상적이 었습니다.(MS가 초기 .net세미나에서 이 때문에 String 연산 차이가 10~20배 정도 난다고 광고하고 다녔었는데, 지금 생각해 보면 다 부질없는 이야기 같습니다.) -상민
이렇게 구현 해서 대비하는걸 추천한다. (dynamic_cast 는 C의 절차적 프로그래밍에서 등장 불가)
- MoreEffectiveC++/Miscellany . . . . 3 matches
이런 좋은 소프트웨어를 만들기 위한 방법으로, 주석이나, 기타 다른 문서 대신에 C++ 내부에 디자인으로 구속해 버리는 것이다. 예를들자면 '''만약 클래스가 결코 다른 클래스로 유도되지를 원치 않을때''', 단시 주석을 헤더 파일에 넣는 것이 아니라, 유도를 방지하기 위하여 C++의 문법을 이용한 기술로 구속 시킨다.;이에 대한 방법은 '''Item 26'''에 언급되었다. 만약 클래스가 '''모든 인스턴스를 Heap영역에 생성시키고자 할때''', 클라이언트에게 말(문서)로 전달하는 것이 아니라. '''Item 27'''과 같은 접근으로 제한 시켜 버릴 수 있다. 만약 클래스에 대하여 복사와 할당을 막을려고 할때는, 복사 생성자와 할당(assignment) 연산자를 사역(private)으로 만들어 버려라. C++은 훌륭한 힘과, 유연성, 표현성을 제공한다. 이러한 언어의 특징들을 당신의 프로그래밍에서 디자인의 정책을 위해서 사용하라.
당신은 C++의 함수를 선언할때조차 extern "C"를 사용할수 있다. 이것은 C++에서 라이브러리를 작성할때 다른 프로그래밍 언어들에 대한 지원을 하고 싶을때 유용하다. C++함수에 대하여 name mangle을 금지해서 당신의 클라이언트들이 당신이 mangle을 적용한 함수 대신에, 자연스럽게 명시적으로 사용할수 있다.
동적 메모리 할당(dynamic memory allocation:이하 동적 메모리 할당)에 관한 문제가 우리에게 주어진다. 일반적인 규칙은 간단하다.:C++ 에서 new, delete 부분 (Item 8참고) 그리고 C 프로그래밍 에서는 malloc(그리고 그것의 변수들) 과 free이다. malloc으로 얻은건 free로, new로 얻은건 delete로 해재하는한 모든 것이 올바르다. 그렇지만, new로 할당된 메모리 영역을 가리키는 포인터를 free로 해제 시키는 호출은 예측 못하는 수행을 가지고 온다. 마찬가지로 malloc로 얻은 것을 delete로 해제하는 것도 예측할수 없다. 그렇다면, 이를 기억하기 위한 방법은 new와 delete, malloc와 free를 엄격하게 구분해야 하는 것이다.
- PairProgramming토론 . . . . 3 matches
한편, 보통 숙련자/비숙련자 가 pairing 할때는 한쪽 방향으로 프로그래밍 스타일 등의 무게가 치우쳐지기 쉽다고 생각하는데요. 보통 비숙련자인 사람이 수동적인 입장을 취하는 경우가 많기 때문에.. 다른 한편, 숙련자인 사람이 마음의 벽을 넘지 못하는 우를 범할때에도 비숙련자인 사람이 '내가 저 사람보다 잘 모르니까...' 식으로 끌려가는 경우가 있을수 있다고 봅니다. (실제로 가끔 제가 '설명할 수 없는 부분은 혼란시켜라' 라는 말을 실천에 옮기는 경우가 종종 발생한다는.. -_-;;) -- 강석천
겉으로 보기엔, 왕초보/왕도사의 짝은 상당히 비효율적일 것 같지요. PairProgramming을 한다고 해도, 왕도사가 키보드를 거의 독차지하고, 왕초보가 간간히 던지는 멍청한 질문은 둘(정확히는 왕도사)의 프로그래밍 속도를 늦출 것이고요. 또, 아무것도 못하고 멍청히 지켜봐야만 하는 왕초보 역시 답답할 겁니다. 괜히 질문했다가는 핀잔받기 일수이고. 둘 다 짜증나는 상황이죠.
Pair 할때의 장점으로 저는 일할때의 집중도에 있다고 보고 있습니다. (물론 생각의 공유와 버그의 수정, 시각의 차이 등도 있겠지만요.) 왕도사/왕초보 Pair 시의 문제점은 왕도사가 초보자가 coding 때에 이미 해야 할 일을 이미 알고 있는 경우 집중도가 떨어지게 된다는 점에 있습니다. Pair 의 기간이 길어지면서 초보쪽이 중고급으로 올라가는 동안 그 문제들이 해결이 될 것 같은데, 아쉬운 점은 Pair 를 긴 기간을 두고 프로그래밍을 한 적이 없다는 점입니다. (하나의 프로젝트를 끝내본 역사가 거의 없다는.)
- ProjectPrometheus/Iteration6 . . . . 3 matches
||목 ||8/29 ||프로그래밍잔치 ||
||금 ||8/30 ||프로그래밍잔치 ||
||토 ||8/31 ||프로그래밍잔치 ||
- ProjectZephyrus/일정 . . . . 3 matches
- 개인이 생각한 프로그래밍, 코딩 지향점에 관해서 이야기 한다.
||5.27 (월)||영서 - 3시, 창섭 - 2시|| Client 일부분 연습용 프로그래밍 || △ (영서 사정상 참여못함) ||
||5.28 (화)||영서 - 5시 || JBuilder 일부 설명, JTree 일부 연습용 프로그래밍. 기타) 책 빌려주기 || △ (JBuilder 설명못함) ||
- RandomWalk2 . . . . 3 matches
이 페이지에 있는 활동들은 프로그래밍과 디자인에 대해 생각해 볼 수 있는 교육 프로그램이다. 모든 활동을 끝내기까지 사람에 따라 하루에서 삼사일이 걸릴 수도 있다. 하지만 여기서 얻는 이득은 앞으로 몇 년도 넘게 지속될 것이다. 문제를 풀 때는 혼자서 하거나, 그게 어렵다면 둘이서 PairProgramming을 해도 좋다.
대부분의 프로그래밍 문제나, 경시대회 문제는 한번 주어진 문제에 한번 대응하면 그걸로 끝난다. 하지만 현실은 그렇지 못하다. 한번 개발한 프로그램을 요구사항 추가/변경에 따라 몇 번이고 수정하고 다시 개발해야 할 때도 있다. 우리가 말하는 문제풀이 능력에는 이미 만든 프로그램을 유지보수하는 작업도 포함되어야 한다.
이와 비슷한 문제를 혹시 과거에 접해보았는가? 그 문제를 이제는 좀 다르게 풀것 같지 않은가? 그 문제와 RandomWalk2 경험에서 어떤 공통점/차이점을 끄집어 낼 수 있겠는가? 어떤 교훈을 얻었는가? 자신의 디자인/프로그래밍 실력이 늘었다는 생각이 드는가?
- Refactoring/BuildingTestCode . . . . 3 matches
나는 이것을 단점으로 보지 않는다. 나는 내가 리펙토리를 하는 중이 아니라 하더라도, 좋은 테스트는 프로그래밍 속도를 비약적으로 향상시킨다는 것을 발견했다. 이것은 많은 프로그래머들의 통념과는 반대된다는 점에서 놀라운 것이다. 그렇기 때문에, 왜 그러한지에 대한 이유를 설명할만한 가치가 있다.
그리고 이것이 실제로 프로그래밍 속도를 높인다는 것을 경험해보지 않으면 self-testing 코드는 사람들이 이해해주지 못한다. 그리고 테스트가 수동이라면 이것은 지루할 것이다. 하지만 테스트가 자동화된다면 테스트 코드를 쓰는 것은 꽤 재미있는 일이 될 것이다.
사실 테스트 코드를 작성하기 위한 가장 좋은 때는 프로그래밍을 시작하기 전이다. 어떤 기능을 추가해야할 때, 테스트 코드를 작성하는 것으로 시작한다. 이것은 뒷걸음질 치는 것이 아니다. 그 기능을 추가하기 위해서 어떤 것들이 행해져야 하는지 스스로에게 물어보는 것이 된다. 그리고 테스트 코드를 쓰는 것은 구현보다는 인터페이스에 집중할 수 있게 해준다. (그리고 이것은 언제나 좋은 것이다)
- SingletonPattern . . . . 3 matches
이전에 ProjectZephyrus 를 프로그래밍할때 느낀점이라면, 초반에 디자인을 할 때 일수록 Singleton 을 쓸 생각을 하지 않는것이 좋겠다는 점이다. 초반에 디자인을 할때엔 (특히 Conceptual Model 단계정도만 생각하고 프로그래밍에 들어가는 사람의 경우) 어떠한 클래스건 대부분이 인스턴스가 한개이다. -_- 그렇다고 이 모든 것들을 글로벌 객체로 만들어내는 것은 그리 좋지 않다. --["1002"]
패턴중 가장 구현이 간단하다 보니 '패턴의 전형적 예'로 나오는 것중 하나인것 같기도 하다. 하지만, 실제 프로그래밍할때 '전형적'으로 쓸 녀석은 아닌듯 하다. --["1002"]
- SpikeSolution . . . . 3 matches
주어진 문제에 대한 실험적인 프로그래밍.
어떻게 보면 우리가 일반적으로 하고 있는 것이다. Visual C++로 해당 라이브러리를 이용한 프로그래밍을 할때 우리는 어떻게 할까? 아마도 Visual C++을 2개를 띄울 것이다. 그리고 한 창에서는 해당 라이브러리가 제대로 작동하는지, 대강 값들을 넣어보고 이리저리 제대로 원하는 일을 하게끔 여러 시도들을 하게 될 것이다. 그렇게 함으로서 미지인 부분에 대한 대강의 선을 잡아놓는다.
(ex) DB를 연결하기 위해 DB를 Install 하기, DB 작동이 어떻게 되는지 query 날려보기. 해당 라이브러리가 어떻게 작동하는지 간단한 예제 프로그래밍 등
- StructuredProgramming . . . . 3 matches
구조적 프로그래밍 기법.
구조적 프로그래밍 기법으로서 OOP에서도 여전히 유용하게 이용할 수 있는 방법으로는 StepwiseRefinement 가 있다. 이는 처음 추상적인 이름으로 서술한뒤, 점차적으로 구체적인 구현부분까지 점진적으로 서술해가면서 구현해나간다. 이는 ProgrammingByIntention 과 그 맥락이 비슷하다고 할 수 있다.
다익스트라의 구조적 프로그래밍에 관련한 논문들입니다. - [eternalbleu]
- TCP/IP . . . . 3 matches
소켓 프로그래밍을 위한 TCP/IP 용어 정리
* 인제 TCP/IP 소켓 프로그래밍에 들어가 볼까? 근데 사전지식이 많이 부족하겠군
* Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs : TCP/IP 프로그래밍 팁 모음
- VisualStudio . . . . 3 matches
VisualStudio 를 사용할때 초기 프로그래밍 배울때 익혀두어야 할 기능들로, [:Debugging Debugger 사용], [Profiling], Goto Definition
의외로 Debugger 를 이용하지 않는 사람들이 있다. UnitTest 를 작성하면서 프로그래밍을 하지 않는다면, Debugger는 불가피하다. 학교 프로그래밍 수업때 정식으로 가르치지 않기 때문에 MSDN이나 온라인의 강좌, 알고 있는 학우들에게 물어보아 배울수 있다.
- WeightsAndMeasures/문보창 . . . . 3 matches
동적프로그래밍 문제. n! 번의 수행을 해야하는 문제가 동적프로그래밍을 이용하니 O(n^2)만에 풀 수 있다. 동적프로그래밍의 힘이 대단하다.
- ZeroPageEvents . . . . 3 matches
|| 5.19. 2002 || ["프로그래밍파티"] || 서강대 ["MentorOfArts"] 팀과의 ["ProgrammingContest"] || ZeroPagers : ["1002"], ["이덕준"], ["nautes"], ["구근"], ["[Lovely]boy^_^"], ["창섭"], ["상협"] [[BR]] 외부 : ["JuNe"], ["MentorOfArts"] Team ||
|| 8.29. 2002 ~ 8. 31. 2002 || ["프로그래밍잔치"] || 여름 방학 정리 프로그래밍 행사 ||. ||
- iPhoneProgramming/2012년프로젝트 . . . . 3 matches
* 진행 방식 : 전반적인 이해까지는 같이 공부하다가, 비슷한 영역의 프로그래밍을 각자하면서 App 제작.
* iPhone 프로그래밍 페이지를 만들었으나, i Phone이라고 되어 기분이 나쁨.
* 하지만 나는 그 이전에 언어에 대한 좀 더 상세한 이해라던가, 정확히 어떻게 동작하는지를 알아야 자유로운 프로그래밍을 할 수 있다고 충돌중.
- naneunji/Diary . . . . 3 matches
프로그래밍파티 첫날..생소한 언어를 고르라구 했는데 내가 고른 python은 생각해보니..한번은 본 언어였음.
여러사람이 하나의 프로그램을 짠다는것..페어프로그래밍을 한다는것..
8월의 끝이자 방학의 끝이며 프로그래밍 파티의 마지막날..그동안의 생활을 정리하는 시간이 필요할 듯 하지만..
- woodpage/쓰레기 . . . . 3 matches
*JSP 웹프로그래밍 (출판사: 가메)
*C++ 3D 게임 프로그래밍 (출판사: 혜지원)
*JSP 웹프로그래밍
- 간단한C언어문제 . . . . 3 matches
특정 컴파일러에 종속적인 프로그래밍은 좋지 않습니다. C90이라는 표준이 엄연히 존재하니까요. 특정 구현에 종속적인 프로그래밍을 한다고 하더라도, 프로그램의 심장은 표준에 따라 프로그래밍 하는게 좋습니다.
- 데블스캠프/2013 . . . . 3 matches
|| 8 |||| ns-3 네트워크 시뮬레이터 소개 |||| [:데블스캠프2013/둘째날/API PHP + MySQL] |||| [http://zeropage.org/index.php?mid=seminar&document_srl=91554 Machine Learning] |||| |||| [MVC와 Observer 패턴을 이용한 UI 프로그래밍] |||| [아듀 데블스캠프 2013] || 3 ||
|| 9 |||| [개발업계 이야기] |||| [:데블스캠프2013/둘째날/API PHP + MySQL] |||| [http://zeropage.org/index.php?mid=seminar&document_srl=91554 Machine Learning] |||| |||| MVC와 Observer 패턴을 이용한 UI 프로그래밍 |||| [아듀 데블스캠프 2013] || 4 ||
|| 정의정(21기) || MVC와 Observer 패턴을 이용한 UI 프로그래밍 ||
- 데블스캠프2005/금요일후기 . . . . 3 matches
[상협] : 카드게임, 테트리스, 채팅 프로그램, 타자게임 프로그램을 짰다. 현태가 준비를 잘해왔던거 같고, 카드 게임은 재밌었고, 테트리스는 API를 넘 오래간만에 해서 감을 못잡음 ㅠㅜ, 채팅창 만드는것은 신기하고 재밌었다. 교훈은 프로그래밍을 너무 오랬동안 안해서 감을 많이 잃었다. 프로그래밍좀 해야겠다.
[이동현] : 게임을 이용하여 프로그래밍에 재미를 가지게 한점이 좋았다.
- 데블스캠프2009/수요일후기 . . . . 3 matches
* '''서민관''' - 계속 말이 많던 객체 지향 프로그래밍. 전날의 추상화 수업에서도 객체의 개념은 잠깐 나왔었고, 개인적으로도 객체에 대해서 조금 더 들을 기회가 있어서 그렇게까지 이해하기가 어렵지는 않았던 것 같습니다. 의사코드나 플로우 차트를 이용한 프로그래밍은 확실히 무작정 코드를 쓰고 보는 것 보다는 플로우 차트 -> 의사코드 -> 실제 코드 순으로 하는 것이 간단하면서도 정확한 프로그래밍을 할 수 있을 것 같아서 괜찮다고 생각합니다.
- 데블스캠프2010 . . . . 3 matches
|| 4 || 남상혁 || SDL을 이용한 게임프로그래밍 || 전 시간대 가능 ||
|| 6시 ~ 8시 || [김준석] || [RUR-PLE] || [남상혁] || [게임 프로그래밍] || [조현태] || [wiki:PythonLanguage Python] || [김홍기] || [PHP-방명록만들기] || [이덕준] || [스터디그룹패턴언어] ||
* 우와~ 재밌었겠다~프로그래밍 하고 싶다~ 위키 오랜만^^ - [허아영]
- 데블스캠프2011 . . . . 3 matches
|| 7 || [송지원] || [:데블스캠프2011/첫째날/Java Play with Java] || [:상협 남상협] || [:데블스캠프2011/둘째날/Machine-Learning Machine-Learning] || [윤종하], [황현] || [:데블스캠프2011/셋째날/Esolang 난해한 프로그래밍 언어] || [이승한] || [:데블스캠프2011/넷째날/Git Git-분산 버전 관리 시스템] || [변형진] || [:데블스캠프2011/다섯째날/HowToWriteCodeWell How To Write Code Well] || 2 ||
|| 8 || [송지원] || [:데블스캠프2011/첫째날/Java Play with Java] || [:상협 남상협] || [:데블스캠프2011/둘째날/Machine-Learning Machine-Learning] || [윤종하], [황현] || [:데블스캠프2011/셋째날/Esolang 난해한 프로그래밍 언어] || [서지혜] || [:데블스캠프2011/넷째날/루비 루비] || [변형진] || [:데블스캠프2011/다섯째날/HowToWriteCodeWell How To Write Code Well] || 3 ||
|| 9 || [송지원] || [:데블스캠프2011/첫째날/Java Play with Java] || [:상협 남상협] || [:데블스캠프2011/둘째날/Machine-Learning Machine-Learning] || [윤종하], [황현] || [:데블스캠프2011/셋째날/Esolang 난해한 프로그래밍 언어] || [서지혜] || [:데블스캠프2011/넷째날/루비 루비] || [김수경] || [:데블스캠프2011/다섯째날/Cryptography Cryptography], 회고 || 4 ||
- 데블스캠프2011/둘째날/후기 . . . . 3 matches
* 사실 스크래치를 접해보는 건 이번이 두 번째군요. 2009년 데블스캠프에서도 한 번 다루었던 걸로 기억합니다. 스크래치는 원래 아동 교육용으로 만들어진 프로그래밍 언어라고 들었습니다. 그런데 아동용이라고 대충 넘기기에는 기능도 생각보다 훨씬 다양하고 능력도 강력한 것 같아요. 1학년 떄는 이래저래 미숙한 부분이 많아서 그런 부분을 볼 여유도 없었는데 다시 보면서 약간 여유가 있어서 그런지 잘 만들었다는 느낌이 새삼 들었습니다. 그리고 이번에도 2009년 때처럼 게임을 만들기로 했었는데, 이번에는 다행히도! 제대로 돌아가는 게임을 만들었습니다. 사람이 그래도 발전이 있긴 하군요. 앞으로도 열심히 해야겠습니다.
* 리버싱 프로그래밍 하는 것을 보고, 패킷을 주고 받는 것을 얻어서 사용한다던지 또 웹에서 javascript injection으로 쿠키를 얻어서 그것을 사용할 수 있는 사이트에서 다른 아이디로 로그인 하는 것도 보았다. 정말 신기했지만 그렇게까지 하기 위해서는 무지하게 다양한 내용을 알아야 할 것 같았다.ㅜ
* 어떤 방식인지 느낌은 오는데 수식에 대한 이해도가 좀 부족했던 것 같습니다. 프로그래밍 잘하려면 수학을... 이라는 얘기는 많이 들었지만 실제로 겪어보니까 좀 충격이 큰 시간이었습니다.
- 데블스캠프2011/첫째날/개발자는무엇으로사는가 . . . . 3 matches
* 평소에 당신에게 프로그래밍에 대해서 질문하러 오는 사람이 많이 있는가. 있다면 그에 대해서 당신은 어떤 방식으로 도움을 주는가.
* 평소에 질문하러 오는 사람이 많다는건 그만큼 프로그래밍쪽에 관해서 아는 것이 많으며 사람들에 대한 인간관계도 괜찮기 때문일 것이라 생각해볼 수 있을 것이므로 실력과 인간관계 양쪽을 다 생각해볼 수 있다. 또 어떤 방식으로 도움을 주느냐에 따라서 주변 사람들의 실력 발전에 도움이 되는지 아닌지의 여부도 고려. 과제를 다 해주거나 하면 상대의 발전은 생각해볼 수 없다 등.
* 프로그래밍에 대해서 질문하러 오는 사람이 많다. 내가 알고있는 것이라면 바로 대답해주고 그렇지 않다면 어느정도 시간뒤에 찾아보고 대답해준다. 어느정도 시간은 10분 내외 - [김준석]
- 데블스캠프2012 . . . . 3 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 ||
|| UI프로그래밍 || [정의정](20기) ||
- 새싹교실/2011/무전취식/레벨4 . . . . 3 matches
서원태 : 창설 햇는데 생각보다 잘한것 같다. 2등을 했는데 많이 한게 없어서 제가 팀중에 꼴지할것 같음. 창설교수님한테 노트하고 펜을 드렸더니 칭찬해주심. 펜을 모르고 건국대팬을 줌. 팬은 다시받음 노트는 찢어져서 안받음. 주말에 C프로그래밍 숙제를 하는데 막막해서 7시간걸렸음. 무한도전을 못봤음 ㅠㅠ. 알고보니 봉봉교수님 PPT자료의 예시로 해놓은게 있어서 교수님꺼 보고 함. 끝.
서원태 : 오늘 비트 연산자 배웟는데 많은걸 알게되었다. C프로그래밍 숙제도 참고가 많이 될것 같다. 점점 어려워지고있어요.
김준석 : 오늘 어렵고 지루한 역시 단순암기과목에 대해 하였습니다. 하지만 윤종하 게임이 프로그래밍을 재밌게 만들어주었습니다. 이소라 도망갔어요~~~~~
- 새싹교실/2012/클러그 . . . . 3 matches
* 수업과목: C와 프로그래밍
* 프로그래밍 언어로서의 C
* 프로그래밍을 처음 접하는데도 생각보다 빠르게 익혀서 놀라웠다. - [이진규]
- 이영호/시스템프로그래밍과어셈블리어 . . . . 3 matches
System Programming을 통해 Application층 프로그래밍의 본질을 깨닫기 시작했으며, 가장 중요한 것이 Assembly란 것을 다시 한번 깨달았다.
프로그래머라면 Code의 본질을 알아야한다. 그것을 이루는 것이 Assembly이다. 이것을 수행하지 않은 프로그래머는 프로그래머가 아니라 Coder이다. Assembly로 특정 함수를 따라다니며 실제로 익히는 방법은 MSDN에서 나와있는 것을 그대로 베끼는 것보다 현명할지 모른다. 프로그래밍은 배우는것이 아니라 직접 Code를 짜보는 것이다. MSDN을 보는 것과 debug로 따라 가보는 것은 그 차이가 크다.
프로그래밍을 처음 접하는 사람으로서는 Assembly어는 무리가 있을지도 모르나, 약간의 지식을 갖춘 사람은 Assembly어를 꼭 배워야한다. Assembly어는 결코 사라질 수 없는 언어이다. 이것은 매우 중요하며, 이 때문에 대학에서도 정규 과정속에 포함되어 사라지지 않는 것이다.
- 정모/2003.1.15 . . . . 3 matches
* 뚜렷한 목표가 없다. -> 맞는 말입니다. 그냥 단순히 학교 공부에나 도움될줄 알고 나오는 사람도 꽤 있는거 같습니다. 제가 가진 생각으로는 2가지 목표가 있을거 같네요. 프로그램 짜는거와, 프로그래밍 경진대회 같은데 나가서 입상하는거 정도..2003년도부터는 과내 프로그래밍 경진대회에서 입상하면 ACM예선 대회 같은곳에 나갈 수 있도록 지원해줄거 같으니, 그런걸 목표로 해도 되고, 좋은 프로그램을 짜서 다른 사람들도 널리 쓸 수 있도록 하면서 보람을 느끼는걸 목표로 해도 되겠네요.
* 실력 없는 사람들의 열의가 금세 사라진다. -> 실력이 없어서 열의가 없는게 아니라 열의가 없어서 실력이 없는거 같네요. 이런건 뭐 주위에서 뭐라고 할 수 있는 문제가 아닌거 같습니다. 그사람이 흥미가 없어서 그런거니.. "해커 그 광기의 기록"이란 책을 보면 MIT에서도 해커적으로 프로그래밍을 즐기는 사람들과 단순히 열의 없이 주어진 공부를 하는 사람들이 있던데, 이건 뭐 어디가나 마찬가지인가 봅니다. 제 의견으로는 두 부류로 나누는건 힘들거 같습니다. 열의가 있는 사람들도 지금 힘든판에 열의가 없는사람들까지 이끌고 가긴 힘들거 같고, 아예 열의 없는 사람들이 스스로 열의가 생길때까지 놔두고 열의 있는 사람들을 주변에서 잘 포착해서 데려오는게 좋을거 같습니다. 상규를 제로페이지로 데려온것이 그 좋은 사례인거 같네요. 이번에 02 석진이 같은 경우도 열의가 있어 보이고 들어 오려고 했던거 같은데 아마 이번 정모에 안 왔을듯 싶습니다. 사람들을 데려올땐 적어도 1명이라도 좀 아는 사람이 있어서 같이 가자고 해야 갈만하지, 아무도 직접 오라고 하지 않았으면 가기가 좀 그럴겁니다. 그런걸 염두에 두고 모든이를 대상으로 하는 말인, "제로페이지는 열려 있으니 정모 아무때나 오세요~"라고 하기보다는 그 대상에게만 언제 어디로 와서 한번 보자고 직접 메신저라든지, 전화 같은걸로 해야 할듯 싶습니다.
- 정모/2003.3.5 . . . . 3 matches
=== 프로그래밍 존(가제) 프로젝트에 관한토의 ===
* 프로그래밍 존(가제)
* 데블스 캠프 후 정회원 모집, 선배님들과의 만남, 여름,겨울 엠티, 프로그래밍 잔치 등이 작년과 시기와 진행면에서 비슷하게 이어나갈 것 같습니다. 저도 아직 인계받은 것이 거의 없어서 문서화 답변은 조금 힘들 듯 합니다..^^;; --상욱(["whiteblue"])
- 정모/2006.5.22 . . . . 3 matches
- (상섭) 수업방식 : 페어 프로그래밍을 한 챕터화 시키고 선배는 힌트 정도만 준다
- (상규) 일단 신입생들은 모르는 부분이 많기 때문에 페어 프로그래밍 보다는
- (기웅) 레벨업 위주로 하되 마지막에 페어 프로그래밍을 신입생들끼리 할 수 있게 하자
- 정모/2012.3.12 . . . . 3 matches
* 생각해보니 ZeroPage에서 세미나 형식으로 공유되는 내용들의 많은 부분이 언어에 편향되어 있는 것 같아요. 저는 아키텍처와 프레임워크, 프로젝트에 관해서도 논의가 이루어지는 것이 바람직할 것이라 생각합니다. 코드와 기술적 이슈는 구하고자 하면 반드시 구할 수 있는 문제이지만 프로젝트는 '프로그래밍과 사람'에 걸쳐있는 문제라 잘 보이지 않고 답이 정해져 있지도 않아 헤메기 쉽다고 생각해요. 답을 구하지 못하고 평생을 사는 사람도 많고
* 제가 바쁜 일은 아니지만 동아리 지원사업, 동아리 방 등등.. 회장님 수고하십니다 ㅋㅋ. 제 개인적으로는 9학점 통계과 수업가서 학점 깔아주기와 전시회 출품 등으로 바쁘게 지내서인지, 이번 학기는 뭔가 일이 많은 것 같습니다. OMS는 저한테 흥미있는 주제였습니다. 최근 안드로이드 프로그래밍 하면서 스레드 간 통신에서 불안전하게 다운캐스팅 할 때 찝찝한 기분이었는데, 머리 속에 정리는 잘 안되지만 나중에 한번 검색해볼 용기는 생긴 것 같습니다. - [정진경]
* 사고가 확장되는 건 언제나 즐거운 일이네요. 수학의 기본 정의를 이용하여 Data type을 설명하신 것을 보며, 놀라웠습니다. 프로그래밍 관련 생각을 할 때 마다, 매번 '아 나의 사고(thinking)의 도메인이 너무 작어 ㅜㅜ'라는 생각을 많이 하였는데, Data type의 정의를 들으면서 '내가 평소에 인지(recognize)하지 못했기 때문에, 깊게 생각해보려고 해도 다른 분야의 개념들이 자연스럽게 생각이 떠오르지 않는구나.'라는 생각을 해보게 되었습니다. 이런 건 계속 연습을 해야겠지요 ㅜㅜㅋ 뒤쪽 부분도 상당히 흥미로웠습니다만.. 어제 몸이 아파서 밤에 잠을 못 잔 관계로; 결국 OMS듣다가 정신이 안드로메다로 날아가서 제대로 못들었네요.. 그리고 회장은 항상 수고하네요. 갑자기 많은 일을 하게 되었을텐데 수고하십니다 ㅋ -[박성현]
- 제13회 한국게임컨퍼런스 후기 . . . . 3 matches
* 3일차에는 1일차에 그래픽 부분을 들으면서 프로그래밍과 큰 연관성을 찾지 못한 까닭에 프로그래밍 위주로 찾아 다니기로 했다. 하지만, 원래 들으려고 했던 ‘좋은 게임을 최고로 만들어 주는 요소 분석’ 파트를 들으려 했으나 갑자기 잠수를 타 버리는 바람에 급하게 언리얼 엔진 주제 쪽으로 넘어갔다. 모바일 게임과 관련한 이야기를 하면서 온라인 게임과는 비용, 기간 등 많은 차이가 발생하는 것에 대해서 이야기 했다. 그러면서 아티스트들은 제발 쓸데없는 자존심 버리고 게임이 잘 돌아가게 해 달라는 요구를 하시던.. 하기야 콘솔 게임 정도 되어야 그래픽에 많은 부분 신경 쓸 수 있겠다만 모바일은 화면도 작고 하니.. 라는 생각이 들었다. 결국 메모리를 줄이기 위해 Object를 나누어 Module 사용을 해라는 이야기로 마무리 지어졌다.
* 프로그래밍과 관련한 부분이 아닌, 다른 부분 (그래픽, 오디오 등)에 대한 이해도 할 수 있었고, 다양한 프로그램들을 알 수도 있긴 했다만 뭔가 대부분이 자신들 업체 홍보에 조금 주안점이 있지 않았나 라는 생각이 들었다. – 물론 안 그런 세션도 있었고 – 특히 직접 보여주는 부분은 같이 좀 해 보았으면 더 좋지 않았나 라는 생각이 들긴 했지만 또 그렇게 하기에는 물량 지원적인 문제도 있으니... 노트북 가져오라고 했으면 좋았을 것을.. 뭐 이런 잡다한 생각이 들기도 했다.
- 지도분류 . . . . 3 matches
=== 프로그래밍 언어 ===
||["Java"]|| Sun사에서 태어나고, 여러 업체들에 의하여 발전하는 프로그래밍 언어이자 플렛폼 ||
||["Scheme"]|| MIT에서 가르치는, 함수형 프로그래밍 언어이다 ||
- 컴퓨터공부지도 . . . . 3 matches
Windows Programming 이라고 한다면 Windows 운영체제에서 Windows 관련 API 를 이용 (혹은 관련 Framework), 프로그래밍을 하는 것을 의미한다. 보통 다루는 영역은 다음과 같다. (이 영역은 꼭 Windows 이기에 생기는 영역들이 아니다. Windows 이기에 생기는 영역들은 Shell Extension 이나 ActiveX, DirectX 정도? 하지만, 가로지르기는 어떻게든지 가능하다)
Windows 에서 GUI Programming 을 하는 방법은 여러가지이다. 언어별로는 Python 의 Tkinter, wxPython 이 있고, Java 로는 Swing 이 있다. C++ 로는 MFC Framework 를 이용하거나 Windows API, wxWindows 를 이용할 수 있으며, MFC 의 경우 Visual Studio 와 연동이 잘 되어서 프로그래밍 하기 편하다. C++ 의 다른 GUI Programming 을 하기위한 툴로서는 Borland C++ Builder 가 있다. (C++ 중급 이상 프로그래머들에게서 오히려 더 선호되는 툴)
GUI Programming 을 하면서 익힐 수 있는 소중한 개념으로서 Event Driven Programming, Design 으로는 CompositePattern 이 있다. 대부분의 GUI Framework 들은 Event Driven Style 의 프로그래밍 방식이며, 대부분 CompositePattern 을 이용한다. Framework 들의 디자인 개념들이 비슷하므로, 하나의 GUI 관련 Framework 에 익숙해지면 다른 Framework 도 쉽게 익힐 수 있다.
- 코바예제/시계 . . . . 3 matches
시간 객체에 대한 인터페이스는 ObjTimeServer이며 getTime()이라는 메소드를 가지고 있는데 getTime()는 문자 형식으로 현재의 시간을 반환해 준다. CORBA 객체를 작성하는 첫번째 단계는 인터페이스를 만드는 것이다. 인터페이스는 IDL로 작성되며 인터페이스는 IDL 컴파일러로 컴파일된다. 이 IDL 컴파일러는 기본적으로 사용자가 이용하는(예를들면 VisiBroker) ORB에 포함되어 있는 것이다. IDL로 작성된 인터페이스를 컴파일하면 컴파일러는 두 개의 코드 파일을 생성해 준다. 이 코드 파일들은 각 IDL 컴파일러가 사용하도록 약정된 프로그래밍 언어로 되어 있다. 여기에서 사용하는 ORB는 Java ORB이므로 코드 파일은 Java(Stub, Skeleton)로 되어 있을 것이다. IDL 컴파일러에 의해 생성되는 코드는 프록시 객체(proxy object) 및 스켈레톤 코드이다. 클라이언트는 프록시 객체를 사용하여 IDL로 표현된 인터페이스 타입의 객체 레퍼런스에 대한 호출을 생성한다. 바꾸어 말하녀 프록시 객체는 클라이언트가 작업을 위해 사용하는 대리("stand-in") 객체인데 원격 객체가 마치 지역 객체처럼 보이게 해준다는 것이다. 스켈레톤 코드는 이러한 인터페이스를 지원하는 객체에 액세스하기 위해 사용된다. 생성되는 코드는 위치 투명성을 구현한다. 위치 투명성을 통해 객체 레퍼런스를 변환하여 네트웍 연결을 퉁해 원격 서버로 보내며, 객체 레퍼런스에 대한 오퍼레이션에 따르붙는 파라미터를 ["마샬링"]하고, 이를 객체 레퍼런스가 지시하는 객체의 현재 메소드에 전달하여 메소드를 수행하고 그 결과를 반환하려고 하는 것이다. 바꾸어 말하면 클라이언트는 IDL 컴파일러에 의해 생성된 프록시 객체를 가지고 작업을 하는데, 그것이 마치 지역 객체로 작업하는 것처럼 보일 것이라는 의미이다. ORB와 통신하는 것이 프록시 객체의 임무이며 ORB는 네트웍 연결을 관리하고 파라미터를 실제 서버 함수에 넘겨주며 결과를 리턴한다. 이런 식으로 수행에 대한 투명성을 유지한다.
클라이언트 구현은 기본적으로 다음 세 가지 단계를 통해 이루어진다. 먼저 CORBA 환경, 즉 ORB를 초기화한다. ORB를 초기화한다는 것은 ORB 의사 객체(pseudo-object)에 대한 객체 레퍼런스를 얻게 된다는 것을 의미한다. ORB가 '의사 객체'라 불리는 이유는 그 메소드가 런타임 시스템과의 통신을 통해 라이브러리의 형태로 제공되며, 의사 객체 레퍼런스는 CORBA 인터페이스 오퍼레이션에 대한 파라미터로 전달될 수 없기 때문이다. 그 다음 단계는 객체 레퍼런스를 얻는 것이다. 객체 레퍼런스는 불투명한 데이터 구조이다. 그러나 객체 레퍼런스를 문자열로 바꿈으로써 지속성을 가지게 될 수 있다. 이것은 '객체 레퍼런스의 문자열화'라 불리며, 그 결과 얻어지는 문자열을 일컬어 '문자열화 객체 레퍼런스'라고 한다.(IOR) 이 문자열화 객체 레퍼런스는 원래의 "유효한" 객체 레퍼런스로 다시 바뀔 수 있다. 이 과정은 CORBA, 즉 ORB 인터페이스에서 정의된 두 가지 오퍼레이션 object_to_string()과 string_to_object()를 이용하여 이루어진다. 모든 CORBA 2.0 호환 ORB는 상호 운용 가능한 문자열화 객체 레퍼런스를 실제 돌아가는 객체 레퍼런스로 바꿀 수 있다. 적절한 타입으로 객체의 범위를 줄이면 그러한 결과를 얻을 수 있다. 이러한 오퍼레이션을 'narrow'라 한다. ORB를 초기화하고 객체 레퍼런스를 얻은 후에야 CORBA 프로그래밍은 원래 의도한 표준 객체 지향 프로그래밍처럼 동작하게 된다. 클라언트가 객체의 메소드를 호출하게 되면, 실제로 그 메소드는 원격 객체와 함께 동작하지만 클라이언트가 보기에는 지역 객체와 함께 동작하는 것처럼 보인다.
- 코바용어정리 . . . . 3 matches
의 인터페이스 타입에 대해 스텁에 대한 프로그래밍 인터페이스를 필요로 한다. 보통 스텁은 OMG-IDL로 정의되어 있는 객체 오퍼레이션에 대한 액세를 하게 해주는데, 일단 프로그래머가 OMG-IDL 및 특정 프로그래밍 언어에 대한 언어 매핑에 친숙해지면 손쉽게 예상이 가능한 방식으로 액세르를 하게 해준다. 해당 스텁은 ORB 코어에 전용이며 최적화된 인터페이스를 사용해서 나머지 ORB들을 호출하게 될 것이다. 만약 여러 개의 ORB를 사용하게 된다면 각각의 스텁은 제 각기 해당하는 ORB를 호출하게 될 것이다. 이 경우에 ORB와 언어 맵핑은 공조하여 각각의 스텁이 특정 객체 레퍼런스와 제대로 연결될 수 있도록 해야 할 것이다.
동적 스켈레톤 인터페이스는 IDL에 기초하지 않는 스켈레톤/스텁을 가진 객체의 메소드 호출을 처리해야 하는 서버에 대해 런타임 바인딩 메커니즘을 제공한다. 동적 스켈레톤은 수신된 메시지의 파라미터값을 참조하여 어떤 객체가 호출되었는지 어떤 메소드가 호출되었는지를 알게 된다. 이것은 일반적으로 컴파일된 스켈레톤을 사용하는 것과는 비교되는데 이러한 스켈레톤에서는 메소드의 구현이 IDL로 정의된다. 구현 코드는 모든 오퍼레이션 파라미터에 대한 상세한 설명을 ORB에 제공해야 하며, ORB는 오퍼레이션을 수행할 때 사용되는 입력 파라미터값을 제공한다. 오퍼레이션이 수행된 후, 구현 코드는 출력 파라미터 또는 익셉션을 ORB에게 넘겨준다. 동적 스켈레톤 인터페이스의 특성은 프로그래밍 언어 맵핑에 따라 또는 객체 어댑터에 따라 실질적으로 달라질 수 있지만, 일반적으로는 업콜 인터페이스이다. 동적 스켈레톤은 클라이언트 스텁 또는 DII를 통해서 호출될 수 있다. 이 두 가지 방식의 클라이너트 리퀘스트 생성 인터페이스는 동일한 결과를 제공한다.
- 타도코코아CppStudy/0728 . . . . 3 matches
* 윈도우 프로그래밍의 기본
* 없습니다. 대신 윈도우즈 프로그래밍의 기본을 공부해오세요. 자신이 이해갈때까지
* 게임 만드는데 필요한 간단한 프로그래밍적 지식
- 토비의스프링3/밑줄긋기 . . . . 3 matches
* 스프링을 사용하는 개발자들은 자연스럽게 자바와 엔터프라이즈 개발의 기본에 충실한 베스트 프랙티스를 적용할 수 있고, 이상적인 개발 철학과 프로그래밍 모델을 이해하게 되고, 좋은 개발 습관을 체득하게 된다.
* 객체지향적인 코드는 다른 오브젝트의 데이터를 가져와서 작업하는 대신 데이터를 갖고 있는 다른 오브젝트에게 작업을 해달라고 요청한다. 오브젝트에게 데이터를 요구하지 말고 작업을 요청하라는 것이 객체지향 프로그래밍의 가장 기본이 되는 원리이기도 하다.
* 스프링을 DI 프레임워크라고 부르는 이유는 외부 설정정보를 통한 런타임 오브젝트 DI라는 단순한 기능을 제공하기 때문이 아니다. 오히려 스프링이 DI에 담긴 원칙과 이를 응용하는 프로그래밍 모델을 자바 엔터프라이즈 기술의 많은 문제를 해결하는 데 적극적으로 활용하고 있기 때문이다. 또, 스프링과 마찬가지로 스프링을 사용하는 개발자가 만드는 애플리케이션 코드 또한 이런 DI를 활용해서 깔끔하고 유연한 코드와 설계를 만들어낼 수 있도록 지원하고 지지해주기 때문이다.
- 포항공대전산대학원ReadigList . . . . 3 matches
③ 운영체계 및 프로그래밍 언어
♣ 분야 3 (운영체제 및 프로그래밍 언어)
◊ 프로그래밍 언어
- 프로그래밍언어와학습 . . . . 3 matches
* 사족2) 예전 마소의 김재우씨가 '프로그래밍의 숨겨진 진실과 거짓' 관련 기사 나왔을때 강규영씨의 반박문을 읽을때도 약간 핀트가 안맞는다란 느낌이 들었는데.. 뒤의 토크백들을 보면.. 또 한번 한숨. --석천
p.s.2 토크백에 자바를 대학에서 가르칠 것을 주장하며 "파스칼 따위는 이제는 버려야죠"라는 말이 있는데, 버리려면 먼저 가지고 있어야 할 뿐 아니라, 파스칼을 갖거나 버리거나 하는 것은 이제 큰 의미가 없습니다. 구조적 프로그래밍 같은 파스칼을 주축으로 한 패러다임을 배우는 것이 중요합니다. OOP는 구조적 프로그래밍을 감싸안고 더 자라난 것이지 뒤에 남겨두고 진보한 것이 아닙니다.
- 프로그래밍잔치/둘째날 . . . . 3 matches
신입회원들이 고객의 역할, 기존회원들과 고객이 같이 하나의 팀이 되어 프로그램을 완성해내는 팀 프로그래밍 게임.
후기 : ["프로그래밍잔치/둘째날후기"]
["프로그래밍잔치"]
- 05학번만의C++Study . . . . 2 matches
7. 함수-C++의 프로그래밍 모듈
* 1~3장 단원명좀 알려주라. 다음주까지 C++기초 프로그래밍 책을 못구할꺼같아. 다른책으로라도 공부해서 와야겠다 ... ㅋ - [최경현]
- 1thPCinCAUCSE/ExtremePair전략 . . . . 2 matches
* ["컴공과프로그래밍경진대회"](1회 대회)에서 {{{~cpp Extreme Pair}}} 팀의 전략을 공유하는 페이지 입니다.
* ["TestDrivenDevelopment"]를 사용했다고 말하기는 그렇지만 테스트 케이스를 입력으로 넣어놓고 프로그래밍 중간 중간에 제대로 돌아가는 지를 확인하기 위해 지금까지의 진행 상황을 출력했습니다.
- 1thPCinCAUCSE/null전략 . . . . 2 matches
도구는 연습장과 인덱스 카드, assert 문을 이용한 테스트 케이스 등을 이용했습니다. 연습장과 인덱스 카드는 주로 개개인 수식과 중요 변수들을 적기 위해, 또는 그림을 그리기 위해 이용했고 (두 도구의 용도가 구분되어있진 않았음) 문제에 대해서 답이 나왔다하는 가정하에 (문제지에 Sample Input->Output 이 나와있었기에 가능했습니다.) Backward 로 문제가 해결된 상황을 가정하고, 그러기 위해 필요한 변수들을 찾아나가는 방법으로 진행했습니다. 프로그래밍 스타일은 Structured 스타일의 Stepwise Refinement & PBI & assert 를 이용한 TDD 를 사용했습니다.
문제에 대해 역시 B 번을 진행하던 스타일대로 Structured 로 진행했는데, 초반에 너무 코드위주로 각 변수들을 뽑아내려고 접근한 것이 문제가 되었던 것 같습니다. 여유를 두고 페이퍼 프로그래밍을 했어도. 바늘들에 대해서 OO 로 접근했으면 좀 더 쉽지 않았을까 생각.
- 2ndPCinCAUCSE . . . . 2 matches
2회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회에 대한 자료.
[컴공과프로그래밍경진대회]
- 2thPCinCAUCSE . . . . 2 matches
2회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회에 대한 자료.
See Also ["컴공과프로그래밍경진대회"]
- 3DStudy_2002 . . . . 2 matches
* ["3D프로그래밍시작하기"] : 3D를 시작하는 이를 위해 (김학규 님 글) - 퍼온글
* ["3D프로그래밍관련서적"] : 책 추천 -HS
- 3D프로그래밍시작하기 . . . . 2 matches
3차원 프로그래밍을 하려면 최소한 맥스(3d studio max)의 기본정도 (화면에 박스 배치하고 연결해서 움직이기등) 는 알아두는 것이 필수입니다.
http://cg.cs.tu-berlin.de/~ki/engines.html 에 보면 여러가지 공개, 상용 엔진들의 리스트가 정리되어 있습니다. 아마 3D 프로그래밍하는 사람치고 이 페이지에 안가본 사람은 별로 없을것입니다만, 노파심에서..
- 3rdPCinCAUCSE . . . . 2 matches
3회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회에 대한 자료.
[컴공과프로그래밍경진대회]
- 5인용C++스터디 . . . . 2 matches
* [5인용C++스터디/윈도우즈프로그래밍]
* [5인용C++스터디/소켓프로그래밍] - 나휘동
- 5인용C++스터디/API에서MFC로 . . . . 2 matches
* 윈도우즈 프로그래밍을 보다 객체지향적으로 하기 위하여 MS에서 만든 클래스 라이브러리.
=== 윈도우즈 프로그래밍에 필요한 요소들을 클래스로 포장 ===
- ACM_ICPC/2013년스터디 . . . . 2 matches
* 제2회 대학생프로그래밍 대회 동아리 연합 [http://algospot.com/judge/problem/list/?source=제%202회%20전국%20대학생%20프로그래밍%20대회%20동아리%20연합%20대회 링크]
- ALittleAiSeminar . . . . 2 matches
* 파이썬 프로그래밍 가능한 사람 1명 이상
혹은, 구현 자체가 간단하므로 간단히 문법을 도움받아서 프로그래밍 진행해도 좋음
- AOI/2004 . . . . 2 matches
잠깐 다른 사람 소스들을 봤는데 이런식이 많더라. 나쁘다는 건 아니다. 실제로 재동과 상규가 프로그래밍대회에서는 저런식으로 했었다. 이유는 대회에선 무조건 속도전이라 함수 이름이나 함수의 길이는 신경쓰지 못하기 때문이였다. 하지만 적어도 대회가 아닌 연습에서는 좀 더 흐름을 알아보기 쉽게 하는게 좋을 거 같다. --재동
오늘은 오래간만에 C++로 코딩해 봤다. 속도 최우선 프로그래밍으로... 다음에 할 때는 다른 언어로, 또는 OOP로, 또는 TDD로 코딩해봐야겠다. --재동
- ATmega163 . . . . 2 matches
* 자체 프로그래밍 가능한 플래쉬 메모리
== 프로그래밍에 필요한 유틸리티 ==
- ActiveXDataObjects . . . . 2 matches
마이크로소프트 ADO(ActiveX Data Objects)는 데이터 소스에 접근하려고 고안된 COM객체이다. 이것은 프로그래밍 언어와 데이터 베이스 사이의 층을 만들어준다. 이 층은 개발자들이 DB의 구현부에 신경쓰지 않고 데이터를 다루는 프로그램을 작성하도록 해준다. ADO 를 이용할 경우, 데이터베이스에 접근하기 위해서 SQL 을 알 필요는 없다. 물론, SQL 커맨드를 수행하기 위해 ADO 를 이용할 수 있다. 하지만, SQL 커맨드를 직접 이용하는 방법은 데이터베이스에 대한 의존성을 가져온다는 단점이 있다.
새로운 프로그래밍 프레임웍인 .NET에서 MS는 ADO의 업그레이드 버전인 ADO.NET을 만들었다. ADO.NET의 객체 구조는 기존의 ADO와는 꽤 다르다. 하지만 ADO.NET은 아직까지는 대중화되거나 성숙화되지 못했다.
- C++3DGame . . . . 2 matches
C++ 3D 게임 프로그래밍[[BR]]
=== 3. 그래픽 프로그래밍 개요 ===
- C++Seminar03/SimpleCurriculum . . . . 2 matches
* 강의주제 : {{{~cpp The Little Man Computer}}}, 프로그래밍 개론
벌써 오늘이군요.. 책을 좀 보기는 봤지만. 잘 할 수 있을지.. 아직도 프로그래밍 개론(?) 에 대해서는... 쿨럭.. --선호
- ComponentObjectModel . . . . 2 matches
COM은 소프트웨어 컴포넌트를 위해 만들어진 Microsoft 사의 기술이다. 이는 수많은 MS사의 프로그래밍 언어에서 소프트웨어간 통신과 동적 객체생성을 가능케한다. 비록 이 기술이 다수의 플랫폼상에서 구현이 되기는 하였지만 MS Windows 운영체제에 주로 이용된다. 사람들은 .Net 프레임워크가 COM을 어느정도까지는 대체하리라고 기대한다. COM 은 1993년에 소개되고 1997즈음해서 MS가 강조한 기술이다.
예전에 COM 프로그래밍을 하다가 Java 에서의 결과물들을 보면서 'COM 은 OS 플랫폼/C & C++ 한계 내에서의 컴포넌트 모델이라면, Java 에서의 Component (Beans) 는 VM 위에서의 자유로운 컴포넌트 모델이구나' 라는 생각이 들기도. .NET 플랫폼 이후에 COM 이 사라지게 되는건 어쩌면 당연한 수순일 것이다.
- CppStudy_2002_1/과제1/CherryBoy . . . . 2 matches
// 1번 프로그래밍 연습...
// 2번 프로그래밍 연습...
- CppStudy_2002_2 . . . . 2 matches
* C++의 문법도 익히고, 나아가서 사용법, OOP에 대해서 더 친숙 해지기, 다양한 과제를 통한 프로그래밍 경험 쌓기
프로그래밍을 하는데 큰 도움이 되리라 믿고 하겠습니다 --재동
- DPSCChapter1 . . . . 2 matches
''The Design Patterns Smalltalk Companion'' 의 세계에 오신걸 환영합니다. 이 책은 ''Design Patterns Elements of Reusable Object-Oriented Software''(이하 DP) Erich Gamma, Richard Helm, Ralph Johnson, and Jogn Vlissides(Gamma, 1995). 의 편람(companion, 보기에 편리하도록 간명하게 만든 책) 입니다. 앞서 출간된 책(DP)이 디자인 패턴에 관련한 책에 최초의 책은 아니지만, DP는 소프트웨어 엔지니어링의 세계에 작은 혁명을 일으켰습니다. 이제 디자이너들은 디자인 패턴의 언어로 이야기 하며, 우리는 디자인 패턴과 관련한 수많은 workshop, 출판물, 그리고 웹사이트들이 폭팔적으로 늘어나는걸 보아왔습니다. 디자인 패턴은 객체지향 프로그래밍의 연구와 개발에 있어서 중요한 위치를 가지며, 그에 따라 새로운 디자인 패턴 커뮤니티들이 등장하고 있습니다.(emerge 를 come up or out into view 또는 come to light 정도로 해석하는게 맞지 않을까. ''이제 디자인 패턴은 객체지향 프로그래밍의 연구와 개발에 있어서 중요한 위치를 가지고 있으며, 디자인 패턴 커뮤니티들이 새로이 등장하고 있는 추세입니다.'' 그래도 좀 어색하군. -_-; -- 석천 바꿔봤는데 어때? -상민 -- DeleteMe)gogo..~ 나중에 정리시 현재 부연 붙은 글 삭제하던지, 따로 밑에 빼놓도록 합시다.
- DoItAgainToLearn . . . . 2 matches
저는 ACM의 ICPC 문제 중에 어떤 놈을 이제까지 열 번도 넘게 풀었습니다. 대부분 PairProgramming이나 세미나에서 프로그래밍 시연을 했던 것인데, 제 세미나에 여러번 참석한 친구가 물었습니다. "신기해요. 창준씨는 그 문제를 풀 때마다 다른 프로그램을 짜는 것 같아요. 혹시 준비를 안해와서 그냥 내키는 대로 하는 건 아니죠? :)" 저는 카오스 시스템과 비슷하게 초기치 민감도가 프로그래밍에도 작용하는 것 같다는 대답을 해줬습니다. 저 스스로 다른 해법을 시도하고 싶은 마음이 있으면 그렇게 출발이 조금 다르고, 또 거기서 나오는 진행 방향도 다르게 됩니다. 그런데 중요한 것은 이렇게 같은 문제를 매번 다르게 푸는 데에서 배우는 것이 엄청나게 많다는 점입니다. 저는 매번, 전보다 개선할 것을 찾아 내게 되고, 또 새로운 것을 배웁니다. 마치 마르지 않는 샘물처럼 계속 생각할 거리를 준다는 점이 참 놀랍습니다. --JuNe
- EightQueenProblemDiscussion . . . . 2 matches
당신은 어떤 식으로 이 문제에 접근을 했고, 어떤 사고의 과정을 거쳤으며, 어떤 과정으로 프로그래밍을 했으며, 어떤 디자인 결정을 했습니까? 만약 실패했다면 당신이 했던 것 혹은 하지 않았던 것 중 무엇이 실패의 주요인이었다고 분석을 하십니까?
만약 당신보다 더 짧은 시간에, 더 짧은 코드로 문제를 해결한 사람이 있다면, 그 사람과 함께 PairProgramming (혹은 NetMeeting 등을 이용, VirtualPairProgramming)을 해서 그 문제를 함께 새로 풀어보세요. 당신은 무엇을 배웠습니까? 그 사람은 어떤 방식으로 프로그램의 올바름(correctness)을 확인합니까? 그 사람은 디버깅을 어떻게 합니까(혹은 디버깅이 거의 필요하지 않은 접근법이 있던가요)? 그 사람은 어떤 순서로 문제에 접근해 갑니까? 그 사람은 어느 정도로까지 코드를 모듈화 합니까? 이 경험이 당신의 프로그래밍에 앞으로 어떤 변화를 불러올 것이라 생각합니까?
- FreechalAlbumSpider . . . . 2 matches
=== 프로그래밍 ===
주로 제로보드 데이터로 변환하기 위한 데이터베이스 저장 부분인데, 첫번째 이유로는 제로보드 DB 의 스키마를 제대로 파악하지 못한것이 문제였다. 이 문제는 프리첼->제로보드 컨버터 PHP 소스를 보고 이를 Python 으로 포팅하였다. 이전에 PHP 프로그래밍을 많이 했기 때문에 익숙했고, 어차피 같은 어족군(?)의 언어이므로 별다른 어려움이 없었다. 하지만, 테스트 경우를 명확하게 하지 않았기 때문에, 작동이 제대로 되지 않는지에 대해서는 게시판 변환뒤 매번 웹에서 나온 결과를 확인해야 했다.
- GameProgrammingGems . . . . 2 matches
위의 Game Programming Gems는 게임에 쓰이는 전반적인 알고리즘(2D, 3D, AI(길찾기 포함))들을 전반적으로 대부분 다루어 놓고 얼마나 효율적인 프로그래밍을 할 수 있고 어떻게 해야 가능한 가를 보여주는 책이 되겠다. [[BR]]
=== 프로그래밍 기법들 ===
- Gnucleus . . . . 2 matches
윈도우 네트워크 프로그래밍을 하는 사람이라면 한번쯤 소스를 통해서 윈도우의 메시지 드리븐을 최대한 이용한
소켓 프로그래밍의 정화를 볼 수 잇다.
- HardcoreCppStudy/두번째숙제 . . . . 2 matches
=== 객체지향 프로그래밍의 특징 ===
* OOP(객체지향 프로그래밍)의 주요 특징인 데이터 은닉, 캡슐화, 상속성, 추상화, 다형성에 대해서 기술하세요.
- HardcoreCppStudy/두번째숙제/CharacteristicOfOOP/김아영 . . . . 2 matches
상속이란, 기존에 만들어 놓은 객체들로 부터 모든 변수와 메소드를 물려 받아 새로운 객체를 만들 수 있다는 것을 뜻한다. 즉, 새프로그램을 만들 때 기존의 자료를 이용해(상속받아) 새롭게 정의하여 사용한면 된다는 것이다. 이로인해 부수적으로 프로그래밍의 노력이 줄고 시간 단축되며 그리고 OOP의 가장 중요한 재사용성(Reusability) 얻을 수 있다. 델파이는 TObject라는 최상위 객체로부터 상속시켜 단계적으로 하위 객체들을 생성해 만들어진 구조를 지니고 있다.
객체지향 프로그래밍에서 다형성이란 근본적으로 상속에 뿌리를 두고 있다. 조상 클래스로부터 상속을 받아 새로운 객체들이 파생되어 생성된다. 이때 만약 새객체들이 모두 조상 클래스와 모두 동일한 값만 가지고 있다면 새로운 객체로서 의미가 없다. 왜냐면 그것을 만드는 이유는 무언가 다른 역할을 하기 위해 생성하는 것이기 때문이다. 그래서 다형성이란 조상이되는 객체로부터 상속을 받아 다른 결과물을 산출해 낼때 다형성이라는 의미를 부여할 수 있게 된다.
- HardcoreCppStudy/두번째숙제/CharacteristicOfOOP/변준원 . . . . 2 matches
객체지향 프로그래밍에서 "속성 상속"은 새로운 클래스를 정의할 때 모든 것은 처음부터 다 정의하는 것이 아니라 이미 존재하는 유사한 클래스를 바탕으로 하여 필요한 속성만 추가하여 정의하는 경제적인 방법을 의미한다. 이 때 새로이 생기는 클래스를 subclass라 하고 그 바탕이 되는 클래스를 superclass라 한다. 이렇게 하면 클래스들 사이에서 공통으로 가지는 특성, 즉 데이타 구조나 함수들은 중복하여 정의하는 일을 줄일 수 있을 뿐 아니라, 특성을 수정하거나 추가시에 superclass의 정의만 고치면 그 subclass들도 변경된 속성을 자동적으로 상속받게 되므로 매우 편리하다.
정보 은폐란 캡슐속에 쌓여진 항목에 대한 정보를 외부에 감추는 것을 의미한다. 즉, 처리하려는 데이타 구조와 함수에 사용된 알고리즘 들을 외부에서 직접 접근하지 못하도록 하고 캡슐 내부의 함수들만이 접근하게 된다. 객체지향에 관한 서적이나 논문에서 이 두가지 개념이 중요시 소개되는 것은 바로 객체라는 것이 캡슐화와 정보 은폐의 원리를 실제의 프로그래밍 언어에서 실현한 것이기때문이다.
- HelloWorld . . . . 2 matches
프로그래밍의 첫걸음으로 HelloWorld를 출력하는 관습은 1978년에 출판된, 브라이언 커니핸과 데니스 리치가 쓴 "The C Programming Language"라는 책에서 비롯되었다.
이미 이 예제가 나올때부터 '프로그래밍이란 현실세계에 대한 가상세계로의 모델링' 이라는 개념을 들고 온 것이 아닐까. 새로운 세상에 대한 노크. 아. 멋지도다;
- HowToCodingWell . . . . 2 matches
* 글을 잘 쓰기 위해서 필요한 것 세가지는 다독(多讀), 다작(多作), 다상량(多商量)이라는 유명한 말이 있습니다. 많이 읽고 많이 쓰고 많이 생각하라는 뜻입니다. 코딩을 잘하기 위해 필요한 것도 같다고 생각합니다. 좋은 코드를 많이 접해보고, 직접 코딩을 많이 해보고, 프로그래밍에 대해 고민을 많이 해보면 잘하게 되지 않을까요? - [김수경]
[FrontPage], [프로그래밍분류], [학습방법분류]
- HowToStudyXp . . . . 2 matches
* The Psychology of Computer Programming (Gerald M. Weinberg) : 프로그래밍에 심리학을 적용한 고전. Egoless Programming이 여기서 나왔다.
이게 힘들면 같이 스터디를 하는 방법이 있습니다(스터디 그룹에 관한 패턴 KH도 참고하시길. http://www.industriallogic.com/papers/khdraft.pdf). 이 때 같이 책을 공부하거나 하는 것은 시간 낭비가 많습니다. 차라리 공부는 미리 다 해오고 만나서 토론을 하거나 아니면 직접 실험을 해보는 것이 훨씬 좋습니다 -- 두사람 당 한대의 컴퓨터와 커대란 화이트 보드를 옆에 두고 말이죠. 제 경우 스터디 팀과 함께 저녁 시간마다 가상 XP 프로젝트를 많이 진행했고, 짤막짤막하게 프로그래밍 세션도 많이 가졌습니다.
- IntelliJ . . . . 2 matches
그리고 Programming By Intention 을 툴 차원에서 철학으로 지원하는 IDE 라는 점이 가장 마음에 든다. IntelliJ 로 프로그래밍을 할때는 툴과 대화를 하며 프로그래밍한다는 느낌이 든다고 할까. --[1002]
- JavaStudy2003/첫번째과제 . . . . 2 matches
* 위 세개는 알아보기만 해도 되겠지만 마지막 프로그래밍은 힘들꺼라고 예상합니다^^; 자바라는 프로그램을 하기 위해선 어떤것을 설치해야 하고 그것을 또 컴파일하고 실행시키는데 있어서 애로사항이 많을꺼라고 봅니다. 스스로 찾아서 해 보세요. 과제 제출은 위키에 받겠습니다.
'' 영어로 되어있다고 이곳을 보지 않는데요. 여러분이 해야할 과제 중 "Hello, World!" 를 출력하는 프로그래밍을 하는 방법이 그대~로 나와있습니다. 그냥 보고 따라하면 되는 정도로...ㅡ.ㅡ; ''
- JosephYoder방한번개모임 . . . . 2 matches
강조했던것은 Agile과 Refactoring의 상관관계였는데 둘다 얽히면 굉장한 시너지를 내기 때문에 목적은 달라도 병행해서 쓰면 좋다고했다. Agile을 지금 쓰는 사람 있냐고 물어봤는데 손들기는 뭐했다. Face-to-Face, pair 프로그래밍. Communication 만세다! Agile기법에 대해 Refactoring에 대해 자신의 이념, 이상이 들어간 코드를 만드는 프로그래머가 반대를 한다면 Pair프로그래밍을 통해 '너만의'코드가 아닌 '우리'의 코드라는것을 인식시켜주는게 좋다고 했다. 근데 그런사람이 있을까? 여튼 경험에 우러나온 대답같았다.
- KAIST전산대학원면접/06전기 . . . . 2 matches
잘쓰면 프로그래밍의 OCP원칙에 따라 결합도 낮고 응집도 높은
프로그래밍을 짤수 있고 유지보수가 재사용성을 늘릴수 있다고
- LearningToDrive . . . . 2 matches
최근 무지 하기 싫어하면서 억지로 했던 알바 하나가 있었죠. 기획도 늦게 나오고, 그러면서 해당 기일에는 제대로 맞출것을 얘기하면서 '너희들이 고생 좀 해줘라' 식으로 말하는 것도 괭장히 맘에 안들었었고. 시간쫓기며 프로그래밍 하는 중간에 '이기능 넣으면 어떻겠니? 이렇게 했으면 좋겠는데..'
그때는 괭장히 짜증나고 그랬었는데.. 한편으론 제가 도량이 더 넓었다면 어땠을까 하는 생각도 해봅니다. 애시당초 기획할때 제가 아는 범위 내에서 도와주려고 노력했다면, 프로그래밍 중간중간 완성된 것 보여주면서 원하는 것에 대해 제대로 수렴을 시킨건지 물어봤었더라면.
- MFCStudy2006/1주차 . . . . 2 matches
* MFC를 이용한 기본적인 프로그래밍
* MFC 프로그래밍을 하는데 있어 기본적으로 생성되는 5개의 클래스와 그 함수의 쓰임을 알아오시오.
- MFCStudy_2002_1 . . . . 2 matches
* ["EightQueenProblem"] OOP 로 해오십시오. 다음 모임은 8/29 오전 11:00 입니다. ["프로그래밍잔치"] 전에 잠깐 모여서 마지막 모임을 가집시다. ^^
["MFC프로그래밍시작하기"]
- MicrosoftFoundationClasses . . . . 2 matches
Microsoft Foundation Classes 를 줄여서 부른다. 기정의된 클래스의 집합으로 Visual C++이 이 클래스들을 가반으로 하고 있다. 이 클래스 군은 MS Windows API를 래핑(Wrapping)하여서 객체지향적 접근법으로 프로그래밍을 하도록 설계되어 있다. 예전에는 볼랜드에서 내놓은 OWL(Object Windows Library)라는 것도 쓰였던 걸로 아는데... -_-; 지금은 어디로 가버렸는지 모른다. ㅋㅋ
[GUIProgramming] [MFC] [MFC프로그래밍시작하기]
- MineFinder . . . . 2 matches
2월 16일까지 프로그래밍 완료. 2월 23일까지 문서화 완료.
''프로그래밍이 뭐라고 생각하세요? 여러가지 답이 나올수 있겠지만, 저는 현실세계에 있는 것들을 가상세계로 모델링하는 것이라고 생각했어요.''
- MockObjects . . . . 2 matches
사용 예1) 여러 사람이 프로그래밍 할때, 독립된 프로그램이 아닌 모듈별로 프로그램을 만들고 있는 경우. 이럴때 해당 모듈을 작성하고 테스트 코드를 만들려고 해도, 다른 모듈의 의존성 때문에 진행이 어렵게 된다. 아직 완성되지 않은 의존성을 가진 모듈을 MockObject로 만듬으로서 해당 모듈을 만드는 동안의 의존성문제를 해결할 수 있다.
사용 예2) Datatbase 와 관련된 프로그래밍에 대해서 UnitTest를 할때, DB Connection 에 대한 MockObject를 만들어서 DB Connection을 이용하는 객체에 DB Connection 객체 대신 넣어줌으로서 해당 작업을 하게끔 할 수 있다. 그리고 해당 함수 부분이 제대로 호출되고 있는지를 알기 위해 MockObject안에 Test 코드를 넣어 줄 수도 있다.
- MoreEffectiveC++/Efficiency . . . . 2 matches
C++에 알맞는 lazy evaluation은 없다. 그러한 기술은 어떠한 프로그래밍 언어에도 적용 될수 있다. 그리고 몇몇 언어들-APL, 몇몇 특성화된 Lisp, 가상적으로 데이터 흐름을 나타내는 모든 언어들-는 언어의 한 중요한 부분이다. 그렇지만 주요 프로그래밍, C++같은 언어들은 eager evaluation를 기본으로 채용한다. C++에서는 사용자가 lazy evaluation의 적용을 위해 매우 적합하다. 왜냐하면 캡슐화는 클라이언트들을 꼭 알지 못해도 lazy evaluation의 적용을 가능하게 만들어 주기 때문이다.
- OOP/2012년스터디 . . . . 2 matches
* 객체지향적으로 프로그래밍을 하는 방법에 대해서 공부합니다.
* 목표 : 객체지향적으로 프로그래밍
- ObjectOrientedProgramming . . . . 2 matches
객체 지향 프로그래밍.
[프로그래밍분류]
- OpenGL스터디 . . . . 2 matches
실시간 3D 그래픽을 위한 API 프로그래밍 방식에는 즉시모드와 보류모드 두가지 방법이 있다.
* 들어가기전에 openGL은 프로그래밍 언어가 아닌 ''그래픽 하드웨어 제어를 위한 소프트웨어 인터페이스''이다. 그리고 높은 이식성을 지닌 그래픽&모델링 라이브러리이다. 다시말해, OpenGL은 언어가 아닌 API이다.
- PairProgrammingForGroupStudy . . . . 2 matches
PairProgramming이란 ExtremeProgramming이라고 하는 새로운 소프트웨어 개발 방법론의 한가지 기법으로, 두명이 한 컴퓨터를 이용해서 같이 프로그래밍을 하는 것을 말합니다.
이 방식을 소프트웨어 개발 업체에서 적용한 것은 Apprenticeship in a Software Studio라는 문서에 잘 나와 있습니다. http://www.rolemodelsoft.com/papers/ApprenticeshipInASoftwareStudio.htm (꼭 읽어보기를 권합니다. 설사 프로그래밍과는 관련없는 사람일지라도)
- PatternOrientedSoftwareArchitecture . . . . 2 matches
* Scenario1 - top-down communication, 가장 잘 알려진것이다. 클라이언트가 레이어 N에게 요청을 한다. 그러면 레이어 N은 홀로 모든 작업을 할 수 없기 때문에 하부 작업을 레이어 N-1에게 넘긴다. 그러면 레이어 N-1은 자신의 일을 하고 레이어 N-2에게 하부 작업을 넘기고, 이런식의 과정이 레이어 1에 도달할때까지 이루어 진다. 그래서 가장 낮은 수준의 서비스가 수행된다. 만약 필요하다면 다양한 요청에 대한 응답들이 레이어 1에서 레이어 2, 이런식으로 레이어 N에 도달할때까지 이루어진다. 이러한 top-down 소통의 특징은 레이어 J는 종종 레이어 J+1로부터 온 하나의 요청을 여러개의 요청으로 바꿔서 레이서 J-1에게 전한다. 이는 레이어 J가 레이어 J-1보다 더 추상적이기 때문이다. 덜 추상적인것이 여러개 모여서 더 추상적인것이 되는 것을 생각해보면 이해가 갈것이다.(예를 들어 복잡한 소켓 프로그래밍을 자바에서는 간단한 명령어로 금방 한다.)
* 예제 : 여기서는 프로그래밍 언어를 예로 들어서 설명했다.
- ProgrammingPearls/Column3 . . . . 2 matches
* 프로그래밍을 쉽게 하기 위해, 편리한 도구(HTML, Name-Value Pairs, 스프레드시트, 데이터 베이스, 등등)를 갖추자는 것이다. 별로 볼 거 없다.
'''표현은 프로그래밍의 본질이다.'''
- ProjectPrometheus/개요 . . . . 2 matches
이런 프로젝트가 컴공과 학생에게 쉽게 떨어질리는 만무하다. 그래서 대부분은 디자인 단계에서 끝내게 된다. 유스케이스 몇개 그려보고 끝나는 것이다. 좀 더 용감하고 야망이 높은 사람들은 밑바닥부터 구축을 해나갈지도 모르겠다. 어찌 되었건 프로그래밍은 중요하다. 빌게이츠가 늘 하는 말이 "Code is the thing"이란다. 만약 프로그래밍을 직접 해보지 않고 끝내게 되면 자신이 배울 수 있는 엄청난 크기의 빙산을 그냥 지나치는 셈이다.
- ProjectSemiPhotoshop/Journey . . . . 2 matches
* 아직은 이해하기도 힘들고, 어려운 프로그래밍이지만 앞으로 열심히 해서 세미 포토샵때는 정말 Pare Programming이 될 수 있도록 열심히 공부할께~ -- 현민
* 프로그래밍 자체가 약간 게임과 같은 느낌이 좋왔고, 현민이가 어땠는지 궁금하다. 해깔리기만 하지 않을까? --["neocoin"]
- ProjectZephyrus/Afterwords . . . . 2 matches
* PP를 너무 지나치게 했다 - 서버팀의 경우 후반으로 가면서 '이건 차라리 각자 프로그래밍하는게 더 효율적이였을텐데' 하는 생각이 들었다.
- PairProgramming 전에 진행 전략을 세웠다. (5분 PP 라던지, PP 순서시 간단한 Modeling 뒤, Sequence Diagram 등을 그리고 난 뒤 진행을 한다던지, 후배들에게 프로그래밍이 완성되었을 경우에 어떠어떠하게 돌아갈 것이다 라고 미리 그 결과를 생각해보게끔 유도)
- Project메모장 . . . . 2 matches
*2005.2.21: 프로젝트 구조 변경 완료. 프로그래밍 시작.
*처음하는 DB응용프로그래밍의 압박을 느낌.
- RUR-PLE . . . . 2 matches
* 프로그래밍은 재밌다는 것을 느끼게 해줄 툴
* 컴퓨터 프로그래밍을 익히는 것은 악기를 익히는 것과 비슷하다. 당신은 그것에 관해 단순히 읽기 말고 해봐야 한다.
- RoboCode . . . . 2 matches
* 로보코드(Robocode)란 스크린 상에서 전투하는 자바 객체인 자바 로봇을 만들어 개발자들이 자바를 배울 수 있도록 하는 프로그래밍 게임입니다.
로보코드는 초보자들이 자바에 쉽게 접근할 수 있도록 도와주며, 전문가들은 이를 이용하여 다른 개발자들과 실력을 견주면서 자신의 프로그래밍 스킬을 향상시킬 수 있도록 합니다.
- RonJeffries . . . . 2 matches
40여년간 프로그래밍을 해온 분인데, 인터뷰 중에 "장차 프로그래머가 되려는 한국의 젊은이들에게 어떤 말을 해줄 수 있겠느냐"라는 질문에 답한 내용이 인상적입니다.
왜이리 찔리는지. -_-; 특히 마지막문장.. 프로그래밍을 하다보면 가끔 누구를 위한 프로그램인가를 간과하게 되는 경우가 많게 되는지라서.. ^^;
- Ruby/2011년스터디 . . . . 2 matches
* [http://www.yes24.com/24/Goods/2314079?Acode=101 프로그래밍 루비]의 목차를 참고하여 진행
* 루비는 매우 동적이기 때문에(실행중에도 메서드를 정의할 수 있다) 테스트 또한 동적으로 이루어져야 한다(프로그래밍 루비 26장 참고)
- SchemeLanguage . . . . 2 matches
MIT에서 가르치는 프로그래밍 언어로, 흔히 우리가 알고 있는 C/C++, Java 등과는 완전히 다른 개념의 함수형 언어이다.
* http://zeropage.org/pub/language/scheme/quickref.txt - Quick Reference로 프로그래밍을 할 때 참고할만한 자료
- ServiceOrientedProgramming . . . . 2 matches
Adrian Tang 교수의 UbiquitousComputing 관련 강연에서 잠깐 언급되어서 웹을 뒤져봤는데 자료가 꽤 있는것 같다. UbiquitousComputing 과 SemanticWeb 등등과 맞물려 있는 프로그래밍 패러다임인것 같다. 개념정리를 해서 이곳에 정리를 해볼 예정 - [임인택]
[프로그래밍분류]
- SwitchAndCaseAsBadSmell . . . . 2 matches
케이스문이 줄줄이 나오는 것이나 비슷한 구조가 반복되는 것이나 모두 "나쁜 냄새"(Moa:BadSmell )입니다. 조금이라도 나쁜 냄새가 나면 바로바로 냄새 제거를 해야 합니다. 예컨대, 반복되는 케이스문은 테이블 프로그래밍(Table/Data Driven Programming)으로 해결할 수 있습니다.
사실은 이런 종적 상태로서의 프로그램이 중요한 것이 아니고, 어떻게 이런 프로그램에 도달할 수 있었는지, 그 사고와 프로그래밍의 과정이 중요합니다.
- ThePragmaticProgrammer . . . . 2 matches
프로그래머는 일련의 도구들(에디터, 객체 관리자, 버전 트래커)을 사용하여 어떤 환경하에서(하드웨어 어셈불리상의 운영시스템) 운용될 수 있는 제품(프로그램)를 만들어내도록 훈련받은 공예가에 비유할 수 있다. 다른 공예작업과 마찬가지로, 컴퓨터 프로그래밍도 대학이나 관련학원에서 가르쳐지지 않는/쉽게 터득할 수 없는 지식과 지혜를 집적하여 완성해 가는 과정을 갖는다.
번역서(실용주의프로그래머)를 한 번 다 읽었지만 다시 봐야 할 내용이 너무 많이 있다. 다루는 분야가 매우 넓으면서도 각 장은 시간이 지나도 값어치 있을 실용적인 정보를 담고 있다. 언제 멈출지 몰라서 ''그림은 물감 속에서 사라진다''나 ''프로그래밍을 우연에 맡기면 어떻게 되는가'' 같이 내가 습관적으로 잘못하고 있는 부분을 짚어주기도 한다. -- [(leonardong)]
- ToyProblems . . . . 2 matches
학생은 이 경험을 통해 프로그래밍 "개념"과 "패러다임"들을 학습하게 되며, 어떤 경우에 어떤 패러다임이 더 적절한지 판단할 능력이 생기고, 무엇보다도 한가지 패러다임에 대한 초기 각인(새끼새가 처음 본 흰색을 무조건 어미라고 생각하는 효과)을 깨트리고, 좀 더 자유로워질 수 있다 -- 한가지 패러다임만 아는 사람보다는 여러가지 패러다임을 아는 사람이 더 개방적이고 포용력이 넓다. --JuNe
* 패러다임 프로그래밍 재미있어 보이네요. 2011년 데블스 캠프에 시도해보면 좋겠습니다 - [서지혜]
- UbuntuLinux . . . . 2 matches
인터넷이 된 김에 프로그래밍 도구를 이것저것 설치했다. 내사랑 파이썬도 받고 황모군이 좋아라 하는 이클립스도 받았다. 압축 풀고 실행하는 이클립스는 정말 편하다. :) 파이썬 설치를 하려니까....gcc도 없구나. 에이 귀찮아.
하지만 문제는 다시 부팅을 하면 인터넷 연결이 안 되있다는 점이다. 먼저 어떤 명령이 진짜 인터넷 공유를 가능하게 하는지 알아내야 했고, 다음에는 이를 자동으로 실행하도록 하는 단계를 밟아야 한다. 꼭 프로그래밍 하면서 디버깅 하는 느낌이랄까.
- UnitTest . . . . 2 matches
ExtremeProgramming 에서는 TestFirstProgramming 을 한다. TestFirstProgramming 에서는 해당 기능에 대한 테스트 프로그램을 먼저 만들고, 실제 프로그래밍을 한다.
우리는 실제로 프로그래밍을 하는 중간중간에 결과값을 출력해봄으로서 제대로 돌아감을 확인한다. 이 또한 UnitTest 라 할 수 있겠다. (단, Manual Test 로 분류해야 하겠다.) 올바른 결과값인지 확인하는 과정을 코드로서 만들어 넣는다면 이 테스트는 자동화시킬수 있을 것이다.
- VonNeumannAirport . . . . 2 matches
* ["1002"] 의 개인적으로 생각되는 '미숙' 했다고 생각한 점을 든다면, 평소에 프로그래밍을 하는 리듬이 아니였다는 점. 이전 스타일이라면 일단 문제를 보고 문제를 나누면서 시나리오를 어느정도 만들어 놓은 뒤, 그걸 검증해나간다는 느낌으로 테스트코드를 작성했었는데, 이번의 경우 정말 Extreme 하게 작업한 것 같다. (중반에 CRC 라도 한번 하고 싶었는데, 형에게 물어보고 왠지 '아 내가 알던 방법이 틀린걸꺼야' 하며 그냥 Test 만 생각하게 되었다.) 작업하는 중간 뭔가 석연치 않은 느낌이 들었다면, 아마 대강 이런 느낌이였던 것 같다. 전반적 시각을 한번정도 중간에 정리를 할 필요가 있을건데, 그런 시간을 두지 못한것.
* 중간에 창준이형이 "너희는 C++ 로 프로그래밍을 하면서 STL를 안사용하네?" 라고 했을때, 그냥 막연하게 Java 에서의 Collection Class 정도로만 STL을 생각하고, 사용을 잘 안했다. 그러다가 중반부로 들어서면서 Vector를 이용하게 되었는데, 처음 한두번 이용한 Vector 가 후반으로 가면서 전체의 디자인을 뒤집었다; (물론 거기에는 디미터 법칙을 지키지 않은 소스도 한몫했지만 -_-;) 그걸 떠나서라도 Vector를 써 나가면서 백터 비교 assert 문 등도 만들어 놓고 하는 식으로 점차 이용하다보니 상당히 편리했다. 그러다가 ["Refactoring"] Time 때 서로 다른 자료형 (앞에서 array 로 썼던 것들) 에 대해 vector 로 통일을 하다 보니 시간이 비교적 꽤 지연이 되었다.
- X . . . . 2 matches
게임 프로그래밍 서적중 탑 5 안에 들어갈 정도의 책이다..... 단 어렵다 -_-[[BR]]
1권 ch1은 게임 프로그래밍에 관한 전반적인 것과 룰을 가르치는데 대부분 C++이라 -.-[[BR]]
- XpQuestion . . . . 2 matches
- '필요하면 하라'. XP 가 기본적으로 프로젝트 팀을 위한 것이기에 혼자서 XP 의 Practice 들을 보면 적용하기 어려운 것들이 있다. 하지만, XP 의 Practice 의 일부의 것들에 대해서는 혼자서 행하여도 그 장점을 취할 수 있는 것들이 있다. (TestDrivenDevelopment, ["Refactoring"], ContinuousIntegration,SimpleDesign, SustainablePace, CrcCard Session 등. 그리고 혼자서 프로그래밍을 한다 하더라도 약간 큰 프로그래밍을 한다면 Planning 이 필요하다. 학생이다 하더라도 시간관리, 일거리 관리는 익혀야 할 덕목이다.) 장점을 취할 수 있는 것들은 장점을 취하고, 지금 하기에 리스크가 큰 것들은 나중에 해도 된다.
- Yggdrasil/가속된씨플플/2장 . . . . 2 matches
* 프로그래밍을 처음 배울 때 "프로그래밍을 하려면 숫자를 셀 때 1부터가 아니라 0부터 세라"는 말을 들어왔을 때, 단지 컴퓨터의 숫자 체계가 그러니까 막연히 그렇게 하는 것인 줄 알았다.
- ZeroPageHistory . . . . 2 matches
||1학기 ||회장 이창섭, 12기 회원 모집. ZeroWiki 시스템 도입. Devils 통합. Internet Problem Solving Contest 참여, 서강대 MentorOfArts 팀과 프로그래밍파티 개최 ||
||여름방학 ||데블스캠프, 청평 MT, 서버 세팅(RedHat -> Debian), 프로그래밍잔치 개최 ||
- ZeroPageServer/set2005_88 . . . . 2 matches
각 사용자의 자신의 public_html 디렉토리를 이용해서 '''jsp, php, perl, python''' 등의 웹 프로그래밍이 가능하다.
* 다양한 프로그래밍 환경
- ZeroPage_200_OK . . . . 2 matches
* 자바스크립트의 언어 특성에 따라서 배우고 기본적인 사용 문법에 대해서 배웠습니다. 명령형 구조적 프로그래밍 언어적인 부분에 대해서는 그렇게 어려운건 없었는데 그 뒤의 함수형 선언적 프로그래밍 언어 부분에서 클로저랑 함수에 함수를 인자로 주는 부분이 같이 쓰이니까 좀 복잡했었습니다. 조금 더 공부해야 할 것 같습니다. var Person = function(){}; 같은 부분나 this가 new를 했을 때에만 제대로 동작한다는 부분도 특이했습니다. 문법적인 부분 자체는 그렇게 어려운 것 같지 않은데 함수를 중첩해서 쓰거나 그런 부분이 약간 알아보기 힘든 것 같습니다. - [서영주]
- ZeroPage성년식/거의모든ZP의역사 . . . . 2 matches
||1학기 ||회장 이창섭, 12기 회원 모집. ZeroWiki 시스템 도입. Devils 통합. Internet Problem Solving Contest 참여, 서강대 MentorOfArts 팀과 프로그래밍파티 개최 ||
||여름방학 ||데블스캠프, 청평 MT, 서버 세팅(RedHat -> Debian), 프로그래밍잔치 개최 ||
- fnwinter . . . . 2 matches
효과적인 프로그래밍(디자인 패턴,리팩토링,테스트 주도 개발,파이썬)
사운드 프로그래밍(FFT/Eq/Sound Effect/BASS/FMOD 사용하기/공짜로 MP3를 다운받기)
- 가독성 . . . . 2 matches
글을 작성하신 분과 제가 생각하는 '가독성'에 대한 정의가 다른게 아닌가 합니다. 코드를 글로 비유해 보자면(저는 비유나 은유를 좋아한답니다) 이영호님께서는 ''눈에 거슬리지 않게 전체적인 문장이 한눈에 들어오는가''를 중요하게 생각하시는 것 같습니다. 저는 가독성이라는 개념을 ''문장들이 얼마나 매끄럽고 문단과 문단의 연결에 부적절함이 없는가''에 초점을 맞추고 있습니다. 문단의 첫 글자를 들여쓰기를 하느냐 마느냐가 중요한 것이 아니고 그 문단이 주제를 얼마나 명확하고 깔끔하게 전달해 주느냐가 중요하다는 것이죠. CollectiveOwnership 을 위한 CodingConventions와 글쓰기를 연계시켜 생각해 보자면 하오체를 쓸것인가 해요체를 쓸것인가 정해두자 정도가 될까요? 제가 생각하는 가독성의 정의에서 brace의 위치는 지엽적인 문제입니다. SeeAlso Seminar:국어실력과프로그래밍
[토의분류], [프로그래밍분류]
- 김병남 . . . . 2 matches
씨프로그래밍도 되네요????/
안녕하세요! 반가워요!ㅎㅎ 씨 프로그래밍은,,
- 데블스캠프2003/다루어볼문제와관련세미나 . . . . 2 matches
* STL을 알려주는건 어떨까요? 좀 더 강력한 프로그래밍을 하는 방법을 다룰 수도 있을듯 한데...-[상욱]
* ToyProblems 와같은 식이면 좋을것 같은데요. 1학년 텀프로젝트가 있는데 그것 하나만 가지고도 SP, OOP 등의 프로그래밍철학과, STL 등을 다루기에 좋을것 같습니다. ([http://zeropage.org/pds/200361434244/2003C++TrmPrjSpec.ppt spec]) SP 와 OOP 는.. 누가할지.. 맡게되면 고생을할수도 있겠군요. 아래 JuNe 선배님의 CSP 나.. Tuple Space (전에 P2P 관련 문서에서 본것같은 기억이..-_-a ) 등과는 약간 맞지 않을수도 있겠지만요. (그것은 다른 도메인의 문제와 다루는게 좋을듯합니다) - [임인택]
- 데블스캠프2004/목요일후기 . . . . 2 matches
희경이는 잠이 많다. C는 최근 나온 언어들에 비해 문법들이 쓰기 불편하다. 그리고 데블스캠프는 힘들다고 느꼈다. 프로그래밍의 세계는 무궁무진하다. 여러 언어들을 접해보면 프로그래밍에 도움이 많이 된다는 교훈을 얻었다 --[노수민]
- 데블스캠프2008 . . . . 2 matches
|| 9시 ~ 12시 || [임영동] || 토이프로그래밍 1 || [이승한] || Emacs || [유상욱] || 객체지향 || [김동준] || 쿼터스 || [이병윤] || arp spoofing and sniffing ||
|| 3시 ~ 6시 || [조현태] || vb in Excel, Midi || [장재니] || 토이프로그래밍 2 || [임상현] || 정규표현식 || [허아영] || 러플 |||| 페어 코드레이스, 총화 ||
- 데블스캠프2008/등자사용법 . . . . 2 matches
굳이 프로그래밍을 잘해야 한다는 강박관념에 빠지기 보다는 자연스럽게 할수 있을 정도가 되어야 한다는 내용.
몰입이 잘 되고, 적당히 도전적이고, 재미있고, 교육적이고... 많은 경우 이 표현들은 다 동의어입니다(see also 재미있게 공부하기). 어려운 일을 대면했을 때 "오히려 더 많이 하면서 더 쉽게, 더 빨리 할 수 있는" 길은 없나 자문해 보세요. 꼭 프로그래밍에만 적용되는 이야기는 아닐 것입니다.
- 데블스캠프2009/수요일 . . . . 2 matches
|| 김준석 || 객체 지향 프로그래밍(OOP) || OOP에 대한 개요 이해, 추상화에 대한 개념. OOP 기반의 프로그램 설계를 코드가 아닌 글로 새내기와 함께 해본다. || 문법은 잊고 의사코드를 사용한 설계실습을 해보자 ||
|| 송지원 || Simple Java & JUnitTest || Java의 간단한 문법과 개념을 배우고,[[br]]JUnitTest를 통해 TDD 기반의 프로그래밍에 대해 맛보기. || 아무래도 Test가[[br]]메인이다 보니,[[br]]Java를 통한 OOP 개념의 실습은[[br]]시간상 진행하지 않는다. ||
- 데블스캠프2009/월요일 . . . . 2 matches
|| 송지원 || Scratch (스크래치) || 초등학생도 할 수 있는 프로그래밍을 통해, [[br]]프로그래밍에 대한 친근감과 흥미 유발 || ||
- 데블스캠프2010/셋째날/후기 . . . . 2 matches
* turtle 재밌네요 ㅋㅋ 다른 재미있는 모양을 만들고 싶었는데 프로그래밍 실력이 아직 많이 부족한 탓에 거기까진 시간 안에 못했네요;;-[신기호]
* python...새로운 언어를 배웠네요ㅎㅎ제가 프로그래밍 한 것이 그래픽으로 나온다는 것이 참 재미잇고 신기한 것 같아요 -[박정근]
- 데블스캠프2010/회의록 . . . . 2 matches
== SDL을 이용한 게임 프로그래밍 (강사 : [남상혁]) ==
* 생각하는 개발자 프로그래밍에대하여 다시 생각할수 있는 좋은 기회였다.-[김정욱] 학우
- 데블스캠프2012/넷째날/후기 . . . . 2 matches
* [김태진] - 음, 진경이 다운 주제로 재밌게 한거 같습니다. 재귀라.. 참 헷깔렸는데 말이죠. 어쩌다보니 3n+1은 다이나믹 프로그래밍으로 문제를 풀고있었지만요.. --; 젖소는 거의 다 짜가는데 짜서 accept받아내야겠습니다. + 사실 제가 하고 싶었던 주제였기도 했지만, 저는 다음 기회에 다른 방식으로 해봐야겠네요. ㅋㅋ
* 자바스크립트를 쉽게 접근했다면 성공했다고 봐요 (회사 교육에서 수강생들이 제일 멘붕한게 javascript..) 솔직하게 말씀드리면 전 1,2학년 때 프로그래밍을 정말 못했습니다. 제가 바보가 아닌가 생각될 정도로요~ 경험이 중요합니다. 멘붕은 당연한 거에요 - [지원]
- 데블스캠프2013/넷째날/후기 . . . . 2 matches
= 정의정 / MVC와 Observer 패턴을 이용한 UI 프로그래밍 =
* 점점 java의 재미에 빠지는 것 같습니다.ㅎㅎ 프로그래밍 모델에 대해서 배울 수 있어서 큰 도움이 될 것 같네요. - [김남규]
- 문자열검색/허아영 . . . . 2 matches
프로그래밍에 있어서도 구상과 설계는 매우 중요하다고 느낀다.
이번 프로그래밍의 알고리즘.
- 문제풀이/제안 . . . . 2 matches
* 이번 프로그래밍 대회를 통해 내 실력이 부족함을 처절하게 느꼈음
* 단순한 프로그래밍 언어 지식 획득 이상의 무언가의 공부가 필요하다고 생각하여 시작.
- 바퀴벌레에게생명을 . . . . 2 matches
아직 윈도우 프로그래밍에 익숙하지 못한 후배들에게 윈도우 프로그래밍의 재미를 선사.
- 새싹교실/2011 . . . . 2 matches
내가 짠 코드를 직접 출력을 통해 확인하는 것은 분명 매력적인 일입니다. 그러나 처음 익힌 코딩 습관은 버리기 매우 어렵습니다. 많은 학생들이 처음 프로그래밍을 배우며 printf 함수를 사용하여 코드를 검증하는 습관을 들입니다. 그 때문에 상당수의 졸업할때까지 테스트보다는 직접 눈으로 확인하는 것을 선호합니다. 그런데 작성한 코드가 잘 돌아가는지 알기 위해 직접 눈으로 확인해야만 하는 것은 매우 많은 문제가 있습니다.(이것에 대해서 더 적자면 정말 길어질테니 일단 이 페이지엔 적지 않겠습니다.)
프로그래밍 단계(code 작성->compile->link->generating .exe file)
- 새싹교실/2011/Noname . . . . 2 matches
* 연산자의 종류들과 #define함수의 활용법에 대해서 배웠습니다. 아직 C프로그래밍이 익숙지 않아서 간단한 함수도 어렵게 느껴졌다. 여러 예재로 우선 C프로그래밍에 익숙해 져야 겠다. 수업이 끝난 후 복습을 꼭 해야겠다. - [김창욱]
- 새싹교실/2011/Pixar/4월 . . . . 2 matches
* 와우 짝프로그래밍으로 새싹을 진행하다니 - [서지혜]
프로그래밍으로 별찍기도 참 힘들단걸 깨달엇어요
- 새싹교실/2011/學高/1회차 . . . . 2 matches
* 프로그래밍 언어 : high level language (ex : C, java, C++, C#..), low level language (ex : 어셈블리언어, 기계어)
* 프로그래밍 과정 : program edit -> compile -> execution ※에러나면 맨 처음으로
- 새싹교실/2011/무전취식/레벨3 . . . . 2 matches
* 이번 주 수업은 짧았지만 그래도 지난 수업 내용을 되짚을 수 있어서 나름대로 큰 의미는 있었어요~! 숙제로는 봉봉 교수님 강의때 했던 실습내용들을 전부 해보는 건데 아직은 막히는 것들이 조금은 있는것 같아요. 그런데 그게 프로그래밍 미숙으로 막히는게 아니고 그냥 제가 수학적 능력이 딸려서 막히는 것 같아요 ㅜㅜ 이제 C프로그래밍 정규수업도 실습 숙제가 나왔는데 잘 해결 됬으면 좋겠어요. -[서원태]
- 새싹교실/2011/쉬운것같지만쉬운반/2011.3.23 . . . . 2 matches
* C언어 프로그래밍을 시작하기 위해 필요한 컴퓨터와 프로그램에 대한 지식을 공부하였다. C언어는 역시 멋진 언어인 것 같다. haskell을 해 보고 싶었는데 사이트가 이상했다 ㅠㅠ.. 프로그래밍 언어는 너무 많은 것 같다. 다 배우려고 하진 말아야지... - [장용운]
- 새싹교실/2012/Dazed&Confused . . . . 2 matches
* define, rand, srand, 다양한 헤더파일을 처음 써 보았다. 내가 혼자서 다시 해 봐야겠다. 신기했다. 이렇게 다양한 함수를 알게 되어 좋았지만 조금 더 집중해야 할 것 같다. 이번 강의에서는 실습이 적었는데 실습과 직접 프로그래밍을 해 보는 시간을 가졌으면 좋겠다. - [박용진]
* 포인터와 구조체, 전역 번수와 지역 변수에 대해 배웠고, 포인터가 어느 곳에서나 자료를 읽을 수 있다고 하는 것과 Call-by-Value, Call-by-Reference에 대해서도 배웠다. 포인터에 대한 개념은 알고 있었지만 깊게는 알지 못했는데 오늘 새싹으로 많은 것을 배울 수 있었다. 그러나 이 모든 것들이 하루만에 끝내려고 하다 보니 너무 부담스러웠다. 조금 더 다양한 프로그래밍 예제에 대한 경험을 했으면 좋겠다. - [김민재]
- 새싹교실/2012/설명회 . . . . 2 matches
* ISEF, KOI, NXT(??) 등등 생각보다 능력자가 많이 있는 것 같네요. 새싹교실 안내를 했는데, 저는 프리젠테이션 할 때 슬라이드를 꾸미거나 줄줄이 써놓는 편이 아니고 스크립트에 적어두는데, 발표자 도구를 썼지만 당황했는지 써놓은 안내 사항을 몇 개 빼먹었네요. 다음부턴 이런 실수가 없도록 해야겠습니다. C 보다는 프로그래밍이 중요하다는 말을 하고 싶었는데 수경누나한테 선수를 뺏겼네요. ㅋㅋㅋ - [정진경]
* 월드카페와 OST는 아마 최선의 선택이었던 것 같다. 작년의 새싹교실때보다 열기있는 모습이고 프로그래밍에 대한 경험은 아니지만 언어를 ''맛보고'' 온 신입생들이 전보다 더 많아서 놀람. 다만 이 '''선행학습'''이 독이될지 약이될지는 개인의 바탕에 달려있을 것이다. 슈퍼 슈퍼 프로그래머로서의 자질이 없는 보통은 자신의 선지식에 안주하게 될 가능성이 높아보인다(잘난척 하는 몇몇이 있었음).
- 새싹교실/2012/해보자 . . . . 2 matches
* 목적: C언어를 다양한 프로그래밍 실습을 통해 재미있게 배운다.
* overflow: 변수가 표현할 수 있는 범위를 넘어선 데이터를 대입할때 나타나는 현상으로, 데이터의 손실이 일어난다. 프로그래밍할 때 오버플로우를 조심해야 한다!
- 새싹교실/2012/햇반 . . . . 2 matches
상영:: 전 아무것도 모르고 이 전공을 택했고 물론 c프로그래밍에 관해서도 아무것도 몰랐지만 별찍기나 구구단만들기 같은 것을 하다보니 C프로그래밍에 흥미가 붙었고 더 많은 것을 해보고 싶다는 생각이 들었습니다
- 새싹교실/2013/양반/4회차 . . . . 2 matches
for와 if에 대해 심도있는 학습을 하였다. 기초프로그래밍 시간에 도움이 되서 좋아요.
꼭 이 두가지를 잘 쓰도록 해서 편하게 프로그래밍을 하고싶습니다. ㅎㅎ
- 성균관대게임개발대회 . . . . 2 matches
* 옛날에 만들었던 [3DAlca]를 디자인좀 이쁘게 바꾸고, 사운드 효과도 넣은 다음 네트워크 대전식으로 바꿔서 한번 내볼까 하는데, 3D에 관심 있거나, 네트워크 프로그래밍 한번 해보고 싶은 사람 있으면 같이 해보고 싶음. 만약 같이할 사람 없으면 지금 하고 있는 프로젝트도 있고 해서 할 여력이 안될거 같음.(특히 네트워크 프로그래밍 할 사람 없으면 절대 이 프로젝트 진행할 여력이 안됨), 방학하고 나서 본심때까지 한달하고 조금더 남은 기간인 만큼, 기간은 충분하다. 같이 해보실 분은 리플 달아 주세요 -[상협]
- 신기호/중대생rpg(ver1.0) . . . . 2 matches
* 다음 버전에서는 몬스터 등을 아얘 따로 저장하는 파일을 만들어서 그걸 읽어들여서 몹들을 생성하게 해야겠습니다. 일일이 메인 cpp에서 만들려고 하니 한없이 코드 줄만 길어지네요. 그리고 프로그래밍 공부를 좀 더 해야겠다는 생각이 들었습니다 ㅋㅋ 분명히 저기서 제가 삽질을 한 부분이 있을거에요 ㅠㅠ 이제 버전 1.2에선 소켓프로그래밍을 이용해서 네트워크 대전을 넣을 예정입니다.- [신기호]
- 애자일과문서화 . . . . 2 matches
"XP에서는 짝 프로그래밍을 합니다. 인원이 적은 프로젝트에서는 프로그래밍을 하면서 회의를 합니다. 이렇게 되면 회의시간이 단축되고 종국에는 delivery를 단축시킬 수 있습니다"
- 위시리스트 . . . . 2 matches
DirectX11을 이용한 3D 게임 프로그래밍 입문
실전 예제로 살펴보는 집단 지성 프로그래밍
- 위키설명회 . . . . 2 matches
* TopDown BottomUp 두가지 방법으로 페이지를 만들어 나가면서 각각의 의의와 프로그래밍, 사고 방식의 상관관계를 이야기 해 본다.
* Rename, [문서구조조정]을 통해서 [Refactoring]을 경험하고, 이것이 프로그래밍의 영역에서 어떠한 관점을 가지고 있는지 이야기 해 본다.
- 유혹하는글쓰기 . . . . 2 matches
프로그래밍에 적용시켜도 좋은 교훈도 얻을 수 있었다. 워낙 글쓰기와 프로그래밍이 비슷하기 때문이리라. 나에게는 까다로운 작업을 하다가 포기한 경험이 있기에 작가의 말이 쓰디 쓴 약이 될 것 같다. 슬쩍 피해갈 수 없다. 지름길도 없다.
- 음계연습하기 . . . . 2 matches
프로그래밍도 이러한 음계(etude-연습곡)연습을 꾸준히 해서 장인(Craftsman)으로 발전해 나가는 길이 있지 않을까?
피아노 배울 때는 '하농'과 '체르니' 연습이 음계연습이었습니다. 프로그래밍에 있어 음계연습이 어떤 것이 될 수 있을지 전혀 감이 안 잡힙니다. 누구 자신만의 음계연습 알려주실 분 없나요? :) --[창섭]
- 임다찬 . . . . 2 matches
||2006/3/31||c||[삼각형매크로/임다찬]||C프로그래밍||
[C프로그래밍]
- 작은자바이야기 . . . . 2 matches
* Java 프로그래밍 언어
* 객체지향 프로그래밍
- 장창재 . . . . 2 matches
프로그래밍 자유자재로 구사하는것
우리과 사람들이랑 프로그래밍을 통해 친해지고 싶습니다.
- 정모/2003.5.13 . . . . 2 matches
* 내용은 세미나, 혹은 예제풀기, 프로그래밍 개론적인 부분이 될 수 있을 것 같고, 각 주마다 세미나 주제는 정해졌습니다. 내용은 03들이 지루해 하지 않게 짧고 간단한 내용으로 합니다.
* 1주: Little Man Computer & 프로그래밍 개론(이상규, 이선호)
- 정모/2011.4.4/CodeRace . . . . 2 matches
* 두명이 하나의 모니터를 보고 하나의 키보드로 프로그래밍 해야 한다.
* 내가 이걸 진행상황을 다 알고 다시 프로그래밍한다면...
- 정모/2011.5.2 . . . . 2 matches
* 원하는 인재상 : 언어 구사가 자유로우면서 프로그래밍 스킬이 뛰어난 사람... 이라고 홈페이지에도 쓰여 있습니다.
* 정모는 제 시간 전에 갔으나 저녁 못 먹었다고 카벅 ㅊㅁㅊㅁ하러 갔다온 덕분에 앞부분을 살짜쿵 놓쳐버렸습니다. google->IBM->삼성으로 이어지는 각종 홍보가 많아서 하나라도 참여해보고 싶지만 이 상태에서 일을 추가했다간 이도저도 아닌 상태가 되기때문에 하지 못하는게 정말 아쉽더라구요 ㅠ 11월에 정통부장 끝나고 보죠. 그리고 11학번, 10학번이 staff로 참여했으면 하는게 제 개인적인 생각입니닼(특히 박레기) 그리고 지원이 누나 OMS에서 진로에 대해서 꽤 알아가는게 많았구요, 어제 회계와사회 시간에 박인선 교수님이 비슷한 얘기 또 해서 놀랐습니다. 그나저나 학생회를 한게 꽤 큰 문제더군요. 뭣 좀 할라치면 과 행사하는거 다 참여해야되니;;; '''프로그래밍 경진대회 준비하기 힘들어요. 참가 좀 많이 해주세요.''' - [윤종하]
- 정의정 . . . . 2 matches
* [데블스캠프2012] - UI프로그래밍
* [데블스캠프2013] - MVC와 Observer 패턴을 이용한 UI 프로그래밍
- 제12회 한국자바개발자 컨퍼런스 후기/유상민의후기 . . . . 2 matches
* 여성의 프로그래밍사에서 인상 깊은 부분 소개
* 집에 돌아와 stan4j 돌려보고 있는데 정말 최고다. 당장 13개의 순환 의존성에 문제가 있는 지점을 찾아준다. Java 언어가 매크로가 없고 매타 프로그래밍 요소가 적다는 언어의 특성으로 이런 멋진 도구가 만들어 진다는건 정말 좋다. 특히 손영수씨가 500개 클래스 안쪽에서는 무료라고 했는데, 이런 대단한 도구가 시간 제약이 아니라 규모 제약으로 무료라니 정말 놀랍다.
- 조영준 . . . . 2 matches
* PicManager - 2014년 객체지향프로그래밍 팀 프로젝트 - https://github.com/ZeroPage/PicManage
* 소켓 프로그래밍
- 조윤희 . . . . 2 matches
계획: C프로그래밍의 제왕이 되기
* 우주정복하면.. C 프로그래밍의 우주여왕이 되는건가?? - [노수민]
- 조응택 . . . . 2 matches
프로그래밍
컴퓨터 프로그래밍 배우기
- 졸업논문/서론 . . . . 2 matches
이제 많은 사람의 입에 오르내리는 웹2.0이라는 개념은 오라일리(O'Reilly)와 미디어라이브 인터내셔널(MediaLive International)에서 탄생했다.[1] 2000, 2001년 닷 컴 거품이 무너지면서 살아남은 기업들이 가진 특성을 모아 웹2.0이라고 하고, 이는 2004년 10월 웹 2.0 컨퍼런스를 통해 사람들에게 널리 알려졌다. 아직까지도 웹2.0은 어느 범위까지를 통칭하는 개념인지는 여전히 논의 중이지만, 대체로 다음과 같은 키워드를 이용해 설명할 수 있다. 플랫폼, 집단 지능, 데이터 중심, 경량 프로그래밍 모델, 멀티 디바이스 소프트웨어.
이 가운데 경량 프로그래밍 모델을 적용한 웹 기술이 계속 발전해가고 있다. 웹2.0 사이트는 Adobe Flash/Flex, CSS, 의미를 지닌 XHTML markup과 Microformats의 사용, RSS/Atom를 사용한 데이터 수집, 정확하고 의미있는 URLs, 블로그 출판들 같은 전형적인 기술을 포함한다.[2]
- 중앙도서관 . . . . 2 matches
이런 프로젝트가 컴공과 학생에게 쉽게 떨어질리는 만무하다. 그래서 대부분은 디자인 단계에서 끝내게 된다. 유스케이스 몇개 그려보고 끝나는 것이다. 좀 더 용감하고 야망이 높은 사람들은 밑바닥부터 구축을 해나갈지도 모르겠다. 어찌 되었건 프로그래밍은 중요하다. 빌게이츠가 늘 하는 말이 "Code is the thing"이란다. 만약 프로그래밍을 직접 해보지 않고 끝내게 되면 자신이 배울 수 있는 엄청난 크기의 빙산을 그냥 지나치는 셈이다.
- 진법바꾸기/허아영 . . . . 2 matches
나의 프로그래밍 관 이랄까? 그런게 짧게 작성하자! 막 이러는게 아니라서 .^^;;
코딩하는게 나의 코딩관 또는 프로그래밍 관이라도 보면 돼 ㅋㅋ
- 최소정수의합 . . . . 2 matches
- 괜찮습니다. 사용하는 언어에서 만족될 함수 등등..을 써서 알아서 프로그래밍 하시면 됩니다. 하지만 처리조건을 만족할 수 있는 언어는 그렇게 프로그래밍 해주시길 바랍니다.
- 타도코코아CppStudy/0731 . . . . 2 matches
윈도우 프로그래밍은 메세지 기반이다. 즉 윈도우에서 발생하는 메세지들을 캐치해서 그것에 따라 프로그래밍을 하면 된다.
- 프로그래머가지녀야할생각 . . . . 2 matches
학부시절 혼자하는 프로그래밍의 경우, 사소한 기능 하나를 추가하려다가 제풀에 지쳐서,
''간혹 프로그래밍을 하다가 보면 주객이 전도가 되어버리곤 하죠. 좋은 지적 --1002''
- 프로그래밍십계명 . . . . 2 matches
프로그래밍을 공부하시는 분들께 큰 도움이 되리라 생각합니다.
*가장 완벽한 프로그램일수록 가장 완벽하게 숨은 벌레가 있느니라. 네가 이 세상 최고의 프로그래머라고 떠들며 자만할 때, 옆집 곳간에서는 훨씬 더 뛰어난 것을 묵묵히 만들고 있느니라. 아무렴 프로그래밍은 혼자 잘나서 할 게 아니니, 너로 인해 다른 사람들도 더불어 잘 되면 그얼마나 좋은 것이냐.
- 프로그래밍잔치/셋째날 . . . . 2 matches
["프로그래밍잔치/셋째날후기"]
["프로그래밍잔치"]
- 프로그래밍잔치/셋째날후기 . . . . 2 matches
10시 경 해산. ["프로그래밍잔치"] 종료.~
["프로그래밍잔치"]
- 프로그래밍잔치/정리 . . . . 2 matches
["프로그래밍잔치"] 시작과 끝. 준비하는 사람 입장에서 생각해본 정리.
["프로그래밍잔치"]
- 프로그래밍파티 . . . . 2 matches
See Also Moa:프로그래밍파티
프로그래밍 컨테스트의 문제도 좋지만, DesignFest의 문제는 어떨까요? 제 생각에는 후자의 경우에 더 많은 공동학습이 가능할 듯 한데... --JuNe
- 허아영/Cpp연습 . . . . 2 matches
절차적 프로그래밍 기법을 통해 소프트웨어를 개발하다보면 개발시간도 너무 많이 소요되고 동일한 작업들이 중복된다는 문제점이 야기된다. 이러한 문제점을 해결하기 위해서 소프트웨어도 공장의 부품처럼 독립성을 갖는 객체들로 구성해 놓고 그들을 조립하여 완성한다는 개념이 객체지향 적인 프로그래밍 기법의 근간이다.
- 05학번만의C++Study/숙제제출/2 . . . . 1 match
* 평상시에는 문자열의 주소를 하나의 전달인자로 취하여, 그 문자열을 한 번 출력하는 함수를 작성하라. 그러다가 0이아닌 int형 값을 두 번째 전달인자로 제공하면, 그 시점에 도달할 때까지 그 함수가 호출되었던 횟수만큼 그 문자열을 반복해서 출력한다. (문자열이 출력되는 횟수는 두 번째 전달인자의 값이 아니라 그 함수가 호출되었던 횟수와 같다.)물론 이 함수는 거의 쓸모가 없다. 하지만 이것은 이 장에서 설명한 몇 가지 프로그래밍 기술을 사용할 것을 요구한다. 이들 함수를 사용하여 함수의 작동을 보여 주는 간단한 프로그램을 작성하라
- 1002/책상정리 . . . . 1 match
이런 Approach 를 하는 때는 평소 공부나 프로그래밍 작업을 하는 곳이 학교, 회사 인 경우이다. 일은 일터에서, 쉬는건 집에서; 라는 접근방법이다. 이 경우 집에서는 절대로 일을 안한다는 전제하에, 밖으로 들고다니기 쉬운 것들이 가장 눈에 띄기 쉬워야 한다. 그리고 책상에서 '아 공부하고 싶다' 또는 '아 작업하고 싶다' 라는 생각이 들게끔 하면 안된다;
- 1thPCinCAUCSE/ProblemA . . . . 1 match
1회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회 A번 문제 : 시계
- 1thPCinCAUCSE/ProblemB . . . . 1 match
1회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회 B번 문제 : 숫자 입력
- 1thPCinCAUCSE/ProblemC . . . . 1 match
1회 중앙대학교 컴퓨터공학과 프로그래밍 경진 대회 C번 문제 : 색깔 바꾸기
- 2005리눅스프로젝트 . . . . 1 match
* 리눅스에 서버관리 및 웹 프로그래밍
- 2006김창준선배창의세미나 . . . . 1 match
* 단순히 기존의 방식대로 창의적인 생각을 하려고 하기 보다, 이미지나 몸동작과 같은 우뇌를 적극 활용하는 활동을 통해서 창의성을 자극 할 수 있다. 한예로 훌륭한 프로그래머들은 머리속으로 특정 상황을 Play, Pause, Backward 등을 하면서 프로그래밍이나 문제 해결등을 한다고 한다.
- 2008리눅스스터디 . . . . 1 match
|| 8/14(목) || 리눅스 프로그래밍과 파일 시스템(영동) || [지원], [홍기], 혁수 + 영동 ||
- 2학기자바스터디 . . . . 1 match
교재는 [게임을 만들며 배우는 자바 프로그래밍]이고 지금목표는 테트리스, 더 나아간다면 네트웍테트리스...
- 2학기파이선스터디/함수 . . . . 1 match
== 재귀적 프로그래밍 ==
- 4rdPCinCAUCSE . . . . 1 match
[컴공과프로그래밍경진대회] 4회차
- 5인용C++스터디/클래스상속 . . . . 1 match
객체지향 프로그래밍의 핵심적인 개념 가운데 하나.
- ACM2008 . . . . 1 match
[http://acm.pku.edu.cn/JudgeOnline/ POJ] Peking university Judge Online 이란 시스템이 있는데 온라인으로 프로그래밍 문제를 제공하고, 온라인으로 소스를 보내면 서버에서 컴파일해서 결과를 알려주는 시스템이다. 책에서는 code 의 길이를 이용한 코드 골프쪽에 초점을 맞추고 있었지만 이 프로젝트의 목표상 그럴 필요는 없을거 같다. 다만 온라인으로 제공되는 문제가 꽤 있고 평가하는 시스템이 있으므로 보다 즐겁게 놀 수 있는 '꺼리' 일 것 같다.
- ACM_ICPC/2011년스터디 . . . . 1 match
* 생각치도 못한 표준입출력 때문에 고생했습니다. 저놈의 judge 프로그램을 이해하지 못하겠습니다. 입출력방식이 낯서네요. 입력 종료를 위해 값을 따로 주지 않고 알아서 EOF 까지 받아야한다니... 정올 현역때는 이런 문제 구경하기 힘들었는데ㅜㅜ 제가 뭘 크게 오해하고 있나요. 덕분에 c도 아니고 c++도 아닌 코드가 나왔습니다. 그리고 3N+1 문제가 25일 프로그래밍 경진대회에 1번 문제로 나왔습니다. 허허.. - [정진경]
- AM . . . . 1 match
* 목적 : 윈도우 프로그래밍을 위한 API와 MFC를 공부한다.
- AOI . . . . 1 match
* [컴공과프로그래밍경진대회]
- AcceleratedC++/Chapter10 . . . . 1 match
지금까지는 vector, string등 STL이 기본적으로 제공하는 자료구조를 통해서 프로그래밍을 하였다.
- AcceleratedC++/Chapter6 . . . . 1 match
따라서 저장된 반복자에 관해서 프로그래밍을 하면서 조심해야할 필요가 있다.
- ActiveTemplateLibrary . . . . 1 match
ATL은 템플릿으로 이루어진 C++ 클래스 집합니다. 이 클래스들은 COM 객체를 프로그래밍하는 과정을 단순화시킨다. VisualC++에서 COM의 지원은 개발자들이 쉽게 다양한 COM객체, Automation 서버, ActiveX 컨트롤들을 생성하도록 해준다.
- AppletVSApplication/상욱 . . . . 1 match
자바가 일약 웹 프로그래밍 언어의 표준으로 등장하게 된 데에는 무엇보다 자바 애플릿의 매력이 큰 영향을 미쳤다.
- AppletVSApplication/영동 . . . . 1 match
* 웹 브라우저에서 실행되는 작은 프로그램을 애플릿이라 한다. 웹에서 클라이언트 측의 프로그래밍을 지원하는 강력한 툴로 사용된다.
- ArtificialIntelligenceClass . . . . 1 match
실제로 AI 프로그래밍을 해보면서 이경우에는 지금 나와있는 어떤 방법과 어떤 방법을 어떠한 식으로 적용해 보는게 좋고, 아니면 더 나은 대안을 찾아보고 이런식이 재밌을거 같다.
- Athena . . . . 1 match
* 그리스 로마 신화에 나오는 지혜의 여신 "아테나" 입니다. 지혜롭게 프로그래밍을 하고자 만든 이름입니다...^^
- BasicJAVA2005/8주차 . . . . 1 match
2. Socket 프로그래밍
- Basic알고리즘 . . . . 1 match
{{| " 그래서 우리는 컴퓨터 프로그래밍을 하나의 예술로 생각한다. 그것은 그 안에 세상에 대한 지식이 축적되어 있기 때문이고, 기술(skill) 과 독창성(ingenuity)을 요구하기 때문이고 그리고 아름다움의 대상(objects of beauty)을 창조하기 때문이다. 어렴풋하게나마 자신을 예술가(artist)라고 의식하는 프로그래머는 스스로 하는 일을 진정으로 즐길 것이며, 또한 남보다 더 훌륭한 작품을 내놓을 것이다. |}} - The Art Of Computer Programming(Addison- wesley,1997)
- Benghun/Diary . . . . 1 match
아는 사람 중에 함수나 클래스를 만드는 것을 대단히 꺼리는 사람이 있다. 만들면 좋을 것 같은 간단한 함수조차도 직접 만들려고 하지 않는다. 하지만 이미 잘 만들어 진 라이브러리는 자주 사용한다. dependency가 없다면 변경에 영향을 받는 모듈이 없을 것이다. 나름대로 잘 사용하는 replace all in files, replace all in file, copy & paste등이 강력한 프로그래밍 도구중 하나인 것 같기도 하다.(최소한 나보다는 잘 사용하는 것 같다, 나름대로의 노하우도 있는 것 같다) 아마도 그는 dependency를 최소화하는 것에 큰 관심이 있거나 다른 이유가 있나보다.
- BigBang . . . . 1 match
==== 프로그래밍 언어의 필수 요소 ====
- Bigtable/분석및설계 . . . . 1 match
* 프로그래밍에 가깝게. 자료구조와 알고리즘등이 나옴.
- BlueZ . . . . 1 match
http://tistory.izyou.net/entry/BlueZ-라이브러리를-이용한-리눅스-Bluetooth-프로그래밍
- BookShelf . . . . 1 match
1. [생각하는프로그래밍] ( [ProgrammingPearls] 번역서 )
- BusSimulation . . . . 1 match
Discrete Event Simulation이 되겠군요. 사람이 몇 명이 기다리느냐, 길 막힘 상태 등은 이산 확률 분포를 사용하면 될 것입니다. NoSmok:TheArtOfComputerProgramming 에서 NoSmok:DonaldKnuth 가 자기 학교 수학과 건물 엘레베이터를 몇 시간 관찰해서 데이타를 수집한 것과 비슷하게 학생들이 직접 84번, 85-1번 등의 버스를 타고 다니면서 자료 수집을 해서 그걸 시뮬레이션 실험하면 아주 많은 공부가 될 것입니다 -- 특히, 어떻게 실세계를 컴퓨터로 옮기느냐 등의 모델링 문제에 관해. 실제로 NoSmok:DonaldKnuth 는 TAOCP에서 이런 연습문제를 만들어 놨습니다. 제가 학부생 때 누군가 이런 숙제를 내줬다면 아마 한 두 계단(see also ["축적과변화"]) 올라설 계기가 되지 않았을까 하고 아쉬울 때가 있습니다. 이 문제에 드는 시간은 하루나 이틀 정도가 되겠지만 여기서 얻은 경험과 지혜는 십 년도 넘게 자신의 프로그래밍 인생에 도움이 될 것이라 믿어 의심치 않습니다. (팀으로 문제 해결을 하면 더 많은 공부가 되겠지요) see also ProgrammingPartyAfterwords 참고자료 --JuNe
- C++Seminar03 . . . . 1 match
* CS 에 등장하는 기본적인 개념이나, 프로그래밍을 하는데 기반이 되는 지식에 대해 간단한 세미나를 하기도 한다.
- C++Study_2003 . . . . 1 match
* 나쁘지 않을 것같네. 나는 마음먹은 대로 프로그래밍을 짤 수 있도록, 후반부의 문법을 가르쳐 주었으면 좋겠다는 생각을 했는데. --[선호]
- C/C++어려운선언문해석하기 . . . . 1 match
예제에서 제시된 것과 같이 복잡한 선언문을 사용하여 이해하기 어려운 코드를 작성하는것은 결코 좋은 프로그래밍 습관이 아니겠죠.
- CPPStudy_2005_1 . . . . 1 match
* 윈도우즈 프로그래밍
- Chapter I - Sample Code . . . . 1 match
OS에서 공유자원이나 특정코드가 수행되는 도중에 다른 프로세스에 의해 interrupt 되는것을 방지하기 위해 크리티컬 섹션을 사용하게 된다. 이는 윈도우즈 프로그래밍에서 스레드관련 처리를 해 줄 때에도 나오는 용어이다. uCOS-II에서는 단순히 매크로함수를 이용해 크리티컬섹션에 들어오기와 나오기를 한다. 매크로함수가 하는 일은 단순히 인터럽트를 무효화, 유효화 시키는것 뿐이다.
- Class로 계산기 짜기 . . . . 1 match
* 그냥 보여주기 위한 코드에요. 결코 올바른 프로그래밍은 아니라는거 명심하세요^^; - [상욱]
- ComputerNetworkClass . . . . 1 match
프로젝트의 수준도 데이터 통신과는 달리 survey or analysis가 아닌 실제 프로그래밍을 통한 결과 도출에 중심을 맞춘다.
- ComputerNetworkClass/Report2006/BuildingWebServer . . . . 1 match
* [http://dasomnetwork.com/~leedw/mywiki/moin.cgi/NetworkProgramming 네트워크프로그래밍]
- ComputerNetworkClass/Report2006/PacketAnalyzer . . . . 1 match
※ 윈도우 소켓 프로그래밍을 위해서는 윈속 라이브러리를 같이 linking 해야하며, WSActrl 을 사용하기 위해서는 winsock2 라이브러리인 ws2_32.lib 를 포함해야한다.
- ConstructorMethod . . . . 1 match
요새 프로그래밍 하면서 느끼는 점은, 과도한 오버로딩은 해당 객체를 이용하는 사람입장에서 골치아프게 만든다는것. 왜냐하면, 같은 메소드 이름에서는 해당 파라메터가 다른 것으로 바뀌었을때에 대한 의도를 메소드 이름에 드러나지 않기 때문에.
- Counting/황재선 . . . . 1 match
* 동적 프로그래밍 기법을 사용.
- CppStudy_2002_1/과제1 . . . . 1 match
* 8장 프로그래밍 연습
- CppUnit . . . . 1 match
=== Win32 API or Console 프로그래밍시 ===
- Cpp에서의가변인자 . . . . 1 match
[프로그래밍분류]
- Curl . . . . 1 match
Ajax프로그래밍을 해본적이 없어서 Gmail에서 관찰한 내용을 기준으로 해보면... 아마도 curl 로 만들어진 빠른 속도의 애플리케이션을 이용해서 좀더 다양한 처리 같은게 가능하지 않을까요? 뭐 그래픽 에디터를 activex를 이용하지 않고도 만들 수 있다던지.. 그리고 네트워크가 disconnect된 상태에서 사용자가 작업한 내용을 보관하고 있다가 connect된 상태로 바뀌면 작업을 처리하는 일같은 것도 가능할 것 같고요.(ajax가 jscript+dhtml을 이용한 기술이라고 아는데 이런것도 가능한지는 모르겠네요.;;) 아무래도 로컬의 runtime위에서 작동을 하는 만큼 유저의 입장에서 좀더 다양한 상용의 용도가 있을 것이라는 생각이드네요. 물론 runtime 이 있기 때문에 상업적 표준이 되기전에는 기업용 시장에서만 팔릴 것들에만 쓰일지도 모르겠고요. - [eternalbleu]
- CuttingSticks/하기웅 . . . . 1 match
다이내믹 프로그래밍에 대한 이론적이 이해는 있어도 구현에 있어서 어려움을 가지고 있었는데...
- DelegationPattern . . . . 1 match
전에 SE 수업중에 컴포넌트모델의 필요성을 이야기하던중 '상속으로의 재사용이 어렵기 때문에' 이야기를 하셨는데, 왜 대안 중 하나로서의 [Delegation] 에 대한 언급이 전혀 없으셨는지 모르겠다. Delegation 만 잘 이해해도 준 컴포넌트 스타일의 모듈화 프로그래밍을 잘 진행할 수 있고, 사람들 간의 작업분담도 잘 이끌어 낼 수 있을건데.. --[1002]
- DesignPattern2006 . . . . 1 match
* 파워풀한 프로그래밍을 위한다면(과연...그럴까^^;;) 참여자에 이름을 남기세요 - [상욱]
- DesignPatterns/2011년스터디/1학기 . . . . 1 match
2. 프로젝트 설계를 하는게 매우 신기했습니다. 가장 최근에 했던 프로젝트가 약 2년 전이라 하나도 모르겠는데 모듈을 잡고 그 모듈의 역활을 잡고 그에 따라 인터페이스를 만들고 하는 걸보고 생각없이 그냥 순차적으로 프로그래밍 하려고했던 제가 참 답이 없었던거 같습니다.
- DevOn . . . . 1 match
* [Lisp]을 이용한 실시간 멀티미디어 프로그래밍
- Direct3D . . . . 1 match
이것저것 뒤져보면 D3DX 와 결합하여 훨씬 편하게 D3D프로그래밍을 할 수 있다.
- DirectDraw . . . . 1 match
[해성] 지나가다가 한마디.. ^^;; DX 초기화 과정은 이전버전과 흡사하군요.. 음.. 초기화 인터페이스를 파악했다면.. 다이렉트 엑스가 어떻게 내부적으로 작동해서 일반 윈도우 프로그래밍 보다 빠른 엑세스 메카니즘을 제공하는지 파악하시구요.. 왠만하면 DX 쓰지말구.. 추가적인 이펙트등을 구현해보는게 좋을것 같네요.. 알파블렌딩을 응용한 여러가지 기법(페이드 인아웃이나 전환.. 뭐라그러드라).. 하구.. 전 못해봤지만.. 블러링 필터 같은것두.. 서페이스에 직접 억세스 하는거 공부하면.. 해볼만 할것 같군요.. 그리구.. 음.. 매일 허접 플밍을 하구 있지만.. 그래두 지겨운 초기화 과정을 단축시키기 위해 어느정도 모듈화되게 라입을 구축하면 좋겠지요.. 전 절대 안하지만.. ㅋㅋ;; 그럼.. 잡설이었습니당~ 수거~[[BR]]
- DispatchedInterpretation . . . . 1 match
인코딩은 프로그래밍에 있어서 필수적이다. 데이터가 계산으로부터 분리되어 있던 과거에는, 인코딩 작업은 매우 중요했다. 삑사리 한번 내면 돈 겁나 많이 들었다. 하지만 객체지향 시대에는 좀 다르다. 인코딩은 두번째로 밀려나고 객체들 사이의 책임을 분배하는 것이 가장 중요하게 된 것이다. 잘짜여진 OO 프로그램에는, 어떠한 정보에 관심을 가지는 객체가 하나밖에 없어야 한다. 그 객체는 자신의 정보에 직접 접근하고, 은밀하게 인코딩과 디코딩을 수행한다.
- DocumentObjectModel . . . . 1 match
DOM은 HTML, XML문서를 다루는 API이다. 이것은 프로그래밍 언어와 플랫폼에 비종속적이다. 인터페이스의 뒷쪽에서 이 문서는 객체지향 모델로 다루어진다.
- DrawingToy . . . . 1 match
== 프로그래밍의 목적 ==
- EdsgerDijkstra . . . . 1 match
위의 Stepwise Program Construction과 The Humble Programmer는 초강력 추천. 감동의 물결. 아마 그 글을 읽고 몇 주 동안은 여러가지 실험을 해보며 흥미진진하게 보내게 될 것이며, 몇 몇은 프로그래밍에 획기적인 전환점을 맞이할 수 있을 것이라 믿음. --김창준
- EffectiveC++ . . . . 1 match
* 누구나 나름대로의 철학을 가져야 한다. 어떤 이는 불간섭주의 경제학을 믿고 어떤 이는 윤회설을 믿는다. 또 어떤 이는 COBOL이 진짜 프로그래밍 언어라고 믿는다. C++도 나름의 철학을 가지고 있다. C++는 잠재적인 애매모호성은 에러가 아니라고 생각한다. 나는 과학-기술 서적에서도 이러한 충분히 깊은 생각의 이야기도 필요하다고 생각한다.
- EightQueenProblem/kulguy . . . . 1 match
문제에 대한 개략적인 이해만 하고서 마치 그 알고리즘을 완전히 이해한 냥 무턱대고 코딩에 들어갔다가 정답이고 뭐고 완전히 엉켜버렸습니다. 결국 처음부터 다시 코딩 이전 단계부터 차근히 준비하여 겨우 문제를 해결할 수 있었습니다. 코딩 이전의 여러 프로그래밍 단계는 함부로 건너뛸 단계가 아니란 것을 다시 한번 뼈 속 깊이 깨달았으며 성능을 위해 시공 교환 법칙을 나름대로 적용해 보았는데 그 효과의 상당함을 경험하였습니다.
- EightQueenProblem/lasy0901 . . . . 1 match
같은 대각선에 있다면 x좌표와 y좌표의 합이나 차가 같다는 사실을 이용해서 프로그래밍했습니다.
- EightQueenProblem2 . . . . 1 match
EightQueenProblem을 해결하신 것을 축하드립니다. EightQueenProblem 페이지에 개발 시간과 소스 라인 수 등을 기록하셨나요? 사실 문제는 하나가 더 있습니다. 대부분의 프로그래밍 숙제/대회는 코드의 디자인은 잘 따지지 않습니다. 하지만 실세계의 문제에서는 코드의 적응도(adaptability)가 매우 중요한 요소가 됩니다. 자신이 작성한 프로그램이 얼마나 새로운 요구사항에 잘 적응을 하는지를 보면, 자신이 얼마나 디자인을 제대로 혹은 엉망으로 했는지 알 수 있습니다. 디자인 질에 대한 바로미터가 되는 것이죠.
- EightQueenProblemSecondTryDiscussion . . . . 1 match
제가 보기에 현재의 디자인은 class 키워드만 빼면 절차적 프로그래밍(procedural programming)이 되는 것 같습니다. 오브젝트 속성은 전역 변수가 되고 말이죠. 이런 구성을 일러 God Class Problem이라고도 합니다. AOP(Action-Oriented Programming -- 소위 Procedural Programming이라고 하는 것) 쪽에서 온 프로그래머들이 자주 만드는 실수이기도 합니다. 객체지향 분해라기보다는 한 거대 클래스 내에서의 기능적 분해(functional decomposition)가 되는 것이죠. Wirfs-Brock은 지능(Intelligence)의 고른 분포를 OOD의 중요요소로 뽑습니다. NQueen 오브젝트는 그 이름을 "Manager"나 "Main''''''Controller"로 바꿔도 될 정도로 모든 책임(responsibility)을 도맡아 하고 있습니다 -- Meyer는 하나의 클래스는 한가지 책임만을 제대로 해야한다(A class has a single responsibility: it does it all, does it well, and does it only )고 말하는데, 이것은 클래스 이름이 잘 지어졌는지, 얼마나 구체성을 주는지 등에서 알 수 있습니다. (Coad는 "In OO, a class's statement of responsibility (a 25-word or less statement) is the key to the class. It shouldn't have many 'and's and almost no 'or's."라고 합니다. 만약 이게 자연스럽게 되지않는다면 클래스를 하나 이상 만들어야 한다는 얘기가 되겠죠.) 한가지 가능한 지능 분산으로, 여러개의 Queen 오브젝트와 Board 오브젝트 하나를 만드는 경우를 생각해 볼 수 있겠습니다. Queen 오브젝트 갑이 Queen 오브젝트 을에게 물어봅니다. "내가 너를 귀찮게 하고 있니?" --김창준
- EmbeddedSystemClass . . . . 1 match
임베디드 환경에서의 GUI 툴킷(Qt-embedded)를 이용한 프로그램. 디바이스 드라이버 프로그래밍을 실습한다.
- ExtremeBear/OdeloProject . . . . 1 match
* xp경험보다는 프로그래밍 경험이라는 생각이 들었다.
- FileInputOutput . . . . 1 match
[프로그래밍분류]
- Flex . . . . 1 match
[프로그래밍분류]
- FocusOnFundamentals . . . . 1 match
소프트웨어 필드에 익숙한 독자들은 오늘날의 '중요한' 주제들은 언급되지 않음을 지적한다. ["Java"], "웹 기술", "컴포넌트 지향", 그리고 "프레임워크" 는 나타나지 않았다. 이러한 접근법과 툴들에 기반한 많은 좋은 아이디어들은 반드시 가르쳐야 한다. 연구실 숙제들과 다른 프로젝트들은 학생들에게 가장 대중적이고 유명한 툴들을 이용할 기회를 제공해야 하며, 또한 뭔가 새로운 것을 경험할 기호를 제공해야 한다. 하지만, 우리는 이러한 주제들은 오늘날의 이른 변덕을 위한 교체품들 이며 만병통치약이며 곧 교체될 것들임을 기억해야 한다. 교육자들에게는 오늘날의 학생들의 성공이 40년은 지속할 수 있어야 함을 기억해야 할 책임이 있다. 우리는 이 기간동안효과적이고 유용한 근본들을 알고, 그리고 수업시간에 이 원리들을 강조해야 한다. 많은 프로그래머들은 특정 시스템이나 프로그래밍 언어를 배우는 것이 뭔가 다른 것을 배우는 것일 뿐, 그 그거 자체의 목표가 아니라는 사실에 대해 시야를 잃곤 한다.
- FoundationOfUNIX . . . . 1 match
* 쉘 스크립트 짜기 [http://kldp.org/KoreanDoc/Shell_Programming-KLDP kldp 쉘 프로그래밍 참고 강좌]
- GTK+ . . . . 1 match
[프로그래밍분류]
- GUIProgramming . . . . 1 match
윈도우 플랫폼에서 프로그래밍을 하는 대부분의 프로그래머가 사용하는 것으로 마이크로소프트사의 제품군에도 사용된다. 대표적인 예는 마이크로 소프트 오피스군이 있다.
- Gof/Facade . . . . 1 match
예를 들기 위해, 어플리케이션에게 컴파일러 서브시스템을 제공해주는 프로그래밍 환경이 있다고 하자. 이 서브시스템은 컴파일러를 구현하는 Scanner, Parser, ProgramNode, BytecodeStream, 그리고 ProgramNodeBuilder 클래스를 포함하고 있다. 몇몇 특수화된 어플리케이션은 이러한 클래스들을 직접적으로 접근할 필요가 있을 것이다. 하지만, 대부분의 컴파일러 시스템을 이용하는 클라이언트들은 일반적으로 구문분석(Parsing)이나 코드 변환 (Code generation) 의 세부적인 부분에 대해 신경쓸 필요가 없다.(그들은 단지 약간의 코드를 컴파일하기 원할뿐이지 다른 강력한 기능을 알 필요가 없다.) 그러한 클라이언트들에게는 컴파일러 서브시스템의 강력하지만 저급레벨인 인터페이스는 단지 그들의 작업을 복잡하게 만들 뿐이다.
- Gof/Singleton . . . . 1 match
1. unique instance임을 보증하는 것. SingletonPattern의 경우도 일반 클래스와 마찬가지로 인스턴스를 생성하는 방법은 같다. 하지만 클래스는 늘 단일 인스턴스가 유지되도록 프로그래밍된다. 이를 구현하는 일반적인 방법은 인스턴스를 만드는 operation을 class operations으로 두는 것이다. (static member function이거나 class method) 이 operation은 unique instance를 가지고 있는 변수에 접근하며 이때 이 변수의 값 (인스턴스)를 리턴하기 전에 이 변수가 unique instance로 초기화 되어지는 것을 보장한다. 이러한 접근은 singleton이 처음 사용되어지 전에 만들어지고 초기화됨으로서 보장된다.
- HardcoreCppStudy/첫숙제/ValueVsReference/임민수 . . . . 1 match
c++ 프로그래밍에선 사용자 함수를 많이 쓰게 되는데,
- HaskellLanguage . . . . 1 match
이전 [프로그래밍잔치] 때 사용했었던 [FunctionalLanguage].
- HostFile . . . . 1 match
host 화일을 이용하면, 아직 해당 도메인 이름이 DNS Server에서 셋팅이 이루어지지 않았어도 도메인으로 해당 웹페이지 접근이 가능하다. 웹 프로그래밍을 할때 virtual host 로 서브 사이트들 구분하며 개발시 편리.
- HowToBlockEmpas . . . . 1 match
검색서비스를 제공하고 있는 곳에서는 로봇 에이전트를 사용하여 검색한다는거 아실겁니다. 이러한 로봇은 강제성은 없지만 로봇 배제 표준을 따르도록 프로그래밍 하는 것이 관례 입니다. 웹서버 루트에 robots.txt 파일을 다음과 비슷하게 작성하시면 되겠습니다.[[BR]]
- HowToStudyRefactoring . . . . 1 match
OOP를 하든 안하든 프로그래밍이란 업을 하는 사람이라면 이 책은 자신의 공력을 서너 단계 레벨업시켜 줄 수 있다. 자질구레한 기술을 익히는 것이 아니고 기감과 내공을 증강하는 것이다. 혹자는 DesignPatterns 이전에 ["Refactoring"]을 봐야 한다고도 한다. 이 말이 어느 정도 일리가 있는 것이, 효과적인 학습은 문제 의식이 선행되어야 하기 때문이다. DesignPatterns는 거시적 차원에서 해결안들을 모아놓은 것이다. ["Refactoring"]을 보고 나쁜 냄새(Bad Smell)를 맡을 수 있는 후각을 발달시켜야 한다. ["Refactoring"]의 목록을 모두 외우는 것은 큰 의미가 없다. 그것보다 냄새나는 코드를 느낄 수 있는 감수성을 키우는 것이 더 중요하다. 본인은 일주일에 한 가지씩 나쁜 냄새를 정해놓고 그 기간 동안에는 자신이 접하는 모든 코드에서 그 냄새만이라도 확실히 맡도록 집중하는 방법을 권한다. 일명 ["일취집중후각법"]. 패턴 개념을 만든 건축가 크리스토퍼 알렉산더나 GoF의 랄프 존슨은 좋은 디자인이란 나쁜 것이 없는 상태라고 한다. 무색 무미 무취의 無爲적 自然 코드가 되는 그날을 위해 오늘도 우리는 리팩토링이라는 有爲를 익힌다. -- 김창준, ''마이크로소프트웨어 2001년 11월호''
- IpscAfterwords . . . . 1 match
ICPC 모의고사(?)와 같은 류의 경험을 한번 해보고 싶었는데 이번과 같은 기회가 주어져서 무척 좋았습니다. 아쉬웠던건 팀워크 발휘가 제대로 안된 점이네요. 또한 알고리즘은 생각해냈는데 구현을 못한 상황이라면 나름대로 자기 위안을 할 수 있겠는데 솔루션에 접근하는 길조차 찾지 못한것도 퍽 아쉬운 점이구요. 처음 두어시간이 흐른뒤엔 사고 능력이 무척 떨어진걸 몸으로 느낄 수 있었는데 너무 오래간만에 머리를 썼더니 쉬 지친게 아닐까하는 생각이 드네요. ["프로그래밍파티"]때엔 좋은 컨디션으로 참여해보고 싶네요. 이제 좌절보다 풀어내는 재미를 느끼고 싶기도 하고, 공부할 좋은 기회를 만들어 주신 선배님께 실망스런 결과는 더 보이지 말아야죠. 모두들 늦게까지 정말 수고 많으셨습니다. --["이덕준"]
- IsThisIntegration?/하기웅 . . . . 1 match
이런 방법으로 간단한 공식을 구한 뒤 프로그래밍~
- ItMagazine . . . . 1 match
* ["프로그래밍세계"]
- ItNews . . . . 1 match
* Lambda the Ultimate http://lambda.weblogs.com/ : 프로그래밍 언어 weblog
- JCreator . . . . 1 match
Visual Studio 를 이용해본 사람들이라면 금방 익힐 수 있는 자바 IDE. 보통 자바 IDE들은 자바로 만들어지는데 비해, ["JCreator"] 는 C++ 로 만들어져서 속도가 빠르다. Visual C++ 6.0 이하 Tool 을 먼저 접한 사람이 처음 자바 프로그래밍을 하는 경우 추천.
- JTDStudy/첫번째과제/원명 . . . . 1 match
* 처음에는 Test-Driven Development 에 입각하여 만들어 보려고 했으나, Java를 거의 처음 시작하고 프로그래밍 경험의 공백기간이 길었던게 큰 타격이었습니다ㅠㅠ. 결국에는 문법과 알고리즘에만 신경을 쓰다보니 TDD방식으로 다루기가 쉽지 않네요. 개선 조언을 해 주신 류상민 선배님 감사합니다 ㅎㅎ -[문원명]
- Java Study2003/첫번째과제/곽세환 . . . . 1 match
다른 자바 프로그램에 의해 삽입(import)되어 사용될 수 있도록 작성된 자바 프로그램입니다. 이러한 자바 패키지는 기존의 프로그래밍 언어에서 사용하던 라이브러리 또는 운영체제에서 제공해 주는 API 등과 같다고 볼 수 있습니다. 자바 패키지 역시 해당 규약을 갖겠지요. 자바에서는 기본적으로 압축 파일의 형태로 'casses.zip"이라는 자바 패키지가 제공되고 있고, 압축 파일 내에는 디렉토리 단위로 패키지가 포함되어 있습니다. 다음에 나오는 그림은 JDK 1.2.2 에서 제공되는 패키지를 보여주고 있습니다.
- JavaScript/2011년스터디/3월이전 . . . . 1 match
* 자바스크립트에서의 다이나믹 프로그래밍이란 뭐지?
- JavaStudy2002/해온일 . . . . 1 match
* 상욱 : 세연과 같이, 평소의 프로그래밍의 순서와 다르다.
- JavaStudy2003/두번째과제/노수민 . . . . 1 match
자바 언어는 객체지향 프로그래밍을 할 수 있도록 문법을 제공해 준다.
- JavaStudy2003/두번째과제/입출력예제 . . . . 1 match
''이건 제가 프로그래밍 하는 습관이 많이 반영되었으므로 완전히 따라하지 않았으면 합니다. 그냥 참고만 하세요.''
- JavaStudy2003/세번째과제 . . . . 1 match
* 이번주 과제는 '''프로그래밍의 체험''' 이 되겠네요. 두번째 수업에 있는 예제의 풀이입니다.
- JavaStudy2003/첫번째수업 . . . . 1 match
* 간단한 예제 프로그래밍
- JavaStudy2004/자바따라잡기 . . . . 1 match
그런데 언제부터인지, 네트워크의 대명사인 인터넷에서 이 자바 커피가 하나밖에 없는 독특한 향기를 뿌리고 있다. 인터넷을 좀 아는 사람이라면 자바를 들어보지 못한 사람은 거의 없을 것이다. 자바는 월드와이드웹 상에서 프로그램을 실행할 수 있게 하는, 네트워크를 기반으로하는 언어로, 인터넷 프로그래밍 언어의 표준이 되었다.
- JollyJumpers/Leonardong . . . . 1 match
실제 코딩에 들어가기 전에 생각하는 시간을 가진다. [생각하는프로그래밍]에서 읽은 게으른 프로그래머가 될 필요가 있겠다. 가능한 디자인 공간을 5분이라도 탐구하고 그 가운데 가장 괜찮은 놈으로 시도해봐야겠다. --[Leonardong]
- LUA_5 . . . . 1 match
오늘은 루아만이 갖고 있는 독특한 자료구조 테이블에 대해서 알아보겠습니다. 루아에서 테이블은 해쉬 테이블과 같은 자료 구조 이상의 역할을 합니다. 테이블은 객체지향적 프로그래밍을 가능하게 해주는 역할도 겹합니다. 무슨 이야기인지는 천천히 설명 드리겠습니다. 우선 간단하게 자료구조로써의 테이블을 살펴 보겠습니다.
- LearningGuideToDesignPatterns . . . . 1 match
Pattern들은 각각 독립적으로 쓰이는 경우는 흔치 않다. 예를 들면, IteratorPattern은 종종 CompositePattern 과 같이 쓰이고, ObserverPattern과 MediatorPattern들은 전통적인 결합관계를 형성하며, SingletonPattern은 AbstractFactoryPattern와 같이 쓰인다. Pattern들로 디자인과 프로그래밍을 시작하려고 할때에, 패턴을 사용하는데 있어서 실제적인 기술은 어떻게 각 패턴들을 조합해야 할 것인가에 대해 아는 것임을 발견하게 될 것이다.
- Linux/필수명령어 . . . . 1 match
약간 어려운 부분은 쉘프로그래밍, 정규식(RegularExpression)부분인데 상당히 짜증남 -_-;''
- LinuxProgramming/SignalHandling . . . . 1 match
쉽게 MFC 와 비유하여 설명하는 시그널은 메시지와 비슷하다고 보면 된다. 실제로 signal 함수를 이용해서 우리는 MFC에서 이벤트와 이벤트 핸들러를 연결하듯 프로그래밍을 한다는 사실을 알 수 있다. (이렇게 보면 정말로 유닉스가 C로 짜여있다는 것을 확실하게 알 수 있다.)
- MFC/MessageMap . . . . 1 match
* 사용자 정의 메시지란 : 특정한 시점에서 메시지를 보내서 다른 객체의 함수를 실행 시킬수 있다. 굉장히 유용하다. 일종의 콜백 함수 역할을 수행할 수 있는것이다. 즉 어떠한 다른 클래스에서 특정 시점에서 다른 객체의 특정 함수를 실행시켜야 할 필요가 있을때 사용하면 유용하고, 소켓 프로그래밍에서 자주 사용된다.
- Map/권정욱 . . . . 1 match
=== 맵 프로그래밍 ===
- MindMapConceptMap . . . . 1 match
컴퓨터 프로그램에서도 MindMap 과 ConceptMap 을 그리는 프로그램이 많다. 하지만, 그렇게 효율적이지는 않은 것 같다. (아직까지 연습장과 펜 만큼 자유롭지가 않다. ["TabletPC"] + Visio 조합이라면 또 모를까;) MindMap 이건 ConceptMap 이건 기존 지식으로부터 연관된 지식을 떠올리고, 사고하고, 재빨리 Mapping 해 나가는 과정자체가 중요하기에. (["1002"]는 개인적으로 프로그래밍을 하려고 했다가; 그리 유용하단 느낌이 안들어서 포기했다는. 여러 프로그램들을 써 봤지만, 결국 도로 연습장 + 펜 으로 돌아갔다. ^^; 그리고 개인적으로 Map 자체를 도큐먼트용으로 보관하는것에 의미를 두지 않아서.)
- MobileJavaStudy . . . . 1 match
* ["MobileJavaStudy/Tip"] - 유용한 프로그래밍 팁
- MobileJavaStudy/Tip . . . . 1 match
J2ME로 프로그래밍 할 때 도움이 될만한 팁들.
- MoreEffectiveC++/Exception . . . . 1 match
물론 저것은 이론이다. 실질적으로 예외 지원 밴더들은 당신이 예외 작성을 위한 코드의 첨가를 당신이 예외를 지원하느냐 마느냐에 따라 조정할수 있도록 만들어 놓았다.(작성자주:즉 예외 관련 처리의 on, off가 가능하다.) 만약 당신이 당신의 프로그램의 어떠한 영역과, 연계되는 모든 라이브러리에서 try, throw, catch를 빼고 예외 지원 사항을 빼고 당신 스스로 속도, 크기 같은 예외처리시 발생하는 단점을 제거할수 있을 것이다. 시감이 지나 감에 따라 라이브러리에 차용되는 예외의 처리는 점점 늘어나게 되고, 예외를 제거하는 프로그래밍은 갈수록 내구성이 약해 질것이다. 하지만, 예외처리를 배제한 컴파일을 지원하는 현재의 C++ 소프트웨어 개발상의 상태는 확실히 예외처리 보다 성능에서 우위를 점한다. 그리고 그것은 또한 예외 전달(propagate) 처리와, 예외를 생각하지 않은 라이브러리들의 사용에 무리없는 선택이 될것이다.
- MoreEffectiveC++/Techniques1of3 . . . . 1 match
설정될 시나리오는 분산 시스템상, 분산 DB에서, local 에 있는 객체와, remote에 있는 객체를 다루기 이다. 클라이언트 입장에서는 둘을 다루는 방법이 이원화 되어 있어서, 해당 객체의 프로시저 호출에 일관성이 없을 경우 프로그래밍 환경이 불편하고, 명시성이 떨어지는 등 여러 불리한 점이 있다. 그래서 아예 양쪽의 객체에 사용법에 대한 일관성을 가지고 싶어 한다. 이를 해결 하기 위해서 스마트 포인터로, 해당 객체를 둘러싸서, 프로시저의 일관된 사용 방법을 제공 받고자 한다. 다음은 그것을 구현한 코드들이다.:
- MoreMFC . . . . 1 match
dos 시절의 절차식 프로그램의 습관에 젖은 프로그래머를 위해 이책도 역시 아주잘 윈도우 프로그래밍이 어떻게 다른지 설명해 준다. 그러나, 그걸 다시 다 설명할 필요는 없고.. 떡하니 그림 한장이면 다 설명 될것 같다. 그럼.. image! [[BR]]
- NUnit/C++예제 . . . . 1 match
평소대로 하자면 이렇게 하면 될것이다. 하지만 현재 프로젝트는 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_16_2.asp Managed C++ Extensions]이다. 이것은 C++을 이용해서 .Net을 Platform위에서 프로그래밍을 하기 위하여 Microsoft에서 C++을 확장한 형태의 문법을 제안된 추가 문법을 정의해 놓았다. 이를 이용해야 NUnit이 C++ 코드에 접근할수 있다. 이경우 NUnit 에서 검증할 클래스에 접근하기 위해 다음과 같이 클래스 앞에 [http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vcmxspec/html/vcmanagedextensionsspec_16_2.asp __gc] 를 붙여서 선언해야 한다.
- NumericalAnalysisClass/Exam2002_1 . . . . 1 match
* 시험공부를 할때 체크리스트 만들고 해당 항목들은 직접 증명해보기 식으로 공부했는데, 가장 확실한 것 같다. (하지만, 시험시간에 일일히 증명해서 푼다는 건 좀 우스운거고; 프로그래밍에서도 idoim 이 있듯, 빨리 풀려면 공식을 외워야겠지. 하지만, '외워지게' 하는것이 가장 좋겠다.)
- ObjectOrientedDatabaseManagementSystem . . . . 1 match
객체지향형 데이터베이스 시스템은 두 개의 조건을 만족시켜야만 한다 : 그것은 DBMS이어야 하며, 또한 객체지향형 시스템이어야 한다. 즉, 가능한 범위까지 OODBMS는 객체지향형 프로그래밍 언어의 현재 작업과 함께 일관되어야만 한다. 첫 번째 기준은 영속성, 2차 저장관리, 동시성, 회복, 그리고 특별한 편의 등 다섯 개의 특질로 해석된다. 두 번째 것은 복잡한 객체들, 객체 동일성, 캡슐화, 형 또는 클래스, 상속, 지연 바인딩과 결합된 오버라이딩, 확장성과 계산 결과의 완성도 등 여덟 개의 특질로 해석된다.
- OpenCamp . . . . 1 match
* 주제: Programming Language and its Application(프로그래밍 언어와 그 응용)
- OpenGL_Beginner . . . . 1 match
- 필자는 자신이 제작한 상업용 3D 설계 툴의 소스를 가지고 오고, 라이선스 문제와, 자신이 생각하는 개선점을 고쳐서 다시 작성했다고 한다. 인상 깊었다. 이해하기도 쉽고, 구조적 프로그래밍을 OOP로 옮긴다는 관점에 도움이 되었다. STL 비슷하게 linked list글 구현해 두었고, MEC++의 지식이 도움되었다. MEC++가 허송세월을 보낸것은 아닌 느낌이다. Java3D의 강좌에서도 Java3D의 프레임웍이 좋다고 하는데, 역시 살피는 과정에서 써야 겠다. 문서화 중
- OperatingSystemClass/Exam2002_1 . . . . 1 match
3. 일반적으로 다중 프로그래밍 시스템에서 메모리 보호를 위해 어떤 H/W 장치가 필요하며, 어떠한 식으로 메모리 보호를 행하는가?
- PHPStudy2005 . . . . 1 match
* 처음 웹프로그래밍 할때 잘 이해가 안가는 부분에 대한 이해를 돕는다.(APM 설치, GET, POST 전달 방식, 정규식등)
- PNA2011/서지혜 . . . . 1 match
* 창준선배의 내 아이와 프로그래밍으로 놀기
- PPProject . . . . 1 match
* 책은 원서도 있고 번역서(생각하는 프로그래밍)도 있습니다.
- PhotoShop2003 . . . . 1 match
* 기본적으로 인수와 상협은 페어 프로그래밍을 했다.
- PracticeNewProgrammingLanguage . . . . 1 match
새로운 프로그래밍 언어를 배울때 작성하면 도움이 될문한 문제를 제시하는 페이지.
- PrivateHomepageMaking . . . . 1 match
또한 직접 홈페이지를 만들어 보면서 서버관리, 디자인, 웹 프로그래밍을 어느정도
- Profiling . . . . 1 match
[컴퓨터분류],[프로그래밍분류]
- ProgrammingLanguageClass/2006/Report3 . . . . 1 match
Jensen's Machine 은 Jørn Jensen라는 사람이 Algol 60을 제안하는 보고서에서 제시한 프로그래밍 테크닉을 말합니다.
- ProgrammingPartyPhotos . . . . 1 match
2002년 5월 19일 있었던 ["프로그래밍파티"]에서 찍은 사진.
- ProjectZephyrus/ServerJourney . . . . 1 match
* 느낀점 : 휴.. 전에 툴을 쓸때는 해당 툴과 손가락이 생각을 못따라가 가는 것이 너무 아쉬웠는데, Eclipse에서는 거의 동시에 진행할수 있었다. extract method, rename, quick fix, auto fix task,마우스가 필요 없는 작업 환경들 etc VC++로 프로그래밍 할때도 거의 알고 있는 단축키와 key map을 macro를 만들어 써도 이정도가 아니었는데 휴..
- ProjectZephyrus/ThreadForServer . . . . 1 match
과정은 전에 하던 흐름 데로 JavaDoc 작성후 프로그래밍해라
- PyDev . . . . 1 match
[Eclipse]에서 [Python]프로그래밍을 가능하게 해 주는 플러그인. 2004년 8월 현재 Outline 까지는 보여주나, [리팩토링]등을 지원하지 않는 아쉬움이 있다.
- PyIde . . . . 1 match
* [Eclipse] - [wxPython] 과 PDE 중 어느쪽이 더 효율적일까.. CVS 관련 기능들등 프로젝트 관리면에서는 Eclipse 의 Plugin 으로 개발하는 것이 훨씬 이득이긴 한데.. Eclipse Plugin 도 [Jython] 으로 프로그래밍이 가능할까?
- PyIde/SketchBook . . . . 1 match
Eclipse 쓰던중 내 코드 네비게이팅 습관을 관찰해보니.. code 를 page up/down 으로 보는 일이 거의 없었다. 이전에 VIM 을 쓰면서 'VIM 으로 프로그래밍하면 빠르다' 라고 느꼈던 이유를 생각해보면
- PyOpenGL . . . . 1 match
PyKug:PyOpenGL Python OpenGL Binding. Python 으로 [OpenGL] 프로그래밍을 하게끔 도와준다.
- PythonIDE . . . . 1 match
* Visualwx : wxToolkit 의 WYSWIG 을 지원하는 디자인 중심의 IDE. 파이선 프로그래밍을 지원한다. GUI 개발시 wxWindow 를 공부하는 유저에게 상당히 좋은 학습자료가 될 수 있다.
- PythonNetworkProgramming . . . . 1 match
MFC 의 CSocket 를 사용하는 스타일로 프로그래밍을 할 수 있는데, Python 이기에 코드가 더 깔끔. 그리고 Windows/Linux 양쪽 다 가능.
- RAD . . . . 1 match
전통적인 소프트웨어 개발 방법(waterfall 모델)은 오랜 기간의 분석, 설계, 프로그래밍 그리고 테스트 과정을 되풀이한 후 최종 단계에서 비로소 사용자가 요구한 시스템을 완성할 수 있었다. 그러나 이와 같은 방법으로는 소프트웨어의 생명주기가 점차 짧아지는 등의 급변하는 프로그램 시장과 사용자의 요구를 수용하기가 매우 어렵다. 따라서 소프트웨어의 생산성을 향상시키면서 동시에 개발 기간과 비용을 단축시킬 수 있는 방법이 요구되었고, 이러한 연구의 결과로 RAD와 같은 개념이 등장하게 되었다.
- REFACTORING . . . . 1 match
* 좋은 디자인으로서 프로그래밍 시간을 단축해준다.
- RandomFunction . . . . 1 match
[프로그래밍분류]
- RedThon . . . . 1 match
많은 프로그래머들은 특정 시스템이나 프로그래밍 언어를 배우는 것이 뭔가 다른 것을 배우는 것일 뿐,
- Refactoring/BadSmellsInCode . . . . 1 match
여기서 딜레마가 온다. 어떻게 인스턴스 변수를 삭제하거나 클래스 계증구조를 만드는가를 표현하는 것은 쉽다. 그건 사소한 문제들이다. 하지만 언제 이러한 것들을 해야 할 것인지 표현하는 것은 쉽지 않다. 나는 (여기서의 I는 Martin Fowler) 프로그래밍 미학이라는 모호한 표현으로 얼버무리지 않고 좀 더 확실한 것을 원했다.
- RefactoringDiscussion . . . . 1 match
하지만 이런 논의를 떠나서 도대체 왜 리팩토링을 하는가 생각해볼 필요가 있겠습니다. 우리는 리팩토링을 "리팩토링이라는 것이 옳다 그르다"를 따지기 위해 사용하는 것이 아니고, 우리의 프로그래밍에 도움이 되기 위해 사용합니다.
- ReleasePlanning . . . . 1 match
릴리즈 계획 회의의 핵심은 개발팀이 각 사용자 스토리에 대하여 이상적으로 프로그래밍 했을때 소요되는 시간을 예측하는 것이다.
- ReplaceTempWithQuery . . . . 1 match
프로그래밍 경력이 있는 사람일수록, 이러한 사실에는 동의를 하지만 '''퍼포먼스'''를 우려해서 꺼리는 경향이 있다. '' '동일한 연산을 왜 이렇게 수행하는거지?' '', '' '이러한 블럭은 지역적이기 때문에 임시 변수 사용은 문제가 되지 않아!' ''.
- Reverse Engineering처음화면 . . . . 1 match
4. 프로그래밍 후의 Debugging을 위한 초석.
- ReverseAndAdd/1002 . . . . 1 match
이유는 reverse 처리 부분을 matlab 으로 빨리 프로그래밍 하기 좋지가 않다는 점. 나머지 코드는 둘이 거의 거의 비슷하게 나옴.
- RubyLanguage/Container . . . . 1 match
* Ruby 프로그래밍에 있어 가장 기본적인 컨테이너 객체이다.
- RuminationOnC++ . . . . 1 match
Accelerated C++의 저자인 앤드류 쾨니그가 쓴 책이다. C++을 다년간 써온 저자의 프로그래밍 테크닉을 쉽게 이야기를 쓰듯 풀어나간 책이다. 책의 내용은 저널에 저자가 썼던 글에 살을 덧 붙이고 다듬어서 나온책이다. 약간 흥미를 위주로 쓴 측면이 있어서 재미있게 읽을 수 있다. (표지나 서문에서 느껴지는 책의 분위기는 프로그래머를 위한 C++ 동화책이다. ㅡ.ㅡ;;)
- SRPG제작 . . . . 1 match
1. 위에서 만들어진 맵과 이벤트를 사용하여 프로그래밍을 한다.
- STL . . . . 1 match
이제 컴퓨터의 속도가 빨라진 지금, C++을 느낄려면 STL을 써서 프로그래밍 해야 Compiled language 라는 느낌을 받을수 있다. --["상민"]
- STLErrorDecryptor . . . . 1 match
VC++를 가지고 STL 프로그래밍을 하시는 분들이 가장 많이 느끼는 불편함(어느 플랫폼이나 마찬가지이지만)중 하나가 바로 "'''에러 메시지에 나타나는 STL 컴포넌트가 무엇인지 도통 모르겠다'''"라는 점일 겁니다. 이는 컴파일러가 STL 템플릿을 인스턴스화할 때 타입 매개 변수가 모두 포함된 상태로 전체 이름을 써 버리기 때문에 STL 책에 나오지도 않는 클래스 이름과 템플릿 이름 등이 마구 튀어나옴은 물론이거니와, 인스턴스화한 클래스 이름 자체가 엄청나게 길어져서, 코드 한 줄에 대한 에러 메시지가 수십 여 줄까지 만들어지는 현상이 일어나지요.
- STLPort . . . . 1 match
= 프로그래밍 관련 세팅 =
- Score/1002 . . . . 1 match
See Also [프로그래밍/Score]
- Self-describingSequence/1002 . . . . 1 match
그와 관련하여 프로그래밍을 진행해보았으나 그리 성과가 없음.
- SilentASSERT . . . . 1 match
C++ 개발자, 특히 Window 프로그래밍을 할 때에는 ASSERT를 잘써야 합니다.
- Slurpys . . . . 1 match
저도 강추. 프로그래밍에 완전히 몰입되었고 구현하는 동안 즐거웠어요 -- 재선
- SmallTalk/강좌FromHitel/Index . . . . 1 match
| 1.1. 프로그램과 프로그래밍 언어 <#1>
- SmallTalk/강좌FromHitel/강의3 . . . . 1 match
1.1. 프로그램과 프로그래밍 언어
- SmallTalk/강좌FromHitel/차례 . . . . 1 match
| 1.1. 프로그램과 프로그래밍 언어 <#1>
- SmallTalk_Index . . . . 1 match
| 1.1. 프로그램과 프로그래밍 언어 <#1>
- SmalltalkBestPracticePatterns/DispatchedInterpretation . . . . 1 match
인코딩은 프로그래밍에 있어서 필수적이다. 몇몇 관점에서 당신은 말한다, "약간의 정보가 있다. 어떻게 그것을 표현할 수 있는가?" 정보를 인코딩하는 결정은 하루에도 아주 많이(a hundred times a day) 발생한다.
- SpiralArray/영동 . . . . 1 match
* 제대해서 처음으로 숙제를 제외하고 처음 짠 ToyProblem입니다. 1학년 때 프로그래밍잔치에서 못 짰던 걸 이제야 짰네요. 우선 소요시간으로 미루어 볼때 제대하고 나서 머리가 굳었다는 걸 느낄 수 있었고, 그만큼 처음부터 막 짜지 말고 설계 및 구상을 잘 해야겠다고 생각했습니다. 또한 객체지향으로 짠 것도 아니고 변수, 함수를 너무 지저분하게 쓴 거 같기도 하고... 반성할 점이 참 많았습니다. 그리고 일단 배열 크기도 미리 정했고 시작점도 0, 0으로 가정하고 해서 사용자의 잘 못된 입력에 대응하지 않은 점도 미비했네요.
- Spring/탐험스터디/2011 . . . . 1 match
1.2 pojo기반의 프로그래밍은 모듈을 조립해서 쓰기 쉽기 떄문에 재사용성이 높아진다. 이 때 조립을 코드부분에 맡기면 조립시 코드를 바꿔야 컴파일이 가능하지만 xml에 조립을 맡기면 설정xml을 바꾸는 것만으로도 쉽게 설정을 바꿔서 조립이 가능하다.
- StepwiseRefinement . . . . 1 match
구조적 프로그래밍에서 상위 모듈을 먼저 개발하고 여기서 사용하는 하?모듈들을 개발해 나가는 방법. EdsgerDijkstra와 Niklaus Wirth가 이 방법을 대중화시킨 것으로 유명하다.
- StringOfCPlusPlus/세연 . . . . 1 match
= 프로그래밍을 하며 =
- StudyingFundamentalsOfTcpIp . . . . 1 match
* 소켓 프로그래밍이 아닌 TCP/IP 에 대한 공동학습. 여럿이 해야 효과가 크겠죠.
- TemplateLibrary . . . . 1 match
템플릿 프로그래밍에서 작성되는 코드는 크게 두 부분으로 나누어진다.
- TestDrivenDatabaseDevelopment . . . . 1 match
프로그래밍을 하다가, 만일 여기서부터 interface 를 추출한뒤에 거꾸로 MockRepository 를 만들 수 있을까 하는 생각을 했다. (interface 를 추출함으로서 같은 메소드에 대해 다른 성격의 Repository, 즉 File Based 나 다른 서버 로부터 데이터를 얻어오는 Repository 등 다형성을 생각해볼 수 있는 것이다.)
- TestSuiteExamples . . . . 1 match
[프로그래밍분류], TestDrivenDevelopment, UnitTest
- TheWarOfGenesis2R/ToDo . . . . 1 match
* 현재 1스테이지만 로딩이 되도록 프로그래밍이 되어 있다. 여러 판을 할 수 있도록 로딩루틴 수정
- TkinterProgramming . . . . 1 match
만약 파이선으로 GUI 프로그래밍을 한다면 Tkinter 이것 만큼은 피하라!!!! -_-
- Trace . . . . 1 match
[상식분류], [프로그래밍분류]
- UML . . . . 1 match
[프로그래밍분류]
- UnixSocketProgrammingAndWindowsImplementation . . . . 1 match
[프로그래밍분류]
- VMWare/UsefulFunctions . . . . 1 match
즉 윈도우 시스템의 IDE 를 이용해 프로그래밍하고 VMWARE 호스트 머신에서 컴파일 하는 과정을 최대한 간단하게 만드는 방법이 이 VMWARE TOOLS 을 이용하는 것이다.
- VacationOfZeroPage . . . . 1 match
* 내년 학술제 작품 전시회를 대비해서(제로페이지 전시회 대신에 학술제에 작품을 내는 식으로 한 만큼.) 각자 개인으로 만들던지, 팀으로 만들던지 아니면 여러개 만들던지할 계획을 말하고, 그걸 겨울 방학때 만드는것도 좋을거라고 생각합니다. 뭔가 머리로만 생각했던걸 실제로 만드는건 가슴뛰는 일이지 않습니까~, 그리고 개인적으로 지금 1학년들도 충분히 멋진걸 만들 수 있는정도가 되었다고 생각합니다.(노력과 공부만 하면..-_-;) 또 1학년들이 뭔가 만들어 봐야 프로그래밍의 재미도 만끽하지 않을까 싶습니다.(솔직히 뭐 만들고 싶은거 만드는게 제일 재밌습니다. -_-;)
- Velocity . . . . 1 match
Java 의 TemplateLibrary. FreeMarker 와 함께 현업에서 자바 웹 프로그래밍시에 많이 이용.
- WOWAddOn/2011년프로젝트/초성퀴즈 . . . . 1 match
그래서 나는 예제로 배우는 프로그래밍 루아 라는 책을 도서관에서 빌려서 WOW Addon Studio를 깔게 되었다.
- WebGL . . . . 1 match
[Javascript]임에도 불구하고 마치 C프로그래밍 스타일의 함수들이 존재한다. [WinAPI]가 C스타일의 [OOP]이듯 WebGL 또한 C스타일의 OOP이다. 모든 함수는 WebGLcontext라는 객체에 있는데 보면 그냥 접두어를 붙이는 느낌이다.
- WhenJuniorsAsk . . . . 1 match
''OOP의 장점은 反/非 OOP적 프로그래밍을 해보고 거기서 나름대로 고민해 보았던 사람이 아니라면 '''절대''' 느낄 수 없다고 생각합니다. 기왕 SUN의 프로그래머를 초빙한다면 거기에 관심을 갖고 간절히 듣고 싶어하는 사람들에게 우선권을 주는 게 좋겠다는 이야기죠. 전원 집합 하에 청강한다든가 하는 것 말고요.''
- Winamp . . . . 1 match
[WinampPlugin을이용한프로그래밍]
- WinampPlugin을이용한프로그래밍 . . . . 1 match
winamp 의 plugin 을 이용한 프로그래밍
- WindowsConsoleControl . . . . 1 match
[프로그래밍분류]
- XUL . . . . 1 match
모질라 계열 브라우저에서 실행 가능한 [XML] 기반의 프로그래밍 언어.
- XpWeek . . . . 1 match
[http://java.pukyung.co.kr/Lecture/Chapter21.php 네트워크 프로그래밍]
- XpWeek/20041220 . . . . 1 match
이건 혼자서 해 보세요. [http://www-903.ibm.com/developerworks/kr/java/library/j-xp042203.html Test-driven 프로그래밍] 강좌
- YetAnotherTextMenu . . . . 1 match
ICPC 등 외국 컴퓨터 프로그래밍 경진 대회를 보면 대부분 이런 식으로 문제가 나온다.
- Yggdrasil/가속된씨플플 . . . . 1 match
지금 하는 작업들도 그렇게 될수 있겠지요. 마치 긴 프로그래밍 소스가 [Refactoring]을 통해서 짧아 지는것 처럼 말이지요.
- ZPHomePage . . . . 1 match
* 웹프로그래밍 능력을 키운다
- ZeroPageServer/MySQL계정 . . . . 1 match
* ["MySQL"] DB 를 원격에서 접근해서 사용할수 있다. 즉, 안정적인 DB 서버 프로그래밍이 가능하다.
- [Lovely]boy^_^/Diary/2-2-10 . . . . 1 match
* 오늘의 XB 는 정말 잼있엇다. 어제보다 훨씬 나은 성과에, 결과물도 내일이면 나올듯하다. 즐겁게 프로그래밍을 하기 위해 재동이를 좀 희생시키기 했지만.;; 보람찬 하루였다.
- [Lovely]boy^_^/Diary/2-2-8 . . . . 1 match
* 프로그래밍 경진대회 9시 7피
- aop . . . . 1 match
[프로그래밍분류]
- bitblt로 투명배경 구현하기 . . . . 1 match
[프로그래밍분류]
- callusedHand/books . . . . 1 match
공개 소스 방식의 개발은 많은 개발자들의 자발적인 참여를 이끌어낼 수 있습니다. 그렇기 때문에 낭비라고 볼 수 있는 많은 동류의 소프트웨어 개발, 무수히 많은 패치들, 중복된 작업들이 존재합니다. 그리고 이런 양상은 혼란스러워 보입니다. 하지만 이것을 더 나은 소프트웨어를 개발하기 위한 과정이라고 보는 것이 타당할 듯 합니다. 소프트웨어 산업에도 약육강식, 적자생존의 법칙이 적용됩니다. 엔드 유저가 찾고 엔드 유저의 눈에 보이는 것은 경쟁 속에서 살아남은 몇 가지 소프트웨어입니다. 그리고 개발자들의 자발적인 참여는 성당 개발 방식에서 개발자들을 기계화하는 것과는 다릅니다. 참여 개발자라면 적어도 그 프로그램에 대한 관심, 열정을 가지고 있으며 이는 자율이라는 점에서 더욱 힘을 얻어 개발자는 개발에 열중하게 될 것입니다. 이럴때 개인의 창의력, 프로그래밍 능력이 극대화될 수 있을 겁니다.
- html . . . . 1 match
[프로그래밍분류]
- html5/web-workers . . . . 1 match
= 워커를 이용한 프로그래밍 =
- html5/문제점 . . . . 1 match
* HTML5는 마크업 언어(프로그래밍 언어X)로서 브라우저에만 해당 되지만
- i++VS++i . . . . 1 match
속도가 아주 빨라야 하는 프로그래밍을 할 때는 특정 컴파일러에서 어떻게 할 때가 성능이 더 좋은지 알 필요가 있을수도 있다.
- iPhone . . . . 1 match
[프로그래밍분류]
- iText . . . . 1 match
[도구분류], [프로그래밍분류]
- jQuery . . . . 1 match
jQuery는 “자바스크립트 프로그래밍을 즐겁게 하자”는 목표로 설계된 자바스크립트 라이브러리입니다.
- naneunji . . . . 1 match
* 성적처리 프로그램 (c 프로그래밍 term project) [[BR]]
- nautes . . . . 1 match
* 유닉스 소켓 프로그래밍
- neocoin/CodeScrap . . . . 1 match
["상민"] 이가 프로그래밍중 사용하는 이디엄, 신기한 현상들을 모아놓는 페이지
- neocoin/Education . . . . 1 match
* 프로그래밍 언어론에 대한 접근 방법 분류 필요, 기타 여러 배우는, 가르치는 법 필요.
- openAPI . . . . 1 match
[프로그래밍분류]
- programmer . . . . 1 match
제가 표현하고자했던 말은 누구를 프로그래머라고 부를 수 있냐는 것이였습니다. 초보/중급/ 이런건 생각해보지 않았는데, 그렇게도 여길 수 있겠군요. 너무 막막하죠. "프로그래밍 언어를 이용하여서 현재 프로그램을 만들고 있거나 가까운 시일내에 만들 사람" 먼저 간략히 이정도만 정의해놓죠.
- radeon256 . . . . 1 match
* 프로그래밍 정복
- 강희경 . . . . 1 match
*[http://xper.org/wiki/seminar/_b1_b9_be_ee_bd_c7_b7_c2_b0_fa_c7_c1_b7_ce_b1_d7_b7_a1_b9_d6]국어실력과프로그래밍
- 객체지향분석설계 . . . . 1 match
목표 : 객체지향 프로그래밍에 대해 좀더 친숙해지자.
- 경시대회준비반 . . . . 1 match
===== 1주차. 동적 프로그래밍 =====
- 공개선언 . . . . 1 match
프로그래밍 연습하기.(4학년 과목 소화하고 싶다면 해두자.)
- 공개선언/메세지 . . . . 1 match
무엇보다 건강~! 저도 꾸준히 운동해서 체력 키우기가 점점 중요하다는 생각이 들어요. 그 밖에 책, 패션감각, 피부관리, 언어능력, 프로그래밍에 대한 바람을 모두 이루실 거에요~ [나를만든책장관리시스템]도 성공하세요~
- 곽세환 . . . . 1 match
* 네트워크 프로그래밍해서 메신저랑 소리바다 만들기
- 구글을지탱하는기술 . . . . 1 match
* [Sawzall] : 분산처리용 프로그래밍 언어. 스크립트 언어
- 김준영 . . . . 1 match
* 프로그래밍 공부. (당장 포인터부터 ㅜㅜ)
- 김현종 . . . . 1 match
아직 너무나 서투른 프로그래밍에 있어 조금이라도 자신감을 갖고 능숙하게 다룰 수 있음 좋겠어요^^
- 나를만든책장/서지혜 . . . . 1 match
* 프로그래밍은 상상이다
- 남상혁 . . . . 1 match
* 게임 프로그래밍 with SDL/OpenGL
- 데블스캠프2002 . . . . 1 match
프로그래밍을 위한 연습문제들 정리. (문제, 내용, 고른 이유 등은 관련 페이지 참조)
- 데블스캠프2002/Afterwords . . . . 1 match
* 의외로 시간이 빨리 가서 생각보단 프로그래밍 횟수가 적다는 느낌입니다. 그리고 앞으로 공부할 게 참 많아 보인다는 생각이 들었습니다. -[영동]
- 데블스캠프2003 . . . . 1 match
|| 7월 4일 || 금요일 || 이선호(API), 강인수(MFC) || 윈도우 프로그래밍 ||
- 데블스캠프2003/다섯째날/후기 . . . . 1 match
* 드뎌 드뎌 끝났다,,,5일동안 정말 폐인이었다,..낮엔 게임하고 밤엔 프로그래밍하고,,,,,,,,,,,,,,,,,,,,--희경
- 데블스캠프2003/둘째날/후기 . . . . 1 match
* TDD와 페어프로그래밍으로 상욱이랑 미로찾기를 만들면서 많은걸 깨달았다. 가장 중요한건 네이밍의 중요성! 이름을 이상하게 지어놓고 이상한걸 호출하다가 자꾸 이상하게 나와서, 나중에는 '미로를 무시하고 이동한다.' 라는 말까지 나왔었다.--; 그러면서 중간에 TDD를 잘못했구나 아직 멀었구나 덜 테스트했구나하면서 좌절을 했지만 이름을 고치고 나니 바로 해결이 되는걸 보면서.. 아.. 더불어 CSP는 아직도 이해가 잘 안간다. --인수
- 데블스캠프2004준비 . . . . 1 match
* 정렬 개념 설명과 프로그래밍 실습-> 코드 비교 토론 -> 다른 방식 생각해보기
- 데블스캠프2005/수요일후기 . . . . 1 match
이형노 : 오늘한 java , 소켓프로그래밍 , jsp.. 어렵다.. java만 어느정도 끄트머리만 잡은듯 하고.. 나머지는 전혀.. 어렵다..ㅠ.ㅠ
- 데블스캠프2005/월요일 . . . . 1 match
간단한 워밍업 프로그래밍. 구구단, 탐색, 정렬, 입출력, 파일 입출력...
- 데블스캠프2005/월요일후기 . . . . 1 match
사실 : OOP의 개념과 플래시, 프로그래밍 언어 만들기,로보코드를 했다
- 데블스캠프2005/화요일후기 . . . . 1 match
[김범준] - 사실: 자료구조(하노이탑, 미로찾기), 파이썬(구구단, 마름모, 피보나치, 회문, 지뢰찾기) / 느낌: 힘들다, 재미있다, 피곤하다. / 교훈: 프로그래밍은 설계가 중요하다.
- 데블스캠프2006 . . . . 1 match
"선언적 프로그래밍(Declarative Programming)과 J 언어"를 주제로 강의해 드릴 수 있습니다. 혹시 생각이 있으면 연락하세요. --JuNe
- 데블스캠프2006/월요일/연습문제/웹서버작성/변형진 . . . . 1 match
* PHP로 짜면 스크립트 언어 특성상 프로그래밍이 즐겁다고나 할까요? 그런 느낌이 좋아서 PHP를 선호하긴 하지만, UI를 제외한 코어 루틴만큼은 레퍼런스와 샘플을 함께하면 대부분의 언어로 같은 루틴을 만들 수 있을 거라고 생각해요. 그래도 어느정도는 비 웹언어에 익숙해져야 하지않을까 싶어 C++, Java, C#을 고민하다 C#을 선택해서 해봤는데, C#이 클라이언트단 어플리케이션에서도 효용성을 가지려면 Windows Vista가 출시된 후의 상황을 지켜봐야 할 것 같고, 아직은 C/C++이 더 대세인건 분명해보이네요. 사실 저같은 경우에는 아직은 연구하고 싶은 관심사가 '대용량 데이터베이스 기반 검색 엔진'과 '형태소 분석 기반 자연어 처리'로 DB와 문자열 처리에 관한 부분인데, DB 처리는 일단 RDBMS에서만큼은 PHP처럼 수월한 언어가 없고, 문자열 처리는 Perl이 다른 언어들에 비해 월등하다보니 그런 언어를 도메인 언어로 해오지 않았나 싶네요. ㅋㅋ - [변형진]
- 데블스캠프2006/준비/목요일 . . . . 1 match
* 목표 : C언어와 Win32API를 이용, 기초적인 윈도우 프로그래밍을 배워본다.
- 데블스캠프2006/화요일후기 . . . . 1 match
프로그래밍의 느낌을 빨리 붙잡아서 여러분도 코딩을 괴로운 것이 아닌 즐겁게 하는 것이 되었으면 좋겠습니다.
- 데블스캠프2009/금요일/SPECIALSeminar . . . . 1 match
1. 프로그래밍 못하면 소프트웨어 개발 못하나?
- 데블스캠프2009/화요일후기 . . . . 1 match
* [송지원] - 디폴트 코드와 거의 비슷하게 짰던 환이가 의외로 좋은 성적을 거두어서 뿌듯했지만 페어 프로그래밍에선 전혀 도움이 안됐던게 미안했다. 넷북에서 로보코드가 라이브러리 문제로 컴파일 에러가 나는건 기분이 나빴다.
- 데블스캠프2011/셋째날/난해한프로그래밍언어 . . . . 1 match
[데블스캠프2011/셋째날/난해한프로그래밍언어/김준석]
- 데블스캠프2011/셋째날/난해한프로그래밍언어/김준석 . . . . 1 match
[데블스캠프2011/셋째날/난해한프로그래밍언어] [데블스캠프2011]
- 도구분류 . . . . 1 match
프로그래밍시 이용되는 각종 도구들. 툴, API 등 (아마 Framework 는 추후 분류가 분화되어야 할듯)
- 루프는0부터? . . . . 1 match
대부분의 경험있는 C++프로그래머들은, 처음에는 이상하다고 생각할만한 프로그래밍 습관을 가지고 있습니다. 그것은 바로 번호를 매길 때에 언제나 1부터 시작하는 것이 아니라 0부터 시작한다는 것입니다.
- 마샬링 . . . . 1 match
마샬링은 하나 이상의 프로그램 또는 연속되어 있지 않은 저장 공간으로부터 데이터를 모은 다음, 데이터들을 메시지 버퍼에 집어넣고, 특정 수신기나 프로그래밍 인터페이스에 맞도록 그 데이터를 조직화하거나, 미리 정해진 다른 형식으로 변환하는 과정을 말한다.
- 몸짱프로젝트 . . . . 1 match
* 참고한 책 : ProgrammingPearls(번역서 [생각하는프로그래밍])
- 무엇을공부할것인가 . . . . 1 match
전산학을, 프로그래밍을 공부하는 사람이라면, 만약 내가 지금 배우는 대부분의 지식과 기술들이 내가 졸업을 하고 회사에 입사를 할 약 4년(혹은 병역을 마치는 경우 6년) 후에 쓸모없어 진다면 어떨까 하고 생각을 해 볼 수 있겠죠. 오늘 내가 밤샘을 하고 고민을 하면서 내가 사용하는 특정 도구의 한계를 우회하기 위해 기발한 방법을 짜내면서 얻는 지식은 4년 혹은 6년 후에 어떤 가치가 있을까요? 그 노력에 비해 얼마나 가치가 있을까요? 만약 그런 과정을 통해 어떤 지혜를 얻을 수 있다면, 좀 더 효과적이고 경제적인 방법은 없을까요?
- 문자반대출력/김태훈zyint . . . . 1 match
프로그래밍 이미 짜놓고 알았다-_-;
- 문자열연결 . . . . 1 match
자료구조 프로그래밍에 관련된 문제입니다.
- 문제은행 . . . . 1 match
컴퓨터 프로그래밍에 흥미를 느낄수 있게 여러가지 재미있는 문제들을 내보고 서로 풀어보았으면 좋겠다는 취지에서, 그리고... 새내기들을 대상으로하는 여러 이벤트에도 사용되길 바라며 페이지를 만들었습니다. - 임인택
- 문제풀이게시판 . . . . 1 match
- 정모에다가는 가제로 '프로그래밍 존'이라고 해놨다 -- ["Dantert"]
- 박성현 . . . . 1 match
* 윈도우 프로그래밍 개념 익히기.
- 방울뱀스터디 . . . . 1 match
7월 26일(토) 오전 11시 7피 임시모임. 기본 프로그램의 80%를 목표로 프로그래밍 해봅시다. --재동
- 백주협 . . . . 1 match
2. 그 동안 못한 프로그래밍
- 복날 . . . . 1 match
윈도우 프로그래밍 스터디(방학중)
- 상협 . . . . 1 match
* 취미 : 독서, 프로그래밍
- 상협/100문100답 . . . . 1 match
프로그래밍, 독서
- 상협/Diary/7월 . . . . 1 match
* 오후에 학교에서 공짜로 해주는 영어 회화 한번 가구, C++ 우리팀 모이는데 한번 가고 그러다 보면 하루 다 가겠다. 지금과 같이 뭐 특별한거 없고, 그저 그런 상황에서 난 중딩때 미래를 생각했는데.. 지금 상황에서 무엇을 조금씩 한다면 그것은 미래에 아주 큰 도움이 된다는거... 음.. 어떤걸 해봐야 할까~~ 영어인가.. 아니면 다양한 분야의 책들? 프로그래밍 공부는 원래 하는거다고 치고... 아니면 뭐 음악적으로 기타같은거라도 배울까나?? 별 생각이 다든다. -_-;;
- 상협/감상 . . . . 1 match
|| [프로그래밍언어론] || 원유헌 || 1 || 아주 굿 || 정말 쉽게 잘 나온 책!!, 정말 좋은책을 고르는게 중요하다는걸 알게해준책! ||
- 상협/삽질일지/2002 . . . . 1 match
* AI 오목 하면서, 효율적으로 어떻게 구성할지에 대한 생각을 별로 안해서, 나중에 경우의 수가 많아지자 상당히 힘들어졌다. 그때 한번 날 잡아서 중복되어 보이는 함수들을 다 통합했다. 그 통합하는 시간이 아깝다고 생각했었는데, 한번 통합하자 효율은 극도로 높아졌다. 예전에는 몇개의 기능추가 하면 그 경로를 나름대로 축약을 했었음에도 불구하고 4가지 경로 && 공격 && 방어에 대해서 따로 시간을 내어서 코드들을 작성해야 했다. 그러나 함수들을 최대한 중복되지 않게 축약하자 한번의 기능추가가 바로 공격 && 방어 && 8가지 방향에 대해서 다 적용되는 것이었다. AI 수준 높이는데 드는 노력이 훨씬 줄어 들게 되었다. 효율적으로 프로그래밍을 해야겠다는 것을 막연히 생각하고 있었지만 이 경험으로 인해서 체감을 하게 되었다.
- 상협/프로젝트관련 . . . . 1 match
* 이건 가볍게 오브젝트 프로그래밍 숙제로 제출했다. 대충 짜서 별 교훈은 못 얻은거 같다.
- 상협/학문의즐거움 . . . . 1 match
* 맞는말 같다. 페어 프로그래밍에서도 이 유연성이 중요한거 같다. 난 유연성이 부족한거 같다. 급한 성미 때문인거 같다. 앞으로는 너무 급하게만 몰아치지 말고 이 유연성도 키워야 겠다.
- 새싹C스터디2005 . . . . 1 match
2005년 제로페이지 신입회원들의 C언어프로그래밍 능력 향상을 목표로 기존 회원 1명에 신입회원 다수가 각기 그룹을 이루는 스터디
- 새싹C스터디2005/선생님페이지 . . . . 1 match
지난번 세미나를 잠깐 듣고 느낀것은 한번에 너무 많은것을 알려주려고 하는 것 같았습니다. 몇번의 세미나를 통해 프로그래밍 언어 한가지를 가르쳐주는 것은 불가능합니다. 주제를 더 줄이고 보다 확실하게 이해할 수 있도록 가르쳐 주는 것이 더 좋을 것 같습니다. 모든 부분을 설명하지 못해도 상관 없습니다. 어차피 언어는 스스로 익히는 것입니다. 우리가 할 일은 스스로 익히는 일에 보다 빨리 다가갈 수 있도록 조금씩 이해의 폭을 넓혀주기만 하면 되는 것입니다.
- 새싹교실/2011/A+ . . . . 1 match
* 피드백 쓰는게 갈 수록 늦어지고 있다 큰일이다 으헝헝. 배열과 포인터, call by value==pass by value에 대해서 배웠고 과제는 swap()을 구현해보라 하셨다. 포인터사용이 아직 능숙하진 않지만 이걸 이용하면 이제 할 수 있는게 무궁무진 해지겠지... 과제완료 : [고한종/swap()] 그리고 이걸 이용해서 다음 C프로그래밍 과목 과제로 예상되는 sort를 시도하고 있으나 잘안됨 ㅜㅠ - [고한종]
- 새싹교실/2011/Pixar/5월 . . . . 1 match
오늘 하노이탑 프로그래밍을 했습니다. 제 머리의 한계를 깨닫게 되는 순간이었죠.
- 새싹교실/2011/무전취식/레벨10 . . . . 1 match
김태진 : 저번주말에 부산에 내려갔습니다. 목요일 저녘에 갔기때문에 금요일 창설은 다해놓고 구경하러갔습니다. 그리고 금요일 저녘에 들은 소식은 Fail Fail~~~ ㅠㅠ. 축제도 못본건 아쉽긴 하지만 그래도 집에가서 이런저런거 먹고 잘 쉬다온건 행복했음. 프로그래밍 경진대회 나갔는데 한종이랑 송치완이랑 같이 나갔음. 분명 MSDN까지만 쓰기로 되있었는데 송모군이 MSDN하면서 www.google.co.kr를 통해 검색을 하다가. 야. 이거 문제 똑같애 하다가 들켜서 강퇴당함.
- 새싹교실/2011/무전취식/레벨7 . . . . 1 match
* 이제 포인터라는걸 배웠는데 너무 어렵습니다. 주위 친구들은(능력자들) 미리 배워놔서 잘 쓰고 있다는 말을 들으니 너무 부러워요ㅋ. 인터넷에 보니까 포인터배열,배열포인터라는게 있더군요 이게 뭔 소린지ㅋㅋㅋㅋ 다 자기하기 나름이지만 계속해서 난이도가 높아지는 C프로그래밍이 무서워지기 시작합니다ㅋㅋ C과제도 점점 어려워지는데 자기스스로 한게 반정도 쯤? 나머지는 인터넷,선배님 찬스ㅋㅋ 방학동안에 C공부를 엄청나게 해야할것 같아요. 기말고사도 1달을 앞두고 있는데 중간고사때처럼 망치면 안되니까 열심히 복습을 해야겠습니다 - [서원태]
- 새싹교실/2011/무전취식/레벨8 . . . . 1 match
* 음.. 포인터 없는 C란 존재할수 없지. 다음번에는 어떤 예제를 해볼까 두근두근 하구나. 원태 열심히는 하지만 이부분 외에도 다른부분에 신경써보면 좋겠어. 이시간에 집중하고 다른시간에 딴것을 해보렴. 다른것도 받쳐줘야 프로그래밍도 잘한단다. - [김준석]
- 새싹교실/2011/쉬운것같지만쉬운반/2011.3.29 . . . . 1 match
* 오늘 배운 것은 printf의 사용법과 각종 연산자에 대한 것이었다. 예전에 배운 적이 있지만 다시 배우니 더 깊이 알게 된 것 같다. 프로그래밍은 배울 수록 느는 것 같다. 앞으로도 복습은 소홀히 하지 않아야겠다. - [장용운]
- 새싹교실/2011/쉬운것같지만쉬운반/2011.5.3 . . . . 1 match
* 선생님의 질문에 답하는 시간을 가졌다. 질문에 답하면서 많이 헷갈렸던 것 같다. 다른 애들의 답변을 들으면서 많은 것을 배운 것 같다. 나도 기본적인 부분을 다시 한 번 공부해봐야겠다. 프로그래밍은 아무리 작은 것이라도 절대 놓쳐선 안 되기 때문에 기본에 충실해야 되니까... - [장용운]
- 새싹교실/2012/ABC반 . . . . 1 match
어쨋든 다음 수업때부터 진짜 프로그래밍을 한다는 느낌을 받을 수 있을 거에요 -이민규
- 새싹교실/2012/AClass . . . . 1 match
--> 프로그래밍 언어를 어셈블리어로 변환하고 그 어셈블리언어를 기계가 읽을 수 있는 언어로 변환 시켜주는 것
- 새싹교실/2012/강력반 . . . . 1 match
* 장재영 - printf와 scanf. swtich, if else if등을 배웠고 수업시간에 배운것 말고 새로운 이론도 배웠다 그래도 이론수업보다는 실습시간이 더 재밌다. 다음시간에는 반복문에 대해서 배우고 실습해 볼 것이다. 아픙로 수업시간에 듣는것 말고도 다른 것도 좀 배워보면 조헥ㅆ다. 이해가 안가는 이론을 한번더 들을 수 있어서 수업과정을 이해하는 데도 도움이 많이 되었다. 또 적은 수의 사람이 모여서 하기 때문에 프로그래밍할때 이해가 안되는 부분을 더 자세히 들을 수 있어서 이해하는데 도움이 되었다.
- 새싹교실/2012/개차반 . . . . 1 match
* 추후 프로그래밍시 에러 이유와 대처방법 부연 설명
- 새싹교실/2012/나도할수있다 . . . . 1 match
*c프로그래밍 A+받겠습니다. -신윤호
- 새싹교실/2012/벽돌쌓기 . . . . 1 match
* 허나 1회차의 내용을 제대로 복습하지 않아 1회차 내용을 다시 설명하는 데 시간이 조금 걸렸고, C언어를 배우는 데 있어서 필요로 되는 프로그래밍 능력 또한 키워주어야 한다고 판단 되었다.
- 새싹교실/2012/사과나무 . . . . 1 match
* 제어문을 반복하고 19X19단을 3단씩 출력하기를 했다. 제엄누과 반복문을 이용해서 직접 프로그래밍 해보는 일을 중점적으로 했다. 직접 짜보는 일이 큰 도움이 된다는걸 체감했다. 느리지만 꼼꼼히 해야할 것 같고, 여러번 만나는 것보다 해볼 수 있는 과제가 많이 나오는 것이 좋다고 느꼈다. - [김성원]
- 새싹교실/2012/새싹교실강사교육/1주차 . . . . 1 match
선배 후배간의 학술적인 교류를 개인적인 능력에 의한 특혜가 아니라 누구나 공개적으로 경험하기 위하여 ‘05년도부터 시작된 ZeroPage ‘새싹 배움터’를 시초로 한다. 현 ‘12년 학부의 한 행사로 자리잡아 컴퓨터 공학부의 세 학회(ZeroPage, Netory, CLUG)가 진행을 하고 교수님과의 Feedback을 통해 유동적인 강의 과정을 만든다. 또한, 새싹 교실의 필수과정인 Wiki의 사용, 회고를 통해 처음 프로그래밍을 접하는 새내기들뿐만 아니라 새싹 교실의 선생들도 배움을 얻어가는 자리이다.
- 새싹교실/2012/아무거나 . . . . 1 match
* 수업과목: C프로그래밍
- 새싹교실/2012/아우토반 . . . . 1 match
* 새싹교실 열심히 참여하여 아우토반을 빛내겠습니다 뿌숑!!! 프로그래밍神 되구싶어요 뿌숑! -[안혜진]
- 새싹교실/2012/아우토반/뒷반/3.30 . . . . 1 match
* 오늘은 C언어의 기초를 배운 것 같다. 오늘은 너무 피곤해서 수업시간 내내 졸았던 것 같아서 용운이 형한테 너무 죄송스러웠다. 그래도 이번 수업에서 한 내용은 C프로그래밍 수업 때 조금 들었던 것이었기 때문에 내용을 이해하기가 조금 수월했던 것 같다. 오늘 너무 많이 졸았기 때문에 다음 시간부터는 수업전에 컨디션 조절을 해야겠다. 그리고 앞으로 내용이 많이 어려워질것 같은데..... 열심히 해야겠다. - [김태헌]
- 새싹교실/2012/아우토반/앞반/3.22 . . . . 1 match
* 1학년 전공기초이며, 프로그래밍언어의 기본이 되는것이라고 생각하는 c를 다시 처음부터 배워서 더 자세하게 알수 있어서 좋았습니다. 자신이 아는것이라고 자만하지말고 확실하게 알수있도록 복습을 열심히 하겠습니다.~~쌤~~쭌~~ㅋㅋㅋ키키ㅡ.ㅡ [안혜진]
- 새싹교실/2012/아우토반/앞반/3.29 . . . . 1 match
* 프로그램 분석을 하고 설명을 들었습니다. 설명을 들을때 이해도 되고 몰랐던 사실에 대해 알게 되어서 좋았습니다. 그런데, 프로그래밍에대해서 조금 안다고 해서 제가 뭐가문제인지, 무엇이 부족한지 잘 몰랐는데 수업을 하면서 알게되었습니다. 성준이나 저나 완전히 모르는게 아니라 수업 진도가 빨랐었는데
- 새싹교실/2012/아우토반/앞반/4.5 . . . . 1 match
* 어깨가 빠지는줄 알았어요..유.유 왜냐면 제 노트북을 가져왔었거든요. 제 노트북으로 신나게 프로그램 4개를 ㅉㅏ 보았습니다. 아우토 샘이 힌트를 좀 주셨지만, 그래도 스스로 생각해서 해보아서 보람찼습니다. 그리고 프로그래밍의 세계는 매우 무긍무진합니다. 왜냐하면 같은 프로그램인데 성준이아 소스코드가 달랐기 때문입니다. 하하하.. 신나요신나 WoW~~ 앞으로 프로그램 많이 짜보며 연습하고 복습도 열심히! 질문도 열심히 하겠습니다. 룰루랄라
- 새싹교실/2012/열반 . . . . 1 match
* C프로그래밍 수업에서 배운 내용을 적어주세요. 궁금한 점은 질문해주세요.
- 새싹교실/2012/열반/120319 . . . . 1 match
* [정진경] : 리눅스 터미널 환경에서 진행했는데, 컴파일 하는 과정이나 편집하는 과정의 설명은 생략했습니다. 검은 화면에 흰 문자열이 큰 거부감을 일으키는 것 같지는 않습니다. 아무래도 준비가 빈약하다보니 뭘 가르쳐야 할지 모르겠습니다. 일단 상세한 문법이나 C 표준에 대한 설명은 뒤로 미루는 것이 좋을 것 같고, 일정 수준 이상의 프로그래밍을 스스로 할 수 있을 정도로 실력을 끌어올리는 것에 집중해보려 합니다. 또한 중간중간에 코드를 작성한 것에 대한 출력을 물어보면서 알고 있는지 확인하는 과정이 중요한 것 같습니다.
- 새싹교실/2013/라이히스아우토반/2회차 . . . . 1 match
위 5가지를 배웠다. 좀 더 복잡한 프로그래밍을 하고싶다.
- 새싹교실/2013/록구록구/2회차 . . . . 1 match
앞으로 더욱더 열심히 공부해서 기초 프로그래밍시간에 똑띠처럼 빨리 실습 끝내고 싶다 ㅎㅎㅎㅎ
- 새싹교실/2013/양반/5회차 . . . . 1 match
디버깅 자세히 알게됨. 기초프로그래밍 시간 예습 공부를 함.
- 새싹교실/2013/이게컴공과에게 참좋은데 말로설명할 길이 없네반 . . . . 1 match
> "글쎄.. 목표는 딱히.. 다만 가르치는 입장에서는 이해잘하게 가르치고 싶고, (프로그래밍에) 재미를 붙이기만 했으면 하는 바람."
- 새싹교실/2013/책상운반 . . . . 1 match
1. 기초프로그래밍 과제를 하시는 데에 막히는 일이 없도록 할 것입니다.
- 새싹배움터05 . . . . 1 match
지금 따로 메뉴얼을 제작하고 있습니다. 세미나 없이 메뉴얼만 있으면 쉽게 사용가능할 정도로 만들 예정이고요, 이번 [위키설명회2005]에서 다룬 내용도 담을 예정입니다. 그리고 첫 세미나(C프로그래밍)는 제가 할 의향이 있고 준비 중입니다. -[강희경]
- 세미나/2004 . . . . 1 match
* 모바일 프로그래밍 관련해서 세미나 좀 해주세요 --[구자겸]
- 세벌식 . . . . 1 match
* [임인택]의 경우 어떤 치과에서 키보드 키캡에 붙이는 스티커를 나눠주는 페이지를 보면서 처음 세벌식을 접하게 되었다. 그때가 2005 년 2월경이었는데 처음에는 무척 힘들었지만 6개월정도 지나니 익숙해졌다. 세벌로 전환하기 이전인지 이후인지 기억은 잘 나지 않는데, 스펀지라는 프로그램에서 공병우 박사님을 추모하면서 세벌식과 관련된 지식을 알아본 적이 있었다. 카이스트인지 포항공대인지에 다니는 한 학생이 실험을 했는데, 두벌, 세벌 모두 엄청난 속도로 타이핑하는 장면을 봤다. 충격이었다. 어떻게 각각을 저렇게 빨리 칠 수 있는지. 나도 예전에 타이핑이라면 한가닥 했었는데 10년이상 쓰던 두벌을 버리고 세벌로 전환한 이후 두벌속도가 급격하게 줄었다. 처음 세벌로 바꿨을때 세벌보다 두벌을 약 20배 정도 빨리 칠수 있었는데, 지금은 오히려 두벌이 더 느리다. 이걸 가지고 생각해 볼 수 있는 문제는 사고의 전환이다. 스펀지에 나왔던 학생은 두벌로 타자할때 두벌식으로 사고하고, 세벌로 타자할때 세벌식으로 사고했을 것이다. 조금 생각해보면 이는 우리가 공부하는데 빗대어 설명할 수 있을 것이다. 가령 함수형 언어를 쓸때는 함수형 언어의 패러다임으로만 생각하고, 객체지향 언어를 쓸때는 객체지향 패러다임만을 생각한다던지 하는 것이다. 지금 생각하건데, 그 학생은 두벌/세벌 타자에 있어서 구루인것 같다. 나도 두벌/세벌을 모두 쓰지만 두벌식을 쓸때 세벌식으로 생각하고 키를 누른다던지, 세벌식을 쓸때 두벌식으로 생각하고 키를 누르는 경우가 많다. 프로그래밍을 할때도 마찬지. 내가 배제하려고 하는것을 완전히 배제하지 못한다.
- 송지원 . . . . 1 match
* 프로그래밍 - 개인 코드
- 숫자를한글로바꾸기/허아영 . . . . 1 match
- 리팩토링은 프로그램을 완성한 후에 하는것이 아니라 프로그래밍을 하는 도중에 하는게 더 좋다고 생각합니다. - 임인택
- 시간맞추기 . . . . 1 match
(단, 프로그래밍 하는 언어에서 지원하는 범위에서 처리조건을 만족하시오.)
- 양아석 . . . . 1 match
[게임프로그래밍]
- 위키설명회2005/PPT준비 . . . . 1 match
문서의 작성 과정이 마치 프로그래밍 같다.
- 윤종하 . . . . 1 match
2. 프로그래밍 경진대회 기획 중
- 이동현 . . . . 1 match
그림판을 짜면서 느낀것인데, 객체지향 프로그래밍은 정말 대단하다
- 인수/Smalltalk . . . . 1 match
* 짜놓고 생각 : 이건 스몰토크프로그래밍이 아니다. C++/Java의 냄새가 너무 많이 나는것 같다. 부분부분을 좀더 간단하게 할 수 있을것 같기도 하다. 책을 더 봐야 할듯 싶다. 인스턴스 생성할때도 인자를 넘겨 받을 수 있을 텐데 잘 안된다.(지금 보니까 그렇게 하지 말라 한다. 대충 찾아보니 팩토리 메소드를 많이 쓰는것 같다. 또 클래스 메소드 만드는법 알아낼라고 줄기차게 삽질을 했다.--;) do라는 좋은게 있었군.
- 임인책/북마크 . . . . 1 match
=== 프로그래밍 ===
- 임인택/코드 . . . . 1 match
= (윈도우즈 프로그래밍) 한글/영문 토글하기 =
- 자리수알아내기/나휘동 . . . . 1 match
절차형 프로그래밍을 많이 하다보면 1번으로 생각하기 쉽습니다. 반복적으로 작업하는 흐름이 머리 속에 떠오르지 않나요?ㅋㅋ
- 장용운 . . . . 1 match
*API랑 PHP 배우면 좋음? 프로그래밍하는데 둘러보니까 이거 두개 코드 무지 짧은데 뭔가 대단하던데 ;;;; - [고한종]
- 장용운/곱셈왕 . . . . 1 match
2011년 4월 25일 오후 5시부터 실시된 C 프로그래밍 시험에서 발생한 사건.
- 전시회 . . . . 1 match
=== 중앙대 컴퓨터공학과 프로그래밍 전시설명회 ===
- 정모 . . . . 1 match
||||2023.03.21||[김도엽]||||||||프로그래밍 문제로 C++ 입문해보기||
- 정모/2002.10.30 . . . . 1 match
* 고객을 모집합니다. 고객은 저희와 함께 개발하며, 프로그래밍적 지식이 없어도 상관 없습니다.
- 정모/2002.8.22 . . . . 1 match
== 프로그래밍잔치, 위키 이름짓기 ==
- 정모/2004.1.6 . . . . 1 match
* 1월 10일 토요일 4시 7피실 - 페어 프로그래밍
- 정모/2004.5.7 . . . . 1 match
- 제로페이지에 대한 장벽이 느껴진다 (프로그래밍 수준이나 데블스 캠프 미 참가등의 이유)
- 정모/2005.5.23 . . . . 1 match
* 내용 : 개념과 언어를 2-3가지 정도씩 알아봄 (Ex) 구조적 프로그래밍, 익스트림, 객체지향)
- 정모/2011.3.21 . . . . 1 match
* 프로그래밍 경진대회 대비 스터디
- 정모/2011.3.7 . . . . 1 match
* 활동보고에서 책읽기 모임 보고를 하면서 간만에 정말 정식활동 시작!! 한번쯤 해보고 싶었던 루비 프로그래밍 실습도 하면서 알찬 정모가 되지 않았나 느꼈습니다. 아쉬웠던 점은 시간 안배인데, 정모의 시간에 대한 제한은 없으나 어느 정도 deadline은 잡아야 하지 않나 하는 생각이 들었습니다. (예를 들면 늦어도 9시까지는 끝낸다 라던가..) 책읽기모임 활동보고의 소요시간이 약간 길었는데, 각자 읽은 책에 대해서 정모에서 나누는 것이 가장 효과적이긴 하나 모임 때 나눴던 얘기의 단순 요약판이니 이제부터는 위키를 참조하는 것도 좋지 않을까 싶네요. 그리고 루비 코드 레이스는 참여자를 봐서 다음주 정모 때 하는게 어떨까요 - [송지원]
- 정모/2011.4.11 . . . . 1 match
* 11학번이 참석하는 정모를 처음으로 구경했습니다. 근데 새내기들을 보는거 같지가 않았어요. 왜 이렇게 친근한 놈들이 많은지 모르겠어요. 전 진짜 11학번들과 친한 좋은 선배인가 봐요. 앞으로 더 잘해야겠어요. 그리고 학생회를 하느라 정모를 못 나간 동안 프로젝트와 스터디가 많이 진행됐네요. 저도 참여하고 싶지만 프로그래밍 경진대회와 전시회 잘 준비하겠습니다. ACM 스터디 하시는 분들을 위해 김대원 교수님과 열심히 얘기하고 있고 저 나름대로도 생각 많이 하고 잇으니까 zp 활동 열심히 못한다고 기뻐하지 말아주세요. 그리고 다음주 소풍 갈 땐 맥주사가죠 - [윤종하]
- 정모/2011.5.16 . . . . 1 match
* [정진경]의 프로그래밍 경진대회 소개
- 정모/2012.5.7 . . . . 1 match
* rur-ple을 이용한 짝 프로그래밍
- 정모/2013.7.29 . . . . 1 match
* 엠티에 대해 조금만 더 설명 덧붙여주세요~ + 전국 대학생 프로그래밍 대회 동아리 연합에 관한 이야기를 언젠가 할 기회가 있어야할텐데..음 -[김태진]
- 정모/2013.9.4 . . . . 1 match
* 대학생 프로그래밍 동아리에서 하는 제 2회 문제중 못푼문제 풀고 슬라이딩 윈도우 알고리즘을 공부했습니다.
- 제12회 한국자바개발자 컨퍼런스 후기 . . . . 1 match
마지막으로 Track 4에서 한 반복적인 작업이 싫은 안드로이드 개발자에게라는 것을 들었는데, 안드로이드 프로그래밍이라는 책의 저자인 사람이 안드로이드 개발에 관한 팁이라고 생각하면 될 만한 이야기를 빠르게 진행하였다. UI 매핑이라던지 파라미터 처리라던지 이러한 부분을 RoboGuice나 AndroidAnnotations를 이용해 해결할 수 있는 것을 설명과 동영상으로 잘 설명했다. 준비를 엄청나게 한 모습이 보였다. 이 부분에 대해서는 이 분 블로그인 [http://blog.softwaregeeks.org/ 클릭!] <-여기서 확인해 보시길...
- 제로Wiki . . . . 1 match
* 프로그래밍 카페 : 규모가 커질 경우 너무 다양한 주제 대한 글들이 올라 올 수 있다. 이때 자신이 관심 있는 언어를 분류어로 설정하여 그 언어에 대한 글들만 볼 수 있다.
- 조금더빠른형변환사용 . . . . 1 match
[프로그래밍분류]
- 조재화 . . . . 1 match
* 앞으로 프로그래밍을 열심히 하쨩~!
- 조현태/놀이/시간표만들기 . . . . 1 match
* 소켓 프로그래밍을 이용해서, 인터넷으로 시간표 전송 가능. ;;ㅁ;;
- 졸업논문/본론 . . . . 1 match
Django의 설계 철학은 한 마디로 DRY(Don't Repeat Yourself)이다. 확연히 구분할 수있는 데이터는 분리하고, 그렇지 않은 경우 중복을 줄이고 일반화한다. 데이터 뿐 아니라 개발에 있어서도 웹 프로그래밍 전반부와 후반부를 두 번 작업하지 않는다. 즉 웹 애플리케이션 개발자는 SQL을 사용하는 방식이 도메인 언어에 제공하는 프레임워크에 숨어 보이지 않기 때문에 프로그램을 동적으로 쉽게 바뀔 수록 빠르게 개발할 수 있다. 또한 후반부 데이터 모델이 바뀌면 프레임워크에서 전반부에 사용자에게 보이는 부분을 자동으로 바꾸어준다. 이러한 설계 철학을 바탕으로 기민하게 웹 애플리케이션을 개발할 수 있다.
- 지금그때2003/선전문 . . . . 1 match
ex) 어떻게 프로그래밍 언어를 배워 나갈것인가. 무엇이 우선인가?
- 지금그때2005/자료집 . . . . 1 match
프로그래밍 언어가 컴퓨터공학을 공부하는데 얼마나 중요한가? 다른 중요한것은 무엇인가?
- 지금그때2006/질문레스토랑 . . . . 1 match
* 이선호 - C프로그래밍, OP등등.. 만드는것이 재미있어서..
- 축적과변화 . . . . 1 match
see also ["프로그래밍파티"]
- 컴공과프로그래밍경진대회 . . . . 1 match
중앙대학교 컴퓨터공학과 내의 프로그래밍 경진 대회.
- 컴퓨터를전공하면서꼭알아야할세가지 . . . . 1 match
1. 모국어로서의 프로그래밍 언어 최소 하나
- 코드레이스출동/후기 . . . . 1 match
* 코드에 집중하느라 해설에 집중하지 못한 점과 요구사항 구현 실패로 중반 이후 긴장감있게 진행하지 못한 점이 아쉽다. 제대로 되지는 않았지만 팀원들과 의사소통하며 프로그래밍 하는 것은 즐거웠다.
- 큐와 스택/문원명 . . . . 1 match
두 링크 모두 어느 정도 도움이 된다고 생각합니다. 근처의 선배들에게 물어보세요. 서로 고민하면서, 좋은 페이지 구조를 만들어 보세요. 이 자체가 프로그래밍의 과정과 별다를 것이 없습니다.
- 큰수찾아저장하기/김태훈zyint . . . . 1 match
문제는 금방풀고; 이 프로그래밍 함수 어떻게 나눌지 생각한게 한시간 걸렸을듯...
- 큰수찾아저장하기/허아영 . . . . 1 match
하고 생각해 봤다. 그래서 생각하면서 프로그래밍 한 것, 또 자초해서 해 버린 소트 때문에 시간이 많이 걸린 것 같다.
- 타도코코아CppStudy . . . . 1 match
* 리팩토링과 의도에 의한 프로그래밍 - 이건 계속 지켜나가야함
- 토이/삼각형만들기/김남훈 . . . . 1 match
세번째가 결국 문제인데, 무슨 수열 생각할 거 없이 그저 직관적으로 recursive로 필요한 버퍼의 양을 구현. 이건 별표 찍는 시작 위치 정할때도 쓸수 있더구만. 그저 손 가는대로 프로그래밍 했을 뿐.
- 파스칼삼각형/김태훈zyint . . . . 1 match
취중 프로그래밍 -_-
- 페이지제목띄어쓰기토론 . . . . 1 match
거듭 말씀드리지만, 기능상으로는 제한이 없습니다. 그리고 띄어쓰기 자체가 붙여쓰기보다 나쁘다는 어처구니 없는 일반진술도 하지 않았습니다. 어떤 구체적인 컨텍스트 속에서 이야기를 해야죠. 위키네임이 주는 편리한 기능이란 단어를 붙여쓰면 자동으로 링크가 되는 것을 말합니다. 사람들이 FrontPage라고 하면 될 것을 {{{~cpp ["front page"]}}}나 {{{~cpp ["Front Page"]}}}, 혹은 {{{~cpp ["Frontpage"]}}} 등으로 링크를 걸었다는 것이죠. 또, 사실 사용자가 띄어쓰기를 하건 말건, 혹은 대소문자를 어떻게 섞어쓰건 일종의 분리층(separation layer)을 둬서 모두 동일한 페이지이름으로 매핑을 하는 방법이 있습니다. 하지만 이렇게 되면 새로운 규칙 집합(제가 말하는 규칙이란 사람들간의 규칙을 일컫습니다)이 필요할 것입니다. 국문 경우는 몰라도 영문 경우는 띄어쓰기를 하냐 안하냐가 아주 차이가 큽니다. 노스모크는 초기부터 영어 페이지이름을 많이 사용했고 현재도 그러하기 때문에 이런 문제는 꽤 중요했죠. 또 (영문 경우) 기존의 위키표준을 지킨다는 생각도 있었고요. 하지만 여기는 아직 출발단계이고 하니까 다른 실험을 해볼 수 있겠죠. 아, 그리고 생각이 난건데, 페이지이름을 띄어쓰기를 하게 되면, 사람들이 이걸 위키에서 말하는 어떤 고유한 "단어"로서의 페이지이름(위키의 페이지이름은 "단어"입니다. 그게 하나의 커뮤니케이션 단위이기 때문이죠.)이 아니고 게시판에서의 게시물 제목 수준으로 생각하게 되는 경향(affordance)이 있었습니다. 사실 위키에서의 페이지이름은 프로그래밍의 변수이름처럼 상당히 중요한 역할을 하는데, 붙여쓰기를 하게 되면 사람들에게 기존 의식틀에서 벗어나서 페이지이름이 고유한 것이고, 기존의 게시물 제목과는 다르다는 인식을 심어주는 데에 많은 도움이 되었습니다. 다른 원인도 있겠지만, 주변에서 페이지이름에 띄어쓰기 붙여쓰기 등 별 제한 없이 자유로운 곳일수록 페이지이름을 페이지이름으로 활용하지 못하는 경우를 많이 봤습니다. 만약 띄어쓰기를 허용한다면 오히려 더욱 엄격한 규칙과 이의 전파가 필요할지도 모르겠습니다.
- 포커솔리테어평가 . . . . 1 match
[컴공과프로그래밍경진대회] [4rdPCinCAUCSE]
- 프로그래밍/ACM . . . . 1 match
[프로그래밍]
- 프로그래밍/DigitGenerator . . . . 1 match
[프로그래밍]
- 프로그래밍/Pinary . . . . 1 match
[프로그래밍]
- 프로그래밍/Score . . . . 1 match
[프로그래밍]
- 프로그래밍/장보기 . . . . 1 match
[프로그래밍]
- 프로그래밍가르치기 . . . . 1 match
후배들에게 프로그래밍을 가르치기
- 프로그래밍실습(2) . . . . 1 match
[프로그래밍실습(2)/20051025]
- 프로그래밍잔치/ErrorMessage . . . . 1 match
["프로그래밍잔치"]
- 허아영/C코딩연습 . . . . 1 match
아직도 프로그래밍하는데 세미콜론을 빠트린다던지, scanf 함수를 쓸 때 변수앞에 &을 붙지지 않을 때가 다반사다.
- 헝가리안표기법 . . . . 1 match
그러나 실제로 현장에서 일하다 보면 헝가리안 표기법을 제대로 지키는 개발자는 그리 많지 않다. 어느정도 개발경험을 가지고 있는 프로그래머는 물론 심지어 시중의 프로그래밍 서적에서 조차 저자마다 변수명을 개인에 따라 가지각색으로 짓고 있어서 처음 프로그램을 배우는 입문자들들이 변수 명명에 대한 기준을 제대로 잡지 못하고 있는 실정이다.
- 황재선 . . . . 1 match
* [PPProject] : 생각하는 프로그래밍
Found 626 matching pages out of 7555 total pages (5000 pages are searched)
You can also click here to search title.