개발/Spring

    자바(Java)의 역사

    온라인 환경의 출현에 맞추어, 자바는 고도의 분산형 구조에 적합한 능률적인 프로그래밍 방식을 제공한다. 자바는 1991년, Sun Microsystems의 제임스 고슬링(James Gosling,) 패트릭 노튼(Patrick Naughton), 크리스 와츠(Chris Warth), 에드 프랭크(Ed Frank), 그리고 마이크 쉐리든(Mike Sheridan)에 의해 창안되었다. 플랫폼 독립적인 언어를 만들자! 초기에 이 언어는 Oak라 명명 되었으나 1995년에 Java로 바뀌었다. 다소 놀라운 일이지만, 원래 자바는 인터넷을 통한 웹 서비스 또는 Android와 같은 모바일 환경을 위해 개발된 것이 아니었다. 자바가 지향했던 것은 토스터, 전자레인지, 리모콘 등의 가전제품에 내장될 소프트웨어를 위한 ..

    왜 Static변수를 난발하면 안될까?

    1. OOP에서 캡슐화, 은닉화에 위반된다. Static 변수를 자주 사용하는 것은 절차지향프로그래밍에 가깝다. 2. 스태틱 변수는 전역이다. 추론하기도 어렵고 테스트하기도 어렵다. 객체의 새 인스턴스를 만들면 테스트 내에서 상태에 대해 추론 할 수 있다. 하지만 예를 들어서 100만 라인의 시스템에서 전역 변수를 난발하게 된다면 유지보수 면에서 상당히 난해해질 것이다. 3. GC에 의해 영향을 받지 않는다. 4. Thread-safe하지 않다.

    객체지향 핵심 키워드 (자바의 신 요약본 - 0)

    객체지향 주요 개념 ● 클래스Class ● 상태state와 행위behavior ● 캡슐화Encapsulation ● 메시지Message ● 객체Object ● 상속Inheritance ● Overriding ● 다형성Polymorphism ● Overloading 이 위에 키워드의 정의를 명확하게 하고자 정리해보고자 한다. 클래스(Class) “상태”와 “행위”를 갖는 자바의 기본 단위를 의미한다. 객체의 상태를 나타내는 필드(field)와 객체의 행동을 나타내는 메소드(method)로 구성 즉, 필드(field)란 클래스에 포함된 변수(variable)를 의미합니다. 또한, 메소드(method)란 어떠한 특정 작업을 수행하기 위한 명령문의 집합이라 할 수 있습니다. 상태state와 행위behavior ..