2025/02

JSON이란 무엇인가?JSON이란 JavaScript Object Notation의 약자로 데이터를 쉽게 교환하고 저장하기 위한 텍스트 기반의 데이터 교환 표준 방법입니다. KEY -Value로 이루어져 있습니다.Dart 데이터 통신에서의 직렬화-역직렬화에 대해 설명하시오.직렬화-역직렬화 과정은 데이터 형식을 전활하기 위한 과정으로 주로 Json 통신을 할 때 사용됩니다.직렬화는 dart에서 사용한 객체를 json 형식으로 바꾸는 과정을 의미합니다.역직렬화는 json 데이터를 dart에 사용할 수 있는 객체로 바꾸는 과정입니다.HTTP 의 특징과 문제점은 무엇인가?HTTP는 Hypertext Transfer Protocol의 약자로 클라이언트와 서버 간에 통신을 위한 통신 프로토콜입니다.요청-응답 구조로..

메모리의 종류에 대해 설명하고, 종류가 여러가지인 이유에 대해 설명해주세요.주기억장치(RAM) : 데이터를 임시로 저장하며, 데이터가 휘발된다.보조기억장치 : 데이터를 영구적으로 저장한다. 데이터가 휘발되지 않는다.캐시 메모리 : CPU와 주기억 장치 사이에 위치하여 데이터를 빠르게 접근 할 수 있도록 도와준다.ROM(read only memory) : 읽기 전용 메모리, 비 휘발성이다. 전역 변수와 정적 변수의 차이는?전역 변수는 프로그램은 다른 파일에서도 해당 변수에 접근이 가능한 것을 의미. 정적 변수는 다른 파일에서는 접근 할 수 없다.OS가 메모리 관리를 해야하는 이유에 대해 설명해주시고, 메모리 관리를 위해 어떤 전략을 사용하는지 설명해주세요.프로세스 간의 메모리 충돌을 방지하고, 각 프로세스..

OOPOOP(Object-Oriented Programming) 객체지향 프로그래밍프로그램 설계 방법 중 하나로 객체 단위로 프로그램을 구성하는 것을 의미한다. 데이터를 추상화시켜 상태와 행위를 가진 객체를 만들고 그 객체들 간의 유기적인 상호작용을 통해 로직을 구성하는 프로그래밍 방법 상속이란?부모 클래스의 속성과 기능을 그래도 이어받아 사용하거나 자식 클래스에 맞게 기능을 수정하여 사용할 수 있게 하는 것추상화란?공통의 속성이나 기능을 묶어 이름을 붙이는것다형성이란?하나의 변수명, 함수명 등이 상황에 따라 다른 의미로 해석될 수 있는 것캡슐화란?기능과 특성의 모음을 클래스라는 캡슐에 묶어 외부에서 접근하지 못하도록 보호하는 것 객체지향 추가 질문장점, 단점장점 : 상속을 통해서 코드의 재사용이 용이..

OS(운영체제) 란 무엇인가요?컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 ㅋ편리하고 효과적으로 사용할 수 있도록 환경을 제공하는 여러 프로그램의 모임커널이란 무엇인가?하드웨어를 보호하고, 프로그램과 하드웨어 간의 인터페이스 역할을 담당함스택, 힙 메모리란 무엇이며 어떤 차이가 있는지 비교해서 설명하세요.두가지는 메모리에 데이터를 저장하는 방법입니다. 스택은 LIFO 방식이며 컴파일 시점에 크기를 정하고 메모리에 저장합니다. 힙은 자유롭게 메모리에 저장 할 수 있고 런타임에 동적으로 메모리에 할당합니다.값 형식과 참조 형식의 차이에 대해 설명하세요.value type은 변수에 값을 담는 형식으로 스택을 사용reference type은 변수에 값의 주소를 담는 형식으로 힙을 사용동기와 비동기의 ..

StatefulWidget의 생명주기에 대해 설명하세요.위젯 구축createState() : StatefulWidget을 사용할 때 가장 먼저 호출된다.initState() : 위젯이 생성될때 호출되는 메서드로 한번만 호출된다.didChangeDependencies() : initState 다음으로 바로 호출 되며 위젯이 의존하는 데이터의 객체가 호출될때마다 호출된다.재 드로잉dirtry : 화면의 다시 빌드를 해야하는 상태didUpdateWidget() : 위젯이 변경될때 마다 호출되어 다시 build를 진행한다.(새로운 화면)build() : 위젯을 반환하고 반환된 위젯이 랜더링 되어 화면에 표시된다.setState() : 객체의 상태가 변경되었음을 프레임워트에 알린다.(기본화면의 변화)clean :..

애니메이션 속성 중 curve 와 duration 에 대해 설명하세요.curve는 애니메이션의 속도와 움직임을 정의하는 함수duration은 애니메이션의 지속 시간을 나타내는 함수입니다. 암시적 애니메이션과 명시적 애니메이션의 차이는 무엇인가요? 암시적 애니메션은 개발자가 직접 구현하지 않아서 위젯의 변화를 자동으로 애니메이션으로 구현해주는 방식명시적 애니메이션은 개발자가 애니메이션을 직접 제어하는 방식 Flutter에서 스로틀링은 무엇인가요? 예를 들어 설명하세요.특정 시간 내에 중복적으로 이벤트가 발생하면 한번만 실행되도록 하는 기능검색을 할때 쓰로틀링으로 2초을 걸어두면 2초안에 몇번의 요청을 하더라고 2초에 한번씩만 요청을 실행한다. Flutter에서 디바운싱은 무엇인가요? 예를 들어 설명하세요...


MermaidMermaid는 JavaScript기반의 다이어그램과 차트 작성을 도와주는 도구입니다. 차트를 넣을려면 이미지를 따로 만들고 수정하려면 새로 만들어야하는 불편함이 있습니다. 그런데 Mermaid를 사용하면 Markdown 문서에서 텍스트를 이용해서 바로 시각적인 다이어그램을 만들 수 있습니다. 장점간편한 문법 : 코드로 다이어그램을 만들 수 있어서, 복잡한 과정없이 생성 및 수정이 가능합니다.Markdown 통합: GitHub 등에서 바로 사용할 수 있어서 README파일이나 문서에서 쉽게 사용할 수 있습니다.다양한 다이어그램 지원 : 플로우차트, 시퀀스 다이어그램, 간트 차트 등 다양한 유형의 다이어그램을 지원합니다. 예시 ```mermaidflowchart //mermaid에서 flo..

Flutter 앱 개발에서 ‘상태’란 무엇을 의미하나요?Flutter에서 위젯의 현재 테이터나 UI의 상태를 의미합니다.ListView, ListView.builder, SingleChildScrollView + Column 3가지의 차이점은 무엇인가요?ListView는 스크롤 가능한 리스트를 생성하며, 미리 지정된 자식 위젯을 children 속성을 통해서 한번에 모두 생성합니다.ListView.builder는 ListView와 다르게 화면에 보여지는 속성만 생성하고 itemCount와 itemBuilder로 조절 합니다.SinglechildScrollView+Column은 단일 위젯만을 스크롤 가능하게 바꿔주는 역할을 합니다. 그렇게 때문에 ListView와 동일하게 자식 위젯을 한번에 모두 메모리에..

앱을 만들다 보면 다양한 정보를 저장해야 하는 상황이 생깁니다. 보안, 사용성, 속도 등에 따라 상황에 맞는 방법을 선택해야 합니다. 오늘은 로컬에 저장되고 방법이 매우 간단한 shared_preferences 패키지를 이용하는 방법에 대해서 알아보겠습니다. 1. SharedPreferences란?SharedPreferences는 안드로이드와 iOS에서 간단한 데이터를 로컬에 저장할 수 있는 방법입니다. 이 저장소는 앱이 종료되거나 재시작을 하더라고 휘발되지 않고 남아있어 다양한 곳에서 사용하기에 적합합니다. 2. SharedPreferences 사용법1. 패키지 설치터미널에서 명령어로 설치를 하던가flutter pub add shared_preferencespubspec.yaml에 직접 추가한 후에 ..