<짤은 야한 눈을 가진 소녀>
솔직히 각종 오픈소스 라이브러리가 인터넷에 갈수록 퍼지고 있고
대중적인 분야는 오픈소스가 많아서 어지간한 레벨로는 돈벌기 힘들어
그래서 프로그래머에게 미래의 먹거리 산업은 무엇일까?
당연히 자율주행 자동차를 중심으로한 네트워킹 + 관리시스템
그리고 AI 의 인공지능 시스템의 활용이지
둘다 기본적으로 막대한 통신망과 통신장비를 필요로 해
자율주행 자동차만 해도 내가 서울에서 부산가는데 운전은 자동차가 알아서 해주고
난 차에 앉아서 유튜브를 보거나 게임을 할 수도 있지
지금도 이미 최신차량엔 차량내에 ECU가 50~100개까지 있는데 미래엔 더욱더 늘어날 예정이고
스마트폰같은 컴퓨터들도 당연히 장착될거야
전세계 차량 내부 네트워크는 CAN 프로토콜이 거의 통일했는데 CAN 프로토콜을 이용한 ECU 장비 내부 코드?
싹다 C언어로 프로그래밍된거야
이건 당연하지 하드웨어 다루는 임베디드는 무조건 C니까
로봇을 다루는 AI 도 당연히 C
가정/사무용 저가용 인공지능 장비들도 당연히 C로 제작됨
인공지능 장비들을 컨트롤하는 네트워킹 시스템도 당연히 C
미래산업이라 여겨지는 A.I 자율자동차 네트워크망 모두 C언어 기반이야
물론 장비를 제조하는 회사가 아니라면 다른 언어로 프로그램 제작해서 지원하는 시장도 생겨나겠지
하지만 미래에 산업구조의 변화로 C언어 개발자들이 지금의 몇배는 필요한 시기가 오게 될거야
지금도 이미 더 필요해지고 있는데 삼성이 갤럭시에 들어갈 안드로이드 대체할 OS 만든다고 하지?
그 OS도 그리고 안드로이드도 다 리눅스 커널을 가져와서 겉만 포팅한거야
커널을 커스터마이징 하고 싶어도 기술이 있어야 뭘 하든지 하지
리눅스 커널은? 당연히 99%의 코드가 C
지금 스마트폰이라는게 ARM cpu에 리눅스커널이 거의 표준인데
앞으로 스마트폰과 비슷한 소형 컴퓨터 상품들이 늘어나면서
리눅스의 이해도가 높은 프로그래머들이 더욱더 많이 필요하게 될거야
시대가 그걸 요구하니까
거의 앞으로 10년이상은 소형 컴퓨터 기기 (스마트폰, 아이패드 또는 소형 컴퓨터시계, 고글등등)은 ARM cpu, 리눅스커널 이 체제로 굳어질것 같아
하여튼 C 는 기본적 개념이라도 배워두면 좋아
그리고 언어의 우열은 없어
단지 임베디드 프로그래밍과 OS 커널에 있어선 C로 짜는게 가장 효율적인것 뿐이지
어차피 컴파일하면 모든 언어는 기계어로 통일되니까.
많은 언어를 다룰수 있고 필요에따라 이것저것 번갈아가면서 쓰는게 제일이야
글씨요... 스맛폰나왔다고 C언어가능자 수요가늘어났었나...
한국으로 한정짓자면 C언어 수요는 대부분 임베디드시장이 차지해. 스마트폰은 OS 올린 소형컴퓨터니까 그 위에 개발될 APP 개발자들은 C언어를 배울 필요가 없지. 따라서 스마트폰만으로는 수요가 늘지 않아
하지만 스마트폰과 네트워크의 발전으로 임베디드 시장자체가 커질거야. 예를 들면 드론에 올리는 소프트웨어? 가정용 에어콘과 냉장고에도 네트워크로 컨트롤 가능한 임베디드 코드가 들어갈거고, 모두 스마트폰으로 컨트롤이 가능해. 홈네트워킹에 들어가는 모든장비는 임베디드라서 C언어지
그리고 A.I 가 발전하면 가정용 청소로봇이나 효율적으로 설거지하는 기계등에 모두 스마트폰처럼 간단한 리눅스 커널이 올라간 장비들이 생겨나겠지. 임베디드 시장자체가 늘어난다는 얘기야. 인간의 많은 부분들이 기계로 대체되면서 그 기계부분을 프로그래밍할 사람들이 더 필요하게 되는거지
푸시아같은 범용적으로 임베디드에도 쓰이는 OS가 나와서 C아닌 더 고급언어로도 제어되지않을까?
고급언어로 임베디드나 OS 를 제어한다? 가능한 얘기야. 어차피 응용프로그램단에선 커널의 system call 을 이용해서 OS 를 컨트롤하거든, 어떤 언어를 사용하든지 동일하게. 굳이 OS 를 알 필요는 없어 open/ close 같은 시스템콜만 알면 되는거지
다만 스마트폰엔 리눅스가 올라가지만 모든 임베디드장비에 OS를 올릴수는 없어. 너무 크고 무겁거든. 근데 구글이 매우매우 가볍고 빠르고 용량적은 OS를 만든다면? 기술은 날이 갈수록 발전하고 있으니 대부분 임베디드 장비에 해당 OS가 올라갈 수 있지. OS만 올린다면 C언어를 모르는 사람도 임베디드 회사에서 장비를 컨트롤 하는 코드를 만질 수 있는거지
구체적으로 위와같은 상황이 된다면 장비를 직접적으로 컨트롤 하는 driver 코드만 추가해주는 임베디드 개발자 1~2명만 있음 되고, 나머지는 OS 위에서 개발하는 개발자만 필요한거지. 지금 임베디드 시장이 싹다 C언어 인건 OS를 올리지 않고 직접 기계를 제어하기 때문이야. OS가 올라가는 시점부터 임베디드가 아니게 되는거지 ㅎㅎ
근데 칩들도 사양이 올라가서 c뿐만 아니라 더 하이레벨도 많이 적용되고 나중에 자율주행 시대가 올때쯤엔 누가 알아 자바스크립트로 임베디드 할지?
그 분야가 생각보다 너무 보수적임 옛날 칩가지고 계속 프로그래밍하니까...
자스로 짠 임베디드 기기를 쓰고 싶진 않은데
원자력이나 비행기처럼 리스크가 좆망으로 이어지는 문제는 고수준 언어가 신뢰성 문제때문에 위험하지 않음? 옛날에 지나가는 말로 들은거 같은데
누가 옛날에 뭐 자바로 비행기 제어로직 못짠다 이러고 설명했던거 같은데 기억이 가물가물해서 맞나 모르겠네
그런데 다른 언어에서도 버러지 같던 애들이 c 쓴다고 천제가 될까 오히려 더 못 나질 것 같은데 잘 난 놈들은 차피 자바를 쓰던 파이썬을 c를 쓰던 잘 쓸텐데 다른 언어에서도 문법 제대로 이해 못하고 로직 못 짜는 애들이 c 쓴다고 사람들이 알아줄까싶다
C언어 만능론? C언어 만능론? C언어 만능론?
죽어. C언어를 왜해? 헛소리 자제좀 해라 진짜로.. 없애버리고 싶으니까.
임베디드를 C로 왜해? 미쳤냐? Java로 다 짜지..... 제발!! 아!!!!!!!!
C언어는 코어개발만 하면 끝이라고. 전체의 한 1% 정도 된다고!!! 아!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 1000명의 개발자가 있으면, 그중에서 C언어 개발자는 10명 정도만 있으면 되는거라고.
ㄴ 그 10명이 니가 되면 연봉 ㅈ나게 받지 않겟냐? 하여간 헬조선식 사고방식은진짜