들어가기 전 Java 프로그래밍 언어는 "한 번 작성하면 어디서나 실행"이라는 원칙을 자랑한다. 사용자가 어느 장치를 사용함에 관계없이 모든 장치를 실행할 수 있도록 응용 프로그램을 만드는 것이다. 이런 방식이 어떻게 가능한 것일까? Complie 자바의 컴파일 과정
들어가기 전에 Java에서 문자를 데이터에 담고싶다면 제일 많이 쓰는 것이 String 자료형 입니다. 이 String 자료형을 써서 문자를 더하는 함수를 만들고 있었는데 이런 로직에서는 StringBuffer나 StringBuilder를 쓰는 것이 더 효율적이라는 걸
1
1. 들어가기 전 앞서 포스팅 했던 String과 StringBuilder, StringBuffer를 보면 동시성이나 Thread Safe라는 개념이 등장합니다. Thread Safe란 어떤 개념일까요? 2. Thread Safe의 개념 > 멀티 스레드 프로그래밍에
들어가기 전 이전 포스팅에서 string을 설명할 때 나온 클래스란 단어. 이 단어를 찾다보면 항상 따라오는 단어들이 있습니다. > 클래스, 객체, 인스턴스 이 단어들이 왜 클래스와 연관이 있고 어떤식으로 차이가 있을까요? 클래스(Class) - 설계도 처음소개
들어가기 전 이전 포스트에서 클래스와 추상 객체 등을 살펴보았는데요. 이런 클래스나 추상 객체들을 살펴보다 보면 앞에 어떠한 단어들이 붙어 있는 걸 알 수 있습니다. > public void sum(int a, int b) {...} 이런 단어들은 어떤역할을 하고
들어가기 전 객체 지향 프로그래밍(OOP)은 소프트웨어 개발에서 광범위하게 적용되는 중요한 패러다임입니다. OOP의 네 가지 주요 특성인 추상화, 캡슐화, 상속, 다형성은 프로그램의 설계와 구현에 있어 필수적인 요소입니다. 본 포스트에서는 이러한 특성들을 상세히 탐
들어가기 전 객체 지향 설계의 심장을 이루는 SOLID 원칙들에 대해 깊이 있게 다뤄보려 합니다. 이 원칙들은 강력하고 유연한 소프트웨어 아키텍처를 구축하는 데 필수적입니다. 소프트웨어 엔지니어링의 세계에서 SOLID는 단순히 약어 이상의 의미를 지니며, 각 문자는
들어가기 전 지난번 포스팅에서 OOP와 OOP의 5대 원칙에 대해 알아보았습니다. 그 과정에서 인터페이스라는 개념이 등장하였는데요. 이 인터페이스라는 개념이 등장 할 때 따라오는 개념이 추상 클래스입니다. 둘은 무슨 관계이길래 같이 언급되는 걸까요? 공통점 추상 메
들어가기 전 String 클래스를 공부하면서 불변객체를 알아보았습니다. 불변객체란 정확히 무었이며 무슨 의도로 쓰이는 걸까요? 불변 객체에 대한 설명을 좀 더 명확하게 정리해 보겠습니다. 불변 객체란? 불변 객체(Immutable Object)는 객체 지향 프로그
1
들어가기 전 Java에서 예외(Exception) 처리는 프로그램의 안정성과 오류 관리를 위한 핵심적인 부분입니다. Java의 예외는 크게 두 가지 범주로 나뉩니다: Checked Exception과 Unchecked Exception. 이 두 유형의 예외는 그들이
10-1 java는 어디에 해당하는가
HashMap 동기화 보장 안됨 null 허용 HashTable, ConcurrentHashMap 동기화 보장 null 허용 안됨 성능은 ConcurrentHashMap 1-2 HashTable vs ConcurrentHashMap
1
들어가기 전 객체를 복사하는 과정에서 "얕은 복사(Shallow Copy)"와 "깊은 복사(Deep Copy)"는 중요한 개념입니다. 이 두 복사 방법은 객체의 복사본을 생성할 때 내부의 값들이 어떻게 처리되는지에 대한 차이를 가지며, 이는 프로그래밍에서 데이터 관리
백준 1181번 문제간단한 문자 정렬 문제이다. 이렇게 해결하였다. 그런데 해결하고 보니 그냥 알고만 있던 람다의 정체가 궁금해졌다. 람다 표현식은 (때로 람다 형식(lambda forms)이라고 불립니다) 이름 없는 함수를 만드는 데 사용됩니다. 표현식 lamb
HTTPS는 암호화 및 인증이 있는 HTTP입니다.두 프로토콜의 유일한 차이점은 HTTPS는 TLS(SSL)를 사용하여 일반 HTTP 요청과 응답을 암호화하고 해당 요청과 응답에 디지털 서명을 한다는 점입니다.그 결과로 HTTPS는 HTTP보다 훨씬 더 안전합니다.HT
ip 주소에 서브넷 마스크를 and 연산하면 네트워크 아이디가 됨 CIDR 표기법: /25는 11111111.11111111.11111111.10000000 /9 는 11111111.10000000.00000000.00000000 AND 연산을 사용한 방법 작동
샤딩은 동일한 스키마를 가지고 있는 여러대의 데이터베이스 서버들에 데이터를 작은 단위로 나누어 분산 저장하는 기법이다. 이때, 작은 단위를 샤드(shard)라고 부른다.어떻게 보면 샤딩은 수평 파티셔닝의 일종이다. 차이점은 파티셔닝은 모든 데이터를 동일한 컴퓨터에 저장
데이터베이스 인덱스(index)는 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블에 저장된 데이터의 검색 속도를 향상시키기 위한 자료구조이다.인덱스는 데이터베이스 내의 특정 컬럼(열)이나 컬럼들의 조합에 대한 값과 해당 값이 저장된 레코드(행)의 위치를