자바(JAVA)?
자바(JAVA) 언어란 무엇인가?
일단 자바 언어라는 것을 알기 전에 먼저 알아야 될것이 있습니다.
자바는 컴퓨터와 대화를 할 수 있는 언어라고 할 수 있는데
쉽게 말하면 다른나라에 살고 있는 사람과 우리나라에 있는 사람이 각각 있다면,
각각 다른 고유의 언어를 사용하며
또한, 그 사람과 대화하기 위해서는 그 나라의 언어를 알아야하며 아니면 그 상대방이
우리의 언어를 쓰면 의사소통이 가능한데 이 JAVA 라는 언어 또한 컴퓨터에 어떠한
일을 시키고 싶을때나 많은 컴퓨터를 활용하기 위해서 대화하는 언어라고 생각하시면 됩니다.
<절차 지향 VS 객체 지향> : 컴퓨터의 언어는 크게보면 두가지의 성향을 가지고 있습니다.
(1) 절차지향언어
- 절차 지향 프로그래밍 ex) 자동차를 만들 때 전체를 하나의 몸체로 만든다.
즉, 뭔가를 생산할때 부품들을 만들지 않고 모든 것들을
한번에 만드는 작업을 말하며 바퀴, 엔진, 핸들 등등을
하나로 뭉쳐서 만드는 일을 말합니다.
장점 : 섬세한 코딩이 가능하며 메모리의 사용이 적고 작은 규모의 프로그램에 적합하다는 장점이 있습니다.
단점 : 한 부분이 고장나면 전체가 동작하지 않습니다.
유지 보수에 어려움이 있고 개발 기간을 오래 잡아야하고 비용이 많이 들고 협업에 어려움이 따릅니다.
(2) 객체지향 언어
- 객체 지향 프로그래밍 ex) 자동차를 만들 때, 부품 별로 미리 만들어 두고,
나중에 한번에 조립하는 형태를 말합니다.
장점 : 한 부분이 고장나도 다른 부분은 동작이 가능하며,
유지 보수가 쉽고 개발기간이 짧고 비용이 적게들며 협업이 쉽다는 장점이 있습니다.
단점 : 메모리의 사용이 더 많고 불필요한 부분까지 프로그램에 포함됩니다.
이렇게 언어마다 어떠한 코드로 작동되고 어떠한 특징이 있는지를 알아보았는데요.
절차지향언어는 대표적으로 C언어 라는 것이 절차지향언어로써 사용되고 있는데
이때 대표적으로 사용되는 곳은 하드웨어적으로 필요한 코딩이 있을때나 작은 계산기들을
만들고 싶을때 사용되고 서버를 관리하기 위해서 사용되어지고 있습니다.
객체지향언어는 대표적으로 지금 설명하고 있는 자바(JAVA)라는 언어인데
객체지향언어의 특성상 한국에서는 보통 홈페이지를 관리하고 홈페이지의 백엔드의 요소를
작업하는데 많이 사용되고 있습니다.
각각의 언어들이 어떠한 특성들을 가지고 있고 내가 어떠한 언어를 먼저 배우면서 앞으로의 방향성을 잡아보며
장점들을 적극적으로 활용하며 자신이 필요한 부분이 어디인가를 생각하면서
그 언어를 배워가고 그 특성들을 알아가는것이 가장 중요하다고 생각하며 무슨언어를 먼저 배워야할지를
고민하는 분들을 위해 이 글을 적었습니다.