목록전체 글 (67)
곰돌이 놀이터
1. 웹서 비스( WebService ) 란? 서로 다른 컴퓨팅 환경에서 사용되는 모든 애플리케이션들이 직접 소통하고 실행될 수 있도록 동적 시스템 환경을 구현해 주는 소프트웨어 컴포넌트 단순 객체 접근 프로토콜(SOAP), 웹 서비스 기술 언어(WSDL), 전역 비즈니스 레지스트리(UDDI) 등의 표준 기술을 사용하여 네트워크에 연결된 다른 컴퓨터 간의 분산 컴퓨팅을 지원하는 소프트웨어 및 기술들이다. 웹 서비스는 논리적 응용 프로그램의 단위로 데이터와 서비스를 다른 응용 프로그램에 제공하고, 응용 프로그램의 작성 시 HTTP, XML, SOAP와 같은 표준화된 웹 프로토콜과 데이터 형식을 사용함으로써 운영 체계(OS) 등 특정 플랫폼과 상관없이 모든 컴퓨터 간 원활한 데이터의 흐름을 보장해 준다. 요..
XML 의 정의 ■ Extensible Markup Language 의 약자로 W3C 권고 확장성 있는 마크업 언어 ■ W3C가 인간과 응용프로그램간, 혹은 응용프로그램 간에 정보를 쉽게 교환하기 위해 만든 데이터 교환 포멧 ■ eXtensible : 데이터를 설명하는 태그(Tag)를 사용자 마음대로 정의할 수 있음, 다른 마크업 언어 생성 가능 XML과 HTML의 차이 ■ XML은 data를 전달하는 데에 포커스를 맞춘 언어 ■ HTML은 data를 표현하는 데에 포커스를 맞춘 언어 ■ XML은 HTML과 달리, tag가 미리 정의되어 있지 않다. XML 언어의 특징 ■ 표준성 : W3C에서 표준화를 주도하며, SGML 과 HTML 의 한계를 극복하기 위하여 만든 표준 인터넷 언어 ■ 분리성 : 표현과..
기술 담당 최고 책임자 [技術擔當最高責任者, chief technical officer, CTO] 기업 내 기술적 의사 결정의 전 과정을 책임지면서 최고 경영자(CEO)를 기술적 측면에서 보좌하는 최고 기술 경영자. 내부 기술 개발이라는 협소한 관점의 관리자가 아니라 대내외적으로 기술 관련 책임을 지는 전사적(全社的) 차원의 경영자이다. ■ CTO의 미션은 무엇인가?CTO의 임무는 다음 3가지 축으로 요약될 수 있다. A) 회사의 장기적인 기술 전략 책임자CTO는 기업의 기술 전략을 제대로 유지/관리하고, 명확하게 구체화하고, 또한 지속적으로 올바른 방향으로 발전시켜 나가야 한다.CTO는 역동적으로 진화하고 있는 경쟁 영역에서 회사가 최고의 기술 성과를 지속적으로 발휘할 수 있도록 해야하는 책임이 있다...
CI ( Continuous Integration, 지속적인 통합 ) CI 란 팀의 구성원들이 작업한 내용을 정기적으로 통합하는 것을 의미한다.풀어서 이야기하면 소프트웨어가 거대해지고 복잡해지면서 팀 단위로 개발을 하게 되었고 분업과 협업이 필수가 되면서 하나의 프로젝트를 여러 명으로 구성된 한 팀이 작업을 하게 되고 분업과 협업 과정에서 일을 나눠 각각 할당된 부분만 작업을 하게 되었다. 그리고 팀멤버들은 자신이 담당해서 하고 있는 부분의 소스코드를 정기적으로 GIT, SVN 과 같은 형상 관리 시스템( SCM, Source Code Management ) 에 Submit 하는데 이 각각의 팀멤버들로부터 Submit된 소스코드들을 정기적으로 통합하는 것을 CI라고 하고 이것을 시행해주는 프로그램을 CI..
개발자 로드맵 기존 기술들을 따라가기도 벅찬 상황에 새로운 기술들 또한 끊임 없이 생겨나고 있다.이와같은 상황에서 우리는 무엇을 해야하는지 어떤 기술에 집중을 해야하는지 혼란스러울때가 많이 있다.때문에 개발자가 되기 위해 방향과 학습해야 할 기술들을 정리해놓을 필요가 있다고 생각했다. 아래에 분야/역할을 중심으로 로드맵이 작성되어있는 사이트를 소개하고자 한다. ■ 2018년 웹 개발자가 되기 위한 로드맵 ※ 데브옵스 기업들은 변화하는 세상 속에서 각각 업무의 효율적인 방법론을 선택해왔고최근까지 기업에서 가장 많이 사용되는 방법론은 '애자일 방법론' 이다.애자일 방법론은 고객과의 협력 그리고 프로세스 등 여러가지를 고려하는 개발 방법론인데 운영자와 개발자가 떨어져 있어 소통하기란 어려움이 따랐다. 개발의 ..
자바스크립트 프레임워크 프레임워크를 풀어서 말하면 설계의 바탕이 되는 기반코드와 개발자가 원하는 방식대로 이를 맞춤변환(커스터마이징)할 수 있는 라이브러리의 통합체라 할 수 있다. 자바스크립트 프레임워크는 날로 그 활용성이 높아가는 자바스크립트의 구현을 좀더 쉽고 빠르게 하면서 개발 차원에서의 효율성과 사용 차원에서의 편의성을 높이고자 하는 목적으로 개발되었다. ■ 대표적인 자바스크립트 프레임워크, Angular와 React 1. Angular 단일 페이지 애플리케이션을 더욱 쉽게 작성하는 것을 목표로 하는 자바스크립트 프레임워크는 구글이 지원하고 있는 오픈소스 웹 어플리케이션 프레임워크로 Single Page Application 형태의 웹 어플리케이션 개발 프레임워크이다. React에 비해 활용의 자..
라이브러리 라이브러리는 사전에 만들어진 코드의 집합이라고 할 수 있다. 개발자는 필요시 공개된 라이브러리를 자신의 프로그램에 호출하여 사용할 수 있다. ■ 대표적인 라이브러리 요즘 많이 사용되는 컴퓨터 프로그래밍 언어인 파이썬의 경우, 많은 라이브러리를 제공하여 개발자들에게 큰 도움이 되고 있다. 데이터 분석과 처리를 할 때 유용하게 사용할 수 있는 numpy와 pandas, 각종 수학계산 함수를 제공하는 scifi, 다양한 그래프를 단순한 코드 몇 줄로 쉽게 그릴 수 있게 해주는 matplot등 많은 라이브러리들이 제공되어 해당 언어를 사용하는 사람들이 만들어내는 결과물의 폭을 넓히고 그 품질을 많이 향상시키는 역할을 하고 있다. 프레임워크 프레임워크는 직역하면 뼈대라는 의미를 가지고 있는데, 컴퓨터 ..
알고리즘이란?알고리즘의 정의 알고리즘이란 컴퓨터를 이용하여 문제를 풀기위한 방법을 과정이나 절차를 이용해 만들어 놓은 것으로프로그래밍을 통해서 어떤 문제를 해결하려면 기본적으로 다음과 같은 순서로 작업을 합니다. 문제 정의 -> 알고리즘 설명 -> 정확성 증명 -> 성능 분석 문제 정의 (Problem Definition) : 해결하고자 하는 문제. 입력과 출력의 형태로 정의될 수 있어야 하고 컴퓨터가 수행할 수 있는 형태로 전환이 가능해야한다. 알고리즘 설명 (Algorithm Description) : 문제를 풀기 위해 수행해야하는 작업을 순서대로 나열하는 것. 일상 언어나 수도 코드등으로 표현. 정확성 증명 (Correctness Proof) : 주어진 알고리즘을 수행했을 때 문제를 풀 수 있는지 ..