디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

실용적 oop앱에서 작성

나르시갤로그로 이동합니다. 2025.09.10 01:25:25
조회 77 추천 0 댓글 0

이 글에서는 딱 실용적 수준까지만 oop를 논합니다.

oop에서 제일 중요한 건 추상화입니다.
그러면 추상화란 무엇인가... 흠..
반 고흐의 "별이 빛나는 밤에.." 그림을 말하는 것이 아닙니다.
사실 저는 추상화가 뭔지 몰라요 ㅎㅎ

사물(객체)에서 속성을 뽑아내는 건 어떨까요?
는 사물(물건, 물체)입니다. 그걸 객체라 번역해놓아 의미가 전달되지 않는거죠.

사물 위주(관점)의 프로그래밍을 oop라고 합니다. 진짜에요.

우리가 얘기하는 파일이란 무엇읽가요?
원래 파일의 의미는 사무실에서 사용하는 파일철을 말하는거에요. 종이 묶는거 있죠? 그걸 파일이라고 합니다 ㅎㅎ.
그런데 컴퓨터 분야에서는 데이터를 메모리에 기록해놓은 걸 파일이라고 하는데 파일의 정의를 뭐라해야할지 모르겠네요 ㅎㅎ

파일을 oop 프밍한다고 가정합시다.
oop가 뭐라 했죠? 사물 관점(위주)의 프로그래밍을 oop라고 합니다.

파일을 사물처럼 다루려면 어떻게 해야할까요?

파일이라는 물건이 있다고 가정하고
파일을 열고 닫고
읽고 쓰고
수정하고
찾는 등의 기능이 있어야겠죠.

이게 바로 추상화입니다. ㅎㅎ

class File

이렇게 클래스부터 만들죠?
클래스란 뭘까요?
class 단어에 분류라는 뜻이 있을거에요.
그게 일종의 레코드입니다. 관련된 것들을 묶어놓은거죠.
말이 클래스지.
yaml로도 oop를 표현할 수 있습니다.
일단 클래스를 잊읍시다.

사물을 정의할 겁니다.

:
- name: File
- methods:
  - open
  - close
  - read
  - write
  - seek

File이라는 사물을 만들고
File이라는 사물을 method(방법, 함수)으로 조작하는 거지요.
이게 oop의 핵심입니다. 캡슐화.
관련기능들을 묶어놓은 거죠. ㅎㅎ
저렇게 사물 다루듯 프로그래밍을 하는거죠.
그걸 oop라고 하는 겁니다.
저기에 변수 또는 매소드에 제한을 걸면 그게 은닉화. 위의 예시에서는 변수는 넣지 않았어요. 귀찮아서 ㅎㅎ

만약 File이라는 사물이 구현은 없고 껍데기 분이라면 그걸 abstract class라고 부르던가 ㅎㅎ
까먹었네요. ㅎㅎ
File을 상속하여 MemFile, NetFile을 만들었다고 치면 File이라는 껍데기랄 통하여 MemFile, NetFile을 조작할 수 있습니다. 그걸 다형성이라고 하죠. ㅎㅎ
다형성은 상속외에 인터페이스로도 구현이 가능합니다.
예를 들어 이런거죠 ㅎㅎ

file_open
file_close

라는 함수를 만들고, 그 함수에서 MemFile, NetFile를 공통적으로 다룰 수 있게 구현할 수 있잖아요. 상속 없이. ㅎㅎ
그런데 oop가 왜 필요할까요?
이게 개발할 때 겁나 편하기 때문입니다. ㅎㅎ

플러그인 개발, GUI 툴킷 개발 등 oop 방식이 많이 사용되죠 ㅎㅎ

절차 지향 방식에서는 절차, 순서에 따라 개발을 하는데, 어느 정도 규모가 되면 코드가 너저분해집니다.

오늘은 피곤해서 여기까지만 합시다 ㅎㅎ

RG

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 군대 예능 출연해 줬으면 싶은 여자 스타는? 운영자 25/09/15 - -
AD 가전디지털, 액세서리 SALE 운영자 25/09/12 - -
2888922 아스카의 정체성에 가치투자자 호칭 입갤 [5] 아스카영원히사랑해갤로그로 이동합니다. 09.13 84 0
2888921 진짜 ai떄문에 코딩 불감증 걸림 ㅋㅋ 프갤러(121.139) 09.13 91 0
2888920 키, 국가유공자 후손이었네…박서준·임영웅 등 연예계 애국자 집안 스타 발명도둑잡기(118.216) 09.13 97 0
2888919 프로그래밍 마스터 하니까 현타온다. 프갤러(121.139) 09.13 71 0
2888917 결국 고수들의 커뮤니티는 없네 ㅋㅋ [8] 프갤러(121.139) 09.13 129 0
2888916 디씨말고 활발한 프로그래밍 커뮤니티 없나? [3] 프갤러(121.139) 09.13 109 0
2888914 AI주권 탈환...삼성, 네이버 글로벌 '反 엔비디아' 연합 전선 구축 발명도둑잡기(118.216) 09.13 88 0
2888913 ■요즘 스펙용 영어시험 뭐가 대세임? ㅇㅇ갤로그로 이동합니다. 09.13 71 0
2888912 mz세대라서, 윈도우 공부하려고 책 보면 [15] ㅇㅇ(211.235) 09.13 109 0
2888904 나는 딱히 알려줄게 없음. 애초에 [3] ㅆㅇㅆ(124.216) 09.13 94 0
2888902 근데 러스트로 게임 만들기 힘들긴함 게임은 여전히 상속 위주라 [5] ㅆㅇㅆ(124.216) 09.13 130 0
2888901 weston 설명 [1] 발명도둑잡기(118.216) 09.13 56 0
2888900 돈 들어갈 일들만 계속 생기는구나 발명도둑잡기(118.216) 09.13 56 0
2888899 가을 타는 노총각 지듣노 발명도둑잡기(118.216) 09.13 51 0
2888897 아니다 오히려 돈을 받아먹는 학원형 컴퍼니를 만들어서 프갤러(110.8) 09.13 58 0
2888894 신입을 그렇게 안뽑나? 무보수 인턴 컴퍼니 만들어서 쫍 빨아먹어도 되냐 [5] 프갤러(110.8) 09.13 119 0
2888893 프갤 처참하게 망해가는구만 [6] 아스카영원히사랑해갤로그로 이동합니다. 09.13 127 0
2888889 오늘 외출했다가 2만 8천원 털렸네 [1] 나르시갤로그로 이동합니다. 09.13 57 0
2888888 요즘 신입 취업이 진짜 힘든게 [4] ㅇㅇ(223.38) 09.13 170 0
2888887 weston을 freebsd에서 가능하도록 수정해야겠어 [2] 나르시갤로그로 이동합니다. 09.13 52 0
2888886 러스트 차단하니까 속이 다 시원하네 ㅎㅎ 나르시갤로그로 이동합니다. 09.13 53 1
2888883 게임 핵 << 이거 만드는거 루도그담당(58.239) 09.13 76 0
2888882 Rust, 러스트를 차단어 지장해야지 안 되겠다 나르시갤로그로 이동합니다. 09.13 47 0
2888881 카카오지도 api를 누르면 좌표가 나오는데 [3] 프갤러(211.234) 09.13 73 0
2888879 근데 대학생 때 이진탐색 버블 정렬 백날 배워봤자 안쓰긴 함. [2] 프갤러(27.166) 09.13 72 0
2888877 한국에선 러스트 쓸 일이 없다. 뭐가 메모리 안전이냐 프갤러(27.166) 09.13 61 0
2888876 하긴 러스트에 물 한번 잘못들어놓으면 인생 곤란해지긴 해 프갤러(27.166) 09.13 60 0
2888874 근데 기왕 비유니티,언리얼 할거면 러스트로 하지 왜 cpp지 [2] 프갤러(27.166) 09.13 79 0
2888873 대학교 때 c cpp로 게임 만드는 것도 좋은 경험이다. [5] 프갤러(27.166) 09.13 86 0
2888872 그냥컴공가서웹이나할껄 프갤러(223.38) 09.13 96 0
2888871 게임학과라 c c++하레 [2] 프갤러(223.38) 09.13 100 0
2888869 이건 왜 안되는거임? 파이썬임 [9] 프갤러(49.175) 09.13 96 0
2888865 문과생들에게 러스트 학습을 강요해야 하는 이유. [2] 프갤러(49.165) 09.13 82 0
2888864 실리콘이 녹는데 10분이상이 걸리네요. 넥도리아(119.195) 09.13 52 0
2888862 실리콘이 안 녹아요. 넥도리아(119.195) 09.13 51 0
2888861 죄송합니다 [3] 조루디(118.235) 09.13 81 0
2888859 무슨 생각으로 C/C++ 왜 하려 하는거냐? [2] 프갤러(59.16) 09.13 135 0
2888858 C#으로 날로 개발하다가 C++하니까 머리 개터지네 ㅇㅇ(106.241) 09.13 63 0
2888853 좇센징들은 왜이렇게 똑똑할까 ㅋㅋㅋ 뒷통수한방(1.213) 09.13 45 0
2888851 ㅆㅇㅆ한테 코딩배우고싶네 [1] 프갤러(223.38) 09.13 85 0
2888850 여자가 말만 걸어줘도 몇시간 내내 행복하더라 난 메쿠이료갤로그로 이동합니다. 09.13 51 0
2888848 고졸국비중년 국비신청했어 [1] ㅇㅇㅇ(125.130) 09.13 117 0
2888847 러스트는 신이 내린 언어입니다 나르시갤로그로 이동합니다. 09.13 55 0
2888833 러빨러들의 인지부조화 해결 과정 ㅎㅎ [2] 나르시갤로그로 이동합니다. 09.13 71 0
2888826 러빨러의 흔한 순환논증의 오류 [1] 나르시갤로그로 이동합니다. 09.13 69 0
2888822 웹싸개들 ai가대체한다는데 언제대체함??판사연예인 아나운서는 대체않하고? [4] 뒷통수한방(1.213) 09.13 98 0
2888819 [애니뉴스] 어떤 마술의 금서목록이 인기 있는 이유와 자유민주주의, 사이 프갤러(121.172) 09.13 45 0
2888817 ■웹개발할거면 컴공지식 생각보다 많이 필요없지 않냐? [2] ㅇㅇ갤로그로 이동합니다. 09.13 525 0
2888814 확실히 좇센징들이 지능이 높고 똑똑하긴한듯 ㅋㅋㅋㅋ [1] 뒷통수한방(1.213) 09.13 77 0
2888813 하느님 곧 온다는소리만 100년이 넘었누 ㅋㅋㅋㅋ 뒷통수한방(1.213) 09.13 45 0
뉴스 '살림남' 지상렬, 과몰입 부르는 신보람과의 1:1 데이트 현장 공개! 설렘지수 MAX! 디시트렌드 09.20
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2