Mini Project

iOS. 로그인 & 회원가입 페이지 구현

https://github.com/Hyeongyu-IM/SideProject/tree/main/loginpage

 

Hyeongyu-IM/SideProject

Contribute to Hyeongyu-IM/SideProject development by creating an account on GitHub.

github.com

페이지 구현계획

  • 일상 생활에서 경험했던 로그인 액션을 구현하려고 했습니다. 
    • 비밀번호를 치는 상황에 안맞으면 색이 빨간색 
    • 회원가입 페이지 유저 중복 검사
    • 로그인 알람

페이지 코드 계획

  • 초기에는 거창하게 MVVM! 하면서 시작했지만 뒤로갈수록 기능과 표현에 중점을 둿던것 같습니다. 
  • 모델
    • 모델에는 유저의 기반이 되는 정보를 담으려 했습니다
    • 예를 들면 사용자 이름, 아이디, 비밀번호, 식별넘버 를 넣어 파이어 베이스에 넣었습니다.
    • Computed Property를 활용해서 받은 User정보를 파이어베이스에 저장하였습니다.
    • Static var num: Int = 0라는 전역변수를 이용해 유저 정보가 늘어날때마다 +1 해주는 식으로 식별넘버를 지정했습니다.
  • 뷰모델
    • viewDidLoad()에서 기존에 있는 유저데이터를 배열로 받아올수 있도록 하였습니다.
    • 사용자 입력에 반응할수 있도록 UITextFieldDelegate를 활용해서 작성하였습니다
    • 새유저 생성, 유효성검사, 중복검사 등을 메서드로 표현하였습니다.
    • 파이어베이스 서버에 유저를 저장하고 유저정보를 받아옵니다.
    • 최대한 메서드는 다른쪽에 작성하고 뷰는 버튼을 누르면 메서드를 통해 작동하도록 만들었습니다. 
    • 사용자 정보를 인식해 테두리 색상을 유효성 검사에따라 표시합니다.
    • 상황에 따른 알람을 출력합니다.

3일간의 후기

  • 3일의 시간이 걸렸는데 생각보다 진도가 너무 안나가서 고통스러운 시간이였습니다. 그만큼 배운것도 많고 여러 메서드, 델리게이트 활용방법을 배웠습니다. 예상치 못한곳에서 꽉막혀 2시간이 훌쩍 지나간적도 있었고 구현하면서 잘되서 신난 시간도 많았습니다. 
  • 제가 사용자로써 사용하면서 무심코 그냥 좋네 하고 넘겼던 기능들이 구현하면서 얼마나 많은 코드가 들어가 있는지 새삼 감탄했습니다. 
  • 그리고 제가 이러게 두개의 뷰를 이용한 페이지를 만들었는데 생각보다 완성물이 좋지 않아 만족스럽지 않았습니다. 하지만 지금 여기서 이걸 놓게 된 이유는 다른쪽도 만들어보고 싶고 이것하나만 매달리기 보다 다른걸 하면서 배우며 생각난걸 앞으로 업데이트 해보면 좋겠다는 생각이 들었습니다.