1. 언어를 추천한다고 했지 프로그래밍 언어를 추천한다고 하지 않았습니다. Html만 쓴게 불편하시다면 웹 프론트를 공부하라고 정정하겠습니다.
2. 루비도 실제 많이 사용되지만 파이썬이 실제 업계에서 많이 사용되며 특히 ai분야에서 많이 주목받아 파이썬을 추가했습니다.
3. C가 쓸모없다는 건 전혀 근거도 없고 c개발자분들에 대한 모욕인 것 같습니다. 알고리즘 공부에 c는 도움이 많이 됩니다. 물론 골프스크립트나 아희 같은 언어를 배우거나 go를 배울 수도 있지만 c, c++, c#은 프로그래밍 공부에서 넘어갈 수가 없는 언어입니다.
4. Js, php, jquery, 루비도 좋습니다.
노르웨이 분들의 아희 찬양곡
https://m.youtube.com/watch?v=r8JYevMy2to&t=38s
1. 어쟀튼 HTML도 따지고 보면 언어이니 그건 제가 죄송합니다.
2. 저도 루비가 잘 쓰이지 않는다는 것은 잘 알고 있습니다.
어차피 장난으로 한 말이고,
크게 신경쓰지 읺아주셨으면 합니다.
.....만, 그럼에도 기분이 나쁘셨다면.......
......사과드리도록 하겠습니다.
3. 애초에 저는 알고리즘 자체와 개발은 약간 다르다고 생각합니다.
알고리즘은 단지 생각하는 방식이고, 개발은 그걸 떠나서 실전입니다.
C언어가 쓸모없다 말하는 이유는,
많은 곳에서 C언어를 입문용으로 가르치고, 그게 어떤 '기본이다' 리고 말하고 계시는 경우가 많지만,
C언어부터 배우는 것은 사실 그닥 도움이 되지 않으며,
만약 순수 알고리즘만 공부하신다면 애초에 언어 자체와는 연관성이 없는 문제이니 굳이 C언어와 관련은 없는 듯합니다.
게다가 C언어는 사실 빠르다는 장점 외에는 별다른 장점이 없습니다.
심지어 객체지향마저 먹히지 않는 아주 오래된 언어이기에,
아예 사라지지는 않겠지만 점차 사라질 것이고,
하드웨어 성능이 발전함에 따라 인터프리터 언어와의 큰 속도차이는 보이지 않을 것입니다.
현재 C언어가 아직도 살아있는 이유는,
(제 개인적인 생각으로)
워낙 기존에 C언어로 개발된 제품이 많다보니 결국 유지를 위해 C언어 개발자들을 모집하게 되고,
그로인해 결국 사라지지 않는 것이라 생각합니다.
문론 저도 다른 언어가 다 사라져도 c언어만큼은 사라지지 않을 것이라 생각하지만,
그렇다고 C언어가 무조건 좋다거나, 유망하거나 그럴 것 같지는 않습니다.
문론 분야마다 다르겠죠.
어디서는 쓰고 안쓰고의 차이가 있을 것입니다.
.....만,
C언어를 그래도 입문용, 또는 갓 처음 배우시는 분, 또는 취업과는 전혀 관련없는 분께 추천하시기에는 무리라고 생각합니다.
단순히 난이도를 떠나서,
생산성도 없고, 시간만 오래 투자하게 됩니다.
문론 개인차이고,
사실 중요한 것은 배우는 그 사람이 결정해야 할 일이지만,
그렇다고 다들 무작정 추천하시기보다는 좀더 신중하게 추천하시는 것이 좋을 것 같습니다.
아, 과격한 표현을 쓴 것에 대해서는 제가 사과하겠습니다.
그런데 왜 그랬을까요?
왜냐면 제가 처음 코딩을 배울 때 주변에서 잘 알지도 못하는 사람들이 무작정 C언어만 배우라고 해서 인생의 참 많은 부분을 허비했기 때문입니다!
4. 와!!! 인정합니다!!!
제이쿼리부터 무작정 쓰지 않는 이상 참 좋은 도구죠!!!
....하여튼 죄송합니다.
그런데 왜 그랬을까요?
왜냐면 제가 처음 코딩을 배울 때 주변에서 잘 알지도 못하는 사람들이 무작정 C언어만 배우라고 해서 인생의 참 많은 부분을 허비했기 때문입니다!
...으억
C언어를 일단 배워놓으면 거기서 다른 언어를 배우기 쉬워요. 그냥 새로운 문법만 익히면 되는 거라... 사람님이 C언어를 배우며 시간을 허비했다고는 하지만 그 시간이 결코 헛되지는 않았을 겁니다.
프로그래밍은 언어보다는 알고리즘이 핵심이고, 알고리즘 공부에 파이썬이 좋다고 말씀하셨는데, 알고리즘 공부하면서 코드를 짤 때는 C 또는 C++이 조건 입력받기가 훨씬 편한 것 같아요. 파이썬은 입력 형식이 되게 중요해서... 난이도는 둘 다 비슷하고요
하여튼, C언어는 쓸모있는 언어입니다! C의 불편한 점 때문에 C++이 만들어졌고, C++은 실전에서도 많이 쓰입니다. C++을 공부하려면 C 공부가 필수적이죠.
1. C언어는 오히려 객체지향 문법이 없어 다른 언어를 배우기가 어렵고,
C언어의 문법이 다른 언어에 영향을 많이 주었다지만,
사실 따지고 보면 두 언어가 같은 문법을 공유한다면
어느 언어로 배우든 상관 없습니다.
사실 그런 이유만으로 배운다면 오히려 더욱 불필요한 이유라고 생각되네요!
(사실 영어가 라틴어에 기반을 둔다고 해서 영어 배울때 라틴어부터 배우진 않잖아요? 그겁니다)
2. 프로그래밍은 알고리즘이 핵심이라니, 전혀 아닙니다.
이건 제가 무었보다 자신있게 말씀드릴 수 있습니다!
흔히 말하는 알고리즘이니 컴퓨팅 사고력이니 하는 것들과, 개발은 많이 다릅니다.
문론 어느 정도의 기초 지식이 필요하긴 하겠지만,
솔직히 말해서, 저는 알고리즘을 정식으로 공부한 적도 없고,
그걸 이용하거나 한 적도 거의 없습니다.
근데 저는 어째서 프로그래밍을 할 수 있을까요?
상당히 재미있는 질문인 듯합니다.
저는 알고리즘 공부에 파이썬이 좋다, 라고는 말하지 않았어요.
파이썬이든, C든 일단 배우기만 하면 되는 거니까요!
언어는 도구일 뿐, 알고리즘 그 자체는 아닙니다.
그럼 문제는 뭘까요?
그 이유는, 처음부터 알고리즘부터 공부하는 것은, 프로그래밍의 핵심을 놓치고 중간에서 헤매는 것과 같습니다.
실제로 어떤 방식으로 프로그래밍을 하는지, 등을 보고 깨닫는 과정이 가장 중요합니다.
백날 영어 문법만 파도 영어 1도 못하는 저와 같다 이거죠.
영어 문법만 주구장창 외워봐야 영어르 잘하게 되지는 않겠죠?
어느 정도 문법의 도움도 필요하겠지만,
가장 중요한 것은 직접 말해보고, 들어보고 하는 것입니다.
그걸 알면서 왜 못하니 사람아
마치, 자전거를 타는 법을 이론으로만 배우려고 한다 라는 비유도 적절할 듯하군요.
C언어가 완전히 불필요한 것은 아닙니다!
다만, 무작정 배우거나, 처음부터 가르치거나 하기에는 다른 선택지도 많은데 굳이? 하는 생각이 듭니다.
프로그래밍은 절대 알고리즘이 핵심이 아니고,
실제로 작성된 코드들을 보면 아시겠지만,
여러가지 복잡한 이론이나, 어떤 알고리즘 등등을 사용하는 경우는 거의 없고,
코드의 80% 이상은 정말 프로그래밍 기초에서 배우는 제어문이나 함수, 등등입니다.
따라서, C언어의 복잡한 개념들이 아닌,
그저 C언어의기본 문법만으로도 사실 충분하다 라는 것이죠!
문론 C언어를 배우고, 오래 익히고,
더 자주 사용할수록
다른 언어를 익히거나 사용할 때도 다른 사람들보다 더 효율적으로 사용하고,
더 강력하게 사용할 수는 있습니다.
(이건 제가 해봐서 알아요. 맨날 파이썬/루비 쓰면서 본능적으로 타입체크하죠)
3. C++공부하려면 C언어가 필수적이라니......
전 그렇게 생각하지 않아요.
전 C보다 C++를 먼저 배웠고,
문론 포인터에서 막혀서 C언어책 하나 빌려서 포인터 부분만 공부하고 다시 오긴 했지만
하튼 이미 흔한 그 C언어의 문법은 자바나 자바스크립트에서는 거의 그대로 보존되어 있고,
이미 그 언어들을 미리 배워놔서(?)....
....읽을 수는 있더군요.
하튼 따라서 C언어를 배우지 않아도 C++를 배울 수 있습니다!
아무래도 C언어를 배운 다음 C++ 하는 식으로 일종의 순서가 정해져 있는 모양이지만,
제 생각에는 단지 고정관념일 뿐입니다!
코딩을 배우는 데 어떤 순서나 단계가 정해져 있는 것은 아니고,
아마 학원 등의 영향이라고 생각하지만,
코딩은 어떤 과목이나 스킬(?) 아니기 때문에
무슨 레벨처럼 뭐 하면 뭐 배우고가 정해져 있지 않아요!
아니 근데 레벨이 왜 나와
저도 나름 뒤죽박죽으로 배웠기 때문에,
사실 중요하지 않다는 것을 잘 압니다.
어느 정도의 순서는 필요하겠지만,
하튼 C++와 C언어는 개념 자체가 반대인 언어이기 때문에,
굳이 C언어를 미리 배워서 시간을 낭비할 필요는 없다는 뜻입니다!
참고로 코딩은 뭘 마스터하면 뭘 해라가 불가능합니다.
(적어도 저는 그래요)
저는 그 쉬운 파이썬을 아직도 마스터하지 않은 애매한 상태로 계속 코딩을 하고 있으니까요.
그래서, 그냥 C언어는 훑고 지나가셔도 문제는 없습니다.
다만, 이걸 정말 제대로 쓰려면 상당한 시간이 필요하죠.
하튼 좋은 질문 감사합니다!