본문 바로가기

개발

(12)
[Java/Basics] 자바 기초 스터디 4주차: 예외처리와 스트림 예외가 무엇인지, 예외 처리가 왜 중요한지 이해하고 예외 처리 방법을 설명하고 스트림으로 넘어가서 개념과 활용법, 데이터를 더욱 효율적으로 처리하는 방법을 익히고자 한다. 1. 예외(Exception)란? - 프로그램 실행 중 예상치 못한 오류가 발생하는 상황.- 예외가 발생하면 프로그램이 비정상적으로 종료될 수 있으므로, 적절한 예외 처리가 필요하다. ## 1-1. 예외가 발생하는 대표적 상황- 잘못된 입력: 숫자를 입력 받아야 하는데 문자가 입력될 경우- 파일 입출력 오류: 존재하지 않는 파일을 읽으려 할 때- NullPointException: 객체가 null일 때 메서드를 호출하려는 경우- ArrayIndexOutOfBoundsException: 배열의 범위를 벗어난 인덱스에 접근하는 경우 ```..
[Java/Basics] 자바 기초 스터디 3주차: 상속과 다형성 먼저 상속과 다형성의 개념과 필요성을 이해하고, 자바에서 이를 어떻게 구현하는지 코드 예제로 확인한 후, 실무에서 어떻게 활용할 수 있는지 예제와 함께 정리하고자 한다.1. 상속(Inheritance)이란?기존 클래스를 기반으로 새로운 클래스를 만들고 코드를 재사용하는 기법.자식(하위) 클래스가 부모(상위) 클래스의 속성과 메서드를 물려받는다.1-1. 상속이 필요한 이유코드의 재사용성 증가중복 코드를 줄이고 유지보수성을 높일 수 있음.확장성새로운 기능을 추가할 때 기존 클래스를 수정하지 않고 확장 가능.객체 간의 계층 구조 형성현실 세계를 더 직관적으로 모델링 가능예: 동물 -> 개, 고양이1-2. 상속 구현 방법(예제 코드)// 부모 클래스 (상위 클래스)public class Animal { p..
[Java/Basics] 자바 기초 스터디 2주차: 객체지향 프로그래밍(OOP) 기초 먼저 객체지향 프로그래밍에 대해 알아야 하는 이유에 대해 알아보고, 이어서 정의, 4대 핵심 원칙, 장점, Java에서 적용하는 방법까지 정리하려 한다.1. 객체지향 프로그래밍에 대해 알아야 하는 이유현대 소프트웨어 개발의 표준.대부분의 프로그래밍 언어(자바, 파이썬, C++)는 객체지향 패러다임을 중심으로 설계됨.OOP를 이해하지 못하면 언어의 핵심 기능을 제대로 활용하기 어려움.복작합 문제를 더 잘 해결현실 세계의 복잡한 문제를 객체로 추상화해 프로그래밍 가능유지보수와 확장성 증가객체 단위로 코드가 분리되기 때문에 유지보수와 확장에 유리함.팀 개발 환경에서 역할 분담과 협업이 쉬워짐.2. 객체지향 프로그래밍(OOP)이란?2-1. 객체지향 프로그래밍| 객체지향 프로그래밍은 객체(Object)를 중심으로..
[Java/Basics] 자바 기초 스터디 1주차: 자바의 실행 구조와 메모리 모델(동작 원리) 먼저 왜 언어를 공부할 때 실행 구조와 메모리를 이해하면 좋은 지 알아보고, 실행 과정, JVM의 구성 요소, 메모리 구조와 에제 코드에 대해 작성한다.1. 왜 언어 실행 구조와 메모리 모델을 이해해야 할까?돌아간다 신난다를 위해서는 사실 이론에 대한 공부는 딱히 하지 않아도 된다.하지만 구현을 넘어 더 딥한 고민으로 퀄리티 있는 코드를 짜기 위해서는 동작 원리를 이해해야 한다.언어에 대한 깊은 이해를 하고 코드를 짜면 좋은 점효율적인 메모리 사용메모리 사용 최적화 가능Garbage Collection의 작동 원리를 알면 메모리 누수 방지 가능(객체 참조 적시에 제거하는 등)디버깅과 문제 해결 능력 향상NullPointerException, StackOverflowError, OutOfMemoryErro..
[Java/Basics] 자바 기초 스터디 계기인턴 진행하면서 동기들이 Java에 익숙하지 않은 상황에서 Java로 과제를 수행해야 한다고 하길래 나도 기초 이론 정리할 겸 스터디를 제안해서 시작하게 되었다. 계획일단 4주 동안 각자 정한 주제로 주에 1개씩 블로그 포스팅을 올리기로 했다. 마감은 일요일 23:59! 누락 시 만원 벌금도 만들었다. 1주차: 자바의 실행 구조와 메모리 모델2주차: 객체지향프로그래밍3주차: 상속과 다형성4주차: 예외처리와 스트림(이후는 개인적으로 정리)5주차: 주요 라이브러리와 기능(컬렉션 프레임워크 한눈에 보기…)6주차: 멀티스레드 기초 개념과 간단한 구현7주차: 지금까지 정리한 거 요약해서 gpt한테 보여주고 부족한 부분 보완 예정 GPT랑 얘기해서 이 정도로 정리해뒀다. 앞으로 최소 4주는 빡세게 해봐야지!! ..
Java 소수점 연산 이해하기 데이터 타입Java에서는 소수를 다루기 위해 대표적으로 두 가지 데이터 타입을 사용한다.float: 32비트 부동 소수점 숫자. 상대적으로 적은 소수 자릿수 가짐. 부동 소수점 연산에 사용됨double: 64비트 부동 소수점 숫자. float보다 많은 소수 자릿수 가짐. 대부분의 소수 연산에 기본적으로 사용됨.선언과 초기화float f = 3.14f; // 'f' 접미사를 사용하여 float 타입임을 명시.double d = 3.14; // 기본적으로 소수점 숫자는 double 타입으로 간주함.소수 연산일반적인 정수 연산과 동일public class Main { public static void main(String[] args) { double a = 5.5; double..
[Java] java.util.Date - 'getYear()' is deprecated 계기과제를 하기 위해 오랜만에 date 함수를 사용하려고 작성하자 인텔리제이가 노랑 워닝을 띄웠다.해결구글링해보니 java.util.Calendar로 대체 가능하다고 해서 적용해주었다. https://sujl95.tistory.com/3  https://stackoverflow.com/questions/9243578/java-util-date-and-getyear java.util.Date and getYear()I am having the following problem in Java (I see some people are having a similar problem in JavaScript but I'm using Java) System.out.println(new Date().getYear());..
[React] 리액트 React 설치하기 Mac M1 React 설치 리액트를 설치하려면 먼저 Node.js가 있어야 한다. 설치가 안 되어있다면 아래 링크 참고! https://sober-developer.tistory.com/9 [Node.js] 설치하기 Window 기반 설치! 먼저 Node.js 홈페이지에 접속한다. 나는 현재 AWS Lambda 개발을 위해 다운받는 것이므로 AWS Lambda 런타임 설정으로 되어 있는 16 버전을 사용하려고 한다. 원하는 버전을 클릭 후 파 sober-developer.tistory.com https://reactjs-kr.firebaseapp.com/tutorial/tutorial.html#getting-started Tutorial: Tic-Tac-Toe – React The library for..