TAF – Tree and Flow #1 : Flow part

일단 아주 원론적인 프로그래밍으로 돌아가보겠습니다.

상태

pnp트랜지스터라는 걸 만들어내는데 성공한 인류는 곧장 플립플롭을 생각해냅니다. 바로 근대적인 컴터의 탄생의 순간이죠. 이러한 물리적인 배경을 명쾌하게 정리한 폰노이만 박사의 논문은 순식간에 퍼져 앞다투어 현대적인 컴터를 폰노이만 식으로 개발하게 되었습니다.

이게 비극이라면 비극이고 다행이라면 다행입니다만 이 사건 이후 우리가 인식하는 보편적인 컴터는 폰노이만 머신이 대부분이란 겁니다.

폰노이만 머신의 특징은 여러 가지가 있으니 검색해보시면 엄청 나올 겁니다. 이러한 특징 중에 가장 두드러진 부분은 상태라는 개념을 사용한다는 겁니다. 특정한 상태를 레지스터에 담아두고 ALU에서 상태변환을 한 뒤 다시 적재하는 스타일은 자연스럽게 현재의 상태를 저장하도록 유도합니다. 따라서 컴터를 통제하기 위해 사용하는 프로그래밍에서도 상태를 사용한다는 건 어찌보면 너무 당연합니다.

상태를 변화시키고 상태를 관찰하며 상태에 반응하는 것이 프로그래밍이라고 해도 과언이 아닐 만큼 상태형 언어는 주류입니다. 이에 반해 함수형 언어는 상태에 집중하지 않고 문제를 함수로 분활하여 해결합니다만 이게 일반인들에겐 잘 받아들여지지 않는다는 게 문제겠죠. 사람들은 정말이지 상태라는 개념과 상태를 변화시킨다는 개념을 친숙하게 받아들입니다. 인간의 언어도 그렇게 생긴 면이 많습니다. 오늘 날씨는? 오늘 기분은? 많은 대화가 상태 추척이나 변화에 사용됩니다.

상태에 대해서는 켄트백의 구현패턴에서도 매우 자세하게 설명하고 있으니 나중에 찾아보세요.

Continue reading ‘TAF – Tree and Flow #1 : Flow part’ »

BsideSoft 신입사원채용공고

다이버스터를 좀 사적으로 사용하겠습니다 (그럼 여태는 공적으로 사용했냐……)

 

저는 회사를 때려치고 나온지 만으로 5년 정도 되었습니다. 첫해 알바몬이나 뒤져가며 매출 백 만원도 안되게 시작했는데, 어느 새 6명이나 되는 구멍가게가 되었습니다.

얼마 전엔 사무실도 하나 구입하고(쇼핑이냐..) 식구도 충원을 준비하고 있습니다.

 

문제는 이 한 명의 충원인데 말이죠.

 

Continue reading ‘BsideSoft 신입사원채용공고’ »

Developer Book review 10.06.07

IMG_8059

네이트 앱스토어에서 앱스 만들기

이 책은 음.. 노코맨트

윈도우 API 프로그래밍

어진이 교육용이지만 과연 최근 들어 책 읽기가 점점 게을러지는 추세에서 과연 언제..

jQuery1.3

이것도 역시 다른 직원용 책인데 가르친다기보다는 책 좀 읽힐라고..

 

여름입니다.

다들 책을 더욱 안 읽고 있습니다. 이것들이 정신이 나갔나 싶은..

Developer Book review 10.06.03

IMG_7987

HTML & CSS: The Good Parts

Javascript The Good Parts 와 마찬가지로 핵심적이고도 실무적인 내용을 다루고 있습니다.

오라엘리의 굿파츠 시리즈는 일반적인 쿡북이 초심자용이라면 중급자용 쿡북이라고 불러야할까요( 모든 시리즈가 다 좋은 건 아닙니다만)

 

HTML5 & API입문

트랜디한 책이 나왔습니다. 다행히 역서라 샀습니다만 확실히 이걸 읽고 나면 왜 애플이 HTML5에 집착하는지를 이해할 수 있습니다. HTML5는 간단히 말해 새로운 웹표준으로 밀고 있는 규격입니다만 중요한건 내용이 아닙니다. 이걸 표준으로 하는데 성공하면 기존의 MS+넷스케잎+W3C가 주도하던 웹표준에 구글+애플+오페라+모질라 도 큰 목소리를 낼 수 있다는 점이 바로 포인트입니다. 특히 애플이 웹세계에서 상당히 입지가 좋아지죠.

여하튼 아직은 상당히 쓰레기 같은 기술입니다만, 그도 그럴게 맘대로 추가해가던 브라우저 확장기능을 정리해서 제출한걸 모아둔게 HTML5다보니 완전 누더기같은 느낌입니다.

자리를 잡고 하나의 안정적인 솔루션군으로 정착되기엔 시간이 걸리겠습니다만, 머 이 정도라면 <plugin> 이란 태그가 등장해도 이상하지 않을 정도입니다.

 

여튼 현 시점에서 HTML5란 아이폰의 사파리에서 잘 보이고 그럴듯한 애니메이션이 자바스크립트로 가능한거냐 정도의 의미입니다만.. 그게 또 값어치를 하니 낚여서 책 한권 사고 말았군요 ^^

Javascript 와 Jquery

image

dieBusterJ는 제이쿼리(Jquery)를 이용한 브라우저 상의 어플리케이션 개발을 주 내용으로 하고 있습니다.

제이쿼리는 현 시점에서 거의 업계 표준으로 받아들여지고 있는 자바스크립트 라이브러리로 다음과 같은 기능을 제공합니다.

  • DOM 객체 생성, 수정, 삭제, 접근
  • CSS 객체 생성, 수정, 삭제, 접근
  • 이벤트 처리
  • 효과 및 애니메이션 처리
  • Ajax를 이용한 통신 처리
  • 기타 유틸리티 기능
  • 플러그인을 통한 확장

위의 기능은 물론 자바스크립트로 손수 구현할 수도 있습니다만, 그럴 경우 브라우저 호환성을 비롯하여 다양한 문제를 해결해야 합니다.

제이쿼리를 매번 이러한 노력을 하지 않고 안정된 추상인터페이스에서 실제 어플리케이션 로직에만 개발역량을 집중할 수 있게 도와줍니다.

따라서 dieBusterJ에서는 이러한 제이쿼리를 이용한 다양한 예와 상황에 따른 문제점 및 해결책을 제시하는 것을 주된 내용으로 일종의 제이쿼리 쿡북(CookBook)을 서비스합니다.

 

플래시 개발자에게 하고 싶은 말

 

현대의 파폭, 크롬, 사파리, IE최신 버전의 브라우저는 이미 AVM2를 능가할 정도의 자바스크립트 수행능력을 갖고 있습니다. 특히 IE9의 경우 자바스크립트 처리 및 자바스크립트를 통한 화면요소 렌더링 시 GPU를 사용할 수 있게 할 정도로 자바스크립트 성능에 총력을 기울이고 있다고 해도 과언이 아닙니다.

하지만 현실적으로 자바스크립트는 매우 허접한 언어임에는 틀림없습니다. as2보다 더 허접한 언어의 기능은 자바스크립트가 컴파일 과정없이 인터프리팅만으로 실행된다는 점을 감안하면 충분히 이해할 수 있습니다.

이러한 언어적인 기능의 허접성은 추상적인 라이브러리가 어느 정도 커버할 수 있습니다. 자바스크립트를 날로 쓰기란 참 어려운 일이지만 제이쿼리를 통해 자바스크립트를 사용하게 되면 굉장히 생산성과 사용성이 좋은 새로운 언어로 탈바꿈하게 됩니다.

특히 제이쿼리가 제안하는 문법은 기존의 액션스크립트 개발자에게 매우 친숙하며 이해하기 쉬운 구조를 갖고 있습니다.

따라서 기존의 플래시 개발자 분들이 보다 제이쿼리에 관심을 갖고 자바스크립트를 통해서도 플래시와 같은 어플리케이션을 만들어냈으면 하는 바램이 있습니다.

그 작은 바램에 이 사이트가 보탬이 되었으면 합니다.

dieBusterJ