Bjarne Stroustrup' Homepage 데니스 리치와 켄 톰슨이 벨연구소에서 C 언어를 개발한 이후 좀더 새로운 언어가 절실히 필요하게 됐는데 이때 B 스트로우스트럽(B Stroustrup)은 현재까지 많은 개발자가 사랑하고 있는 C++를 개발했다. 스트로우스트럽은 1950년 덴마크의 알허스에서 태어났다. 알허스 대학에서 수학과 전산학을 전공하고 1979년 영국의 캠브리지 대학에서 박사학위를 받았다. 분산시스템, 운영체제, 시뮬레이션, 디자인, 프로그래임에 관심이 많은 그는 현재 AT&T연구소에서 연구하고 있다. 스트로우스트럽은 C++를 디자인하고 구현했다. C++를 C언어를 기반으로 객체 지향적 프로그래밍의 요소를 도입한 것으로, C의 본래 장점인 간결함과 저수준 기능을 살리면서 고도로 추상적인 기법을 사용할 수 있게 했다는 점에서 높이 평가받고 있다. 처음에는 C의 전처리기형태로 사용됐으나 근래에는 완벽한 컴파일러로 나오고 있으며, 객체 지향적 프로그래밍에 대한 인식이 확산되면서 C++도 주목받고 있다. 스트로우스트럽은 현존하고 있는 인물로, 우리는 앞으로 그의 삶을 지켜볼 수 있을 것이다. "Bjarne Stroustrup의 IEEE Computer 지(誌)와의 인터뷰" : 김도형 : ...... 평균적인 `C' 프로젝트의 기간이 어느 정도 걸리죠? 약 6개월입니다. 부인과 아이들이 있는 사람이 여유있게 살만큼 충분한 기간이 아닙니다. 동일한 프로젝트를 C++로 설계하면 어떨까요? 1년 내지 2년입니다. 대단하지요? 잘못된 결정이 이 모든 안정된 직업을 가져온 셈입니다. 또 있습니다. 오랜 기간 대학에서 C를 가르치지 않은 결과, 이제 훌륭한 C 프로그래머가 부족합니다. 특히 Unix 시스템 프로그래밍의 전문가가요. 오랫동안 `new' 을 써온 지금, `malloc' 을 제대로 사용할 줄 아는 사람이 몇명이나 될까요? return 값을 체크하느라 신경쓰는 일도 없죠. 실제로 대부분 C++ 프로그래머들은 return 값을 그냥 내버립니다. `-1' 을 쓰는 일은 이제 추억이 되었습니다. 적어도 `throw', `catch', `try' 같은 걸 쫓아다니지 않고도 에러가 있다는 걸 알 수 있던 시절이었죠 ....... 그럴까요? C 프로젝트 계획과 C++ 프로젝트 계획의 차이를 아십니까? C++ 프로젝트의 계획 단계가 3배는 길게 걸립니다. 어떤 부분이 inherit를 해야 하고 어떤 부분이 안되는지 정확히 가려내야 합니다. 그리고 나서는, 여전히 뭔가 잘못되어있지요. C 프로그램에서 memory leaks이 있을 수 있습니까? 지금은 이걸 찾는게 회사들의 중요 일이 되었습니다. 대부분 회사들이 포기하고는 그냥 제품을 내놓습니다. leak이 있다는 걸 다 알면서도 단지 그걸 찾아내는 비용을 줄이기 위해서 입니다....... 글쎄요. 말씀 드렸듯이 C++ 는 이제 전성기를 지났습니다. 정상적인 회사라면 선행 시도(pilot trial)을 안해보고 C++ 프로젝트를 착수하지 않을 겁니다. 이를 통해서 재앙으로 가는 길이라는 걸 확인할 수 있어야 합니다 ........ -----이런 말두 있네-- 이 글은 실제 인터뷰 과정에서 일어난 일이 아니라 누군가가 장난으로 만든 가공의 인터뷰라고 개인적으로는 생각된다. 실제 IEEE Computer 지 1998년 1월호에는 스트러스트럽의 인터뷰가 없다. 그러나 그 내용은 대단히 재미있고 정곡을 찌르는 말이 많다. (김도형 주)
Bjarne Stroustrup' Homepage 데니스 리치와 켄 톰슨이 벨연구소에서 C 언어를 개발한 이후 좀더 새로운 언어가 절실히 필요하게 됐는데 이때 B 스트로우스트럽(B Stroustrup)은 현재까지 많은 개발자가 사랑하고 있는 C++를 개발했다. 스트로우스트럽은 1950년 덴마크의 알허스에서 태어났다. 알허스 대학에서 수학과 전산학을 전공하고 1979년 영국의 캠브리지 대학에서 박사학위를 받았다. 분산시스템, 운영체제, 시뮬레이션, 디자인, 프로그래임에 관심이 많은 그는 현재 AT&T연구소에서 연구하고 있다. 스트로우스트럽은 C++를 디자인하고 구현했다. C++를 C언어를 기반으로 객체 지향적 프로그래밍의 요소를 도입한 것으로, C의 본래 장점인 간결함과 저수준 기능을 살리면서 고도로 추상적인 기법을 사용할 수 있게 했다는 점에서 높이 평가받고 있다. 처음에는 C의 전처리기형태로 사용됐으나 근래에는 완벽한 컴파일러로 나오고 있으며, 객체 지향적 프로그래밍에 대한 인식이 확산되면서 C++도 주목받고 있다. 스트로우스트럽은 현존하고 있는 인물로, 우리는 앞으로 그의 삶을 지켜볼 수 있을 것이다. "Bjarne Stroustrup의 IEEE Computer 지(誌)와의 인터뷰" : 김도형 : ...... 평균적인 `C' 프로젝트의 기간이 어느 정도 걸리죠? 약 6개월입니다. 부인과 아이들이 있는 사람이 여유있게 살만큼 충분한 기간이 아닙니다. 동일한 프로젝트를 C++로 설계하면 어떨까요? 1년 내지 2년입니다. 대단하지요? 잘못된 결정이 이 모든 안정된 직업을 가져온 셈입니다. 또 있습니다. 오랜 기간 대학에서 C를 가르치지 않은 결과, 이제 훌륭한 C 프로그래머가 부족합니다. 특히 Unix 시스템 프로그래밍의 전문가가요. 오랫동안 `new' 을 써온 지금, `malloc' 을 제대로 사용할 줄 아는 사람이 몇명이나 될까요? return 값을 체크하느라 신경쓰는 일도 없죠. 실제로 대부분 C++ 프로그래머들은 return 값을 그냥 내버립니다. `-1' 을 쓰는 일은 이제 추억이 되었습니다. 적어도 `throw', `catch', `try' 같은 걸 쫓아다니지 않고도 에러가 있다는 걸 알 수 있던 시절이었죠 ....... 그럴까요? C 프로젝트 계획과 C++ 프로젝트 계획의 차이를 아십니까? C++ 프로젝트의 계획 단계가 3배는 길게 걸립니다. 어떤 부분이 inherit를 해야 하고 어떤 부분이 안되는지 정확히 가려내야 합니다. 그리고 나서는, 여전히 뭔가 잘못되어있지요. C 프로그램에서 memory leaks이 있을 수 있습니까? 지금은 이걸 찾는게 회사들의 중요 일이 되었습니다. 대부분 회사들이 포기하고는 그냥 제품을 내놓습니다. leak이 있다는 걸 다 알면서도 단지 그걸 찾아내는 비용을 줄이기 위해서 입니다....... 글쎄요. 말씀 드렸듯이 C++ 는 이제 전성기를 지났습니다. 정상적인 회사라면 선행 시도(pilot trial)을 안해보고 C++ 프로젝트를 착수하지 않을 겁니다. 이를 통해서 재앙으로 가는 길이라는 걸 확인할 수 있어야 합니다 ........ -----이런 말두 있네-- 이 글은 실제 인터뷰 과정에서 일어난 일이 아니라 누군가가 장난으로 만든 가공의 인터뷰라고 개인적으로는 생각된다. 실제 IEEE Computer 지 1998년 1월호에는 스트러스트럽의 인터뷰가 없다. 그러나 그 내용은 대단히 재미있고 정곡을 찌르는 말이 많다. (김도형 주)
수정해서 엔터좀 칠랬는데 비번을 모르겠네.
맞어! 근데 실제 인터뷰는 훨씬 길어 이거의 한 10~20배쯤. 물론 실재인지 아닌지는 몰라; 그런데 골때리는게 C하다 C++하다보면 구구절절 저 인터뷰 내용이 떠올라; 편의를 위해하던 inherit은 결국 프로그래머 발목잡는거같어 --;
그래?? 난 C++은 한번도 해본적이 없어서 잘 모르겠어.
음.... 포인터 개념 탑재하는데 걸리는 시간보다 C++의 근간이론을 탑재하는게 더 오래걸릴걸
C++은 포기해야겠네 C하구 자바 해볼까 하는데 자바는 어때?
자바는 포인터 없는 C++이라 보면되
글쎄.. 상속이 결국은 프로그래머의 발목을 잡은거라는 말에는 동의 하고 싶지가 않네..? 씨뿔뿔을 강력함을 제대로 사용하기 위해서는 굉장히 광범위하고 다양한 생각이 필요하거든? 근데 대부분의 씨뿔뿔을 작성할때 그냥 클래스 만들고. 그냥 함수 만들고.. 이렇게 만들었으면 그걸 계속 사용하려고 하다가 점점 자기 스스로 문제를 꼬게 되는거거든.
조금더 얹으면... C랑 자바랑 같이하는건 문제가 안되지만 시스템 프로그래밍쪽 갈라믄 C쪽을 파는게 좋아. 자바쪽은 실무에 많이 쓰이는거고. 물론 실무 아니라도 쓰지만 포인터를 안쓴다는것 자체가 시스템과는 거리가 말어지는거야; 개발자를 시스템에서 독립시키는건 좋지만 시스템에 대한 이해도가 떨어지게되는건 어쩔수 없는 부작용이라고 봐...
지나던햏말이 맞어. C++ 엄청 강력해. 근데 지나던햏 말처럼 제대로 사용할려면 굉장히 광범위하고 다양한 생각이 필요해. 그게 문제야;
복잡하군 C공부하면서 차차 생각해봐야곘어.. 근데 지금 이 갤에 샤,지나가던햏,나 밖에 없는거야?
그런거 같네... 사실 교수님들도 C++를 더 좋아라해. 보다 이론적이고 철학적으로 완성된 언어이기 때문이야. 나도 C++의 기능이 훌륭하고 사람의 철학을 잘 담았다고 생각해. 다만 그게 너무 어려워 지면 제대로 쓰지 못하는 사람을 탓할거야? 아니면 그 언어를 탓할거야? 대부분의 객체지향적 언어가 100% 활용되지 못하는게 현실이자나? 개인적 생각일뿐이지만 난 C++가 너무 철학에 치우친 경향이 크다고 봐. 왜 OpenGL이 더 학술적으로 기능적으로 더 뛰어나지만( 존카멕도 DirectX 는 맨날 씹자나) 결국 시장에서 이긴건 DirectX아니겠어. (정확한 비유는 아닐지 몰라도 내가 말하는걸 이해할수 있으리라봐)
대강 무슨말인지는 알거같아. 오늘 덕분에 많이 배웠어 난 이쯤에서 자야겠어.. 울집 놀러온 동생친구들이 나땜에 잠을 못자는거같아
음.. 씨뿔뿔은.. 컴퓨터에게 돌아가야 할 내용을 사람이 사용하는 언어와 비슷하게 말해줘도 정확하게 돌아가게 하는데에 목적이 있는데서 문제가 시작되는데.. 사람의 언어라는게 얼마나 복잡하고 오해하기 쉽니.. 편하게 말해도 알아서 돌아가게 하려면 그만큼 잘가르쳐놔야 하는데.. 컴퓨터는 사실 0과 1밖에 모르거든.^^
여름엔 푹자야지 나도 곧 자야겠어 프겔에서자주보자구 ^^
지나가던햏 말이 맞어 사실 컴퓨터의 언어로 글을 쓰는게 프로그래밍 언어야. 뭐 그 도구중 하나가 C++이고 그걸 얼마나 잘 사용하는가에 달린것도 사실이야. 혹시 인공지능이란 학문을 공부해봤는지 모르겠는데 사람의 사고와 컴퓨터의 사고간의 갭은 생각보다 훨씬커.. 사람의 사고처럼 컴퓨터 언어로 풀어쓴다는게 매력적이긴 하지만 인공지능이란 학문에서조차 크게 두드러진 성과를 보인게 없어. 프로그래머도 마찬가지야 C++ 라는 언어거 인간의 사고에 가까워지려는 노력에 나온거지만 과연 프로그래머가 컴퓨터의 언어와 인간의 언어의 폭을 얼마나 좁힐수 있는가 하는 능력에 달린거야. 그런데 문제는 그 능력이야. 컴퓨터와 인간의 사고의 갭. 그걸 좁히는게 심히 어려워.
잘 가르쳐 놓으면 편하게 말해도 이 넘의 컴퓨터는 잘 처리할 꺼고 잘못 가르쳐 놓으면 헛짓을 하겠지? 이 넘의 컴퓨터가 내 말을 잘 알아듣게 하려면 잘 교육시켜야지. ^^
난 사실 인공지능이란 수업 들어보고 느낀게... 구지 인간처럼 컴퓨터도 사고해야 하는가? 하는거야. 로봇 만화에서도 흔히 화두가 되는건데.. 로봇이 구지 인간형이고 2족 보행을 해야 하냐는거야. 사실 엄청 불합리해 2족보행이란건. 그래서 사람들이 바퀴를 발명해서 수레를 만들었자나? 난 플밍언어에서도 마찬가지라는 철학을 갖고있어. 꼭 인간의 사고와 같게 해야하는가.. 라는거. 사실 지금은 그게 무리라고 보는 입장이야 난. 물론 도외시해선 발전이 없겠지만 말야. 지금 시점에서 보자면 그렇다는거야~
이 바보같은 컴퓨터 교육시키는 사람들끼리 잘 상의해서 제대로 한번 교육 시켜보자구~ ^^ 샤 만나서 반가웠어~! 자주 보자구~
응 언제든지 지나던햏 반가웠어 ^^!
아참 알바... 개념없지 이런글 지우진 말아줘. 프밍 갤러리 가 사실 사진찍어서 올릴게 뭐가있어 -_- 디시도 까놓고 말해서 게시판 플레이지 사진 플레이는 아니자너... 이런 훌륭한 게시판을 사진 같은 잣대로 놓고 보지 말아줬음해
안쓰면 객체지향도 아녀 -ㅅ-
이거 구라판명