softwaresh의 등록된 링크

 softwaresh로 등록된 티스토리 포스트 수는 33건입니다.

[멀티미디어 시스템] 디지털 시그널이 왜 잡음에 강인한 지 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 디지털 시그널이 왜 잡음에 강인 한 지에 대해 정리해 보도록 하겠습니다. 먼저 아날로그 시그널에 비해 디지털 시그널의 장점에는 어떤 것이 있을까요? 여러 가지 장점 중 딱 하나만 뽑으라면 노이즈에 강인하다는 것이 가장 중요한 장점으로 꼽을 수 있습니다. 노이즈에 강인하는 것은 또 다른 말로 high quality of signal processing이 가능하다는 이야기입니다. 그것뿐만 아니라 몇 가지 장점이 존재하는데, 그 장점에 대해서는 다음 포스팅에서 정리해 보도록 하겠습니다. 더 정확한 이해를 위해 디지털 시그널이 왜 잡음에 강인한지 알아보기 이전에 먼저 analog transmission(아날로그 전송)과 digital transmis..

[멀티미디어 시스템] 시그널의 quality가 저하되는 요인과 digital 신호의 특징 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 phase에 대해서 간략하게 정리하고, 시그널의 quality가 저하되는 요인과 digital 신호의 특징에 대해 정리해 보도록 하겠습니다. phase phase는 위상이란 뜻으로, 위키피디아에 따르면 반복되는 파형의 한 주기에서 첫 시작점의 각도 혹은 어느 한순간의 위치를 뜻하는 단어입니다. 보통 사인함수와 코사인 함수가 π/2 만큼 차이가 난다고 할 때 그 π/2를 위상차라고 합니다. 일반적으로 멀티미디어에서 phase는 time delay에 해당이 됩니다. digital binary 디지털은 어떤 속성을 가지고 있고 아날로그와 어떤 차이가 있는지 알아보도록 하겠습니다. 디지털 바이너리는 네트워크를 통해서 전송하는데, 예를 들어 binar..

[멀티미디어 시스템] 주파수에 따른 sampling period [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 멀티미디어 종류에 따른 필요한 최소 비트 수와 주파수와 sampling period는 어떤 관련이 있는지에 대해 정리해보도록 하겠습니다. 앞선 포스팅에서 quantization error를 줄일 수 있는 방법에 대해 이야기 했었는데, 비트 수를 늘려서 더 촘촘하게 숫자를 지정할 수 있게 되면 오차를 줄일 수 있는 대신 처리해야 할 데이터가 늘어나는 단점이 발생하게 됩니다. 그래서 1950년대 학자들이 몇 비트일 때, quantization error를 줄이고 신호 quality를 높이고 data processing도 크게 부담이 되지 않는지 반복적인 실험을 진행했습니다. 그 결과 사람의 아날로그 음성은 디지털로 표현할 때 약 8bit정도면 만..

[멀티미디어 시스템] 아날로그 신호를 디지털 신호로 변환하는 과정 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 아날로그 신호를 디지털 신호로 변환하는 과정에 대해 정리해보도록 하겠습니다. 멀티미디어는 기본적으로 디지털 프로세싱입니다. 반면에 우리 주변에 존재하는 natural signal들 예를 들어, 오디오, speech, 영상들은 전부 다 아날로그로 존재합니다. 따라서 멀티미디어 프로세싱을 하려면 아날로그 시그널을 디지털 시그널로 변환할 수 있어야 합니다. 구체적으로 어떻게 아날로그 신호를 디지털 신호로 , 디지털 신호를 아날로그 신호로 변환하는지에 대해 정리해 보도록 하겠습니다. 아날로그 신호를 디지털 신호로 변환하는 과정은 크게 두 단계를 거칩니다. 1. sampling 2. quantization 이렇게 아날로그 신호를 디지털 신호로 변환하는..

[멀티미디어 시스템] frequency와 tone [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 frequency와 tone에 대해 정리해보도록 하겠습니다. frequency 1초동안 같은 패턴이 몇번 반복하는가를 보여주는 것이 frequency입니다. 사인 함수나 코사인 함수가 이에 해당됩니다. 주기 (T)는 1/f와 같습니다. 두 그림 모두 x축을 시간 t(단위 : sec)에 따라 그려진 그래프입니다. 첫번째 그림 같은 경우 1초 동안 사인파가 한번 반복되기 때문에 1Hz이고, 두번째 그림은 1초에 파형이 다섯번 반복되기 때문에 5Hz입니다. 주파수가 낮다, 높다라는 말은 어떤 의미를 지니고 있을까요? 일단 외형적인 모습을 보면, 왼쪽 그림은 x축이 t이기 때문에 시간에 대해서 파형을 그린 것입니다. 예를 들어서 어떤 시그널을 그림을..

[멀티미디어 시스템]아날로그와 디지털 시그널의 특성, 아날로그 시그널과 특징 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 아날로그와 디지털 시그널의 특성, 아날로그 시그널, 아날로그 신호의 특징에 대해 정리해 보도록 하겠습니다. 아날로그와 디지털 시그널의 특성 아날로그 시그널은 시간에 대해서 연속적인 파형을 가지고 있는 것을 말합니다. 시간에 대해서 연속적이기 때문에 아날로그 시그널을 영어로 continuous-time signal이라고 부릅니다. 아날로그 시그널을 수학적으로 표기할 때 x(t), y(t)과 같은 기호를 사용합니다. 반면에 디지털 시그널은 앞에 있는 아날로그 신호를 샘플링해서 얻은 시그널입니다. 예를 들어, 일정시간 간격마다 위의 아날로그 시그널을 샘플링을 하게 되면 아래와 같은 시그널이 얻어지는데, 이 시그널의 y축을 x [n]이라고 표현합니다..

[멀티미디어 시스템] 시그널(signal), Information to signal transformation [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 멀티미디어 또는 멀티미디어 프로세싱을 가능하게 하는 기초적인 지식들이 존재합니다. 멀티미디어 프로세싱에 대해 본격적으로 배우기 전에, 멀티미디어 프로세싱을 이해하기 위한 기초적인 지식들을 먼저 학습해야 합니다. 이번 포스팅에서는 시그널(signal)과 Information to signal transformation에 대해 정리해 보도록 하겠습니다. signal information은 우리 눈에 보이지 않습니다. 따라서 우리가 정보를 처리한다 하는 개념은 눈에 보이지 않는 추상적인 information을 signal로 변환한 후에 처리하는 과정을 거칩니다. 반면에 signal은 아주 구체적으로 존재하는데, 정보를 전류나 전압 같은 전적인 파형으로 구체적으로 표..

[운영체제] 레지스터, 메인 메모리, 캐시, 보조기억장치, 명령어의 구조와 실행과정 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 레지스터, 메인 메모리, 캐시, 보조기억장치, 명령어의 구조와 실행과정에 대해 정리해 보도록 하겠습니다. 메모리 계층 구조에 따르면, 아래층에서부터 보조기억장치, 메인 메모리, 캐시, 레지스터 순서로 이루어져 있습니다. 메모리 계층 구조의 위에서 아래 순서로 하나씩 살펴보도로 하겠습니다. 레지스터 레지스터는 프로세서 내부에 존재하며, 프로세서가 사용할 데이터를 보관하는 가장 빠른 메모리라고 할 수 있습니다. 메인 메모리 메인 메모리는 프로세서 외부에 존재하며 프로세서에서 수행할 프로그램과 데이터를 저장하거나 프로세서에서 처리한 결과를 저장하는 역할을 수행합니다. 또한, 메인 메모리를 주기억장치 또는 1차 기억장치라고 부르기도 합니다. 메인 메..

[인공지능] 인공지능과 관련된 4차 산업혁명의 특성과 인공지능 전망, 인공지능이 실제 산업에서 활용된 사례 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 인공지능과 관련된 4차 산업혁명의 특성과 인공지능 전망, 인공지능이 실제 산업에서 활용된 사례에 대해 정리해 보도록 하겠습니다. 4차 산업혁명의 특성과 인공지능 초연결상태 :IOT와 관련이 있음 사물 인터넷, 클라우드 등 정보 통신 기술(ict)의 급전적인 발전과 확산으로 인간과 인간, 인간과 사물, 사물과 사물 간의 연결성이 확대되고 있습니다. 2020년까지 인터넷 플랫폼 가입자가 30억 명에 이르렀고 500억 개의 스마트 디바이스 상호 간 네트워킹이 강화되었습니다. 뿐만 아니라 인터넷과 연결된 사물의 수가 2015년 182억 개에서 2020년 501억 개로 증가하였습니다. 인공지능과 빅데이터의 연계 및 융합으로부터 기술 및 산업구조의 초지..

[인공지능]딥러닝의 정의와 구조, 역사 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 딥러닝의 정의와 구조, 역사에 대해 정리해 보도록 하겠습니다. 딥러닝의 정의 딥러닝을 간략하게 정의하자면 머신 러닝 알고리즘 중 심층 인공 신경망을 활용한 것들의 집합이라고 할 수 있습니다. 심층이라는 단어 때문에 deep이라는 단어가 들어가게 된 것입니다. 처음 인공신경망을 구상했을 당시, 사람을 모델로 두고 뇌세포를 관찰한 후, 뉴런에 해당되는 노드들을 만들어놓고 선으로 연결해서 뉴런과 비슷한 형태의 인공 신경망을 모델링하였습니다. 실제 사람의 뇌에는 엄청나게 많은 뉴런이 존재하기 때문에 그 뉴런들 사이에 연결이 전부 이루어진다면 기하급수적으로 연결된 선이 많을 것입니다. 실제로 하나의 네트워크가 완성된다는 것은 각각의 연결된 연결선들에 ..

[운영체제] 컴퓨터 하드웨어의 구성과 레지스터의 종류, 메모리 계층 구조 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 컴퓨터 하드웨어의 구성과 레지스터의 종류, 메모리 계층 구조에 대해 정리해 보도록 하겠습니다. 컴퓨터 하드웨어의 구성 컴퓨터 시스템은 데이터를 처리하는 물리적인 기계장치인 하드웨어와 어떤 작업을 지시하는 명령어로 작성한 프로그램인 소프트웨어로 구성됩니다. 또한 컴퓨터 하드웨어는 프로세서, 메모리, 주변장치로 구성되고, 이들은 시스템 버스로 연결됩니다. 먼저 중앙처리장치(cpu)에 대해 알아보도록 하겠습니다. 중앙처리장치는 컴퓨터 하드웨어 구성 요소 중 운영체제와 가장 밀접한 부분으로, 컴퓨터의 모든 장치의 동작을 제어하고 연산을 수행하는 장치입니다. 중앙처리장치는 프로세서라고 불리기도 합니다. 프로세서의 레지스터를 용도와 사용자가 정보 변경 ..

[컴퓨터 네트워크]분산시스템과 분산시스템의 종류,client-server 시스템에서 server와 client, cloud computing, addressing processes, 응용 프로그램에 필요한 특성, 네트워크 응용 프로그램들의 예시 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서 분산시스템과 분산시스템의 종류, client-server 시스템에서 server와 client, cloud computing, addressing processes, 응용 프로그램에 필요한 특성, 네트워크 응용 프로그램들의 예시에 대해 정리해보도록 하겠습니다. 분산시스템이란 하나의 컴퓨터에서 처리하지 않고 네트워크를 통해 나눠서 하겠다는 것이 분산 시스템입니다. 시스템이란 것은 어떠한 목적을 이루기 위해서 여러 개의 구성요소들이 협력해서 일을 효율적으로 해내는 체계를 말합니다. 예를 들어, 소프트웨어의 경우, user interface 파트, data 저장하는 파트, 데이터 처리하는 파트 세가지 파트로 나뉩니다. 또한, 컴퓨터 시스템의 경우, ..

[멀티미디어 시스템] 멀티미디어의 특성 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 멀티미디어의 특성에 대해 자세히 정리해보도록 하겠습니다. 저번 포스팅에서 학자들이 정리해 놓은 멀티미디어의 특성에는 media integrity(미디어 통합성), duplex communication(양방향 통신), digital information processing(디지털 정보 처리), media interaction(미디어 상호작용), user interface(사용자 인터페이스), massive storage device (대용량 저장 장치) 가 있다고 언급했었습니다. 각각의 특성에 대해 더 자세히 정리해 보도록 하겠습니다. media integrity 멀티미디어의 정의에 따라 두개 이상의 멀티미디어가 결합된 것이기 때문에 media..

[멀티미디어 시스템] 멀티미디어의 정의, 멀티미디어 기술의 역사, 멀티미디어 특성 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 멀티미디어의 정의, 멀티미디어 기술의 역사, 멀티미디어 특성에 대해 정리해보도록 하겠습니다. 멀티미디어란? 멀티미디어 라는 용어는 1966년 Bob Goldstein에 의해서 음악과 조, 영상 그리고 퍼포먼스 아트들이 복합된 공연이라는 의미로 처음 사용되기 시작했습니다. 그리고 1993년도에 Tay Vaughan이라는 사람이 최초로 우리가 현재 사용하고 있는 멀티미디어의 개념을 정립했습니다. Tay Vaughan는 멀티미디어가 컴퓨터에 의해서 만들어진 소리, 텍스트, 그래픽, 애니메이션들의 복합 정보라고 정의했습니다. 근대에 우리가 사용하는 Multimedia 라는 것은 multi와 media가 결합한 단어로, 두 개 이상의 서로 다른 미디어..

[멀티미디어 시스템] 멀티미디어 표준과 표준화 과정, 표준화 기구 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 멀티미디어 표준과 표준화가 이루어지는 과정, 표준화 기구들에 대해 정리해 보도록 하겠습니다. Multimedia Standards ISO(International Standard Organization)라는 국제 표준기구에서 표준에 대해서 다음과 같이 정의했습니다. 표준은 어떤 매체들이나 생산품, 생산 공정 절차들이 그들의 목적에 사용되기 위해서(일관되게 사용되기 위해서) 기술적인 사양을 포함한 합의된 문서라고 정의했습니다. 표준에는 두 가지 타입이 존재합니다. De jure와 De facto라는 두 가지 타입이 존재하는데, 먼저 De jure는 법적인 기준을 의미하며, 모든 제품들은 법적으로 De jure 기준에 따라 만들어져야 합니다. I..

[swift] 함수에서 매개변수 지정, 전달인자 레이블, 가변 매개변수, 데이터 타입으로서의 함수 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에선 swift에서 사용되는 함수의 다양한 모습에 대해 알아보도록 하겠습니다. 매개변수 기본 값 매개변수 기본 값은 함수의 매개변수에 값이 들어오지 않아도 자동으로 매개변수 값을 갖게 되는 것입니다. 매개변수 기본값은 매개변수 목록 중에서 맨 뒤쪽에 위치하는 것이 좋습니다. 매개변수 기본 값이 존재하는 함수의 구조는 아래와 같습니다. 아래의 형태에서 매개변수 2는 기본 값이 지정된 매개변수로 등호를 통해 매개변수 기본 값을 지정해 줄 수 있습니다. func 함수이름(매개변수1 이름: 매개변수1 타입, 매개변수2 이름: 매개변수2 타입 = 매개변수 기본값 ...) -> 반환타입 { 함수 구현부 return 반환값 } 매개변수 기본 값이 존재하는 예시는..

[컴퓨터 네트워크] 인터넷이란 무엇인지, 호스트(엔드시스템), 통신링크, 패킷, IPS와 ISO, 인터넷의 역사 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 인터넷이란 무엇인지와 호스트(엔드시스템), 통신링크, 패킷, IPS와 ISO, 인터넷의 역사, 네트워크의 프로토콜에 대해 정리해 보도록 하겠습니다. 인터넷이란 무엇일까? 인터넷을 여러 가지 방법으로 설명할 수 있지만 가장 쉽게 설명할 수 있는 건 inter + network로 설명하는 것입니다. 여러 개의 네트워크를 연결하는 오픈된 형태를 inter라고 합니다. 따라서 inter network는 여러 개의 네트워크를 연결하는 오픈된 형태의 네트워크를 뜻하게 되겠죠. inter network에서 유래하여 하나의 고유명사화 된 internet이라는 단어가 현재까지 사용되고 있습니다. inter와 반대로 intra network도 존재하는데, in..

[인공지능] 인공지능의 기술 분류 체계와 딥러닝이 주목받게 된 계기 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 인공지능의 기술 분류 체계에 대해 간략하게 정리해 보고 딥러닝이 어떻게 세상의 주목을 받게 되었는지에 대해 정리해 보도록 하겠습니다. 인공지능의 기술 분류 체계 대상을 인식할 때 사용되는 여러 가지 인공지능 기술 방법이 존재하는데 그 방법으로 어떤 것들이 있는지 알아보기 전에 먼저 대상패턴이 인식되는 순서에 대해 간략하게 정리하도록 하겠습니다. 처음에 대상패턴인 2차원 영상신호나 1차원 시계열신호(시간의 움직임에 따라 값이 변화하는 신호)가 들어오게 되면 센싱인터페이스를 거치게 됩니다. 센싱인터페이스는 센서에서 받은 신호에서 정보를 찾아 주는 역할을 합니다. 이후에 들어온 데이터들에 전처리가 이루어진 다음 특징 추출/선택이 일어나게 됩니다. ..

[인공지능] 강인공지능과 약인공지능, 인공지능 기술의 방법론적 분류 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에서는 강인공지능과 약인공지능, 인공지능 기술의 방법론적 분류에 대해 알아보도록 하겠습니다. 강인공지능과 약인공지능 인공지능은 크게 강인공지능과 약인공지능으로 분류할 수 있습니다. 강인공지능(Strong AI)은 인간의 지능을 구현하는 기술 혹은 학문으로 영화 아이언맨에 나오는 자비스가 해당 예시에 들어간다고 볼 수 있습니다. 영화 아이언맨 속 자비스는 지능을 가지고 사람처럼 생각할 수 있는 모습을 보입니다. 이러한 강인공지능은 사람처럼 보일 정도로 사람처럼 생각하는 기계를 만드는 기술이라고 여길 수 있겠습니다. 반면에 약인공지능(Weak AI)은 인간의 지능을 모방하여 특정한 문제를 푸는 기술 또는 학문입니다. 강인공지능처럼 사람과 유사하게 행동할..

[인공지능] 4차 산업혁명과 4차 산업혁명의 특징, 핵심기술분야 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 최근 들어 챗GPT에 대한 관심이 높아지고 있는 가운데, 챗 GPT의 핵심기술인 AI에 대한 관심 또한 높아지고 있습니다. 이에 따라 인공지능 공부를 꾸준히 하기 위해 인공지능 수업에서 배운 내용을 기록해 보도록 하겠습니다. 이번 포스팅에선 4차 산업혁명과 핵심 기술 분야에 관련된 내용을 다루도록 하겠습니다. 4차 산업혁명이란? 위키피디아에 따르면 4차 산업혁명은 정보통신기술(ICT)의 융합으로 이루어 낸 혁명이라고 정의되어 있습니다. 또한, 다보스포럼에 따르면 4차 산업혁명은 3차 산업혁명을 기반으로 한 디지털과 바이오산업, 물리학 등의 경계를 융합하는 기술 혁명이라고 정의되기도 합니다. 4차 산업혁명은 말 그대로 4번째로 일어난 산업혁명이라고 생각할 수도 ..

[swift] 함수 선언 형태, 함수 호출 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 이번 포스팅에선 함수와 여러 가지 함수표현들에 대해 정리해 보도록 하겠습니다. 함수 프로그래밍에서 함수는 특정한 행동을 실행해 주는 코드라고 할 수 있는데, 특정 목적을 지니고 있기 때문에 각각의 목적에 맞게 함수를 사용할 수 있다는 장점을 갖고 있습니다. 먼저 swift에서 사용되는 여러 가지 함수 선언 형태와 함수 호출방법에 대해 정리해 보겠습니다. 1. 함수선언의 기본형태 함수의 기본적인 형태는 매개변수와 매개변수 타입, 그리고 반환타입을 가지고 선언됩니다. 여기서 매개변수란 함수에 들어가는 변수를 의미합니다. 함수이름 뒤 소괄호 안에 매개변수와 매개변수타입을 차례로 선언해 주고 소괄호를 닫아줍니다. 화살표 뒤에 함수에서 구현이 일어난 후 반환되는 반환값..

[swift] Set [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 오늘은 swift에 나오는 Set에 대해 정리해보도록 하겠습니다. Set Set은 Array와 달리 순서가 없이 값들이 집합을 이루고 있는 것으로, 중복되는 멤버가 존재하지 않습니다. 또한, Set은 Array, Dictionary와 다르게 축약형이 존재하지 않기 때문에 Array, Dictionary 처럼 표현형이 다양하지 않습니다. Set을 선언, 생성하는 표현은 아래와 같습니다. var makeSet : Set = Set() Set에서 insert를 사용하여 새로운 멤버를 입력할 수 있습니다. Set은 중복되는 멤버가 존재할 수 없기 때문에 똑같은 값을 여러 번 넣어줘도 하나의 멤버로 들어가게 됩니다. makeSet.insert(13) makeSet.in..

[컴퓨터 구조] 컴퓨터 구조 (IU,OU,CPU,ALU,CU,Register)에 대하여/ 논리 게이트(NOT, AND, OR) [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 오늘은 컴퓨터 구조 (Computer Architecture)와 논리회로 게이트(NOT, AND, OR)에 대해 간략하게 정리해 보도록 하겠습니다. Computer Architecture 먼저 컴퓨터 구조에 대해 알아보도록 하겠습니다. 컴퓨터 구조는 크게 입력 장치(Input Unit) 와 출력 장치(Output Unit), 중앙처리장치(Central Processor Unit)로 나눌 수 있습니다. CPU는 입력장치와 출력장치 사이인 가운데에 존재합니다. 또한, CPU 안에는 ALU, CU, Register가 들어있습니다. ALU는 Arithmetic and Logical Unit으로 산술논치장치라고 부르는데, 말 그대로 산술연산과 논리연산해 주는 장치입니다..

[swift] Any, nil, Array, Dictionary에 관하여 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. swift에 나오는 Any, nil, Array, Dictionary에 대해 정리해 보도록 하겠습니다. Any Any는 모든 데이터 타입을 수용할 수 있는 키워드입니다. var happytoday : Any = 100 //Any로 지정 -> 어떤 데이터 타입이든 가능 happytoday = "행복한 오늘" happytoday = -100.5 nil nil은 없음을 의미하는 단어인데, 0을 의미하는 것이 아닌 그냥 값이 없다는 것을 뜻합니다. 또한, nil 값을 Any로 지정된 변수에 넣으면 오류가 발생합니다. 즉, 위의 예시를 참고해 얘기해 보면 Any로 데이터타입을 지정해 준 happyday이라는 변수에 nil값을 넣을 수 없다는 것입니다. Array Arr..

[swift] swift에서 enum과 enum 표현방법 [내부링크]

eunm은 type(경우)을 나누는 것 예를 들어 enum Animal{ case dog case cat case guineapig } enum Animal에서 강아지, 고양이, 기니피그로 case를 나눌 수 있다. 위에 처럼 각각의 case로 쓰기 귀찮을 때는 아래처럼 콤마로 표현할 수 있다. enum Animal{ case dog, cat, gineapig } Animal enum에서 cat을 출력하고 싶을 때 아래와 같은 방법으로 출력가능하다. let yourAnimal = Anmial.cat print("yourAnimal: \(yourAnimal)") 개발하는 정대리 스위프트 기초 문법 https://www.inflearn.com/course/%EC%A0%95%EB%8C%80%EB%A6%AC-%..

[swift] ios 개발자 준비하는 방법 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 오늘은 ios 개발자를 준비하는 방법에 대해 이야기해보도록 하겠습니다. 1. 취업에서 가장 중요한 것은 가고 싶은 회사가 요구하는 인재가 되어야 한다는 것이다. 2. 기술블로그를 운영한다. 장점: 1. 나의 지식을 정리할 수 있다. 2. 나의 지식 창고를 만들 수 있다. 3. 지속적으로 공부하고 성장하는 사람이라는 것을 어필할 수 있다. 3. 어플을 만들어 출시해본다. 최소기능으로 제품만들기 : MVP (핵심가치로 제품을 만든다.) MVP 장점: 1. 출시확률이 높아진다. 2. 출시 경험이 쌓인다. (애플의 앱스토어 심사지침 참고) - 회사에선 리젝을 당한 경험을 중요시 생각한다. 3. 애플 휴먼 인터페이스 디자인(애플 디자인 가이드라인)을 참고한다. 애플이 ..

[컴퓨터 네트워크/Computer Network] IP란? TCP와 UDP의 차이 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 오늘은 IP란 무엇인지와 TCP와 UDP의 차이가 무엇인지에 대해 정리해 보았습니다. IP란? IP는 Internet Prtocol로 정보를 주고 받는 주소입니다. 주소가 있어야 택배가 배달되는 것처럼 인터넷에선 IP라는 주소를 사용해 데이터를 주고받습니다. 그리고 프로토콜은 약속을 뜻하며, 전자기기 간 주고받는 통신에 대한 약속이라고 할 수 있습니다. TCP와 UDP의 차이 TCP는 Transmission Control Protocol(전송 제어 프로토콜)으로 확실하게 정보를 보내는 프로토콜인 반면, UDP는 User Datagram Protocol의 줄임말이며, 정보를 보내는 것을 확실히 하지 않고 정보를 뿌리는 프로토콜을 말합니다. 다시말하면 UDP는 사..

[컴퓨터 네트워크/Computer Network] 내 컴퓨터로 웹사이트에 접속하는 과정 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 공공장소에서 내 컴퓨터가 IP주소를 얻고 웹사이트에 접속하기까지의 과정을 정리해 보았습니다. 컴퓨터 네트워크 시간에 배운 내용을 바탕으로 정리한 내용입니다. 보다 이해하기 쉽도록 한 가지 상황을 가정하고 네트워크에 접속하는 과정을 설명해보겠습니다. 예를 들어 내가 대학교에서 노트북으로 구글이라는 웹사이트에 접속하고 싶을 때를 가정해보겠습니다. 대학교라는 공간에서 내 노트북으로 구글에 접속하기 위해 진행되는 과정은 크게 다섯 단계로 나눌 수 있습니다. 1. 학교 안에 있는 서버에서 나한테 임시로 IP주소를 준다. 학교에서 임시적으로 IP를 관리하는 시스템인 DHCP를 통해 내 컴퓨터에게 임시로 IP주소를 할당해 줍니다. 여기서 DHCP란 Dynamic Host ..

wix 홈페이지 제작 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. wix홈페이지 제작을 해보고 남기는 후기입니다. 컴퓨터 네트워크 수업시간에 해야할 과제로 wix 홈페이지를 제작한 후(다른 블로그나 홈페이지 이용해도 상관없으나 교수님은 wix 추천하심) 강의 시간에 배운 내용을 기록하는 것이었다. wix라는 사이트가 뭐길래 궁금해서 wix 사이트에 접속해보았다. wix 홈페이지 https://www.wix.com 1. 회원가입하기 2. 사이트유형 선택 및 이름 설정 등 기본 설정하기 사이트 유형은 블로그로 설정했고 이름은 software study로 지정했다. 필요기능 선택은 건너뛰기로 생략했다. 3. 도메인 연결 도메인 연결을 하려면 도메인 주소를 구매하거나 보유중인 도메인 주소를 사용해야 한다. 굳이 도메인 주소를 구매하..

[swift] xcode 설치와 swift 무료강의, 아이패드 swift playground [내부링크]

안녕하세요 개발공부하는 레오존입니다. xcode 설치 후기와 swift 공부를 위해 듣는 강의를 공유해보고자 합니다. 올해 ios 어플 하나를 개발할 목표를 갖고 있습니다. 아이폰을 사용하기 때문에 안드로이드 어플보다 ios 어플을 만들어야겠다고 단순히 생각했는데 ios 네이티브 모바일 개발을 하려면 맥os에서 swift라는 언어를 사용해야 하더라고요. 안드로이드는 코틀린언어가 필요합니다. 크로스 플랫폼(리액트 네이티브, 플러터)으로 ios 개발 할 수 있지만 일단 네이티브 모바일 개발을 먼저 배워보기로 결정! 일단 ios 앱 개발을 하기 위해 swift 언어를 배워야 했고 기초부터 배워나가야 하기 때문에 어디서 시작해야할까 고민하다가 인프런에 있는 무료강의 '개발하는 정대리 스위프트 기초 문법'을 택했..

[swift] 변수와 상수 선언, 기본 데이터 타입 [내부링크]

안녕하세요 소프트웨어 공부하는 레오존입니다. 오늘은 swift에서 변수, 상수 선언방법과 기본 데이터 타입에 대해 정리해 보았습니다. 상수와 변수 선언 swift에서 상수 선언은 let을 통해 이루어집니다. let 상수이름 : 타입 = 값 형태로 상수 선언을 할 수 있습니다. let leozone : String = "Leozone" 상수는 값이 변하지 않고 고정된 값이기 때문에 let으로 상수를 선언한 이후에 값을 할당해 놓으면 그 이후에 값을 변경할 수 없습니다. 이후에 leozone 상수에 할당된 값을 다른 값으로 변경하려 하면 오류가 발생하게 됩니다. 또한, 아래 예시처럼 상수를 먼저 선언한 후 값을 나중에 할당받게 할 수 있습니다. let sum : Int //아직 값을 할당하지 않음 let t..

11.19 [내부링크]

-range범위 설정 시 예를 들어 6번 반복할 때 (0,6)으로 안하고(6)으로 해도 6번 반복됨 random.choice(list이름) : 가로 안에 적힌 list 안에서 랜덤으로 데이터를 골라줌

11.17 배운 내용 정리 [내부링크]

윈도우+R 키 눌러서 실행 창 킨 다음 cmd 입력해서 명령 프롬프트 실행하기 그리고 python 입력해서 파이썬 셸 실행 연산자 : + , - , /, * , //(버림 나눗셈:소수점 이하를 버리는 연산자) %(나머지 구하는 연산자), **(거듭제곱을 구하는 연산자) input에서 입력받은 값은 항상 문자열 형태 sep = ''로 문자열 사이를 구분시켜주고, 문자열 사이사이에 sep = '여기 들어가는 거에 따라' 사이에 들어감 end='' 는 다른 print문들을 한줄로 출력될 수 있게 해줌