[토비의 스프링 3.1] 스프링(Spring)이란 무엇인가?
·
Study/Spring
1. 스프링(Spring) 스프링은 자바 엔터프라이즈 애플리케이션 개발에 사용되는 애플리케이션 프레임워크 애플리케이션 프레임워크는 애플리케이션의 개발을 빠르고 효율적으로 할 수 있도록 애플리케이션의 바탕이 되는 틀과 공통 프로그래밍 모델 기술 API 등을 제공해 준다. ■ 애플리케이션 기본 틀 - 스프링 컨테이너 스프링은 스프링 컨테이너 또는 애플리케이션 컨텍스트라고 불리는 스프링 런타임 엔진을 제공한다. 스프링 컨테이너는 설정정보를 참고로 해서 애플리케이션을 구성하는 오브젝트를 생성하고 관리한다. 스프링 컨테이너는 독립적으로 동작할 수도 있지만 보통 웹 모듈에서 동작하는 서비스나 서블릿으로 등록햇 사용한다.  스프링을 사용하려면 먼저 스프링 컨테이너를 다루는 방법과 스프링 컨테이너가 애플리케이션 오브젝..
[키보드] 리얼포스 Realforce R3 BT 화이트 저소음 APC 45g 균등 영문 (풀사이즈) - R3HB21 개봉기 후기
·
일상
질렀다 질러버렸다  맨날 집에서 매직키보드만 쓰고 있다 그러다가 사무실에서 삼성 기본 키보드를 몇 시간 동안 사용하니 손가락과 팔꿈치에 피로가 엄청나서 이 기회에 그간 눈여겨봤던 리얼포스 r3를 구매하기로 마음먹었다 비슷한 계열로 해피해킹도 있었지만 사무실에서 쓰기에 변태배열은 좀... 하고 넘기기   구매는 레오폴드랑 리더스키에서 구매가 가능한 것 같고 둘 사이트 차이는 몰?루 그냥 둘 중에 아무 데서나 사면 레오폴드에서 정식 as도 받을 수 있고 내키는데서 사면될 듯? 리더스키는 용산에서 타건 가능하다더라~   가격은 풀배열 395,000원 텐키리스 390,000원 주문하고 주말 껴가지고 한 3일 걸렸나 두둥 생각보다 박스가 무지하게 크다(묵직도 하고)     정면 항공샷      측면 항공샷뭐 스펙..
[우테코] 프리코스 1주차 회고
·
우아한테크코스
우아한테크코스란? 요약해보자면 일반 사용자용 서비스를 개발하는 회사가 필요로 하는 역량을 키워 "재교육 없이 현장의 업무를 바로 시작할 수 있는 인재" 프로그래밍에 대한 내적 동기를 가지고 있어 "평생 동안 자기 주도적으로 학습할 수 있는 역량을 가진 인재" 프로그래밍과 관련한 기본 역량 외에 "다른 사람들과 소통하고 협업하면서 같이 성장할 수 있는 소프트스킬을 갖춘 인재" (우테코 인재상) 정말 나한테 딱 필요한 교육이 아닐까 싶다. 위에 것을 읽지 않았을 때 내가 생각하는 개발자라 함은 '몰입' 할 줄 알고 지속적인 '성장'을 하며 '협업'을 잘하는 개발자가 '잘' 하는 개발자라 생각하고 있었다. 우테코에서 생각하는 인재상이 내가 생각하고 있던 잘하는 개발자와 결이 비슷하게 생각하고 있어서 참 다행이..
[우테코] 2024 신입생 모집
·
우아한테크코스
미리 생각해 볼 질문들 우아한테크코스는 4년제 대학 전공과 비교하면 상대적으로 짧은 기간 동안 소프트웨어를 집중적으로 학습하는 과정입니다. 교육 과정을 소화하려면 프로그래밍에 대한 역량도 중요하지만 힘든 과정을 포기하지 않고 지속할 수 있는 동기, 성실성, 간절함도 중요하게 생각합니다. 지원자들의 경험을 판단하기 위해 과정을 지원할 때 아래 제시하는 질문에 대한 답변을 받을 계획입니다. 1. 효과적인 학습 방식과 경험 프로그래밍 학습을 하고 장기간 개발자로 살아가기 위해, 본인만의 효과적인 학습 방식을 찾는 것은 매우 중요합니다. 프로그래밍이 아니더라도 지금까지의 모든 학습 경험을 되돌아봤을 때, 본인에게 유용했던 학습 방식을 찾아낸 과정과 경험을 공유해 주세요. 그리고 이 경험은 현재 본인의 프로그래밍..
[구름톤 챌린지] 3일차 합 계산기
·
Challenge/구름톤 챌린지
벌써 3일차 문제다. 이번 문제도 문자열만 잘 다룬다면 그렇게 어렵지는 않다. 숫자만 들어왔다면 int로 받아서 처리해주면 되지만 중간에 operator가 들어오기 때문에 그에 대한 처리를 따로 해줘야 한다. 공백을 기준으로 입력이 들어오기 때문에 그것을 기준으로 나누고 왼쪽 오른쪽 숫자는 형변환 시켜 다시 선언해주었다. 그리고 받은 operator에 따라 정답에 값을 넣고 print 해주었다. t = int(input()) answer = 0 for i in range(t): left, op, right = map(str, input().split()) left = int(left) right = int(right) if op == '+': answer += left + right elif op == ..
[구름톤 챌린지] 2일차 프로젝트 매니징
·
Challenge/구름톤 챌린지
구현 문제에서 자주 보이는 시간문제이다. 하지만 시간과 분만 잘 확인해 주면 돼서 까다롭지는 않다. n = int(input()) t, m = map(int, input().split()) c = 0 for i in range(n): m += int(input()) while(True): if m >= 60: t += m // 60 m = m % 60 continue if t >= 24: t -= 24 continue break print(t, m) 먼저 n만큼의 작업 시간이 들어온다 했으니 전부 m에 더해주었다. 그리고 넘은 만큼 나눠서 시간으로 변환해주고 m을 다시 변환해주고 남은 분으로 변환했다. t 또한 24시가 넘어가면 일이 넘어가기에 24를 뺄 수 있을 때까지 빼주었다. 제출은 저렇게 했는데 ..
[구름톤 챌린지] 1일차 운동 중독 플레이어
·
Challenge/구름톤 챌린지
문제는 간단하다. 공백을 기준으로 무게와 반복 횟수가 들어오고 1RM을 구하는 식은 주어져 있으니 식을 활용하여 단순 값만 도출해내면 된다. 대신, 모두 정수로만 입력이 주어지지만 30으로 나누면서 소수점이 발생할 수 있기 때문에 소수점 이하의 값은 버리는 과정만 해주면 된다. import math w, r = map(int, input().split()) print(math.floor(w * (1 + r / 30))) math를 활용하여 계산한 값을 내림하여 값을 출력해줬다. 첫날이라 그런지 아직 문제는 무난하다 첫주는 구현하고 매주 주제가 다르다던데 어느 정도 난이도가 나올지 궁금하다.
[개발] 테스트 코드란?
·
개발 Tip
테스트 코드 소개 Red Green Cycle Red: 항상 실패하는 테스트를 먼저 작성하고 Green: 테스트가 통과하는 프로덕션 코드를 작성하고 Refactor: 테스트가 통과하면 프로덕션 코드를 리팩토링 단위 테스트? 단위 테스트는 TDD의 첫 번째 단계인 기능 단위의 테스트 코드를 작성 하는 것 TDD와 달리 테스트 코드를 꼭 먼저 작성해야 하는 것도 아니고, 리팩토링도 포함되지 않습니다. 순수하게 테스트 코드만 작서하는 것을 이야기 합니다. 테스트 코드는 왜 작성해야 할까? 단위 테스트는 개발단계 초기에 문제를 발견하게 도와줍니다. 단위 테스트는 개발자가 나중에 코드를 리팩토링하거나 라이브러리 업그레이드 등에서 기존 기능이 올바르게 작동하는지 확인할 수 있습니다. (ex. 회귀 테스트) 단위 테..
[python] python의 self와 __init__의 이해
·
Study/Python
Python의 클래스에 대한 이해 다른 언어와 동일하게 python에서도 클래스를 이용하여 보다 편리하게 함수를 다룰 수 있다. 참고로 클래스는 데이터나 처리의 정의 등을 하나로 정리해둔 모형과 같은 것이다. 클래스를 사용하지 않고 함수 작성한다면 보통 다음과 같이 작성한다. def some_function(something): print(something) 그러나 클래스를 이용한다면 기본적으로 다음과 같이 작성하게 된다. class Someclass: def __init__(self, something): self.something = something def some_function(self): print(self.something) 클래스 구성을 사용하는 메리트는 다음과 같다고 할 수 있다. 글로벌..
개발용어 모음집
·
개발 Tip
Annotation 사전상으로는 주석의 의미이지만 Java에서는 주석 이상의 기능을 가지고 잇습니다. Annotation은 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종입니다. 소스코드에 추가하면 단순 주석의 기능을 하는 것이 아니라 특별한 기능을 사용할 수 있습니다. 종류 @Component 개발자가 생성한 Class를 Spring의 Bean으로 등록할 때 사용하는 Annotation입니다. Spring은 해당 Annotation을 보고 Spring의 Bean으로 등록합니다. @ComponentScan Spring Framework는 @Component, @Service, @Repository, @Controller, @Configuration 중 1개라도 등록된 클래스를 찾으면, Con..