분류 전체보기 87

[JAVA] 변수

1. 변수의 개수 실생활 속 변수의 개념 지정된 변수 안의 값이 다양하게 변경될 수 있음을 의미 바로 변수의 기본 개념 프로그래밍 속 변수의 개념 변수는 컴퓨터 프로그램이 처리할 데이터를 저장하는 저장 위치 자바 프로그램의 경우 데이터를 컴퓨터의 메모리 공간에 저장하는데, 데이터가 저장되는 메모리 주소가 복잡하기 때문에 메모리 주소 대신 메모리 주소의 이름 지정 메모리 주소의 이름, 메모리 위치의 이름을 변수라고 하며, 저장된 값은 변경 가능 변수는 특정 자료형의 값을 저장하는 메모리 공간 위치 변수는 이름과 자료형을 가지고 있으며, 자료형에 따른 값이 저장 2. 변수 선언과 초기화 변수 선언과 기본 형식 자바 프로그램에서 변수를 사용하려면 변수를 선언해야 함 변수 선언의 기본 형식은 다음과 같음 자료형..

Back/Java 2024.04.11

[JAVA] 자바 프로그램 기본 구조

프로그램은 하나 이상의 클래스로 구성 각 클래스의 프로그램 코드를 별도의 소스 파일에 저장하고 각 소스 파일명을 소스 파일에 정의된 클래스명과 동일하게 지정 이름이 다르면 컴파일 과정에 오류 발생 모든 자바 소스 파일은 확장자가 .java 1. 패키지 클래스가저장되는 네임스페이스 기능을 기반으로 클래스를 구성하는 데 사용 package 패키지명;​ 생략하면 이름이 없는 기본 패키지에 클래스명만 선언 2. 클래스 클래스명을 선언하려면 class 키워드 사용하고 키워드 뒤에 클래스명을 선언 클래스명은 대부분 첫 글자가 대문자로 선언 전체 클래스 내용은 중괄호({}) 안에 포함되어야 함 public 키워드를 사용하여 패키지 외부에서 클래스의 접근 가능성 지정 public class 클래스명 { } 자바는 대문..

Back/Java 2024.04.11

[JAVA] 자바 구성 요소

1. 자바 플랫폼- 자바 프로그래머는 사람이 읽을 수 있는 고급 프로그래밍 언어로 프로그램 작성 - 컴퓨터의 CPU나 칩은 고급 프로그래밍 언어로 작성된 소스코드를 이해하지 못하고 기계어 코드만 이해 가능 - 기계어 코드는 CPU 수준에서 실행, CPU 모델에 따라 기계어 코드 다름 - 컴파일러가 소스 코드를 이해한 후 기계가 이해할 수 있는 코드로 변역 - 처리 기능은 JDK, JRE, JVM 내에서 발생 자바 개발 키트(Java Development Kit, JDK) 애플릿과 자바 애플리케이션 만드는 데 사용되는 소프트웨어 개발 환경 자바 개발자는 원도우, 맥. 솔라리스, 리눅스에서 사용 가능 자바 프로그램을 코딩하고 실행하는 데 도움이 됨 동일한 컴퓨터에 둘 이상의 버전 설치 가능 - JDK 특징 ..

Back/Java 2024.04.11

[JAVA] 자바 언어

1. 자바의 개요 1995년 썬마이크로시스템즈가 출시한 자바는 다양한 플랫폼에서 사용할 수 있는 객체지향 프로그래밍 언어 처음에는 가전제품에 탑재되어 동작하는 프로그램을 위해 개발되었지만, 지금은 웹 애플리케이션 개발에 가장 많이 사용하는 언어 가운데 하나 자바 프로그래밍 언어는 C 및 C++ 프로그램 언어와 유사하나 고급 기능과 단순화된 기능을 갖춘 객체지향 언어이면서 모든 플랫폼에 독립적이므로, 특정 하드웨어나 운영체제에 제한 없이 실행되는 프로그램을 작성할 수 있음 2. 자바를 배워야 하는 이유 자바 외에도 C, C++, 파이썬 등 다양한 프로그래밍 언어 있음 1) 자바는 현재 가장 널리 사용되는 프로그래밍 언어 중 하나입니다 오라클에 따르면 30억 개의 장치에서 자바를 실행 중 안드로이드 앱도 자..

Back/Java 2024.04.11

[DB] 정보시스템 구축 & 데이터베이스 설계

데이터베이스 설계는 독립적인 분야로 간주 될 수 있지만 정보시스템을 구축하는 과정의 일부 데이터베이스 설계의 특성을 이해하기 위해서는 정보시스템 구축을 위한 전체적인 절차 가운데서 데이터베이스 설계가 어떤 위치를 차지하는가를 살펴보는 것이 중요 정보시스템이 S/W이므로 기본적으로 개발 절차를 따름 다른 S/W와 달리 대부분의 정보시스템은 데이터베이스를 기반으로 개발이 이루어진다는 특징이 있음 1. 정보전략 계획 수립(Information Strategic Planning) 정보시스템 구축의 선행 단계로서 정보시스템을 구축하고자 하는 기업의 경영전략 및 장단점 분석하고 현행 업무 절차를 평가하여 개선사항 도출하여, 새로운 전략 및 업무 절차에 기초하여 정보 시스템 구축 계획을 수립하는 단계 정보시스템 구축..

[DB] 데이터베이스 설계

정보시스템을 구축하거나 웹사이트 개발할 때 데이터베이스를 제외하고 생각하기 어려움 정보시스템이나 웹 사이트에서 필요로 하는 데이터를 데이터베이스에 저장하고나중에 다시 불러오는 형태로 개발 시스템 개발자들은 기본적으로 데이터베이스 연동 프로그래밍이 기본적인 지식으로 되어 있음 데이터베이스를 기반으로 시스템을 개발하기 위해서 먼저 데이터베이스가 구축되어야 함 데이터베이스 설계란 데이터베이스 안에 어떤 테이블들이 있어야 하고 각 테이블들은 어떤 컬럼이 있어야 하며, 기본키와 외래키는 어떤 것인지를 정하고, 응용프로그램에서 필요로 하는 뷰와 인덱스를 생성하는 일련의 과정 현실세계에 대한 분석이 있어야 함 데이터베이스 안에 테이블을 생성하는 과정뿐만 아니라 현실세계에 대한 분석, 논리적 설계, 물리적 설계, 데이..

[DB] 추상화(abstraction) & 모델링(modeling)

데이터베이스 설계 과정은 소프트웨어(정보 시스템) 개발 과정의 일부이며. 소프트웨어의 개발 과정은 곧 현실세계에 대한 추상화 과정으로 설명 데이터베이스 설계 능력은 현실세계를 추상화할 수 있는 능력과 일치 추상화의 개념을 이해하는 것은 소프트웨어의 개발이나 데이터베이스 설계를 이해하는 데 많은 도움이 됨 추상화 모델(model)이라는 수단을 통해 이루어지기 때문에 추상화를 모델링이라고 표현하기도 함 우리는 모델이라고 지칭하지는 않지만 생활에서 많이 이용 모델, 모델링, 추상화 모델 - 사람들이 복잡한 현실세계를 쉽게 이해하기 위해 현실세계를 개념화, 단순화시켜 표현한 것 모델링 - 모델을 만드는 과정 추상화 - 이러한 과정을 다른 말로 현실세계에 대한 추상화 과정 추상화 과정은 소프트웨어 개발과 밀접한 ..

[DB] SQL 언어

관계형 데이터베이스의 장점 중 하나는 사용자들이 쉽게 사용할 수 있는 SQL (Structured Query Language) 언어를 제공한다는 것 사용자는 간단한 SQL문을 사용하여 DBMS에게 작업 요청 가능 기본적인 SQL문들은 표준화되어 있기 때문에 거의 DBMS 제품에 동일하게 적용 SQL 언어는 비절차적 언어 (non_procedural language) 사용자는 자신이 원하는 것만을 명시하며, 원하는 것을 DBMS가 어떻게 처리할지는 명시할 필요가 없음 SQL 언어는 자연어와 비슷한 문법체계를 가지고 있기 때문에 처음 보는 사람도 SQL문의 의미를 이해하는 것이 어렵지 않음 사용자들은 SQL이 다른 언어에 비해 배우기 쉬운 것으로 느낀다 사용자/개발자는 두가지 방식으로 SQL 이용할 수 있음..

[DB] 뷰 (View)

관계형 데이터베이스를 이해하는 데 뻬놓을 수 없는 것이 바로 뷰 (view)임 뷰는 단어의 뜻 그대로 하나의 테이블, 혹은 여러 테이블에 대해서 특징 사용자나 조직의 관점에서 데이터를 바라볼 수 있도록 해주는 수단으로서 가상 테이블이라고도 부름 같은 사원에 대한 정보이지만 이렇게 부서별로 필요로 하는 세부항목은 다를 수 있음 과거의 파일 시스템 환경에서는 이런 경우 세 걔의 부서에서 필요한 사원 파일을 각각 생성하여 사용함 그 결과 데이터의 중복성, 불일치와 같은 문제가 발생 관계형 데이터베이스에서는 데이터를 개인이나 개별 부서 단위의 관점에서 보는 것이 아니라 조직 전체의 차원에서 보기 때문에 세 개의 사원 정보를 관리하지 않고 하나의 사원 정보 테이블에 모아서 관리함 사원 테이블이 인사팀, 기획실, ..

[DB] 기본키와 외래키

데이터베이스 설계를 위해 반드시 이해해야 할 개념 중의 하나가 기본키(primary key)와 외래키(foreign key)이다. DBMS를 구현해야 하는 입장에서 보면 중복된 튜플이 삽입되는지를 확인하는 것은 쉬운 일이 아님 1번 튜플이 삽입되는 경우는 이미 존재하는 모든 튜플에 대해 모든 컬럼이 같은지를 일일이 검사해보면 중복 여부를 알 수 있지만, 튜플 수가 수십만 개에 달하는 경우는 비교 시간이 매우 오래 걸리기 때문에 현실적인 방법이 아님 2번 튜플의 경우는 의미적 중복이지만 데이터의 의미를 이해할 수 없는 DBMS로서는 2번 튜플이 의미적으로 중복인지를 알아낼 방법이 없음 후보키 (candidate key)란 테이블에서 각 튜플을 구별하는 데 기준이 되는 하나 혹은 그 이상의 컬럼들의 집합 <..