목록전체 글 (60)
yeon's blog
Firebase 세팅 및 Authentication 이용 방법은 작성했던 글을 참고 해주세요! ➡️ https://hyeyeon-ii.tistory.com/46 1. Firebase 회원가입 구현 JoinActivity 전체코드 package com.example.mysololife.auth import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.widget.Toast import androidx.databinding.DataBindingUtil import com.example.mysololife.MainActivity import com.examp..
Kotlin을 이용한 Android Community App 개발 시작! 1. Splash 화면 구현 Splash 화면은 보통 앱의 로고를 띄우고 2초 정도 후에 메인화면으로 넘어간다. (카카오톡 참고) activity_splash.xml 전체코드 위에 말했듯이 2초 정도 후에 Intro 화면으로 넘어갈 수 있도록 구현해주었다. SplashActivity 전체코드 package com.example.mysololife import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.os.Handler import com.example.mysololife.aut..
3. DB에 데이터 삽입 기능 구현 Realtime Database를 이용하기 위해 게시판 기능을 구현해 볼 것이다. 먼저, BoardList 화면과 BoardWrite 화면 생성! List 화면에는 '글쓰기' 버튼을 만들어준다. activity_board_list.xml 전체코드 글쓰기 버튼을 누르면 BoardWriteActivity로 이동할 수 있도록 코드를 작성해준다. Main 화면에서 로그인 버튼을 눌렀을 때 BoardListActivity로 이동하는 코드도 똑같은 방법으로 작성해주면 된다. (코드 생략) BoardListActivity 전체코드 package com.example.mysampleapp import android.content.Intent import androidx.appcomp..
예제 앱을 개발해 보면서 Firebase 동작 방식을 이해해보겠다! 먼저 Android Studio를 실행하여 새로운 프로젝트를 생성한다. Empty View Acticity 테블릿을 통해 구현해 볼 예정이다. Next 버튼을 누른 후 Project Name을 입력하고 생성해주면 된다. 바로 Firebase를 이용하기 위해 Android 프로젝트에 Firebase를 추가해줄 것이다. 추가 과정은 생략! 사이트 참고 → https://firebase.google.com/docs/android/setup 1. 회원가입 기능 구현 기능을 구현하기 전에 먼저 레이아웃을 구현해준다. activity_main.xml 전체코드 *기능 구현이 목적이므로 레이아웃은 형태만 만들고 디자인은 따로 하지 않겠다..ㅎㅎ 다음으..
Kotlin을 이용해 [안드로이드 커뮤니티 앱]을 개발하기에 앞서, Firebase에 대해 알아보려고 한다. 본 내용은 Firebase 공식 문서를 참조하여 작성하였습니다. 🔥 Firebase란? Firebase는 구글에서 개발한 클라우드 기반의 백엔드 서비스를 제공하는 모바일 및 웹 애플리케이션 개발 플랫폼이다. Firebase는 데이터베이스, 인증, 스토리지, 호스팅, 애널리틱스 등의 다양한 기능을 제공하며, Realtime Database와 Cloud Firestore, Authentication, Cloud Storage, Hosting, Cloud Messaging 등의 기능을 포함한다. Firebase는 다양한 프로그래밍 언어와 플랫폼을 지원하며, 개발자들은 빠르게 애플리케이션을 개발하고 배포..
본 내용은 인프런 사이트에서 김영한 선생님의 "스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술" 강의 내용을 정리한 것입니다. 🌱 HTML, HTTP API, CSR, SSR 💡 정적 리소스 (Static Resource) 정적 리소스 파일을 제공하는 경우, 주로 고정된 HTML 파일, CSS, JS, 이미지, 영상 등을 웹 브라우저에 제공한다. 💡 HTML 페이지 주문 내역 페이지처럼 동적인 HTML 페이지를 요청하는 경우, WAS(애플리케이션 로직을 수행하는 서버)가 DB를 통해 주문 정보를 조회한 후 동적으로 HTML 파일을 생성(주문 정보들 포함)해 웹 브라우저에 제공한다. 웹 브라우저는 받은 HTML을 해석해 클라이언트에게 화면을 띄워준다. 💡 HTML API 위의 경우처럼 HTML 파일을 생..
본 내용은 인프런 사이트에서 김영한 선생님의 "스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술" 강의 내용을 정리한 것입니다. 🌱 동시 요청 - 멀티 쓰레드 💡 쓰레드 #쓰레드: 애플리케이션 코드를 하나하나 순차적으로 실행하는 작은 작업 단위로, 서블릿 객체를 호출해 줌! ex. 자바 main 메서드를 처음 실행하면 main이라는 이름의 쓰레드가 실행되며, 쓰레드는 한번에 하나의 코드 라인만 수행한다. 만약 쓰레드가 없다면 자바 애플리케이션은 실행이 불가능하다. → 동시 처리가 필요한 경우 쓰레드를 추가로 생성해야 한다. 1. 단일 요청 쓰레드 하나 사용 요청이 들어옴 → 쓰레드를 하나 할당함 → 쓰레드를 가지고 servlet을 호출해 코드를 실행함 → 응답까지 보낸 후 휴식 2. 다중 요청 쓰레드 하..
본 내용은 인프런 사이트에서 김영한 선생님의 "스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술" 강의 내용을 정리한 것입니다. 🌱 서블릿 💡 서블릿(Servlet) 이란? 클라이언트의 요청을 처리하고, 그 결과를 반환하는 Servlet 클래스의 구현 규칙을 지킨 자바 웹 프로그래밍 기술 ex. 사용자가 아이디와 비밀번호를 입력하고 로그인 버튼을 눌렀을 때, 서버가 아이디와 비밀번호를 확인한 후 다음 페이지를 띄워 줘야 한다. 이러한 역할을 수행하는 것이 바로 서블릿(Servlet)이다!! 💡 HTML Form 데이터 전송 (POST 전송) 클라이언트가 웹 페이지에서 username, age를 입력하고 전송 버튼을 누르면, 위와 같이 웹 브라우저가 요청 HTTP 메시지를 생성해 서버로 전송한다. WAS를..
본 내용은 인프런 사이트에서 김영한 선생님의 "스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술" 강의 내용을 정리한 것입니다. 🌱 웹 서버, 웹 애플리케이션 서버 💡 웹 - HTTP 기반 웹 브라우저(클라이언트)에서 URL을 입력하면 인터넷을 통해 서버에 접근하고, 서버에서는 HTML을 만들어 클라이언트에게 전달해 우리에게 화면을 띄워준다. 이러한 과정은 전부 HTTP 프로토콜을 기반으로 동작하게 된다. 💡 모든 것이 HTTP HTTP 메세지에 모든 것(거의 모든 형태)을 전송할 수 있다. HTML, TEXT IMAGE, 음성, 영상, 파일 JSON, XML (API) 서버간에 데이터를 주고 받을 때도 대부분 HTTP 사용 💡 웹 서버 (Web Server) HTTP 기반으로 동작하는 서버이고, 정적 ..
🌱 캐시의 기본 동작 캐시가 없을 때 데이터가 변경되지 않아도 계속 네트워크를 통해서 데이터를 다운로드 받아야 한다. 인터넷 네트워크는 매우 느리고 비싸다. 브라우저의 로딩 속도가 느리다. 이로 인해 느린 사용자 경험이 발생한다. 캐시 적용 cache-control header를 작성해 일정 시간동안 캐시에 유지할 수 있다. 이렇게 캐시를 적용하게 되면, 일정 시간 동안 같은 요청을 보낼 때, 네트워크를 통해서 결과를 받아오지 않고 브라우저 캐시에 접속해서 결과를 받아오기 때문에 이 과정에서 시간이 크게 단축된다. 캐시 덕분에 캐시 가능 시간동안 네트워크를 사용하지 않아도 된다. 비싼 네트워크 사용량을 줄일 수 있다. 브라우저 로딩 속도가 매우 빠르다. 빠른 사용자 경험을 만들어준다. 웹 브라우저 이용시..