반응형 분류 전체보기1065 [T.I.L] : 14 일일 배움을 위한 Today I Learned ! 알고리즘 알고리즘은 동적 계획 알고리즘, 플로이드 알고리즘 기초에 대해 알아봤습니다. 동적 계획 알고리즘은 입력 크기가 작은 부분들을 해결하고 그 해들을 이용해 보다 큰 크기의 부분 문제들을 해결하여 최종적으로 원래 주어진 입력의 문제를 해결하는 알고리즘입니다. 2021.11.08 - [Algorithm/알고리즘] - [알고리즘] : 동적 계획 알고리즘 및 플로이드 워샬 알고리즘 기초 [알고리즘] : 동적 계획 알고리즘 및 플로이드 워샬 알고리즘 기초 동적 계획 알고리즘 ( Dynamic Programming (DP) ) 입력 크기가 작은 부분 문제들을 해결하고 그 해들을 이용해 보다 큰 크기의 부분 문제들을 해결하여 최종적으로 원래 주어진 입력의 문제를.. 2021. 11. 8. [컴퓨터구조] : 디코더, 인코더, 멀티플렉서 디코더 (decoder) 디코더는 입력선에 나타나는 n비트의 2진 코드를 최대 2^n개의 서로 다른 정보로 바꾸어주는 조합논리회로입니다. 디코더와 인코더, 아날로그와 디지털 변환은 코덱이 해줍니다. 코덱은 하드웨어 기반과 소프웨어 기반으로 된 코덱이 있습니다. 스마트폰에는 하드웨어 칩이 하나 박혀있습니다. 인코더 (encoder) 인코더는 디코더의 반대라고 보면 됩니다. 부호기라고도 부릅니다. 멀티플렉서 (multiplexer, MUX) 멀티플렉서는 여러 개의 입력선들 중에서 하나를 선택해 출력선에 연결하는 조합논리회로입니다. 선택선들의 값에 따라서 특별한 입력선이 선택됩니다. 멀티플렉서는 여러 개의 입력선들 중 하나를 선택해 출력선에 연결해주기 때문에 데이터 선택기(data selector)라고도 부릅.. 2021. 11. 8. [알고리즘] : 동적 계획 알고리즘 및 플로이드 워샬 알고리즘 기초 동적 계획 알고리즘 ( Dynamic Programming (DP) ) 입력 크기가 작은 부분 문제들을 해결하고 그 해들을 이용해 보다 큰 크기의 부분 문제들을 해결하여 최종적으로 원래 주어진 입력의 문제를 해결하는 알고리즘입니다. 분할 정복은 중복이 되지 않습니다. 동적 계획 알고리즘은 중복을 허용합니다. ex] 피보나치 = 0 1 1 2 3 5 8 13 21 - - - - 플로이드 - 워샬 알고리즘 간단하게 플로이드 알고리즘이라고 부릅니다. 플로이드 알고리즘의 시간 복잡도는 O(n^3)으로 다익스트라 알고리즘을 n번 사용할 때의 시간 복잡도와 같습니다. 2021. 11. 8. [T.I.L] : 13 일일 배움을 위한 Today I Learned ! 식별자 식별자는 엔터티 내에서 인스턴스를 구분하는 구분자입니다. 데이터 모델링을 공부하면서도 자주 나왔지만 SQLD 시험을 보기 위해선 꼭 알아야 하는 부분입니다. 2021.11.07 - [자격증/SQLD] - [SQLD] : 식별자 [SQLD] : 식별자 식별자 식별자는 엔터티 내에서 인스턴스를 구분하는 구분자입니다. 식별자는 논리 데이터 모델링 단계에서 사용하고 Key는 물리 데이터 모델링 단계에서 사용합니다. 특징 유일성 : 주식별자에 ohju.tistory.com - 21년11월07일 작성 후 완료가 안 눌리는 실수가 있었습니다.. 2021. 11. 8. [SQLD] : 식별자 식별자 식별자는 엔터티 내에서 인스턴스를 구분하는 구분자입니다. 식별자는 논리 데이터 모델링 단계에서 사용하고 Key는 물리 데이터 모델링 단계에서 사용합니다. 특징 유일성 : 주식별자에 의해 모든 인스턴스들을 유일하게 구분할 수 있어야 합니다. 최소성 : 주식별자를 구성하는 속성의 수는 유일성을 만족하는 최소의 수가 되어야 합니다. 불변성 : 지정된 주식별자의 값은 자주 변하지 않아야 합니다. 존재성 : 주식별자가 지정이 되면 반드시 값이 들어와야 합니다. 분류 - 대표성 여부 주식별자 : 엔터티 내에서 각 어커런스를 구분할 수 있는 구분자로 다른 엔터티와 참조관계를 연결할 수 있습니다. 보조식별자 : 어커런스를 구분할 수 있는 구분자이나 대표성을 가지지 못해 참조관계를 연결할 수 없습니다. - 스스로.. 2021. 11. 7. [T.I.L] : 12 일일 배움을 위한 Today I Learned ! 어제 데이터 모델링을 공부하면서 어려운 점이 있었고 이 참에 SQLD 공부도 같이 하면서 엔터티의 개념과 분류에 대해 정리를 했습니다. 2021.11.06 - [자격증/SQLD] - [SQLD] : 엔터티 [SQLD] : 엔터티 엔터티 엔터티는 업무에 필요하고 유용한 정보를 저장하고 관리기 위한 집합, 보이지 않는 개념입니다. 특징 1. 반드시 해당 업무에서 필요하고 관리하고자 해야 합니다. 2. 유일한 식별자에 의 ohju.tistory.com 2021. 11. 6. [SQLD] : 엔터티 엔터티 엔터티는 업무에 필요하고 유용한 정보를 저장하고 관리기 위한 집합, 보이지 않는 개념입니다. 특징 1. 반드시 해당 업무에서 필요하고 관리하고자 해야 합니다. 2. 유일한 식별자에 의해 식별이 가능해야 합니다. 3. 엔터티는 두 개 이상의 인스턴스의 집합이어야 합니다. 4. 업무 프로세스에 의해 이용되어야 합니다. 5. 반드시 속성이 있어야하고 예외적으로는 관계엔터티는 주식별자 속성만 가지고 있어도 엔터티로 인정이 됩니다. 6. 다른 엔터티와 최소 1개 이상의 관계가 있어야 합니다. 관계를 생략하여 표현해야하는 경우는 통계성 엔터티, 코드성 엔터티, 시스템 처리시 내부 필요에 의한 엔터티 도출과 같은 경우입니다. 분류 유형 엔터티 : 물리적 형태이고 안정적이고 지속적인 엔터티입니다. 개념 엔터티 .. 2021. 11. 6. [T.I.L] : 11 일일 배움을 위한 Today I Learned ! 데이터 모델링 데이터 모델링을 진행하면서 복습과 3차 정규화를 알아봤습니다. 3차 정규화는 2차 정규화를 만족하고 식별자를 제외한 나머지 속성들 간의 종속이 존재하면 안 됩니다. 3차 정규화는 UID Bar가 없는 관계를 상속하는 특징이 있습니다. UID Bar를 만들면 식별자가 바뀌는 문제가 있습니다. 자세한 내용은 작성한 글을 참고하면 됩니다. 2021.11.05 - [Data Base/DA#] - [DA#] : 3차 정규화 [DA#] : 3차 정규화 복습 정규화 논리 데이터 모델을 일관성이 있고 안정성 있는 자료구조로 만드는 단계입니다. 정규화 의미 - 입력 이상 # 릴레이션에 새 데이터를 삽입하기 위해 원치않는 불필요한 데이터도 함 ohju.tis.. 2021. 11. 5. [Data Modelling] : 3차 정규화 복습 정규화 논리 데이터 모델을 일관성이 있고 안정성 있는 자료구조로 만드는 단계입니다. 정규화 의미 - 입력 이상 # 릴레이션에 새 데이터를 삽입하기 위해 원치않는 불필요한 데이터도 함께 삽입해야 하는 문제 - 삭제 이상 #릴레이션에서 데이터를 삭제하면 꼭 필요한 데이터까지 함께 삭제하여 데이터가 손실되는 연쇄 삭제 현상 - 갱신 이상 # 릴레이션의 중복된 데이터들 중 일부만 수정하여 데이터가 불일치하게 되는 모순이 발생하는 것 - 저번에 이어 정규화에 대해 알아보도록 하겠습니다. 2021.10.29 - [Data Base/DA#] - [DA#] : 정규화 정의 및 제1정규화, 제2정규화 [DA#] : 정규화 정의 및 제1정규화, 제2정규화 정규화 (Normalization) - 논리 데이터 모델을 일.. 2021. 11. 5. [T.I.L] : 10 일일 배움을 위한 Today I Learned ! PaaS-ta 구축을 하고 있습니다. PaaS-Ta에서 제공하는 동영상 강의를 보면서 따라하고 있습니다. 지금은 오류가 생겨서 해결하기 전 까지 잠시 멈춰있는 상태입니다. 2021.11.04 - [컴퓨터 공부/PaaS-Ta] - [PaaS-Ta] : PaaS-Ta(파스타) 구축 (2) [PaaS-Ta] : PaaS-Ta(파스타) 구축 (2) PaaS-Ta(파스타) 구축 저번에 하고 있던 구축을 이어나가도록 하겠습니다. 2021.11.03 - [컴퓨터 공부/PaaS-Ta] - [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) PaaS-Ta 구축 PaaS.. ohju.tistory.com 202.. 2021. 11. 4. [PaaS-Ta] : PaaS-Ta(파스타) 구축 (3) [PaaS-Ta] : PaaS-Ta(파스타) 구축 이어서 파스타 구축을 해보겠습니다. 전 글은 아래를 참고해 주세요. 2021.11.04 - [컴퓨터 공부/PaaS-Ta] - [PaaS-Ta] : PaaS-Ta(파스타) 구축 (2) [PaaS-Ta] : PaaS-Ta(파스타) 구축 (2) PaaS-Ta(파스타) 구축 저번에 하고 있던 구축을 이어나가도록 하겠습니다. 2021.11.03 - [컴퓨터 공부/PaaS-Ta] - [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) PaaS-Ta 구축 PaaS.. ohju.tistory.com Delploy Bosh VM cd /home/ubuntu/workspace/paasta-5.5/deployme.. 2021. 11. 4. [PaaS-Ta] : PaaS-Ta(파스타) 구축 (2) PaaS-Ta(파스타) 구축 저번에 하고 있던 구축을 이어나가도록 하겠습니다. 2021.11.03 - [컴퓨터 공부/PaaS-Ta] - [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) PaaS-Ta 구축 PaaS-Ta 일명 파스타 구축을 해보도록 하겠습니다. 처음 시도해 보는거라 잘 될지는 모르겠지만 찾아보면서 구축을 해보도록 하겠습니다. 사전 준비 - VMware Workstation 16 Player - ubuntu-18. ohju.tistory.com PaaS-Ta 설치 파일 다운로드 cd ~ 경로를 체크해 줍니다. mkdir workspace workspace 폴더를 생성해 줍니다. cd workspace sudo apt insta.. 2021. 11. 4. [T.I.L] : 09 일일 배움을 위한 Today I Learned ! Spring Framework Rest 기반 Open API 서버 구현을 했습니다. 톰켓과 톰켓을 통신합니다. 2021.11.03 - [Framework/Spring Framework] - [Spring Framework] : Rest 기반 Open API Server 구현 (1부) [Spring Framework] : Rest 기반 Open API Server 구현 (1부) DB에 테이블을 만들어주고 값을 넣어줍니다. 복합키를 주고 각 데이터의 크기와 형식을 정해주고 간단한 주석을 넣었습니다. 데이터 베이스에 값도 넣어줍니다. 전에 만들어둔 프로젝트를 복사 ohju.tistory.com 2021.11.03 - [Framework/Spring Framew.. 2021. 11. 3. [Spring Framework] : Rest 기반 Open API Server 구현 (3부) Rest 기반 Open API Server 구현 (3부) package poly.service; import java.util.Map; import poly.dto.AccStatDTO; public interface IGetAccStatService { //open API 서버로부터 전달받는 JSON 데이터 // 교통사고건수 가져오기 Map getAccStatForJSON(AccStatDTO pDTO) throws Exception; //OPenAPI 서버로부터 전달받는 JSON 데이터 // 야간 교통사고건수 가져오기 Map getAccStatNightForJSON(AccStatDTO pDTO) throws Exception; } IService package poly.service.impl; impor.. 2021. 11. 3. [Spring Framework] : Rest 기반 Open API Server 구현 (2부) SpringPRJ2.0 com.googlecode.json-simple json-simple 1.1.1 com.google.code.gson gson 2.8.6 pom.xml에 라이브러리를 추가해 줍니다. package poly.dto; public class AccStatDTO { //json 결과를 받기 위한 호출하는 URL private String url; //json 결과에 정의된 항목들 시작 private String reqYYYYMM; private String reqAcode; private String recordCnt; private String yyyymm; private String a_code; private String a_name; private String stat_a; pr.. 2021. 11. 3. [Spring Framework] : Rest 기반 Open API Server 구현 (1부) DB에 테이블을 만들어주고 값을 넣어줍니다. 복합키를 주고 각 데이터의 크기와 형식을 정해주고 간단한 주석을 넣었습니다. 데이터 베이스에 값도 넣어줍니다. 전에 만들어둔 프로젝트를 복사해서 이름을 바꿔준뒤 서버에 연결해 줍니다. - OpenApiPrj - SpringPRJ2.0 두 프로젝트로 진행합니다. OpenApiPr com.google.code.gson gson 2.8.6 pom.xml package poly.dto; public class AccStatDTO { private String yyyymm; private String a_code; private String a_name; private String stat_a; private String stat_b; private String reg.. 2021. 11. 3. [Python] : 명화 감상 프로그램 명화 감상 프로그램 프로그램을 실행시키면 파일을 선택할 수 있는 버튼이 생깁니다. 파일 열기로 불러와 줍니다. 이 gif 파일을 불러오겠습니다. 이미지가 프로그램에 표시됩니다. 프로그램 종료를 누르면 프로그램이 종료됩니다. from tkinter import * from tkinter.filedialog import * #함수 선언 부분 def func_open() : filename = askopenfilename(parent = window, filetypes = (("gif파일", "*.gif"), ("모든 파일","*.*"))) photo = PhotoImage(file =filename) pLabel.configure(image = photo) pLabel.image = photo def fun.. 2021. 11. 3. [Python] : 메뉴와 대화상자 메뉴 프로그램을 실행시키면 좌측 상단에 파일 버튼이 생깁니다. 클릭하면 열기와 종료가 나타납니다. 점선을 누르면 이렇게 열기,종료 창이 빠져나옵니다. from tkinter import * window = Tk() mainMenu = Menu(window) window.config(menu = mainMenu) fileMenu = Menu(mainMenu) mainMenu.add_cascade(label = "파일", menu = fileMenu) fileMenu.add_command(label = "열기") fileMenu.add_separator() fileMenu.add_command(label = "종료") window.mainloop() 메뉴를 선택하면 작동하는 코드 추가 열기 버튼을 누르면 열.. 2021. 11. 3. [Python] : 사진 앨범 프로그램 사진 앨범 프로그램 사진 앨범 프로그램입니다. 이전을 누르거나 다음을 누르면 리스트에 저장한 사진들이 표시됩니다. from tkinter import * # 전역 변수 선언 부분 fnameList = ["jeju1.gif", "jeju2.gif", "jeju3.gif", "jeju4.gif", "jeju5.gif", "jeju6.gif", "jeju7.gif", "jeju8.gif", "jeju9.gif"] photoList = [None] * 9 num = 0 # 함수 선언 부분 def clickNext() : global num num += 1 if num > 8 : num = 0 photo = PhotoImage(file = "gif/" + fnameList[num]) pLabel.configure.. 2021. 11. 3. [Python] : 키보드와 마우스 이벤트 처리 마우스 이벤트 처리 프로그램을 실행 시키면 마우스를 클릭할 수 있는 창이 나옵니다. 마우스로 클릭을 하면 좌,우 중 어느 쪽으로 클릭 했는지와 어디를 클릭 했는지가 좌표로 표시됩니다. from tkinter import * def clickMouse(event) : txt = "" if event.num == 1 : txt += "마우스 왼쪽 버튼이 (" elif event.num == 3 : txt += "마우스 오른쪽 버튼이 (" txt += str(event.y) + "," + str(event.x) + ")에서 클릭됨" label1.configure(text = txt) window = Tk() window.geometry("400x400") label1 = Label(window, text = .. 2021. 11. 3. [PaaS-Ta] : PaaS-Ta(파스타) 구축 (1) PaaS-Ta 구축 PaaS-Ta 일명 파스타 구축을 해보도록 하겠습니다. 처음 시도해 보는거라 잘 될지는 모르겠지만 찾아보면서 구축을 해보도록 하겠습니다. 사전 준비 - VMware Workstation 16 Player - ubuntu-18.04.5-desktop-amd64 - PuTTY ubuntu 다운로드 및 설치 빨간 박스를 참고하면서 따라가면 됩니다. 딱히 설명이 필요없는 부분은 설명을 패스하면서 기록하도록 하겠습니다. 설치하고 이것 저것 하기 때문에 크기를 80정도로 줬습니다. 아래 선택에서 멀티는 데이터를 옮기거나 할 때 유리하긴 하지만 퍼포먼스에서 약간 불리해지는 경향이 있기 때문에 싱글로 설정합니다. 우분투가 정상적으로 생겼지만 바로 들어가지 말고 우측 하단에 셋팅 버튼을 눌러 마저 설.. 2021. 11. 3. 이전 1 ··· 45 46 47 48 49 50 51 다음 반응형