목록spring (14)
일개미 : 일상과 개발의 미학

실전 프로젝트 1주가 지났다. 파이널인 만큼 마지막까지 체력관리도 잘 하면서 좋은 성과 거두었으면 🙏🏻 이번 프로젝트의 주제 키워드로는 '제로 웨이스트'로 골랐다. 평소 관심있던 내용이기도 하고, 환경문제로 떠오르는 주제로 찾아볼 수 있는 관련 자료들이 많을 것 같다고 생각되었다. 주제를 기반으로 커뮤니티 사이트를 만들어내기로 했다. [ 어스어스 : Earth Us ] 제로웨이스트를 위한 커뮤니티로 유저들의 일상과 노하우를 공유하고, 미션을 제공받아 완수하여 장기&지속적인 환경보호 운동 실천을 독려하고 개인 미션 수행완료를 통한 뱃지획득 기능으로 성취감을 부여하여 일상에 자연스레 녹아드는 제로웨이스트를 추구하는 서비스 구현할 기능의 API 명세서는 아래와 같다. 노션은 다양하게 활용 가능한 기능이 많아서..
프레임워크? 라이브러리? 프레임워크란 뼈대나 기반 구조를 뜻한다. 제어의 역전(IoC) 개념이 적용된 대표적인 기술이며, 소프트웨어에서의 프레임워크는 '소프트웨어의 특정 문제를 해결하기 위해서 상호 협력하는 클래스와 인터페이스의 집합' 이라 할 수 있다. 완성된 어플리케이션이 아닌 프로그래머가 완성시키는 작업을 해야한다. 라이브러리는 단순 활용가능한 도구들의 집합이라 할 수 있다. 즉, 개발자가 만든 클래스에서 호출하여 사용, 클래스들의 나열로 필요한 클래스를 불러서 사용하는 방식을 취하고 있다. 라이브러리는 특정하게 정의된 클래스를 호출하여 사용한다는 것은 쉽게 이해가 가지만, 프레임워크는 '제어의 역전(IoC)'이라는 개념을 모르고 있다면 이해하기가 쉽지 않다. 순전히 뼈대나 기반 구조라고 추상적으로..

드디어..? 7주차까지 마감되었다....드디어라고 하기엔 너무 무서운 실전주차 시작.... 부족한 실력이지만 마음맞는 사람 한분이라도 데려가려고 팀리더를 하게되었다 실전주차에 만난 팀원분들께 너무 감사한 마음,, 왠지 말을 많이하게 되서 귀찮을 법한 내용들도 공동의 프로젝트니 당연하겠지만 잘 따라와주시고 의견도 부족하지 않게 내주셔서 좋은 조합으로 만난 것 같다. 각설하고 지난 7주차는 클론코딩 주차로 사이트 하나를 정해서 말그대로 복제하는 것이다. 완전할 수 없겠지만 기능을 정해서 스코프를 축소하여 백엔드쪽에서도 데이터 활용이 좋은 샵 위주로 테슬라 홈페이지를 클론하였다. 크롤링을 할 데이터 항목이 좋지않아서 제일 고생하셨던 분도 계시고...장바구니 기능의 연관관계 때문에 머리 많이 아프셨던 분까지 ㅠ..
CORS(Cross-Origin Resource Sharing)란, "교차 출처 리소스 공유" : 다른 출처의 자원을 공유할 수 있도록 설정하는 권한 체제. 여기서 교차 출처 = 다른 출처를 의미한다. 즉, 브라우저에서 막고 있기 때문에 CORS를 허용해주어야 접근이 가능한기 때문에 CORS를 설정해주지 않거나 제대로 설정하지 않은 경우, 원하는대로 리소스를 공유하지 못하게 된다. 여기서 출처란 '프로토콜://도메인:포트' 를 말한다. 예로는 http://localhost:8080 등의. 지난번 5주차 회고에서의 키워드로 간략하게 알아보았는데 6주차가 되어 미니프로젝트를 진행하면서 로그인/회원가입 기능을 구현하고 나서 좀 더 찾아본 내용으로 자료가 잘 나와있어서 다시 정리해보려 한다. [cors에러] 브..

주특기 주차가 끝났다.. 왜 지식은 안늘고 시간만 간 것 같은지,, 입문/숙련주차와는 다르게 심화주차의 주과제는 팀과제로 진행되었다 그리고 주의했어야한다... .... 조별과제란^-^...데자뷰란 것을... 지난 주 담당이였던 부분. 이미지 업로드 기능이다. AWS의 S3버킷을 이용해서 구현한다. 주의점은 과금 절대 주의 특히나 깃 push 전에 가리거나 암호화를 해둬야한다. 간혹 이걸 이용해서 다른 누군가가 내 버킷을 매크로 돌려쓰게 되면 몇백 몇천 이상의 요금을 징수당한다고 한다. 오류가 뜨는 이유는 게시판과 연관관계가 있기 때문에 클래스가 있어야한다. 해당 사진은 머지 전으로 파일이 합쳐지기 전이다. 아무튼 아직은 개념이 이해가 된 부분도, 안된 부분도 있어서 자료를 찾아보고 대부분이 인용한 코드라..
점브 투 자바로 공부하던 도중에 이해가 잘 가지않아 추가적으로 찾아본 내용이다. 우선 String은 문자로 된 값의 타입인데, 정의하자면 변경 되지 않는 Character 문자열 자체이며, 다른 문자열을 추가했을 때 새로운 메모리를 잡아먹는다. 이러한 특성으로 인해 String은 문자열을 자주 읽어들이는 경우 좋은 성능을 기대할 수 있지만, 문자열 추가 삭제 수정 등이 빈번하게 일어나는 알고리즘에 String클래스를 사용하면 heap메모리에 많은 임시 garbage가 생성된다. 이를 해결하기위해 String Builder 와 String Buffer 를 도입되었고, 그 차이는 동기화의 유무이다. String Buffer는 동기화 키워드를 지원하여 멀티스레드 환경에서 안전하다. (* 참고로 String도 ..

[예제 1~5번] 💡 Q1. API란 무엇인가? ► Application Programming Interface의 약어로 애플리케이션(응용프로그램)에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다. 즉, 애플리케이션이 어떤 프로그램이 제공하는 기능을 사용할 수 있게 만든 매개체이다. 컴퓨터와 인간을 연결시키는 사용자 인터페이스(UI)와 반대로, API는 컴퓨터나 소프트웨어를 서로 연결한다. 서버와 클라이언트의 통신을 이어주는 매개체라고 이해하면 된다. *그렇다면 HTTP API란? HTTP를 사용하여 프로그램끼리 소통하는 API를 말한다. 보통 우리가 흔히 보는 OPEN API, facebook API, kakao API 등 대부분의 API는 H..