C# 프로그래밍 13번째 시간 - 확장클래스 및 기타 클래스
유니티의 열세걸음, C# 공부시작 53일차
유니티의 열세걸음, C# 공부시작 53일차
유니티의 열두걸음, C# 공부시작 49일차
유니티의 열한걸음, C# 공부시작 45일차
유니티의 열걸음, C# 공부시작 42일차
유니티의 아홉걸음, C# 공부시작 39일차
유니티의 여덟걸음, C# 공부시작 35일차
유니티의 일곱걸음, C# 공부시작 32일차
유니티의 여섯걸음, C# 공부시작 29일차
유니티의 다섯걸음, C# 공부시작 25일차
유니티의 네걸음, C# 공부시작 22일차
유니티의 세걸음, C# 공부시작 17일차
유니티의 두걸음, C# 공부시작 3일차
유니티의 첫걸음, C# 공부시작 1일차
조합 문제풀이 (백준 온라인 저지 2775번) 조합 개념 정리 (DP 테이블)
트리 문제풀이 (백준 온라인 저지 1991번) 트리 개념 정리 (전위, 중위, 후위)
그래프 알고리즘 문제풀이 (백준 온라인 저지 18352번) 46번 BFS 탐색 알고리즘을 이용한 인접 리스트 풀이 ```python import sys from collections import deque input = sys.stdin.readline
정수론 알고리즘 문제풀이 (백준 온라인 저지 1456번) 거의 소수 -> 소수의 N 제곱 이 소수들을 잘 거듭제곱해보면서 a <= i^n <= b인 수의 개수를 직접 세주는 방식 10^7이하의 소수만 찾아서 계산하면 된다. 숫자를 for문을 통해 반복하면 i ...
그리디 탐욕법이라고도 하는 그리디(Greedy) 알고리즘은 “현재 상황에서 최적이라고 생각하는 해를 선택“하는 방법이다. 현재 상황에서 가장 좋다고 생각하는 것을 선택해 나가는 방식이며 이러한 선택 방법이 가장 좋을 것이라고 기대하고 사용하는 것이다. 그러나 말그대로 앞으로 남...
그래프란, 정점(node)과 그 정점을 연결하는 간선(edge)으로 이루어진 자료구조의 일종을 말하며, 그래프를 탐색한다는 것은 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것을 말합니다.
Python DeQue 최근 파이썬 알고리즘을 공부하면서 deque을 사용하게 되었는데, 이에 사용되는 함수가 궁금하여 알아보았다. 일단 list 대신 사용하는 이유는 deque가 List보다 속도가 빠르기 때문이다. list는 O(n)의 속도이고, deque는 O(1)의 속도로...
앞에서 여러가지의 정렬을 알아보았는데 그 중 합병 정렬을 다뤄보겠다.
정렬 알고리즘 이번엔 정렬 알고리즘에 대해 정리하겠다. 느린 순서부터 빠른 순서대로 정렬하기순이다.
스택과 큐에 대한 내용을 다뤘는데, 파이썬을 활용하여 구현해보겠다. 다시 상기하자면 스택은 LIFO(Last In, First Out), 큐는 FIFO(First In, First Out)이라고 한다. 즉, 데이터를 쌓아서 어떻게 출력할 것인가에 대한 자료구조이다.
스택(STACK)
최근 많은 회사가 코테를 보고 그 중 하나가 알고리즘이 있다. 2학년 1학기때 저희학교도 알고리즘 수업을 배웠는데, 자료구조가 코딩에서 제일 중요하다는 것을 깨달았다. 오늘은 자료구조 알고리즘에 대해서 기초적인 내용을 적어보겠다.
현재 3월부터 진행하고 있는 스프링부트 프로젝트 (Fashion Cloud)을 하고 있는 과정에서 처음 프로젝트 생성할때 도커파일을 만들어두고 연결을 했다고 생각하였는데 빌드가 정상적으로 발생하지 않는 문제가 발생하였다. 웃긴 게 터미널에 빌드가 되는 형태로 나와있었으면서 막상...
스프링부트 프로젝트를 하다 영속성 개념이 매우 중요하다는 것을 들었다. 이 기회에 영속성에 대해서 알아볼까 한다.
스프링부트 코드를 뜯어보다가 롬복을 발견하게 되었다. 롬복(Lombok)이 뭘까?
지난 시간에는 MVC에 대해 알아보았다. 이제 본격적으로 스프링부트의 파일 구조를 뜯어본 후 살펴보겠다.
오랜만에 스프링부트에 관해 포스팅한다. 최근 미국 한달살기도 다녀왔고, 부트캠프를 하나 더 진행을 하여서 스프링부트에 관심을 가질 시간이 없었다. 앞으로 스프링부트 관련 프로젝트를 계속 진행하면서 내가 알게된 것을 다시 적어보려고 한다.
slf4j란? 전역으로 처리하는 exception handler에서 Slf4j를 이용하는데, 로깅에 대한 추상 레이어를 제공하는 인터페이스의 모음이다. 인터페이스를 사용하여 로깅을 구현하게 되면 추후에 로깅 라이브러리를 변경할 때 코드의 변경 없이 할 수 있다.
Spring Boot 예외, 에러 처리
서블릿의 동작 과정
서블릿
스프링 JPA이란? Java Persistence API (자바 ORM 기술에 대한 API 표준 명세) 한마디로 ORM을 사용하기 위해 자바 어플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스이다. ORM에 대한 자바 API 규격이며 Hibernate, Ope...
스프링이란? Spring이 무엇일까? 스프링은 자바 기반의 웹 어플리케이션을 만들 수 있는 프레임워크이다. spring.io 사이트에서 확인하면 스프링 프레임워크는 현대 자바 기반의 엔터프라이즈 어플리케이션을 위한 프로그래밍 및 Configuration Model을 제공한다고...
Tistory로 옮기는 이유
겨울에 진행하던 스프링부트 프로젝트가 있었는데, 팀원들 구조조정과 예의치 못한 상황들로 인해 다들 활동이 부진하고 내가 직접적으로 구현할 수 있는 상황이 별로 없어서 많이 배우지도 못한채 프로젝트가 무산되었다. 이번에는 새로운 친구들과 함께 새로운 주제로 들어가게 되었고, 시작...
실리콘밸리 한달살기 프로그램 6기로 참가하여 해당 내용을 디스콰이엇에 요약해놓았다. 본래 미국에서 느꼈던 부분들을 메모장에 적어놨지만 같이 공유하면 좋을 것 같아서 올려보았다. 글을 정리하면서 다시 한번 느꼈던 점을 정리하였고 덕분에 앞으로 어떻게 해야될지 갈피가 조금 잡힌 것...
실리콘밸리 한달살기 프로그램 6기로 참가하여 해당 내용을 디스콰이엇에 요약해놓았다. 본래 미국에서 느꼈던 부분들을 메모장에 적어놨지만 같이 공유하면 좋을 것 같아서 올려보았다. https://disquiet.io/@guess6466/makerlog/6664
실리콘밸리 한달살기를 온 지금 이번 운좋게 테커에서 지원받아 실리콘밸리에 가서 한달살기를 진행하게 되었다. 기간은 22년 12월23일부터 23년 1월 23일까지이다. 해외여행은 이번에 거의 처음이고 개발을 잘하고 관심있어하는 친구들과 함께 가서 관심사도 비슷하고 개발에 대한 좋은...
이번에 한국공학대 GDSC 1기로 참여하면서 여러 행사를 접할 수 있었는데, 그 중 하나의 큰 행사가 바로 Devfest이다. 장소는 송도 스타트업파크에서 진행하였고 집에서도 1시간 반 거리였지만 지하철편이 괜찮아서 잘 다녀왔다.
처음으로 경험해보는 부트캠프 - 많은 경험 쌓일듯
블록체인 GO언어를 처음 접하였을때 제일 관심있었던게 블록체인이다. 블록체인 알고리즘 자체가 신기하였고 나도 이 기회에 공부해보고 싶었던 것이 컸다. GO언어를 이용하여 최근에 블록체인을 구현한다고 하는데 아무래도 제일 큰 이유 중 하나가 코드가 간단하며 실행속도가 매우 빨라서...
Gin 프레임워크 통한 API 구축 저번에는 Gin 프레임워크 초기 세팅을 해보았다. 이를 통해 API 구축을 진행해보겠다.
Gin 프레임워크 Golang에 대해 기본적으로 공부하였으니 이를 이용하여 웹 서버를 개발하는 방법에 대해서 알아보려고 한다. Golang에는 많은 웹 프레임워크가 있는데 그 중에서 가장 유명한 웹 프레임워크인 Gin 웹 프레임워크를 사용하는 방법에 대해서 알아보자.
고루틴(goroutine) 이란? 고루틴(goroutine)이란, 프로그램에 있는 다른 고루틴과 관련하여 독립적으로 동시에 실행되는 함수이다. 즉, Go 언어로 동시에 실행되는 모든 활동을 고루틴이라고 한다.
채널 방향 (channel directions) 채널은 고루틴 간의 통신 매체로 서로 데이터를 주고받을 수 있다. 기본적으로 채널은 양방향이지만 단방향 채널도 만들 수 있는데, 단방향 채널을 만들때는 make() 함수를 사용한다. ```go // 수신용 채널 c1 := make(...
채널(Channel) 이란? Go 언어에서 채널은 고루틴을 연결해주는 통로(파이프)이다. 기본적으로 채널은 양방향이고 고루틴이 아래 이미지와 같이 동일한 채널을 통해 데이터를 보내거나 받을 수 있다.
GO언어란? 놀랍게도 만들어진지 10년이 지난 언어이다. 하지만 우리가 평소에 쓰는 Java나 C언어보다는 많은 사람들이 알고 있지 않다. 우연히 GDSC 활동 중 GO 스터디에 들어갈 기회가 생겼고 찾아보았는데 최근 내가 관심있어 하는 블록체인과도 연관이 있다고 한다. 앞으로...
문제 설명 다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 7월의 아이스크림 주문 정보를 담은 JULY 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER는 각각 아이스크림 공...
GROUP BY 관련 문제를 풀다가 WHERE과 HAVING의 사용법이 너무 헷갈려서 정리한다.
프로그래머스 SQL 코딩테스트를 풀다가 GROUP BY을 한번 정리할 필요가 있다고 생각해 정리한다.
프로그래머스 SQL 코딩테스트를 풀다가 IF문을 처리하기 위해 정리하였다.
프로그래머스 SQL 코딩테스트를 풀다가 인상적인 문제를 발견해서 정리합니다.
데이터베이스는 ORM을 통해 처음 접하게 되었는데, SQL 코딩테스트를 계기로 SQL문의 기초 문법을 정리해보았다. 아직 알고 있는게 많이 없어서 추가적으로 계속 정리해보겠다.
SQL문을 풀기 전에 전반적인 데이터베이스의 용어를 정리해보았다. 데이터베이스 (DB, Database)
미국을 다녀와서 한 달동안 소중한 경험을 한 후 학교를 다니면서도 이 시간을 효율적으로 사용하기 위해 방법을 찾아보았고 최근 이력서를 초안 작성하고 인턴을 많이 신청하였다. 사실 기본 지식도 많이 없고 제일 중요한 자바 경험도 없다보니 서류합격이 될 것이라는 생각을 안해봤지만 혹...
나의 고민을 적은지 어느덧 3개월이 지났다. 그동안 많은 일이 있었고 상상도 못할 정도의 소중한 경험을 하였다. 작년 여름방학부터 시작하여 개발 공부를 한지 8개월정도 된 것 같다. 부트캠프도 3번 경험하여 이제 프로젝트의 전반적인 흐름은 파악할 수 있었고 리더로 활동도 해보며...
최근 근황 현재 여름방학 부트캠프로 입문하여 개발 공부를 시작한지 5달정도 되었다. 1학기에는 이런저런 것을 많이 해보고 싶었는데 그런 기회가 없어 정신적으로 많이 힘들었지만 지금은 여러 가지의 스터디와 프로젝트를 진행하면서 몸이 바쁜 내 모습을 볼 수 있었다.
미국 실리콘밸리 소프트웨어 부트캠프 프로그램 5주 진행까지 마무리
미국 실리콘밸리 소프트웨어 부트캠프 프로그램 3주차 마무리
미국 실리콘밸리 소프트웨어 부트캠프 프로그램 신청
Hooks 전에 useState에 대해 다뤘는데, 생각해보니 왜 useState을 다뤄야하는 이유를 잘 몰라 찾아보았다. 그리고 내용을 찾았는데, 기본적으로 hook을 먼저 알아야되서 내용들을 공유해보려고 한다. Hook안에 useState와 useEffect가 있는데, 주요 ...
반복문 우리는 일반적으로 지금까지 코딩을 하면 for문, 혹은 while문을 이용하였다. 이는 C,C++등에서 주요 사용하는 코드이다. 이때 파이썬과 JS에서는 반복문으로 추가적으로 map함수라는 것을 사용하는데, 이를 사용하는 이유를 알아보자.
useHistory, useNavigate 버튼을 누르면서 해당 페이지를 넘어갈 때 props를 주면서 넘어가야 되는 경우가 있다. 이 때문에 useHistory라는 것을 찾아봤는데, react-router-dom이 6버전으로 바뀌면서 useHistory의 기능인 go, goB...
React의 Hook 기능 React v16.8에 새롭게 Hooks라는 기능이 도입되었다. Hooks는 함수형 컴포넌트에 state를 제공함으로써 상태 관련 로직의 재사용을 이전보다 훨씬 쉽게 만들어준다. Hook안에 useState와 useEffect가 있다.
최근 파이썬으로 코딩테스트를 문제를 풀고 있는데, 카카오 채용연계인턴십 문제로 유명해서 적어봤다.
친구가 진행하고 있는 코딩테스트를 Visual Stduio으로 직접 구현해보았습니다.
문제1 양의 정수 x가 하샤드 수이려면 x의 자릿수의 합으로 x가 나누어져야 합니다. 예를 들어 18의 자릿수 합은 1+8=9이고, 18은 9로 나누어 떨어지므로 18은 하샤드 수입니다. 자연수 x를 입력받아 x가 하샤드 수인지 아닌지 검사하는 함수, solution을 완성해주...
현재 스프링부트 프로젝트 중 우리가 작성한 API을 확인해보는 테스트 작업을 진행하려고 한다. 나는 자바 스프링부트의 경험이 별로 없기 때문에 테스트의 종류와 장단점을 몰라 이를 찾아보고 정리해보았다.
정적 페이지 (Static page) 데이터베이스에서 정보를 가져오거나 별도의 서버 처리가 없어도 사용자들에게 보여줄 수 있는 페이지이다. 모든 사용자에게 항상 동일한 페이지를 보여주게 된다. ( HTML, CSS, JS, IMAGE 같은 요소들 )
ORM이란? ORM은 Object Relational Mapping 즉, 객체-관계 매핑의 줄임말이다. 객체-관계 매핑을 풀어서 설명하자면 우리가 OOP(Object Oriented Programming)에서 쓰이는 객체라는 개념을 구현한 클래스와 RDB(Relational ...
2주차 C언어 구현 프로젝트를 시작합니다.
1주차 C언어 구현 프로젝트를 시작합니다. 이번에는 C언어에서 가장 간단한 사칙연산 계산기를 만들어보겠습니다. 우리가 기본적으로 case문을 배울 때 기본적으로 사칙 연산 계산기를 배운 기억이 납니다. 다만 여기서 끝내는 건 너무 아쉬워서 기초적인 계산기를 만들어본 후 추가 ...