반응형 분류 전체보기117 관계 해석과 관계 대수 관계 해석(Relational Calculus)원하는 정보가 무엇인지에 대해 정의하는 비절차적 언어SQL문과 같은 질의어를 사용하며 튜플 관계해석, 도메인 관계 해석으로 구분됩니다.튜플 관계 해석 : 튜플을 기준으로 데이터를 조회합니다.도메인 관계 해석 : 속성을 기준으로 데이터를 조회합니다.관계 해석과 관계 대수는 RDB 처리하는 기능과 능력에서 동등합니다.논리기호 : OR(∨), AND(∧), NOT(¬)모든 것에 대하여(∀)어느 것 하나라도 존재(∃) 관계 대수원하는 정보과 그 정보를 유도하는 방식을 정의하는 절차적 언어입니다.일반 집합 연산자 : 합집합 ∪ , 교집합 ∩ , 차집합 - , 교차곱 ×순수 관계 연산자 : SELECT(σ), PROJECT(π), JOIN(⋈), DIVISION( ÷ .. 개념/정보처리기사 2024. 4. 26. 데이터 정규화(1NF, 2NF, 3NF, BCNF) 정규화란?데이터 무결성을 유지하기 위해 중복을 최소화하고, 일관성을 보장하기 위한 개념입니다.※ 무결성 : 데이터의 정확성, 일관성, 유효성이 유지되는 것을 뜻합니다.제1정규형(1NF) : 도메인이 원자값만 가지도록 분해제2정규형(2NF) : 부분 함수 종속 제거제3정규형(3NF) : 이행적 함수 종속 제거BCNF(보이스 코드 정규형) : 결정자가 후보키가 아닌 종속 제거제4정규형 : 다치 종속 제거제5정규형 : 후보키를 통하지 않는 조인 종속 제거정규화의 목적은 삽입, 갱신, 삭제에서 발생하는 이상현상을 제거하는 것입니다.삽입 이상 : 데이터 넣을 때, 관련 없는 정보도 함께 넣어야 하는 현상갱신 이상 : 데이터 갱신 시, 데이터의 불일치가 발생하는 현상삭제 이상 : 데이터 삭제 시, 관련된 정보도 함.. 개념/정보처리기사 2024. 4. 26. React - 변경 가능한 제목 만들기(Ant Design) 아이디어 Canva에서 프로젝트명을 바꿀 수 있는 것처럼 여행 제목을 바꿀 수 있어야 합니다. 초기 제목을 표현하기 위해서 h1태그를 활용했지만, 변경이 불가능합니다. Ant Design 컴포넌트 중 Input을 활용하면 변경 가능한 제목을 표현할 수 있습니다. 제목 관련 기능 및 구현 결과 제목을 클릭하면 변경할 수 있어야 합니다.(이 때 윤곽선은 나타나도 괜찮습니다.) Input인 티가 나지 않도록 윤곽선이 없어야 합니다. 값이 변경된 것을 인식하고 적당한 처리를 할 수 있어야 합니다. 글자가 제목처럼 커야합니다.(20px) 위 기능 대로 구현한 결과는 아래와 같습니다. 구현 코드 const editableTitleStyle: React.CSSProperties = { border: "none", m.. WEB/REACT 2024. 4. 10. React - useState, Hooks 기초 React QuickStart Quick Start – React The library for web and native user interfaces react.dev Updating the screen 컴포넌트가 특정 정보를 기억하고, 이를 보여주는 기능이 필요할 때 사용합니다. ex) 버튼이 클릭된 횟수를 세는 경우가 있죠 이 때, 아래 코드를 사용하면 특정 값의 변화에 따라 컴포넌트가 변화하는 것을 확인할 수 있습니다. 여기서 반드시 setCount(또는 본인이 설정한 함수)로 count(state)를 변경해주어야 합니다. import { useState } from 'react'; function MyButton() { const [count, setCount] = useState(0); func.. WEB/REACT 2024. 4. 6. React - 완전 기초 리액트 Quick Start Quick Start – React The library for web and native user interfaces react.dev React Component - 반드시 대문자로 시작해야합니다. - HTML은 반드시 소문자이어야 합니다. JSX 아래와 같은 Markup Syntax를 JSX라 부른다. 별도 설치 없이 사용할 수 있습니다. - JSX 태그는 HTML보다 엄격한 규칙을 따라야합니다. - 닫는 태그 가 반드시 필요하며, - 여러 개의 JSX를 리턴할 수 없습니다. - 하나의 JSX태그로 감싸서 리턴해야합니다. ex) ..., ... 엄청 긴 HTML을 JSX코드로 바꾸려면, 다음 페이지에서 변환해보세요~ https://transform.tools/html-t.. WEB/REACT 2024. 4. 6. 코틀린 - 함수 - Do it 코틀린 프로그래밍 책보고 공부한 내용입니다. 콜백함수 - 특정 이벤트가 발생하기까지 처리되지 않다가 이베트가 발생하면 즉시 호출되어 처리되는 함수 fun networkCall(onSuccess : (ResultType)->Unit, onError : (Throwable) -> Unit){ try{ onSuccess(myResult) } catch (e: Throwable){ onError(e) } } networkCall(result ->{ // 네트워크 호출 성공 시 구현 }, error->{ // 네트워크 호출에 실패 시 구현부 }); 익명함수 - 일반 함수지만 이름이 없는 것 - 람다식에서는 return이나 break, continue 같은 제어문을 사용하기 어렵다. fun(x: In.. 카테고리 없음 2024. 3. 20. 코틀린 시작하기 - 자료형, 변수, 매개변수, 함수 코틀린 진입점 : main() main() 함수가 있는 파일 이름을 기준으로 자바 클래스가 자동 생성됩니다. Tools>Kotlin>Show Kotlin Bytecode → Decompile 버튼으로 확인가능 합니다. JVM 메모리 영역 코드 영역 : 명령어가 들어가는 영역 데이터 영역 : 정적 변수나 문자열 등이 들어가는 정적 메모리 영역 힙 영역 : 실행 중 생성되는 객체가 저장되는 동적 메모리 공간 스택 영역 : 코드 블록 내에서 호출되는 변수나 함수가 임시로 저장되는 메모리 영역 변수 변수의 선언 - val, var val : 읽기 전용 변수 - 최초로 지정한 변수의 값으로 초기화하고 더 이상 바꿀 수 없습니다. var : 값을 변경할 수 있음 * val로 변수를 선언해두고, 변경이 필요할 때 v.. 카테고리 없음 2024. 3. 20. 플랫폼 비즈니스의 특징 - 네트워크효과/규모의 경제 네트워크효과, 데이터 및 네트워크 기반 규모의 경제 네트워크 효과 이미 어떤 상품에 대해 큰 수요가 형성되면, 다른 진입자들의 선택에 큰 영향을 미치는 것을 말합니다. 사용자가 늘어날수록 해당 서비스를 이용했을 때의 이점이 커지게 되는 것이죠 카카오톡이 가장 대표적입니다. 카카오톡을 대체할 수 있는 많은 서비스가 있었지만, 많은 사용자 확보 이후 많은 서비스를 전개하면서 이제 대한민국은 카카오톡이 표준 메신저로 자리잡았지요. 데이터를 기반으로한 규모의 경제 확보된 수많은 데이터를 기반으로 사용자에게 개인화된 서비스를 제공할 수 있습니다. 이를 통해서 시장을 장악하는 것이죠. 이미 어느정도 서비스가 성장한 상태에서 활용할 수 있으므로 진입장벽이 높습니다. 또한, 진입장벽이 높기 때문에 독점 형태로 서비스가.. 카테고리 없음 2024. 2. 5. [코딩테스트] 배열에서 원소 삭제하기(.feat C) 귀중한 토요일 오후 시간을 바쳐서 4시간짜리 문제를 풀고 왔습니다. 1년 째 두달마다 한 번씩 시험을 치르고 있는데, C언어는 안쓰다보니 생각보다 구현에 시간이 많이 소요됩니다. 이번 시험에서는 이중 배열에서 원소를 삭제하려는데, 원하는 대로 동작하지 않아서... 그거 잡다가 시간을 다 날렸네요.. 관련해서 이번 글은 아래와 같이 작성해보겠습니다. 1. 일차원 배열에서의 원소 삭제 2. 이차원 배열에서의 원소 삭제 일차원 배열에서의 원소 삭제 - 해당 원소 이후의 원소를 한 칸씩 당기기 - 배열의 크기 업데이트 #include #define ARRSIZE 10 // dIdx위치의 element를 지운다. void deleteElementOneD(int arr[], int dIdx, int arrSize).. 코딩 테스트 2024. 2. 4. [코딩테스트] Quick Sort(.feat C) C언어로 하고 싶지는 않지만, 회사에서 C언어로만 코딩 테스트를 볼 수 있어서 quicksort를 C언어로 구현해보겠습니다. Quicksort특징 분할정복(divide and conquer) 알고리즘의 하나로, 일반적인 경우 빠르게 정렬할 수 있는 알고리즘입니다. 일반적인 경우의 시간복잡도는 O(nlogn), 최악의 경우에는 O(n^2)입니다. * 일반적인 경우 quicksort 진행 횟수가 logn번이며, 각 알고리즘 당 Left, Right Pointer움직이는 데 n번이 소요되므로 nlogn입니다. * 최악의 경우는 거꾸로 배치 된 경우로, pivot에 의해서 divide되는 덩어리가 없는 경우입니다. Quicksort알고리즘 pivot을 기준으로 왼쪽은 pivot보다 작은 숫자, 오른쪽은 pivo.. 코딩 테스트 2024. 2. 3. [Gradle] Gradle - Build LifeCycle/ build script의 실행 순서에 대한 이해! build script의 실행 순서 - 작성 순서대로 build scripts는 기본적으로 작성 순서대로 실행됩니다. build, assemble, createDoc 순서로 작성되었다면, 다음과 같이 실행됩니다. 또한, 스크립트가 실행되기 전에 task graph를 아래와 같이 생성하게 됩니다. * DAG(Directed Acyclic Graph)로 순환하는 사이클이 없고, 단방향 형태의 graph가 됩니다. gradle의 빌드 실행은 첫번째 초기화 단계, 두 번째 구성 단계, 세 번째 실행 단계로 총 3단계로 이루어져있습니다. 1. Initialization phase : 초기화 단계 - settings.gradle파일 이용 setting.gradle파일을 읽어서 Setting 인스턴스를 생성합니다. .. Gradle 2024. 2. 1. [Gradle] Gradle - Task개념 및 jar 생성 후 복사하기(.feat Copy) Gradle은 Maven과 함께 많이 사용되는 빌드툴입니다. Task를 Custom하여 jar파일 생성 후 해당 파일을 원하는 경로에 복사하는 것까지 진행해보겠습니다. Task란? 빌드로 수행되는 하나의 독립적인 유닛으로, compile, jar생성, javadoc생성, publish모두 Task의 일종입니다. → build script나, plugin으로부터 Task를 가져올 수 있습니다. 아래는 java라는 플러그인을 호출하면, java와 관련된 task를 활용할 수 있습니다. plugins { id 'java' } 현재 활용 가능한 task는 터미널에서 ./gradlew tasks로 확인할 수 있습니다. // gradlew파일이 있는 위치에서 ./gradlew tasks Build tasks ---.. Gradle 2024. 1. 31. 이전 1 2 3 4 5 ··· 10 다음 반응형