Study/Java 4

[새싹x코딩온] 웹 개발자 부트캠프 과정 21주차 회고 | Java의 ArrayList와 LinkedList 비교

1. 들어가며Java 의 List 중 ArrayList 와 LinkedList 비교해보기2. List자바에서 컬렉션 프레임워크가 제공하는 인터페이스 중 List 라는 것이 있다.List는 순서가 없는 데이터의 집합을 다룰 때 사용하며, 데이터 중복을 허용한다. (Set은 중복 허용 X) 이번 포스팅에서는 List 에서도 ArrayList 와 LinkedList 를 비교해보고자 한다. 배열과 연결리스트 비교ArrayList 와 LinkedList 를 비교하기 전에 먼저,ArrayList 와 LinkedList 의 기반이 되는 자료구조인 배열과 연결리스트(링크드리스트)에 대해 먼저 알아보고자 한다. 배열배열은 데이터를 한 열로 연속해서 정렬하는 데이터 구조다.배열의 데이터는 메모리의 연속된 영역에 순차적으로..

Study/Java 2024.10.02

[새싹x코딩온] 웹 개발자 부트캠프 과정 21주차 회고 | 추상화

1. 들어가며추상화에 대해 알아보고, Java의 추상 클래스와 인터페이스에 대해 알아보기2. 추상화바로 직전 포스팅에서 객체지향 프로그래밍의 특징에 대해서 다뤘다.(https://daddda3232.tistory.com/97)여기서 언급하지 않은 아주 중요한 단어가 있는데 그것이 바로 추상화다. 추상화객체지향의 사실과 오해라는 도서에서는 추상화를 이렇게 정의한다.추상화란 어떤 양상, 세부 사항, 구조를 좀 더 명확하게 이해하기 위해 특정 절차나 물체를 의도적으로 생략하거나 감춤으로써 복잡도를 극복하는 방법이다. 이렇게만 보면 추상화가 무슨 말인지 감이 잡히질 않는다.쉽게 말해 추상화란 실체 간의 공통되는 특성을 찾는 것이다.  책에서 말하길 추상화는 두 차원에서 이뤄진다고 한다.(kramer, 2007)..

Study/Java 2024.09.30

[새싹x코딩온] 웹 개발자 부트캠프 과정 20주차 회고 | 객체지향 프로그래밍

1. 들어가며객체지향 프로그래밍에 대해 알아보기2. 객체지향 프로그래밍객체지향 프로그래밍과 절차지향 프로그래밍절차지향 프로그래밍(Procedural Programming)프로그램을 일련의 절차나 함수의 집합으로 보고, 이를 순차적으로 실행하여 문제를 해결하는 방식프로그램 흐름을 중시하며, 간단한 작업에 적합하다.대표적인 언어로는 C언어 등이 있다.장점은 실행 속도가 빠르다는 것이다.단점은 프로그램이 커지면 유지보수가 어렵고, 순서가 중요하기 때문에 순서가 바뀌면 결과 도출이 어렵다는 것이다. 이런 점 때문에 대형 프로젝트에는 적합하지 않다.   객체지향 프로그래밍(Object-Oriented Programming)프로그램을 객체들의 집합으로 모델링하여, 객체 간의 상호작용을 통해 로직을 구성하는 프로그래..

Study/Java 2024.09.28

[새싹x코딩온] 웹 개발자 부트캠프 과정 20주차 회고 | Java 에서 String(문자열) 타입의 값을 비교하는 법

1. 들어가며Java에서 String(문자열) 타입의 값을 비교하는 법 알아보기2. Java의 String 타입자바의 데이터 타입은 크게 두 가지로 나눌 수 있다.기본 타입(Primitive)레퍼런스 타입(참조형, Reference)그 중 String 타입은 레퍼런스 타입이다. 데이터들은 메모리 어디에 저장될까Java에서 Primitive type은 메모리의 stack 영역에 저장된다.Reference type은 객체에 대한 주소값이 stack에 저장되고 이 stack의 주소값을 이용해서 heap 에 있는 객체에 접근한다.public class Person { public static void main(String[] args) { String name = "김굉필"; in..

Study/Java 2024.09.25