목록코드스테이츠 (19)
Developer_Neo
먼저 애플리케이션이 무엇인지 알아보자 Application이란? Application software의 준말으로 운영체제를 제외한 나머지 소프트웨어/프로그램을 말한다. 즉, 응용프로그램이라는 의미를 가진다. 예를 들어 바탕화면에 보이는 바로가기들을 다 응용프로그램이라고 부르며, 애플리케이션이라고 부를 수 있다. 하지만, 일반적으로 앱이라는 것은 스마트폰 내에서 응용되어 사용되는 응용프로그램을 말합니다. 예를 들어 카카오톡, 인스타그램과 같은 것 입니다. 애플리케이션은 여러가지로 나뉠 수 있습니다. 네이티브 애플리케이션, 웹 애플리케이션, 하이브리드 앱으로 나뉘어 집니다. 네이티브 App Apple의 Ios , Google의 Android와 같은 OS에 종속되는 것입니다. 앱 개발을 진행할 때 IOS개발자..
Stack(스택) 중요 개념 : LIFO구조로 가장 나중에 들어간 데이터를 가장 먼저 빼내는 구조. 중요 연산 : pop(), push() 주요 사용 사례 : 웹 브라우저 방문기록(뒤로가기, 앞으로 가기), 실행 취소, 역순 문자열 만들기, 후위 표기법 계산, 재귀알고리즘 장/단점: 데이터저장, 읽기 속도가 빠르다/ 데이터 개수에 영향을 받는다.(스택의 공간) 구현 : 파이썬 – list / 자바 – Stack클래스 or List들 or 배열 파이썬의 경우 재귀함수는 1000번까지만 호출가능 웹 브라우저 방문기록(뒤로가기, 앞으로 가기) prev, next 스택을 가짐 처음 크롬화면으로 들어갔다. 네이버에 들어갔다. 이때 prev에 크롬 첫 화면이 들어간다. 네이버 뉴스에 들어갔다. 이때 prev에 네이..
fork를 해와서 로컬 저장소로 clone을 한후 인텔리제이에서 run을 돌려보았으나 unmappable character (0xEC) for encoding x-windows-949 ~~~~~~~~~~~~~~~~~~ unmappable character (0xEC) for encoding x-windows-949 ~~~~~~~~~~~~~~~~~~ unmappable character (0xEC) for encoding x-windows-949 ~~~~~~~~~~~~~~~~~ 와 같은 오류들이 뜨게 되었다. 접근법 -> encoding오류라서 구글링을 통해 알아보았다 해결방안 인텔리제이의 메뉴 중 Help -> Edit Custom VM Options 로 들어간다. -Dfile.encoding=UTF-8..
오늘 나의 학습 목표는 무엇인가요? - 스레드가 무엇인지 설명하고 상태를 이해해 동기화와 실행, 제어를 해보자 - JVM의 내부 구조를 살펴보자 Thread(쓰레드) [운영체제적 측면] Thread가 나오게 된 배경 1. process를 많이 사용하면 할수록 시스템이 무거워진다 2. process 사용 시 시스템상 성능저하가 생길 수 있다 2번의 원인 1. process 생성시간이 오래걸린다. why? process는 thread가 나오기 전에 code data heap stack영역에 해당하는 것 이외의 것들인 많은 용량을 차지하는 것들을 가지고 있어야했다. 즉, 똑같은 프로그램을 돌리게 되는 경우에도 code를 똑같이 복사해서 각각 가지고 있어야하기 때문이다. 2. Context Switching O..
오늘 나의 학습 목표는 무엇인가요? - Enum의 개념을 이해하고 설명한다. - 애너테이션의 개념을 이해하고 설명하며 사용자 정의 애너테이션을 작성해보자 - 람다식이 무엇이고, 다루는 방법을 이해하고 설명할 수 있다. - 스트림의 특징과 사용 목적을 이해하며 주요메서드를 사용해보자 Enum - 여러 상수들을 보다 편리하게 선언할 수 있도록 만들어진 자바의 문법요소 - 상수명의 중복을 피하고, 타입에 대한 안정성을 보장 ( 상수는 변하지 않는 값이며 final 키워드를 사용하여 선언) // 여러 상수를 정의하기 위한 예전 방식 public static final int SPRING = 1; public static final int SUMMER = 2; public static final int FALL ..
오늘 나의 학습 목표는 무엇인가요? - 제네릭 클래스를 정의하고 활용하며 제네릭 메서드를 정의하고 활용할 수 있다. - 컬렉션 프레임워크의 핵심 인터페이스, 주요 인터페이스와 컬렉션 클래스의 핵심 메서드를 사용할 수 있다. 한가지 의문점 - String이나 참조변수선언시에 해당 참조변수에 주소값을 저장하는데 왜 서로다른 타입값들이 필요한지 의문이었다. 왜냐하면 주소값에 해당하는 것은 최대 크기가 정해져있고 이에 해당하는 것을 저장한다면 모두 일괄적인 크기를 가지면 되지 않나라는 생각에서 이어졌다. String a = new String("asd"); // Generic 사용시 - Collection List list = new LinkedList(); 즉, 위의 a와 list라는 참조변수를 볼때 주소값을..
오늘 나의 학습 목표는 무엇인가요? - 다형성이 가지는 의미와 장점, 참조변수의 타입 변환에 대한 내용을 이해하고, 업캐스팅과 다운캐스팅의 차이를 설명할 수 있다 - 추상화의 핵심 개념과 목적을 이해하며, 추상 클래스의 핵심 개념과 기본 문법을 이해할 수 있다. - final 키워드를 이해하고,추상 클래스와 인터페이스의 차이를 설명할 수 있다. 다형성 - 하나의 객체가 여러 가지 형태를 가질 수 있는 성질 - 자바 프로그래밍에서 다형성은 한 타입의 참조변수를 통해 여러 타입의 객체를 참조할 수 있도록 만든 것을 의미 (상위 클래스 타입의 참조변수를 통해서 하위 클래스의 객체를 참조할 수 있도록 허용한 것) class Friend { public void friendInfo() { System.out.pr..
오늘 나의 학습 목표는 무엇인가요? 상위 클래스-하위 클래스의 상속 관계를 이해하고 extends키워드를 사용해 상속관계를 정의한다. 포함관계와 상속관계의 차이를 설명한다. super와 super의 차이를 설명하고 오버라이딩을 활용해보자 캡슐화를 이해하고 import문이 어떻게 사용되는지 이해해보자 접근제어자 4가지를 알아보고 데이터를 효과적으로 보호하기 위한 수단인 getter/setter메서드를 이해하고 사용해보자 객체 지향 프로그래밍 설계의 핵심적인 것은 상속성, 캡슐화, 다형성, 추상화입니다. 상속 - 기존의 클래스를 재사용해 새로운 클래스를 작성하는 자바의 문법요소 - 코드를 재사용하여 보다 적은 양의 코드로 새로운 클래스를 작성할 수 있어 코드의 중복을 제거하며 다형적 표현이 가능하다 - IS..