본문 바로가기

사이드 이펙트2

[Java API] StringBuilder 클래스 불변인 String 클래스에는 단점이 존재한다. "A" + "B"String("A") + String("B") // 문자는 String 타입이다String("A").concat(String("B")) // 문자의 더하기는 concat을 사용한다new String("AB") // String은 불변이므로 새로운 객체를 생성한다 두 문자를 더하는 경우 다음과 같이 동작한다.더 많은 문자를 더하는 경우에는String str = "A" + "B" + "C" + "D";/*String str = String("A") + String("B") + String("C") + String("D");String str = new String("AB") + String("C") + String("D");String str .. 2024. 8. 22.
사이드 이펙트(side effect) 사이드 이펙트(side effect)는 프로그래밍에서 어떤 계산이 주된 작업 외에 추가적인 부수 효과를 일으키는 것을 말한 다. 쉽게 말하면 '의도하지 않은 결과'를 의미하며 프로그래밍에서 사이드 이펙트는 보통 부정적인 의미로 사용한다. 1. 사이드 이펙트의 예시전역 변수 수정: 함수가 전역 변수를 수정하는 경우.입력 값 수정: 함수가 전달된 인자의 값을 직접 변경하는 경우.파일 시스템에 쓰기: 함수가 파일에 데이터를 쓰거나 파일을 수정하는 경우.데이터베이스 업데이트: 함수가 데이터베이스에 값을 삽입하거나 갱신하는 경우.콘솔 출력: 함수가 콘솔에 메시지를 출력하는 경우. (System.out.println() 등)네트워크 요청: 함수가 외부 네트워크 요청을 하는 경우. 2. 사이드 이펙트의 문제점"사이드.. 2024. 8. 20.