프로그래밍 공부

프로그래밍 700

카테고리 설명
  • Class는 객체지향 프로그래밍(OOP)에서 사용되는 구조체의 한 종류로 Clas는 데이터와 함수를 함꼐 묶어서 사용할 수 있도록 해주며, 객체를 생성하여 사용할 수 있다. Class의 장점 캡슐화(Encapsulation) 데이터와 관련된 함수를 하나로 묶어서 외부에서 함부로 접근하지 못하게 해 데이터의 손상을 방지하고 코드의 동작성을 보장한다. 상속성(Inheritance) 다른 클래스로부터 기존 함수와 데이터를 물려받아 사용할 수 있으며, 코드의 재사용성을 높인다. 다형성(Polymorphism) 같은 이름의 함수를 다양한 방법으로 사용할 수 있다. 유지보수성(Maintainability) Class는 코드의 재사용성과 가독성을 높여 유지보수가 용이하다. Class의 단점 구현의 복잡성 (Imple..

  • 객체지향적 프로그래밍은 4가지 특징이 있다. 때로는 5가지 특징이 있다고 하는데, 캡슐화에서 다른 한가지 특징이 자동적으로 파생되어 나옴으로 4대특징이라 해도 무방하고 5대 특징이라고 해도 무방하다. 객체지향의 4대 특징은 다음과 같다. 추상화 (Abstraction) 어떠한 특성만을 가지고서 재조합 하는것을 뜻한다. 이는 프로그램에서 필요한 부분만 외부에 노출시키고 필요없는 부분을 감춤으로써, 프로그램 내부의 객체 구현방법을 몰라도 사용할 수 있도록 해준다. 그리하여 객체별 프로그래밍이 가능해지고 이는 대규모 프로젝트 에서의 효율적인 작업을 야기한다. 캡슐화 (Encapsulation) [ 여기에서 정보은닉 (Information hiding)이 파생된다. ] 객체의 속성이나 동작들을 클래스로 묶는것을..

  • 프로그래밍을 할 떄 객체 지향적인 프로그래밍을 하는 방법을 이야기한다. 코드의 재사용성이 높고 유지보수가 쉬우며, 대규모 프로젝트에 적합하다. 장점 : 코드의 재사용성이 높고 유지보수가 쉽다. 대규모 프로젝트에 적합하다. 단점 : 구현이 복잡하고 이해하기 어렵다. 사용하는 언어 : Java, C++, Python 등

  • 프로그램을 작성하는데에 절차 중심적인 방법을 사용하는 프로그래밍 방법이다. 복잡하지 않은 작은 규모의 프로그램을 작성하기 적합하고, 구현이 간단하며 이해하기가 쉽다. 장점 : 구현이 간단하고 이해하기 쉽다. 단점 : 코드의 재사용성이 낮고 유지보수가 어렵다. 사용하는 언어 : C, Fortaran 등. 일반적으로 사용하는 C언어의 프로그래밍 방법을 이야기한다. 위와 같은 식으로 Class 같이 객체 구분을 하지 않은 코딩을 말한다.

  • C++에서는 함수 오버로딩 을 허용한다. 그러나, 함수 오버로딩을 사용하지 않고도 비슷하게 사용할 수 있는 기능이 있다. 이를 template이라고 한다. 다음은 오버로딩 을 하지 않고도 template를 사용하는 예시이다. C++에서는 오류 검출을 위한 assert를 지원한다. 자세한 설명은 링크를 참조. C++에서는 functional 방식을 지원한다 자세한 설명은 링크를 참조. C++에서는 가변인자 함수 형식을 지원한다. 자세한 설명은 링크를 참조. C++과 C,JAVA등 프로그래밍의 대부분 종류는 POP와 OOP로 구성되어있다. 프로그래밍 패러다임.(Programming Paradigm) 이라고 한다. OOP 프로그래밍은 객체지향적 프로그래밍 이기 때문에 4가지 특징을 가지게 된다. 자세한 설명은..

  • C++에서는 가변함수라는 강력한 임의 매개변수를 받을 수 있는 방법을 제공한다. 가변함수는, 매개변수의 숫자가 정해지지 않은 함수 를 의미한다. 이는, 고정적인 매개변수의 숫자가 아닌 전체 매개변수의 숫자를 셈 하여 메모리가 허용하는 한 무한한 매개변수를 받아서 연산할 수 있다는 의미이다. 가변 함수를 사용하기 위해 사용하는 라이브러리는 #include 를 사용하고, va_list 가변인자 목록을 나타내는 타입으로 받아온 모든 매개변수를 배열로 받아와서 처리한다. va_start va_list타입의 변수와 가변인자의 마지막 인자 이전의 인자의 위치값을 받아온다. 그 후 초기화 작업을 진행해준다. va_arg 가변인자 목록에서 값을 가져오는 함수로, va_list 타입의 변수와 가져올 값의 타입을 전달받는..