본문 바로가기

한화시스템 BEYOND SW캠프

(30)
[3주차] 24.01.24 수요일 Git & GitHub Git 사용을 위한 설정 git config --global user.name "사용자 이름" git config --global user.email "사용자 이메일" 확인 git config --global user.name git config --global user.email 기본 브랜치명 변경 git config --global init.defaultBranch main 협업 시 윈도우와 맥에서 엔터방식의 차이로 인한 오류 방지 git config --global core.autocrlt true 깃 기본 명령어 git init : 깃 저장소 생성 git status : 현재 상태 확인 git add . : 저장소에 모든 파일 담기 git diff : 파일 추가, 변경, 삭..
[3주차] 24.01.23 화요일 상속과 합성 is-a 관계 / has-a 관계 상속은 모든 자식들에게 공통적으로 적용될 수 있는 요소나 인터페이스를 제공하는 것이다. 따라서 specific한 것들은 하위 클래스에서 구현해야 한다. 클래스가 서로 다른 속성이나 기능들을 갖고 있을 때 상속을 사용한다. 하지만 상속관계에서는 자식클래스와 부모클래스의 결합도가 높고, 여러 기능을 조합해야 하는 설계에서 클래스를 하나씩 추가하다 보면 수많은 클래스가 생성되는 클래스 폭발 문제가 발생할 수 있다. 합성 Composition 합성은 기존 클래스를 상속을 통해 확장하는 대신, 필드로 클래스의 인스턴스를 참조하게 만드는 설계이다. e.g.) Car is an engine.(X) / Car has an engine.(O) 합성을 이용하면 객체의 내부는 ..
[3주차] 24.01.22 월요일 객체 지향 프로그래밍 Object Oriented Programming 많은 객체들이 모여서 상호 협력하면서 데이터를 처리하는 방식. 프로그램을 묶음 단위로 쪼개서 재사용성을 높이기 위한 방식이다. 절차적 프로그래밍의 단점을 극복할 수 있다. cf.) 객체지향 - 객체를 부품으로 만든다. / 절차적 - 함수를 부품으로 만든다. real world의 객체를 abstraction을 통해서 class를 생성하고, 명사적 특징을 variable, 동사적 특징을 method으로 표현한다. 클래스 : 인스턴스(객체)를 생성하기 위한 하나의 템플릿. 클래스를 통해서 인스턴스를 생성한다. 즉, 클래스는 인스턴스가 아니다. 클래스에 정의된 변수와 함수는 클래스의 소유가 아닌 인스턴스의 소유이다. OOP의 4가지 특징 -..
한화시스템 BEYOND SW캠프 5기 2주차 회고 전반적인 느낀 점 닷새간 아니 나흘간 sql을 열심히 뿌셨다,,🤓 비록 금요일엔 휴가이슈로 sql 완전 마스터에 실패했지만 강사님께서 올려주신 실습파일을 토대로 복습하며 나름 알차고 뿌듯한 휴가를 보냈다. sql뿐만 아니라 프로그래밍 언어를 배울 때 가장 중요한 것은 체화하는 과정이라고 생각하는데 강사님께서 여러 실습 문제들을 제공해 주셔서 단순 암기가 아닌 내 것으로 이해시킬 수 있었다고 생각한다. 지난주보다 많은 분들과 다양한 대화를 하면서 현타+자괴감max인 감정을 느끼는 나날들을 보냈지만... 강사님이 내주신 sql 실습 문제를 다른 분들보다 조~금이나마 더 빨리 해결하면 금세 또 자존감max되는 이상하고도 알 수 없는 한 주였다.🥹 좋았던 점 내가 지난주 작성했던 회고록이 우수 블로그 회고로 선..
[2주차] 24.01.18 목요일 sql /* 데이터 입력 --insert into table_name[(column_name, .....)] values (value1, value2, .....) --데이터의 타입, 순서, 개수가 일치해야 한다. */ USEencore; SELECT* FROMemployee; INSERT INTO employee(emp_id, emp_name, emp_no, email, phone, hire_date, job_id, salary, bonus_pct, marriage, mgr_id, dept_id) VALUES ('900', '입정섭', '73xxxx-xxxxxxx', 'jslim9413@naver.com', '010xxxxxxxx', SYSDATE(), 'J1', '150000000', NULL, 'Y..
[2주차] 24.01.17 수요일 SQL -- 테이블 레벨의 제약조건. 두 컬럼을 묶어서 unique 걸기 (composite unique) CREATE TABLE user_tbl( user_id VARCHAR(50) NOT NULL, NAME VARCHAR(50), birthYear DATE, address VARCHAR(100), mobile CHAR(13), height SMALLINT, regdate DATE, CONSTRAINT mobile_height_un UNIQUE (mobile, height) ); -- composite primary key CREATE TABLE user_tbl( user_id VARCHAR(50), NAME VARCHAR(50), birthYear DATE, address VARCHAR(100), m..
[2주차] 24.01.16 화요일 SQL -- SQL 4일차(join, subquery) /* join : N개 이상의 테이블을 서로 묶어서 하나의 결과집합을 만들어 내는 것 -- 관계형 데이터베이스의 가장 큰 특징 -- 테이블의 관계(1:1, 1:N) ANSI 표준 구문 SELECT FROMTABLE01-- 테이블 여러개를 열거하면 안됨!! from 절에는 무조건 테이블 하나만 가능 [INNER] JOINTABLE02ON(조건) -- 조건이라는 건 연산자를 사용할 수 있다 [INNER]JOINTABLE02USING(컬럼명)-- 부모의 기본키와 자식의 외래키 컬럼명이 동일해야함. NATURAL[INNER]JOINTABLE02-- 알 필요 X LEFT|RIGHT|FULL[OUTER]JOINTABLE02ON(조건) LEFT|RIGHT|FUL..
[2주차] 24.01.15 월요일 SQL /* [group by {column_name | expr | position}] 특정 컬럼에 대해 동일한 값을 갖는 행동을 하나의 행으로 처리하는 것 통계 작업에 보편적으로 사용된다 */ USE sqldb; -- 사용자별 구매 총액을(sum) 확인하고 싶다면? SELECTuserID,-- group by절에 명세된 컬럼은 select절에 정의가 가능하다 SUM(price * amount) AS 'total_price' FROMbuytbl GROUP BYuserID ORDER BYtotal_price DESC; -- 사용자별 평균 구매 개수를 확인하고 싶다면? SELECTuserID, AVG(amount) FROMbuytbl GROUP BYuserID; USE encore; -- 부서번호가 50번..