TIL(Today I Learned)
-
[TIL] DB, ORM과 JPATIL(Today I Learned) 2022. 12. 6. 21:26
*20221206의 회고 오늘도 어김없이 오전엔 프로그래머스 코딩테스트 문제를 풀었고, 오후에는 스프링 입문 강의를 들었다. 오전에 1시간 동안만 코테 문제를 푸는게 목표였으나, 문제가 안풀려서 결국 세시간 정도 붙잡고 있었던 것 같다. 내일까지 스프링 강의를 듣고 나서 개인과제를 제출해야 되는데, 문제를 풀고야 말겠다는 승부욕이 발동되어서 끝까지 붙잡고 있던 것 같다. 처음 시도한 문제가 안풀려서 두번째 문제도 시도하다가 세번째 문제까지 손을 댔다가 결국엔 세번째 문제도 못풀고 두번째 문제를 조금 더 잡고 있은 후에나 풀 수 있었다. 그러나 두번째 문제도 풀긴 풀었는데, 프로그래머스에서 채점하면 런타임 에러가 난다. 그래서 그냥 내일 다시 도전해보기로 하고 스프링 강의를 들었다. 오늘은 DB와 ORM,..
-
[TIL] 스프링을 배우기에 앞서서...TIL(Today I Learned) 2022. 12. 5. 21:31
*20221205의 회고 오늘은 드디어 스프링을 배우기 시작한 주의 첫날이었다. 내배캠에서 제공해주는 강의를 듣는데, 3번째 차시부터 막혔다. 데이터 베이스를 다루는 내용이었는데, 내 컴퓨터에서는 자꾸 오류가 났다. 한참 지나서 알고 보니 강사님은 맥북에서 작업을 하셨고, 윈도우와 맥북에서 다루는 쿼리문이 살짝 차이가 있었다. 그리고 프로젝트를 셋팅하는데에 있어서도 살짝 달라서 오랜만에 공부가 막히는 기분이 들었다. 강의 내용도 너무 함축적으로, 간략하게만 수업이 진행되는 느낌이라 알아가는 기분이 들지 않았다... 그래서 꾸역꾸역 잡고 있다가 결국에는 코딩테스트 문제풀이로 노선을 변경하였다. 그렇게, 오늘은 코테문제만 푸는데 시간을 많이 보냈다. 물론 제공된 강의 초반에 웹 개발에 필요한 상식들을 설명해..
-
[TIL] JUnit ThreadTIL(Today I Learned) 2022. 12. 2. 21:28
*20221202의 회고 오늘은 JUnit으로 테스트 코드를 작성할 수 있다는 사실과 Process와 Thread, TCP/IP, OSI 7계층에 대해 배웠다. 팀프로젝트를 진행할 때 마다, 어떤 메서드를 추가하거나 변경했을 경우 일일이 컴파일을 다시 하고 실행하며 변수를 대입했었는데, JUnit으로 테스트 코드를 작성하면 다시 실행할 일 없이 단위테스트를 진행할 수 있다. 그리고 Process와 Thread의 개념과 TCP/IP, 그리고 OSI 7계층에 대해서도 배웠다. 배운 내용이 어렵고 많아서 주말동안 찬찬히 정리해야 겠다 ㅠㅠ 오후에는 자바 관련 퀴즈를 봤다. Stream과 Date 클래스를 쓰는 문제는 어려워서 구글링을 해가며 풀었다. 자바 심화 부분은 역시 접한적이 별로 없어서 많이 낯설었다...
-
[TIL] 자바의 Interface, Stream, Optional 등등TIL(Today I Learned) 2022. 12. 1. 20:30
*20221201의 회고(벌써 12월이라니...) 오늘은 아침 실시간 특강 시간에 자바의 interface, stream, optional 등에 대해 배웠다. 따라서 오늘 배운 내용에 대해 회고해보려 한다. 인터페이스(Interface) 프론트와 백엔드의 접점. 프론트와 백의 통신 규약 → 프론트와 백이 동시 개발 가능 다른 클래스를 작성할 때 기본이 되는 틀을 제공하면서, 다른 클래스 사이의 중간 매개 역할까지 담당하는 일종의 추상 클래스 자바는 다중 상속을 허용하지 않음 -> 인터페이스로 다중상속을 흉내낼 수 있음 인터페이스는 여러개 구현이 가능함 추상메서드와 상수만을 포함하였으나, 자바8 부터 디폴트 메서드, 스테틱 메서드를 선언할 수 있음 디폴트 메서드(default method)? - 인터페이스..
-
[TIL] JVM에 대하여TIL(Today I Learned) 2022. 11. 30. 20:55
*20221130의 회고 오늘 오전에 진행된 JVM에 대한 특강 내용을 정리해보려 한다. 운영체제 : 하드웨어를(하드웨어의 자원을) 관리하는 시스템 소프트 웨어, MS - windows 계열, Linux, Mac OS, Unix 등 일반적으로 컴퓨터에서 실행되는 소프트웨어는 운영 체제에 종속적임 윈도우에서 C로 작성된 프로그램은 윈도우에서만 실행됨. Linux환경에서는 실행 불가. 자바는 환경에 상관 없이, 한번 작성된 프로그램은 어디서든지 실행 가능 -> JVM 덕분에 자바 코드가 실행되는 과정 자바 문법으로 작성한 .java 파일 -> 자바 컴파일러 -> .class 파일로 변환(바이트 코드, JVM이 인식할 수 있는 코드) -> JVM -> 바이너리 코드(운영체제가 인식할 수 있는 코드) -> 운영..
-
[TIL] 두번째 프로젝트를 마무리 지으며... + KPT회고TIL(Today I Learned) 2022. 11. 29. 22:19
*20221129의 회고 드디어 두번째 프로젝트가 마무리 되었다. 약 2주가량 같은 팀원들과 공부를 함께 하고, 공부한 내용을 바탕으로 프로젝트를 무사히 마무리 지었다. 정말 값진 경험을 한 것 같다. 팀 분위기도 너무 좋았고, 프로젝트의 진행도 매끄럽게 잘 진행이 되었다. 이게 가능 했던 이유는, 팀원 한사람도 빼놓지 않고 각자 책임감을 가지고 프로젝트에 임했기 때문이라고 생각한다. 내일모레부터는 팀이 바뀌게 되겠지만, 지금 팀과의 추억과 경험은 잊지 않을 것이다. 나는 이제까지 팀 복이 참 좋았던 것 같다. 첫 번째 팀 분들도 서로 존중해가며 화기애애한 분위기가 너무 좋았었는데, 두 번째 팀원 분들도 너무 좋았다. 다음에 만날 팀원분들도 좋은 분들이셨으면 좋겠지만, 나도 좋은 팀원이 되기 위해 노력할..
-
[TIL] 은행 서비스 프로젝트의 마무리 단계TIL(Today I Learned) 2022. 11. 28. 22:51
*20221128의 회고 오늘까지 해서 두번째 미니 프로젝트가 얼추 마무리 되었다. 주말동안 회원가입 UI와 로그인 UI를 구현하였고, 오늘은 팀원 모두의 코드를 합쳐서 기능이 제대로 동작 하는지, 오류가 있는지 테스트를 진행하였다. 중간 중간 발견되는 버그를 수정하였고, 시간 여유가 조금 있어서 선택적으로 구현하도록 되어있는 추가 기능까지 구현하였다. 추가 기능은 입금 금액에 이율을 적용시킨 잔고가 계산되도록 하고, 출금 수수료를 적용하고, 계좌끼리 송금 할 수 있도록 하는 것이다. 이 중 출금 수수료를 제외한 기능을 모두 구현하였다. 나는 HW님과 이율 부분을 담당하였다. Java의 내장 함수인 BigDecimal를 활용하여 구현하였는데, BigDecimal에서 소수점을 딱 떨어지게 계산하는 부분에서..
-
[TIL] 은행프로그램 구현 2일차, CS특강(HTTP, HTTPS)TIL(Today I Learned) 2022. 11. 25. 21:17
*20221125의 회고 오늘은 은행프로그램을 구현한지 2일째 되는 날이었다. 오전시간에는 어제 팀원들이 각자 담당해서 만든 코드들을 병합하고, 그 기능이 잘 동작하는지 살펴보았다. 그러면서 필요없는 기능, 더 필요할 기능이 어떤 것이 있는지 의논하고 반영하였다. 어제 내가 구현했던 메소드가 생각해보니 필요없을 것 같다는 결론이 나와서 삭제를 하였고, 그 후에 나는 회원가입 부분을 담당하게 되었다. 따라서 오늘은 그 부분의 UI를 구현하였다. 그리고 팀원들과 협업 하는 방식을 정했는데, SB님의 원격저장소에서 develop브랜치를 쳐서 그곳에 풀 리퀘스트를 보내며 병합하는 방식으로 진행하기로 하였다. 역시나 이걸 설정하는데 있어서 시간을 많이 소요하였다. 낮부터 설정을 했는데, 저녁이 되어서야 드디어 풀..