c#, java, python, javascript 등등 아무리 고수라고 해도 C, C++를 모른다? 프로그래밍 고수라고 자신있게 말할 수 있을까요?
물론 C, C++은 모르지만 위에 언어가 어떻게 어셈블리어로 바뀌는지 상세히 안다고 한다면 고수겠죠 하지만 그런 사람이 과연 있을까 모르겠습니다.
C++ 로 프로그래머의 레벨을 판단하는 것은 C, C++이 어셈블리어에 가장 근접한 저수준의 언어이기 때문이 아니겠습니까... 어셈블리에 대한 이해가 있어야 어떻게 하드웨어의 성능을 최대한 뽑아낼 수 있는지에 대해서 알 수 있는 것이구요.
현재의 C++ 최신 버전은 새로 프로그램에 입문하는 사람에게는 권할 수 없을 정도로 복잡해 졌습니다만
현업에서는 C++의 구현 능력 수준으로 프로그래머의 레벨이 갈리는 것이 엄연한 현실입니다... 어디가서 전문 프로그래머라고 명함 내밀려면 일단 C++능력은 깔아 놔야 한다는 거죠. 구글의 핵심 기능도 대부분 C++로 구현되어 있듯이 말입니다...
특히나 게임 개발사 쪽은 C++능력은 필수이고 절대적인 실력 판단 기준입니다.
이런 이유로 저도 현업에서 C++를 쓰지 않아도 틈틈히 실력을 갈고 닦고 있습니다. 어디가서 무시 안당할려면 알고 있어야 하더라구요...
옥수수 받고 팝콘 얹습니다
(저는 html로 프로그래밍 합니다)
겨울에는 군고구마지요.. 그것도 호박고구마로.. ^^
성능도 중요하고, 유지보수도 중요하고, 이식성도 좋아야 하고, 신뢰성도 좋아야 하고...좋아야 하고..
C를 한다고 해도 메모리 관리가 엉망인 사람 보다는, (메모리 관리에 신경을 덜 쓰게 되는) Rust로 개발해서 훨씬 나은 결과를 가져오는 경우도 많다는게 현실이지요.
중요한건 개발할때의 '자세'이지 '기술의 종류'가 아님을 말씀드리고 싶습니다.
/Vollago
현재 메인은 C#입니다. 윈도우 환경에서 인터페이스 그리는데 신경 안쓰면서 일하는데는 C#만한게 없거든요.
(제 분야는 UI 디자인 따위.. 값만 맞으면 되지. 하는 동네입니다.)
근데 C, C++ 하나도 몰라도 고수인분 많이 봤습니다. 분야가 다른거지요.
하고싶은 말은 그냥 자기 분야에서 맡은거 잘 하면 고수 소리 듣습니다. 프로그래밍 언어야 그냥 도구일 뿐입니다.
물론 진짜 고수들은 다른 필드에 던져놓고 새로운 언어로 프로젝트 하라고 해도 금방 잘 하더군요.
저는 닉네임부터 글러먹었네요 ㅎㅎ
글러먹은 저에게 이렇게 많은 연봉을 주시는 회사님 감사합니다 ㅠㅠ
(java 화이팅!!ㅎㅎ)
창씨가 아닌데 왜 테드 창이야?
"전설의 프로그래머 존 카맥의 팟캐스트를 들으며 내맘대로 요약해본 타래. 무려 5시간 동안 엄청난 에너지를 쏟아낸 팟캐스트."
출처 : @sm_park
언어는 도구일뿐.
시스템 레벨의 생각이 중요. 모든 것에 1등일 필요는 없다. 그러나 난 하이레벨부터 하드웨어까지 스택의 돌아가는 것을 모두 안다. 그럼 전체를 최적화 하기위해 무엇을 희생할지 결정 할수 있다. 새로운 것을 만들려면 이 시스템 레벨의 결정이 핵심이다. 란 말도 했네요
특정언어에 우위를 두는것은 이해하기 어렵네요
C랑 C++ 몰라도 고수는 많습니다..
오히려 그런의견이야 말로 우물안개구리가 아닐지요 ㄷㄷ
뭐, 1프레임이 아쉬운 시스템이나 엔진쪽이면 C++, 어셈은 확실히 도움되고 그것이 무기가 될 것 같은데, 일반적인 개발에서는 뭘로 해도 상관없다고 봅니다. 개발 능력은 제가 보기에 그냥 프로그램 설계를 어떻게 효율적으로 하느냐에 달린거 같아요. 여기서 무슨 언어를 쓰는 지는 중요치 않다고 봅니다.
기간 내에 요구사항에 맞춰서 버그 없이 잘 돌아가는 프로그램을 뚝딱 만들어내면 능력자죠.
문화에는 우열이 없다는 것처럼 그냥 다양성을 가진거죠.
고수도 성향이 다양해서 모든 언어들이 가장 공통적이고 기본적인 요소에 대한 이해가 확고해서 언어를 잘 넘나드는 분이 있는가 하면, 해당 언어에 완전 최적화된 고이다 못해 석유가 되어서 그 언어로 불가능해 보이는 퍼포먼스를 뽑는 사람들도 있고... 그냥 다양한거죠.
/Vollago
영어 프랑스어 히브리어 뭐 이런거 아니겠습니까?
예를 들어서 Java로 프로그래밍한다면 JVM이 어떻게 동작하는지 잘 알고, 응용 프로그램은 OS 위에서 돌아가니까 OS가 어떻게 돌아가는지 잘 알아야죠.
Dan Abramov의 블로그 포스팅입니다. 아마 전세계 웹개발자 중에서 요즘 제일 유명한 사람 중 한명일거에요.
물론 저도 low-level에서 코드가 어떻게 동작하는지를 아는게 중요하다고 생각합니다만, 그걸 안다고 고레벨 프로그래머고 모르면 수준 낮은 프로그래머는 아닌거 같습니다.
개발자들 자기 만족이나 기술적 우위를 과시하기 것은 의미 없습니다.
로우레벨을 알아야 하는 사람이있는거고 몰라도 되는 사람이 있는거죠
요즘 트랜드 상으로는 코드의 성능보다는 가시성이 중요한거 같기도 하고 코웍 하는 입장에서는 그냥 깔끔한 코드가 좋은것 같네요
물론 최소한 하나의 언어를 깊게 알고 있어야 하는건 맞지만 특정언어가 우위에 있다고 생각하면 안되는 시대입니다
각 필드 마다 다른 언어가 쓰이는 이유는 다 있어요. 한국어 잘 해봤자 일 못하면 고수가 아니져
"쉽고 간단한 기계어가 있는데 어셈블리를 만들어 쓴다고?"
저한테 웹 같은거 하지 말라며 두꺼운 시스템 프로그래밍 책 보며 얘기하던 선배가 생각나네요.
저 신입 때는 함수콜 비용을 들먹이며 함수수 줄이는게 미덕인(?) 문화도 있었습니다만 … 세상은 훨씬 복잡하게 변하고 있고 알아야 할 것도 많고 추구해야 할 가치도 변하고 있죠.
일부러 어그로 끌려고 그러시는거죠? ㅎㅎ
한국에선 일단 한국어부터 잘해야죠 영어나 일어를 알면 사는데 도움이 되지만 말이죠
안그렇습니까?
옛날 양반들이 한자 모르면 무식하다고 하고 언문이라고 국어 무시하는게
다른데서 온게 아니군요 ㅎㅎ
이 댓글 보면서 좀 거시기했는데, 이 글 보니 내용들을 좀 세게 말하시는 경향이 있네요.
라틴어 잘 구사한다고 영어 잘 구사하진 않죠. 그렇다고 영어 잘 하는데 라틴어 못한다고 영어를 못하는 건 아닙니다.
시스템에 대한 이해가 우선이고 이로 인해 효율적인 언어를 선택하는 것이 그 다음입니다. 그리고 이 언어는 문제를 해결하기 위한 도구이지 전부가 아닙니다.
함께 일했던 한 쥬니어 분이 떠오르네요.. Objective-C를 배우면 Swift 잘 했을 것 같다고……
허허허
그분 엄청 오래짜고 자기만의 스타일 강조하고 동료 자바 개발자에 느리다고 불평하다
익숙해질 무렵 c 잊어버리실 분입니다 ㅋㅋ
팝콘 땡기네요 ㅎ
저도 팝콘
시대가 변했습니다.
실사용에서는 아직 갈 길이 멀다고 생각 합니다만, AI가 프로그램을 짜는 시대가 눈 앞에 있습니다.
설계를 잘해야쥬
그럼 무슨 언어를 해도 상관 없쥬
스크래치로 게임 만드는 세상에 뭔 c c++
25년 c했지만 언어는 기준이 안된다고 생각합니다
보안분야라 리버싱하느라고 c와 어셈을 수시로 왔다갔다했었지만 지금
은.. 그냥 현자타임모드입니다.
구러다 우엔히 파이썬에 입문하고
시간없어서 파이썬으로 대충 그까이꺼 금방개발해내고 웹이든 ai든 수치연산이든 그냥 패키지 대충갖다쓰기바쁘죠. 다중처리만 gil문제때문에 유일하게 인라인 c.. 요즘은 gil 어떻게 처리하는지모르겠네요
오년전 진급하면서 개발.보안에서 관리직으로 직무변경하면서 손다땠지만 요즘은 러스트. 고 같은 언어는 얼마나발전했을까 싶습니다.
그런언어를배울때 c를 과연다 알아야할까 싶기도 하고.. 그시간에 정규식표현법이나 한번더들여다보는게 좋지않을까 싶네요.
언어는 결국 수단이고
문제 해결하는게 주요목적이기 때문이죠
언어를 쓰는 이유는 결국
서비스를 위한 거입니다.
결국 프로그래밍은 조건과 반복이죠 뭐.
그리고 레벨 가린다고 돈 더 나오나요.
개떡같이 만들어도 잘 팔리기도 하고
고급지게 만들어도 안팔리기도 하니까요.
우리가 연예인의 모습을 화면으로 볼때
아픈지 안아픈지. 심성이 괜찮은지 별로인지
모르는 것처럼,
이런건 토론하기 좋은 이슈일 뿐
밖에서 볼땐 무의미합니다.
재미라면 한번 생각해봅시다.
실력의 결과물은 자존심인지 연봉인지.
그리고 실력이 연봉과 1:1매칭이 되는지요.
대체 왜 그런걸까요;;;;
이제 다시 c,c++로 모든 프로젝트를 진행하면 되는건가요?