자바
![자바 컬렉션 프레임워크(Java Collection Framework) 중 리스트(List) 정리](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2Fdv7n0G%2Fbtrzi2cHrvk%2FoSkQ2UV5G67HrNRYKlgPok%2Fimg.png)
자바 컬렉션 프레임워크(Java Collection Framework) 중 리스트(List) 정리
오늘은 자바 Collection Framework 에 대해서 정리해보려고 한다. 이것 외에도 정리할 것이 산더미 같은데 일단 우선순위가 높은 것부터 시간 날 때마다 적어두어야지... Collection Framework 전체를 살펴보면 위 그림과 같다. 그림에 있는 것들 중 빨간 색으로 칠한 List를 먼저 알아보자. 컬렉션 프레임워크란 ? 자바에서 데이터를 저장하고 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것 즉, 사용자들이 이용하기 쉽게 정리해놓은 라이브러리라고 할 수 있다. 컬렉션 프레임워크의 인터페이스 간의 상속관계는 최상단의 그림과 같다고 볼 수 있다. 그중 가장 큰 줄기인 Collection에 속해있는 List, Set 그리고 Map이 무엇인지 어떤 것들이 있는지 알아보자. Coll..
![안드로이드 헤드업 알림 구현하기](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FCrieC%2Fbtryk1L9AlB%2F1MKylHLIpAfWivUzDEOtXk%2Fimg.png)
안드로이드 헤드업 알림 구현하기
오늘은 안드로이드 스튜디오를 이용해서 안드로이드 헤드업 알림을 구현하는 방법에 대해 알아보고자 한다. 여기서 말하는 헤드업 알림이란 아래와 같이 상단에 간단한 정보와 함께 표현되는 알림을 의미한다. 구현은 아래 공식문서를 보며 참고하였다. 알림 개요 | Android 개발자 | Android Developers 알림 개요 알림은 사용자에게 미리 알림을 주고 다른 사람과의 소통을 가능하게 하며 앱에서 보내는 기타 정보를 적시에 제공하기 위해 Android가 앱의 UI 외부에 표시하는 메시지입니다. 사용자 developer.android.com 1. 프로젝트 생성 프로젝트는 Empty Activity로 기본 설정으로 생성하였다. 2. activity_main 수정 버튼을 클릭하면 알림이 울릴 수 있게 act..
![[JAVA] 객체 지향 프로그래밍(Object Oriented Programing)](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FXbKrh%2FbtrqptX21iF%2FK817vtsquGP6LM53LQVMJk%2Fimg.png)
[JAVA] 객체 지향 프로그래밍(Object Oriented Programing)
생각해보니 자바의 장단점 이후에 객체 지향 프로그래밍에 대해 한 번 정리하려고 했었는데, 당장 궁금한 것들이 너무 많아서 우선순위에서 밀려있었었다. 그래서 생각난 김에 간단하게 정리를 해보려고 한다. JAVA is A P. I. E 수업 때 위와 같이 외우면 잘 외워진다고 해서 메모해둔 '자바는 파이이다 !' 이다. APIE가 객체지향 프로그래밍의 대표적인 개념들이다. Abstraction (추상화) 객체들의 공통된 특성을 파악하여 정의해두는 것 예를 들어 자동차의 경우 기본적으로 움직이고 멈추는 것은 공통적인 특성이라고 할 수 있다. 하지만 세부적으로는 어떤 방식으로 움직이는지 멈추는지는 각 회사의 차량마다 다를 것이다. 그래서 공통된 특성을 일단 추상화해서 정의해두는 것을 의미한다고 생각하면 된다. ..
[JAVA] 백준 17141 : 연구소 2
문제 17141번: 연구소 2 인체에 치명적인 바이러스를 연구하던 연구소에 승원이가 침입했고, 바이러스를 유출하려고 한다. 승원이는 연구소의 특정 위치에 바이러스 M개를 놓을 것이고, 승원이의 신호와 동시에 바이 www.acmicpc.net 해결방법 오랜만에 BFS 탐색 문제이다. 이 문제의 경우 연구소에 특정 위치에 바이러스를 놓아서 연구소 전체를 바이러스에 감염시키려는 승원이의 계획을 도와주는 문제이다. 문제에서 맵에 2로 표시된 구역이 바이러스를 놓을 수 있는 공간인데, 그 공간 중 M만큼 바이러스를 놓았을 때 연구소 전체를 감염시킬 수 있는 가장 빠른 시간을 구해야 한다. 즉, 모든 경우의 수를 탐색해야 하는 완전 탐색 문제라고도 할 수 있다. 조합을 찾을 때는 비트 마스킹을 사용해서 방문 처리를..
![JAVA의 장점과 단점](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FpBz6q%2FbtroTl8YjfE%2FRsACswMEFkIRNJrw9ko4uK%2Fimg.png)
JAVA의 장점과 단점
자바가 무엇인지 알아보았으니, 이번엔 자바의 장점과 단점이 무엇인지 알아보기로 하자. 장점 플랫폼 독립성 - 하드웨어 또는 운영체제와 같은 플랫폼에 독립적으로 실행 가능한 특성 - 자바는 Java Virtual Machine(JVM)을 기반으로 동작하기 때문에 자바로 만든 프로그램은 어떤 환경에서도 완벽히 똑같이 동작한다. 개발자가 많다 - 이게 무슨 장점이냐 할 수 있겠지만, 나온지 오래된 언어인 만큼 개발자 커뮤니티가 활성화되어 있어 정보 습득에 유리하다. 객체 지향 언어 - 신뢰성 있는 소프트웨어를 손쉽게 작성 가능하다. - 코드 재사용이 유리하다. - 객체지향 패러다임의 특성상 비교적 이해하고 배우기 쉽다. 오픈 소스 - 이용자들에 의해 기존 문제가 해결되고 발전하며 운영되기 때문에 발전 속도가 ..