전체 글104 코틀린(Kotlin) 문법 뽀개기 - 1. Hello Kotlin! 코틀린으로 안드로이드 개발을 한지도 꽤 지났다. 어느정도 익숙하긴 하지만.. 코틀린 자체의 문법을 공부 할 필요성을 조금 느꼈다. 얼마 전 코틀린으로 코딩 테스트에 참가했는데, 파이썬으로 하는 것이 익숙하기도 하고 안드로이드 스튜디오 위에서만 코틀린을 사용하다 보니 순탄하지 않았다. 이런 이유도 그렇고 코틀린 자체의 문법도 모르는 부분이 많아서 정리하려고 한다. 역시 프로그래밍 언어 공부의 시작은 Hello World부터 찍는것이지. 1. IDE 설치 https://www.jetbrains.com/idea/download/#section=windows Download IntelliJ IDEA: The Java IDE for Professional Developers by JetBrains Download.. 2020. 6. 9. [Android] Fragment로 Activity 구성 및 통신 - 3 이전 포스팅에서 Interface를 활용하여 Activity와 Fragment의 통신을 구현 해 보았다. 이번 포스팅은 예고했던 대로 EventBus와 ViewModel을 활용하는 방법을 소개 할 것이다. EventBus -> ViewModel 순으로 소개한다. - EventBus 라이브러리 EventBus라이브러리는 아래 두 가지가 있다. 1. Square사의 Otto (https://github.com/square/otto) 2. greenrobot의 EventBus (https://github.com/greenrobot/EventBus) 이 예제에서는 2번의 greenrobot의 EventBus를 사용한다. Github 링크를 통해 라이브러리에 대해 알아보는 것을 추천한다. - EventBus란? .. 2020. 5. 24. [Android] Fragment로 Activity 구성 및 통신 - 2 저번 포스팅에 이어, Activity에 세 개의 Fragment를 띄울 것이다. 컨셉은 간단한 펫샵으로 해 보겠다. 각 Fragment는 버튼을 가지고 있고 그 버튼을 누르면 Fragment에 해당하는 애완동물이 판매되었음을 액티비티에 알린다. 그리고 액티비티는 각 애완동물이 판매된 수를 텍스트뷰로 보여주도록 하겠다. - activity_main.xml 수정 TextView 1개, FrameLayout 3개로 구성하였다. 펫은 강아지, 고양이, 토끼 로 구분하였다. 제약조건은 본인의 취향에 따라 수정하도록 한다. 이 포스팅은 서로 연결되도록 하였고 "layout_constraintVertical_chainStyle="spread" 를 사용하였다. ConstraintLayout의 제약조건에 대해서는 깊게 .. 2020. 5. 23. [Android] Fragment로 Activity 구성 및 통신 - 1 이번 포스팅 주제는 Activity를 분할하여 구성할 수 있는 Fragment에 대한 것이다. 보통 Activity를 구현하면 하나의 레이아웃 파일에 화면을 구성한다. 만약 화면이 다른 구성으로 동적으로 변화해야 한다거나 구성이 다양하다거나 하는 경우 복잡한 레이아웃을 가질 수 있다. 이런 경우 Fragment로 화면을 분할하여 구성하여 복잡도를 낮추면서 다른 Activity에서 재활용까지 할 수 있다. 이번 주제에서는 프래그먼트 세 개를 교체하는 액티비티를 구현 해 보겠다. - activity_main.xml 작성 ConstraintLayout을 활용하여 Activity의 상단에 세 개의 버튼을 나란히 두고 그 아래에 Fragment를 담을 컨테이너로 FrameLayout을 두었다. 복잡한 것은 없으니.. 2020. 5. 11. [프로그래머스] 코딩테스트 고득점 Kit > 쇠막대기 # 문제 # 문제 접근 문제만 봤을 때 굉장히 복잡할 것 같다고 느낀 문제였다. 우선 괄호로 이루어진 입력이 보기가 쉽지 않았다. 중요한 것은 "()" 모양으로 된 것은 레이저 라는 것이다. 그래서 ()를 레이저(R)로 표시한 후 생각하였다. 예시의 입력은 R(((RR)(R)R))(R) 로 바뀌게 된다. 막대기가 하나 완성이 되기 위해선 "(" 과 ")" 가 필요하다. 괄호 쌍을 맞추는 알고리즘 문제를 풀어 본 적이 있는가? 이와 유사하다. 스택에 "("를 만나면 쌓고, ")"를 만나면 스택으로 부터 pop 하여 쌍을 맞추게 되는 것이다. 그럼 R을 만났을 땐 어떻게 할 것인가? "("가 스택에 쌓였다는 것은 막대기가 하나 생성되었다는 것을 의미한다. "("가 N개 스택에 쌓였다는 것은 막대기가 N개 생.. 2020. 3. 18. [프로그래머스] 코딩테스트 고득점 Kit > 주식가격 # 문제 # 문제 접근 가격이 떨어지지 않았다는 것은 배열의 한 시점을 기준으로 뒤로 갈 수록 현재 시점보다 가격이 낮은 순간이 있는지를 판단하면 된다. 주의할 부분은, 3초 시점의 3은 바로 다음의 4초에 2로 떨어졌으나, 1초 간 가격이 유지 된 것으로 판단하여 떨어지지 않은 것으로 본다는 것이다. 바로 다음 시점에 가격이 떨어져도 1초간 가격은 유지가 된 것이다. # 문제 풀이 1. 배열의 처음부터 끝까지 루프를 돌린다. (i) 2. 현재 배열의 위치부터 다음 위치까지 루프를 돌린다. (j) 3. 인덱스 j가 증가하면 현재 시점의 카운트를 1 늘린다.(위에서 주의했듯이 바로 다음 순간에 떨어져도 1초간 가격이 유지 된 것이기 때문.) 4. 배열의 i 인덱스의 값이 배열의 j 인덱스 값보다 크면 시점.. 2020. 3. 18. 이전 1 ··· 12 13 14 15 16 17 18 다음 반응형