객체지향 프로그래밍이 우리가 실세계를 인지하는 방법을 프로그래밍 기법으로 사용한다는 말이 잘 이해가 가지 않아요.
보통 자바같은 객체지향 프로그래밍 언어를 배울 때, 객체지향 프로그래밍 언어는 실세계에서 우리가 여러 객체들이 서로 상호작용하는 방식을 그대로 프로그래밍 기법으로 사용하기 때문에 생산성이 높다는 것으로 알고 있어요.
그러면서 예시로 드는게 예를 들면 실세계에서 학생과 선생님이 수업을 듣고 질문을 하는 등의 객체간의 상호작용을 코드로 구현하는 등의 이야기인데
실제로는 게임이 아닌 이상 선생님이 수업을 하고 학생들이 질문을 하는 프로그램을 개발할 일이 거의 없다고 느껴져요. 그래서 예시로 도무지 와닿지가 않아요.
그래서 궁금한 점이 있는데, 실제 개발에서는 어떤 프로그램에서, 어떤 객체를 만들고 이 객체들이 어떤 상호작용을 하게 되나요? 자세한 코드가 아니더라도 간단하게만 설명해주셔도 좋아요.
예를 들어 프로그래밍을 만들려고 할때 회원정보를 저장할 객체가 필요 할경우
아이디와 비밀번호를 저장하고 읽어올수 있는 객체를 만들어 보면
class Member{
private String id;
private String pw;
Member(String id, String pw){
this.id = id;
this.pw = pw;
}
String getId(){
return id;
}
String getPw(){
return pw;
}
}
//main메소드에서 class 를 이용해서 객체를 생성합니다.
m1 = Member("hong", "1111");
//객체명을 이용해서 id를 읽어오고 화면에 출력해 줍니다.
System.out.println(m1.getId() + "님 반갑습니다");
자바는 모든 코드가 객체로 되어 있기 때문에 회원의 정보를 추가,수정,삭제, 조회시 모두 클래스에서 정의 해야 합니다.
만약 회원가입시 회원이 입력한 모든정보를 db에 저장할때도 객체를 사용하여야 하고
조회를 해서 출력을 할때도 객체를 사용하게 됩니다.
안녕하세요.
요즘 파이썬이 대세라고는 알려져있습니다.
보편적으로 웹개발이 취업하기도 광범위합니다.
또한 기본적으로 java는독학하기에도 수월합니다.
자바스크립트를 시작으로해서 앞부분 프론트를 마무리하고 java로 들어서면서 서비스쪽(조금 더 디테일하게) 배우는것이 괜찮을 것 같습니다.
자바스크립트는 현재 많이 사용중이므로 쉽게 접근하실 수 있습니다.
감사합니다.
객체라는 개념이 비전공자에게는 굉장히 생소하고 실제로 소스코드로 객체들이 상호작용하고 있다고 한마디로 설명 해주는건 어려운 일입니다.
예를 들어서 A라는 객체를 B라는 객체에 이어주고
A = B
다시 B라는 객체에 C라는 객체에 이어주면
B = C
즉 A = C 가 되므로 객체A를 바꾸면 객체C도 상호작용으로 바뀐다는 말을 예시로 수업과 질문이란 것으로 설명하신것 같습니다.
어려운 개념이 아닌데 고급 단계로 가시면 이 개념이 어려울수도 있습니다.
잘 이해하시길 바랍니다
안녕하세요. 아하(a-ha) 프로그래밍 지식 답변자 입니다.
객체란 무엇까요?? 현실세계에서 존재할 수 있는 유형, 무형의 모든 대상을 이야기 합니다.
프로그래밍에서 객체란 속성과 속성의 상태를 변화시킬 수 있는 메서드로 이루어져 있습니다.
예를 들어 학생 이라는 객체가 있을 경우 그 객체의 속성으로는 학교, 학번, 나이, 성적 등의 속성이 있을 수 있습니다.
그리고 학생의 학번 등 여러 속성을 변경시켜주는 메서드가 정의되어 있죠.
아래 코드는 PowerShell 문법 입니다.
class Student { [string]$schoolName [string]$name [int]$id [int]$age } $student = [Student]::new() $student.schoolName = "서울대학교" $student.name = "김서울" $student.id = 202100000 $student.age = 22답변이 도움이 됐으면 합니다. 좋은 하루 되세요!