본문 바로가기

추상화

추상화 수준에 따라 보이는 사물의 모습 이 글은 먼저 추상화와 비용에 Tuna님의 댓글을 보고 작성한 글입니다. 추상화 수준을 뒤로 두고 먼저 사물의 새로운 면이 무엇인가에 대해 생각해 보았습니다. 예를 들면 얼마전 쓴 글에서 비유한 인생은 경기장 말에 대해 생각해보면, 글에서 경기장이란 단어에 대해 언급한 정보들. 1. 아무것도 모르고 경기장에 처음 들어간 사람은 상처를 피할수 없게 됩니다. 2. 한번 경기장에 들어간 투사는 경기가 끝날때까지 나오지 못합니다. - 인생은 죽기전까지 나올수없습니다. 경기장이란 추상화에서 새로 보이는 정보들. 1. 경기장은 승자가 있는 곳입니다. - 인생은 승자가 있습니다. 2. 경기장에서 승자는 큰 부와 명예를 가지게 됩니다. 새로 보이는 정보란 추상화에서 비유한 속성의 다른 면을 이야기 하는 것 같습니다. .. 더보기
추상화의 비용? 큐브 맞추기와 개발에서 말한 추상화의 비용에 대해 생각 해 보자면, 전 이것은 두가지로 나누어 이야기 할수 있을 것 같습니다. 1. 추상화와 학습비용 -낮은 수준의 학습을 거치지 않고 높은 추상화 수준을 공부하더라도 추상화의 공동화(空洞化)를 불러일으키기 때문에 다시 낮은 수준을 공부를 해야한다. -높은 수준의 추상화 수준에서의 학습비용과 낮은 수준의 추상화 수준에서의 학습비용은 같다. 2. 추상화의 범위 -높은 추상화의 수준으로 올라갈수록 상세한 사항은 은폐된다. -높은 추상화로 올라갈수록 보이지 않던 새로운 추상화의 면을 발견할수 있다. 즉 처리해야 할 정보의 양은 감소하지 않는다. 결론을 내기위해 하고싶은 이야기가 있습니다. 1. 인간이 처리할수 있는 정보의 양은 한정되어 있다. 2. 개개인에게 맞.. 더보기
추상화의 본질? 추상화의 본질은 복잡도가 일정 규모 이상의 집단의 자기조직화 현상에 깊은 관련이 있다. 얼마 전 읽은 글 김창준님의 협력을 통한 추상화을 읽고 나서 찾아낸 공통점이지만 낮은 수준에서 높은 수준의 발현(추상화)으로 이어지는 원리중에 하나는 얼마전 쓴 글 공부잘하는사람과... 에서 말했던 "정리"와 관련이 있다. 협력을 통한 추상화에서 말하는 추상화는 타인에게 설명을 통해 새로운 관점을 본다는 것이다. 다른사람에의 설명이라는 것은 자신의 정보를 정리하는것에서 시작한다. 이러한 정리를 통해 정보의 복잡도가 일정 규모를 이루게되면 새로운 추상화 수준으로 현상의 밖에서 볼 수 있는데(물론 항상그런것은아니다) 이런 추상화 수준에서는 이전에 보이지 않던 다른 관점들이 보이게 되고 새로운 정보를 얻을수있다. (사실 이.. 더보기
추상화의 봉쇄 요즘 생각하는 키워드가 추상화에 대한 것이라서인지 어떤 책을 읽어도 연관되어 생각된다. 그중 한가지가 추상화의 봉쇄이다. 만약 우리가 어떤것을 추상적으로 생각할때 가장 주의를 기울여야 하는 부분은 그 추상화가 하위의 개념들과 완벽히 분리되어 있는가 이다. 이 봉쇄란 개념이 없다면 추상화는 의미가 없어져 버린다. 예를들면 시계의 운동이 하위 양자역학에 얽매이게 된다면 시계란 개념을 가질수 없게된다. 마찬가지로 물리와 화학,생물학의 분야가 나눠질수 있게되는 가장 큰 이유중 하나는 각각의 연구가 다른 하위 연구에 대해 봉쇄될 수 있기 때문에 다른 분야의 상세한 지식을 갖지않고도 자신의 연구를 계속할수 있다. 즉 각각의 분야는 서로 공유할수있는 공통된 추상화 명제를 가지고있다. 이명제는 하위 추상화에 대해 봉쇄.. 더보기
추상화와 구상화2 얼마전 쓴 글 추상화와 구상화에 대해 몇가지 더 떠오른 생각들이 있어서 쓴다. 언젠가 나도 생긴 버릇이지만 조금 짜고 컴파일 하고 돌려본다. 뭐 TDD(Test-Driven Development)에서는 좋은 것일지 모르겠지만 로직이 흐르고 정상적으로 동작함을 기계에게 의존하게 된다. 이것이 지속되다 보면 코드의 흐름을 머리속에서 놓쳐 버린다. 부분부분 분명 뭔가를 받고 뭔가를 토해내고는 있지만 이 시스템이 뭘 하고 있는지에 대한 감은 점점 놓친다. 이 시스템이 뭘 하고 있는지에 대한 감을 놓치는 이유는 아마 코딩을 하면서 추상화의 수준을 내려갔기 때문에 애초 무엇을 하려고 했는지에 대한 높은 추상화수준의 감을 놓쳐버린게 아닐까? 즉 정확히 말하면 구상화에 집중함으로서 추상화의 감을 놓쳐버린것이라 볼수있다.. 더보기
추상화와 구상화? 몇일전 아는 지인과 대화중에 깨닭은 점인데, 추상화와 구상화의 범위에 대한 이야기였다. ...omitted... 최상의 아키텍쳐가 걍 그림만 그리는것이 아니다. 오히려 그런 사람들에게는 말단의 코딩 실력까지 상당한 수준이 되어야만 한다. 자신의 선 하나가 실제로 구현될 것 까지 예상을 하며 큰 그림을 머리속에 수행시키고 디버깅하고 검증할 수 있는 사람만이 전체 그림을 그릴 수 있다. ...omitted... (*겐도사마의 재림:코드를 잘뽑아내고싶은가 그럼 컴퓨터를버려라 에서 6번째 단락) 즉 어느 아키텍쳐는 추상화 수준을 자신이 구현하고자 하는 기능의 동작코드까지 단숨에 끌어 내릴수 있어야 한다. 는 이야기라 볼수있다. 하지만 반대로 그 지인은 전체 프로젝트에서 아키텍트가 커버할수 있는 범위가 있다고 했.. 더보기