전체 글 708

스크럼

스크럼이란? - 프로젝트 관리를 위한 에자일 방법론 - 3가지 산출물, 3가지 미팅이 있음 - 15분의 제한된 시간 동안 서로의 문제점을 투명하게 공유하고 커뮤니케이션하며, 정형화된 틀이 아닌 개개인의 경험을 중시하여 유동적으로 프로젝트 방향을 이끌어나가는 것을 인정한다. 3가지 산출물 1. 제품 백로그 : 제품에 담고자 하는 "기능"들을 정리한 목록. 제품 책임자가 우선순위 결정. 2. 스프린트 백로그 : 스프린트 동안 개발할 "과업"을 정리한 목록. 3. 소멸차트 : 개발을 왈료하기까지 남은 작업량을 보여주는 그래프 3가지 미팅 1. 일일 스크럼 : 매일 진행하는 15분간의 프로젝트 진행상황 공유 회의. 각자가 한 일, 문제점 등을 이야기 함. 2. 스프린트 계획 : 스프린트에 대한 목표를 세우고백..

redis 명령어

MAP - GET SET 함수 명령 설명 SET mykey "myvalue" key: mykey, value:myvalue 값을 가지는 객체 SET mykey "myvalue" EX 10 10s뒤에 삭제 SET mykey "myvalue" PX 10 10ms뒤에 삭제 SET mykey "myvalue" XX 키가 존재하면 SET을 실행 SET mykey "myvalue" GET 이전에 있던 value값을 return한후 SET을 실행 SET mykey "myvalue" NX SETNX mykey "myvalue" 키가 존재하지 않으면 SET을 실행 MSET key1 val1 key2 val2 ... 여러값을 SET MGET key1 key2 여러값을 GET - counter command 명령 설명 I..

DB/[이론] 2023.07.12

mac redis 설치 및 실행

redis란 cacheDB의 한 종류로서 다양한 자료구조를 제공하는 in memory database이다. 싱글스레드라는 특징이 있고 하나의 한 클라이언트만 자료를 저장/조회하기 때문에 데이터 lock없이 빠르게 데이터를 조회가능하다. cacheDB로 redis를 많이 사용하는 이유는 자료구조의 설계와 사례가 용도에 따라 명확하기 때문이다. 또한 분산 클러스터 모드를 지원하므로 확장성도 제공할 수 있고 레퍼런스가 충분히 많다. redis설치 및 실행 1. brew를 이용한 redis설치 brew install redis 2. redis 실행 redis-server //일반실행 brew services start redis //백그라운드실행 3. 실행됐는지 확인 brew services info re..

DB/[이론] 2023.07.02

foreign key의 설정에 따른 update, delete 영향

foreign 설정 종류 1. ON DELETE/UPDATE CASCADE : 부모 테이블의 값이 지워지면(업데이트되면) 자식 테이블의 해당 row도 지워(업데이트)진다 CREATE TABLE foreign_key_test ( id int NOT NULL, content varchar(2048) DEFAULT NULL, user_id int DEFAULT NULL, product_id int unsigned NOT NULL, PRIMARY KEY (id), FOREIGN KEY (product_id) REFERENCES product (id) on delete cascade ); 2. ON DELETE/UPDATE SET NULL : 부모 테이블의 값이 지워지면(업데이트되면) 자식 테이블의 해당 row의..

DB/SQL 2023.06.21

SQL update에러(Error Code: 1175. You are using safe update mode)

SQL update 에러 SQL에서 UPDATE시에 다음과 같은 에러가 나는 경우가 있다. Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 이는 update를 할 때 where 절에 key 컬럼을 사용하지 않았을 때 발생하는 경고 에러이다. 예시) update product set price = price-1000 where name like 'shoes%'; 해결책 key 칼럼을 사용하..

DB/SQL 2023.06.20

studio 3T Visual Query Builder를 이용한 쿼리 역추출

Studio 3T의 Visual Query Builder기능 studio 3t에서 Visual Query builder를 이용하면, GUI로 원하는 검색을 하고, 그에 맞는 쿼리를 역으로 추출받을 수 있다. Visual Query Builder 사용법 1. GUI쿼리설정 1. Drag and drop field here or double-click를 더블클릭한다 2. 원하는 필드를 설정하고 해당 필드의 특정값과 같은, 혹은 포함하는(혹은 포함하지 않는..등등)의 조건을 설정한다. 2. 쿼리확인 query code를 눌러서 쿼리확인

DB/MONGODB 2023.06.19

java를 이용한 소켓프로그래밍

TCP IP 소켓 프로그래밍 - TCP IP 프로그래밍을 통한 통신 실습 - client에서 데이터를 주고, server에서 받고, 다시 server에서 데이터를 주고 client에서 데이터를 받는 순서 예시코드 TcpServer.java package clip18; import java.io.*; import java.net.ServerSocket; import java.net.Socket; import java.time.LocalTime; public class TcpServer { public static void main(String[] args) { ServerSocket serverSocket = null; try { serverSocket = new ServerSocket(8888); Sy..

CS/네트워크 2023.06.13

정적(static) 함수, 변수

정적함수, 정적변수 - 정적함수 : 인스턴스 없이도 사용할 수 있는 함수, 맴버변수를 사용할 수 없다. - 정적변수 : 인스턴스 없이도 접근할 수 있는 변수 - ex) public class CalculationTest { int ans = 4; static String name = "calculater"; //static 함수 static int add(int x, int y) { // return x+y+ans; //맴버변수는 사용할 수 없다. return x+y; } //맴버함수 int subtractFour(int x, int y) { return x-y-this.ans; } public static void main(String[] args) { //함수들의 사용 CalculationTest c..

abstract 클래스

abstract 클래스란? - 상속받는 자식클래스가 반드시 존재해야 하며 하나이상의 abstract 함수가 존재해야 한다. - abstract함수는 부모클래스에서 정의만 하고, 구체적인 로직 구현은 자식클래스에서 한다. 예시 1. 부모클래스(abstract 클래스) - flyable이라는 abstract 함수를 가진다 package com.fastcampus.de.java.clip11_6; public abstract class Bird { private int x,y,z; void fly(int x, int y, int z) { System.out.println("이동"); this.x = x; this.y = y; this.z = z; if (flyable(z)) { this.z = z; } el..

[접근제어자] private, default, protected, public

접근제어자 종류 1. private : 같은 클래스 내에서만 사용할 수 있음 2. default : 같은 package(폴더)에서만 사용할 수 있음 3. protected : 같은 package혹은 상속받은 자식 클래스에서만 사용할 수 있음 4. 모든 클래스에서 사용할 수 있음 예시 package com.fastcampus.de.java.clip11_5; public class AccessModifierTest { private void messageInside() { // private는 같은 클래스에서만 사용 가능 System.out.println("This is private modifier"); } void messageDefault() { // 같은 패키지에서만 사용 가능 System.out...

자바 클래스패스

클래스패스 - 자바로 컴파일 및 자바코드를 실행할 때 다른 디렉토리에 있는 파일의 경로를 지정하는 것. - java 파라미터 (-cp 혹은 -classpath)로 설정가능. - 여러개의 경로는 구분자(windows ";", 유닉스계열 ":")로 구분한다 * cf : 환경변수로 지정된 JAVA_HOME 하위의 lib디렉토리는 지정하지 않아도 클래스패스에 포함됨. 예시 외부 클래스(external이라는 디렉토리에 위치한)를 참조하는 Hello.java를 빌드하기 1. -cp 로 파라미터 외부폴더 external를 경로지정 세팅하고 Hello.java 컴파일 javac -cp ../external Hello.java Hello.class파일 생성됨 2. -cp로 외부폴더 external과 현재경로(.)를 ..

재무상태표, 손익계산서

재무상태표 - 재무상태표 : 특정시점에 회사의 재무상태를 보고하는 것. - 자산, 부채, 자본으로 구성되며, 자산은 차변(왼쪽), 부채,자본은 대변(오른쪽)에 적는다 - 항목별 종류 항목 자산 현금 예금 매출채권 : 상품을 외상으로 판매한 금액 대여금 : 남에게 빌려준 금액 상품 건물 토지 비품 부채 매입채무 : 상품을 외상으로 구입한 금액 차입금 : 남에게 빌린 돈 선수금 : 상품을 사고자 하는 사람에게 미리 받은 계약금 미지급금 : 상품 이외에 물건을 외상으로 구입한 금액 자본 (자산-부채)의 결과값 손익계산서 - 손익계산서 : 회사가 일정 기간에 달성한 경영성과를 나타내는 보고서. 일정 기간동안 실현한 수익에서 비용을 차감하여 순이익을 산출하는 것. 재무상태표와 손익계산서의 관계 - 재무상태표는 시..

금융/기초회계 2023.05.22

회계의 의미, 종류, 재무제표

회계란? - 회계는 재산 등에 관한 정보인 재무적 정보를 제공하는것을 목적으로 함. - 회사의 경영활동에 관심을 갖는 다양한 이해관계자가 합리적인 의사결정을 할 수 있도록 경영활동을 기록하고 추적하여 유용한 재무적 정보를 측정하여 전달하는 과정 회계의 종류 - 재무회계 : 외부의 이해관계저들에게 재무정보를 제공하는 것을 목적으로 함. - 관리회계 : 경영진과 같은 회사의 내부 이용자들에게 경영활동을 계획하거나 통제하는 데 유용한 정보를 제공하는것을 목적으로 함. 재무제표 - 재무제표의 종류 재무제표의 종류 정보 재무상태표 회사의 재무상태 보고(시점) 손익계산서 일정 기간의 재무성과 보고(기간, 1년단위) 현금흐름표 일정 기간의 현금 유출입 내역 보고(기간, 1년단위) 자본변동표 자본의 크기와 변동에 ..

금융/기초회계 2023.05.22

[판다스 데이터프레임] group by

groupby [] 사용 df.groupby(["a","b"])["a"].count() => a를 기준으로 b의 도메인별 개수를 보여준다 (example 1) df.groupby(['Survived','Pclass'])['Survived'].count() Survived Pclass 0 1 80 2 97 3 372 1 1 136 2 87 3 119 Name: Survived, dtype: int64 (example 2) df.groupby(['Pclass','Survived'])['Survived'].count() Pclass Survived 1 0 80 1 136 2 0 97 1 87 3 0 372 1 119 Name: Survived, dtype: int64 groupby agg 사용 df.group..

[페이지교체 알고리즘]

페이지 교체 알고리즘 페이징 기법으로 메모리를 관리하는 운영체제에서 페이지의 부재가 발생하여 새로운 페이지를 할당하기 위해 현재 할당된 페이지 중 어느 것과 교체할지 결정하는 방법. FIFO(Fist In Fist Out) 알고리즘 - 가장 먼저 들어온 페이지를 교체 - 그림 LRU(Least Recently Used) 알고리즘 - 가장 오랫동안 사용하지 않은 페이지를 교체하는 것 - 그림 LFU(Least Frequently Used) 알고리즘 - 참조횟수가 가장 적은 페이지 교체하는 것 - 그림 MFU(Most Frequently Used) 알고리즘 - 가장 많이 참조된 페이지를 교체하는 알고리즘 - 그림 OPT(Optimal) 알고리즘 - 앞으로 가장 오랫동안 사용하지 않을 페이지를 교체하는 알고리..

CS/운영체제 2023.04.23