PageRenderTime 23ms CodeModel.GetById 35ms RepoModel.GetById 1ms app.codeStats 0ms

/orig-latex-unmaintained/components/bab-02.tex

https://bitbucket.org/bpdp/buku-go
LaTeX | 136 lines | 103 code | 33 blank | 0 comment | 0 complexity | 83350157c74a3bb04347d8255ba2a1bd MD5 | raw file
  1. \chapter{IDE Untuk Go}
  2. IDE (\textit{Integrated Development Environment}) merupakan peranti lunak yang
  3. \section{Menggunakan Vim}
  4. Untuk menggunakan Vim, ada plugin utama serta berbagai plugin pendukung yang bisa digunakan. Sebaiknya, menggunakan \textbf{pathogen} untuk mempermudah pengelolaan berbagai plugin tersebut. Bagian ini akan menjelaskan berbagai konfigurasi serta instalasi yang diperlukan sehingga Vim bisa menjadi peranti untuk pengembangan aplikasi menggunakan Go.
  5. \subsection{Instalasi dan Konfigurasi Pathogen}
  6. Pathogen adalah plugin dari Tim Pope yang digunakan untuk mempermudah pengelolaan plugin. Kode sumber dari Pathogen bisa diperoleh di \url{https://github.com/tpope/vim-pathogen}. Untuk instalasi, ikuti langkah berikut:
  7. \begin{mdframed}[style=catatan]
  8. \begin{verbatim}
  9. $ cd
  10. $ mkdir .vim/autoload
  11. $ mkdir .vim/bundle
  12. $ cd .vim/autoload
  13. $ wget https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
  14. -2013-04-17 22:39:09-- https://raw.github.com/tpope/vim-pathogen/master/autoload/pathogen.vim
  15. Resolving raw.github.com (raw.github.com)... 199.27.75.133
  16. Connecting to raw.github.com (raw.github.com)|199.27.75.133|:443... connected.
  17. HTTP request sent, awaiting response... 200 OK
  18. Length: 11730 (11K) [text/plain]
  19. Saving to: pathogen.vim
  20. 100%[=========================================================================
  21. ===================================================>] 11,730 50.3KB/s in 0.2s
  22. 2013-04-17 22:39:11 (50.3 KB/s) - pathogen.vim saved [11730/11730]
  23. $ ls -la
  24. total 20
  25. drwxr-xr-x 2 bpdp bpdp 4096 Apr 17 22:39 .
  26. drwxr-xr-x 5 bpdp bpdp 4096 Apr 17 22:21 ..
  27. -rw-r--r-- 1 bpdp bpdp 11730 Apr 17 22:39 pathogen.vim
  28. $
  29. \end{verbatim}
  30. \end{mdframed}
  31. Setelah itu, untuk menggunakan Pathogen, letakkan aktivasinya di \$HOME/.vimrc atau di \$HOME/.vim/vimrc (saya piliah lokasi yang kedua) sebagai berikut:
  32. \begin{mdframed}[style=catatan]
  33. \begin{verbatim}
  34. execute pathogen#infect()
  35. \end{verbatim}
  36. \end{mdframed}
  37. Setelah itu, semua plugin tinggal kita ambil dari repository (bisa dari github, bitbucket, dan lain-lain) langsung di-copy satu direktori ke direktori \$HOME/.vim/bundle.
  38. \subsection{Instalasi dan Kofigurasi Plugin Golang dan Plugin Pendukung}
  39. Setelah selesai melakukan instalasi Pathogen, berbagai plugin yang diperlukan bisa diambil langsung dari Internet. Berikut ini adalah daftar yang digunakan penulis:
  40. \begin{itemize}
  41. \item Colorschemes: untuk tema warna dari Vim. Bisa diperoleh di \url{https://github.com/flazz/vim-colorschemes}
  42. \item Nerdtree: untuk menampilkan file-file dalam struktur pohon di sebelah kiri sehingga memudahkan navigasi. Bisa diperoleh di \url{https://github.com/scrooloose/nerdtree}
  43. \item Golang: plugin utama agar Vim mengenali kode sumber Go. Bisa diperoleh di: \url{https://github.com/jnwhiteh/vim-golang.git}
  44. \end{itemize}
  45. Cara instalasi:
  46. \begin{mdframed}[style=catatan]
  47. \begin{verbatim}
  48. $ cd
  49. $ cd .vim/bundle
  50. $ git clone <masing-masing lokasi plugin>
  51. \end{verbatim}
  52. \end{mdframed}
  53. Hasil dari menjalankan ``vim'' atau ``gvim'' melalui shell untuk menulis kode sumber Go bisa dilihat pada Gambar~\ref{fig:vim-go}
  54. \begin{figure}
  55. \begin{center}
  56. \includegraphics[scale=0.5]{images/vim-go.jpg}
  57. \end{center}
  58. \caption{Tampilan gvim untuk mengedit kode sumber Go}
  59. \label{fig:vim-go}
  60. \end{figure}
  61. \subsection{Autocompletion}
  62. Vim menyediakan fasilitas \textit{autocompletion} melalui \textit{Omniautocompletion}. Fasilitas ini sudah terinstall saat kita menginstall Vim. Untuk mengaktifkan fasilitas ini untuk keperluan Go, kita harus menginstall dan mengaktifkan Gocode (\url{https://github.com/nsf/gocode}). Sebaiknya kode sumber dari Gocode diambil semua karena ada script Vim yang akan kita gunakan:
  63. \begin{mdframed}[style=catatan]
  64. \begin{verbatim}
  65. $ git clone https://github.com/nsf/gocode.git
  66. Cloning into 'gocode'...
  67. remote: Counting objects: 2491, done.
  68. remote: Compressing objects: 100% (1128/1128), done.
  69. remote: Total 2491 (delta 1323), reused 2449 (delta 1295)
  70. Receiving objects: 100% (2491/2491), 1.07 MiB | 17 KiB/s, done.
  71. Resolving deltas: 100% (1323/1323), done.
  72. $
  73. \end{verbatim}
  74. \end{mdframed}
  75. Setelah itu, install Gocode menggunakan perintah \textbf{go get -u github.com/nsf/gocode}. Hasilnya adalah file \textit{executable binary} \textbf{\$GOROOT/bin/gocode}. Sebelum menggunakan Vim, aktifkan dulu gocode dengan mengeksekusi \textbf{gocode} melalui shell. Setelah itu, tambahkan satu baris di \textbf{\$HOME/.vim/vimrc}: \textbf{set ofu=syntaxcomplete\#Complete} di bawah baris \textbf{filetype plugin indent on}.
  76. Kode sumber lengkap dari \$HOME/.vim/vimrc yang penulis gunakan bisa dilihat pada Listing~\ref{lst:vimrc} adalah sebagai berikut:
  77. \lstset{language=Bash, caption=\$HOME/.vim/vimrc, label={lst:vimrc}}
  78. \lstinputlisting{src/non-go/bab-02/vimrc.txt}
  79. Untuk mengaktifkan completion, kita harus masuk ke mode \textit{Insert} dari Vim, setelah itu tekan \textbf{Ctrl-X, Ctrl-O} secara cepat. Hasil \textit{autocompletion} bisa dilihat di Gambar~\ref{fig:vim-go-completion}.
  80. \begin{figure}
  81. \begin{center}
  82. \includegraphics[scale=0.5]{images/vim-go-completion.jpg}
  83. \end{center}
  84. \caption{Tampilan gvim untuk mengedit kode sumber Go}
  85. \label{fig:vim-go-completion}
  86. \end{figure}
  87. \section{Menggunakan LiteIDE X}
  88. LiteIDE X dibuat oleh visualfc dan tersedia dalam bentuk source code maupun binary. Source code bisa diperoleh di:
  89. \begin{itemize}
  90. \item \url{http://code.google.com/p/liteide}
  91. \item \url{https://github.com/visualfc/liteide}
  92. \end{itemize}
  93. Versi binary / installer bisa diperoleh di \url{https://code.google.com/p/golangide/downloads/list}. Jika akan men-download versi binary, ada 2 kategori yang bisa dipilih yaitu LiteIDE X dan LiteIDE X + WebKit. Jenis kedua diperlukan jika kita akan menggunakan HTML Viewer untuk LiteIDE X (biasanya diperlukan jika kita akan membuat aplikasi Web serta memerlukan editor untuk file-file Markdown (.md)).
  94. \subsection{Instalasi}
  95. Instalasi di Linux sangat mudah, hanya tinggal mengekstrak file yang kita download (saat ini versi terakhir adalah versi X18.1) pada suatu direktori dan jika ingin menjalankan cukup dengan mengeksekusi file \$LITEIDEX\_HOME/bin/liteide (cd \$LITEIDEX\_HOME/bin; ./liteide \&):
  96. \section{Software IDE Lain}
  97. Vim dan LiteIDE hanyalah beberapa peranti yang bisa digunakan oleh pengembang. Distribusi Go juga menyediakan dukungan untuk berbagai peranti lunak lain:
  98. \begin{itemize}
  99. \item \textbf{IntelliJ Idea}. Dukungan untuk Go diwujudkan dalam plugin yang dibuat oleh Mihai Claudiu Toader. Instalasi bisa dilakukan menggunakan menu untuk instalasi plugin dari dalam IntelliJ Idea. Kode sumber untuk plugin ini bisa diperoleh di \url{https://github.com/mtoader/google-go-lang-idea-plugin}
  100. \item \textbf{Emacs}. Dukungan untuk Go diwujudkan dalam fasilitas \textit{add-on}. Untuk Emacs 24 ke atas, bisa diinstall melalui manajer paket (M-x package-list-packages), cari dan install \textbf{go-mode}. Emacs juga mendukung \textbf{gocode} untuk \textit{completion}.
  101. \item \textbf{Eclipse}. Dukungan untuk Go diwujudkan melalui plugin \textit{goclipse}, bisa diperoleh di \url{https://code.google.com/p/goclipse/}.
  102. \item Selain software-software yang telah disebutkan, rata-rata IDE / Editor sudah mempunyai dukungan terhadap bahasa pemrograman Go (JEdit, Sublime-text, Notepad++, dan lain-lain).
  103. \end{itemize}