자바를 사용하면 robust해서 컴파일타임에 코드문제가 발생할일도 거의없기 때문에

처음 프로그래밍을 시작하는 초급자입장에선 접근하기 쉬운반면

흔히말하는 C의 포인터 개념에 대한 이해가 상대적으로 떨어지죠. 


어찌되었건 C와 자바가 추구하는점이 다르기때문에
(자바는 포인터를 이용한 연산이 애시당초 필요가 없으니)

그관점에서는 포인터주소연산을 통한 접근이 필요없으니 상관없는게 맞긴한데



보통 PL을 공부하지 않은 비전공자들 중

자바로 시작한분들은 대부분 heap영역에 대한 이해력이 떨어지져..


자바의 new가 왜 new인지 이해를 못하는 경우가 대부분
(또 변수타입의 클래스가 왜 그 클래스명인지 조차 이해못하는 경우도, 바인딩에 대한 개념이 없으니..)

반면 C부터 시작한분은 힙영역에 대한 이해도가 다소 부족하더라도 

왜 malloc을 해야하는가 생각해보면(동적할당을 이용하는 목적을 생각해보면)

힙영역. 즉 OOP를 사용할때 객체에 대한 개념이 조금 더 확고해짐.



그래서 c를 배운 이후에 자바를 배우고 OOP설계 대한 개념만 조금더 확실히 하면 뛰어난 개발자가 될수있는반면


비전공자이면서 PL공부를 미처 못했으며, 객체에 대한 이해력마저 없으면

흔히 말하는 어중이 떠중이가 되기마련이더라구여


이런분들이 IT평균 깍아먹는경우 몇번봤어여(안타깝지만 사실)

그래서 IT는 진입장벽이 낮고 쉽다는 소리가 나오죠(실상은 쉬운게 아닌데)


뭐 그렇다고 C로 프로그래밍을 시작해야된다는건 또 절대로 아니에여

C를 입문언어라고 하는분들 많은데

H/W도 알아야하고 OS도 알아야하고 

문법도 개발자 편한대로 사용가능하게 되있어서 오히려 초보자가 사용하기엔 더 안좋음..
(타입이나 포매터가 너무 자유로워서 작성자도 코드가 어디 잘못된지 찾기어려움)



그냥.. 비오니까 심심했나봐여

왜 이런글 적고 있나모르겠네...