Tiny Bunny '분류 전체보기' 카테고리의 글 목록 (14 Page) - 솜님의 블로그
솜님의 블로그

분류 전체보기 183

카테고리 설명
  • 객체 지향 프로그래밍객체 지향 프로그래밍이란, 말 그대로 객체를 지향하는 프로그래밍 방법을 말한다.객체는 일반적으로 상태를 표현할 수 있고 우리가 행동으로 실행할 수 있는 모든 것들을 말한다.우리는 일런 객체를 중심으로 프로그램 구조를 설계하고 프로그래밍하는 것을 객체 지향 프로그래밍이라고 한다. 자바는 객체를 기반으로 하는 대표적인 프로그램이다.   객체와 클래스(class)클래스란?객체 지향 언어에서 가장 중요한 용어인 클래스는 한마디로 객체를 생성하기 위한 제작 설명서이다.자바에서는 하나의 클래스로 여러 개의 객체를 생성, 사용할 수 있다.ex) 클래스(자동차 설계도) → 객체(자동차) 클래스 선언클래스의 기본 구조는 다음과 같다.public class Car{ // Car 클래스 선언} 클래스의 ..

  • MVC 패턴을 사용하여 커뮤니티를 만든다.수업 중 일부는 강사님께서 문제 풀이를 해주셨고, 해주시지 않은 나머지 부분을 팀원들과 하나씩 맡아서 다음날까지 완료해 가는 미션이었다.[요구사항] //  프로그램이 제공하는 기능과 CRUD 정의회원가입 MemberDAO C로그인 MemberDAO R 그중에서도 selectOne로그아웃 (컨트롤러의 역할, 시스템에 아무런 변화도 없으니까!)글 작성 BoardDAO C글 삭제 BoardDAO D글 전체 출력 BoardDAO R selectAll글 검색 : 제목으로 검색 BoardDAO R selectAll글 검색 : 작성자 이름으로 검색 BoardDAO R selectAll글 1개 선택해서 보기 BoardDAO R selectOne글 내용 변경 BoardDAO R ..

  • 배열 배열이란?같은 자료형의 변수를 지정하여 여러 데이터를 저장할 수 있는 저장 공간을 의미한다.이렇게 여러 데이터를 담을 수 있는 구조를 자료구조라고도 한다. 변수는 1개의 데이터만 저장할 수 있지만, 배열은 여러 개의 데이터를 저장하고 관리할 수 있다.  배열의 선언배열을 사용하려면 변수와 마찬가지로 배열을 선언해야 한다.배열을 선언하는 방법은 아래와 같다.// 자료형[] 변수 이름;int[] arr;// 자료형 변수 이름[];int arr [];대괄호 []는 배열의 연산자를 의미한다.보편적으로는 자료형 뒤에 붙이는 것이 가독성이 높아 주로 사용된다. null 키워드우리가 배열을 선언하고 값을 부여하지 않을 경우, 시스템은 배열 변수를 만들 때 'null'이라는 키워드를 부여한다.이때  null의 의..

  • 코드는 크게 2가지 분류로 나뉜다. 1) 사용자와 닿아있는 부분          - 프론트엔드 (데이터를 조금 다룰 수 있다는 뜻, 실제 어떠한 기능을 하지는 x)2) 프로그램에서 기능을 수행하는 부분          - 백, 서버, DB          - DB & DBMS (MySQL, 오라클, ....)          - 서비스 단, Controller, 비즈니스 단 MVC란?Model View Controller를 의미한다.M V C 패턴으로 코드를 작성하면 유지보수가 용이하다.  [M] : DB, DBMS [V] : 사용자에게 출력을 하는 메서드, 사용자에게 입력을 받아오는 메서드[C] : V와 M을 조합하는 영역  View프론트엔드사용자에게 입출력을 하고/받아오는 메서드입출력을 담당하는 것이..

    JAVA/java

    [JAVA] MVC 패턴_1 NEW

    2024.07.17
    댓글
  • 프로그램을 만들기 위해서는 자료구조를 무엇을 선택할지가 중요하다.자료구조는 배열[], 배열리스트, 연결리스트, 집합, 맵, 트리,... 등 다양한 구조가 있다.이 중 웹개발시 자주 사용되는 것은 배열리스트와 맵이다. 컬렉션1) 모든 컬렉션이 toString() 오버라이딩 되어있어서 전체 출력이 예쁘게 나온다2) 다양한 메서드들이 이미 만들어져 있다.3) 모든 컬렉션들은 자료형을 제한하지 않고 저장할 수 있다.     하지만 자료형 제한 없이 사용하는 것은 개발자에게 불리하기 때문에 , 자료형을 제한(강제)해서 사용한다.     자료형 강제 == 제네릭이라고 한다. ==  배열리스트 vs 배열배열리스트는 개수가 무제한배열은 개수가 정해져 있음공통점은 둘 다 데이터 관련성 O, 자료형 정해짐 배열리스트imp..

  • 인터페이스추상클래스와 인터페이스 개념이 같이 다니는데, 인터페이스가 훨씬 더 중요하다. 같은 기능을 수행하는 메서드들끼리 이름이나 인자, 아웃풋(리턴)이 다르면 구현이 불가함==유지보수가 불리하다. 개발자의 제 1 목표는 유지보수 용이 극대화이다.같은 기능을 수행하는 메서드들끼리 이름이나 인자, 아웃풋(리턴)이 같아야 하므로메서드 시그니쳐를 강제해야 할 필요성이 있다. 오버라이딩을 하면 메서드 시그니쳐가 같기 때문에, 오버라이딩을 강제해야 한다!하지만 오버라이딩은 상속관계에서만 사용할 수 있는데, 상속관계가 아닌 경우가 있다. 이럴 때 활용하는 것이 인터페이스이다. 인터페이스는implements 인터페이스명 으로 사용한다. 예제.워치를 활용하여 Phone의 powerOn과, soundUP/Down을 구현..

  • 반복문반복문은 프로그램 코드 내에서 똑같은 명령을 반복하여 수행하도록 제어하는 명령문이다.자바에서 사용하는 반복문의 종류는 for문, while문, do-while문이 있다.   for문for문은 주로 반복 횟수가 정해져 있을 때 사용한다.for문의 기본 구조는 다음과 같다.for(①초기화식 ; ②조건식 ; ④증감식){ ③실행문;}① 초기화식 : 반복문에 사용할 변수를 초기화한다.② 조건식 : 반복 수행할 범위를 구현한다.③ 실행문 : 조건식이 true이면 false가 나올 때까지 반복하여 실행문을 수행한다.④ 증감식 : 초기값을 증가하거나 감소시킵니다.  중첩 for문중첩 for문은 말 그대로 for문 안에 또 다른 for문을 사용하는 경우를 말한다. int count = 0;for(int i=0; i..

  • 객체지향언어의 4가지 특징1. 캡슐화2. 추상화3. 상속4. 다형성  추상화란?abstarct을 붙인 클래스를 추상 클래스abstarct을 붙인 메서드를 추상 메서드라고 한다. 추상 클래스는 객체화 x 클래스들의 틀을 의미한다.추상 메서드는 기능구현 x 오버라이딩을 강제하는 역할이다. 추상메서드가 1개 이상 존재하려면,해당 클래스가 반드시 추상클래스여야만 한다. 추상화의 역사새로운 클래스를 만들려면..?1. 카피하기 위해서 기존의 것들을 살펴본다.2. 내가 만들려는 클래스가 기존 클래스들의 하위가 아니라, 기존 클래스 급이다..!!3. 복사해도 되지만 사실 안됨!!      --> 만약 멤버변수가 어마어마하게 많다면?  다 할 수 있는가? : No / 따라서 복사 X4. 다른 클래스들을 살펴보니 모두 공..

  • 객체지향언어의 4가지 특징1. 캡슐화2. 추상화3. 상속4. 다형성  캡슐화란?기능을 단위별로(java 기본 단위인 클래스별로)  보관하는 java 특성 덕분에, 구현에 필요한 기능이 있다면 이미 만들어진 것을 가져오면 된다는 내용이다. == 클래스별로 나누는 행동을 모듈화, 컴포넌트화라고 한다.  내가 사용하는 클래스, 패키지, 코드 덩어리들.. >> 내용을 몰라도 사용방법(용법, 언제 쓰는지)만 알면 쉽게 가져다가 사용할 수 있다. 내가 개발한 내용을 상대방이 몰라도 쓸 수 있게 묶어서 배포 == 정보은닉(hiding)그래서 함수명이 쉬워야 하고, 함수의 인자와 아웃풋이 그럴듯해야 한다. ex 1)int plus(int[] datas)boolean isEmpty(int[] datas, int cnt)..

  • 객체지향언어의 4가지 특징1. 캡슐화2. 추상화3. 상속4. 다형성 예제 1.Animal a = new Dog(); == 동물이 저장될 수 있는 공간 a에 강아지 객체를 저장해 주세요. 라면,class Xxx extends Animal로 생성한 클래스들은 Dog 자리에 다 들어갈 수 있음. 동물.hello() 안녕강아지.hello() 멍멍으로 설정했고, a가 강아지 객체라면a.hello() >> 실행결과 : 멍멍 위와 같은 것을 동적바인딩이 일어났다고 한다.  예제 2. 점찍기class Point { int x; int y; Point(int x, int y){ // 생성자 this.x=x; this.y=y; } void move(){ } void m..

  • 제어문제어문은 실행문의 수행 순서를 변경하는 것으로 조건문, 반복문, 분기문이 있다.조건문과 반복문은 실행 흐름을 제어하는 제어식과 수행할 실행문으로 구성되는데, 수행할 실행문이 여러 개 있으면 중괄호 {}로 묶어야 한다.ex)만약 비가 온다면 {          우산을 가지고 갑니다.}그렇지 않다면 {          우산을 가져가지 않습니다.}    조건문조건문은 조건식에 따라 프로그램의 흐름을 제어할 수 있는 문법이다.결과값 : boolean, 결과에 따라 어떤 구문을 실행할지 결정됨 조건문의 종류크게 if문과 switch문이 있다.일반적으로 고려해야 하는 조건이 적다면 if,조건이 많다면 switch문을 사용하는 것이 효율적이다. if문if(조건식){ 코드1;}위 형태가 자바에서 구현하는 가장 기..

  • 연산자의 종류연산자 분류종류연산자기능단항부호+, -, *, /, %사칙연산, 나머지 계산증감++, --음수, 양수 부호논리!논리 부정이항논리&, |, &&, ||논리곱, 논리합문자열+문자열 연결대입=, +=, -=, *=, /=, %=우변의 값을 좌변에 대입비교==, !=, >, =, 값 비교삼항조건식조건식 ? A : B조건식 결과에 따라 A, B 선택    연산자 우선순위와 연산 방향자바에서 사용하는 다양한 연산자들은 연산 방향과 우선순위가 정해져 있다. 우선순위와 연산 방향은 아래와 같고, 복잡한 연산식은 괄호()를 이용해 우선순위를 정하는 것이 좋다.   단항 연산자 부호 연산자말 그대로 부호를 나타내는 연산자.숫자 앞에 + 가 있으면 양수, - 가 있으면 음수를 뜻한다.문자형 char와 논리형 b..