디시인사이드 갤러리

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

갤러리 본문 영역

실용적 oop앱에서 작성

나르시갤로그로 이동합니다. 2025.09.10 01:25:25
조회 75 추천 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 - -
2889664 오늘의 영상 기획 실마리: 지하철 안에서 잠 자는 뮤직비디오 발명도둑잡기(118.216) 09.16 40 0
2889662 20년 전, 미국의 쇠퇴를 예견한 에마뉘엘 토드, '서구의 패배'를 다시 발명도둑잡기(118.216) 09.16 50 0
2889661 맥주 한잔 하고 먹는 라면에 총각김치 왜이렇게 맛있냐?? ㅇㅇ(223.39) 09.16 31 0
2889658 이 사람 아이피 팔도중에 어디임 서울경기 강원 대구 전라도 경상도 중에 프갤러(115.139) 09.16 44 0
2889654 파이썬 잘 아는사람 있음 ㅇㅅㅇ?? 학기문제 알려줘 [4] ㅇㅇ(223.39) 09.16 77 0
2889653 포폴용 [7] ㅇㅇ(125.205) 09.16 75 0
2889650 컴퓨터 파워도 같이 보내면 어쩔까 삼성 파워, 메인보드 시디도 같이 넥도리아(119.195) 09.16 66 0
2889649 ‘케데헌’은 왜 한국이 아닌 미국에서 만들어졌을까 발명도둑잡기(118.216) 09.16 38 0
2889648 Best of Ki-jung | Parasite 발명도둑잡기(118.216) 09.16 30 0
2889647 ❤✨☀⭐⚡☘⛩나로님 퇴근합니당⛩☘⚡⭐☀✨❤ Naro갤로그로 이동합니다. 09.16 36 0
2889646 "처음부터 끝까지 그냥 쓰레기"... 자기 작품을 설명한 예술가의 본심 발명도둑잡기(118.216) 09.16 30 0
2889645 진지하게 주식을 못해서 평생 가난하게 살 확률이 존재하냐?? [2] ㅇㅇ(223.39) 09.16 65 0
2889644 술이 너무 먹고싶다 [1] 주아갤로그로 이동합니다. 09.16 58 0
2889643 새소리 스펙트럼 분석 발명도둑잡기(118.216) 09.16 30 0
2889641 담배 약 술 주아갤로그로 이동합니다. 09.16 37 0
2889640 논문 초록 읽어봤는데 대강 이런 원리라네 [1] ㅆㅇㅆ(124.216) 09.16 130 0
2889638 이제 배달을 빛의 속도로 받을 수 있는거냐? [1] 루도그담당(58.239) 09.16 56 0
2889636 다익스트라 알고리즘은 모든 노드에 대해서 들렀을때 최단거리 아녔나 [2] ㅆㅇㅆ(124.216) 09.16 97 0
2889635 예아 구글이 데이크스트라래 [3] 루도그담당(58.239) 09.16 81 0
2889634 근데 왜 다익스트라라 안하고 데이크스트라라고 하는거냐 [2] ㅆㅇㅆ(124.216) 09.16 72 0
2889632 데이크스트라 알고리즘 깬거 나왔다는데 [3] 루도그담당(58.239) 09.16 82 0
2889629 윤1공주 라 방 뿍뿍(119.202) 09.16 57 0
2889627 초록 뿍뿍(119.202) 09.16 37 0
2889624 뿡뿡 뿍뿍(119.202) 09.16 40 0
2889623 날틀 뿍뿍(119.202) 09.16 40 0
2889622 AI로 Ada 코드 잘 써짐 나르시갤로그로 이동합니다. 09.16 45 0
2889621 아니 jdbc session 이거 좆같네 ㅇㅇ갤로그로 이동합니다. 09.16 39 0
2889618 ‘인공지능이 인류를 말살한다?’ 큰 파장을 낳은 AI2027 보고서 발명도둑잡기(118.216) 09.16 35 0
2889617 <냥육권 전쟁> 한대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 38 0
2889615 <38사기동대> 있대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 30 0
2889613 오늘의 출판 기획 실마리: 지하철 온도 민원 등 항의 SMS,이메일 모음 발명도둑잡기(118.216) 09.16 41 0
2889612 ㅆㅇㅆ, 러뻘럼 나 등장하면 빤쓰런하는 이유 나르시갤로그로 이동합니다. 09.16 43 1
2889611 <은수 좋은 날> 한대서 생각나는 예전 글 발명도둑잡기(118.216) 09.16 34 0
2889610 소규모 PG사 vs 솔루션 SI 회사 [1] 프갤러(112.172) 09.16 62 0
2889609 근로기준법으로 1년 휴가 30일로 늘려야돼 프갤러(218.154) 09.16 40 0
2889608 나의 추억(생각하고 싶지 않은 기억) 놓아주려고 하는데 넥도리아(220.74) 09.16 40 0
2889607 [애니뉴스] 귀인환등초 23화 연기 프갤러(121.172) 09.16 43 0
2889606 [애니뉴스] [공지] 서버 다운 현상에 관해서 [3] 프갤러(121.172) 09.16 67 0
2889604 ㅆㅇㅆ은 지옥에나 떨어져라.. [4] 나르시갤로그로 이동합니다. 09.16 87 2
2889603 머리말, 꼬리말 테스트 나르시갤로그로 이동합니다. 09.16 35 0
2889602 ㅆㅇㅆ 이제 6.6, 6.7. 6.8 셋 남았네 나르시갤로그로 이동합니다. 09.16 43 2
2889601 ㅆㅇㅆ 어제 그토록 허위로 나를 모욕해놓고는 나르시갤로그로 이동합니다. 09.16 40 3
2889600 내가 죄인이다. 욕구가 많은 동물이라서 미안하다. 911 테러 올려서 미 [1] 넥도리아(119.195) 09.16 44 0
2889599 첩만 수십명, 사생아 백명? 난리난 소림사 주지스님의 진실 발명도둑잡기(118.216) 09.16 36 0
2889598 오늘도 AI 칭송하는 ㅆㅇㅆ [4] 나르시갤로그로 이동합니다. 09.16 61 1
2889597 중고나라 웹 글쓰기 금지 시행, 앱으로만 발명도둑잡기(118.216) 09.16 49 0
2889596 솔직히 그렇잖아. 단순 로그인 기능 만들어줘 이러는 애랑 [2] ㅆㅇㅆ(124.216) 09.16 77 1
2889595 나는 AI를 다들 써야 내 가치가 커진다 생각해 [3] ㅆㅇㅆ(124.216) 09.16 74 1
2889594 우울하네요 (기획) [1] 프갤러(49.174) 09.16 45 0
2889593 ❤✨☀⭐⚡☘⛩나로님 시작합니당⛩☘⚡⭐☀✨❤ [2] Naro갤로그로 이동합니다. 09.16 40 0
뉴스 ‘전참시’ 최현우, 충격의 연속인 전현무 최면 그 뒷이야기 공개! 디시트렌드 09.19
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2