본문 바로가기

컴퓨터/자질구레 팁39

연구용 코딩시 몇 가지 작성 요령 대략 5년이 넘는 연구생활 동안 이런저런 작업들을 프로그래밍으로 해결하면서 느꼈던 점을 간략히 말해 보고자 한다. 특히, 몇 가지 요령을 중점으로 얘기해 보고자 한다. 작업 환경 우선, 이야기에 앞서 내가 주로 작업한 환경에 대해 살펴 본다. 아무래도 작업자의 작업 방식은 결국 작업 환경에 의존할 수밖에 없기 때문에, 내가 이야기 할 몇 가지 점들은 특정 운영체제에서만 가능할 수도 있기 때문이다. 나는 연구용 프로그래밍은 거의 대부분 linux에서 gcc를 이용하여 수행한다. 작업을 위한 linux server를 별도로 돌리면서 어디서나 ssh 로 접속하여 작업을 할 수 있게 해 놓았고, 교내에서는 samba로 연결을 해 놓았다. ftp 는 아무래도 불편해서 돌리지 않고 있다. 또한, text edito.. 2011. 7. 5.
특정 폴더나 프로그램에 대한 바로 가기를 만드는 법 자주 가는 폴더나 자주 사용하는 프로그램에 대한 바로 가기를 만들어 놓으면 편리하다. 방법을 살펴 본다. 특정 폴더 혹은 프로그램에 대한 바로 가기를 만들기 위해서는, 폴더의 경우, 탐색기에서 그 폴더를 선택하고 오른쪽 클릭을 하여 '보내기' -> '바탕 화면에 바로 가기 만들기'를 선택하면 된다. 다음과 같다. 그러면 그 폴더에 대한 바로 가기가 바탕 화면에 나타난다. 만약 이렇게 생성된 바로 가기를 작업 표시줄의 빠른 실행에 옮겨 놓고자 한다면 그냥 끌어다 놓으면 된다. 다음과 같다. 프로그램에 대한 바로 가기의 경우, 시작 메뉴에서 바로 가기를 지정할 프로그램 항목에서 오른쪽 클릭을 하고 마찬가지로 '보내기' -> '바탕 화면에 바로 가기 만들기'를 선택하면 된다. 다음과 같다. 폴더의 경우 바탕 .. 2011. 6. 4.
두 항목의 순서를 무시한 중복 확인하기 자료형이 두 항목으로 되어 있을 때, 순서를 무시하고 중복을 확인하는 방법을 알아 보자. 좀 더 쉽게 설명하면, 자료가 (A,B) 처럼 두 개의 항목이 쌍으로 있을 때, (A,B)와 (B,A)를 같은 것으로 간주하여 중복된 것을 제거하는 방법. 만약 코딩을 하려 한다면 그냥 하면 되고, 엑셀을 이용해서 가끔 이와 같은 작업을 해야 할 때가 있는데 이 때는 약간의 잔재주가 필요하다. 방법은 간단하다. A, B, C, ... 각 항목에 중복되지 않는 소수(prime number)를 부여한다. 그 이후, (A,B)의 값을 A와 B에 부여된 소수의 곱으로 할당해 준다. 이렇게 하면 곱한 수가 같으면 같은 쌍이거나 순서가 뒤바뀐 쌍이다. 이 두 경우가 아닌데 곱한 값이 같을 수는 없다. 왜냐 하면, 두 소수 p,.. 2011. 5. 13.
몇 가지 유용한 함수들 만들어 사용하기 프로그래밍을 하다 보면 몇 가지 자주 사용하는 기능들이 있게 되는데, 이런 것은 알면 자주 사용하게 되지만 모르는 경우 지리한 반복 작성을 하게 되곤 한다. 또한, 다소 추상화(일반화)를 해 놓으면 자주 사용할 수 있지만 그런 생각 없이 작성하는 코드에 의존하는 방식으로 (context-specific) 구성하게 되면 일반화 하여 다음에 편하게 사용할 수 있다는 것을 모르는 경우도 있다. 이처럼 다소 일반화 시켜서 사용할 수도 있는 몇 가지 코드의 예를 보자. 우선, '이렇게 일반화 할 수 있었군', 하는 것을 아는 방법 중의 하나는 다른 언어나 다른 사람이 작성해 놓은 코드를 보는 것이다. 특히 python의 numpy 나 scipy, dephi, matlab 처럼 온갖 자질구레한 것까지 편리하게 만들.. 2011. 5. 6.