반응형

기술사

기술사

특급기술사
고급기술사 자격 취득후 3년이상 소프트웨어 기술분야에서 일정기간 경력을 갖추거나 근무한사람

고급 기술사
중급기술사 자격을 취득한 자로서 3년 이상 소프트웨어 기술 분야에서 일정기간 경력을 갖추거나 근무한사람
박사학위를 가진 자로서 기사 자격을 취득한자

중급 기술사
기사 자격을 취득한 자로서 3년 이상 소프트웨어 기술 분야에서 일정기간 경력을 갖추거나 근무한 사람
산업기사 자격을 취득한 자로서 7년이상 소프트웨어 기술 분야에서 일정기간 경력을 갖추거나 근무한 사람
기사 자격을 취득한 자로서 석사학위 취득후 2년이상 소프트웨어 기술 분야에서 일정기간 경력을 갖추거나 근무한 사람

초급 기술자
기사 자격을 취득한 자

산업기사 이상의 자격을 취득한 자


반응형

'개발의 흔적 > SI' 카테고리의 다른 글

사업관리 프로젝트 수행 절차  (1) 2016.01.20
반응형



1. RFP : Request for Proposal의 약자로, 제안요청서라 일컫는다. 
발주기업이 선별된 업체에게 구축업체를 선정하기 위한 전단계로서 보내지며, 사용자가 자사의 시스템에 대한 요구사항을 체계적으로 정리한 문서로서 공급업체가 제안서를 작성할 때 기본적인 자료로 활용한다. 
어떠한 기업에서 새로운 정보기술을 접목해 시스템을 구축할 때 어떤 기술과 업체를 선택할 것인가 하는 점에 대해서는 제안요청서(RFP)와 제안서라는 연속된 절차를 통해 결정이 되는 경우가 많다. 
체계적으로 RFP를 작성하는가에 따라 제안서의 품질이 결정되는가 하면, 프로젝트의 성공여부에도 큰 영향을 미친다.

2. 제안서 : 시스템을 개발하기에 앞서 고객에게 제출하는 시스템 설계 제안서(상대방과의 거래를 성사시키기 위한 행위)
① 기업에서 자사의 프로젝트를 발주시키기 위해 외부 업체의 개발 경험이나 기술적 특징들을 분석할 목적으로 제출 받는 문서
② 제품 또는 서비스를 제공하는 외부 기업이 프로젝트를 의뢰한 기업으로부터 발주 받은 프로젝트를 어떻게 수행 할 것인지를 포괄적으로 정리한 문서

③ RFP를 근거로 각 서비스 제공회사의 프로젝트 수행능력, 수행방법, 비용 등과 같은 내용을 포괄적으로 정리한 문서
④ 제안서의 종류 : 납품제안서, 프로젝트계획서, 사업계획서, 서비스소개서, 제품소개서, 계약제안서 등
⑤ 좋은 제안서 조건

─ 일목요연, 쉬운 표현, 적절한 이미지

─ 상대방의 입장을 고려 : 서류를 검토하는 곳이 어디인가, 어떤스타일과 내용을 좋아하는가, 인간적 친분 고객 취향 파악(간략하고 임팩트 있는 걸 좋아하는 지, 사용하는 단어나 이미지 혹은 내용이 무엇인지, 좋아하는 이야기의 흐름이 A-B-C-D인지 D-A-B-C인지)

─ 신뢰, 참신, 실행 : 상대방이 나를 믿게하고, 이를 위해서 사업에 대한 충분한 이해도와 참신한 진행방법과 사업 수행 능력에 대해 명확한 설명이 필요. 신뢰와 참신성을 나타내기 위해서는 수치화된 차트와 명확한 표현 그리고 직관적으로 이해할 수 있는 디자인이 필요.

─ 과거, 현재, 미래 담기 : 현재 고객의 니즈에 대해 과거에 만들어진 이유와 현재까지 왔을 때의 문제점, 향후 어떻게 개선되어야 하는지

─ 경쟁사보다 우위 전략을 명쾌하게 보여주기 : 상대방 디스 주의 (양날의 검)

─ 강점 곳곳에 녹이기 : 노골적 얘기 X, 처음에 몰아서 강조하되 이후 부터는 곳곳에 키워드를 적당히 녹여서 지속적으로 인식시켜라

─ 좋은 PPT 작성
기획단계에서 어느 정도 그림을 그리고 시작(탄탄한 내용)
오/탈자가 없어야함
Page의 표기(1,2,3,4,5-끝, 1/5, 2/5, 3/5, 4/5, 5/5)
약자 표기 자제, 약자를 사용할 경우 각주 필수
단문으로 작성, 접속사 사용 자제
결론선행
거래의 결정권자에 맞춰서 발표
3단 구성(1, 1-1, 1-2, 1-3, 2, 2-1, 2-2, 2-3, 3, 3-1, 3-2, 3-3)
내용 및 발표 중간에 막힘 없이 진행
상대방이 이해할 수 있는 용어 사용
고객사의 이름 정확히 표기
표지는 과감하고 눈에 띄는 디자인, 내지는 동종업계에서 많이 사용하는 컬러와 스타일로 눈이 피곤하지 않게 작성
색상 3가지 이하, 폰트 3가지 이하
고화질 이미지 사용, 이미지가 찌그러지지 않게 하기 
통일성(정리정돈)

마르지 않는 입술로 혼이 담긴 구라를 처라


반응형

'개발의 흔적 > SI' 카테고리의 다른 글

소프트웨어기술자의 기술등급 및 인정범위  (0) 2016.01.20
반응형

자바(Java)

썬 마이크로 시스템즈에서 개발한 객체지향 언어

객체지향언어, 플랫폼독립적, 네트워크지향적, 뛰어난 이식성, 멀티스레드 기능, 친근한 코드



널값 (null)

어떤 값도 갖고 있지 않음, 즉 어떠한 객체도 참조하고 있지 않다는 것을 뜻힌다.

Date today = null;       // 참조변수 초기화

String grade = null;     // 참조변수는 널로 초기화할수 있다.

String grade = " ";      // 하지만 String형은 보통 빈 문자열로 초기화 한다.



클래스

1. 객체의 특성과 행위를 정의

2. 클래스는 객체가 아니며 객체를 만들기 위한 용도로 사용됨

3. 클래스명은 대문자로 시작하고 각 단어마다 첫 글자는 대문자로 구분함 (예 : Person, ControllerServlet)

파스칼 표기법

두 단어 이상의 변수명이 들어왔을때 첫번째와 두번째 단어의 첫글자를 대문자로 표기하는 방법

4. 클래스는 멤버변수, 멤버메소드, 생성자로 이루어진다.




클래스의 객체생성 예제

Hello h1;         // <─ 스택메모리에 4바이트(32비트)의 공간을 할당받은 객체변수(주소값이 할당되는 변수) h1을 선언한다.

h1 = new Hello(); // <─ 힙메모리에 Hello 클래스의 객체 h1을 생성한다.



기본적인 클래스 예제

class tv {

String color;

boolean power;

int channel;


void power() { power = !power; }

void channelup() { channel++; }

void channeldown() { channel--; }

}


public class HelloJava {

public static void main(String[] args) {

                // 참조변수는 4바이트의 주소값을 갖는다.

  tv t1;        // 클래스의 객체를 참조하기 위한 참조변수를 선언, 메모리에 참조변수 t1을 위한 공간이 만들어짐

 
                // 클래스의 객체를 생성후 객체의 주소를 참조변수 t1 에 대입, tv클래스의 인스턴스가 메모리의 빈공간에 생성되고

                // 대입연산자(=)에 의해서 생성된 객체의 주소값(0x100)이 참조변수 t1에 저장된다.


  t1 = new tv();

  t1.channel = 11; // tv인스턴스의 멤버변수 channel의 값을 7로 한다.

  t1.channeldown(); // tv인스턴스의 메소드 channeldown()을 호출한다.

  System.out.println("현재 채널은 " + t1.channel + " 입니다.");

}

}


카멜표기법

두 단어 이상의 변수명이 들어왔을때 두번째 단어부터 첫글자를 대문자로 표기하는 방법



메소드

0. 메소드는 소문자로 시작한다. (ex : deleteJob, selectMember, getData, setData, isData, isFlag, do_Patch)

(ex : getTotal, getAverage)

displayCaption, printMoney = system.out.print 메소드로 출력하는 리턴값

1. 객체의 행위를 표현하기 위한것, 객체의 행위

2. ()소괄호가 있으면 메소드 또는 멤버메소드라고 부른다.

ex : public void print() { System.out.println("안녕하세요."); } -> print 멤버메소드를 정의(구현)했다.

ex : public void print(); -> interface에 print 추상메소드를 선언했다.

ex : Hello.print(); -> Hello 클래스의 print 메소드를 호출했다.

ex : System.out.println("안녕하세요."); <- system 클래스의 out 멤버변수에 println 멤버메소드를 호출했다.



슈퍼클래스(부모클래스)

상속관계에서 상속할 클래스



서브클래스(자식클래스)

상속관계에서 상속받을 클래스



인터페이스

1. 인터페이스는 상수와 추상메소드(메소드 선언부)로 이루어져 있다.

2. 인터페이스는 다중상속을 지원한다.

3. 인터페이스 식별자는 대문자로 시작하고 각 단어마다 첫 글자는 대문자로 구분함

4. 프로젝트에서는 설계자가 인터페이스를 만들고 개발자가 인터페이스를 인플리먼트 하여 클래스로 만든다.



식별자

1. 클래스, 인터페이스, 변수, 메소드, 배열, 문자열 등을 구분할수 있는 이름 (예 : int count; 에서 식별자는 count)

ex : a = b + c; (a,b,c는 식별자 =+는 연산자 ;는 구분자)



리터럴

변수에 값을 대입하기 위한 값(예 : 2, 1.1111, 'a', "aaaaaaaaaaa")

리터럴의 종류는 실수형 리터럴(2.11), 정수형 리터럴(11), 문자형 리터럴('a'), 문자열형("aaaaa") 리터럴 등이 있습니다.


int cup; <- 변수 선언

cup = 10; <- 변수 대입



데이타형 (데이타타입)

숫자, 문자, 문자열과 같은 데이터를 담기 위해 선언하는 데이터 구분자

변수 또는 상수가 차지하는 메모리의 양(type)과 종류를 의미한다.

자바의 자료형은 크게 기본 자료형과 객체형으로 나눌 수 있다.


자바에서는 무조건 데이타타입이 존재한다.

예를 들어 숫자 중에서도 정수형을 담기 위해 선언하는 데이터형에는 int형이 있고 문자열에는 String 형이 있습니다.
대표적인 이 두 데이터형은 서로 다른 이름으로 불립니다.


먼저 int형은 기본 데이터형이라 불리며 String 형은 참조형이라 불립니다.

1.기본 데이터형(primitive Data Type) - 실제값을 저장한다.

기본 데이터형은 정수형, 실수형, 문자형, 논리형과 같은 데이터를 담기 위한 데이터형입니다.

2.참조형(Reference Data Type) - 어떤값이 저장되어 있는 주소를 값으로 갖는다. 객체의 주소(4바이트)를 값으로 갖는다.

참조형은 어떤 특정 영역을 참조한다는 것을 말합니다. 여기서 말하는 특정 영역은 자바 가상 머신에 있는 힙 영역이라 불리는 메모리 영역입니다. 참조형의 대표적 데이터형은 배열, 클래스, 인터페이스 등이 있습니다.



예외(Exception)

프로그램이 정상적으로 실행되는데 방해가 되는 에러들



예외처리

1. 처리 가능한 오류, 발생한 오류에 대해서 대처방법을 제시하는것

2. 에러가 발생해도 프로그램이 비정상적으로 종료되지 않고 계속 실행되게 처리하는것

ex : 자바의 모든 예외 관련 클래스는 java.lang.Throwable 클래스의 하위 클래스에 정의되어 있습니다.

ex : java.lang 패키지는 모든 프로그램에서 자동적으로 import되며 모든 자바 프로그램의 기초가 되는 클래스와 인터페이스를

포함하고 있다. java.lang 패키지에서 가장 많이 사용되는 Object 클래스에 대해 알아보자.


Object 클래스는 모든 자바 클래스의 최상위 클래스이다. 즉 모든 클래스는 자바의 최상위 클래스인 java.lang.Object

클래스로부터 상속을 받도록 설계되어 있다.



객체

인스턴스와 비슷한 뜻으로 쓰이며 클래스를 통해 실체화 된것

객체를 통해서 인스턴스 변수와 인스턴스 메소드에 접근할수 있다.

class Test {

int a;         // 인스턴스 변수

void print1() { //인스턴스 메소드 }

}



static 변수 (정적 변수=클래스 변수)

어디에서 선언이 되더라도 공유가 가능하다.

static이 선언되는 순간에 하나의 메모리공간이 할당되어 그 순간부터 공유가 가능하다.

static 변수는 다른 클래스파일안에 존재하는 변수라 할지라도 별도의 클래스객체 생성없이 호출이 가능하다.

※ 이클립스 내에서는 이탤릭체로 표현된다. 살짝 우측으로 기운 글씨체



예제 : static int initNum;

인스턴스 변수(non static 변수)는 인스턴스가 생성될때 마다 생성되므로 인스턴스마다 각기 다른 값을 유지할수 있지만

클래스 변수(static 변수)는 모든 인스턴스가 하나의 저장공간을 공유하므로 항상 공통된 값을 갖는다.

지역변수는 선언된 블럭이 종료되면 소멸되고 힙영역에는 인스턴스변수가 생성되는 영역이며 자역변수는 호출스택에 생성된다.

보통 인스턴스 메소드는 인스턴스 변수와 관련된 작업을 하고 static메소드는 static 변수와 관련된 작업을 한다.

정적 멤버변수 : 클래스가 메모리에 로드될때 생성된다.



static 메소드 (정적 메소드=클래스 메소드)

객체를 생성하지 않아도 바로 호출할수 있는 메소드

메소드 앞에 static이 붙어 있으면 클래스 메소드(static 변수)이고 붙어 있지 않으면 인스턴스 메소드이다.



인스턴스

1. 클래스를 메모리에 할당받아 실체화 된 객체

2. 특정 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다.



대괄호 [], 중괄호 {}, 소괄호 ()



자바 콘솔 프로그램


콘솔은 윈도우에서 말하면 도스모드을 말하며 유닉스, 리눅스에서는 쉘모드를 말합니다.

자바 콘솔 프로그램은 도스모드(윈도우)와 쉘모드(유닉스, 리눅스) 에서 실행되는 자바

프로그램입니다.

자바 GUI 프로그램은 윈도우모드나 X윈도우모드 에서 실행되는 자바 프로그램입니다.



패키지 (Package)

여러가지 기능을 가진 클래스를 전문가들이 만들어 놓은것

import sun.util.char;

상단설명 : sun폴더의 util폴더안에 char클래스를 사용하겠다.

import sun.*;



상단설명 : sun폴더안에 들어있는 util폴더를 포함한 모든 클래스를 사용하겠다.

사용하는 이유 : 자바는 소스코드를 컴파일하면 클래스마다 하나의 바이크 코드가 생성된다. 소스가 복잡해지면 하나의

디렉토리에서 관리하기 힘들고 파일이름이 중복될수도 있다. 이런 문제를 해결하기 위해 관련된 내용끼리 따로 디렉토리를

만들고 저장해놓는 기법을 사용하는데 이렇게 만들어진 것을 패키지라고 한다.

패키지는 하부 패키지와 클래스로 구성되어 있습니다. 하부 패키지는 클래스들을 포함하고 있고 계층적 구조로 되어 있습니다.

java.lang.String은 java 패키지의 하부패키지인 lang 아래에 String 클래스가 있다는 의미입니다. 결국 java는 최상위 패키지

입니다. 자바는 패키지를 저장하기 위해  디렉토리 구조를 사용합니다. 최상위 패키지가 최상위 디렉토리가 되고 하부

패키지는 하부 디렉토리가 됩니다. java 디렉토리 밑에 lang 디렉토리, 그 아래에 String 클래스가 위치하니다.



추상 클래스


구현 클래스


종단 (Final) 클래스

더이상 상속할수 없는 클래스를 말하며 내시 클래스 라고도 부른다.


이너 (Inner) 클래스

클래스안에 클래스를 선언한것



자바FX 스크립트

웹이나 애플리케이션을 개발할 때 멀티미디어를 더 쉽고 풍부하게 구현할 수 있도록 해주는 기술



MVC 패턴

Model - View - Control

M(dao) - V(jsp) - C(servlet)



리포지토리(Repository)

소스 저장소라고 하며 모든 프로젝트의 프로그램 소스들은 이 저장소 안에 저장이 됩니다.

대표적인 리포지토리 사이트로 code.google.com / github.com / sourceforge.net 가 있습니다.



프로세스, 쓰레드

프로세스는 특정한 작업을 처리하기 위해 메모리에 적재된 프로그램이고 스레드는 명령흐름이다.

즉 명령어가 실행되는 순서의 흐름이다. 함마디로 스레드는 프로세스 내부에서 독립적인 작업을 처리하는 명령어의 집합이다.

프로세스 안에서 여러개의 명령어가 독립적으로 수행되는 경우가 다중스레드라 부른다. 스레드를 사용하지 않는 프로그램은

단일스레드라고 부른다.



서블릿 (Servlet)

Server+Applet : 확장 CGI 방식 = CGI 방식은 모든 요청에 대해서 매번 프로세스를 생성하는 방식인데 확장 CGI는

동일한 프로그램에 대해서는 하나의 프로세스를 생성한후 여러개의 스레드로서 요청을 처리하는 방식이기 때문에

시스템에 부하를 줄일수 있다.

자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램, 자바코드안에 HTML태그가 혼재되어 있어

작업에 대한 분리적인 측면에서 볼때 효율성이 떨어진다.



JSP (Java Server Page)

동작 페이지를 생성하기 위해 사용하는 서버측 스크립트 언어

* 서버 사이드 스크립트 : 서버측에서 실행되는 스크립트언어



메타데이터 (Meta Data)

데이터(data)를 위한 데이터이다. 어떤 데이터 즉 구조화된 정보를 분석, 분류하고 부가적 정보를 추가하기 위해 그 데이터

뒤에 함께 따라가는 정보를 말한다. 이를테면, 디지털 카메라에서는 사진을 찍어 기록할 때마다 카메라 자체의 정보와 촬영

당시의 시간, 노출, 플래시 사용 여부, 해상도, 사진 크기 등의 사진 정보를 화상데이터(이미지)와 같이 저장하게 되어 있다.

예 : jFlow 1.0 에서 정기작업 신청시 의뢰사유 항목이 메타성 데이터에 해당된다.



변수

변하는 데이타를 저장하는 이름

헝가리안 표기법

헝가리안 표기법은 실제 변수의 데이터 타입을 소문자로 한글자로

표기하고 두번째 단어는 대문자로 시작하는 표기법이다.



상수

변하지 않는 데이타를 저장하는 이름

종단변수 : final 키워드를 사용해서 변수를 상수로 만든다. 종단변수는 관례상 대문자를 사용한다.

private final String JDBC_URL = "jdbc:oracle:thin:@호스트주소:포트번호:SID";



스레드(Thread)

프로세스 안에서 실행되는 작은 프로그램

프로세스 안에서 순차적으로 작동하는 명령어의 집합, 순차적으로 실행되는 명령어들은 하나의 실로 꿸수 있기 때문에

스레드(Thread:실)라고 부릅니다.

멀티스레드는 여러개의 스레드가 동시에 실행된다고 하였지만 이것은 일반적인 설명이고 실제로는 그렇지 않습니다.

그 이유는 대부분의 컴퓨터는 한개의 cpu만 가지고 있기 때문에 실제로 여러 스레드 중에 하나의 스레드만을 수행합니다.

스레드가 작동하는 방식은 하나의 스레드가 종료할때까지 cpu를 독점하는 것이 아니고 여러개의 스레드를

번갈아 가면서 처리합니다. 이처럼 여러개의 스레드를 교차하면서 처리하는 것을 스케줄링 이라고 합니다.


스레드 사용예제

class Thread2 extends Thread {

public Thread2(String name) {

  super(name);

}


public void run() {

  try {

   for(int a=0; a<5; a++) {

    Thread.sleep(1000);

    System.out.println(this.getName() + " : a = "+a);

   }

  }

  catch(InterruptedException e) {

   System.out.println(e.getMessage());

  }

}

}


class HelloJava {

public static void main(String[] args) {

  Thread2 t2 = new Thread2("1번 쓰레드");

  Thread2 t3 = new Thread2("2번 쓰레드");



  t2.start();

  t3.start();

}

}



[자바용어] DAO(Data Access Object)

Data Access Object의 약자로 Data에 접속하는 객체입니다.

여기서 Data란 일반적인 DataBase가 될수도 있고 파일이 될수도 있으며 메모리가 될수도 있고 기타 다른 저장소도 될수 있습니다.

그래서 DAO는 어떠한 저장소에 데이터를 입력하거나 조회하거나 수정/삭제하는 처리를 담당하게 부분을 말합니다.

DAO란 DB에서 뭔가를 꺼내오기 위한 클래스를 말한다.



[자바용어] DTO(Data Transfer Object)

데이터가 포함된 객체를 한 시스템에서 다른 시스템으로 전달하는 작업을 처리하는 객체

DAO는 데이터베이스에 접근하여 직접 데이터를 꺼내는 행위를 하는데 비해 DTO는 데이터를 꺼내거나 담을 뿐 다른 행위는 하지 않는다는 것이다.

보통 빈클래스를 말한다. 아래소스가 포함된 클래스를 말한다. 반드시 Setter 메소드와 getter 메소드가 존재한다.

public String getId() {

    return id;

}

public void setId(String id) {

    this.id = id;

}

※ VO와 DTO와 Bean파일은 같은 의미로 사용된다.



[자바용어] VO(Value Object)

Value Object의 약자로 말그대로 데이터의 값(Value) 그 자체를 의미합니다.

프로그램의 사용자가 화면에서 어떤데이터를 입력하거나 조회 요청 왔을때 입력된 데이터나 조회하는 조건들을 VO에 담아서

DAO에 요청하면 DAO는 저장소(일반적으로는 DataBase을 말한다.)로부터 데이터를 입력하거나 조회한 후 그 결과를 돌려 주게 됩니다.

※ VO는 우리가 타고다니는 교통수단처럼 데이터를 이동시키는 역할을 한다.



폴링(Polling)기법

한프로그램이나 장치에서 다른 프로그램이나 장치들이 어떤 상태에 있는지를 지속적으로 체크하는 전송제어 방식으로

대체로 그들이 아직도 접속되어 있는지와 데이터 전송을 원하는지 등을 확인한다.

쉽게 말해서 Status Bar, Dash Board(대시보드), 처리유무확인(처리결과 받음) 등에 쓰이는 실시간처리 방식이다.

A 프로세스에서 폴링기법으로 처리명령을 내리면 B 프로세스에서 처리에 따른 데이타를 받고 그에 따른 처리결과를 B프로그램

로 전송해준다.

(아래는 전자계산기조직으용기사 공부하다 발췌)

하나의 장치가 충돌 회피 또는 동기화 처리등을 목적으로 다른 장치의 상태를 주기적으로 검사하여 일정한 조건을 만족할때

송수신 등의 자료처리를 하는 방식



deprecated (디프리케이티드)

중요도가 떨어져 더 이상 사용되지 않고 앞으로는 사라지게 될

ex : date 클래스를 보면 디프리케이티드 되어 있다. 그래서 캘린더 클래스를 사용하기를 권장한다.



메이븐 (Maven)

jar파일을 효율적으로 관리하는 라이브러리 관리 툴이자 빌드 툴이다.

예전에는 Ant를 많이 썼는데 요즘은 그 자리를 메이븐이 차지하고 있다.



풀링(Pooling) 기법

보통 DB연결을 연결하고 종료하지 않고 미리 DB연결 객체를 만들어놓고 공유해서 사용하는 기술이다.

이렇게 연결하게 되면 DB연결을 매번 연결하고 종료하지 않기 때문에 좀더 빠른 처리속도를 느낄수 있고

서버에도 부하를 적게 준다.



자바 배열

같은 타입의 여러 변수를 하나의 묶음으로 다루는 것을 말한다.

int[] score1 = new int[2]; // 기본형 배열의 선언 및 생성

score1[0] = 100;           // 기본형 배열 초기화

score1[1] = 200;           // 기본형 배열 초기화


// 배열을 선언하면서 생성하고 초기화를 시킨다.

// 초기화 시켜줄때는 생성하는 괄호[]에는 배열의크기를 줄수 없다.


int[] arr = new int[]{1,2,3,4,5};


// 1차원 기본형 배열의 선언 및 생성 및 초기화 방법1

int[] score2 = {10,120,30};             // 기본형 배열의 선언 및 생성 및 초기화 방법1

int[] score3 = new int[] {100,200,300}; // 기본형 배열의 선언 및 생성 및 초기화 방법2


// 2차원 기본형 배열의 선언 및 생성 및 초기화

int[][] score = { { 100, 100, 100 }, { 20, 20, 20 }, { 30, 30, 30 }, { 40, 40, 40 }, { 50, 50, 50 } };


※  크기는 따로 지정해주지 않으면 주어진 값의 개수에 따라 자동적으로 크기가 결정된다.

※ 배열은 생성과 동시에 자동적으로 자신의 타입에 해당하는 기본값으로 초기화 되므로 배열을 사용하기전에 초기화를

해주지 않아도 된다. ex : int 형 -> 0, boolean 형 -> false, long 형 -> 0L, float 형 -> 0.0f, 참조형 변수 -> null


// 참조형 배열 선언 및 생성 및 초기화 방법1

String[] name1 = {"leejunsik","lssjee","1112233"};


// 참조형 배열 선언 및 생성 및 초기화 방법2

String[] name2 = {new String("kim"), new String("park"), new String("jun")};


// 참조형 배열 선언 및 생성 및 초기화 방법3

String[] name3 = new String[] {new String("kim"), new String("park"), new String("jun")};

※ 배열변수는 참조변수이다.

※ int array1[10]; // 잘못된 배열 선언 및 생성


반응형
반응형
1. Java : 프로그램언어
     명령 방법 - 문법에 맞게, 형식에 맞게 명령해야한다. (인공지능이 아님) -> 외우는 것이 아니라 반복, 손에 익히기
     장점
         open sourse
         Multi Platform(Multi OS)
         엔터프라이즈급 기업 - 대용량, 분산, 안정 (속도를 배제)
     단점
         느리다
          H/W 요구사항이 높다


2. Program 언어
     문법 Part
         데이터 (어떤 형식으로 받아 들일지 결정)
         제어 (중첩 가능 (블럭)) - 잘 붙이는 것이 능력(program 언어의 핵) , 잔머리가 좋아야함(여러 소스 경험하기)  => 프로그램 처리 속도와 관련
         객체(데이터의 확장)
         {제어 = Algorizm} + {데이터+객체 = 자료구조론} = Library

     Library Part
         Library(Oracle사에서 짜준 형태) 기본제공.
         문법을 배우는 이유는 Library를 쓰기 위해.
         Library에 따라 분야가 달라지고, 언어는 점점 발전한다.
         나만의 Library 제작이 가능하다.
         2000개가 넘는 Libary가 있으며 코드를 작성했어도 다른 방법도 모색해봐야한다.


3. Program 언어의 종류
     Compile 언어 : 소스와 실행파일이 분리(소스에서 실행파일을 만듦), 구형 / 속도가 빠름, 자바가 Compile 언어
              코딩 장치 (소스) -> 컴파일 장치 (oo.class) -> 실행 장치(실행)
     Interpreter 언어 (Script 언어) : 소스가 곧  실행 파일, 신형 / 속도가 느림


4. 자바 프로그램의 필요요소(Compile 언어인 Java)
     소스 코드 에디터
         텍스트 에디터 : 메모장
         좀 편한 텍스트 에디터 : 에디트 플러스, 울트라 에디터
         IDE(Intergrated Developmet Environment) 집중 개발자 환경 : eclipse, netbeans, intellij

         에디트 플러스 -> eclipse(대세), intellij(간지)

     컴파일 / 실행 / ... : JDK (Java Development Kit) => 자바와 관련된 프로그램 + Library 제공
         J2EE: Enterprise Edition - 웹 추가
         J2SE: Standard Edition - JDK
         J2ME: Micro Edition - 간소화된 형태지만 없어짐


5. 자바 프로그램 설치 확인 요소 = OS bit 수

6. 설치
     소스 코드 에디터 (에디트 플러스) : www.editplus.co.kr
     컴파일 / 실행 / ... (JDK) : www.oracle.com (Java SE) exe파일 zip파일
     www.oracle.com 


7. JDK 환경설정
     Path수정
          내컴퓨터 우클릭 속성 -> 고급 시스템 설정 -> 환경변수
               Path 변수값 : 기존값 ; 내 컴퓨터>로컬 C:>ProgramFiles>Java>jdk1.8.2.20>bin
     CLASSPATH추가
           내컴퓨터 우클릭 속성 -> 고급 시스템 설정 -> 환경변수
                 변수이름 : CLASSPATH
                 변수값 : .;   

          
8. 테스트
     시작 실행 cmd
     Java -version
     Javac ->컴파일


9. 데모 실행
     cd Java JDK-8u-...-jdk1.8.0_20 demo jfc notepad
     dir
     java -jar notepad.jar
     class 뒤에 오는 것이 파일명


10. 간단한 코드

// 주석 : 프로그램이 해석하지 않는 부분
// class 뒤에 있는 HelloClass = 파일명 (HelloClass.java)

// { } : 블럭
// 한줄이 끝나면 반드시 ;
// 모든 단어는 대소문자를 구분
public class HelloClass {

 // 프로그램의 시작
 public static void main(String[] args) {
  // 실행 구문 작성

  // System.out.println() : 화면 출력 구문
  System.out.println("Hello World");

 // 프로그램의 끝
 }
}



11. 간단한 실행
     컴파일 : javac 파일명.java
     실행 : java 파일명






11. Java 사전

     Java API : https://docs.oracle.com/javase/8/docs/api/index.html


반응형
반응형



connected dot



감사합니다.

반응형

+ Recent posts