정처기 필기(76)
-
포인터 / 스크립트 언어 / 선언형 언어
포인터 1. 포인터와 포인터 변수 - 포인터란 ? 변수의 주소 - C언어에서 변수의 주소를 저장할 때 사용하는 변수 - 포인터 변수는 필요에 의해 동적으로 할당되는 메모리 영역인 힙 영역에 접근하는 동적 변수\ * 포인터 변수를 선언할 때는 자료형을 먼저 쓰고 변수명 앞에 간접 연산자 *를 붙인다. ---> int *a; * 포인터 변수에 주소를 저장하기 위해 변수의 주소를 알아낼 때는 변수 앞에 번지 연산자 &를 붙인다 ---> a = &b; * 실행문에서 포인터 변수에 간접 연산자 * 를 붙이면 해당 포인터 변수가 가리키는 곳의 값을 말한다. ---> c = *a; 2. 포인터와 배열 - 배열을 포인터 변수에 저장한 후 포인터를 이용해 배열의 요소에 접근이 가능하다 - 배열 요소에 대한 주소를 지정할..
2023.02.21 -
배치 프로그램 / 패키지 소프트웨어
배치(Batch) 프로그램 * 사용자와 상호작용 없이 여러 작업들을 미리 정해진 일련의 순서에 따라 일괄적으로 처리하는 것 1. 이벤트성 배치 : 특정 이벤트 설정해서 조건이 충족될 때만 수행 2. On-Demand 배치 : 사용자 요청시 3. 정기 배치 : 정해진 시간 필수 요소 설명 대용량 데이터 자동화 견고성 데이터 오류나 데이터 중복 등의 상황으로 중단되는 일이 없어야 함. 안정성/신뢰성 오류 발생시 위치, 시간 등의 추적이 가능해야 한다. 성능 다른 프로그램의 수행을 방해하지 않아야 하고, 지정된 시간 내에 처리가 완료되어야 한다. # 대자견안성 2. 배치 스케줄러, 잡 스케줄러 - 일괄 처리 작업이 설정된 주기에 맞춰 자동으로 수행되도록 지원해주는 도구 *** 스프링 배치(Spring Batc..
2023.02.21 -
서버 개발 / 보안 및 API
서버 개발 1. 서버 개발의 개요 - 웹 애플리케이션의 로직을 구현할 서버 프로그램을 제작하여 웹 애플리케이션 서버에 탑재하는 것을 의미함 2. 서버 개발 프레임워크 - 프레임워크 : 특정 기능을 수행하기 위해 필요한 클래스나 인터페이스 등을 모아둔 집합체 3. 서버 프로그램 구현 (효과적인 모듈 설계) - 모듈 및 공통 모듈을 개발하고 통합하는 방식, 유지보수가 용이해야 함. - 결합도를 약하게, 응집도를 강하게. 모듈이 독립성 높이기 - 일관성 유지 - 공통 모듈 : 재사용 할 수 있는 모듈 * 재사용 프로그래밍 기법 객체지향, 제네릭, 자동, 메타 4. 프레임워크 특성 모듈화(캡슐화), 재사용성, 확장성(다형성), 제어의 역흐름 5. 프레임워크의 구성요소 개발환경, 실행환경, 운영환경, 관리환경 보..
2023.02.21 -
개발 환경 구축
개발 환경 구축 1. 개요 - 하드웨어 및 소프트웨어 장비 구축 - 성능, 편의성, 라이선스 등 비즈니스 환경에 적합한 제품들로 결정하여 구축 2. 하드웨어 환경 사용자와 인터페이스 역할을 하는 클라이언트 + 서비스를 제공하는 서버 - 클라이언트 : PC, 스마트폰 - 서버 : 웹 서버, WAS, DB, 파일서버 등 * 웹서버 : 클라이언트로부터 직접 요청을 받아 처리하는 서버, 저용량의 정적 파일 제공 EX) Apache, Microsoft Internet Service 등 * WAS : 웹 서버와 반대 : 동적인 콘텐츠를 처리하기 위해 사용되는 소프트웨어 (미들웨어) : 데이터 접근, 세션관리, 트랜잭션 관리 등을 위한 라이브러리 제공 EX) Apache Tomcat, IBM WebSphere, 등 ..
2023.02.21 -
ORM (Object - Relational Mapping) / 데이터전환
ORM 1. 개요 - 객체와 관계형데이터베이스의 데이터를 연결하는 기술 - 독립적이어서 재사용 및 유지보수 용이 - 직관적, 간단 2. ORM 프레임워크 JAVA - JPA, Hibernate Eclipse Link 등 C++ - ODB, QxOrm 등 Python - Django, Alchemy 등 iOS - Core Date, Database Objects 등 3. ORM의 한계 - SQL 자동 작성 때문에 테스트가 필요 - 프로젝트가 크고 복잡하면 적용하기 어려워짐 - 기존 데이터베이스를 변환하는데 시간과 노력 필요 쿼리 성능 최적화 - 쿼리 성능 최적화 전, 성능 측정 도구인 APM을 사용해 최적화 할 쿼리를 선정해야 한다. - 옵티마이저가 수립한 실행계획을 EXPLAIN 명령어를 통해 검토하고,..
2023.02.21 -
SQL활용 / DMBS 접속 기술
SQL활용 1. 절차형 SQL * C, JAVA 등의 프로그래밍 언어와 같이 연속적인 실행, 분기, 반복 등 제어 가능한 SQL * 프로그래밍 언어에 비해 효율 낮음, 하지만 연속적 작업 처리 가능 * BEGIN~END 형식 --> 기능별 모듈화 가능 2. 프로시저 (Procedure) - 호출을 통해 실행되어 미리 저장해 놓은 sql작업 수행 - 시스템의 일일 마감 작업, 일괄 작업 등에 주로 사용 * declare : 프로시저 명칭, 변수, 인수, 데이터 타입을 정의하는 선언부 * begin : 실행부 * end : 종료부 CREATE PROCEDURE 프로시저명 (파라미터) [지역변수 선언] + BIGIN 처리 내용 + END 3. 트리거(Trigger) - 삽입, 갱신, 삭제 등의 이벤트가 발생할..
2023.02.21