로그인

검색

Site
2012.08.02 21:32

소스 공유 사이트

조회 수 1313 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 게시글 수정 내역 댓글로 가기 인쇄

http://bit.ly/ov36Gk


코딩을 하다가 막히는 부분이 있어서 질문을 하고 싶거나,
혹은 내가 작성한 코드를 다른 사람들에게 보여 주어야 할 때가 있습니다.

그런데 코드를 공유한다는 것이 말처럼 쉽지만은 않죠.

파일 자체로 공유를 하려면 상대에게 메일을 보내거나 메신저로 전송하는 방법이 떠오르지만,
한 명 혹은 소수의 사람들에게 전달하는 거면 몰라도 온라인 커뮤니티 같은 곳에 공개하긴 어렵습니다.

파일을 별도의 서버에 업로드한 다음 그 링크를 따서 보내 주는 건 텍스트를 공유하기 위한 작업 치곤 거창합니다.

그렇다고 그냥 게시판에 Ctrl+C & Ctrl+V 신공을 쓰기엔 Syntax Highlighting 같은 게 안 되는 건 둘째 치고
들여쓰기 같은 것들이 무시되고 폰트 역시 고정폭 폰트가 적용되지 않는 등 보기가 상당히 불편합니다.
게다가 HTML 관련 문자가 섞여 있을 경우 표시가 안 될 수도 있고, 코드를 다른 사람이 복사해 가기도 어렵습니다.

아래 이미지는 게시판에 붙여넣기한 코드와 텍스트 에디터에서 보이는 코드의 '가독성' 차이를 극명하게 보여 줍니다.
(이미지들은 모두 클릭하면 크게 보입니다 ^^)




그래서 해외 네티즌들은 오래 전부터 소스 코드 공유 서비스들을 사용하고 있습니다.
소스 코드 전체를 게시판 글이나 답글 박스에 붙여넣기하는 것이 아니라, 공유 서비스에 소스를 올린 후
embed 형태로 삽입하거나 혹은 '그 글의 링크' 만 복사해서 공유하는 것이죠. 아래처럼요 ^^




실제 소스 코드 링크로 들어가 보면 아래와 같은 화면을 볼 수 있습니다.
그냥 게시판에 소스 코드 전체를 붙여넣기하는 것보다 훨씬 알아보기도 쉽고 공유하기도 편합니다 ^^




이런 서비스들을 흔히 ‘Pastebin‘ 이라고 지칭하는데, 클립보드의 내용을 다른 사람들과 공유하기 위한
임시 저장 및 공개 장소, 즉 인터넷 클립보드로서의 역할을 수행한다는 의미로 이해하면 되겠습니다.

이러한 서비스들은 자체적으로 Syntax Highlighting 을 지원함은 물론, 코드를 텍스트 형태 그대로 보여 주어
복사하기 쉽도록 하거나 아예 파일 형태로 다운로드할 수 있도록 해 주기 때문에 활용 가치가 상당합니다.

상당히 많은 서비스들이 존재
하며 개중엔 codepad 나 jsFiddle 과 같이 단순한 인터넷 클립보드 이상의
기능들을 지닌 것들도 많이 있습니다. 하지만 이 글에서는 ‘소스 코드 공유’ 라는 기본에 가장 충실한,
그렇기에 간편하게 사용할 수 있는 서비스 '딱 두 가지' 만 소개하고자 합니다.



1. Pastebin (http://pastebin.com)

2002년에 만들어진, 가장 초창기의 소스 코드 공유 서비스 중 하나입니다.
회원 가입이 가능하며 Pro 회원은 유료이지만, 딱히 가입을 안 해도 기능상 큰 제한 없이 사용 가능합니다.
Public List 가 존재하며 공개 설정을 바꾸지 않을 경우 전체 공개로 등록, 노출됩니다.

─ 장점:
    등록자, 코드의 용량, 조회수, 등록된 시간 등을 확인 가능
    자신이 올린 코드 수정 및 삭제 가능 (단, 로그인 후 작성했던 것들만)
    자신이 지금까지 올렸던 코드들을 조회 및 관리할 수 있음 (단, 로그인 후 작성했던 것들만)
    Wrap Lines 기능이 있음
    다른 HTML 페이지에 Embed 가능
    Raw File (서식 등이 전혀 없는 원본 그대로의 텍스트) 보기 및 다운로드 기능
    클립보드 복사 기능 제공됨
    글의 만료 시간을 설정할 수 있음 (해당 시간이 지나면 글이 자동 삭제되도록 하거나, 혹은 영구 보존할 수 있음)
    애플리케이션 및 API 지원이 아주 좋음. 특히 애플리케이션의 경우 다양한 플랫폼 (심지어 WebOS 도) 지원
    Layout width 버튼을 클릭하면 고정폭 · 유동폭 전환 가능
    Fork (라기보단 해당 소스 코드를 별도 글로 복사) 기능 있음

─ 단점:
    코드 안에 링크가 있을 경우, 등록할 때 스팸 방지용 Captcha 를 입력해야 함
    등록 가능한 소스 코드의 용량이나 비공개 가능한 코드의 개수 등에도 제약이 있음
    광고 배너가 많이 있는데, 크기도 큰 데다 중요한 위치들에 딱딱 박혀 있어 Adblock 같은 게 없다면 많이 거슬림
    Syntax Highlighting 테마를 지원하지 않음







2. Pastie (http://www.pastie.org)

Pastebin 에 비해 훨씬 심플하고 광고가 많이 박혀 있지도 않아서 개인적으론 더 선호하는 서비스입니다
이런 류의 서비스들이 으레 그렇듯 별도의 회원제는 없으며, 서비스 자체도 엄청나게 단순합니다.
Ruby on Rails 로 만들어진 서비스인데다 freenode IRC 의 #rubyonrails 에서 주로 쓰이기 때문에
등록되는 코드 중 많은 수가 Rails 관련 코드들입니다만, 기본적으로 주요 언어들은 모두 지원합니다.

─ 장점:
    극도로 심플하며 사용하기 편함
    Captcha 같은 게 없음. 배너는 있긴 한데 전혀 신경쓰이지 않음
    Syntax Highlighting 테마 지원. 테마의 다양성이 넓은 편
    Ruby on Rails 관련 키워드들에 대한 Syntax Highlighting 지원이 특히 좋음
    다른 HTML 페이지에 Embed 가능
    Raw File 보기 및 다운로드 기능
    역시나 Fork (라고 할 만큼 거창하진 않지만) 기능 있음

─ 단점:
    Wrap Lines 기능이 없으며, 코드가 화면 폭을 넘어가는지의 여부를 바로 알기 힘듬
    별도의 부가 기능이라고 할 만한 게 없음. 딱 코드를 올려서 공유하는 정도에 그침
    등록자, 코드의 용량, 조회수, 등록된 시간 등의 정보 확인 불가능
    해당 글의 Permalink 를 모르거나 잊었을 경우 찾기가 어려움 (검색을 통해 찾는 수밖에 없음)
    등록한 코드는 수정 및 삭제 불가 (단, 올린 직후의 글에 한해 수정만 가능)
    클립보드 복사 기능이 없음. Raw File 을 연 다음 직접 코드를 선택해 복사해야 함
    API 지원을 하긴 하지만, 그 정도가 너무 부실함. 설명 페이지조차 하나 없음




?

List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 Tool/etc Programming 게시판 관련 2 MoA 2014.11.01 5309
288 API/MFC 후킹 링크 MoA 2013.07.28 1498
287 Python 화면 캡쳐 소스 MoA 2014.01.14 1382
286 API/MFC 프린터 출력하기 MoA 2013.10.16 4404
285 API/MFC 프로세스 - 생성과 종료 그리고 이것 저것 너울 2011.10.12 2175
284 API/MFC 프로그램 배포용으로 만드는 과정 너울 2012.01.20 1611
283 Site 프로그래밍 관련 사이트 MoA 2012.08.02 641
282 C/C++ 파일 입출력 MoA 2013.07.28 1177
281 Python 파이썬에서 C모듈 사용하기 MoA 2014.02.10 2544
280 Deeplearning 파이썬 머신러닝 무료 강의 (7시간) OBG 2022.07.06 460
279 Site 특정 자료형의 데이터를 binary(hex값, 2진수값)으로 변환 Naya 2012.11.15 1112
278 Tool/etc 텍스트 에디터 Sublime Text 2 너울 2012.03.30 1134
277 API/MFC 태스크 대화상자 (Task Dialog) MoA 2013.10.22 998
276 Algorithm 큰 수 구하기 알고리즘 Naya 2012.08.02 1320
275 Tool/etc 쿠버네티스 클러스터 OBG 2022.11.11 1113
274 C/C++ 코드 실행 시간 계산 Naya 2012.08.02 743
273 C/C++ 코드 실행 시간 계산 Naya 2012.09.27 1261
272 Tool/etc 컨텍스트 스위칭 (Context Switching) MoA 2013.07.28 1799
271 Web 카카오톡 웹버전 만들기 OBG 2022.11.09 754
270 Deeplearning 추천(Recommendation) 시스템 - 알고리즘 Trend 정리 OBG 2021.08.03 734
269 Deeplearning 추천 시스템 OBG 2023.03.30 934
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 15 Next
/ 15