분류 전체보기170 MVVM 패턴이란? MVVM 패턴은 프로그램을 설계하기 위한 하나의 방법론이다. 과거 구글의 코틀린 강좌를 들을 때도, 대놓고 MVVM 패턴이라고 명명해주진 않았지만 이 패턴을 사용해서 예제 앱을 만들었었다. MVVM의 구성 요소 Model:데이터와 데이터에 관련된 행위를 모두 합쳐 Model이라 부른다. View: 사용자에게 화면으로 보여지는 모든 구조, 레이아웃을 View라 부른다. View Model: View Model은 View 에 보여져야하는 데이터와 명령들을 가지고 있다. View 가 ViewModle 을 observe(관찰) 하는 형태로 binding 되어 있기 때문에, data 의 갱신을 View 가 자동으로 받을 수 있게 되어있다. 안드로이드에서의 MVVM ViewModel 과 View 는 MVP 패턴과 .. 2022. 9. 19. 클린코드 17장 (끝) 17장 냄새와 휴리스틱 🔎주석 부적절한 정보 이슈 추적, 소스코드 관리 등 다른 시스템에 저장할 정보는 주석으로 적절하지 않다. 이러한 내용은 괜히 소스 코드만 번잡하게 만든다. 쓸모 없는 주석 주석은 빨리 낡는다. 추후 쓸모 없어질 주석은 아예 달지 않는 편이 좋고, 쓸모 없어진 주석은 빨리 삭제해야 한다. 중복된 주석 코드만으로 충분한데 구구절절 설명하는 주석이 중복된 주석이다. 이런 주석은 필요가 없다. 주석 처리된 코드 이런 주석이 나오면 신경이 아주 거슬린다. 누군가에게 필요한 코드라고 생각해서 아무도 삭제하지 않고, 주석코드는 그 자리에서 하루하루 낡아간다...흉물 그 자체다! 얼른 지워버리자.(아무리 그래도 흉물이라니..이 책 넘 막말심함ㅠㅠ) 🔎환경 여러 단계의 빌드 필요한 파일을 찾느라 .. 2022. 9. 19. [cs 정리]운영체제 1. 운영체제란 무엇인지 설명해주세요 운영체제 ( Operating System )는 컴퓨터 하드웨어와 소프트웨어 자원을 관리하는 시스템 소프트웨어입니다. Windows, Linux, Mac 등이 운영체제에 속합니다. 2. 프로세스와 스레드의 차이를 설명해주세요 프로세스는 운영체제로부터 자원을 할당받은 작업의 단위를 말합니다. 반면 스레드는 프로세스가 할당받은 자원을 이용하는 실행 흐름의 단위를 말합니다. 프로세스는 다른 프로세스의 메모리 공간에 접근할 수 없으나, 스레드는 Code, Data, Heap영역은 공유한다.(stack은 공유x) 🔎스레드가 스택만 공유 안하는 이유는, 후입 선출이라는 스택의 특성상 공유했다가 너무 복잡해지기 때문이라고 한다.. 운영체제로부터 자원을 할당받은 작업의 단위 cpu.. 2022. 9. 19. 자바에서 큐의 사용 자바는 코테용으로 쓰는것도 아니고, 개발할 때는 큐를 쓸 일이 지금까지 별로 없었어서 사용법을 잘 모르고 있었는데 이참에 정리해본다. Queue queue = new LinkedList(); //int 배열형 큐 선언(코테에서 가장 많이쓰게 될것...) Queue queue = new LinkedList(); //int형 queue 선언 Queue queue = new LinkedList(); //String형 queue 선언 값 추가하기 queue.add(1); queue.add(new int [] {i,j}); 값 가져오기 int temp []=q.poll(); 큐에 값이 있는 동안 반복 while(!queue.isEmpty()) { } 일단은 요정도 알면 사용할 수 있을 듯하다. 2022. 9. 19. 동기와 비동기 난 둘의 개념을 안다... 동기와 비동기를 떠올리면 항상 위의 이미지가 떠오른다. 문제는 위 이미지에서 어떤게 비동기고 어떤게 동기였지? 하고 항상 헷갈린다는 것이다. 이것저것 한꺼번에 하는게 동기였는지 비동기였는지.. 동기(synchronous): 데이터의 요청과 결과가 한 자리에서 동시에 일어나는것 비동기(Asynchronous): 요청한 결과가 동시에 일어나지 않을 것. 헷갈리는 이유는 둘의 사전적인 설명이 이래서,,,그림상으로는 동시에 이것저것하는게 비동기인데 사전적인 설명으로는 반대인것처럼 느껴진다. 요청과 결과가 한 자리에서 동시에 일어난다는 건, 뭔가 요청한다음에 기다리는 동안 딴짓하지 않고 결과가 나올때까지 대기한다는 의미이다. 카페에서 커피를 시켰다고 치면 나올때까지 알바생을 응시하며 기.. 2022. 9. 18. [스프링 입문] 섹션 3. 회원 관리 예제 - 백엔드 개발 비지니스 요구사항 정리 데이터: 회원ID, 이름 기능: 회원 등록, 조회 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) 컨트롤러: 웹 MVC의 컨트롤러 역할 서비스: 핵심 비즈니스 로직 구현 리포지토리: 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 도메인: 비즈니스 도메인 객체, 예) 회원, 주문, 쿠폰 등등 주로 데이터베이스에 저장하고 관리됨 아직 db를 뭐쓸지 결정하지 않았으므로, 일단 인터페이스 기반으로 개발한다. 회원 도메인과 리포지토리 만들기 이렇게 만들어준다. package hello.hellospring.domain; public class Member { private Long id; private String name; public String getName() { r.. 2022. 9. 18. 이전 1 ··· 7 8 9 10 11 12 13 ··· 29 다음 반응형