본문 바로가기
[책 정리] 2장. 두 가지 가치에 대한 이야기 - Clean Architecture -모든 소프트웨어 시스템은 이해관계자에게 서로 다른 두 가지 가치를 제공한다.행위(behavior)와 구조(structure)가 바로 그것이다.소프트웨어 개발자는 두 가치를 모두 반드시 높게 유지해야 하는 책임을 진다. 행위 아키텍처 -소프트웨어는 '부드러움을 지니도록' 만들어졌다.소프트웨어는 기계의 행위를 쉽게 변경할 수 있어야 한다.만약 기계의 행위를 바꾸는 일을 어렵게 만들고자 했다면, 우리는 소프트웨어가 아니라 하드웨어라 불렀을 것이다. -소프트웨어가 가진 본연의 목적을 추구하려면 소프트웨어는 반드시 '부드러워'야 한다.다시 말해 변경하기 쉬워야 한다.이해관계자가 기능에 대한 생각을 바꾸면, 이러한 변경사항을 간단하고 쉽게 적용할 수 있어야 한다.이러한 변경사항을 적용하는 데 드는 어려움은 변경되.. 2020. 4. 6.
[샌프란시스코 ] 뮤제 메카닉 ( Musee Mechanique ) 탐험! [샌프란시스코 ] 뮤제 메카닉 ( Musee Mechanique ) 탐험! 시작 : 17:30끝 : 17:50 피셔맨스 워프 ( Fisherman's Wharf ) 근처에 있는 Musee Mechnique 에 갔다. 이 곳은 역사가 아주 오래된 오락 기계들을 가지고 있다.코인을 넣으면 동작하는 기계들도 있고, 오래된 아케이드 게임류도 있다.저렴하게 재미있게 시간 보내기 정말 좋다. 내부는 이렇게 생겼다. 이 녀석은 25 Cent 를 내면 아래쪽 망원경(?) 처럼 생긴 곳을 통해,밸리 댄서가 쉬는 날 뭐하는지 볼 수 있다. 나는 밸리 댄서가 쉬는 날 뭐하는지 관심이 없어서 그냥 지나쳤지만,아이디어는 참 재미있는 것 같다. 이 녀석은 1906 년 샌프란시스코를 강타한 대지진 당시를 3D 로 볼 수 있단다.재.. 2017. 5. 11.
[Java Concurrency] 단일 연산 변수와 넌블로킹 동기화 [Java Concurrency] 단일 연산 변수와 넌블로킹 동기화 - 병렬 알고리즘과 관련한 최근의 연구 결과를 보면 대부분이 넌블로킹 알고리즘, 즉 여러 스레드가 동작하는 환경에서 데이터의 안정성을 보장하는 방법으로 락을 사용하는 대신 저수준의 하드웨어에서 제공하는 비교 후 교환(compare-and-swap) 등의 명령을 사용하는 알고리즘을 다루고 있다. - 넌블로킹 알고리즘은 운영체제나 JVM 에서 프로세스나 스레드를 스케줄링 하거나 가비지 컬렉션 작업, 그리고 락이나 기타 병렬 자료 구조를 구현하는 부분에서 굉장히 많이 사용하고 있다. - 넌블로킹 알고리즘은 락을 기반으로 하는 방법보다 설계와 구현 모두 훨씬 복잡하며, 대신 확장성과 활동성을 엄청나게 높여준다. - 넌블로킹 알고리즘은 훨씬 세밀.. 2017. 5. 9.
[샌프란시스코] Stanford court hotel 후기 [샌프란시스코] Stanford court hotel 후기 시작 : 16:47끝 ; 17:04 우리가 1주일동안 머물렀던 Standord court hotel 의 후기를 적는다. 요렇게 생겼다.무슨 중세 유럽 건물같은 느낌이다. 위치는 California St. 의 거의 꼭대기.언덕에 위치 하고 있어 뷰는 좋다. Reception ( 리셉션 ) 은 이렇게 생겼다.고급진 호텔보다는 케쥬얼한 느낌이 강하다. 호텔의 복도.우리는 7층에 머물렀다.건물이 큰 네모진 형태이고, 가운데는 빈 구조였다.( 한자 입구(口) 같은 구조랄까? ) 내 방과 진짜별형의 방은 한참 떨어져 있었는데,서로의 방에 닿기 위해서는 ㄱ 형태로 한번의 직각을 거쳐 한참 이동해야 했다. 우리가 예약한 방은 킹 사이즈 침대가 있는 방.방 크기.. 2017. 5. 9.
[라오스 루앙프라방] 첫 이미지 [라오스 루앙프라방] 첫 이미지 하이 뽀나 어게인!! 내가 "일주일동안은 보나한테 설명하는 말투로 해야지~" 생각하면서 썼는데...타이핑도 많이 해야 하고, 설명도 더 열심히 하게 되고 그래서..글 하나 쓰는데 시간이 너무 오래 걸리더라구.. 그래서... 이제 다시 그냥 블로그 말투로 돌아가려고 해 ㅎㅎ너무 섭섭해 하지마..뽀나 너의 요청이 있을 때마다 한번씩 너에게 쓰는 말투로 돌아가줄께 ㅎㅎ 자 이제 다시 블로그 말투 시작!! 방에 짐을 풀고 우리는 바로 동네 파악에 나선다. 숙소들이 밀집되어 있는 지역의 골목을 가로질러 가다보면 바로 시장이 나온다. 루앙프라방은 마을 전체가 유네스코 세계문화유산답게,목조로 된 건물이 꽤 많았고,흰색과 나무의 짙은 갈색이 잘 어울어져 나름 고풍스러움과 깔끔함의 이미지.. 2017. 2. 2.
[라오스 루앙프라방] 우리의 호텔은 쏨짓!! [라오스 루앙프라방] 우리의 호텔은 쏨짓!! 하이 뽀나 어게인!!! 방비엥에서부터 5시간동안 차를 타고 루앙프라방에 도착하니 벌써 오후 2시였어. 시내에 내려주어서 툭툭값도 아끼고 기분이 좋았어. 자 이제 숙소를 정하러 간다규~ 루앙프라방은 여행자 숙소가 한곳에 거의 다 모여있어.그래서 이 방 저 방 보기가 참 좋징. 루앙프라방은 또 루앙프라방만의 느낌이 있더라.사진에서 그 느낌이 느껴져? 베트남 처녀 뒤로 보이는 건물이 우리가 머문 호텔이야. 호텔 이름은 바로 쏨짓( Somchit )! 1박에 12만킵 ( 한화 약 17,000원 ) 을 무조건 달라고 그랬는데,그 곳에서 약 10박을 하신 한국분께서 도움을 주셔서 1박 10만킵 ( 한화 약 14,000원 ) 으로 3일간 머물 수 있었어. 건물은 전통 목조.. 2017. 2. 1.
[Effective Java] 가변성을 최소화 하자. [Effective Java] 가변성을 최소화 하자. -불변 클래스는 자신의 인스턴스가 갖는 값을 변경할 수 없는 클래스. - 불변 클래스는, 가변 클래스에 비해 설계와 구현 및 사용이 더 쉽다. 에러 발생이 적으며 보안이나 사용 측면에서 더 안전하다. - 불변 클래스를 만들 때는 다음 다섯 가지 규칙을 따르자. 1. 객체의 상태를 변경하는 그 어떤 메소드도 제공하지 않는다. 2. 상속을 할 수 없도록 하자. ( class 에 final 을 주어 막을 수 있다. ) 3. 모든 필드를 final 로 지정한다. 4. 모든 필드를 private 으로 지정한다. 5. 가변 컴포넌트의 직접적인 외부 접근을 막자. 생성자와 접근자 메소드 및 readObject 메소드에서 해당 객체의 방어 복사본을 만들어 사용하도록.. 2016. 10. 24.
[종로/이색카페] 식물 밤새 일하고 집에 들어갔는데, 강팽이랑 부라니한테 연락이 온다. 같이 밥먹자고 한다. 나는 밥 생각이 없는 관계로 둘이 먹으라고 하고 나중에 조인을 하여 카페를 가기로 한다. 우리가 간 곳은 종로 낙원상가 뒷쪽으로 샛길에 위치하고 있는 "식물" 이라는 카페이다. 강팽이랑 부라니는 이미 가봤던 카페라고 한다. 내가 좋아할 것 같다며 자신있게 안내하여 나를 데려가준 곳. 이 식물이라는 카페 근처에는 약간의 전통카페나 소박한 느낌의 카페들이 하나씩 생겨나는 분위기이다. 실내 인테리어가 우선 특이한데, 벽은 기본적으로 시멘트를 발라놓았는데, 그 사이사이 프레임을 설치하여 모던한 느낌을 주는 한편, 기와를 심어놓아 한옥적인 느낌도 준다. 또 바깥쪽으로는 비닐로 외벽처리를 하여 온실느낌과 함께 지나가는 행인들에게 .. 2015. 6. 16.
노량진 수산시장 탐험기 컴퓨터 시장 중 용파리를 조심하라는 말이 있는 악명높은 용산 전자타운이 있듯, 수산 시장 중 노파리(? 이런 말이 있나?) 를 조심하라는 말이 있는 악명높은 노량진 수산시장 탐방에 떠났다. 배경은 이렇다. 주말.. 회사에서 근무하고 있던 나는 "나와" 라는 one of 투 뚱쓰 횬쵸뤼 짱으로부터 연락을 받는다.. 한창 배불렀지만 혼자 집에 있기도 싫어하고 대방어 철이 가기 전에 꼭 러쉬를 가야한다는 원 뚱스의 설득에 7시경에 그의 집쪽으로 향한다. ( 그의 집쪽이 노량진에서 가깝다. ) 가는 길에 그는 노량진에서 사기당하면 안 된다면서 이것저것 조사하자고 의견을 제시했고, 돈의 노예인 나는 사기 당하는게 싫어서 + 또 다른 돈의 노예인 뚱쓰도 사기당하는게 싫어서 서로 어떤 집이 맛나나 어떤 집이 맛집인가.. 2015. 1. 31.
반응형