프로그램

    MVC 패턴, 제대로 알고 쓰자

    MVC 패턴, 왜 사용할까 개발자는 프로그램을 개발할 때 당장의 개발 뿐만 아니라 이후에 있을 유지보수나 기능 추가, 에러사항에 대한 대응 등을 고려한다. 코드 한 줄을 변경해야 할 때, 매번 거의 모든 코드를 변경해야 한다면 개발자들은 힘들 것이다. 다시 말하자면 이는 각 코드가 서로에 대한 의존도가 높다는 것이고, 앞서 말한 상황을 피하기 위해서는 의존도를 낮춰야 한다는 것이다. MVC 패턴이란 무엇이고, 어떻게 사용할까. 간단한 개념과 예시가 다음 링크에 있다. MVC 아키텍처란 언어 : JAVA 수업 주제 : Class 및 객체지향의 개념 MVC 아키텍처란 Class란 Class란 메서드(함수)와 필드(변수)의 집합체이다. 또한 Class는 프로그램을 개발할 때 기능 단위로 분리하여 작성한다. 자..

    [15] 프로그램 설계 방법론 ( 텍스트 및 예외 처리)

    파일을 영구 보존하기 위해서는 RAM이 아니라 외부 저장 장치에 저장해야 한다. 텍스트 # String 텍스트는 일종의 문자열이고, 수정불가하다. 즉, immutable하다. String과 Char[]는 다르다. String은 immutable하지만 Char[]은 mutable하다. .equals()의 매개변수에는 Object가 들어가서 어떤 것이든 들어간다. 다른 말로 유연하다. package example; public class example_string { public static void main(String[] args) { String s = "abc"; String t = "abc"; System.out.println(s==t); System.out.println(s.equals(t)); ..

    [14] 프로그램 설계 방법론 ( GUI 이용 )

    GUI를 사용하여 다음 설계도를 구현해 보자.

    [13] 프로그램 설계 방법론(interface 실습)

    instanceof 이것은 매개변수에 자식 클래스를 포괄할 수 있는 부모 클래스가 들어갔을 때 어떤 자식 클래스인지 비교를 위해 사용한다. 아래와 같이 사용할 수 있다. if(k instanceof IntegerKey) System.out.println(((IntegerKey)k).getInt()); else if(k instanceof StringKey) System.out.println(((StringKey)k).getString()); else System.out.println("모르는 Key 출현 오류"); Abstract Class interface는 아무것도 없는 빈 껍데기이고, 그것을 구현하면 class가 된다. 그 중간 단계를 abstract class라고 부른다. abstract 클래스를..

    [12] 프로그램 설계 방법론(interface, class hierarchy)

    인터페이스(Interface) 일반적인 MVC 모델은 클래스끼리의 종속 관계가 있어 구현의 분업이 어렵다. 이러한 문제를 해결하기 위해 interface를 이용한다. interface를 이용하면 종속 클래스를 대신해 컴파일이 가능하기 때문이다. 다음과 같은 프로그램이 있다고 하자. 이것을 MVC(Model, View, Controller)로 팀을 분업해서 프로그래밍하기란 어려운 일이다. 따라서 인터페이스를 사용하여 이 프로그램을 분업화 한다면 아래 그림과 같이 설계도를 구성할 수 있다. 그리고 인터페이스 내부의 코드는 다음과 같다. public interface SlidePuzzleBoardInterface { public boolean move(int w); public PuzzlePiece[][] b..

    [11] 프로그램 설계 방법론(2차원 배열)

    시험 : 코딩 시험(범위 : 오늘 배운것 까지) 작성해야 할 코드가 많을 수 있다. Ragged Arrays : 들쭉날쭉 배열(행의 개수는 정해져있지만, 열의 개수는 정해지지 않음) 실습 - 슬라이드 퍼즐 게임 :