[Design Pattern] React와 Flux 패턴
2022. 9. 30. 09:45
개발이야기/TIL
지금은 react에서 데이터 관리를 할 때 redux를 쓰는 게 당연시되고 있다. 그럼 리액트는 왜 줄곧 MVC패턴을 사용하다가 flux패턴을 사용하게 되었는지 알아보자. Flux 출현 배경: 기존 MVC 모델의 한계 기존의 어플리케이션 환경에서 보편적으로 사용되는 패턴은 MVC였다. Model에 데이터를 정의해 두고, Controller를 이용해 Model 데이터를 생성 / 조회 / 수정 / 삭제(CRUD)하고, 변경된 데이터는 View에 출력되면서 사용자에게 전달되는 흐름, 하지만 이 패턴의 문제점은 어플리케이션의 규모가 커질수록 데이터 흐름의 복잡도가 무지막지하게 늘어난다는 것이었다. 예를 들어 칼럼 게시판을 만든다고 치면. (이 게시판 UI의 가장 큰 특징은 자신이 최근에 남긴 댓글이 우측 사이드..
[Design Pattern] MVC
2022. 9. 30. 08:54
개발이야기/TIL
디자인패턴 “바퀴를 다시 발명하지 마라(Don’t reinvent the wheel)” 이 문장이 뜻하는 의미는 무엇일까? 이미 만들어져서 잘 되는 것을 처음부터 다시 만들 필요가 없다는 의미이다. 이처럼 디자인 패턴은 자주 발생하는 고질적인 문제들은 또 발생할 수 있기때문에 하나의 패턴을 만들어서 재사용할 할 수 있게 만들어주는 해결책이다. 그럼 ... 만약에... 이런 방법들이 없다면 ? 우리는 클래스 함수들을 일일히 다 만들어야 한다.😵💫🤮 디자인패턴은 라이브러리나 프레임워크와 의미가 비슷하다고 보면되는데, 예를 들어 그냥 jQuery를 이용한다면 $('#MVC')로 DOM을 선택할 수 있는 것을 순수 Javascript를 사용한다면 document.getElementsByid('MVC')로 길게..
[CS] 컴파일러와 인터프리터 차이점
2022. 9. 28. 09:47
개발이야기/TIL
컴파일러와 인터프리터의 차이점을 알아보기전에 컴파일이란 무엇인지 알아보자. 컴파일이란 어떤 언어의 코드전체를 다른 언어로 바꿔주는 과정이다. 그리고 이것을 자동으로 만들어주는 소프트웨어를 컴파일러라고 한다. 코드 전체를 다른 언어로 바꿔준다고?????😧 음.....글쎄요....왜....굳이 다른 언어로 바꿔줘야해? 코드를 컴파일하는 이유는 아주 간단한데.. 바로 '의사소통' 을 해야하기때문이다. 컴퓨터와 의사소통을 하려면 '언어' 가 필요하고, 컴퓨터는 기계어를 사용, 인간은 사람 중심 언어인 고급 언어를 사용한다. 둘의 언어는 서로 방식이 다르기때문에 의사소통이 되지않는다.💔❌(삑) 따라서 우리는 사람의 문제를 해결하기 위한 코드를 작성하고 컴파일러를 활용해 그 코드를 기계어로 변환해주는 것이다. 그럼..
[C#] 반복문
2022. 9. 27. 16:25
개발이야기/C#
반복문도 자바스크립트와 동일하지만 개념 정리만 해보자. while문 조건이 참일경우 while 코드블럭 안에있는 코드가 계속 실행된다. int i = 0; while (i < 10) { Console.WriteLine("i의 값은? : " + i); //0~9까지출력 i++; } do&while문 do&while문은 무조건 한번은 실행시킨다. 첫번째는 참이든 거짓이든 실행시키고, 두번째 실행부터 while문처럼 조건을 체크한다. //1 int i = 0; do { Console.WriteLine("첫번째" + i); i++; } while (i < 0); //2 i = 0; do { Console.WriteLine("두번째" + i); i++; } while (i < 1); //3 i = 0; do { ..
[C#] 배열
2022. 9. 27. 15:45
개발이야기/C#
C#에서의 배열도 자바스크립트와 크게 다르지않다. 단지 데이터타입을 명시한다는 차이점 뿐. 배열 선언, 할당 방법 데이터타입을 명시하고 (본문은 문자열이기때문에 string으로 명시해줌) [] 대괄호로 배열을 명시해준다. 변수이름을 지어주고 = {} 이퀄과 중괄호를 사용하여 중괄호안에 스트링값을 넣어준다. string[] fruit = { "사과", "자두", "샤인머스켓", "딸기" }; int[] myNum = { 1, 2, 3, 4, 5 }; 숫자형도 마찬가지로 int (숫자) 데이터타입을 명시하고 [] 배열적는다. 변수이름을 적고 값을 넣어주면 끝🔥 배열 데이터 꺼내기 이것도 자바스크립트와 거의 동일.... 괄호 표기법을 사용해서 꺼내오면된다. string[] fruit = { "사과", "자두"..