Software in LIfe (324) 썸네일형 리스트형 우리는 믿는 것을 보는 것이다. 생각을 먼저 지배하는 것은 우리들이지만, 그 다음에는 생각이 우리를 지배한다. 우리는 자신이 보는 것을 믿는 것이 아니라 믿는 것을 보는 것이다. 어떤 일을 하든 믿음만큼 성공한다. 생각이 우리의 태도와 행동을 결정하고 그것들은 다시 성공과 실패를 결정한다. - 브라이언 트레이시 CAS와 SAML에 대하여 최근 Federated Identity에 대한 관심이 많습니다. 우리말로는 "연합 사용자 계정관리" 쯤으로 해석될 수 있는 Federated Identity는 최근 다양한 인터넷 상에 존재하는 리소스들을 연합하여 사용할 경우 최적화된 보안모델을 제공하는 솔루션을 총칭합니다. 흔히 CAS(Central Authentication Service)는 많이 알고 계실 것이라고 생각됩니다. 많은 인터넷 사이트들이 SSO(Single Sign-On)을 구축할 때 CAS를 많이 이용하고 있습니다. 하지만 CAS는 최적화된 SSO라고 할 수 없습니다. 왜냐하면 CAS는 크로스 도메인(Cross Domain)을 지원하지 않기 때문입니다. 이는 CAS에서 생성한 토큰(Token)이 일반적이로 로그인하려는 사용자의 브라우저.. 소프트웨어 아키텍처 연구 분야 및 IEEE 1471 국제표준 최근 소프트웨어 아키텍처 정의에 대한 글을 찾다가 좋은 문서를 찾아서 올립니다. 짧게 요약하면 다음과 같습니다. 소프트웨어 아키텍처의 정의 소프트웨어 아키텍처는 한마디로 개발하려고 하는 소프트웨어의 큰 밑그림을 그리는 것으로 소프트웨어 개발에 직간접적으로 영향을 미치면서 복잡도를 높이는 다양한 요소들을 체계적으로 다루기 위한 청사진이라 할 수 있다. 소프트웨어 아키텍처의 학술적인 정의는 소프트웨어를 구성하는 컴포넌트들, 이들간의 상호작용 및 관계, 각 컴포넌트들의 특성 및 이들이 구성하는 소프트웨어의 설계 및 진화를 위한 각종 원칙들의 집합이라고 할 수 있다. 실제적으로 아키텍처는 대상이 되는 시스템에 관련된 여러 이해관계자(stakeholder)의 관심사항과 이에 따른 관점을 반영한 다양한 모델들의 집.. Google이 발견한 10가지 진실 구글(Google)의 경영철학을 살펴볼 수 있는 자료가 있어서 공유차원에서 정리하여 올립니다. http://www.google.co.kr/corporate/tenthings.html 에 가보시면 구글의 기업정보라는 제목의 글이 나옵니다. 첫번째로 경영철학이 있는데 "최고에 안주하지 않는다" 입니다. "최고에 안주하지 않는다"는 결국 전 세계 모든 사용자에 더욱 향상된 서비스를 제공하는 것이라고 요약할 수 있습니다. 더욱 신속하고 정확하며 편리한 검색 서비스를 제공하기 위한 구글의 노력이 절대 멈추지 않을 것이라는 것을 의미하기도 합니다. 사실 저의 사명(Vision)도 "전 세계 사람들의 삶의 질을 높일 수 있는 소프트웨어를 개발하여 함께 나누는 것"입니다. 이러한 면에서 볼 때 구글의 경영철학과 저의 .. 사회적 컴퓨팅의 여러 형태 최근 Forrester Research에서 나온 사회적 컴퓨팅의 여러 형태(The Many Forms of Social Computing)라는 다이어그램을 보았습니다. 이 그림은 우연히 인터넷을 검색하다가 "The Many Forms of Social Computing(http://jeremiahthewebprophet.blogspot.com/2006/06/many-forms-of-social-computing-see.html)"란 글을 보면서 같이 보게되었습니다. 여러 모로 잘 정리된 다이어그램이긴 합니다만 정확하게 각 분야의 사회적 컴퓨팅의 주류를 설명하고 있지는 못한듯 합니다. 다만 여러모로 사회적 컴퓨팅(Social Computing)을 분류하거나 참고하고자 한다면 유익할듯합니다. 다이어그램의 분.. 목표 없는 사람은 목표를 가진 사람을 위해 일한다. 목표 없는 사람은 목표를 가진 사람을 위해 일한다. 성공적인 모든 사람들은 가슴 속에 큰 꿈을 품은 사람들이었다. 목표를 설정하지 않는 사람들은 목표를 뚜렷하게 설정한 사람들을 위해 일하도록 운명이 결정된다. - 브라이언 트레이시 C#의 Value Type과 Reference Type 여러 다른 언어들과 마찬가지로 C#에서도 효과적인 메모리 관리를 위하여 고유 데이터 타입을 정의해 두고 있습니다. 예를 들어 정수, 문자열, 부동 소수점, Boolean 등에 대한 타입들이 바로 그런 예입니다. 여기서 특이한 점은 C#에서는 데이터 타입을 "값 기반(Value based)"과 "참조 기반(Reference based)"로 구분해두고 있습니다. 중요한 점은 Value based Type의 경우 스택(Stack)에 값들을 할당하며, Reference Based Type의 경우 힙(Heap)에 값들을 할당한다는 점입니다. 만약 다음과 같은 코드가 존재한다면 Value Type일까요? 아니면 Reference Type일까요? // Assign int a = 2; int b = 3; // Swap.. Devide and conquer와 Separation of Concerns Devide and conquer와 Separation of Concerns는 결국 같은 의미인데 자세한 의미는 다음과 같습니다. 고전적인 프로그래밍 기법중에 해결해야 할 큰 문제가 있으면 최대한 논리적으로 분석해서 자꾸만 작은 문제들로 쪼개서 작은 문제들을 정복하다 보면 결국 큰 문제도 해결된다는 기법입니다. 이를 한국어로는 분할정복기법이라고 많이 이야기하는데 최근 여러 영문 원서에서 Separation of Concerns이란 말로 Devide and conquer와 같은 개념을 설명하여 같은 의미라는 것을 알리고자 적습니다. 이전 1 ··· 28 29 30 31 32 33 34 ··· 41 다음