이제 도서 관리자 응용의 Core를 개발합시다. 폼을 제외한 나머지 부분을 여기에서는 Core 엔진이라고 부를게요.
도서 정보는 BookStory 클래스로 정의합시다. BookStory 클래스는 차후에 라이브러리 형태로 만들어 제공할 수 있는 형식입니다. 접근 지정을 public 으로 설정한 부분은 라이브러리 형태로 만들 때 외부 프로젝트에서 접근할 수 있게 설정한 것입니다.
public class BookStory {
도서의 일련 번호는 읽기 전용 멤버로 선언합니다.
readonly int seqno;//도서 일련 번호
도서 일련 번호를 가져오기 할 수 있는 속성을 제공합니다.
public int No { get { return seqno; } }
도서 제목을 가져오기 할 수 있는 속성을 제공합니다.
public string Title { get; private set; }
설명을 가져오기 할 수 있는 속성을 제공합니다.
public string Description { get; set; }
도서 이미지 파일의 이름을 가져오기 및 설정하기 속성을 제공합니다.
public string ImageName { get; set; }
날짜를 가져오기 및 설정하기 속성을 제공합니다.
public DateTime DT { get; set; }
도서 정보를 입력 인자로 받아 속성을 설정하는 생성자를 제공합니다.
public BookStory(int no, string title, string description, string imagename, DateTime dt) { seqno = no; Title = title; Description = description; ImageName = imagename; DT = dt; }
ToString 메서드를 재정의하여 일련 번호를 문자열로 변환하여 반환합니다.
public override string ToString() { return No.ToString(); } }
▷BookStory.cs
//BookStory.cs using System; namespace MyReadingStory { /// <summary> /// 도서 클래스 /// </summary> public class BookStory { #region 멤버 필드 및 속성 readonly int seqno;//도서 일련 번호 /// <summary> /// 도서 일련 번호 - 가져오기 /// </summary> public int No { get { return seqno; } } /// <summary> /// 도서 제목 - 가져오기 /// </summary> public string Title { get; private set; } /// <summary> /// 설명 - 가져오기 및 설정하기 /// </summary> public string Description { get; set; } /// <summary> /// 이미지 이름 - 가져오기 및 설정하기 /// </summary> public string ImageName { get; set; } /// <summary> /// 날짜 - 가져오기 및 설정하기 /// </summary> public DateTime DT { get; set; } #endregion /// <summary> /// 생성자 /// </summary> /// <param name="no">일련 번호</param> /// <param name="title">제목</param> /// <param name="description">설명</param> /// <param name="imagename">이미지 이름</param> /// <param name="dt">날짜</param> public BookStory(int no, string title, string description, string imagename, DateTime dt) { seqno = no; Title = title; Description = description; ImageName = imagename; DT = dt; } /// <summary> /// 재정의 /// </summary> /// <returns>일련번호를 변환한 문자열</returns> public override string ToString() { return No.ToString(); } } }