끊임없이 검증하라

나에게 당연할지라도

Java 11

L2_메모리로 알아보는 JAVA와 JavaScript

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. ❗ 이 글은 java와 js를 동시에 학습하시는 입문 개발자분들에게 초점이 맞춰져 있습니다. 때문에 너무 기초적인 용어의 경우 간단히 설명만하고 자세한 사항은 refer에 관련 설명 링크를 적어둘 예정입니다. * 잘 모르시는 기술은 로그인 필요 없이 이 곳에서 AI에게 물어보세요! 시작하기에 앞서 진짜 아무것도 모르는 일반인이시라면 Java와 JavaScript가 연관이 있는줄 아는 경우가 대부분입니다. 'JS는 Java에서 script 기능을 넣은건가?'라는 말도 실제로 들어본 질문 중 하나입니다. 하지만 두 언어는 그냥 이..

Learning 2023.02.11

P3_GPT API로 프로그래밍 AI 웹서비스 만들어보기(spring Boot+React)_1 API TEST

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 우선 제가 맨 처음에 chatGPT에 대해서 들었을땐 아무래도 영어에 최적화 되어 있어서 한글로 질문하면 시간이 2배 정도 더 걸린다고 하더라구요. 그렇기 때문에 처음 생각만 할 때는 한글로 된 개발자의 질문을 파파고 api를 통해 영어로 번역하고 그것을 GPT에 질문하고 나온 대답을 다시 파파고로 번역해서 보여주는 것을 생각했습니다. 그런데 실제로 GPT를 사용해서 한글로된 질문 몇 개를 해보니 속도 차이가 그리 나지도 않고 답변도 한글로 잘만 해주더라구요. 그래서 문득 궁금해져서 GPT에 직접 질문을 해봤습니다. Q : 선..

Project 2023.02.04

P3_GPT API로 프로그래밍 AI 웹서비스 만들어보기(spring Boot+React)_Ready

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 건강이 너무 안 좋아서 운동을 하기로 결심했더니 몇 달 동안은 다른 일은 손에도 잡지 못했습니다... 물론 제가 게으른 것도 있겠지만 원체 살면서 운동이라고는 해본적도 없고 하루에 한 끼 먹는게 일상이었다보니 하루 세 끼 챙겨가면서 운동만 해도 온몸에 진이 빠지네요... 이제 슬슬 운동 습관도 붙어가는 것 같아서 취업 준비 전에 마지막으로 프로젝트 하나만 더해보려 합니다. 요즘 chatGTP가 핫하다고 해서 저도 호기심으로 가서 몇 번 써봤는데 생각보다 이게 물건이더라구요. 그래서 다시 개발 공부도 시작할 겸 openAI에서 ..

Project 2023.02.02

P2_페이지 내 하이퍼 링크 달아주는 코드_2_웹으로 이식

ㄱ* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. Index 1 준비 2 스프링 프로젝트 생성 3 컴포넌트 4 view 구성 5 이식을 위한 코드 분리 6 domain 설정 7 리포지토리 8 서비스 9 컨트롤러와 뷰 준비 이제 본격적으로 로직을 반영하여 웹으로 이식하겠습니다. 우선 이번 글에 작성된 스프링 코드는 일부러 정말, 매우, 아주 잘못된 코드이며 설계부터 이상합니다. 그 이유는 다음 글부터 올바른 코딩을 위해 겪는 과정을 설명하기 위한 빌드업이기에 이번 글을 읽으시면서 어떤 부분에서 무엇이 잘못되었는지 체크해보시는 것도 괜찮을 것 같습니다. 물론 인덱스 링크 기능만..

Project 2022.06.17

P2_페이지 내 하이퍼 링크 달아주는 코드_1_단순로직

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 목록 1 개발 환경 2 준비 3 input.txt 불러오기 4 원본 html코드 5 기능 추가 전 준비 6 기능 추가 7 코드 마무리 개발 환경 우선 이후 페이지로 로직을 이식할 예정이라 JAVA, Spring boot를 사용할 예정입니다. 추후 글을 볼 필요가 없으시면 spring 필요 없이 그냥 jdk 1.8 이상만 사용하시면 됩니다. JDK 11, IntelliJ Spring boot 준비 이전 포스트의 내용대로 1 index 자동 완성 2 페이지 내 링크 자동 완성 기능에 대한 로직을 우선 완성하겠습니다. 일단 로직은 ..

Project 2022.06.08

P2_페이지 내 하이퍼 링크 달아주는 코드_준비

* 이 포스트는 학습 과정에서 그 내용을 기록한 글이기에 부정확한 정보가 포함될 수 있습니다. 따라서 해당 글은 참고용으로만 봐주시고 틀린 부분이 있다면 알려주시면 감사하겠습니다. 불편했던 점 티스토리 블로그에 학습한 내용을 포스트하는 과정에서 제가 너무 말이 많은지 글이 길어지곤 합니다. 글이 길어지면 인덱스를 다는데 여기서 문제가 좀 있었습니다. 보통 페이지 내 링크를 걸기 위해선 목차마다 id를 지정해주고 a 태그에 #id를 써주거나 클릭시 1st로 이동 1st id 대신 name을 지정해주면 되는데 클릭시 1st로 이동 1st 하지만 목차가 길어지면 이 태그를 일일이 달기도 귀찮기에 티스토리가 기본적으로 제공하는 문서 서식에 index 링크를 작성해놓고 매번 불러오면 되지 않으려나 생각했는데 여기..

Project 2022.06.03

Spring_정리2_Spring 이전 JAVA 웹 개발의 역사 훑어보기

※ 이 포스트는 스프링 실습 과정에서 작성하기 때문에 정보가 부정확할 수 있는 부분이 있습니다. 특히 Spring의 전체적인 이해를 돕기 위해 논리의 비약이나 내용 축약으로 인한 정보의 질적저하가 있을 수 밖에 없습니다. 따라서 전체 흐름 이해를 위한 참고만 해주시고 틀린 부분이 있을 경우 알려주시면 감사하겠습니다. 이번 포스트는 김영한님의 '스프링 핵심원리 기본편' 강의의 인트로 부분을 일부 인용하였습니다. 스프링에 대해 더 자세히 공부하고 싶으신 분은 인프런에서 해당 강의를 수강하시길 추천합니다. 우선 이 시리즈의 keyword는 역사, 용어, 구조입니다. 제가 작성한 다른 포스트를 보면 하나의 주제를 설명하기 위해 등장하는 개념은 인용문이나 짧은 설명으로 넘어가고 진행하기에 용어를 파악하기 어려울 ..

Spring 2022.04.29

Spring_1_게시판 페이징

※ 이 포스트는 스프링 실습 과정에서 작성하기 때문에 정보가 부정확할 수 있는 부분이 있습니다. 따라서 참고만 해주시고 틀린 부분이 있을 경우 알려주시면 감사하겠습니다. 프로젝트 진행 중 게시판에 페이징 기능을 구현하다가 포스트 안에서 언급하고 넘어가기보다는 정리해서 글 하나로 남겨두는 것이 낫다고 생각해서 작성하게 됐습니다. 게시판 페이징 방식은 엄청나게 다양하지만 결국 구조는 거의 다 비슷하기 때문에 원리 위주로 포스팅해볼까 합니다. 개발 환경 JAVA 1.8, Spring 2.4 IntelliJ Thymeleaf * 참고로 stream, JPA 등의 설명을 제외하면 다른 언어를 쓰시더라도 크게 복잡하지 않도록 작성하려 해봤습니다. * Spring 개발 중이시면 이 포스트에 나오는 코드의 경우 예제를..

Spring 2022.04.22

JAVA_3_Static(+메모리)

* 해당 포스트는 실습 과정 중 학습을 정리하는 글이기에 주관적인 내용이 포함되어 있을 수 있습니다.잘못된 부분이 있다면 걸러들으시거나 댓글로 남겨주시면 감사하겠습니다. 이번 포스트는 Static Class, variable 위주의 JAVA의 메모리 할당에 대한 얘기를 풀어보고자한다.INDEX1 물리/논리 메모리의 간단한 구조2 기업들과 OOP3 static과 인스턴스 Elements의 차이 - 우리가 사용하는 Class는 (static) Class4 static과 OOP 스프링 공부를 하는데 누군가 Q&A에 static class에 대해 잘 모르는 뉘앙스의 질문글을 올렸고 거기에 답글을 달다가 '내가 알고 있는 메모리 관련 지식이 정확할까?'란 고민에 휩싸여 결국 다시 개념을 정리해보기로 했다. ..

JAVA 2022.04.14

JAVA_2_몬티홀 문제_2(코드로 접근)

* 해당 포스트는 실습 과정 중 학습을 정리하는 글이기에 주관적인 내용이 포함되어 있을 수 있습니다. 잘못된 부분이 있다면 걸러들으시거나 댓글로 남겨주시면 감사하겠습니다. 이제 이 문제를 코드를 이용해 풀이하는 방식으로 접근해보자. 일단 이 문제를 해결하기 위해 파악해야하는 거대한 줄기는 다음과 같다. 1. 당첨될 확률을 참가자인 내가 사회자에게서 게임에 승리한 횟수의 전체 비율로 설정 2. output은 총 시행후 승리와 패배 횟수, 승리 비율 처음부터 설계를 해보자. 일단 이 문제를 코드로 푸는 방법도 여러 가지인데, 앞서 소개했던 내가 선택한 문을 A로 놓고 코드를 풀어갈 수도, 게임의 모든 과정과 유사하게 코드로 표현할 수도 있다. 하지만 선택한 문을 A로 놓고 푸는 것은 결국 내가 A,B,C 세..

JAVA 2022.02.06