profile
개발 좋아 취준생
post-thumbnail

Java | enum(열거형)이란? enum 활용 예시

강의를 들으며 실습하는데 enum을 통해 특정 타입을 만들어서 사용하거나 에러코드를 생성해서 사용하는 것을 보며 무작정 따라 쓰기보단 한번 더 알아볼 필요성을 느껴 정리해보았다. 마지막에는 실습 때 사용했던 예제코드로 다시 한번 정리함! > +) 난 enum을 몇번 사용해보고 알아본 경우라 잘 이해했지만, enum을 처음 접하거나 이해가 잘 되지 않는 경우에는 맨 아래에 링크로 첨부해둔 생활코딩 유튜브 강력 추천! 4개의 짧은 영상으로 이루어져 있는데 보고나니 개념이 더 잘 잡혔다. enum이란? enum은 연관된 값들, 특히 변하지 않는 상수를 다룰 때 사용한다. enum은 일반적인 클래스로도 표현이 가능하지만 일반클래스로 표현 시의 단점들을 보완하기 위해 java가 enum이라는 문법을 지원하게 되었다. > enum을 사용하는 이유 코드가 단순해진다. 인스턴스 생성과 상속을 방지한다. 키워드 enum을 사용하기 때문에 구현의도가 열거

2023년 7월 11일
·
0개의 댓글
·
post-thumbnail

Java | 프로그래머스 입문_짝수는 싫어요 | IntStream, rangeClosed, filter, toArray

나는 코딩테스트 문제를 풀고 꼭 다른 사람의 풀이를 보며 내 풀이와 비교해본다. 그리고 아!!! 싶은 것들은 기록을 꼭 해두는 편! 이 포스팅은 코딩테스트 연습을 시작한지 일주일도 안됐을 병아리 시절에 (지금으로부터 약 한달전)(물론 지금도 병아리이긴 함) 기록해놨던 건데 출간을 안해놨길래 늦게라도 정리해본다. 지금봐도 아!싶긴 하다. 아직 Stream을 잘 활용하지 못해서...ㅎㅎ 프로그래머스 다른 풀이들을 보다보면 스트림을 활용하는 경우가 많이 보이는데 완전 병아리 수준인 내가 보기엔 아직 뭔지도 모르겠고 이해하기 힘든게 많다. 하지만 이번엔 나도 충분히 활용가능해보이고, 보기에도 깔끔해서 가져와봤다. 풀이를 보며 어떤 문법을 활용한건지 같이 정리하려 한다. 혹시 잘못된 정보가 있다면 댓글로 알려주세요! 피드백은 사랑입니다😊 문제 > [문제 링크←](https://school.programmers.co.kr/learn/courses/30/lessons

2023년 4월 7일
·
0개의 댓글
·
post-thumbnail

백엔드 공부 초기부터 자료구조/알고리즘/코딩테스트 준비를 해야할까?

제로베이스를 시작한지 약 5주. 그 중 3주 정도 자료구조 강의를 듣고, 코딩테스트 과제도 하고, 개인적으로 틈틈히 프로그래머스나 백준을 통해 문제도 풀었다. 한 일주일 정도는 자바 문법을 잘 아는 상태도 아닌데 자료구조, 알고리즘, 코테준비를 하는게 맞나 싶은 생각이 종종 들었다. 하지만 언어공부와 자료구조/알고리즘 공부를 꼭 병행해야 한다고 말씀하신 데에는 이유가 있을 것 같아서 커리큘럼을 열심히 따랐다. 3주 정도 지난 지금, 자료구조 강의가 끝나고 알고리즘 강의를 시작했는데, 왜 그렇게 말씀하셨는지 체감하는 중이다. > 1. 백엔드 개발자는 어떠한 요구/문제를 해결하는 사람이다. 그러한 문제 해결 능력은 한번에 생기는 것이 아니다. 문제는 물론 항상 다르겠지만, 일정한 패턴이 있고, 그 패턴을 반복적으로 접함으로써 문제를 어떻게 해결해야겠다~라는 감이 잡히는 것 같다. > > 본인이 사용할 언어에 익숙하지 않더라도 아주 최소한의 코드만 작성할 줄 안

2023년 4월 6일
·
2개의 댓글
·
post-thumbnail

Java | split(""), toCharArray(), charAt(i), chars(IntStream) | 문자열 한 글자씩 분리하기

코딩테스트 연습을 하다보니 문자열을 하나씩 분리하게 되는 경우가 꽤 많았다. 나는 습관적으로 가장 익숙한 String.split("")을 사용하곤 하는데 다른 풀이를 보니 다양한 방법이 있어서 정리해본다 하나씩 특징을 알아보고 마지막에 한번에 볼 예정 바쁘신 분은 가장 아래로,,, 추가로 좋은 방법이 있거나 틀린 부분이 있으면 언제든 댓글 남겨주세요 피드백은 사랑입니다 👍 1. String.split("") > String.split(x)은 지정된 문자열 x를 기준으로 문자열을 나누는 메서드. split("")을 한다는 것은 결국 문자열을 한 글자씩 나눈다는 것! 2. String.toCharArray() > 문자열을 한 글자씩 나눠 char 타입의 배열에 담아 반환하는 메서드. 배열을 생성하여 처리하기 때문에 속도가 느리다. (그럼 1번 방법도 속도가 느린 방법 중 하나인가?라는 의문이 들지만 아직 정확한 정보

2023년 4월 1일
·
0개의 댓글
·

백엔드 공부 한달차, 앞으로의 백엔드 공부 방향성과 공부방법

제로베이스에서 백엔드 공부를 시작한지 어느덧 한달이 넘어간다. 지금 시점에서 앞으로의 공부 방향성과 공부 방법에 대해 한번 짚고 넘어가보자! 앞으로 남은 5개월도 커리큘럼을 잘 따라갈 예정이지만 그와 별개로 어떤 공부를 할 것인가를 생각해보았다. 공부 방향성 내가 어떤 능력을 길러야 할지 알고 공부를 하는 것과 모르고 일단 하라는대로 공부하는 것은 많이 다르다. 난 사실 아직 java 기초적인 부분과 자료구조를 공부하고 있어서 뭘/어떻게 더 공부해야하는 상황인지조차 파악이 안되고있긴 하지만 이럴때 주로 채용 공고를 보며 갈피를 잡는 편이다. 일단 지금 피부로 와닿는 것은 > - Java, Spring 사용 가능 CI/CD 툴을 이용한 배포 자동화, 테스트 자동화 시스템 사용 및 설계 경험자 JUnit 4,5 경험자, E2E 테스트 자동화 경험자 SQL 경험이 있으신 분 SpringBoot, GitHub, Docker 활용 능력 이 정도 인것 같다

2023년 3월 29일
·
0개의 댓글
·

Java 자료구조 Queue | 큐 remove, poll 차이

큐 자료구조 관련 강의에서, 강의예제를 먼저 풀어보고 강의를 들었는데 나는 큐에서 테이터를 없앨 때 poll을 사용했는데 강사님은 remove를 쓰셨다. 근데 결과는 똑같아서 이 둘의 차이가 궁금해져서 정리해보았다. ++ 큐에서 데이터를 삭제하는 또다른 방법인 clear까지 더해서 정리! 혹시 잘못된 부분이 있거나 궁금한 부분은 댓글 남겨주세요 피드백 환영입니다⭐️ 큐에서 데이터를 삭제하는 방법 > 먼저, 큐는 선입선출 구조이기 때문에 먼저 들어간 데이터가 먼저 삭제된다는 점 참고! queue.remove() -> 큐의 첫번째 요소를 삭제(및 반환)한다. 만약 큐가 비어있으면 ⛔️예외가 발생⛔️한다. queue.poll() -> 큐의 첫번째 요소를 삭제(및 반환)한다. 만약 큐가 비어있으면 ⛔️null을 반환⛔️한다. queue.clear() -> 큐의 모든 요소를 삭제한다. 반환타입은 void이다.(반환은 하지 않

2023년 3월 27일
·
0개의 댓글
·

내가 되고 싶은 백엔드 개발자란?

개발자가 되기로 결심한 후 > **나는 어떤 개발자가 되고싶을까? 나는 어떤 개발자가 되기 위한 공부를 해야할까?** > 이런 종류의 생각 내지 고민을 종종 했다. 처음 개발 공부를 시작했을 때는 > 개발 실력을 인정받는 본인의 일(개발, 회사, 제품, 서비스, 프로젝트 등)을 사랑하는 꾸준히 성장하는 > 개발자가 되고싶다. > 이 정도의 생각을 가지고 있었다. > 그리고 프론트엔드 공부를 거쳐 백엔드 개발자를 준비하는 지금은, > 확고한 나만의 의견을 가지고 있으면서도 다른 사람의 의견을 유연하게 받아들이고 판단하여 조율할 줄 아는 비개발자 동료/ 개발자 동료를 배려하며 개발하는 서로의 성장과 나의 성장을 위해 노력하는 본인의 역할에 책임감을 느끼는 > 개발자가 되고싶다. > 라는 생각을 추가적으로 하고있다. > 프론트엔드를 공부하면서 프로젝트를 하다보니

2023년 3월 23일
·
0개의 댓글
·
post-thumbnail

Java | ==과 equals의 차이. 문자열 비교할 땐 뭘써야 할까?

코딩테스트 기초문제들 연습을 하다가 문자열 비교에선 == 연산자 보단 equals 메서드를 사용해야 한다는 것을 알았다. 하지만 명확한 이유를 모르겠어서 원리를 찾아보았다. > 틀린 부분이 있다면 댓글부탁드립니다 피드백 환영⭐️ 원시 데이터 타입, 비 원시 데이터 타입 자바에는 원시 데이터 타입과 비 원시 데이터 타입이 존재하고, 그 둘은 메모리상 저장방식과 처리방식에 있어서 차이가 존재한다. |원시 데이터 타입 primitive|비 원시 데이터 타입 non primitive| |:---:|:---:| |boolean|String| |int|Array| |double|Date| |short|File| |long|...| |float|...| |char|등등| 원시 데이터 타입은 변수들의 동일한 값을 가지고 있을 경우, 메모리 상 같은 주소에 저장된다. 비 원시 데이터 타입은 변수들이

2023년 3월 19일
·
0개의 댓글
·

프론트엔드 개발자를 준비하다가 백엔드를 배우기로 했다

프론트엔드 부트캠프를 수료한 후 개인적으로 토이프로젝트도 개발해보고, 팀에 합류해 웹사이트도 만들며 프론트엔드 개발자를 준비하고 있었다. 그런데 다시 백엔드를 공부하기로 마음먹었다. 과제로 주어지긴 했지만 스스로 돌아보고 목표를 뚜렷히 하고 마음을 다잡기 위해 글을 써본다! 프론트엔드 vs 백엔드 일단, 프론트와 백엔드란? 단어에서 유추할 수 있듯이 프론트엔드는 어플리케이션의 앞(?)에서 사용자와 직접 마주하고, 백엔드는 뒤에서 서버와 데이터베이스 등에 관여한다. 프론트엔드 개발자는 디자이너, 백엔드 개발자와 소통을 많이 하고, 백엔드 개발자는 기획자, 프론트엔드 개발자와 소통을 많이 한다고 한다.(물론 기본적으로 팀 전체적으로 소통은 필수겠지만) 백엔드를 배우기로 결심한 이유 먼저, 프론트엔드를 배운 이유는? 난 항상 고객이 필요로하는 서비스를 만들고 싶었다. 그리고 내가 하는 일이 누군가에게 도움이 되고, 긍정적 영향을 준다는 보람으로 일을 하는 편

2023년 3월 12일
·
2개의 댓글
·

Java 숫자 자료형 | int, long, float, double, 2/8/16진수

Java 공부를 시작할 때 거의 첫단계로 자료형을 배웠습니다. 자바스크립트나 타입스크립트 덕분에 익숙한 자료형도 있지만 아예 초면인 자료형도 있었네요 그 중에 전에는 number로만 접했던 숫자 자료형이 자바에서는 종류도 여러가지고 용어도 생소해서 헷갈리는 순간이 많아서 정리해보았습니다:) 혹시 틀린 부분이 있다면 댓글부탁드립니다:) 피드백 감사하게 받겠습니다🙇‍♀️ 정수 int, long: 정수를 표현한다는 것은 같지만 "표현 범위"가 다르다. 🐰int 표현범위: -21477483648 ~ 2147483647 예시: int a = 10; 🐰long 표현범위: -9223372036854775808 ~ 9223372036854775807 사용 시 'L'접미사를 붙여야 컴파일에러가 생기지 않음⭐️ 예시: `long a = 234987233333L;

2023년 3월 7일
·
0개의 댓글
·