본문 바로가기
728x90
반응형

🐎 언어(Language)35

[Java] Optional 클래스 java.util.Optional은 Java 8에서 도입된 클래스로, 값이 존재하지 않을 수 있는 상황에 사용하면 NullPointerException을 방지하고 코드를 더 안전하게 만들 수 있다. 즉, 값이 존재하는 상태(NOT NULL)와 값이 존재하지 않는 상태(NULL)를 체크하며 에러를 발생시키지 않고 예외처리를 통해 코드의 안전성을 높인다. Optional 문법 사용 방법 1. Optional 객체 생성 : Optional.of(value): 만약 값이 null이라면 NullPointerException이 발생. Optional.ofNullable(value): 값이 null인 경우 빈 Optional을 반환. Optional optionalWithValue = Optional.of("Hell.. 2023. 9. 11.
[Java] Builder Pattern과 Method Chaining 빌더 패턴 (builder pattern) Java에서의 빌더 패턴(Builder Pattern)은 객체 생성 과정을 더 직관적이고 유연하게 만들기 위한 디자인 패턴이며, 주로 객체의 생성 과정이 복잡하거나 매개변수가 많을 때 사용된다. 특징 객체의 생성과 구성을 분리한다. 가독성이 높아진다. 메서드 이름을 통해 생성되는 객체의 구성 요소를 명확히 알 수 있다. 필수적인 매개변수와 선택적인 매개변수를 구분할 수 있다. 객체의 불변성을 보장할 수 있다. 메서드 체이닝 (method chaining) Method chaining은 객체의 메서드를 연이어 호출하는 프로그래밍 패턴을 말한다. 이 패턴을 통해 한 줄에 여러 메서드를 호출하여 객체를 설정하거나 조작할 수 있다. Method chaining은 코드의.. 2023. 9. 11.
[Uml] Class Diagram. 클래스 다이어그램 Unified Modeling Language (UML)의 Class Diagram(클래스 다이어그램)은 소프트웨어 시스템의 구조를 시각적으로 표현하는 모델링 도구이다. Class Diagram은 시스템의 클래스, 인터페이스, 관계 등을 나타내어 시스템을 이해하고 설계하는 사용된다. 주요 구성 요소 클래스 (Class) : 시스템 내의 객체를 나타냅니다. 클래스 이름은 위에 표시되고, 클래스의 속성과 메서드가 아래에 나열됩니다. 클래스는 일반적으로 직사각형으로 표현되며, 클래스 이름이 맨 위에 위치합니다. 속성 (Attribute) : 클래스가 가지는 특징이나 데이터를 나타냅니다. 일반적으로 변수의 형태로 표현됩니다. 속성은 클래스의 내부 상태를 나타냅니다. 메서드 (Method) : 클래스가 수행하는 .. 2023. 9. 11.
[Python] Matplotlib란? 💡 matplotlib 라인플롯 차트, 바 차트, 파이 차트, 히스토그램, 산점도 등의 다양한 차트 그리기를 지원하는 library이다. 데이터 탐색 & 분석 결과를 시각화 하기 위해 사용한다. matplotlib-LinePlot matplotlib를 사용하기 위해서는 import matplotlib를 통해 import한다. matplotlib의 주요 모듈 import matplotlib.pyplot as plt도 import한다. #LinePlot Chart 데이터가 시간, 순서 등에 따라 어떻게 변화하는지 보여주는 선 그래프 1. 데이터 준비 x = [2016, 2017, 2018, 2019, 2020] y = [350, 410, 520, 695, 543] 2. 라인플롯 생성 plt.plot(x, y.. 2023. 8. 24.
[Python] Pandas란? 💡 pandas pandas는 쉽고 직관적인 관계형 or 분류된 데이터로 작업 할 수 있도록 설계된 빠르고 유연하며 표현력이 풍부한 데이터 구조를 제공하는 python library이다. 데이터 분석에서 자주 사용하는 테이블 형태를 다룰 수 있는 라이브러리 1차원 자료구조→ Series, 2차원 자료구조→ DataFrame, 3차원 자료구조→ Panel을 지원 pandas-Series pandas를 사용하기 위해서는 import pandas as pd를 통해 import한다. # Series 자료형 리스트를 원소로 생성하는 1차원 자료구조 Series의 원소 인덱스는 0부터 시작하는 정수를 기본 사용 Series 생성 pd.Series() ex> data1 = [10, 20, 30, 40, 50] dat.. 2023. 8. 24.
[Python] NumPy란? 💡 Numpy (Numerical Python) C언어로 구현된 python library이며, 고성능의 수치계산을 위해 제작되었다. 벡터 및 행렬(array) 연산에 있어서 매우 편리한 기능 제공 다차원 배열 자료구조인 ndarray지원 데이터분석을 할 때 사용되는 pandas, matplotlib의 기반으로도 사용 Numpy를 사용하기 위해서는 import numpy as np로 import해줘야 한다. #함수 np.array() 리스트를 이용하여 numpy 생성 Ex> ar1 = np.array([1, 2, 3, 4, 5]) ar2 = np.array([[10, 20, 30], [40, 50, 60]]) np.arange() 값의 범위를 지정하여 numpy 생성 Ex> ar1 = np.arange(.. 2023. 8. 24.
[Python] Scraping Data Scraping 컴퓨터 프로그램이 웹 페이지나 프로그램 화면에서 데이터를 자동으로 추출하는 것 💡 PyPI (Python package Index) 자유 소프트웨어 라이센스 또는 POSIX와의 호환성 같은 메타데이터에 대해 키워드를 기준으로 패키지를 검색하거나 필터를 통해 패키지를 검색할 수 있다. PyPI · The Python Package Index PyPI · The Python Package Index The Python Package Index (PyPI) is a repository of software for the Python programming language. pypi.org 스크래핑을 하기 위해선 HTML계층도를 이해해야 한다. Requests Requests Reques.. 2023. 8. 24.
[Python] 코드 간소화 💡 코드를 간소화하기 위해 쓰이는 문법들 리스트 내포(List comprehension) 리스트 안에 for문 포함하기 Ex> a = [1,2,3,4] result = [num * 3 for num in a if num % 2 == 0] print(result) #result = [num * 3 for num in a] #result = [] #for num in a: #result.appent(num*3) 람다(Lambda) 간단한 함수(def)라고 생각하면 된다 Ex> add = lambda a, b: a+b result = add(3, 4) print(result) 2023. 8. 23.
[Python] 내장 함수 💡 내장 함수! 파이썬 내장 함수는 외부 모듈과 달리 import가 필요하지 않아서 바로 사용 가능하다. abs abs(x) 어떤 숫자를 입력 받으면 그 숫자의 절댓값을 돌려준다 all all(x) 반복 가능한 (iterable) 자료형을 입력 인수로 받으며, 이 x의 요소가 모두 참이면 True, 하나라도 거짓이면 False를 돌려준다. any all(x) 반복 가능한 (iterable) 자료형을 입력 인수로 받으며, 이 x의 요소가 하나라도 참이면 True, 모두 거짓일 경우에만 False를 돌려준다. chr chr(i) 유니코드 값을 입력 받아서 그 코드에 해당하는 문자를 출력한다. ord ord(c) 문자의 유니코드 값을 돌려준다. dir dir(d) 객체가 자체적으로 가지고 있는 변수, 함수를 .. 2023. 8. 23.
728x90
반응형