분류 전체보기 149

[GitHub] ! [rejected] ScoreCheck -> ScoreCheck (fetch first) error: failed to push some refs to URL

오늘은 숫자야구를 페어 프로그래밍을 통해 구현했다. 첫 페어 프로그래밍이었다. 나와 페어였던 분도 미리 작성해 왔기에 간단하게 코드리뷰 진행 후, 내비게이터와 코더로 역할을 나눠 코드를 작성했다. 그 후, 각각 파트를 나눠 하나의 레포지토리에 add, commit, push를 하기로 했다. 초반에는 명령어 순서조차 몰라서 정신이 없었다. PR까지 완료했으나 브랜치 생성을 하지 않았다거나, 커밋을 메인 브랜치에서 하거나 등등 여러 실수가 있었다. 그러다가 어느정도 익숙해졌다 싶었을 즈음 처음 보는 에러가 발생했다. ! [rejected] ScoreCheck -> ScoreCheck (fetch first) error: failed to push some refs to hint: (e.g., 'git pul..

TroubleShooting 2023.06.13

GIT 명령어 정리

git init 현재 디렉토리를 Git 저장소로 초기화하여 Git을 사용하여 프로젝트를 관리할 수 있게 된다. echo "# github_test" >> README.md "github_test"라는 제목을 가진 README.md 파일을 생성하고, 파일 내용에 "# github_test"를 추가한다(README 파일의 내용을 설정하는 것) git remote add origin URL 원격 저장소의 별칭(origin) 명명과 원격 저장소와 로컬 저장소를 연결 git clone URL 최초 한번만 사용하며, 원격 저장소에 있는 모든 파일을 로컬 저장소로 복제해 온다 git pull origin 브랜치명 clone 후에 사용되며 해당 브랜치의 변경사항이 있을 시, 최신버전을 가져온다. git branch -..

GIT 2023.06.11

Github란? Git의 장점 및 주요용어

GitHub는 소프트웨어 개발자들에게 코드 관리와 협업을 위한 웹 기반 호스팅 서비스이다. Git은 원격저장소의 코드를 로컬 저장소(개인 PC)로 복제(Clone)하여 작업하는 방식인 분산 버전 관리 시스템(DVCS)을 사용한다. 주요 장점 1. 코드 관리: 버전 관리 시스템(Git)을 사용하여 코드 변경 내역 추적 및 롤백하는 등의 작업을 쉽게 수행할 수 있다. 2. 협업: 여러 개발자들이 함께 작업하고 코드를 공유하는 데 최적화되어 있다. 동일한 저장소에 접근하여 변경 사항 제안 및 검토할 수 있다. 이를 통해 의사소통과 협업이 원활하게 이루어진다. 3. 이슈 트래킹: 버그, 기능 요청, 작업 항목 등 이슈를 관리하기에 유용하다. 4. 지속적인 통합과 배포: 지속적인 통합과 배포(CI/CD)를 지원한..

GIT 2023.06.11

오버로딩(Overloading)과 오버라이딩(Overriding)

오늘은 오버로딩과 오버라이딩에 대해 찾아봤다. 처음에는 비슷한 이름이라 헷갈리기도 하고, 비슷한 기능이겠거니 생각했지만 전혀 다른 기능이었다. 오버로딩은 같은 이름을 가진 메서드나 생성자를 여러 개 정의하는 것이다 매개변수의 개수, 타입, 순서 등을 서로 다르게 정의하여야 함 오버로딩된 메서드들은 같은 이름으로 호출되지만, 매개변수의 정보를 통해 호출될 메서드를 구별함 오버로딩을 통해 메서드의 이름을 좀 더 직관적이고 일관성 있게 사용할 수 있음 //오버로딩 예제 public int add(int a, int b) { return a + b; } public double add(double a, double b) { return a + b; } public int add(int a, int b, int ..

Java 2023.06.09

Python mongoDB Join 사용 코드

mongoDB는 NoSql DB로, Join문을 사용할 수 없다. 하지만 $lookup을 사용하여 MongoDB에서 여러 개의 컬렉션 간 조인을 수행할 수 있다. $lookup은 RDBMS의 조인 기능과 유사한 기능을 제공하는 파이프라인 연산자이다. 코드 작성 예시 import pymongo my_client = pymongo.MongoClient('mongodb://localhost:27017/') my_db = my_client['Orders'] my_collection = my_db['buy_orders'] result = my_collection.aggregate([{ '$lookup' : { 'from': 'sell_orders', 'localField': 'id_transaction', 'fo..

DB 2023.06.09

게시판 만들기

오늘은 첫 미니 프로젝트 첫날이다. 매우 짧은 프로젝트라 2 ~ 3일 정도밖에 시간이 없었다. 급하게 팀원끼리 상의 후, 자기소개 게시판과 게시판에 들어갈 댓글을 만들기로 결정했다. 모두 팀 프로젝트는 처음이라 명세단계가 많이 허술했다. 어찌저찌 게시판에 들어갈 댓글생성, 조회를 만들었으나 부족한 명세로 인해 더 짧아진 시간 때문에 댓글기능을 사용하지 않게 되었다. 시간이 얼마 없었기에 늦은시간까지 작업하여 댓글 생성, 조회를 게시글 생성, 조회로 바꿀 수 있었다. function save_bucket() { let formData = new FormData(); let name = $('#name').val() let age = $('#age').val() ... formData.append("name..

기타 2023.06.08

AWS를 이용한 배포

우선, AWS에 회원가입을 하여야 한다. 회원가입이 완료되었다면 아래와 같은 창이 뜰 것이다. 그림과 같이 1번 클릭 후 2번(보안 자격 증명)을 클릭한다. 이후 아래와 같은 창이 뜰 것이다. 스크롤을 내리다 보면 엑세스 키가 보일 것이다. 이미 엑세스 키를 생성한 뒤라 조금 다르겠지만 액세스 키 만들기를 눌러, 액세스 키를 생성한다 생성된 엑세스 키 ID와 보안 엑세스 키를 따로 복사하여 저장해둔다. 이후 배포를 원하는 python으로 가서 터미널을 킨다. 터미널 준비하기 - 아래의 순서대로 입력 mkdir deploy cp app.py deploy/application.py cp -r templates deploy/templates pip freeze > deploy/requirements.txt c..

웹 개발 종합 2023.06.05

MongoDB 이용하기

파이썬을 기준으로 작성된 글이다. 우선 MongoDB에 DB를 생성했다면, 아래와 같은 창이 뜰 것이다. 1. 빨간 원으로 표시한 Connect를 누른다. 누른다면 아래와 같은 창이 뜰 것이다. 2. 맨 위에있는 Connect to your application에 있는 Drivers를 누른다. 3. 위의 붉은 동그라미에 Driver에서 사용할 언어(java, python 등)를 선택하고 Version 에서는 언어의 버전을 선택한다. 4. 아래의 붉은 동그라미의 코드를 복사한다. from pymongo import MongoClient client = MongoClient('application code 입력') db = client.dbsparta 5. 이후 위 코드의 application code 입력..

카테고리 없음 2023.06.02

모던 자바 알아보기(람다, 스트림, Optional)

모던 자바란 Java 8 이상의 버전을 가리키며, 새로운 기능들을 포함한 자바의 현대적인 개발 스타일과 패러다임을 의미한다. 모던 자바의 개선 사항들은 코드의 가독성, 유지보수성, 생산성, 성능 등을 향상시키고, 개발자들이 더 효율적으로 자바 애플리케이션을 개발할 수 있게 한다. 이전 버전의 자바와 비교했을 때, 다음과 같은 주요 개선 사항들이 있다. 1. 람다 표현식 (Lambda Expressions): 함수형 프로그래밍을 위한 기능으로, 익명 함수를 간결하게 표현할 수 있다. 코드의 간결성과 가독성을 향상시킨다. 2. 스트림 API (Stream API): 컬렉션 데이터를 처리하기 위한 선언적인 방식을 제공한다. 병렬 처리와 메서드 체이닝 등을 통해 데이터 처리를 효율적으로 수행할 수 있다. 메서드..

Java 2023.05.30

쓰레드의 상태

쓰레드의 상태 상태 Enum 설명 객체생성 NEW 쓰레드 객체 생성(new()). start() 메서드 호출 전 상태 실행대기 RUNNABLE 실행 가능한 상태 실행 Running 실행중인 상태(start()메서드가 호출된 상태) 일시정지 WAITING 다른 쓰레드가 통지(notify)할 때까지 기다리는 상태 일시정지 TIMED_WAITING 주어진 시간 동안 기다리는 상태 일시정지 BLOCKED 사용하고자 하는 객체의 Lock이 풀릴 때까지 기다리는 상태 종료 TERMINATED 쓰레드의 작업이 종료된 상태

Java 2023.05.30