반응형

전체 글 175

Java(오버로딩(oveloading) VS 오버라이딩(overriding))

*이 포스트는 남궁성님의 '자바의 정석'책을 참고하여 작성했습니다. * 오버로딩 VS 오버라이딩 - 오버로딩 : 기존에 없는 새로운 메서드를 정의하는 것. - 오버라이딩 : 상속받은 메서드의 내용을 변경하는 것. - 예제 class Parent() {void compliment() {}} class Chilld extends Parent {void compliment() {} //오버라이딩void compliment(String str) {} //오버로딩 void childCompliment() {}void childCompliment(String str) {} //오버로딩}

Java(오버라이딩(overriding))

*이 포스트는 남궁성님의 '자바의 정석'책을 참고하여 작성했습니다. * 오버라이딩: 조상 클래스로부터 상속받은 메서드의 내용을 변경하는 것을 오버라이딩이라고 한다. 상속받은 메서드를 그대로 사용하기도 하지만, 자손 클래스 자신에 맞게 변경해야하는 경우가 많다. 이럴 때 조상의 메서드를 오버라이딩한다. - 예제: 2차원 좌표계의 한 점을 표현하기 위한 Point클래스가 있을 때, 이를 조상으로 하는 Point3D클래스, 3차원 좌표계의 한 점을 표현하기 위한 클래스를 다음과 같이 새로 작성하였다고 하자. class Point {int x;int y; String getLocation() {return "x : "+ x + ", y : " +y;}}class Point3D extends Point {int ..

데이터베이스(데이터베이스(DB)의 아키텍처-역사와 개요)

* 데이터베이스의 아키텍처(역사와 개요) 1) Stand-alone (~1980년대) 2) Client/Server (1990년대~2000년)3) Web 3계층 (2000년~현재) 1) Stand-alone : Stand-alone은 문자 그대로 데이터베이스가 동작하는 머신(여기서는 DB가 동작하는 머신을 '데이터베이스 서버' 또는 'DB 서버'로 부른다)이 LAN이나 인터넷 등의 네트워크에 접속하지 않고 '독립되어' 동작하는 구성이다. 이 구성에서는 DB의 미들웨어(DBMS)와 애플리케이션의 소프트웨어는 같은 DB 서버에서 동작한다. 따라서 DB를 사용하고 싶은 사용자는 DB서버가 설치된 장소까지 물리적으로 접근하여 서버 앞에 앉아서 DB를 사용해야 했다. 서버가 네트워크에 접속되어 있지 않아서 물리적..

IT 용어 정리(9일차)

* IT 용어 정리(9일차) 1. API(Application Programming Interface): 운영체제 혹은 라이브러리가 애플리케이션으로부터 받아들이는 명령어의 리스트. 2. ASP(Application Service Provider): 소프트웨어를 사용자의 컴퓨터에 설치해서 실행하는 것이 아니라 네트워크를 통해서 서버에 있는 소프트웨어를 사용하도록 하는 회사. 3. B&D(Bondage & Discipline): 언어 속박과 규율 언어. 프로그래머가 따라야만 하는 엄격한 규칙을 강요하는 언어. 4. CGI(Common Gateway Interface): 스크립트 공용 게이트웨이 인터페이스 스크립트. 웹 서버가 단순히 존재하는 웹페이지를 리턴하는 것이 아니라 (결과를 검색하는 것과 같은) 어떤..

IT 용어 정리(8일차)

* IT 용어 정리(8일차) 1. 파서(parser): 입력을 읽어들여서 파싱 트리를 만들어내는 프로그램. 2. 파싱 트리(parse tree): 컴파일러가 프로그램의 구성요소를 읽어서 해석한 다음 저장하는 데이터 구조. 기계어로 변환되는 과정의 첫번째 단계다. 3. 파이프(pipe): 운영체제 명령어를 결합해서 한 명령어의 출력이 다른 명령어의 입력이 되도록 만드는 방법. 4. 파킨슨의 법칙(Parkinson's Law): 어떤 일을 수행하기 위해서 필요한 자원의 양은 자원이 아무리 많아도 그것을 전부 소모할 정도로 늘어난다는 법칙. 5. 표현(expression): 실행되었을 때 어떤 값을 산출하는 코드의 조각. 예를 들어 2+3이라는 표현은 5라는 값을 산출한다. 6. 프로세스(process): 운..

데이터베이스(데이터베이스(DB)의 운영비용)

* 데이터베이스의 운영비용 * 운영비용 : 서비스를 이용하는 기간에 계속해서 지급하는 돈.: 운영비용은 기간이 정해진 비용으로, '월 단위 또는 연 단위 얼마'처럼 반드시 '일정 기간에 OO원'이라는 비용 계산을 한다. 이는 DB의 이용기간이 길면 길수록 비용도 증가한다는 의미이다. Q. 데이터베이스의 운영비용은 어떤 것인가?A. '기술지원 비용'이다. -> DB를 사용하다 보면 버그나 이해할 수 없는 동작이 발생하는 것을 종종 본다. 심한 경우 DB가 크래시되어 시스템 전체가 정지되는 중대한 버그가 발생할 수도 있다. 이런 경우에는 기술적인 Q&A부터 긴급 수정 프로그램(패치) 배포까지 DB 개발자의 지원 없이는 문제를 해결하기 어렵다. 이런 기술지원 서비스에는 일반적으로 다음 항목이 포함된다. - 기..

IT 용어 정리(7일차)

* IT 용어 정리(7일차) 1. 체크섬(checksum): 어떤 파일의 존재를 검증하기 위해서 그 안에 담긴 정보를 모두 더하는 방법. 썩 휼륭하지는 않지만 문자의 수를 세어서 체크섬을 계산할 수 있다. 2. 최적화(optimization): 더 효율성을 높이고자 프로그램을 수정하는 것. 3. 최종 사용자(end user): 엔드 유저라고도 한다. 단순 사용자를 지칭하는 완곡한 표현. 4. 컴파일러(compiler): 강력하고 간결한 고수준 언어로 작성된 프로그램을 해석해서 컴퓨터 하드웨어가 이해할 수 있는 간단한 기계어 명령어로 바꾸는 프로그램. 인터프리터. 5. 코볼(Cobol): 1960년대에 디자인된 비즈니스 애플리케이션을 위한 원초적인 언어. 코볼을 계승한 언어 중에서 자바가 가장 유명하다. ..

데이터베이스(데이터베이스(DB)의 초기비용)

* 데이터베이스의 초기비용 * 초기비용 : 최초에 지급하는 돈.* 운영비용 : 서비스를 이용하는 기간에 계속해서 지급하는 돈. * 초기비용 예 : 시스템 개발에서 초기비용으로써 대표적인 것은 서버나 네트워크 기기와 같은 하드웨어 구매비용이나 개발을 위한 프로그래머에 지급하는 급여를 들 수 있다. * 운영비용 예 : 시스템 가동 후 장애 대응이나 프로그램 수정과 같은 유지보수 비용을 말한다. Q. DBMS를 도입할 때의 초기비용은 어느 정도 필요할까? -> 데이터베이스를 도입할 때의 초기비용은 한마디로 소프트웨어의 라이센스 요금이다. 라이센스 요금이란 '소프트웨어 사용허가요'이다. 라이센스료는 해당 소프트웨어의 '가격'이라고 생각할 수 있다. 라이센스료를 지급하면 소프트웨어를 사용할 수 있는 점에서는 '가..

Git(branch의 원리)

* branch의 원리 우선 새로운 저장소를 만든다. Q. git init했을 때 내부에서 어떤 일이 일어나는가? -> head라는 파일은 git을 처음 생성했을 때 생성이 되며 동시에 refs/heads/master라고 적혀있다. 이것은 파일의 이름 의미하는데 아직 존재하지는 않고 이름만 있는 상태이다. -> commit한 뒤 head라는 파일이 어떻게 편하는지 살펴보자. * vim f1.txt (text : "a") > git add f1.txt > git commit -m "1" -> refs/heads/master 라고하는 파일이 생겼다. 클릭해보면 오브젝트 ID값을 가지고 있고 클릭하면 방금 커밋한 내용이 있다. -> 깃을 처음 초기화 하면, git 디렉터리에는 head라는 파일이 생긴다. (일..

데이터베이스(관계형 데이터베이스(RDB))

* 관계형 데이터베이스: 관계형 데이터베이스(Relational Database)는 줄여서 'RDB'라고도 표기한다. -> 관계형 데이터베이스에서 말하는 '관계'란 단어는 보통 '인간관계'라든지 '국제관계'라고 할 때 사용하는 '관계'란 단어와는 의미가 다르다. -> 여기서 말하는 Relational(관계)은 2차원 표를 표기할 때 사용하는 단어이다. 엔지니어가 보기에 가장 익숙한 2차원 또는 Excel이나 Google Docs로 대표되는 스프레드시트이다. * 관계형 데이터베이스: 데이터를 2차원 표를 사용해 관리하는 데이터베이스'라는 것이 관계형 데이터베이스. * 관계형 데이터베이스의 이점: 프로그래밍 언어를 사용하지 않아도 데이터를 조작할 수 있다. 이는 결국 프로그래밍 언어를 습득하지 않아도 데이터..

반응형