Python & Ruby

객체 지향 프로그래밍

이번 영상은 길고 다소 어렵습니다. 충분한 시간을 확보한 후에 여유를 가지고 수업에 참여해주세요.

수업 소개

소스코드 (Ruby)

name1 = String.new('egoing')
name2 = String.new('k8805')
puts(name1.reverse())
puts(name2.reverse())
puts(name1.upcase())
puts(name1.size())
names = Array.new()
names.push('egoing')
names.push('k8805')
puts(names)
puts(names.join(','))

 ideone.com

 객체 지향 프로그래밍의 개념

 객체 지향 프로그래밍의 사례

 객체 지향 프로그래밍의 개념

 객체 지향 프로그래밍의 여러 사례

객체 지향 프로그래밍을 어떻게 공부해야 할까?

 

댓글

댓글 본문
작성자
비밀번호
  1. 이현정
    감사합니다
  2. 환글
    object = class + instance
    class는 설계도, instance는 설계로 실제 사례를 만들어 시간과 공간속에 구현 (메모리 할당)해서 실행될 수 있도록 한 것 이런 개념으로 생각해 봤습니다. 음 ~~ 이걸 동양의 관점에서 본다면 class는 정보를 담고 있는 일종의 天 [천]의 개념이고 instance는 이를 실행하는 地 [지]의 개념인것 같습니다. 이렇게 둘을 분리하면 필요한 것들의 설계도를 가지고 그때 그때 가져다가 만들어 쓸 수 있는 강점이 있는 것 같습니다.
  3. JustStudy
    고맙습니다
  4. Alteisen
    객체지향이라는 것이 아직 뜬구름 잡기처럼 잘 모르겠네요.
    프로그래밍이라는 것 자체가 생소하다보니, 아무래도 이해하는데 오랜 시간이 걸리는거 같습니다.
    늦은 나이에 시작을 했지만.. 모르는게 너무 많다보니.. 이해를 하려면 계속 반복해서 볼 수밖에 없네요..
  5. ironboy
    감사해요^^
    대화보기
    • 잠심일년
      두번째 객체지향 동영상을 보고있습니다. 한번 봤을때는 감을 잡았는데 다시한번 보니 더욱 개념 잡기에 좋은 동영상이라고 생각합니다.
    • 쮸쮸바
      수고 하셨습니다.
      재미있게 잘 따라 하고 있습니다.
    • 천하제일프로그래머
      쉽게 설명할수 없다면 제대로 아는게 아니다 .. 라고 파인만(?) 이 말했는데
      쉬운 설명에 탄복합니다.
      많은 도움이 되고 있어요. 꼭 완주 하겠습니다.
      프로그래밍 배우다가 어려워서 관둔 과거가 있어서
      이 수업 정말 좋아요.
    • 검사무운
      잘 봤습니다. 감사합니다.
      설명하시는 instance 개념이 3D 프로그램의 것과 비슷해서
      이해하는데 어려움은 없었습니다.
      제일 어렵다고 하시는 개념이 제일 쉬웠던것 같네요.
    • Jaeyoon Kim
      혹시 객체, 클래스, 인스턴스의 개념에 대해 보충설명이 필요하신 분은
      이 글을 참고하시면 좋을 것 같아요!

      어린시절 뽑기를 해 본적이 있다면 아래 그림과 비슷한 모양의 뽑기 틀을 본적이 있을 것이다. 뽑기 아저씨가 뽑기를 불에 달군 후 평평한 바닥에 "탁"하고 소리나게 떨어뜨려 넙적하고 동그랗게 만든후에 아래와 비슷한 틀로 모양을 찍어준다. 찍어준 모양대로 깨뜨리지 않고 만들어 오면 아저씨는 뽑기 한개를 더 해 주었다.

      이곳에서 설명할 클래스라는 것이 마치 위 뽑기의 틀(별모양, 하트모양)과 비슷하다. 별 모양의 틀(클래스)로 찍으면 별모양의 뽑기(인스턴스)가 생성되고 하트 모양의 틀(클래스)로 찍으면 하트모양의 뽑기(인스턴스)가 나오는 것이다.

      클래스란 똑같은 무엇인가를 계속해서 만들어 낼 수 있는 설계도면 같은 것이고(뽑기 틀), 인스턴스란 클래스에 의해서 만들어진 피조물(별 또는 하트가 찍혀진 뽑기)을 뜻하는 것이다.

      ※ [참고] 객체와 인스턴스의 차이

      클래스에 의해서 만들어진 객체를 인스턴스라고도 한다. 그렇다면 객체와 인스턴스의 차이는 무엇일까? 이렇게 생각 해 보자. cat = Animal() 이렇게 만들어진 cat은 객체이다. 그리고 cat이라는 객체는 Animal의 인스턴스(instance)이다. 즉 인스턴스라는 말은 특정 객체(cat)가 어떤 클래스(Animal)의 객체인지를 관계위주로 설명할 때 사용된다. 즉, "cat은 인스턴스" 보다는 "cat은 객체"라는 표현이 "cat은 Animal의 객체" 보다는 "cat은 Animal의 인스턴스" 라는 표현이 훨씬 잘 어울린다.

      원문 : https://wikidocs.net/28
    • Jaeyoon Kim
      오랜만에 뭔가를 내가 이해하고 있구나 하고 느끼고 있습니다. 감사합니다.
    • 감사합니다^^
    • Doh_Oon Park
      강의 4. 개념에서 "굉장히 중요합니다"이 한마디 덕분에 좌르르 풀렸습니다. 뜬구름 잡다가 그게 핵심인 줄 이제야 알게 되었습니다.
    • Doh_Oon Park
      이 동영상으로 객체지향에 대한 의문이 많이 풀리네요. 많은 시간을 들였고 책도 보았는데 이영상으로 막연한 것이 좀 정리가 되면서 와닿습니다. OOP는 왜 굳이 인스턴스라는 방법을 사용 하는가? 그 인스턴스를 어떻게 담으려고 딸린식구까지 메모리에 끌어올리는 수고를 하는가? 객체지향에 왜 '메모리'를 자꾸 언급하는ㄱ? 생각해 왔는데 덕분에 개념이 약간 이해 되니까 조금씩 풀리는 느낌이 듭니다. 감사합니다.
    • JunTaek Hong
      쉬운 설명 감사합니다.
    • hana21i
      감사합니다
    • Frank
      고생하셨습니다.
      한걸음 한걸음 배우고 있습니다.
      아직 걸음마도 못땐 수준인데, 열심히 배우겠습니다.^^
    버전 관리
    egoing
    현재 버전
    선택 버전
    graphittie 자세히 보기