일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 막내의막무가내 프로그래밍
- 막내의막무가내 rxjava
- 막내의막무가내 목표 및 회고
- 막내의 막무가내
- Fragment
- 막내의막무가내 알고리즘
- 프로그래머스 알고리즘
- 2022년 6월 일상
- 막내의막무가내 SQL
- 막내의막무가내 안드로이드 코틀린
- flutter network call
- 안드로이드 Sunflower 스터디
- 막내의막무가내 일상
- 막내의막무가내 플러터
- 안드로이드
- 주엽역 생활맥주
- 부스트코스
- 막내의막무가내 플러터 flutter
- 부스트코스에이스
- 막내의 막무가내 알고리즘
- 막내의막무가내 안드로이드 에러 해결
- 프래그먼트
- 안드로이드 sunflower
- 막내의막무가내 안드로이드
- 주택가 잠실새내
- 막내의막무가내 코틀린 안드로이드
- 막무가내
- 막내의막무가내
- 막내의막무가내 코볼 COBOL
- 막내의막무가내 코틀린
- Today
- Total
목록분류 전체보기 (695)
막내의 막무가내 프로그래밍 & 일상
제가느끼기에 좀 어려웠거나 기억에 잊혀진 질문을 많이하셨는데 기억이 날때 추후 도움이 되도록 기록해보겠습니다. (필기 형식으로 남기는거라 딱딱 + 반말 어투 죄송합니다 ㅠ) Q. 자기소개해바라 3번 더듬은듯, 호흡딸림 Q. 플젝에 주로 쓴 레이아웃 LinearLayout, ContraintLayout, FrameLayout 특징 설명해바라 -> 리니어레이아웃은 계층적으로 쌓아내려가는 레이아웃이라했고 컨스트레인트는 제약이나 체인줄 수 있는 뷰, 뷰와 뷰 상대적 거리 및 위치로 배치하는 레이아웃, 릴레이티브레이아웃 발전시킨 형태 프레임레이아웃은 겹치는 뷰들 처리할 수 있고 프레그먼트랑 액자에 사진끼우는걸로 예시 Q. weight 써본적있냐? -> dp하고 차이 말하면서 화면 크기에서 비율로 크기 정하고싶을떄..
최근 디자이너분과 공모전 협업중에 있습니다. 안드로이드에 해상도별로 이미지를 넣고 해당 이미지들을 묶어서 한번에 이름을 변경하거나 해상도 이미지 폴더의 이름을 변경하려했는데 할 수가 없었습니다. (밑그림 참고 rename이 없는...) 해결방법은 제플린에서 제가 Name을 고쳐서 다운받도록 하였습니다. 그 후 다시 리소스매니저에서 임포트하러..
[2021-04-07 업데이트] 매번 공지사항 들어가서 보기 귀찮아서 공지사항 앱을 1차로 만들어봤습니다. 추후 시간이 될때 클릭시 웹이 아닌 앱내에서 웹뷰로 띄워주거나 커뮤니티 기능도 추가해볼까 합니다. -> 업데이트 완료! MVVM 아키텍처를 적용 및 학습을 위해 대학교 공지사항 토이프로젝트를 만들어봤었는데 그것에 대해 복습 및 정리 해볼려고 합니다. API 를 사용한 것이 아니라 Jsoup 을 통해 크롤링하여 데이터를 가져온 것이기 때문에 레트로핏은 사용하지 않았습니다. 저도 배워가는 입장이라 수정이 필요한 부분을 지적해주시면 감사하겠습니다. 그래서 전체적인 프로젝트 구조는 다음과 같습니다. MVVM 의 장점과 단점은 다음과 같습니다. 장점: 뷰와 모델간의 의존성이 없고 MVP 패턴처럼 V-VM이 ..
https://programmers.co.kr/learn/courses/30/lessons/42884?language=java 코딩테스트 연습 - 단속카메라 [[-20,15], [-14,-5], [-18,-13], [-5,-3]] 2 programmers.co.kr 프로그래머스 LEVEL3 의 단속카메라 문제를 풀어봤습니다. ㅎㅎ 풀이 방법은 다음과 같습니다. 1. 종착지점을 기준으로 오름차순 정렬합니다. 2. 반복문을 통해 routes를 갖고옵니다. 3. 카메라 설치 지점과 현재 route의 진입 지점과 비교하여 카메라 설치 지점에 커버되는 곳이면 PASS 아닌 경우는 카메라 설치 지점을 현재 route 의 종착 지점으로 변경해주고 카메라 설치 개수가 한개 늘어납니다. 풀이는 다음과 같습니다. [Jav..
https://programmers.co.kr/learn/courses/30/lessons/43164#qna 코딩테스트 연습 - 여행경로 [[ICN, SFO], [ICN, ATL], [SFO, ATL], [ATL, ICN], [ATL,SFO]] [ICN, ATL, ICN, SFO, ATL, SFO] programmers.co.kr 프로그래머스 LEVEL3의 여행경로 문제를 풀어봤습니다.ㅎㅎ 이전 문제와 마찬가지로 탐색문제인데요. 이전 문제가 BFS 여서 그랬는지 BFS로도 풀 수 있겠다 싶어 처음에 BFS 로 접근했습니다. 솔직히 풀면서 너무 더러워져서 DFS 가 낫겟다 싶었는데 이왕 시작한거 끝을 볼려고 계속 풀었습니다...;; 코드는 다음과 같았는데요. 하지만 주어진 테스트케이스는 다 맞는데 제출시 ..
https://programmers.co.kr/learn/courses/30/lessons/43163 코딩테스트 연습 - 단어 변환 두 개의 단어 begin, target과 단어의 집합 words가 있습니다. 아래와 같은 규칙을 이용하여 begin에서 target으로 변환하는 가장 짧은 변환 과정을 찾으려고 합니다. 1. 한 번에 한 개의 알파벳만 바꿀 수 programmers.co.kr 프로그래머스 LEVEL3 단어 변환 문제를 풀어봤습니다. bfs 를 사용해서 풀이했습니다. 한 단어는 한 글자만 변경이 가능한 경우 변경할 수 변환할 수 있습니다. (탐색 조건) 1. 큐에 시작 단어를 넣습니다. 2. 단어들을(words) 불러오고 이미 사용한 단어가 아닌 경우 현재 단어와 한글자씩 비교하고 변환이 가능..
https://github.com/mtjin/algorithm_practice/tree/master/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4%20%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%20-bfs%2Cdfs- https://programmers.co.kr/learn/courses/30/lessons/43162?language=kotlin 코딩테스트 연습 - 네트워크 네트워크란 컴퓨터 상호 간에 정보를 교환할 수 있도록 연결된 형태를 의미합니다. 예를 들어, 컴퓨터 A와 컴퓨터 B가 직접적으로 연결되어있고, 컴퓨터 B와 컴퓨터 C가 직접적으로 연결되어 있�� programmers.co.kr BFS 를 사용하여 처음 연결된 ..
보호되어 있는 글입니다.
가볍고 쉽게 읽고 이해할 수 있는 디자인패턴 설명 예시 사이트를 정리하는 포스팅입니다. 궁금할 때 볼 사이트 정리를 위해 포스팅합니다. 1. 빌더 패턴 ( Builder Pattern) 빌더 패턴(Builder pattern)이란 복합 객체의 생성 과정과 표현 방법을 분리하여 동일한 생성 절차에서 서로 다른 표현 결과를 만들 수 있게 하는 패턴이다. [위키디피아 참고] [간단요약] 빌더 -> 생성자매개변수에 해당하는 값 set 받음 -> 빌드 (객체[생성자] 반환) ex) 객체 생성 시 너무 많은 매개변수가 있으면 순서도 햇갈리고 데이터가 없는 경우는 null 로 넘겨주고 아무토록 코드 유지보수 및 가독성이 안좋습니다. (순서 실수하기도 쉽고) (코드 유지보수의 예로는 매개변수 하나만 늘어도 코드를 바꿀..
데이터베이스의 특정 아이디값이 아니라 넣어져있는 순서 즉 행 순서대로나 역순대로 가져오고 싶을 때가 있습니다. 저도 ROOM 이라는 안드로이드 데이터베이스에 그냥 넣어져 있는 순서의 역순으로 가져오고 싶었는데 다음과 같은 해결방안을 봤고 처음 보는거라 포스팅합니다. SELECT * FROM favorite ORDER BY 1 ASC 이런식으로 1(첫번쨰 컬럼을 의미합니다) 로 하고 ORDER BY 로 해주면 됩니다. !! 시간 데이터나 자동증가 id 로 했다면 이 컬럼명을 기준으로 ORDER BY 를 해주면 되지만 아닌 경우는 이렇게 불러올 수 있었습니다 @Query("SELECT * FROM favorite ORDER BY 1 ASC") fun getNotices(): Single 댓글과 공감은 큰 힘..
[2021-04-13 업데이트] 위와 같은 프래그먼트 위에 띄워줄 다이얼로그 프래그먼트를 직접 만들어봤습니다. 자바로는 만든적이 꽤 많은데 코틀린으로는 처음이여서 간단하게 기록하는 포스팅을 해볼까 합니다. 자바했던것을 기반으로 구현한거라 최상의 방법은 아닐 수 있습니다. (구글링해보니 코틀린 다이얼로그 프래그먼트 한국 자료는 거의 안보이더라고요) 코드를 보면 이해가 가실겁니다!! 먼저 다이얼로그 프래그먼트 xml 입니다. 다이얼로그 프래그먼트 입니다. (Dialog Fragment) getInstance() 통해 다이얼로그를 액비티이 또는 프래그먼트에서 다이얼로그 프래그먼트 인스턴스를 가져옵니다. EXTRA_NOTICE_SAVE 는 원하는 태그 값을 넣어주면 됩니다. ( 추가로 번들에 전달된 값을 통해 ..
[2021-04-13 업데이트] 맨 밑 추가 업데이트 내용을 참고해주세요 :) Business의 스펠링이 틀려 Refactor 로 클래스 이름 오타를 수정했었습니다. 그런데 프래그먼트가 제대로 안뜨는 현상이 발생하였습니다. 이유는 bottom_nav_graph 의 android:name 이름은 그대로였기 때문 입니다. Refcator 가 이부분까지 변경해주지는 않나봅니다. 그래서 수동으로 바꿔줬습니다. 원인 찾는데 시간좀 걸렸네요;; 아니면 제 단순 실수일 수 도 있습니다. 업데이트 [2020-06-21] 다 Refactor 됩니다. 그러나 데이터바인딩 클래스이름은 안바뀝니다. 그래서 해당 데이터바인딩 클래스 이름은 직접바꿔줬습니다. 댓글과 공감은 큰 힘이 됩니다. 감사합니다!!
[2021-04-13 업데이트] 맨 밑 마지막 내용을 참고해주세요 :) 제목 그대로 빌드시 나는 에러입니다. 4시간째 삽질중인데 도저히 안고쳐집니다. 구글링하고 모든 방법을 다해봤지만 안됩니다. 뭐 때문에 나는지도 모르겠고요. stacktrace 에러를 다 보고 구글링했는데 딱히 해결법이 안나오는중.. 일단 기록으로 남깁니다. 도저히 해결이 안돼서 친구보고온 담에 다시 정신차리고 봤더니 @BindingAdapter("setItems") fun RecyclerView.setAdapterItems(items: List?) { with((adapter as BachelorAdapter)) { this.clear() items?.let { this.addItems(it) } } } [수정] @BindingAda..
https://programmers.co.kr/learn/courses/30/lessons/12913?language=java 코딩테스트 연습 - 땅따먹기 땅따먹기 게임을 하려고 합니다. 땅따먹기 게임의 땅(land)은 총 N행 4열로 이루어져 있고, 모든 칸에는 점수가 쓰여 있습니다. 1행부터 땅을 밟으며 한 행씩 내려올 때, 각 행의 4칸 중 한 칸만 밟�� programmers.co.kr 프로그래멋 LEVEL2의 땅따먹기 문제를 풀어봤습니다 ㅎㅎ dp 로 바로 접근하고 복잡한 문제가 아니라 빠르게 풀 수 있었습니다. 풀이는 다음과 같습니다. [Java] class Solution { int solution(int[][] land) { int answer = 0; for (int i = 1; i < ..
class BachelorNoticeRemoteDataSourceImpl : BachelorNoticeRemoteDataSource { override fun requestNotice(): Single { return Single.fromObservable( Observable.create { val bachNoticeList: ArrayList = ArrayList() val doc: Document = Jsoup.connect("https://computer.cnu.ac.kr/computer/notice/bachelor.do") .get() // Base Url val contentElements: Elements = doc.select("div[class=b-title-box]").select("a..