JAVA 환경 설정

enterprise architect를 다운로드 한다.

UML 도구

windows 2000의 경우 msjet3.5 업그레이드를 한다.
http://support.microsoft.com/kb/172733/ko

\\70.12.112.130
jet35sp3.exe 를 실행

http://www.sparxsystems.com.au/products/ea/trial.html

JDK를 다운로드 한다.

http://java.sun.com/javase/downloads/index_jdk5.jsp

JDK 5.0 Update 15 : jdk-1_5_0_15-windows-i586-p.exe

J2SE 5.0 Documentation : jdk-1_5_0-doc.zip

www.eclipse.org

WTP -> JEE
eclipse-jee-ganymede-win32.zip


------------------------------------
JDK설치

jdk-1_5_0_15-windows-i586-p.exe 를 실행

JDK : 자바 개발자 환경 (컴파일러, JVM)
C:\Java\jdk1.5.0_15\

JRE : 자바 실행 환경 (JVM- java.exe)
C:\Java\jre1.5.0_15\

시작 -> 실행 -> cmd [enter]

javac [enter]

java [enter]

C:\WINNT\system32 에 java.exe가 설치되어있다.

다음과 같은 환경설정이 필요하다.
시작 -> 설정 -> 제어판 -> 시스템 -> 고급탭
-> 환경변수 버튼을 클릭



자바가 설치된 경로
JAVA_HOME : C:\Java\jdk1.5.0_15

CLASS가 있는 경로
CLASSPATH : .;%JAVA_HOME%\lib\tools.jar

기존의 PATH에 다음을 추가
%JAVA_HOME%\bin;

cmd창을 다시열고 javac와 java를 실행

---------------------------------

public class Cal {

    public Cal(){

    }
    public int plus(int i, int j){
        int value = i + j;
        return value; // value는 return type과 같은 type의 변수
    }

    public int minus(int i, int j){
        int value = i - j;
        return value;
    }
    
    public dobule multiply(dobule i, dobule j){
        double value = i * j;
        return value;
    }
    
    public double divide(double i, double j){
        double value = i / j;
        return value;
    }

}

와 같이 Cal.java 를 작성하였다.

시작 -> 실행 -> cmd[enter]

cd c:\Temp\로또ClassView
cd c:\Temp\로*


javac Cal.java [enter] --------------컴파일
dir[enter] ----------------------- 파일목록보기
java Cal [enter] -------------------실행
Exception in thread "main" java.lang.NoSuchMethodError: main


























by nokidding | 2008/07/01 09:25 | Java | 트랙백 | 덧글(0)

PreSTC JAVA강의

  JAVA - 객체지향언어(Object Oriented Programming Langauge)

  • JAVA의 개발자들은 어떤 컴퓨터에서도 동작하기를 원했다.( 플랫폼 비 종속적인 언어를 개발하기를 원했다.)
  • 자바소스는 자연어로 작성한다. 인터프리터 (런타임에 컴파일이 일어난다,) 언어이다.
  • 자바소스를 바이트 코드로 (class 반쯤 번역) 해놓고 번역기(JVM) 에서 완젼히 번역을 한다,
  • 개발자는 JAVA C 와 JAVA가 모두 필요하고 사용자는 오직  JAVA만 사용한다. J

 



  • -> Reusablity (재사용성)가 중요하다.

  • ex) 도서대여점.
    '미녀와 야수' 에서 주전자, 시계 = 물체 (인물X)
    즉 객체 => 사물을 기준으로 추상화를 해 나갈 필요가 있다.

    고객 삭제,등록-> 고객명부에서 가지고 있다.
    그럼 유저는 고객명부의 기능을 호출해서 사용하면 된다(메세지 호출)
    고객 - 이름, 연락처, 주민번호등...
    but 이게 미용실의 고객정보라면 도서 대여점의 고객정보와는 다르다.

    중요한건 남기고
    중요하지 않은건 버린다 -> 추상화(Abstration)


    모든 객체가 재사용되는 것은 아니다.
    (즉 모든 객체를 재사용하기 위한 노력을 할 필요가 없다)
    그래서 추상화의 과정을 통해 해당하는 경우에
    적절한 객체를 만들어 내는게 중요하다.

    Waterfall Process Development(폭포수 모델)
    - 도메인 지식이 많이 필요하며 단계별 구분이 명확한 개발 프로세스.
    요구사항분석->분석->설계->구현->Test->통합

    설계! 가 중요하다. 단순한 코더가 되고 싶지 않다면.

    ex)
    건축도면(건축기호로 추상화) - 실제 건물(구체화)

    Class(JAVA 문법)
    Object or Instance (객체,entity) on Memory! (폰노이만 아키텍처의 컴퓨터 에서는
  • 프로그램은 메모리 위에서 동작한다.) -메모리위에 해당 클래스를 구체화 시켜놓은 객체이다.
  • Instance(TV)를 가르키는 Reference(리모콘) 변수가 존재한다.
  •  
  • 요구사항분석(고객이 이해당사자가 된다)
  • 분석(역시 고객이 중요함)
  • 설계(개발자 중심의 모델이 될 수 밖에 없다)


클래스 -> 명사

속성(attributes) 행위(methods-operations)

포함이 되는 명사는 속성이 될 가능성이 높다( 물론 클래스가 되는 경우도 있다)

동사는 행위가 된다,

  

설계? 이치에 맞게. 근거가 있어야한다.

근거가 없으면 이해가 어렵고, 이해가 어려우면 재사용이 어렵다.

UML의 목적은 스케치이다!


 

aggregation은 한쪽이 없어져도 상관이 없을때 ( 부분과 전체가 생과사를 같이 하지 않을 때)

composition은 한족이 없어지면 나머지도 사용할 수 없을때 (부분과 전체가 생과사를 같이함)


1.jpg

마름모 꼴이 전체  Ball은 부분.


클래스 이름은  대문자로 시작한다.

ex) LottoMachine

클래스의 attributes는 자바에서 Field 라고 한다.

클래스의 operation은 자바에서 Method 라고 한다.


프로그래밍을 한다???! --> 클래스를 고려한다 -> 클래스를 고려한다?! ->

(클래스간의 관계를 생각한다.) - > 다음은 해당하는 클래스의 오퍼레이션(행위)을 먼저 생각한다.


자바환경설정 파일.

2.jpg 



 *.class 파일들은 쉽게 역컴파일 될 수 있으므로 패스워드등의 개인정보를 담지 않도록 주의 해야한다.

 JAVA가 실행되기 위해서는 main메소드가 필요하다.(JAVA 스펙의 일부분이다.)


프로그램 시작점. 어떤 클래스에 들어가도 상관이 없다. 
JAVA Cal 라고 하였다면, Cal에는 main메소드가 있어야 한다.
public static void main(String args[]){
System.out.println("Hello, Cal~");
자바표준출력
                                                                                                                                                                                                                                                                               System.in = 자바 표준 입력.


java Cal

  1. CLASSPATH에서 Cal.class 찾는다.

    " . " -> 현재 디렉토리를 나타낸다.

  2. PERM 이라는 메모리 영역으로 Cal.class의 사본을 만든다.(ClassLoader -  디스크에 저장되어있는 것을 메모리에 올려준다.)

    클래스를 사용하는 순간 해당 클래스는  PERM 영역으로 올라간다.

  3. Static 한 것중에서 main을 찾아서 한줄 한줄 실행.

System.out은 static함수라서 사용할 수 있다,

  1.  Static한 필드와 메소드를 사용할 수 있음.
  2. Static하기 때문에 아무나 사용할  수 있는것.


Static 메소드 필드는 Class영역으로 올라가고

일반 메소드 필드들은 PERM영역으로 올라간다. (해당 객체를 통해서 접근을 한다.)


즉 Static 함수들은 어디서나 실행가능 or 사용가능



과제

1부터 100까지 더하는 프로그램(for)

1부터 100까지 짝수의 합을 구하는 프로그램(while)

1부터 100까지 홀수의 합을 구하는 프로그램(do while)

 

 







by nokidding | 2008/07/01 09:23 | 트랙백 | 덧글(0)

Blue Scholars - Loyalty

오랜만에 좋은 뮤직 비디오.


Blue Scholars "Loyalty" Music Video from Zia Mohajerjasbi on Vimeo.

by nokidding | 2008/05/18 23:54 | Musics | 트랙백 | 덧글(0)

디자인 패턴 발표 준비

패턴없이 문제해결.
패턴적용
패턴소개 & UML소개
그밖의 적용사례
유사패턴과의 비교

by nokidding | 2008/05/15 13:35 | 트랙백 | 덧글(0)

취업의 길.

해야할 일.

1. 삼성SDS 자기소개서 수정 완료 .
2. 네이버 자료조사.
3. LG전자 이력서 준비.
4. STX 이력서 검토하기.

by nokidding | 2008/03/23 11:23 | Daily life | 트랙백 | 덧글(0)

◀ 이전 페이지          다음 페이지 ▶