본문 바로가기
반응형

전체 글95

NoSQL의 특징 #1 데이터베이스를 조금이라도 사용하셨던 분들이라면 한번 쯤 들어보셨을 겁니다. 저 또한 스타트업을 하면서 들어본적이 있는데, 당시에는 '아 뭔가 SQL을 사용하지 않는 개념이겠구나, 내가 사용하고 있는 MySQL의 형태와는 다르겠구나' 하는 정도로 막연히 생각만 했었습니다. 최근에 개발하면서 다시 관심을 가지게 되었고, T아카데미의 MongoDB의 교육을 들을 수 있었습니다. NoSQL의 대표적인 데이터베이스인 MongoDB를 통해서 NoSQL의 특징부터 하나씩 정리해볼까 합니다. 그 다음으로 MongoDB의 전반적인 부분, 설치, 구동, 복원, 회복 기술, 간단한 실습 등으로 구성할 예정입니다. NoSQL의 등장배경 시대가 흐르면서 데이터의 패러다임의 변화도 서서히 변화되고 있습니다. 한정된.. 2016. 6. 6.
Git의 개념과 사용법 1. Intro 프로젝트를 진행하면서 우리는 매번 소스코드를 작성하며 개발을 해나갑니다. 간단한 프로젝트를 혼자서 진행할 경우 별도의 소스관리가 필요없지만 그렇지 않은 경우 소스의 이력 등을 확인할 수 있는 버전관리시스템을 도입하는 것이 효율적입니다. 대부분의 현업에서는 수많은 개발자들과 함께 규모있는 프로젝트를 진행하는 경우가 많기 때문에 Git 등의 버전관리시스템을 사용합니다. 프로젝트의 소스들은 개발자들에 의해 편집될 때마다 그 이력이 기록되고 관리됩니다. 프로젝트의 원활한 진행을 위해 Git에 대한 간단한 개념과 사용법에 대해서 알아보겠습니다. 대체 왜 Git이 어렵다고 하는 걸까요? 사실 버전관리시스템을 잘 다루는 것은 굉장히 어렵습니다. 자칫 잘못하다가는 이력이 뒤엉킬수도 있고 다른 개발자가 .. 2016. 3. 12.
Android Studio 단위테스트(Unit Test) 하기 안드로이드 앱을 개발하다보면 정상적으로 작동하는지 테스트를 하는 경우가 많다. 한 기능을 추가하고 그 기능이 제대로 작동하는지 작은 단위로 테스트를 하기도하고 개발이 전부 완료되었을 때 출시하기 전에 종합적인 테스트를 하면서 앱의 품질을 체크하고 이상이 없으면 출시를 하게 된다. 이 때, 우리는 테스트를 어떤식으로 수행하는가? Spring, Java 웹 개발, Application 등 Java 기반의 소프트웨어를 테스트할 때는 주로 JUnit을 이용하여 단위테스트를 했을 것이다. 하지만 안드로이드 앱의 경우는 어떻게 해야하는가? 아마도 직접 앱을 실행해보고 결과를 확인하면서 진행한 경우가 많았을 것이다. 예를들어 회원가입 기능을 추가하였을 때, 이메일 형식의 ID인지 체크하고 비밀번호를 입력받아 가입시키.. 2016. 2. 21.
Java 객체 직렬화(Serialization) 와 역직렬화(Deserialization) Java의 직렬화와 역직렬화에 대해서 알아봅시다. 정의 Java에서 말하는 직렬화(Serialization)란 과연 뭘까? 말그대로 객체를 직렬화하여 전송 가능한 형태로 만드는 것을 의미한다. 객체들의 데이터를 연속적인 데이터로 변형하여 Stream을 통해 데이터를 읽도록 해준다. 이것은 주로 객체들을 통째로 파일로 저장하거나 전송하고 싶을 때 주로 사용된다. 그럼 역직렬화(Deserialization)는? 직렬화된 파일 등을 역으로 직렬화하여 다시 객체의 형태로 만드는 것을 의미한다. 저장된 파일을 읽거나 전송된 스트림 데이터를 읽어 원래 객체의 형태로 복원한다. 직렬화 가능한 클래스 자. 그럼 직렬화를 해보자! 직렬화를 위한 전제조건이 있다. 바로 직렬화가 가능한 클래스를 먼저 만드는 것이다. 이는 .. 2016. 2. 14.
디자인패턴 - 옵저버 패턴(Observer Pattern) 정의 디자인 패턴 중 옵저버 패턴(Observer Pattern)을 알아보자. 객체지향 설계를 하다보면 객체들 사이에서 다양한 처리를 할 경우가 많다. 예를 들어 한 객체의 상태가 바뀔 경우 다른 객체들에게 변경됐다고 알려주는 경우를 들 수 있다. 상태를 가지고 있는 주체 객체와 상태의 변경을 알아야 하는 관찰 객체(Observer Object)가 존재하며 이들의 관계는 1:1이 될 수도 있고 1:N이 될 수가 있다. 서로의 정보를 넘기고 받는 과정에서 정보의 단위가 클 수록, 객체들의 규모다 클 수록, 각 객체들의 관계가 복잡할 수록 점점 구현하기 어려워지고 복잡성이 매우 증가할 것이다. 이러한 기능을 할 수 있도록 가이드라인을 제시해 주는 것이 바로 옵저버 패턴이다. 이 패턴은 과연 개발을 하면서 밀.. 2016. 1. 25.
아마존 웹 서비스(AWS) Cloud 2016 에 다녀오다 2016년 1월 7일 (목) 현재 다니고 있는 스타트업의 서비스는 AWS 기반으로 구축이 되어있다. 앞으로 국내 뿐만 아니라 중국, 미국 등 글로벌 서비스를 목표로 하는 만큼 AWS를 얼마나 잘 구성하는지, 비용관리를 어떤 방법으로 하는지 등의 전반적인 지식과 정보가 필요했다.마침 AWS Cloud 2016이라는 행사가 코엑스에서 열려 직원들과 함께 AWS에 관한 다양한 정보와 교육을 듣기 위해 참여하였다. 예전에 스타트업을 했었을 당시, 서버 구축 및 운영을 어떻게 할 것인가 고심하던 적이 있었다.안드로이드 앱 개발, 서버 개발을 끊임없이 해야하는 상황에서 서버를 직접 셋팅하고 관리하는 것은 불가능하다고 판단했다.당시 카페24 등의 국내 호스팅을 이용할까 생각했지만 출시 후 갑자기 사용자가 늘어났을 때.. 2016. 1. 8.
[고양이 사료] 코스트코 고양이 사료(커클랜드) 후기 바닥을 보이는 사료통을 보며 이참에 사료를 좋은걸로 바꾸고 싶은 생각이 들었다.사료에 대해서 잘 몰라서 인터넷 검색을 통해 정보를 알아봤는데.....이렇게나 종류가 많고 등급이 나눠져 있었는지 몰랐다.알고보니 내가 여태껏 먹였던 사료는 최하급인 싸구려 마트용 사료ㅠㅠㅠ (모래야 미안ㅠ) 고양이 사료 등급 총 5단계유기농(오가닉) > 홀리스틱 > 슈퍼프리미엄 > 프리미엄 > 마트용 사료 보통 홀리스틱 이상이면 고급 사료라고들 한다.각 단계에 맞는 사료들이 있는데 고급 사료일 수록 가격이 비싸다. 하지만 좋은 성분이 많아 고양이한테는 최적. 사료 등급과 각 등급에 맞는 사료 종류가 이렇게나 많은 줄 몰랐다.이참에 싸구려 마트용 사료에서 괜찮은 사료로 갈아타기위해 검색한 결과 11.34Kg의 대용량과 약 2~.. 2015. 12. 10.
Android Studio에서 나만의 Library 만들어보기 안드로이드 앱 개발을 하다보면 다양한 오픈소스 라이브러리를 이용할 때가 많다. 주로 Github에서 Library를 받거나 Gradle import 이용하면서 가끔씩 내가 만든 소스를 Library화 시켜보면 어떨까 라는 생각을 하게됐다. 말 나온 김에 한 번 만들어보자! Android Studio를 이용하여 Library 프로젝트를 생성하고 산출물인 AAR(Android Archive package) 파일 생성하는 과정까지 실습해보겠다. 1. 새 프로젝트 생성 첫번째로, Android Studio로 Library 프로젝트를 생성해야한다. New Project를 클릭하여 새로운 프로젝트를 생성한다. activity는 있어도 되고 없어도 된다. 여기서는 테스트용이므로 No Activity 선택. 2. Gr.. 2015. 12. 10.
나는 프로그래머다 세미나 참가 강남 넥슨 아레나에서 열린 개발자들의 모임과 세미나에 참석했다. 나는 프로그래머다 라는 팟캐스트 방송을 하고있는 세 엠씨가 그 주인공이었다. 오후 약 1시부터 시작한 강연. 임백준님의 나는 프로그래머다라는 강의로 시작됐다. 즐기는것이 중요하다고 강조하시는 임백준님. 그리고 세 MC들의 이야기가 이어졌다. 미국과 일본, 그리고 한국의 개발분위기등에 대한 토크가 이어졌다. AWS의 클라우드 서비스소개. 잠시 휴식이주어지고 내가 듣고싶어하던 해외에서 취업하기 섹션이 시작됐다. 김용욱이란 분이 강의 하셨는데 Github를 통한 오픈소스 방법과 이를 통한 취업과정에대해 상세히 설명해주셨다. 누구나 오픈소스 프로젝트에 참여할 수있다는 것을 강조하시면서 나도 한번 참여해봐야 겠다는 생각을 했다. 다음 섹션으로 스타트.. 2015. 10. 31.
[창의세미나S] 더 지니어스 출연자, 멋쟁이 사자처럼 이두희 대표의 강연 더 지니어스 시즌2 출연자이자 멋쟁이 사자처럼 대표인 이두희씨의 강연이 있는날. 모처럼 판교 공공지원센터 건물에 방문했다. 나는 해커다라는 주제로 강연을 하는데 프로그래머로서의 이야기와 지니어스의 비하인드 스토리를 한다고하니 기대가 되었다. 강연 전 공연 이두희 대표의 강연이 시작되었다. 프로그래머로서의 이두희의 스토리를 들을 수있었다. 메르스에대한 통계를 보여주는 사이트를 만들었던 일들, 개발자가 되기전 생활들 많은 이야기를 들었다. 의사결정에 있어서 어떤것이 더 좋은지 등을 알수있었다. 김태희 사진을 해킹한 사건의 비하인드스토리를 들었을 때는 모두가 빵 터졌다. 마지막으로 컴퓨터자체가 목적이 되기보단 도구로 생각하라는 말이 가장 와닿았다. 컴퓨터로 이뤄낼수 있는 가치가 무궁무진하다. 약 1시간정도의 .. 2015. 10. 22.