필자는 실용음악과 대학원 졸업생이다. 알바와 방과후학교, 자유학기 강사, 실용음악 학원 강사, 데이터 라벨링 재택 근무를 하면서 생활해 왔는데 안정적이지 못한 생활에 큰 마음을 먹고 개발자군에 취업을 도전하려 국비 지원을 신청했고 그 기록을 웬만하면 하루에 한번씩 이

오늘은 java의 기본 출력문과 변수, 그리고 조건문에 대해 배우게 되었다. 조금은 공부를 해 놨던터라 다 아는 녀석들이였지만 복습하고 다시 한번 이해한다는 마음가짐으로 주의 깊게 배웠는데 역시나 조금 잠이 오긴했다. 그래도 다시 한번 기초를 다시는 시간이라고 생각
오늘은 반복문에 대해서 공부했다. 그 빌드업을 쌓기 위해 강사님은 구구단을 출력해보라고 시키셨고 처음엔 문제를 이런 식으로 해결했다. 구구단 변수 활용해서 구현하기(반복문 활용x)코드가 길어지고 반복되는 코드가 눈에 보인다. 이렇게 반복되는 무언가가 있을 때 반복문을

드디어 내일이면 주말이라는 생각에 한시름 놓게 되지만 이 포스터에 주말동안은 유튜브 영상 정리를 하나씩을 올린다고 선언해 놓고 포스팅하겠다. 오늘 배운 것은 자료형(type)과 전위연산자, 후위연산자의 차이, 실수를 연산할 때 생기는 (부동소수점) 문제점, 배열 자
주말에는 약속한 것을 하지 못했다. 퇴직 후 처음 쉬는거라 정말 아무것도 하고 싶지 않아서 그냥 쉬었다.. 잡소리는 치우고 오늘 배운 것에 대해 정리해보겠다. 오늘은 객체란 무엇인가에 대한 것과 함께 클래스의 개념을 배우고 2차원 배열을 배우면서 문제를 풀었다. 객체
오늘 배운 개념은 솔직히 완벽하게 이해가 많이 어려웠다. 흔히 개발자들에게 필요한 "개발자적 사고"가 나에게는 당연히 부족하다. 그래도 꾸역꾸역 정리 해보고, 또 오늘은 숙제가 있다. 숙제는 다양한 풀이로 풀어낼 수 있을 것 같은데 이해는 되지 않았지만 오늘 배운 것
오늘 수업은 딱히 배웠다고 할거는 테스트 케이스가 있다. 하지만 이게 주가 아니라 문제 풀이가 오늘 하루 수업의 주된 일이였고 나는 프로그래머스 0레벨 문제들을 순서대로 풀어 나갔다. 그런데 개미 군단에서 턱하고 막혔고, 지금 시간이.. 곧 9시를 향해간다. 수업시간
객체지향 프로그래밍이 뭔가요? 영상을 시청하고 핵심만 정리해보려 한다. 영상에서는 교실과 선생님이 학생들에게 학교의 교실들을 청소시키는 방식으로 객체지향 프로그래밍에 대해 설명했다. 그 중에서 핵심적인 내용만 따로 정리해서 포스팅 해보겠다.솔직히 지금 나의 상태는 좀
대망의 오늘의 첫 문제 그냥 포스팅 하면서 푸는 과정 한단계식 올리고 어떻게 풀었는지 쓰는편이 쓰기 더 편할 것 같아서 좀 어렵다고 느낀 문제는 풀고 난 뒤에 올리려고 한다. (사실 level 0 문제 푸는데 이게 어려운 나님이 레전드) 아무튼 오늘 처음 문제다. 정수
내가 여태껏 나에게 굉장히 어렵게 다가왔던 문제들이 아마도 내게 아직 "개발자적 사고"가 부족하기 때문이라고 생각한다. 프로그래머스 코딩 테스트 0레벨을 하고 있는데 가만 생각해보니까 문제를 순서대로 풀지 않고 있었다. 오른쪽 배너를 확인해보니까 문제 푸는 순서가 있더
movie소프트웨어에 발생하는 문제의 원인을 찾는 행위이다.코딩하는 시간의 상당 부분은 디버깅에 사용하게 된다고 한다.개발중인 상태를 의미하기도 한다.컴퓨터는 0과 1로만 소통을 한다. 개발 언어들을 컴퓨터가 알아듣게 하기 위해서는 번역이 필요한데, 이를 언제 하느냐에
오늘은 한 문제만 하고 책이나 읽으려고 나왔다. 근데 지금 첫 문제가 어떻게 풀어야될지 감도 안잡혀서 오래 풀 것 같다. 문제는 이런 문제인데 무작위의 배열의 값을 일단 오름차순으로 정리하는 코드가 필요할 것 같고, 거기서 중앙 값을 찾아주는 코드가 이차적으로 필요할
저번 글 업로드가 안되어있었다는 걸 좀전에 봤다. 암튼! 오늘의 첫 문제다.또 다시 배열 문제인데 이번에야말로 값을 하나하나 다 열어봐야하는 문제이지 않을까 생각한다. 최빈값을 구하려면 어떻게 해야될까? 또 array에 그런걸 구해주는 기능이 있을까? 아무래도 그런건
movieDNS는 'Domain Name System'의 약자이다.'www.naver.com'을 예로 들면, 'www'는 호스트 네임, 'naver.com'이 도메인이다.컴퓨터가 웹사이트에 접속하려고 할 때, 컴퓨터에 있는 브라우저가 해당 사이트를 제공하는 서버에 요청
movieIP 주소는 '컴퓨터가 연결된 네트워크 끝단의 주소'를 가리킨다. 이는 '컴퓨터 자체의 식별번호'가 아니고, 각 컴퓨터가 '인터넷'에 연결된 위치를 식별하는 용도로 사용된다. IP 주소는 이동식 장치인 IT트레일러가 주소를 가지는 것과 같다. 컴퓨터를 집안에서
오랜만의 수업이라 아침에 깨어나기 힘들었다. 여행 때문에 블로그 작성, 공부를 하지 못한 3일동안을 빼면 그래도 꾸준히 했던 탓에 적응은 되게 빨리 되는 것 같다. 수업의 시작은 여태껏 블로그 작성이나 깃 허브를 잘 업로드하고 있었는지 강사님의 확인부터 시작했다. 나는
일단 바로 문제부터 보자.풀고 있던거 그대로 복사해서 위의 코드는 당연히 정답이 아니고 자바 루트 코드를 활용해 보려고 했는데 타입 미스매치가 나서 못하고 있다.일단 내 테스트 케이스는 통과했다. 저걸 우연히 찾았고, 저 방법을 찾으니까 바로 푸는 방법이 보였다. 아마
오늘은 상속에 대해서 배웠다. 상속에 대한 추상과 구상, 그리고 abstract와 함께.상속(extends)(자식)클래스를 품을 수 있는 추상적인(덜 구체적) (부모)클래스예제코드예제 코드를 보면 부모 클래스인 동물의 메서드 숨쉬다 라는 기능을 상속(extends)을
먼저 숙제 문제 풀이를 진행하면서 abstract에 대해서 배웠다. abstract는 부모 클래스의 메서드에 어떤 기능을 작성할 수 없게끔 강제하는 코드이다. 강사님은 부모 클래스에서 어떤 기능을 작성한다는 것은 의미가 없는 행동이라고 하셨는데 대게 자식 클래스에서 오
ArrayList 특징 연속적인 데이터의 리스트 (데이터는 연속적으로 리스트에 들어있어야 하며 중간에 빈공간이 있으면 안된다) ArrayList 클래스는 내부적으로 Object[] 배열을 이용하여 요소를 저장 배열을 이용하기 때문에 인덱스를 이용해 요소에 빠르게 접근
오늘은 개인적인 사정으로 인해서 출석을 하지 못했다. 9시에 레슨을 끝내고 밖에서 강사님이 올려주신 글과 영상을 보며 뭘 배웠는지 기록하려고 한다. 문제 풀이도 혼자서 진행하고 올리도록 해보겠다.문제 풀이 부터 시작했던 것 같다.인력사무소 문제이렇게 풀면 비효율적이기
저번주 금요일에 냈던 문제를 스트림을 활용해서 풀어보라고 하셔서 스트림을 구글링 했는데 무슨소린지 하나도 모르겠다. 일단 스트림을 활용하지 않은 코드는스트림을 활용한 코드는이러하다. 스트림을 활용하면 가독성과 코드가 줄어들어서 실수도 함께 줄어든다고 한다. "스트림"의
의외로 빨리 해결해서 문제 풀이를 올려본다.이게 내가 통과해야할 테스트케이스.배웠던 데이터 순회 반복문을 활용했음.(향상된 for문)결과를 구한 방법은 주석으로 달아놨다.오늘 밤새고 수업 들으러 왔는데 용케 안졸고 블로그 포스팅까지 무사히 마쳤다..계속 공부하면서 기초
다항식 게산기 개발 과정을 경험하고 있다. 대중 이까지 왔는데 여기까지 과정은 순수 더하기 / 빼기 : 처리 가능 순수 곱하기 : 처리가능 -> 근데 빼기가 고장함 복합구조 처리 불가능 이 상태이다. 이렇게 하면 일단 10 + 5 * 2의 테스트 케이스는 통
머쓱이네 피자가게 문제확실히 공부를 계속 하니까 좀 빨리 수월하게 풀리는 것 같다. 문제가 쉬웠던 거 일수도..다음문제는 조금 헤매고 있다.같은 피자가게 문제인데 일단 코드로 보자.이런 식으로 구현하다가 문든 든 생각이 최소공배수랑 최대공약수를 활용해야된다는 것을 떠올
다항식 계산기 만들기를 계속 한다!일단 테스트 케이스 ((20 + 20)) + 20 == 60을 해결하는데 강사님이 써주신 코드는 이렇다.나는 어제 밤에 stripOuterBrakets 메서드를 for문으로 썼었는데 가독성이 떨어지는 것 같아서 강사님 코드로 바꿨다.
내가 생각해도 좀 어이 없긴 한데, 유튜브 쇼츠 보다가 레드벨벳의 'dumb dumb'이라는 곡에서 dumb라는 단어가 한 200번 정도 나온다는 댓글을 확인하고서 '코드로 검증하면 되지 ㅋㅋ' 라고 생각했다가 '어? 해볼까?'라는 생각이 들어서 한번 해보려고 한다.
\-(8 + 2) \* -(7 + 3) + 5 == 105 테스트케이스 통과 (강사님 코드)강사님 코드를 보면서 확실히 좀 느낀게 자신이 구현해 둔 것에서 최대한 활용해야한다는 것? 지금은 계산기를 만들고 있으니까 내가 연산이 가능한 것들을 정확히 파악하고 수식이 망가
암담한 결과다,, 하지만 하나 빼곤 풀었다. 마지막 문제는 내가 풀 수 있는 문제였는데 두번째 문제에서 너무 고민을 오래 하다가 시간을 못봐서 결국 두번째도 중간 과정까지만 냈고 세번째는 손도 못대버렸다 ㅠㅠ 이래서 시험 문제는 풀 수 있는거 먼저 해야된다. 내가 애초
이제 웹의 기본적인 기능인 CRUD(Create,Read,Update,Delete)를 사용해서 motivation 앱을 만드는 수업을 받았다.이렇게 구현중이고 list로 데이터를 불러오는 것을 구현하고 있다.리팩토링과정을 거쳐서, Motivation 클래스도 보면,이렇
만들고 있던 delete 기능부터 들어가서 parsing을 하는 방법에 대해서 뭔가 이야기 하셨다.update나 detail에도 같은 방법을 사용할 수 있고 아마 더 효율적으로 코드를 짜는 것을 설명하시려고 하는 것 같았다.그래서 이 기능을 처리하는 클래스를 하나 만들
간단한 이미지를 하나 보고 시작하자.이미지 출처MVC는 Model - View - Controller 의 약자다. 흔히 MVC 패턴, MVC 구조라고 부르는데 같은 말이다. MVC 패턴은 컴퓨터공학에서 소프트웨어 설계와 아키텍처를 위한 디자인 패턴 중 하나입니다. 그럼
문제다.일단 이건 정답이 아니고 평균치를 구해서 10퍼나 20퍼를 원래 가격에서 빼는 식으로 하려고 하는데 뭔가 잘못되었나보다. 아니다. 100,000일땐 90,000으로 잘 나오는 것 보니 디버그를 좀 돌려봐야될 것 같다.아 문제를 잘못 읽었구나 10만원 이상에서 3
ArticleManager 구현을 들어갔다. 직역하면 게시판 관리인인데 바로 전에 했던 motivation 앱과 거의 동일하다. 우선 순차적으로 기능들을 구현중이다.
우선 문제를 보면 배열에 값 두개를 넣어서 제출해야한다. 어차피 값은 두개로 종결이니까 그냥 값을 따로 도출해내서 배열 하나하나에 넣어주는게 쉬울 것 같은데 일단 해보자.우선 이렇게 해결해서 테스트 케이스 첫번째 거는 통과 했다. 통과 못한 경우는 카운트와 money
회원가입 기능을 만들어보고 있다.Member 클래스고App class 에 넣은 명령어,Main class 실행하자마자 회원가입할 수 있게 만들었는데 뭔가 대충 구색은 잡혔는데 디테일을 살리는데 애를 먹고 있다.암튼 골머리 앓는 와중에 강사님이 하시는 것을 봤는데 원래
ArticleManager Delete 작성자만 지울 수 있도록 하는 걸 구현중이다.이렇게 구현했는데 잘 된다. 근데 다른 문제를 발견했다. 테스트용 데이터로 한번 더 해보려고 구현해 둔 로그아웃을 해서 다시 로그인 하려고 했는데 이렇게 뜬다. 그래서 다시 살펴 보려고
강사님이 교통사고가 나셔서 늦으신다고 한다. 그래서 문제나 풀어보고 있으려 한다.첫 문제 저번의 문자열 뒤집기보다 더 쉬운 뒤집기다. StringBuffer의 메서드를 사용했다.두번째도 수월하게 해결했다.저번 시험문제 피라미드에서 후드려 맞았던게 도움이 됐다. 줄바꾸는
오늘은 강사님 개인 사정으로 좀 늦으셔서 문제 풀이를 먼저 조금 하다가 수업이 시작됐다. 일단 강의가 시작하고 목표는 article list 명령어 입력시에 작성자의 이름까지 보이도록 하는 것인데, 이거는 어제 delete랑 modify를 권한이 있는 사람(작성자)만
오늘은 Xampp 설치부터 시작했다. DB를 시작한다는 뜻이다. 개발환경 세팅을 쉽게해주는 툴 -> xampp MySql -서버 : 데이터를 전달해준다. -클라이언트 웹 -서버 (아파치, nginx) -클라이언트 (브라우저(클라이언트 프로그램)) 클라이언트에 요
쿼리문도 어색한데, 툴이 생각보다 많이 불편해서 더 오래 걸린 것 같다..
흔히 개발을 할 때, DB에 연결이니, DB의 데이터가 뭐가 어떻니들 많이 한다. 필자도 배우는 입장이라 솔직히 잘 모르지만 글로 정리하는 건 구글링으로 가능하다. 함께 데이터 베이스가 뭔지 알아보자. DB, DBMS, 그리고 RDBMS는 위의 문장 처럼 데이터 관리
새로 프로젝트를 만들어서 article write와 article list 까지 구현하게 시키셨다. 이후 myspl과 내 프로젝트를 연결했다. 내가 사용하고 있는 것은 인텔리제이이고 여기에 DB를 연결하는 것 까지는 성공했는데, 이후 코드로 연결시켜서 사용하는데에는
수월하게 볼 줄 알았는데 연습하지 않았던 상세보기와 명령어가 다르고, 또 날짜까지 넣어야되서 조금 걸렸는데 그래도 걱정했던 것 보다는 수월하게 풀렸다. 반복 연습이 도움이 됐던 것 같다. 이하는 내가 제출한 코드다.공부한 보람이 있구만,, 아무튼 이렇게 제출 했고 아직
난 어제 select로 list까지 볼 수 있게끔 만들어서 delete부터 구현하기 시작했다.삭제까지는 했는데 없는 id를 입력해도 삭제를 성공했다는 메세지가 떠서 이걸 내가 번호를 넣었을 때 그 id에 칼럼이 있는지 없는지 존재 여부를 확인하는 코드가 필요했다. 근데
강사님이 주신 코드로 modify와 delete 까지 일단은 구현해봤다. 조건문만 걸면 되는데 이제 여기서 생각을 좀 해야된다. 근데 뭔가 떠오르지가 않는다. 일단 고친 코드를 보면이런 느낌이다.DBUtil의 기능을 다 알지 못해서 메서드 이름으로 알맞은 것을 찾아가면
차가 너무 막혀서 강의실에 오기까지 1시간 반이 걸렸다. 거의 도착할 때 쯤 보니까 신호등이 고장나서 경찰분들이 수신호로 차를 보내고 계시더라. 아마 비 때문에 낙뢰라도 맞아서 그런게 아닌가 싶다. 아무튼 지각은 고사하고 도착하자마자, 어제 내가 구현해 놓은 것들 +
의외로 빨리 풀었다. 마지막에 강사님이 문제 풀이하실 때는 완전한 답을 가르쳐주신게 아니다. 일단 어떤식으로 문제 풀이를 진행했는지 설명하자면 하나하나 검색해가면서 뭐랑 뭐를 대조해야되는지 직접눈으로 따라가며 한단계식 밟아서 마지막에 결과값을 찾는 식이라고 해야될까?
어제 내 주셨던 숙제 풀이부터 시작했다.아래는 일단 내 풀이다.강사님은 쿼리는 눈으로 확인하면서 조금씩 첨가되는 느낌으로 쓰라고 하셨다.강사님 풀이도 그렇게 다르지는 않았는데 AS를 사용해서 타이핑을 조금 더 줄일 수 있게끔 만들었다. 참고해서 사용해야겠다.아무튼 오늘
59047 번59409번이건 배운적이 없어서 이것저것 시도해보고 검색도 해봤는데 모르겠더라. 그래서 그냥 챗지피티 돌렸다. 'CASE WHEN ... THEN ... ELSE ... END AS' 는 처음보는 쿼리였다. 이것도 기억해두면 쓸 데가 있겠지 59411번 위
sql 풀이부터 시작했다내가 생각한 것과 의도가 달라서 생각보다 많이 틀린 것 같은데 뭐 어찌됐든 원하는 결과를 보여주는 쿼리를 작성하긴 해서 만족한다.서브쿼리는 필수는 아니라고 하셨다. 안그래도 어제 이거 풀 때 안써도 되는데 왜 써라고 하는지 이해가 안됐는데 가독성
일단 나도 수업에서 빠져나오기 전에 해결해서 코드를 올려보면,이렇게 구현했다. 코드 설명은 각주로 달았다. 일단 나는 이런 식으로 구현 했는데 지금 검토해보니까 우연히 됐던 것 같다. 여러 케이스로 해보니까 잘 안된다. 일단 고쳐보고 강사님 강의를 봐야겠다.아 거의 한
이제 기능이 많아졌으니 클래스를 나누어서 각 클래스에 맞게 기능을 나누어 주는 과정이 필요할 것 같다.MemberController와 ArticleController를 만들어서 각 기능을 일단 나누어보자.일단은 현재 코드 모양.현재는 App에 모든 기능을 거의 다 넣고
DB에서 회원 수가 늘어났을 때 아이디를 찾는 시간에 대한 문제에 대해서 배웠다.DB에 저장된 데이터 량이 많아질 수록 데이터를 조회하는데 소요되는 시간이 길어지는데, 이 문제를 어떻게 해결할 것인가에 대한 문제다. 실제 네이버 회원수는 7000만명이 넘어가는 것으로
이제 로그인 로그아웃 문제는 어떻게 정리를 했다.컨테이너를 도입하면서 로그인 한 유저 정보를 더 쉽게 가져올 수 있게 되어서 기존의 코드와 다르게 보완했다.로그인 할 때 Member Class를 도입해서 Map에 해당 유저 정보를 저장하고 회원 정보 상세보기 기능까지
노마드코더-내가 더이상 코파일럿을 쓰지않는 이유 난 코파일럿에 대해서는 제대로 알지 못한다. 그러나 영상에서는 챗 GPT 또한 언급하고 있다. 나는 챗 GPT를 꽤나 사용한다. 물론 강사님이 웬만해서는 사용하지 말라고 하셔서 내가 공부를 하거나 문제를 풀 때, 1.
우선 어제 하던걸 이어서 수정, 삭제 권한 확인을 이어보자면, 중복코드가 존재한다.잘 살펴보면 로그인 여부 확인, 명령어에서 ID 추출 및 유효성 검사, 해당 ID가 존재하는지 확인, 접근 권한 확인하는 코드가 중복이여서 해당 중복코드를 줄일 메서드를 하나 선언해서 해
오늘은 프론트엔드 쪽으로 넘어갔다. 우리가 웹 사이트를 볼 때 보이는 화면을 구성하는 것들에 대해 배우는 것이다.웹페이지를 이루는 3요소HTML -> 배우CSS -> 스타일리스트display\-block (div,section,nav,article의 기본값) \-너비
a, span 엘리먼트는 기본적으로 display가 inline 이다.img 엘리먼트는 기본적으로 display가 inline-block 이다.inline요소에는 width, height, margin, padding 속성이 제대로 적용되지 않는다.이미지 컨트롤 연습!
어제 만들었던 것을 이어서 보자 css를 약간 고쳤다.다음으로 이런 개념을 배웠는데 뭐냐면.자주 쓰느 div나 section 등은 inherit(상속)이 기본이다. 대상은 body. 하지만 예외로 상속 받지 않는 것들도 있다.코드로 하나하나 살펴보고 결과를 내렸다.디폴
난 국비지원 수업을 Korea IT라는 학원에서 수강중이다. 학원에서 무료로, 취업이 목표인 수강생들에게 취업과 관련된 전략?이라고 해야될까. 아무튼 특강을 해서 들어보았다.다음으로는 그냥 글로 정리 해둔 글이라 두서가 없을 수도 있다. 양해 바란다.요즘IT, 글로벌

section 안에 사각형 div를 우겨넣는 문제인데, vertical align을 사용해서 풀어야했다.이렇게 해결했고 vertical align은 inline과 inline-box에서 사용할 수 있다는 것을 보고 이래저래 계속 바꾸다가 나중에 폰트 사이즈 때문에 안들

vertical align 문제를 다시 보면이렇게 풀었는데 여기서 폰트 사이즈 0을 주지 않고도 푸는 방법이 있었다. (완벽하지는 않다.)일단 주지 않으면 이런 모양인데div의 공백을 없애줘도 해결이 가능하다.그런데 코드를 정렬하기 위해서 cmd + shift + f
사실 어제 티스토리에는 코드펜이 제대로 올라왔는데 벨로그는 그렇지 않았다는 것을 알고 있다. (사실 너무 귀찮아서 하나하나 수정하기 버겁다고 생각해서 딱히 수정은 하지 않았다. 뭐 링크 클릭하면 들어갈 수 있으니까..) 보니까 벨로그에는 html로 복붙하는게 아니고 I
어제 구현중이던 1차메뉴-2차메뉴는 이렇게 만들었다.!codepenqBlackBirdp/embed/zYVBWMW?default-tab=html%2Cresult이건 어제 야매로 만든거고강사님이 하시는 걸 보면서 같이 만든 것이 아래거다.!codepenqBlackBirdp
flex로 시작한다. Flex 참고 사이트 1분 코딩 Flex 컨테이너에 영향을 주는 코드 flex-direction (정렬하는 방향을 정함) row:(기본값) row-reverse: column: column-reverse: flex-wrap (압축 풀기,
금방 풀었당 다음 문제도 비슷하다. if문만 약간 바꾸면 된다. 다음 문제. 입력 받은 문장을 char 형태로 배열에 넣어서 해결했다.
주말부터 화요일까지 공연 일정과 수업 일정이 있어서 수업에 참가하지 못했다. 38 39일차 수업은 주말에 업로드 하겠다!그래서 처음에는 반응형 모바일메뉴, 탑바, 모바일 탑바를 만드는 것 부터 시작했다. 솔직히 말해서 엄청 버벅이면서 만들었다.!codepenqBlack
!codepen[qBlackBirdp/embed/eYwgwNa?default-tab=html%2Cresult] 중간단계 메뉴 만들기 부터 시작한다. 클릭하면 변화하는 것 까지 만들었고 2차 메뉴가 존재한다면 눈에 보이는 것 까지는 됐는데 3차 메뉴를 제대로 볼 수가
!codepenqBlackBirdp/embed/vYqxQaJ?default-tab=html%2Cresult어제 하던 카카오증권 사이트 모작인데 난 일단 이까지 했다. 근데 이게 고객센터가 내려 앉는데 대체 이유가 뭔지 몰라서 막혔다. 왜 내려앉는지 이해가 안되서 어디서
!codepenqBlackBirdp/embed/KKjmRWO?default-tab=html%2Cresult이어서 하던 거 이 까지는 했다. 하이픈이랑 hover의 우선순위를 두는 것 때문에 한참 애를 먹었다.이제는 모바일 탑바에 마우스 호버를 JS를 사용해서 클릭으로

JSP를 활용해서 웹 페이지로 무언가를 보는 것 까지 넘어갔다.이렇게 서버를 연결하고 데이터를 가져오게 하고,JSP파일 list를 만들어서 게시물을 불러올 수 있게 코드를 짰다.이렇게 하면 게시물을 세개 가져올 수 있는데 모든 게시물을 다 가져오고 싶어서 반복문을 활용

페이지를 글 목록 수에 따라서 나누려고 한다.DB에서 글을 임의로 늘렸고 페이지당 항목 수도 10 15 20 30으로 정할 수 있게 만들었다.서블릿은 이렇게 수정했고 JSP는 이렇게 수정했다. 보는 바와 같이 잘 구현되었다 다음과 이전으로도 잘 간다. 20개를 보고 싶

어제 하던걸 이어서, write부터 구현을 시작했다. servlet 먼저. 다음은 JSP 여기서 알아야될 것은 GET과 POST다. 둘 다 서버쪽으로 데이터를 전송하는 것이다. GET은 서버에 요청을 할 때 히스토리를 남기게 된다. 요청하는 것 자체에 무언가를

다음으로는 회원가입 기능을 만들고, 로그인 로그아웃까지 만들어보자.INSERT를 이용할 것이기 때문에 기존에 만들어두었던 write를 갖다 쓰도록 하자.일단은 이렇게 기본적인 틀을 짜고, 이제 부수적인 것을 확인하고 한단계씩 구현하면 된다.일단 해야할 것을 써보자면,아

다음으로 글 작성을 회원만 할 수 있게끔 만들어주자.기존의 글 작성 기능을 담당하던 코드들에 회원이 로그인 했을 때 접근할 수 있게끔 해야된다.우선은 articleWrite의 코드부터 고쳤다. 로그인 하지 않으면 글 작성버튼을 누를 수 없게 알림창 띄우고 로그인 창으로

새로운 프로젝트를 만드는 것 부터 시작했다.내가 사용할 라이브러리(도구)들을 정하고 finish로 생성해준다.프로젝트가 서버 연결 없이도 잘 된다고 하셨는데, 나는 무슨 이유에서인지 잘 되지 않았다. 그래서 계속 방법을 찾다가 아예 새로운 경로에 새로운 프로젝트를 만들

일단 중복쿼리가 전에는 존재했었다. 그 부분을 해결 하고, login 상태를 저장하기 위해서 저번에 배웠던 HttpSession session 을 사용해서 로그인 상태를 저장했다. 일단 바꾼 코드도 로그인이 잘 되는 것을 확인하고,로그아웃은 컨트롤러에만 구현하면 되서

로그인 로그아웃 구현부터 시작했는데, 난 이미 해 두어서 글 작성할 때, 로그인 하지 않으면 불가능하게끔, 그리고 유저 아이디를 넘겨서 글 작성자가 누군지 알 수 있게 만드는 작업부터 했다.우선 이 코드는 로그아웃할 때 썻던 걸 그냥 doWrite 메서드에서 가져왔고,

하던 것을 이어서 modify 기능부터 보자.일단은 이렇게 고쳐서 jsp로 통신이 가능하게 만들었다.modify와 delete에 로그인 체크와 권한 체크 중복코드가 보여서 service 패키지에 AuthService class를 선언해서 중복코드를 제거해줬다.이렇게 하

로그인 로그아웃까지 다 했으니, 이제 modify부터 구현을 시작해보자.우선 modify 페이지와 doModify 코드 수정.수정을 위해서는 새로운 창이 필요하니 따로 경로를 지정해주고 기능은 기능만 하도록 바꿨다. 기존에 만들었던 login을 참고해서.JSP.CSS해
이 문제 같은 경우에는 아무리 코드를 살펴봐도 답이 맞는데 내 테스트케이스가 계속 맞지 않아서 보니까 테스트 케이스가 잘못되어있었다. 다음과 같이 테스트케이스 수정 다음문제 약수 더하기 문제 간단히 풀었다. 다음! 임포트.. 해주자.. 다음. 이게 생각보

처음 시작은 Rq 객체 관리를 Spring이 하게끔 바꾸는 것 부터 시작했다. 솔직히 뭔소린지 이해는 안되는데 코드를 보면 약간은 알 것 같기도 하고.이런식으로 매번 Rq rq로 선언을 해줬는데 해당 기능을 적용하면서 그게 생략됐다.@Component@Scope(val

어제 페이지네이션을 이어서 해보자. 데이터를 극단적으로 늘리니까 문제가 하나 보였는데, 페이지가 많아짐에 따라서 밑의 숫자도 많아져버린다는 문제점이 보인다. 그래서 일단은 이렇게 처리를 했다. 조건문을 붙혀서 화면에 보이는 것을 처리했고 눈으로 보이는 것은 이렇게

AJAX는 웹 페이지에서 동적으로 데이터를 주고받아, 전체 페이지를 다시 로드하지 않고도 웹 페이지의 일부분을 업데이트할 수 있게 해주는 기술이다. 즉, 사용자가 웹 페이지에서 특정 동작을 할 때, 전체 페이지가 새로고침되지 않고도 필요한 데이터를 서버에서 가져와서 화

조회수 기능을 만들고 보니까 없는 게시물에 대한 처리를 하지 않았다. 그에 대한 처리를 해주자.이렇게 수정했다.잘 동작하는 거 확인.강사님이 조회수를 증가시키는 메서드를 따로 빼서 만드셨다. 원래는 그냥 이 상태로 써도 된다고 하셨는데, 비교적 간단한 조회수 기능을 사
어제 새로운 DB 테이블을 생성하고 끝났다.

어제 만든 doReaction을 가만 생각해보니까 ResultData를 만들어놨는데 왜 이걸 사용안했나 싶어서 수정을 했다.졸면서 해서 정신이 없었나..이렇게 수정을 해봤고 JSP로 넘어가려고 내가 새로 짰던 코드를 찬찬히 살펴봤다.가만생각해보니까 처음 좋아요를 누를

기존에 만들어 둔 UPDATE JOIN 쿼리는 있으니 그대로 가져와서 메서드 실행할 때 두개의 쿼리가 작동하게끔 짰다.짜보니까 반영이 잘 되는 것 같고 확인하기 위해서 alert를 띄우던 코드를 지웠다.그런데 이게 문제가 좋아요도 잘 되고, 싫어요, 좋아요가 되어있을
내가 이미 구현한 좋아요 / 좋아요 취소, 싫어요 / 싫어요 취소, 좋아요 상태에서 싫어요를 누를시 좋아요 취소되면서 싫어요활성, 싫어요 상태에서 좋아요 누를시 싫어요 취소되면서 좋아요활성을 만드는 시간을 가졌다. 그래서 나는 그냥 개인 프로젝트 화면 초안을 그려봤다.

좋아요 싫어요를 할 때, 로그인을 하지 않으면 작동하지 않도록 막아두었다.(인터셉터 사용) 하지만 디테일을 더 살리자면 로그인이 필요하다면 로그인 페이지로 사용자를 던져주는게 사용자의 경험을 높혀주는 일이 될 것이다. 그리고 로그인을 하면 다시 원래 보던 게시글로 이동
List에서 댓글개수 확인 할 수 있게끔 코드를 짜는 것 부터 시작. 일단은 강사님이 하시는 걸 보고 만들었는데, 기존에 내가 만든 것은 댓글이 보이긴하는데 수가 맞지 않았다. 메서드를 아예 새로 만들어서 만들었는데 좀 많이 복잡한 방식이였다. 기존 코드를 적극 활
구글 로그인 기능 구현중, 이제 OAuto2인증에 관련된 정보들을 보게 되었다. 보니까 없이도 로그인 기능 자체는 만들 수 있을 것 같긴한데 죄다 이걸 사용하니까, 이게 대체 무엇인가에 대한 궁금증이 들어서 한번 알아보려고 한다.OAuth2는 "Open Authoriz
최근 내 개인프로젝트를 준비하면서 mybatis를 버리고 JPA 도입했다. 그 과정에서 객체를 담당하는 클래스를 VO에서 Entity로 바꾸는 과정이 있었는데, 솔직히 암만 봐도 같은 기능인데 차이점이 뭐길래 이름을 바꾸는가 궁금해서 알아왔다.VO(Value Objec
해당 사이트에서 참고하고 적용하면 된다.따로따로 사이트에 다 연결시켜줘야 했다고 한다. (ex. 삼성카드, 현대카드, 무통장 등) 그래서 개발 난이도가 굉장히 어려웠는데, 지금은 이걸 한데 모아둔 api를 개발 사이트에 연결해서 뽑아쓸 수 있다고 한다. 그 중 하나가

웹 페이지는 특유의 깜빡거림이 존재하는데 모바일 앱들은 보통 부드럽고 빠르게 동작한다. 리액트는 모바일 앱 동작과 같은 웹을 만들 수 있고, 고품질의 웹, 복잡한 UI를 가진 앱도 깔끔하게 제작이 가능하다.물론 모바일 앱도 제작 가능하다.JS 라이브러리 중 하나. 사용
사실 이미 좀 진행했던 건데 안듣고 내 프로젝트 하다가 오늘은 제대로 들었다.그래서 중간부터 서술하는 점 이해 바란다.이런 식으로 하면 폴링 방식으로 0.5초마다 채팅방을 갱신한다.찔러보는 것은 나쁜건 아니지만 에너지 소모가 심하다. -> 무분별한 호출 야기를 방지하는
이거 상당히 재밌는 것 같다. (여담) 우선 코드고. See the Pen Untitled by qBlackBirdp (@qBlackBirdp) o
js 함수 실행 방법이 여러가진데 그걸 배우는 와중에 템플릿 리터럴도 배웠다. 내 개인프로젝트할 때 사용했어서 뭔지는 대충 안다.결과 : ${}이거만 보면 짜증이 나네.. 여튼 이렇게 활용할 수 있다.프론트엔드에서는 HTML을 데이터와 결합해서 DOM을 다시 그려야 하
!codepenqBlackBirdp/embed/NWQPOKX?default-tab=html%2Cresult우선은 이렇게 만들어 두었다.이제 수정 기능을 만들 차례이다.함수 선언.버튼과 삼향연산자 선언. 삼향연산자에서 setEditMode가 트루일 때, input창이 나
빈 배열은 \[]이걸 뜻한다. 예시 코드를 보면여기서 focus();로 직관적으로 확인할 수 있다.우선 이부분. 그리고여기에 focus();가 존재한다. 그럼 증가버튼을 누르면 나이로 포커스 될 것이고 맨 처음 접속완료됐을 때는 이름으로 포커스 될 것이다.왜? useE
개념: 웹 페이지의 렌더링을 클라이언트(브라우저)에서 처리하는 방식.동작 원리: HTML 문서 로드 후, JavaScript가 실행되어 페이지의 UI를 렌더링하고 데이터를 채워주는 방식.장점:빠른 인터랙션: 처음 로드 이후에는 클라이언트에서 처리되므로 페이지 전환이 빠
OpenWeather API를 사용해서 적용했고, 아이콘까지 제공해줘서 생각보다 그렇게 어렵지는 않았다.Tailwind 말고 다른걸 써보고 싶어서 bootstrap으로 화면을 그려봤고, DB도 사용할 필요 없어서 그냥 재밌게 한듯?우리 팀플에서도 날씨 API 써야되는데

나는 이미 천체 관측 API 를 파이썬으로 만들면서 배포까지 다 해봐서 도커에 대해서 약간의 이해도는 있다. >도커 이미지는 밀키트와 비슷하지만 훨씬 더 편리합니다. 비유하자면, 밀키트는 밀키트인데 조리도구(가스레인지, 냄비 등)까지 포함된 밀키트라고 보시면 됩니다.

fly.io에 배포하는 것 까지 해봤었는데 무중단 CI / CD 를 기본으로 깔고 간다.그러니까 서버 점검 등을 위해서 사이트를 정지시켜놓을 필요가 없다는 것.근데 이걸 git에 push 했을 시에 자동으로 fly 서버를 갱신할 수 있게 하는 것이 있다고 한다.그게 바

뭐 간단한 프로그램을 연습을 위해 배포한거긴 하지만 지금 프로젝트상 ArrayList에 데이터를 저장해서 서버가 꺼졌다가 켜지면 데이터가 손실된다. 이에 해결책은 다들 알다시피 당연 영속성을 가진 DB를 도입하는 것.그래서 일케 진행함.난 예전에 도커의 볼륨을 행성 데

그 사실 도메인 구입할 때 설정을 제대로 못하고 하긴 해서 깡통이긴한데 귀찮아서 그냥 깡통으로 수업들었다. (이미 Oracle로 서버 배포까지 완료한적은 있지만 도메인 연결까지는 안해봐서 수업은 들음.)그리고 또 AWS는 처음이라..여튼 어제 했던 그 terraform

자동화는 깃 push 하면 깃에서 도커 이미지를 빌드하고, 도커 이미지를 서버컴퓨터에 pull한다.이후 서버 컴퓨터에 해당 이미지가 서비스가 가능한지 아닌지 판단이후 가능하다가면 해당 이미지로 적용후 예전 이미지는 지운다. 이게 자동 배포의 방법. (port는 예를 들

도메인 구입도 해보고, AWS에서 IAM으로 root 로그인 말고 사용자?로그인도 해보고..여튼 AWS의 서버 컴퓨터에 더 쉽게 명령어를 날릴 수 있는 Terraform을 사용해보자우선은 awscli를 다운 받았고 로그인 진행함.그리고 terraform도 다운 받음.테

이게 배포한 API가 MariaDB를 사용중인데 조금 더 효율적인 DB가 없을까 생각을 하게 됨.그래서 대규모 데이터셋에서의 읽기/쓰기 성능이 뛰어나다는 PostgreSQL을 적용해보고 테스트, 그리고 그래프로 표시를 해볼까? 싶어서 한번 해보기로 했음.MariaDB도

계속 구인하고 최근 정처기에 지원해서 그에 대한 공부를 한다고 개발에 대한 포스팅을 하지 않았었는데 아주 재밌을 것 같은 일이 하나 들어왔다.면접이 하나 잡혔는데 과제가 있었다. 그 과제 주제가 포스팅하는 글의 제목이다.우선 이것에 대한 분석 보고서 작성이 아닌, 본인

자 그래서 오늘은 부동산 변동률 계산 마무리작업, 분기를 이전하기 전과 후로 나눈 데이터 정리를 진행하고 나머지는 시간 남으면 진행하자.일단 데이터의 날짜 분리 함수 추가해줬고,계산 로직을 짜고 있는데, 이걸 날짜를 저렇게 나눠서 하니까 분기로 나누기도 불편하고 로직이

부동산 변동률은 데이터 자체의 가공과 시각화가 끝이 났다.이제 인구이동률을 좀 만져봐야하는데 이건 지금 CSV 파일로 준비되어있다. 이걸 조금 더 사용하기 편하게 가공, 그리고 QGIS에서도 사용할 수 있게 위도, 경도 데이터 추가까지 해주면 될 것 같음.이건 아예 새

우선 QGIS는 일단 내려놓기로 했고,면접에서 요구하는 것에 집중해서 완성 시켜보기로 했음.일단 데이터 두가지는 확실하게 가공과 시각화가 가능하다는 것을 확인했으니 발표 시점에는 이 두개를 주로 다루긴 할테지만 어찌 됐던간게 제대로 된 발표를 위해서는 더욱 확실한 지표

면접에서 받았던 질문이였는데 사실 대답은 제대로 못했다.음 뭔가 좀 본능적이라고 해야될까? 개발을 하면서 흐름이나 어떤 역할을 하는지는 알고 있는데 용어를 정리하면서 설명을 하기가 막막해서 이참에 제대로 알아보는 시간을 가져야겠다고 생각했음.실제 프로젝트를 진행하면서

지금은 계속 입사지원을 넣고 면접을 보러 다니고 있다. 와중에 배포 서버에서 이메일이 와서 확인을 해봤음.내가 전에 도메인까지 사용을 했었는데 그 때 인증을 무료로 하려고 똥꼬쇼를 조금 했었는데 자동화 세팅이 조금 덜 되어있었던 것 같다.이메일 내용을 축약해보면 '3월