개발 툴 소개

프로그래머가 알고 있으면 도움이 되는 툴 100가지

AC 2019. 3. 4. 15:16


에디터

Vim

vim가 있으면 대부분의 프로그래밍이 가능하다.

vim습득 하는데 시간이 걸린다는게 안좋은점이다.

에이터 플러그인

  • neocomplcache.vim
  • quickrun.vim
  • vimproc + quickrun
  • unite.vim

MacVim

Emacs

VIM, Emacs는 특별 하다라는 느낌이네요

에디터 플러그인

  • anything.el

CocoaEmacs

Mou

Markdown를 쓰기위한 에디터

SublimeText2

CotEditor

무료. 완전 가벼운 에디터.
간단한 문장 수정에 적합하다.

Coda

쉐어. 에디터+IDE 같은 느낌. 디자인을 확인하면서 편집이 가능하다.FTP,SSH,SVN등도 함께  쓸수 있어서 디자이너에게는 이걸로 충분.

TextWrangler

Espresso

Espresso 는 리얼타임으로 CSS를 프리뷰하면서 쓸수 있는 에디터.

JSON Editor

간단하게 JSON을 조작하는 에디터.


IDE(종합개발환경)

Xcode

iPhone어플을 개발할 마음이 없어도 넣어두면, 서로 차이가 나는 소스를 간단하게 다룰수 있는 FileMerge어플이랑opendiff코멘드등 덤으로 붙어 있기 때문에 추천

Eclipse

Eclipse나NetBeans등 우선 사용하는 파. 그래서 어느쪽이 좋은지를 결정하는거보다 '이건 뭐가 뛰어나지?'를 보고, 경우에 따라서 바꿔 가며 쓰자.

http://www.eclipse.org/

NetBeans

Eclipse나NetBeans등 우선 사용하는 파. 그래서 어느쪽이 좋은지를 결정하는거보다 '이건 뭐가 뛰어나지?'를 보고, 경우에 따라서 바꿔 가며 쓰자.

PhpStrom

PHP나JavaScript를 시작하는 웹 프로그래머용 IDE。

Cloud9

아직 조잡하지만, 브라우저에서 실행할수 있는IDE. GitHub나Bitbucket등과 연동

WebStorm

현재 IDE중에서는 JavaScript 부분의환경이 최고. 자매품 PHPStorm도 평가가 좋다,
내부 소스 프로그램 수정,버그 수정등이 간단하게 되지만, 유료 입니다. 써볼만한 가치는 있다고 생가갑니다...

Nide

node.js IDE



SQL, DB

Sequel Pro

MySQL클라이언트. phpMyAdmin가 필요없어 졌다.

Navicat

MySQL클라이언트

MySQLWorkbench

EER그림도 그릴수 있기때문에 데이터 베이스 설계에도 사용할수있음.

HeidiSQL

Windows용 MySQL클라이언트 인데요,HeidiSQL
JDBC/ODBC등없이 이거 하나로 접속 가능하며, 스프레드 시트를 순차적으로 열어가는 형태의 브라우징이 가능하다.

그렇기 때문에 "실제 DB데이터를 보면서 데이터를 조작한다" 라는 점이 직감적으로 가능해, 매우 편리.

SSH터널 접속, 서버 간의 데이터 덤프 & 리스토어도 가능하기 때문에 , 운영 작업은 거의 이걸로 완결.
단, 좀 불안정하기 때문에 , 거의 멈추지 않는 작업에는 적합하지 않을지도...
(그런건 서버에서 해! 라고 한소리 들을것 같네요)

adminer

phpMyAdmin랑 같은 브라우저 베이스의 DB클라이언트.

1파일에서php가 움직이는 환경이라면 OK, 무엇보다도 가볍기 때문에 편하게 자주 쓰고 있다.
MySQL,PostgreSQL, SQLite, MS SQL,Oracle랑 의외로 무슨 SQL이든 사용이 가능한데 어째서인지 마이너.

SQLEditor

ER도 작성 툴. 생SQL나ActiveRecord Model를 출력할수있다.

Base.app

SQlite용 GUI관리 툴.

ERMaster

DB관리 툴。
Eclipse의 플러그인인데, DB관리+도큐멘트화가 엄청나게 편해진다.

The SQLite Sorcerer

SQLite용 클라이언트. AIR제.

PHP

MAMP

xhprof

php 로 쓰여진 Web어플리케이션 병목지점을 조사할때 필수

xdebug

PHPUnit

사용할수 있는 테스트 프레임 워크가 이것 밖에 없음

Phing

php 의 빌드 툴,테스트 환경이나 본방 환경등의 환경을 환경채로 부트스트랩 지시나, 종합 테스트 설정에 쓰임





Ruby

travisCI

계속 통합

bundler

어플리케이션 마다 필요한 Gem 을 관리 할수있다. 디플로이 장소 구축에 편리

Capistrano

디플로이,PHP 든지 다르 언어로 쓰여진 어플리 케이션도 설정에 따라서 이걸로 디플로이 가능

Pry

irb에서 갈아 탐.

watchr

guard

gist


Java

JavaDecompiler

JavaScript

node.js

JavaScript의 대화 실행 환경, 어쨋든 빠르게 JS의 동작 체크 하고싶을때 편리

SpiderMonkey

JavaScript의대화 실행 환경 어쨋든 빠르게 JS동작을 체크하고 싶을때

ringo.js

JavaScript의대화 실행 환경 어쨋든 빠르게 JS동작을 체크하고 싶을때

jsPerf

JavaScript의 벤치 마크를 얻을수 있는 사이트. js 벤치마크를 얻어서 공개하는데 편리.

jsFiddle

브라우저내에서 JavaScript 실행・HTML/CSS의 마크업 같은게 가능하다

Google Closure Compiler

JavaScript를 압축할 일이 있으면 、Google Closure Compiler

YUI Compressor

JavaScript도 CSS도 압축할 일이 있으면 、YUI Compressor

impress.js

enchant.js

npm

forever

coffee-script

rvm

nvm

nave

Python

pypy

python에서 쓴 프로그램이 좀 느리다고 생각하면 일단 한번 사용해 본다(django가 움직이기 때문에 관계가 있지요?)

virtualenv, virtualenvwrapper, pythonbrew

python이라 하면 virtualenv, virtualenvwrapper。최근에는 pythonbrew을  쓴다

SimpleHTTPServer

Python라면、SimpleHTTPServer가 편한거 같습니다.

pip

ipython

scipy

werkzeug

CSS, HTML, LESS

Less.app

LESS을 쓸일이 있으면 LESS.app도 편리함.

Twitter Bootstrap

자신은 프로그램에 집중 하고싶다, 나름대로 멋도 있는게 좋다 라는 경우에는 Twitter Bootstrap로 템플릿을 간단하게 작생해 두면 좋을지도.

zen-coding

HTML/CSS의 입력 지원. IDE가 지원 하거나、에디터에 플러그인으로 넣을수 있다.



테스트

xUnit계

XUnitTestPatterns든지 읽어두면 어느 언어의 xUnit계의 테스트 프레임 워크도 이해하기 쉬워짐

xSpec계

JBehave이나 RSpec이나. PHP에는 없음.Wikipedia영어판BDD가 알기 쉽다.

QuickCheck계

프로그램 구조 그대로 기술해서,랜덤으로 인수를 부여서해서 검증하는 테스트 프레임 워크.
오리지널은 Haskell부터인데,메이저 언어 에서도 이미 꽤 사용중
Haskell 이외의 언어에서 의욕적으로 쓸수있도록 개발하고있는YelloSoft 가 알기 쉬울지도


네트워크

Hoster

hosts파일을 GUI로 설정하는 어플.

wireshark

wireshark, tshark는 사용방법만 외워두면 초 강력.

HTTP Client

MockSMTP

가상 로컬SMTP. 인터넷에 연결되지 않아도 SMTP로 동작을 체크가능

FTP, SSH, SCP

~/.ssh/config: SSH주변 설정을 정리해두면 엄청 편리

PuTTY

WindowsのSSH는 PuTTY파 이지만、다른 사람에게 추천하는건 Poderosa

Poderosa

WindowsのSSH는 PuTTY파 이지만、다른 사람에게 추천하는건 Poderosa

ClusterSSH

Transmit

리모트 한 상태에서 파일을 더블 클릭하면 파일을 로컬에 보존→열림、파일 보존→자동적으로 업로드등이 가능, 간단한 개발에는 꽤 편리.

그리고 접속 하는쪽 디렉토리를 Finder에 마운트 할수있는 공포의 기능등. 물론 ssh도 대응

grep

rak

Ruby계의 툴  rak 코멘드. grep검색 툴.

ack

better than grep

jvgrep

자화자찬 인데요,grep로jvgrep. go언어로 쓰여져 있기때문에 linux에서도 windows에서도 똑같이 동작.
일본어 엔코딩은 거의 지원해주고 있고, 여러가지 엔코딩 파일이 섞여있을때의 grep등, 통칭 쓸때없는 문자를 포함한 정규표현에도 올바르게 움직입니다.(한국어도 있나 싶어서 검색해봤지만 딱히 눈에 띄이진 ㅇ

Tips

export GREP_OPTIONS='--color=auto'
에서fgrep/egrep/grep했을때에 매치했을때 단어가 컬러로  하이라이트 되도록 표시 된다

grep/fgrep/egrepの-o 옵션. 매치한 단어만 유출 할수있다, 이것은 한줄로 완성된 프로그램을 쓸때 사용할수 있다.egrep은 확장정규표현 이기때문에 Perl이든지 Ruby같은 편리한 정규표현을 사용할수있다. fgrep은 고정 문자열검색할때 빠른다.
詳細: http://d.hatena.ne.jp/lurker/20070131/1170201200

통계처리

수만건 정도의 로그를 간단하게 처리하고 싶을때 편리
중앙값, 표준편차등도 한방에 구할수 있다. 데이터를 기준으로 히스토그램, 3D그래프등

R

Octave

터미널

TotalTerminal

Mac의 터미너를 바로가기키로 바로 불러낼수 있습니다.

iTerm2

percol

percol 가 터미널로 사용할수 있는 범용적이고 편리한 툴입니다. 어떻게 사용하는지에 따라 지식/센스등을 시험받는 기분이 듭니다.



Subversion

Cornerstone

SVN클라이언트

Versions

SVN클라이언트

git

SmartGit (Windows)

Git 클라이언트

SourceTree (Mac)

Git 클라이언트

GitHub

자신이 쓴 소스코드를 공개

tig

git를 사용할거라면 tig가 없으면 살아갈수없다.

GitX

Tower

github for mac

브라우저

SRWare Iron

UserAgent를 바꿀수있는 Chrome같은 사용방법으로 쓸수있다.


패키지관리

MacPorts

프리. 패키지 관리 툴. 컴파일에 시간이 걸리지만 옛날부터 사용하고 있기떄문에 손 놓을수 없는 툴.

Homebrew

UNIX의 코멘드등을 간단하게 사용할수 있다.

그외 개발 툴

codekit

CodeKit automatically compiles Less, Sass, Stylus, CoffeeScript & Haml files.

pandoc

적으면서 모은 markdown메모를
도큐멘트로 만들때에 pandoc을 사용해서html화 한다.

Integrity

고속 링크체커. 디플로이 전의 필수 아이템

Omnigraffle

쉐어 . 도큐멘트 작성 툴. 이걸로 사용서를 만들때 엄청 빠르게  끝낼수 있음.

osx-gcc-installer

Mac에서「xcode는 필요없지만, gcc만은 원해」라고 생각했을때 죽을만큼 고마운  툴. 우선 Watch 나 즐찾

VMware + Gentoo (or Ubuntu, Debian, etc)

ImageOptim

이미지 파일을 경량화

HTML서버로서의 Dropbox

HTML+CSS+JS를 글로벌 액세스로 디버그 할려고 생각하면, 결국 Dropbox의Public 폴더가 가장 간단한 하다는걸 깨달았습니다.(스마트폰용 사이트 등)

그외 작업 효율화 관계 툴

Caffeine

BetterTouchTool

ClipMenu

Limechat for mac osx

Preferences -> Log -> Show image links in inline을 사용함으로 바꾸면
유저명에 대응한 영상을 Twitter에서 가져와서 인라인으로 전개해준다.
물론 틀린 프로필 이미지가 전개 되는경우도 있지만, 유명한 사람이 많은IRC같은거라면 대체로 맞다

QuickSilver

Quicksilverは、어플리케이션을 실행시켜、컴퓨터 ・파일조작、e-mail 임시저장과 송신과 같은 작업을 키보드로 빠르게 처리 할수있다.

Quix

quix 편리하지만 사용하는 사람을 본적이없다.

Skitch

Lingon

프리 or  쉐어。자동 기동 관리 툴. OSX의 자동기동 프로그램을 시각적으로 편집하거나 할수있다.

Growl

기본적인 곳의 Mac이라면 Growl

Alfred

QuickSilver같은 fuzzy 같은 문자열에 의한、어플리케이션 검색 & 실행 런처. QuickSilver보다도 좋은점은、매치 하는 어플리케이션가 없을때는 구글 검색해준다는 점.

Reeder

RSS리더는 Reeder를 추천.

Cinch

Mac에서 간단하게 가면을 2분할(Win7의 그것)을 해주는 툴.

Fluid

Web어플을 간단하게 로컬어플리화 할수있는 녀석. Web어플로 간단하게 개발해서、클라이언트를 브라우저로 하지 않거나  항상 상주 시키고 싶을때에 편리.

DIVVY

화면을 핫키 한방에 분할 할수있다.

A Better Finder Rename

RENAME가 초 간단

Skim

경량 PDF리더。Adobe Acrobat보다 좋은거같다.

Bean

Microsoft Word보다도 쾌적

Unix/Linux/Macコマンド

  • gdb
  • lv
  • xargs
  • iotop
  • htop
  • iperf
  • htop
  • zsh
  • tree
  • make
  • bison
  • awk
  • screen
  • byobu
  • tmux

서버에서 장기간 걸리는 작업을 불안정한 회선등으로 할때에 특별히 도움이 됩니다.

screen은 간단하게 프로센스를 오래 살도록 하는데에 편리합니다.
ssh에서 접속해서 무언가 시간이 걸리는 프로세스를 실행해도 접속을 끊으면 프로세스도 커널에 종료되어버리는데
거기에서 screen안에서 프로세스를 기동해서、screen을 deattached해두면、그 프로세스는 오래살수있도록 할수있습니다.

.

처음에 고맙다라고 생각한게 서버위에서 장시간 작업할때
통신가 툭 끊어져도 screen의 프로세스 자체는 살아남기 때문에, 다시한번 서버에 접속해서
남아있는 screen의 프로세스에 attached하면 작업이 즉시 재개 시킬수 있습니다.

vim의 작업 상태 등도 그대로 남아 있습니다.
byobu라는것은 screen가 좋은느낌으로 커스텀마이즈 된 녀석


screen/tmux 가 다가가기 힘든 사람에게는 byobu가 추천입니다.
우선 곤란해 하지 않을 설정이 기본적으로 되어져 있습니다.

나머지는 밑의 많은t ips
"terminal multiplexor Advent Calendar 2011 : ATND" http://atnd.org/events/22320

.

네이티브의 바이너리 관련、od,file,nm,strings,strace,varglind

.

개인적으로는 vim/zsh/screen。이 3개는 어떤 환경이라도 반드시 넣는다

.

find ./ -name *.php | xargs grep hoge とかはよく使いますね。Windowsは秀丸のgrepが強力です。

git, 자주 사용하는 코멘드랑 옵션

http://qiita.com/items/2047#comment-2182

추운날에 CPU가 발열해서 따듯해지는 코멘드

추운날은 충전중의 맥북에서 ruby -r digest/sha1 -e 'loop{Digest::SHA1.hexdigest(Time.now.to_f.to_s)}'
같은걸 하면  잠깐 방치하면 마음대로 CPU가 발연해서 따듯해짐

미분류

mscgen

sequence도를 쓸거라면 mscgen를 추천

cheat

yUML

UML을 그리고 출력할수 있는 Web서비스. 유닉크한 URL가 발행되기 때문에  블로그에 붙이거나 가능

클래스 /액티비티 /유즈 케이스

WebSequenceDiagrams.com

UML을 그리고 출력할수 있는 Web서비스. 유닉크한 URL가 발행되기 때문에  블로그에 붙이거나 가능

시퀀스 도

http://www.websequencediagrams.com/

Cacoo

AppleK for VMware

Mac에서 가상 머신 위의 Windows를 사용하는 경우에는 키 조작이 Mac과 같으되도록 설정해주는 어플. 유료지만 VM위에서의 작업효율이 크게 올라가기 때문에 추천
- VMWare용
http://www.trinityworks.co.jp/software/AppleKforVMware3/index.php
- Parallels용
http://www.trinityworks.co.jp/software/AppleKforParallels3/index.php

KeyRemap4Macbook

왜인지 아직 거론되지 않는 KeyRemap4Macbook. 키 분배를 자유럽게 커스텀마이즈 할수있음、같은 키를 길게 눌렀을때나  키가 입력되기전까지 기다리는 시간을 표준 보다 고속화 할수있다. Mac을 사용하는 프로그래머에게 있어선 많이 쓰는 어플.
http://pqrs.org/macosx/keyremap4macbook/index.html.ja

BitNami

다양한 OSS플랫폼/어플을 인스톨러를 사용해서 간단하게 도입할수 있게해주는 소프트

http://bitnami.org/stacks

AMPPS

다양한 OSS플랫폼/어플을 인스톨러를 사용해서 간단하게 도입할수 있게해주는 소프트
http://www.ampps.com/

TEKICO

일본어・영문자 더미 문자를 생각하는 AIR제품 소프트. Web사이트의 프론트 타이프 작업할때에 활용.



출처: https://tkdwnsdkk.tistory.com/101 [샤우의 블로그]

LIST