スキップしてメイン コンテンツに移動

投稿

2月, 2015の投稿を表示しています

GoogleAppsEngineでのGolangが神だった。

どうも、改めまして@CreatorQsFです。やっぱりGolangキてますね〜。 というわけで、今日はGolangをGoogleAppsEngine(通称GAE)で動かす方法や、その真髄をここに書きたいと思います。 ちなみに、どちらもGoogle開発のものなので、とても仲が良いです。(といいつつついこの前まで、この2つの関係はbetaでしたw) というわけで、まずは簡単に環境開発から。 環境開発 まずは こちら から、GoLangのAppEngineSDK(Golangをwebアプリケーションとして簡単に動かすためのもの)を落としてきます。 自分の環境にあったものを落としてください。自分がどれを落とせばいいかわからない人は、Twitterで@CreatorQsF宛に聞くか、Hangoutで私まで。 で、こちらをダウンロードしてきたら、ダウンロードフォルダよりFinderで好きな場所に移動して、展開してください。 で、展開したらそのDirectory名を抑えてください。たとえば、ダウンロードフォルダで展開したなら、/Users/あなたのMacのユーザー名/Downloads/go_appengineです。ここではこれを、「展開したディレクトリ名」と呼びます。 で、そうしましたら、自分のホームディレクトリ(/Users/あなたのMacのユーザー名/)に.bash_profileというファイルを作ります。というより、golangの環境を作った時に多分bashrcだかなんだかがあると思うので、そこに先ほど抑えた「展開したディレクトリ名」をこのように書き込みます。 export PATH= 「展開したディレクトリ名」 :$PATH つまり、Downloadsで展開した人は、 export PATH=/Users/あなたのMacのユーザー名/Downloads/go_appengine:$PATH というわけです。 で書き込んだら、Terminalでこのパスを通すために source ~/.bash_profile (ここは適宜)を実行します。 で、そこまで来たらもう終わったも同然です。 なにかプロジェクトを作ってみたいですか? HelloWorldやってみよう テキトウなディレク...

GoのフレームワークRevelを使ってみて引っかかったこと

こんにちは。@CreatorQsFです。 今日はGoLangのWebFrameworkを使ってみたいと思います。 結構大量にqiitaとか情報あるので、ダウンロードしたりするところは自分で調べてください。 一番引っかかったところの紹介をします! <br>が使えない? たとえば、こんなコードを書くとします。 func (c App) Index() revel.Result { return c.Render(stars) } で、てっきりstarsにbrを挟んだら表示されるものだと思って、starsはこうしました。 var stars string = "Hello<br>World!" そうした結果がこちら Hello<br>World! お分かりだと思いますが、そのまま表示されますw ""で囲まれた<br>がひかりますね(-д☆)キラッ で、コード中で<br>を使えないのは痛いので、頑張ってみることにしました。

Goでの同じ文字の連結について

おばんです。 @CreatorQsF です。夜はながいですね。 普段なら、PHPで書くと、同じ文字列の連結ってどう書いてます?みなさん。 たぶんPHPerならこう書くんじゃないかなーと。 <?php   $str = "★";   print $str2 = $str + $str; はい、何の問題もなく、実行結果はきっと、「★★」ですね。 そう、文字の連結に + を使うのです。 ですが、じゃばーとかならわかると思うのですが、このやり方ってとっても非効率なんですよね!私Java触ったことないですけどw 文字列のためのオブジェクトが必要以上に生成されるのを防がないともったいないんですよね〜。 というわけで、「ばっふぁ」に挑戦します。ルーターの会社ではないですよ。 まずコード package main import (   "fmt"   "bytes" ) func main() {   var buf bytes.Buffer   for i := 0; i < 繋げたい個数 ; i++ {     buf.WriteString(" 書きたい文字 ")   }   print buf.String() } 私はこの方法をおすすめします。 なんでこれがいいかって言うと、プログラムに無駄がなくなるからです。より速く、より軽いプログラムに成るって感じかな〜。 間違ってるかもしれません。なにせ初心者、一週間前にGoの世界に入ったばかりなので……そうしたら指摘してくださいm(_ _)m

GoのHelloWorld!

どうも。de-liKeRというブログで普段は書いてます、 @CreatorQsF です。 知ってる人は知ってるのかな。 さて、本日より、私、GoLangの魅力に触れて感動したので、作っているプロジェクトとwebアプリをPHPからGoへ移行することを宣言いたします。 構文と仕様はいろんなところのを引っ張ってきた感じで、その際にCを学んだ時みたいにアウトプットする場がほしいので、こうして作りました。 よろしくお願いします。 さてさて、ではインストールから説明。 how to install go lang on mac? 説明ってほどでもないです。 普通にHomebrewで、 brew install go sudo install Mercurial を叩いてください。(MercurialはなんかGoに必要らしいです。) で、bash_profileでもなんでもいいのでパスを通しまーす export GOROOT=`go env GOROOT` export GOPATH=$HOME/ ホーム以下好きなディレクトリを指定し給え。 export PATH=$PATH:$GOROOT/bin:$GOPATH/bin でこれでインストール自体は終わり。あとでRevelについては書きますのでとりあえず動くかどうかだけ。 テキトウなところに、test.goってファイルを作ります。 中身こんなかんじで書いて下さい package main import fmt "fmt" func main() {   fmt.Print("Hello World!") } これで終わり。めっちゃ簡単♪ であとはTerminalから cd test.goがあるディレクトリ go run test.go でほんとに、めっちゃ高速で結果が表示されます。スクリプト言語並みです。 ってなもんです。質問あったら是非おきがるにHangoutかGoogle+へどうぞ。