목록Software Engineering (80)
Pure Software Engineer :)
BinarySearchTree.h #ifndef BINARY_SEARCH_TREE_H_ #define BINARY_SEARCH_TREE_H_ #include #include typedef int ElementType; typedef struct tagBSTNode { struct tagBSTNode* Left; struct tagBSTNode* Right; ElementType Data; }BSTNode; BSTNode* CreateNode(ElementType NewData); void DestroyNode(BSTNode* Node); void DestroyTree(BSTNode* Tree); BSTNode* SearchNode(BSTNode* Tree, ElementType Target); BSTNo..
실행계획 - SQL SELECT 문장을 실행하면서 오라클이 내부적으로 어떠한 절차로 처리를 했는지에 대한 내용을 말한다. 이러한 내부처리결과는 기본적으로 보이지 않는데 SQL plus 에서 설정을 통해 이를 다양한 방법으로 확인할 수 있다. SELECT를 수행하면서 내부처리를 STATEMENT_ID = 'demo1' 라고 기록하여 테이블에 저장한다. 그뒤 이 테이블을 SELECT 해서 결과를 확인하는 방법. 위의 방법은 2단계를 거침으로써 뭔가 불편해 보이는감이 있다. SET AUTOTRACE ON 설정을 통해 SQL 실행결과와 그에대한 내부실행계획을 모두 보여주도록 한다. 무언가가 많이 나온다.... SET AUTOTRACE ON EXPLAIN SET AUTOTRACE ON STATISTICS SET ..
Adapter 패턴이란? - 서로 다른 두 개의 인터페이스 사이를 연결해 주는 패턴 전원의 비유 예제 프로그램 제공되고 있는 것 교류 100볼트 Banner 클래스 교환장치 어댑터 PrintBanner 클래스 필요한 것 직류 12볼트 Print 클래스 adapter.h #pragma once #include using namespace std; class Banner { private: string str; public: Banner(string str) { this->str = str; } void showWithParen(); void showWithAster(); }; class Print { public: virtual void printWeak() = 0; virtual void printStr..
Iterator 패턴이란? - 집합체의 요소를 통일된 방법으로, 순서대로 지정하면서 처리하는 패턴 이름 설명 Aggregate 집합체를 나타내는 인터페이스 Iterator 하나씩 나열하면서 검색을 실행하는 인터페이스 Book 책을 나타내는 클래스 BookShelf 서가를 나타내는 클래스 BookShelfIterator 서가를 검색하는 클래스 iterator.h #pragma once #include using namespace std; template class Iterator { public: virtual bool hasNext() = 0; virtual T* next() = 0; }; template class Aggregate { public: virtual Iterator* iterator() ..
DisjointSet.h #ifndef DISJOINTSET_H_ #define DISJOINTSET_H_ #include #include typedef struct tagDisjointSet { struct tagDisjointSet* Parent; void* Data; }DisjointSet; void DS_UnionSet(DisjointSet* Set1, DisjointSet* Set2); DisjointSet* DS_FindSet(DisjointSet* Set); DisjointSet* DS_MakeSet(void* NewData); void DS_DestroySet(DisjointSet* Set); #endif DisjointSet.c #include "DisjointSet.h" void DS_..
BinaryTree.h #ifndef BINARY_TREE_H #define BINARY_TREE_H #include #include Left = NULL; NewNode->Right = NULL; NewNode->Data = NewData; return NewNode; } void SBT_DestroyNode(SBTNode* Node) { free(Node); } void SBT_DestroyTree(SBTNode* Node) { if(Node == NULL) return; // 왼쪽 하위 트리 소멸 SBT_DestroyTree(Node->Left); // 오른쪽 하위 트리 소멸 SBT_DestroyTree(Node->Right); // 루트 노드 소멸 SBT_DestroyNode(Node); } vo..
VM ware 를 통해 데이터베이스 서버를 구축하고 로컬 네트워크 환경까지 구축하였다. // 수업 시작시 앞으로 해야할 DB startup 등 Setting 작업 $ lsnrctl stop // 현재 listener 중지 $ sqlplus '/as sysdba' // 관리자로 로그인 SQL> startup // db start SQL> exit $ isqlplusctl start // 웹서버 시작 $ lsnrctl start // 리스너 시작 $ emctl start dbconsole // em(엔터프라이즈 매니저) 시작 강사님 말씀과 PDF 자료를 참고해가면서 따라하기 바쁜 첫 시간이었던 것 같다. 앞으로 실습을 위해 항상 써야 한다니 꼭 숙지 해야 할 듯!!