최신 글

  • Go: 배열 & 슬라이스 (array, slice)

    배열 배열은 메모리 공간에서 연속된 위치에 있는 값 목록이다. 배열은 자료구조의 일종이며 Go 에서는 같은 타입에 대해 여러 개의 값을 담을 수 있다. 일반적인 형태의 변수를 사용한다면 변수를 여러 개 사용해야 할 것도 배열이 있으면 그 일을 보다 수월하게 처리할 수 있다. 아래의 배열은 5개의 숫자를 받을 수 있는데, Go 의 배열은 크기가 정해져있는 정적 배열이다. 크기가 변할 수 있는 동적은 것은 슬라이스라는 개..

  • Go: 반복문 (for, range)

    for 반복문을 사용할 때는 for 키워드를 사용한다. Go 언어에는 while 문이 없기 때문에 for 문에서 모든 반복을 해결한다. 아래에서 몇 가지 케이스를 살펴보자. 반복문은 초기화식, 조건식, 증감식이 사용된 형태로 사용된다. 대부분에서 언어에서 공통으로 사용되는 형태이다. 반복자가 10 미만인 경우에 한해 반복하며 블록 내부에 있는 코드를 실행하고, 이후 반복자의 값을 하나씩 더한다. package main import "fmt" func..

  • Go: 조건문 (if, switch)

    Go 언어의 반복문과 조건문은 다른 언어에서도 기본적인 사항이지만, 더욱 간결하게 제공된다. 반복문은 for 하나 뿐이며 조건문은 if ~ elseif ~ else, switch ~ case 가 존재한다. switch ~ case 문은 없는 언어도 있기야 한데, 효과는 비슷하더라도 용도가 상당히 다르기 때문에 추가한게 아닐까 싶다. 반복문의 경우 while 문을 for 문에 포함하여 함께 쓸 수 있도록 해놓아서 while 문을 별도로 만들지는 않은 것 같다. if..

포트폴리오

  • 티스토리 구독 서비스 이전에 존재했던, 티스토리 이웃서비스 티네스(Tines) 개발 돌아보기

    티스토리 이웃 서비스, 티네스(Tines) 티스토리에는 지난 수년 간 구독서비스가 존재하지 않았다. 지금은 구독서비스가 추가된지 몇 년이 지났고, 티스토리가 고수하던 티스토리 초대장이 있어야만 블로그를 만들 수 있었던 때도 이미 지나가고 없다. 내가 개발자로 성장하는 동안에도 이러한 구독서비스는 없었는데, 어느 정도 실력이 쌓이고서는 한 번 만들어보자는 생각이 들었다. 티네스 서비스는 2018-2019 년 사이에 운영,..

  • 티스토리 스킨을 원격으로 조작할 수 있다? 티스토리 스킨 API 만들기

    [티도리 프레임워크 개발 - 2부] 티도리를 만들때 또 한 가지 주목해야 했던 점은, 티스토리 스킨 API 를 뜯어보는 일이었다. 치환자는 어떤 경로를 통해 치환되며 사용자에게 어떻게 미리보기를 보여주는가와 같은 것이며 티스토리 스킨 그 자체보다는 티스토리 플랫폼을 이해한다고 보면 될 것 같다. 이는 구현의 관점이 아니라, API(Application Programming Interface)의 관점에서 티스토리 서버와 브라우저가 어떻게..

  • 티스토리 스킨 프레임워크, 티도리는 어떻게 동작할까?

    [티도리 프레임워크 개발 - 1부] 티도리 프레임워크의 대략적인 개요는 설명하지 않는다. 티도리 프레임워크 개발 리뷰 포스트는 티도리 프레임워크의 그 내부와 내가 왜 프레임워크를 이렇게 구성했는지 의도는 물론이고 기술적인 부분도 설명한다. 티도리 프레임워크란게 애초에 나 혼자 개인이 만든 것이고 그 용도 또한 티스토리 스킨 개발로 극히 타겟팅을 분명히 하고 있어서 사용층은 적은 편이라 사실 이 포스트가 도움..

칼럼

  • 개발자가 지양해야 할 공부법

    서문 이번에 이야기하고 싶은 것은 개발자가 지양해야 할 공부법이다. 지향이 아니라 지양임을 다시 한 번 확인하자. 모두가 알다시피 공부법은 사람마다 다르기에 어떻게 공부해야 한다는 것보다도 어떤 공부법은 지양하는 것이 좋다는 것을 쓰는 편이 좋다는 생각이 들었다. 결론부터 이야기하자면 다음과 같다. 함수와 메서드 원형 및 목록 외우기 프레임워크를 위해 언어 공부하기 코드를 똑같이 따라만 치기 직접 코드를 작..

  • 코더가 아닌, 개발자가 되려면

    서문 개발의 세계에는 웹 개발자, 인공지능 개발자, 데이터 엔지니어, 인프라 엔지니어 등 많은 직업이 있다. 하지만 여기서 직업이 아닌 역할군의 의미로 분류되는 것이 있는데, 바로 코더와 개발자다. 이 주제는 상당히 까다로운 주제여서 자칫 논란의 여지가 될 수 있음을 잘 알고 있지만, 나 역시 개발을 수 년간 해보면서 느낀바가 다소 있기 때문에 이 글을 작성해보기로 하였다. 많은 개발자들은 코더가 되길 꺼려한다...

  • 블록체인은 비트코인이 전부가 아니다

    4차 산업혁명에서 사물인터넷(IoT), 인공지능(AI), 자율주행 등과 더불어 이야기하고 있는 것이 바로 블록체인이다. 블록체인 기술은 현재 성장중인 기술이며, 어디까지 갈 수 있을지는 알 수 없다. 나는 개발자로서 블록체인 업계로 진출하고자 하고 있기때문에 이에 관한 관심이 최근 많아진 상태다. 정부에서도 블록체인 시범사업 등을 통하여 여러가지 시도를 해보고 있는 중이나, 일각에서는 블록체인 기술은 실체에 비해..

  • 내가 Go 언어를 선택한 이유

    어서와 Go 내가 수년간 마주한 PHP 를 보내고 잡은 언어는 Go 다. 많은 이들이 알다시피 현재 범용 프로그래밍 언어로써 가장 많이 쓰인다고 볼 수 있는 것이 자바라는 사실은 부정할 수 없을 것이다. 허나 지금 시점에서 자바에 진입하는 것은 미래보다는 현재를 따라가는 것에 급급하다는 생각이 들었다. 미래를 지향하는 내가 그저 현재만을 따라가려고 한다는 것은 내 개발 신념에 어긋나는 일이다. 따라서 나는 Go 언어에..

  • 난 정말 Java 를 좋아한 적이 없다구요

    원래 다른 글을 쓰려다가 그냥 갑자기 생각나서 써본다. 아, 글 제목은 <난 정말 Java 를 공부한 적이 없다구요> 라는 책에서 따왔다. 일단, 난 자바를 싫어하니까. 어찌되었든 내가 자바를 싫어하는 몇 가지 이유를 적어보고자 한다. 사실 대부분은 감정적인 것들이다. 자바를 전혀 안 해봤다면 싫어할 이유는 없겠지만, 자바를 경험했기에 싫어하는 이유또한 생기는 것이다. 내가 좋아했던 PHP 도 안티가 많다. 그들이 PHP 를..

  • 2020년, PHP 언어가 가지는 의미

    일단, 내 얘기를 잠깐 하고자 한다. 난 본래 C 로 개발을 시작했다가, C++, PHP, Javascript, Java, Python 순으로 프로그래밍 언어를 접했다. 그중에서도 PHP, Javascript 는 지금도 잘 쓰고 있는 언어인데, PHP 는 강의도 두 편 낼 정도로 많은 사랑을 쏟아붓고 있는 편이었다. (예상대로 성적은 그닥) 내가 PHP 를 처음 접한 건 2016년쯤이다. 사실 그때도 PHP 의 위치는 그다지 좋지 않았지만, 애초에 개발에 대한 지식 자..

PHP

  • PHP 카테고리 목차 및 문서 정리

    PHP 해당 포스팅은 PHP 카테고리의 목차를 정리하기 위해 작성되었습니다. 물론 카테고리에서 볼 수 있겠지만, 주제별로 나눠 놓으면 조금 더 좋을 것 같았습니다. PHP를 사랑하는 개발자로서 PHP 7+ 로 구성된 PHP 공식 매뉴얼은 내용이 썩 알차지 못하기 때문에 글을 작성하게 되었습니다. 기본 매뉴얼이 영문인 것도 어렵게 하지만, 한글버전이 정상적으로 갱신이 되어있지 않습니다. 이 글은 현재 PHP 7.4 를 기준으로..

  • PHP: declare

    Declare declare 는 언어구조이며 특정 지시어를 코드 블록에서 실행하기 위해 사용한다. 이 기능은 나도 거의 사용한 적 없지만, 가끔 본적이 있어서 적어보기로 했다. 기본적으로 지원하는 지시어는 총 세가지이며, ticks, encoding, strict_types 정도가 있다. 여기서 제일 중요도가 높다고 여겨지는 것은 아무래도 strict_types 지시어라고 볼 수 있는데, 이것을 사용하면 코드가 조금 더 단단해지기 때문이다. ticks PHP 코..

  • PHP: Interpreter, OPCache, ― JIT

    이번 시간에는 기존의 포스팅과는 깊이에서 차이가 있다. PHP 를 문법을 넘어 그 너머 살펴보고 코드가 해석되고 실행되는 과정을 살펴본다. 이를 고차원의 관점에서 볼 것이며 그러한 과정이 어떻게 구현되었지까지는 들어가지 않는다. 하지만, PHP 를 사용하는 개발자라면 알아두어야 할 사항을 살펴보도록 하자. 이 부분은 꽤나 중요한 부분이다. 고수준의 언어를 기계어로 바꾸기 가장 기본적인 부분부터 시작해보자. 일반적..