func Add( a int, b int) int {
	return a + b
}

4장 - 변수

  • 수학 : 변하는 수
  • 컴퓨터 : 값을 저장하는 메모리 공간을 가리키는 이름

컴퓨터에서 값을 저장하는 위치는 하드디스크(비휘발성)와 메모리(휘발성)이다.
프로그램이란 데이터를 연산/조작 하는 일로써, 이에 필요한 것이 변수이다.
CPU가 변수를 이용하여 계산을 하고 이 작업을 메모리가 진행하여 프로그램이 실행된다.

var 변수명 변수타입 = 실제 값

변수의 4가지 속성

이름, 값, 주소, 타입

설명타입기본값
unsigned(부호 X) 정수타입uint8(8bytes), uint16(16bytes), uint32(32bytes), uint64(64bytes)0
정수타입int8(8bytes), int16(16bytes), int 32(32bytes), int64(64bytes)0
실수타입float32(32bytes), float64(64bytes)0.0
기타 숫자타입byte(부호 X, 별칭타입), rune(문자 1개, UTF-8 = 1~3bytes = int32 ==4bytes, 별칭타입), int(사이즈가 플랫폼에 따라 달라진다. 32/64bit), uint(사이즈가 플랫폼에 따라 달라진다. 32/64bit) 
참 거짓bool(true/false)false
문자열string"" (빈문자열)
그외 타입배열, 슬라이스, 구조체, 포인터, 함수타입, 맵, 인터페이스, 채널nil(정의되지 않은 메모리 주소를 나타내는 Go 키워드)
별칭타입rune, byte 등 특정 타입에 대해 별칭이 주어진 것, 사용자에 따라 별칭타입을 선언하여 사용할 수 있다. 

타입변환

  • Go 언어는 강타입 언어
  • 타입이 상이하지만 연산이 필요한 경우, 타입을 변환하여 연산을 진행
  • 같은 정수이더라도 타입이 다르면 오류 발생 

5장 - 텍스트 입출력

go 언어에서는 fmt 패키지에서 표준 출력함수를지원한다.

print()함수 입력값들을 출력합니다.
println()함수 입력값들을 출력하고 개행합니다.(new line)
printf()서식(format)에 맞게 함수 입력값들을 출력합니다.

표준 입력 함수
go 언어에서는 fmt 패키지에서 표준 입력함수를지원한다.

Scan()표준 입력에서 값을 입력받습니다.
Scanf()표준 입력에서 서식 형태로 값을 입력받습니다.
Scanln()표준 입력에서 한 줄을 읽어서 값을 입력받습니다.

입력 버퍼(Input Buffer)

표준입력/표준출력은 Bit Stream의 형식으로 출력되며 0,1로 진행이 된다.
Bit stream 형식으로 입력되는 값이 저장 되는 공간을 버퍼라고 한다.
 

6장 - 연산자

산술연산자

산술 연산자arithmetic operator란 덧셈, 뺄셈, 곱셈, 나눗셈 등을 하는 연산자이다. 산술 연산자는 C를 포함한 대부분의 프로그래밍 언어에서 가장 많이 사용되는 기능 중 하나이다. 

구분연산자연산피연산자타입
사칙연산과 나머지+덧셈정수, 실수 복소수, 문자열
-뺄셈정수, 실수, 복소수
*곱셈정수, 실수, 복소수
/나눗셈정수, 실수, 복소수
%나머지정수
비트연산&AND정수
|OR정수
^XOR정수
&^비트클리어정수
시프트연산<<왼쪽 시프트정수 << 양의 정수
>>오른쪽 시프트정수 >> 양의정수

비트연산자

비트 연산자는 비트(bit) 단위로 논리 연산을 할 때 사용하는 연산자입니다.
또한, 비트 단위로 전체 비트를 왼쪽이나 오른쪽으로 이동시킬 때도 사용합니다.

ABA&BA|BA^BA&^B
00000^ 연산 수행 후, &연산 수행
10011
01011
11110

7장 - 함수

  • 수학 : 들어가는 변수의 값으로 정해져있는 수식에 대입하여 결과를 도출한다. 입력이 들어가면 결과가 나온다.
  • 프로그래밍 : 수학과 의미론적으로는 동일하다. 함수형 언어(functional language)에서는 수학적 의미와 유사하다. 하지만 Go 언어는 함수형 언어가 아니다. Go에서 함수는 코드 블럭이다. 어떠한 기능을 담고 있는 블럭이다.
  • Go 프로그래밍에서 함수의 정의
    • 함수 정의 키워드(func) : 중괄호({}) 안의 함수를 정의 하겠다는 키워드
    • 함수명(Add) : Add라는 이름의 함수 명을 정의, 함수명은 사용자 임의로 변경이 가능하다. 정의된 함수명으로 외부에서사용하여 해당 함수를 사용할 수 있다.

 

  • 매개변수(a int, b int) : 매개변수는 사용자 임의로 정할 수 있다. 정의된 함수를 호출할 때, 해당 매개변수가 들어가야한다. 함수 내부에서 매개변수를 통해 함수 실행이 진행될 수 있다. 파라미터(parameters), 아규먼트(arguments) 같은 의미다.
    • 반환타입(int) : 함수가 반환될 타입을 선언한다
    • 함수 코드 블록({ return a+b }) : 중괄호({})안에 실행할 코드를 작성한다. 함수 호출 시, 해당 코드가 실행된다. return이 있다면 결과를 반환한다.
    • 재귀호출(recursive call)
      • 자기 자신을 호출
      • 호출에서 탈출하는 조건 필수
      • 재귀 호출 실행은 스택(stack)에 쌓인다.

대상

  • .NET Core/Framework 를 처음 학습하는 분들을 위한 커리큘럼
  • 타 객체지향언어 사용 경험이 있는 사람
  • 웹프로젝트를 처음부터 끝까지 만들어본 적 있는 사람


1. .NET Framework 와 .Net Core

  • .NET Framework
    • 마이크로소프트에서 개발한 소프트웨어 프레임워크
    • 다양한 프로그래밍 언어 지원(C#, Visusal Basic, F# 등)
    • 웹 애플리케이션, 데스크톱 애플리케이션, 서버 애플리케이션 등 다양한 종류의 소프트웨어 개발 지원
    • windows 운영 체제 환경에서 실행되는 다양한 애플리케이션을 개발하고 실행하기 위한 프레임워크
  • .Net Core / .Net 6
    • 크로스 플랫폼 지원: .NET Core는 Windows, macOS, Linux 등 다양한 플랫폼에서 동작하도록 설계되었습니다. 이는 개발자들이 운영 체제에 구애받지 않고 애플리케이션을 개발하고 실행할 수 있도록 합니다.
    • 오픈 소스: .NET Core는 오픈 소스 프로젝트로, 개발자들이 소스 코드를 확인하고 기여할 수 있습니다. 이는 커뮤니티의 지원과 협력을 유도하며, 더 나은 플랫폼의 개발과 개선에 도움이 됩니다.
    • 경량화된 구조: .NET Core는 .NET Framework보다 더 경량화된 구조를 가지고 있어서, 빠른 실행 속도와 더 적은 메모리 사용을 제공합니다.
    • self-contained 배포: 응용 프로그램은 필요한 런타임과 라이브러리를 함께 패키징하여 self-contained 방식으로 배포할 수 있습니다. 이는 호스트 시스템에 .NET Core 설치 없이도 응용 프로그램을 실행할 수 있게 합니다.
      • 응용프로그램을 배포하는 방식
      • 실행에 필요한 모든 라이브러리와 .NET core 런타임을 패키징하여 응용프로그램이 독립적으로 실행 될 수 있도록 한다.
      • 호스트 시스템에서 .NET core 런타임 설치가 필요 없다.
      • 운영체제에 따라 빌드/배포 방식을 다르게 할 필요 없다.
    • NuGet 패키지 관리: .NET Core는 NuGet을 통해 개발자들이 재사용 가능한 코드 패키지를 손쉽게 관리하고 사용할 수 있도록 지원합니다.
    • 멀티 언어 지원: .NET Core는 C#, Visual Basic, F# 등 다양한 프로그래밍 언어를 지원하며, 개발자들은 선호하는 언어로 애플리케이션을 개발할 수 있습니다.
    • 모듈성: .NET Core는 모듈화된 설계로, 개발자들은 필요한 기능만 선택하여 사용할 수 있습니다. 이는 애플리케이션의 크기를 줄이고, 필요한 기능에만 집중하여 개발할 수 있도록 합니다.
    • ASP.NET Core: .NET Core와 함께 사용되는 ASP.NET Core는 경량화된 웹 개발 프레임워크로, 크로스 플랫폼에서 웹 애플리케이션을 개발하고 호스팅하는 데에 사용됩니다.
    • .NET Core는 현대적이고 유연한 애플리케이션 개발을 위한 강력한 플랫폼으로 인기를 얻고 있습니다.
  • 두 프레임워크의 차이 요약
  .NET framework .NET Core 3 / .Net 6
지원하는 OS windows 운영체제 위주 다양한 OS 지원
오픈소스 X O
프로그램 형태 데스크톱 애플리케이션, 웹 서버 애플리케이션 개발 적합 멀티 플랫폼 개발
종속성 관리 GAC(Global Assembly Cache)를 사용하여 어셈블리 버전 관리 응용 프로그램 내의 self contained 배포를 통해 관리
  • .Net Core 3과 .Net 6의 차이
  .Net core 3 .Net 6
크로스 플랫폼 지원 windows, macOS, Linux 등 다양한 플랫폼 지원 NET Core 의 확장판
.Net framework 애플리케이션 대부분 이식하도록 개선(.NET Upgrade Assistand 도구 제공)
Hot reload rlsmd cnrk
MAUI(Multi platform App UI) 프로젝트 지원

 

2. .Net 6 실습

프로젝트 생성

1. API 템플릿:
   - API 템플릿은 주로 웹 API를 개발하는 데 사용됩니다.
   - API 템플릿은 RESTful 서비스와 같이 HTTP 요청과 응답을 처리하는 데에 특화되어 있습니다.
   - 주로 클라이언트와 서버 간에 데이터를 주고받기 위해 사용되며, JSON, XML 등의 데이터 형식을 반환합니다.
   - API를 사용하여 데이터를 제공하거나 외부 서비스와 통신하는 애플리케이션을 개발할 수 있습니다.

2. 웹 애플리케이션 템플릿:
   - 웹 애플리케이션 템플릿은 기본적인 웹 애플리케이션을 개발하는 데 사용됩니다.
   - 정적 웹 페이지나 동적 컨텐츠를 제공하는 웹 애플리케이션을 구축할 수 있습니다.
   - 사용자 인터페이스가 필요한 경우, 따로 UI를 개발해야 합니다.
   - ASP.NET Core 기반으로 웹 페이지를 만들 수 있습니다.

3. 웹 애플리케이션 (Model-View-Controller) 템플릿:
   - 웹 애플리케이션 (Model-View-Controller, MVC) 템플릿은 MVC 패턴을 사용하여 웹 애플리케이션을 개발하는 데 사용됩니다.
   - MVC 패턴은 모델(Model), 뷰(View), 컨트롤러(Controller)로 구성되며, 데이터, 표현 및 애플리케이션의 로직을 분리하여 개발할 수 있습니다.
   - 웹 애플리케이션의 구조가 명확하고 유지보수가 용이하며, UI와 로직을 분리하여 작업할 수 있습니다.
   - 데이터베이스와 연결되는 웹 애플리케이션을 구축하는 데에 적합합니다.

프로젝트 구조(API 프로젝트 기준)

1. Controllers:
   - API 엔드포인트를 정의하고 처리하는 컨트롤러 클래스가 위치하는 폴더입니다.
   - 각각의 컨트롤러는 특정 URI 경로와 HTTP 요청 유형에 대한 액션 메서드를 포함합니다.
   - 주로 [Route] 및 [HttpVerb] 특성을 사용하여 엔드포인트와 요청 유형을 설정합니다.
2. Models:
   - API에서 사용되는 데이터 모델이나 DTO(Data Transfer Object) 클래스가 위치하는 폴더입니다.
   - 이 폴더에서는 API 요청 및 응답에 사용될 데이터 구조를 정의합니다.
3. Services:
   - API의 비즈니스 로직이나 외부 서비스와의 상호 작용을 처리하는 서비스 클래스가 위치하는 폴더입니다.
   - 주로 데이터베이스 연결, 외부 API 호출, 데이터 처리 등을 수행하는 로직이 포함됩니다.
4. Middleware:
   - API 요청과 응답을 처리하는 미들웨어 컴포넌트가 위치하는 폴더입니다.
   - 미들웨어를 사용하여 인증, 로깅, 예외 처리 등과 같은 공통적인 기능을 처리할 수 있습니다.
5. Filters:
   - API 요청과 응답에 대한 필터링을 수행하는 필터 클래스가 위치하는 폴더입니다.
   - 주로 인증, 권한 부여, 데이터 유효성 검사 등을 처리하는 필터를 구현합니다.
6. Startup.cs:
   - API의 구성과 초기화를 담당하는 파일입니다.
   - ConfigureServices 메서드에서 의존성 주입(Dependency Injection) 설정 및 미들웨어 구성 등을 처리합니다.
   - Configure 메서드에서 요청 파이프라인의 미들웨어 순서와 라우팅 설정을 정의합니다.
7. appsettings.json:
   - API의 설정 정보를 포함하는 파일입니다.
   - 데이터베이스 연결 문자열, 로깅 설정 등을 설정합니다.
8. wwwroot (선택적):
   - 정적 파일(이미지, CSS, JavaScript 등)을 저장하는 폴더입니다.
   - 주로 웹 API에서 클라이언트에게 제공하는 정적 리소스를 저장합니다.

프로젝트 구조

 

실행화면

로깅

  • Serilog 라이브러리 설치 및 설정
    • serilog는 .NET 에서 사용되는 대표적인 로깅 라이브러리로 비동기적인 로깅을 지원한다.
    • NuGet 패키지 관리자를 통해 Serilog, Serilog.Sinks.Console 패키지를 프로젝트에 추가한다.
  • Microsoft.Extensions.Logging
    • .NET의 기본 로깅 라이브러리
    • .NET Core 및 .NET 5 이후 버전부터 기본적으로 제공하는 라이브러리
    • logging provider를 활용하여 로그 메시지 출력 대상 선택
    • Serilog, NLog 등 다른 로깅 라이브러리와 함께 사용 가능
    • 기본적으로 .NET Core에서 비동기 로깅을 지원
    • 별도의 로깅 구성은 필요하지 않다.

 커뮤니티 사이트는 물론, 대학교 과제와 초중고등학교 그리고 회사에서까지 chat GPT의 활용 범위는 늘어나고 있습니다. 

이러한 사회적 양상에 따라서 효율적인 챗GPT 활용 방식을 알아보고자 책을 읽게 되었습니다.

이 책을 통해 웹상에서 단순한 플러그인을 통해 사용하는 것 뿐만 아닌, 나의 프로젝트와도 연결시켜 단순 반복 작업을 효율적으로 만드는 방식에 대해 학습하고자 합니다.

내용

자연어 처리(Natural Language Processing, NPL)

인공지능이 사람의 언어를 처리하는 분야

자연어 이해(Natural Language Understanding, NLU)

여러가지 보기 중에서 정답을 고르는 문제

ex ) 자동으로 스팸 메일을 스팸 메일함으로 보내는 스팸 메일 분류기

자연어 생성(Natural Language Generation, NLG)

텍스트를 인공지능이 스스로 생성하는 문제

ex) 한 나라의 언어를 다른 나라 언어로 번역하는 구글 번역기

 

인공신경망(Artificial Neural Network, ANN)

사람 뇌의 신경망으로부터 영감을 받아 만들어진 인공지능 기술 중 하나

ex) 알파고, 구글 번역기, 파파고 등

딥 러닝(Deep Learning)

뉴런(인공신경망의 가장 작은 단위)를 쌓아 인공 신경망을 만들고 이 망을 쌓아 깊은 층을 만드는데 이것을 학습시키는 것을 딥 러닝이라고 한다. 인공 신경망의 크기를 파라미터(parameter)라고 한다.

트랜스포머

인공신경망의 내부 구조이며 다양한 신경망의 구조에 대해서 나왔으나, 구글에서 공개한 신경망 트랜스포머가 대표적인 구조가 되었다.

트랜스포머는 두개의 구조가 있는데 각 쓰임새에 따라 다르게 사용된다.

인코더 블록

자연어 이해에 강하며 한글 문장에 대한 구조나 의미 등을 내부의 인공 신경망을 통해 파악한다. 

ex) 구글은 인코더 블록을 겹겹이 쌓아서 BERT라는 모델을 만들었다.

디코더 블록

인코더 블록이 전달받은 정보를 바탕으로 문장을 생성해낸다.(creator)

ex) OpenAI는 디코더 블록만 쌓아서 GPT라는 모델을 만들었다.

 

챗GPT

2021년 까지의 데이터를 기반으로 데모사이트가 동작, 추가 학습 기능을 제공하지 않음

프롬프트

chatGPT에게 요청하는 사용자의 입력

프롬프트 지니를 통해서 한국어를 영어로 번역하여 질문 후, 영어 답변을 한국어로 받아보자

챗GPT는 위의 트랜스포머의 디코더 블록을 겹겹히 쌓은 모델로 문장을 생성해내는 것에 특화되어있지 한글 문장에 대한 구조나 의미를 파악하는 인코더 부분에 대해서 해당 특화 기술보다 능력이 약하다. 해당 약점을 보완하기 위해 구글 번역기를 같이 사용할 수 있다. 크롬 브라우저라면 프롬프트 지니라는 대중적인 플러그인을 통해서 진행이 가능하다.

플러그인을 설치하면 자동으로 번역할 수 있도록 안내문구가 나와있다. 

프롬프트 엔지니어링

고도화된 open AI의 기술, 공개된 아키텍처를 통해 우리는 이제 AI개발에 대한 고민 뿐만 아니라 "어떻게 질문을 할 것인가?" 에 대한 고민을 하게 되었다. 이 고민을 하게 되는 기술이 프롬프트 엔지니어링이다.

프롬프트 지니도 이중 하나로 볼 수 있다.

1. 구체적인 답변의 형태 요청

2. 예시 추가

3. 역할극 요청 (2번과 유사한 내용이지만, chat GPT에게 역할을 부여하여 요청) ex) 가이드, 교사, 면접관, ...

4. 영어 사용(프롬프트 지니)

5. 추가 답변요청(continue 등을 통해 추가 답변을 요청하면 더욱 상세히 답변)

챗GPT의 활용

프로그래밍 도우미, 텍스트 요약하기, 정보 또는 설명 요청, 아이디어 얻기, 마케팅 준비 등

블로그에서의 활용

블로깅의 역동적인 환경에서 성공을 위해서는 고품질의 매력적인 콘텐츠를 만드는 것이 무엇보다 중요합니다. 그러나 아이디어 구상, 조사 및 작성 과정은 시간이 많이 걸리고 까다로울 수 있습니다. 다행히도 생산성을 혁신할 수 있는 혁신적인 솔루션인 ChatGPT가 있습니다. OpenAI에서 개발한 ChatGPT는 블로그 작성 프로세스를 크게 간소화할 수 있는 고급 언어 모델입니다. ChatGPT를 활용하여 블로거가 매우 생산적이고 효율적인 콘텐츠 제작을 추구하는 데 어떻게 힘을 실어줄 수 있는지 살펴보겠습니다.

콘텐츠 구상 간소화

 블로거에게 가장 어려운 작업 중 하나는 콘텐츠에 대한 신선하고 매력적인 아이디어를 제시하는 것입니다. ChatGPT는 이 과정에서 귀중한 동반자가 될 수 있습니다. 즉각적인 대화를 제공함으로써 ChatGPT는 블로거가 창의적인 아이디어를 생성하고 다양한 각도를 탐색하며 작가의 한계를 극복할 수 있도록 지원합니다. 자연어 처리 기능을 통해 컨텍스트를 이해하고 관련 제안을 생성하여 블로거가 매력적인 블로그 주제를 손쉽게 개발할 수 있습니다.

효율적인 연구 및 데이터 수집

 권위 있고 유익한 블로그 게시물을 작성하려면 철저한 조사를 수행하는 것이 중요합니다. ChatGPT는 신뢰할 수 있는 출처에서 신속하게 정보를 검색하여 조사 프로세스를 단순화할 수 있습니다. 통계, 사실 또는 지원 증거에 관계없이 ChatGPT는 블로거가 정확한 최신 데이터를 찾도록 도와 귀중한 시간을 절약합니다. 또한 정보를 상호 참조하는 기능은 콘텐츠의 신뢰성과 정확성을 보장합니다.

쓰기 구조 및 흐름 향상

 잘 구성된 블로그 게시물을 작성하는 것은 독자를 참여시키는 데 필수적입니다. ChatGPT의 지원은 블로거가 청중을 사로잡는 소개 및 결론을 작성하도록 돕는 데까지 확장됩니다. 주의를 끄는 서두를 제안하고 핵심 사항을 효과적으로 요약하는 데 도움이 됩니다. 또한 ChatGPT는 기사 전체에서 아이디어의 원활한 흐름을 촉진하여 콘텐츠가 일관성 있고 논리적이 되도록 합니다.

쓰기 품질 향상: ChatGPT AI 기능은 블로그 게시물의 전반적인 품질을 향상시킬 있습니다. 신뢰할 있는 교정자 역할을 하여 문법 오류, 철자 오류 구두점 문제를 잡아냅니다. 도움을 받아 블로거는 콘텐츠에 오류가 없고 세련된지 확인할 있습니다. 또한 ChatGPT 블로거가 콘텐츠에 적합한 음성을 찾는 도움이 되는 대체 문구 또는 문장 구조를 제공하여 작문 스타일을 개선하기 위한 제안을 제공합니다.

기타

 

활용

챗GPT로 공부하기 .NET 

참고

책소개 - https://wikibook.co.kr/chatgpt-recipes/

예제코드 - https://github.com/wikibook/chatgpt-recipes

회사에서 진행한 그림책 상상력 워크숍
약 50분간 진행되었습니다.

신기한 경험이라서 후기 남겨봅니다.
회사에서 진행해서 올린다고 떡하나 주지 않습니다ㅋ
오히려 지우라고 할지도 모릅니다.

대상자는 성인 아무나

강사님은 결혼하거나 아이를 키우는 사람들이 많을 것이라 생각하셨습니다.

전 제가 제일 애같아요...🥲

강사님이 그림책도 읽어주시고,
그림책 내용 기반으로 글을 쓰고 도화지를 꾸미는 미션(?)도 주셨어요.

제가 작성한 미션 ㅋㅋㅋ
강사님이 재미있게 써주셔서
저도 재미있게 했는데, 다른 분들은 모두 진지했어요.

이것이 결혼 예정 없는 미혼의 패기

어른을 위한 그림책도 주셨어요.
내용을 대강 읽었을때는 “엥?” 스러운데 집가서 그림과 함께 다시 읽어보려구요.

아차차

그림책의 활자를
너무 많이 보지말고
그림을 보면서 상상하라고 했습니다.

강사님은 그림책방 운영 및 관련 포럼 강의 진행중이라고 하셨어요.
생각지도 못한 이색 직업!!

근근넝넝
경기 광주시 순암로36번길 56-18 B동 1층 상가

1단계의 큰 주제는 자기소개하기(Talk about yourself)였습니다. 기본적인 알파벳 읽기를 시작으로 발음연습까지 진행하였습니다. 영어를 처음 배우는 분들에게는 매우 유용한 내용입니다. 그러나, 이미 영어를 한 번 접해보았다면 지루할 수 있는 단계일 수도 있습니다.

학습 내용은 I, you, he, she, it, we, they와 같은 대명사에 대해 학습하고 대명사의 변형(인칭대명사 등)을 활용하는 것이었습니다. 이번 학습에서는 많은 내용을 복습하는 느낌으로 진행하였습니다.

강의는 10~15분으로 짧은 편이어서 부담이 없었고, 학습지를 푸는 시간도 강의를 들으며 진행하였습니다. 이는 효율적인 학습 방법 중 하나입니다.

그러나, 1단계가 지루한 학습이었다는 점이 조금 실망스러웠습니다. 하지만, 다음 단계에서는 좀 더 다양한 주제와 학습 방법을 경험하실 수 있을 것입니다. 따라서 단계가 높아질수록 지루함이 사라질 것을 기대하시면 됩니다.

총평으로는, studymini 영어 학습지 1단계는 영어를 처음 배우는 분들에게는 매우 유용한 내용입니다. 기본적인 알파벳 읽기와 발음연습을 통해 기초를 다지는 것은 중요합니다. 또한, 강의와 학습지를 동시에 이용할 수 있는 것은 효율적인 학습 방법입니다. 하지만, 이미 영어를 한 번 접해보았다면 지루할 수 있는 내용일 수 있으니 참고하여 높은 단계를 신청하시길 바랍니다.

스터디 미니의 나의 강의실을 처음 들어가면 볼 수 있는 화면입니다.
UI자체는 문제가 없으나, 화면을 로드하는데 정말 많은 시간이 소요됩니다.
개선이 시급한데 변하지 않습니다.

학습은 위의 화면같이 진행 됩니다.
Mission Complete 에서 해당일 진행하는 주제에 대해 강의를 진행합니다.
그리고 회화 훈련강의에서 반복 학습을 합니다.

Studymini는 영어 학습을 위한 학습지 어플리케이션을 제공합니다. 이 어플리케이션을 통해 태블릿이나 휴대폰에서 영어를 학습할 수 있으며, 필요하면 종이 학습지도 추가 주문할 수 있습니다.(종이 학습지 추가 주문시 비용 별도)

어플리케이션은 가독성이 높게 개발되어 있어서 글씨 크기, 배치 등 모든 요소가 영어 학습을 위해 최적화되어 있습니다. 작성한 내용은 어플리케이션에 저장되어 있어서, 복습하기에도 편리합니다.
어플리케이션의 용량은 기본적으로 180MB 정도 되어 있습니다. 크기는 다른 영어 학습 어플리케이션들과 비슷하며, 무거운 편은 아닙니다. 추가로 다운로드한 학습지나 글을 작성하면 어플리케이션 용량이 늘어날 수 있습니다.
또한, 어플리케이션은 웹사이트와 다르게 문제가 없는 속도로 동작합니다. 학습 경험이 좋도록 구조가 설계되어 있습니다. 이 어플리케이션을 사용하면 영어 학습이 즐거워지며, 어디서나 언제든 학습을 계속할 수 있습니다.

“스터디미니 환급원정대 미션 완수를 통해 소정의 수강료 환급을 받았습니다.”

+ Recent posts