1일차 OS(운영체제)란 무엇인가요?운영체제란 사용자가 컴퓨터를 사용하기 위해 필요한 소프트웨어로하드웨어와 응용 프로그램 간의 상호작용을 관리하고 제어하는 역할을 합니다. 운영체제는 사용자와 하드웨어 사이에서 인터페이스를 제공하고,시스템 자원을 효율적으로 관리하여 응용 프로그램이 원활하게 동작하도록 합니다. Android 4대 컴포넌트는 무엇인가요?Activity, Service, BroadCast Receiver, Content Provider입니다. 2일차 커널이란 무엇인가요?운영체제의 코어에 해당하며 컴퓨터 자원들을 관리하는 역할을 수행하는 곳입니다.커널은 컴퓨터 자원들만을 바라보고 있기에 사용자와 직접적인 상호작용은 하지 않습니다. Activity 생명주기는 어떻게 구성되어 있나요?액티비티 ..
Android 내배캠 후기 캠프 이전의 삶 소프트웨어마이스터고 졸업하고 취업준비를 하게 되었는데 그 과정에서 부트캠프를 추천받았고 앱 개발이 하고 싶어관련 부트 캠프를 찾아다니다 이 캠프를 발견하게 되었다. 내일배움캠프를 선택한 계기짧은 기간 내에 수료할 수 있고, 학습과 취업에 관해서 여러가지로지원을 받을 수 있겠다 싶어서 해당 캠프를 선택하게 되었다. 내일배움캠프의 장점첫번째로는 해당 캠프는 전부 온라인으로 진행된다는 점이다.요새 버스비 올라서 교통비가 참 부담스러운데 매일같이 왔다갔다 할 필요없이캠프 들으려면 집에서 컴퓨터만 키면 되니까 아주 편하다. 두번째로는 정말 많은 강의자료를 제공해준다는 점이다.진행한 특강은 녹화본을 노션에 따로 올려주기 때문에 행여나 특강을 놓치거나 따라가지 못하더라도..
앱개발 심화 과제 선택 과제 구현 구현사항- 공통 - MainActivity의 하단 메뉴를 Bottom Navigation 또는 ViewPager+tablayout으로 변경 - MVVM 패턴을 적용합니다. (ViewModel, LiveData) - 검색 결과 화면은 보관함을 다녀와도 유지됩니다. - 보관한 이미지 리스트는 앱 재시작 후 다시 보여야 합니다. - 첫 번째 fragment : 검색 결과 - 검색은 키워드 하나에 이미지 검색과 동영상 검색을 동시에 사용, 두 검색 결과를 합친 리스트를 사용합니다. - 두 검색 결과를 datetime 필드를 이용해 정렬하여 출력합니다. (최신부터 나타나도록) - 검색 결과 아이템에 [이미지] 또는 [동영상]를 표시합니다..
앱개발 심화 과제 필수 과제 구현 구현 사항// 이미지 검색 Fragment- 검색어를 입력할 수 있도록 검색창을 구현합니다.- 검색어를 입력하고 검색 버튼을 누르면 검색된 이미지 리스트를 보여줍니다.- 검색 버튼을 누르면 키보드는 숨김 처리하도록 구현합니다.- API 검색 결과에서 thumbnail_url, display_sitename, datetime을 받아오도록 구현 합니다.- RecyclerView의 각 아이템 레이아웃을 썸네일 이미지, 사이트이름, 날짜 시간 으로 구현 합니다.- API 검색 결과를 RecyclerView에 표시하도록 구현합니다.- 날짜 시간은 "yyyy-MM-dd HH:mm:ss" 포멧으로 노출되도록 구현합니다.- 검색 결과는 최대 80개까지만 표시하도록 구현합니다.- 리스트..
앱개발 심화 1주차 정리 - 4 안드로이드 디버깅 Log 찍어보기- Log.v(String tag, String msg): Verbose - 매우 낮은 우선순위의 로그 메시지에 사용됩니다.- Log.d(String tag, String msg): Debug - 디버깅 목적으로 사용됩니다.- Log.i(String tag, String msg): Info - 일반적인 정보를 나타내기 위해 사용됩니다.- Log.w(String tag, String msg): Warn - 경고나 예상치 못한 상황을 나타낼 때 사용됩니다.- Log.e(String tag, String msg): Error - 심각한 오류를 보고할 때 사용됩니다.- Log.wtf(String tag, String msg): What a Terr..
챌린지반 7주차 세션 정리 의존성 주입의 개념 해당 자동차 클래스는 엔진이라는 인스턴스를 자동차 내에서 생성한다.여기서 좀 더 유연한 클래스를 작성하고 싶다면 바깥에서 엔진을 주입하도록 해야된다. 해당 클래스는 엔진 인스턴스를 외부에서 주입받도록 설계되었다.이를 의존성 주입(DI - Dependency Injection)이라고 한다. 자동차 클래스의 엔진은 생성자를 통해 인스턴스로 주입받기에 자동차의 엔진은클래스 외부에서 수정이 가능하게 되며 이로 클래스의 모듈화가 쉬워지게 된다. 의존성 주입의 문제점각 클래스들이 서로 이런식으로 의존하도록 설계되어있을 때 뷰모델 인스턴스를 하나 생성하려면 관련된 모든 클래스의 인스턴스를생성해야하기에 코드의 간결성이 심하게 저해되는 문제점이 존재한다. 의존성 주입..
Compose 특강 3회차 정리 Recompostion Compose의 UI 업데이트@Composablefun ClickCounter(clicks: Int, onClick: () -> Unit) { Button(onClick = onClick) { Text("I've been clicked $clicks times") }}명령형 UI는 코드 내부에 위치한 setter를 호출하여 위젯을 변경하지만 선언형 UI는 데이터 변경을 감지할 때 Composable 함수를 재호출하여 UI를 다시 그린다. Recomposition이란 Compose에서 UI가 변경될 때 다시 그려지는 과정을 뜻한다. State 상호작용방식 Compose에선 screen과 content가 서로 state와 eve..
앱개발 심화 1주차 정리 - 3 서버/클라이언트 개념 서버와 클라이언트 서버는 데이터나 리소스를 제공하는 시스템으로클라이언트의 요청을 처리해 그에 맞는 응답을 반환한다. 클라이언트는 사용자를 대표해 서버에 요청을 보내며그에 대한 응답을 받는 장치 및 프로그램에 해당한다. 3 - Tier 아키텍쳐 서버는 클라이언트에게 요청을 받으면 요청사항에 맞는 데이터를 데이터베이스에서 꺼내어 클라이언트에게 전달한다. 프로토콜 위 이미지에선 클라이언트의 요청을 서버가 알아듣지 못하고 있다.이러한 상황을 방지하기 위해 지켜야하는 통신 규약을 프로토콜이라고 한다. HTTP 클라이언트와 서버는 HTTP 라는 프로토콜을 이용해서 서로 통신한다.여기서 HTTP를 이용해 주고받는 메시지는 "HTTP 메시지" 라고 부른다. ..