728x90 반응형 분류 전체보기491 SI개발 / SM개발 차이점, 왜 이런 태도가 필요한가? SI (System Integration) 순수개발, 시스템통합프로젝트 기능위주의 프로그램개발 위(?)에서 요청한 기능이나 요구사항을 바탕으로 새로 기능 개발하는 역할 흔히 개발프로젝트를 한다면 요구사항분석/설계/개발/테스트 작업 프로젝트를 따오고, 관리하는 담당 (은행, 그래서 갑) 실제 개발하는 하청업체 (갑의 자회사나 IT회사) 그 개발을 또 외주주는 협력회사 SM(System Management) SI에서 개발한 시스템 유지보수,수정 만들어진 프로그램을 업무에 맞게 재정의하거나 수정하는 작업 개선사항이나 오류사항에 대해서 유지보수 오류수정/개선/기능추가/데이터제공/시스템안정화 시스템의 기능업그레이드나 문제사항을 수정하여 정상적으로 운영이되도록 시스템이정상적으로운영되는지점검하는것으로하루를시작 사용중.. 2020. 1. 16. [Spring] MVC패턴 + Spring에서 MVC 패턴 디자인패턴 디자인 패턴 프로그래밍 형식을 정하는 일종의 약속이다. 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴. 싱글톤 패턴이란? 애플리케이션이 시작될 때 어떤 클래스가 최초 한 번만 메모리를 할당하고(static) 그 메모리의 인스턴스를 만들어 사용하는 패턴. (인스턴스가 필요한 경우 똑같은 인스턴스를 여러 개 만드는 것이 아니라, 동일(기존) 인스턴스를 사용하게 하는 한다) *장점 ⓐ 고정된 메모리 사용으로 new 인스턴스를 사용하기 때문에 메모리 낭비를 막음 ⓑ static(전역) 인스턴스이기 때문에 다른 클래스에서 데이터를 공유하기 쉬움 * 단점 너무 많은 사용은 다른 클래스들 간의 결합도가 높아져 수정, 테스트가 어려워질 수 있다. MVC패턴이란? Mod.. 2020. 1. 16. [NetWork] 도메인/DNS서버/CNAME 도메인 우리가 일상에서 웹브라우저에 입력하는 주소 중 우리가 알기 쉽도록 지정된 모든 주소 IP주소 실제 도메인주소를 웹에 입력하면 숫자로 구성된 주소로 인식함 ex) google.com으로 입력하면 여기에 해당하는 ip주소를 인식해서 컴퓨터에 접속하게 됨 DNS서버 (domain name system) 특정 컴퓨터의 주소를 찾기 위해서 (IP주소를 다 기억하기 어려워서 DNS서버 나옴) ip주소-> 도메인이름, 도메인이름 ->ip주소 변환하는 기능 사람이 이해하기 쉽도록 그래서 IP주소와 도메인이름을 기억하는 기능, 이름을 물어보면 IP주소를 알려주는 기능을 함 ex) 웹에서 naver.com 입력하면 DNS서버에서 이걸 IP주소로 바꾸고, IP주소로접속하게함 웹호스팅 자신의 홈페이지를 보여줄 수 있는.. 2020. 1. 15. [OS] 메모리구조 : 메소드, 힙, 스택 정리 JVM이 메모리를 OS에게 요청하면 OS는 메모리를 할당한다. 이때 받은 메모리를 클래스영역,스택영역,힙영역으로 메모리 구조를 나눌 수 있다. 클래스 영역은 프로그램이 실행하기 위해 바이트코드를 로드하는 곳으로 class파일을 찾아서 메모리에 로딩한다. 스택 영역은 지역변수와 매개변수를 저장한다. 지역변수 : 메소드안에서 선언한 변수 매개볏누 : 메소드를 선언할때 아규먼트로 넣는 변수 이 변수들은 선언된 블록안에서 유효하기 때문에 메소드가 호출되면 저장되고, 메소드가 끝나면 스택에 저장되어 있던 변수를 제거한다. 힙영역은 new로 생성된 인스턴스 변수를 저장합니다. 그리고 JVM이 중단되거나 가비지 컬렉터가 실행되기 전까지 영구적으로 저장됩니다. 스택영역에 주소를 저장하고, 힙영역에 주소에 해.. 2020. 1. 15. PLSQL 트리거/프로시져/함수차이점 PL/SQL SQL을 확장한 절차적인 언어 오라클에서 제공 쿼리문을 하나씩 수행하는 SQL과 다르게 프로시져, 트리거를 통해 반복적으로 수행할 수 있습니다. 구조 (DECLARE) : 변수,상수,커서, 사용자 지정 예외 선언부 BEGIN : SQL문장, PL/SQL제어문장 (EXCEPTION) : 에러발 생시 수행될 액션 END 프로시저 반복적인 트랜잭션을 수행할 수 있는 PL/SQL블록 SQL뿐만 아니라 IF문이나 WHILE문이등 제어문이나 반복문을 구현가능 DB내에 미리 컴파일되어 저장되므로 필요할떄마다 매번 다시 사용가능 함수 매개변수를 받아서 반복적으로 수행하는 PL/SQL블록 *함수와 프로시져 차이는 리턴값의 유무입니다. 프로시저는 수행하는 절차가 목적이 되어 리턴값이 없으며 함수는 어떠한 결과.. 2020. 1. 14. [OS] 스레드 vs 프로세스 차이점(+멀티스레드/멀티프로세스) 정리. 프로세스는 실행되고 있는 하나의 프로그램이고, 스레드는 프로세스안에서 처리하고 있는 하나의 작업단위 프로세스는 독립된 자원을 할당받아 사용하고, 스레드는 프로세스 안에서 자원을 공유하면서 실행한다. 프로세스 컴퓨터에서 연속적으로 실행되고 있는 컴퓨터 프로그램 메모리에 올라와 실행되고 있는 프로그램의 인스턴스 운영체제로부터 시스템 자원을 할당받는 작업의 단위 동적인 개념으로는 실행된 프로그램 프로세스는 각각 독립된 메모리영역(코드,데이터,스택,힙) 을 할당받는다 (자신만의 고유 공간과 자원을 할당받아 사용) 기본적으로 프로세스당 최소 1개의 스레드를 가지고 있다 스레드 프로세스 내에서 실행되는 여러 흐름의 단위 프로세스의 특정한 경로 프로세스가 할당받은 자원을 이용한느 실행 단위 스레든느 프로세.. 2020. 1. 14. [OS] 데드락(교착상태) 프로세스가 공유자원을 동시에 할당하려고 할 때 무한정으로 대기하는 상태 언제 발생하는가? 다음과 같은 4가지 조건을 모두 만족하면 교착상태가 발생한다. 1. 상호배제 조건 하나의 프로세스나 스레드만 공유자원으로 가질 수 있다면 다른 자원은동시에 할당할 수 없어서 교착상태가 발생한다. 2. 점유대기 조건 한번 할당하고, 다른 자원을 할당하기 위해서 대기한다면 이때 무한정으로 대기할 수 있어서 교착상태가 발생한다. 3. 비선점 조건 한번 할당 하면, 중단되거나 취소할 수 없다면 다른 자원을 할당하기 위해 기다려야 해서 교착상태가 발생한다. 4. 순환대기 조건 다음 자원을 대기하는데 사이클이 존재한다면, 무한정으로 기다리는 교착상태가 발생한다. 그렇다면 어떻게 예방할수 있는가? 교착상태를 피하려면? 위와 같은.. 2020. 1. 13. [Java] 문자열클래스 string/ stringbuffer / stringbuilder 정리 srting,stringbuffer,stringbuilder의 공통점은 모두 string문자열을 관리하는 클래스 string클래스는 new연산을 통해 한번 생성하되면 메모리공간은 변하지 않은 불변객체입니다. 그래서 연산이 필요하면 메모리공간을 늘리는것이 아니라 계속해서 인스턴스를 생성하므로 성능이 떨어집니다. 대신 단순하게 읽는 조회연산에선 속도가 빠릅니다. sringbuffer, stingbuilder 클래스는 string과 다르게 연산에 따라 메모리 크기를 변경할 수 있습니다. 멀티스레드 환경에서 동기화가 가능한지에 따라 stringbuffer와 stingbuilder로 구분할 수 있습니다. stringbuffer는 멀티스레드 환경에서 동기화가 가능하지만 stringbuilder는 불가능합니다... 2020. 1. 13. 트랜잭션 특징(ACID) /Rollback /Commit 트랜잭션 데이터베이스의 상태를 변화시키는 하나의 작업단위를 의미합니다. DB의 상태는 딱! 2개 Rollback과 commit만 있음 그래서 두가지 상태를 작업하는 실행단위들 왜 트랜잭션이 필요할까? 왜 DB는 트랜잭션 기준으로 작업을 처리할까? 1. 데이터의 무결성을 유지하기 위해 (즉 부정합을 방지하고자) DB서버에 여러가지 클라이언트들이 동시에 들어와서 작업을 처리하는데 이때 데이터들의 일관성이 깨질수 있다. 2. 직렬화 기능으로 작업을 하나씩 순차적으로 진행하기 위해 하나하나 한번에 하나의 프로세스를 처리하도록 한다. 그런데 이러면 효율이 너무 떨어지기 때문에 트랜잭션이라는 작업단위로 처리하는것. 트랜잭션은 다수의 클라이언트가 사용해서 여러개의 트랜잭션이 동시에 수행될 수 있음(동시성 4가지 특징.. 2020. 1. 12. [Programming] JAVA(객체지향언어)특징 객체지향언어 특징 1. 상속 : 상위객체가 하위객체에게 필드와 메소드를 물려줘서 상속받아 사용할 수 있는 것 공통적인 내용이 있는 클래스에서 상속받아 사용할 수 있어서 코드의 '재사용'에 용이합니다. 2. 캡슐화 : 외부의 잘못된 사용으로 내부 객체가 손상되지 않도록 접근지정자를 통해 '정보은닉'을 하는것 객체의 필드,메소드를 하나로 묶고 실제 구현한 내용을 감추는 것 높은 응집도와 낮은 결합도를 유지할 수 있도록 설계 *응집도: 클래스나 모듈 안의 요소들이 얼마나 밀접하게 관련되어 있는지 나타내는것 *결합도 : 어떤 기능을 실행하는데 다른 클래스나 모듈들에 얼마나 의존적인지 나타내는 것 캡슐화를 통해서 낮은 결합도를 유지할 수 있게됨 3. 다형성 : 하나의 타입에 여러객체를 대입해서 다양한 기능.. 2020. 1. 12. 이전 1 ··· 46 47 48 49 50 다음 728x90 반응형