본문 바로가기

패스트캠퍼스 환급 챌린지

[패스트캠퍼스 수강 후기] {자바 인강} 100% 환급 챌린지 {6} 회차 미션

Chapter05 클래스와 객체: 객체지향 프로그래밍과 클래스

객체 지향 프로그래밍(OOP)이란?

객체 지향 프로그래밍(이하 OOP)는 컴퓨터 프로그램을 “객체(Object)"들의 모임으로 파악하고자 하는 프로그래밍의 패러다임 중에 하나이다. 각 “객체(Object)" 들은 서로 메시지를 주고 받을 수 있으며 데이터를 처리할 수 있다.

객체 지향 프로그래밍(OOP)의 장점은

  • 프로그램을 유연하고 변경이 용이하게 만든다.
  • 프로그램의 개발과 보수를 간편하게 만든다.
  • 직관적인 코드 분석을 가능하게 한다.

위의 장점들을 관통하는 객체 지향 프로그래밍의 중요한 특성은 강한 응집력(Strong Cohesion)과 약한 결합력(Weak Coupling)을 지향한다는 점이다.

소프트웨어 공학에서 말하는,
응집력(cohesion) : 프로그램의 한 요소가 해당 기능을 수행하기 위해 얼마만큼의 연관된 책임과 아이디어가 뭉쳐있는지를 나타내는 정도. 프로그램의 한 요소가 특정 목적을 위해 밀접하게 연관된 기능들이 모여서 구현되어 있고, 지나치게 많은 일을 하지 않으면 그것을 응집력이 높다고 표현한다.

결합력(coupling) : 프로그램 코드의 한 요소가 다른 것과 얼마나 강력하게 연결되어 있는지, 얼마나 의존적인지를 나타내는 정도. 결합력이 낮다는 것은 한 요소가 다른 요소들과 관계를 크게 맺고 있지 않은 상태를 의미한다.

OOP의 경우 클래스에 하나의 문제 해결을 위해 데이터를 모아 놓은 객체를 활용한 프로그래밍을 지향하므로 응집력을 강화하며, 클래스 간에 독립적으로 디자인함으로써 결합력을 약하게 할 수 있다.

출처: velog.io/@cyranocoding/%EA%B0%9D%EC%B2%B4-%EC%A7%80%ED%96%A5-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%B0%8DOOP-Object-Oriented-Programming-%EA%B0%9C%EB%85%90-%EB%B0%8F-%ED%99%9C%EC%9A%A9-%EC%A0%95%EB%A6%AC-igjyooyc6c

 

객체 지향 프로그래밍(OOP : Object Oriented Programming) 개념 및 활용 정리

객체 지향 프로그래밍(OOP)이란? 객체 지향 프로그래밍(이하 OOP)는 컴퓨터 프로그램을 “객체(Object)"들의 모임으로 파악하고자 하는 프로그래밍의 패러다임 중에 하나이다. 각 “객체(Object)" 들은

velog.io

CamelCase란 단어가 합쳐진 부분마다 맨 처음 글자를 대문자로 표기하는 방법입니다.

두 개 이상의 단어가 모인 합성어에서 사용됩니다. 쌍봉낙타의 등과 닮았다고 하여 CamelCase라는 이름이 붙었습니다.

[ ex) MsgBoxBtn1, sockBind, PrintLblText,… ]

 

CamelCase는 lowerCamelCase와 UpperCamelCase로 세부적으로 나눌 수 있습니다.

 

 

◇ lowerCamelCase

 

camelCase에서, 맨 앞글자를 소문자로 표기하는 것을 뜻합니다.

나머지 뒤에 따라붙는 단어들의 앞글자는 모두 대문자로 표기합니다.

[ ex) namuWikiReflecBeatComponent, beatMania,… ]

 

 

◇ UpperCamelCase (=PascalCase)

 

CamelCase에서, 맨 앞글자를 대문자로 표기하는 것을 뜻합니다. PascalCase라고도 불립니다.

나머지 뒤에 따라붙는 단어들의 앞글자는 모두 대문자로 표기합니다.

[ ex) NamuWikiReflecBeatComponent, BeatMania,… ]

 

 

 

■ snake_case

 

snake_case란 단어가 합쳐진 부분마다 중간에 언더라인을 붙여 주는 방법입니다.

일반적으로는 언더라인을 사용하나, 언더라인 대신 하이픈(-)을 써도 snake-case라고 할 수 있습니다. (참조)

그렇지만 가능한 한 언더라인을 사용하는 편이 무난합니다.

[ ex) Night_Of_Knights, noumi_kudryavka_anatolyevna_strugatskaya,… ]

 

snake_case는 Train_Case와 spinal_case로 세부적으로 나눌 수 있습니다.

 

 

◇ Train_Case

 

Snake_Case에서, 각 단어의 맨 앞글자를 대문자로 표기하는 것을 뜻합니다.

[ ex) Visual_Studio_Community_2013, Not_Upper_Camel_case, … ]

 

 

◇ spinal_case

 

snake_case에서, 각 단어의 맨 앞글자를 소문자로 표기하는 것을 뜻합니다.

[ ex) visual_studio_community_2013, not_lower_camel_case, … ]

출처: blog.naver.com/ege1001/220466932974

 

[ETC] 코딩 스타일 : 네이밍 문법 (CamelCase, snake_case)

에군이입니다.이번 포스트에서는 코딩 기술이 아닌 네이밍 문법에 대해 설명해보도록 하겠습니다. 이 포스...

blog.naver.com

 

 

2. 인스턴스

 

 

 

 

 

 

 

 

 

 

 

올인원 패키지 : JAVA 웹 개발 마스터👉https://bit.ly/35aoeAW