본문 바로가기

Software in LIfe

(324)
2010 아시아 대예측(2010年のアジア : 次世代の成長シナリオ) 명암이 갈린 '육지 아세안', '바다 아세안' 신문보도등을 살펴보면 알 수 있듯이 중국의 성장으로 인하여 아세안의 매력은 예전만큼 화제가 되고 있지는 않다. 그러나 통화위기 이후 아세안은 일본을 비롯한 국제사회이 지원과 각국의 노력 등으로 인하여 이미 위기에 따른 영향을 극복해 가고 있다. 아세안 경제는 견실한 성장궤도로 돌아와 생산력과 소비시장의 착실히 향상되고 있다. 그렇다고 해서 아세안 10개국 모두가 순조롭게 성장하고 있는 것은 아니다. 가맹국 10개국 중에서도 그 우열이 분명해지고 있는 것이다. 태국, 베트남 등 인도차이나 반도에 위치한 나라(육지 아세안)는 생산수출 거점으로서 해외로부터 직접투자가 유입되고 있다. 베트남 북부에 거점을 둔 어느 일본 - 베트남 합작물류회사 책임자 "말레이시아, ..
Head First EJB 갑자기 EJB로 구축된 시스템에 대한 진단 요청이 들어 왔다. 아 EJB에 대한 손을 놓은지 벌써 2년여가 지나갔기에 가물가물한 상태였다. 특히 Entity Bean(CMP)에 대한 진단 및 지원이 필수적이었다. 사실 Entity Bean 개발은 BMP부터 시작하였기에 나름 어느정도 알고는 있지만 지금은 거의 머리속에 남아있지 않은 상태이다. 간만에 EJB를 다시 이해하기 위하여 여러 책을 보던 중 Head First EJB가 생각났다. 너무 현란한 설명으로 인하여 약간의 거부감을 가지고 있던 책이었는데 오히려 이 현란한 설명들이 나처럼 어느정도 이해와 경험을 가지고 있는 독자에게는 잊고 있던 부분을 빨리 빨리 상기시켜주는데 매우 적합하였다. 수없이 많은 EJB 책들이 존재하지만 이번 계기를 통하여 강력..
스택(Stack) 최근 간간히 Programming Challenges를 보고 있습니다. 너무도 어려운 문제들이 많지만 나름 재미를 붙여가고 있습니다. 책의 내용 중 일부를 발췌하였습니다. 참고하세요. 스택(Stack)과 큐(Queue)는 각 항목을 내용과는 무관하게 삽입된 순서에 따라 꺼내도록 설계된 컨테이너이다. 스택은 후입선출(LIFO, last-in first-out) 규칙을 따르는 구조로서 마지막에 들어간 항목이 가장 먼저 나오는 자료구조이다. 스택의 연산에는 다음과 같은 것이 있다. Push(x, s) - x라는 항목을 s라는 스택 맨 위에 삽입Pop(s) - 스택 s의 맨 위에 있는 항목을 리턴하고 삭제Initialize(s) - 비어있는 스택을 생성Full(s), Empty(s) - 스택 s에 대하여 Pus..
누군가 밝혀주는 한 자루의 촛불 살다보면 한 번쯤은 칠흑 같은 어둠과 마주한다. 세상과 맞설 용기가 사라지고 괴로움과 절망 속으로 점점 빠져든다. 사람이 빛이 되고 희망이 될 때가 바로 그 순간이다. 그리고 그 사람을 구원해 줄 유일한 밧줄은 사랑이다. 당신의 주위에 그런 사람이 있다면 주저 말고 사랑을 표현하라. - 한창욱, '설득의 달인'에서 -
C 언어의 문자열 리터럴(String Literal) 평소 C나 C++는 자주 사용하지 않지만 간혹 사용할 경우가 많아서 최근 개념을 다잡고자 "Pointers on C"라는 책을 읽고 있습니다. Java의 경우 String이 지원되지만 C에서는 문자열 타입은 존재하지 않는다. 하지만 문자열 리터럴(String Literal)은 존재한다. 리터럴(Literal)이란 소스코드를 컴파일 할 경우 정의되어 있는 내용을 그대로 정확하게 해석할 수 있어야 하는 값이다. 만약 소스코드에 int x = 12; 라고 정의하였다면 "x"는 변수이며 "12"가 리터럴이다. 중요한 것은 리터럴은 명칭이 아니고 값 그 자체를 의미한다. char *message = "Hello World"; 여기서 "Hello World"가 리터럴이 된다. 문자열이나 숫자와 같은 값들이 모두 리..
C / C++ 컴파일 과정(Compilation Process) 평소 C나 C++는 자주 사용하지 않지만 간혹 사용할 경우가 많아서 최근 개념을 다잡고자 "Pointers on C"라는 책을 읽고 있습니다. 컴파일 과정은 학부때 거의 다 배워서 잘 알고 있는 내용이긴 하지만 책을 보면서 다시한번 정리하고 싶었다. 일반적인 C나 C++의 컴파일 과정을 보여줍니다. 상기 그림은 Visual C++와 같이 Windows GUI를 포함하여야 하는 경우에 컴파일 과정입니다. 특이하게도 Resource Compiler가 같이 있는데, Resource Compiler는 아이콘이나 다이얼로그 박스 및 다른 그래픽 객체 등을 Compiled Resource Files로 Linker에 링킹시킵니다. 이를 통하여 각종 Event-Driven Model에 필요한 GUI를 사용자에게 제공할..
ANSI C 호환 컴파일러의 환경에 대하여 평소 C나 C++는 자주 사용하지 않지만 간혹 사용할 경우가 많아서 최근 개념을 다잡고자 "Pointers on C"라는 책을 읽고 있습니다. 책 내용중 기본 개념에 해당하는 ANSI C 호환 컴파일러의 환경에 대한 좋은 글이 있어서 올립니다. 모든 ANSI C 호환 컴파일러는 두개의 서로 다른 환경(Environment)이 존재한다. 1. 번역 환경 (Translation Environment): 소스코드를 실행 가능한 기계어로 번역하는 환경 2. 실행 환경 (Execution Environment): 코드를 실제로 실행하는 환경 이 두 환경은 모두 하나의 동일한 컴퓨터에 존재할 필요가 없다. 특히 다른 CPU나 운영체제를 사용하는 경우 번역환경과 실행 환경은 서로 상이할 수 있다. 예를 들어 Wind..
C에서 사용되는 형식 지정자 C 프로그래밍은 자주 하지 않기 때문에 간혹 형식 지정자가 생각나지 않을 경우가 많다. 간단하게 "Pointers on C"책에 있는 내용을 토대로 형식 지정자를 정리하였다. 1. printf에서 사용하는 형식 지정자 형식 의미 %d 10 진수 출력 %o 8 진수 출력 %x 16 진수 출력 %g 부동소수점 수 출력 %c 문자 출력 %s 문자열 출력 \n 개행 문자 출력 2. scanf에서 사용되는 형식 지정자 형식 의미 변수 형식 %d 정수값을 읽는다. int %ld long 타입 정수를 읽는다. long %f 부동소수점 수를 읽는다. float %lf double 타입 실수값을 읽는다. double %c 문자를 읽는다. char %s 입력으로부터 문자열을 읽는다. char arrary