Enviar búsqueda
Cargar
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
•
Descargar como PPTX, PDF
•
19 recomendaciones
•
11,386 vistas
Tadahiro Ishisaka
Seguir
2015-01-31 Hokuriku.NET 勉強会 TLスライド まぁしゃれっすよしゃれ。
Leer menos
Leer más
Software
Denunciar
Compartir
Denunciar
Compartir
1 de 19
Descargar ahora
Recomendados
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
Recomendados
世界一わかりやすいClean Architecture
世界一わかりやすいClean Architecture
Atsushi Nakamura
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
Goのサーバサイド実装におけるレイヤ設計とレイヤ内実装について考える
pospome
新入社員のための大規模ゲーム開発入門 サーバサイド編
新入社員のための大規模ゲーム開発入門 サーバサイド編
infinite_loop
それはYAGNIか? それとも思考停止か?
それはYAGNIか? それとも思考停止か?
Yoshitaka Kawashima
リーンなコードを書こう:実践的なオブジェクト指向設計
リーンなコードを書こう:実践的なオブジェクト指向設計
増田 亨
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
Tokoroten Nakayama
例外設計における大罪
例外設計における大罪
Takuto Wada
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
こわくない Git
こわくない Git
Kota Saito
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
Go入門
Go入門
Takuya Ueda
Go言語によるwebアプリの作り方
Go言語によるwebアプリの作り方
Yasutaka Kawamoto
Más contenido relacionado
La actualidad más candente
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
disc99_
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
mosa siru
オブジェクト指向できていますか?
オブジェクト指向できていますか?
Moriharu Ohzu
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
Tokoroten Nakayama
例外設計における大罪
例外設計における大罪
Takuto Wada
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
こわくない Git
こわくない Git
Kota Saito
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
増田 亨
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
Atsushi Nakada
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
Koichi Tanaka
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
増田 亨
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
Shota Shinogi
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
増田 亨
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
増田 亨
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
Recruit Lifestyle Co., Ltd.
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
増田 亨
プログラムを高速化する話
プログラムを高速化する話
京大 マイコンクラブ
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
増田 亨
La actualidad más candente
(20)
マイクロサービスバックエンドAPIのためのRESTとgRPC
マイクロサービスバックエンドAPIのためのRESTとgRPC
開発速度が速い #とは(LayerX社内資料)
開発速度が速い #とは(LayerX社内資料)
オブジェクト指向できていますか?
オブジェクト指向できていますか?
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
DXとかDevOpsとかのなんかいい感じのやつ 富士通TechLive
例外設計における大罪
例外設計における大罪
テストコードの DRY と DAMP
テストコードの DRY と DAMP
こわくない Git
こわくない Git
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
シリコンバレーの「何が」凄いのか
シリコンバレーの「何が」凄いのか
やはりお前らのMVCは間違っている
やはりお前らのMVCは間違っている
ドメイン駆動設計のためのオブジェクト指向入門
ドメイン駆動設計のためのオブジェクト指向入門
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ネットストーカー御用達OSINTツールBlackBirdを触ってみた.pptx
ドメイン駆動設計に15年取り組んでわかったこと
ドメイン駆動設計に15年取り組んでわかったこと
オブジェクト指向の設計と実装の学び方のコツ
オブジェクト指向の設計と実装の学び方のコツ
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
ホットペッパービューティーにおけるモバイルアプリ向けAPIのBFF/Backend分割
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
ドメイン駆動設計 ( DDD ) をやってみよう
ドメイン駆動設計 ( DDD ) をやってみよう
プログラムを高速化する話
プログラムを高速化する話
世界でいちばんわかりやすいドメイン駆動設計
世界でいちばんわかりやすいドメイン駆動設計
Destacado
Go入門
Go入門
Takuya Ueda
Go言語によるwebアプリの作り方
Go言語によるwebアプリの作り方
Yasutaka Kawamoto
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
私なりのGo言語のご紹介
私なりのGo言語のご紹介
Ryuji Iwata
エディタの壁を越えるGoの開発ツールの文化と作成法
エディタの壁を越えるGoの開発ツールの文化と作成法
Takuya Ueda
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
Takuya Ueda
TalknoteとGolang
TalknoteとGolang
leverages_event
20161004 DMM/エウレカ/インテリジェンス合同勉強会
20161004 DMM/エウレカ/インテリジェンス合同勉強会
Yusuke Komatsu
Talknoteとgolangと私
Talknoteとgolangと私
Kenyu Miura
[Golang] Go言語でサービス作ってる話
[Golang] Go言語でサービス作ってる話
株式会社YEBIS.XYZ
GoでMinecraftっぽいの作る
GoでMinecraftっぽいの作る
京大 マイコンクラブ
【初心者向け】Go言語勉強会資料
【初心者向け】Go言語勉強会資料
Yuji Otani
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
Takuya Ueda
ごちうさ Advent Calendar
ごちうさ Advent Calendar
yaplus
5分でわかる? 関数型 PHP の潮流
5分でわかる? 関数型 PHP の潮流
Yuya Takeyama
Windowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングをきちんと理解しよう
Yuya Yamaki
Go x Slack API
Go x Slack API
weddingpark
Go で Unit Test をやってみた
Go で Unit Test をやってみた
Masahiro Yanou
Microsoft Azure超超入門_20140412
Microsoft Azure超超入門_20140412
Sayaka Shimada
Teratail Study ~機械学習編#1~
Teratail Study ~機械学習編#1~
Kosuke Fujimoto
Destacado
(20)
Go入門
Go入門
Go言語によるwebアプリの作り方
Go言語によるwebアプリの作り方
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
私なりのGo言語のご紹介
私なりのGo言語のご紹介
エディタの壁を越えるGoの開発ツールの文化と作成法
エディタの壁を越えるGoの開発ツールの文化と作成法
Go初心者向けハンズオン コマンドラインツールを作ろう
Go初心者向けハンズオン コマンドラインツールを作ろう
TalknoteとGolang
TalknoteとGolang
20161004 DMM/エウレカ/インテリジェンス合同勉強会
20161004 DMM/エウレカ/インテリジェンス合同勉強会
Talknoteとgolangと私
Talknoteとgolangと私
[Golang] Go言語でサービス作ってる話
[Golang] Go言語でサービス作ってる話
GoでMinecraftっぽいの作る
GoでMinecraftっぽいの作る
【初心者向け】Go言語勉強会資料
【初心者向け】Go言語勉強会資料
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
メルカリアッテの実務で使えた、GAE/Goの開発を効率的にする方法
ごちうさ Advent Calendar
ごちうさ Advent Calendar
5分でわかる? 関数型 PHP の潮流
5分でわかる? 関数型 PHP の潮流
Windowsの画面スケーリングをきちんと理解しよう
Windowsの画面スケーリングをきちんと理解しよう
Go x Slack API
Go x Slack API
Go で Unit Test をやってみた
Go で Unit Test をやってみた
Microsoft Azure超超入門_20140412
Microsoft Azure超超入門_20140412
Teratail Study ~機械学習編#1~
Teratail Study ~機械学習編#1~
Más de Tadahiro Ishisaka
Windowsでhaskell
Windowsでhaskell
Tadahiro Ishisaka
Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)
Tadahiro Ishisaka
Visual studioとそのライバル
Visual studioとそのライバル
Tadahiro Ishisaka
Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)
Tadahiro Ishisaka
Visual studio 2015 update1 ctpとcsi
Visual studio 2015 update1 ctpとcsi
Tadahiro Ishisaka
Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日
Tadahiro Ishisaka
クラウド・コンピューティング サバイバルガイド
クラウド・コンピューティング サバイバルガイド
Tadahiro Ishisaka
Esentのススメ
Esentのススメ
Tadahiro Ishisaka
ビジネス向けアプリケーションにこそ進めるMicro orm
ビジネス向けアプリケーションにこそ進めるMicro orm
Tadahiro Ishisaka
Jazug3周年lt deployブランチを追加してみましょう
Jazug3周年lt deployブランチを追加してみましょう
Tadahiro Ishisaka
Build insider offline session チームでのgit
Build insider offline session チームでのgit
Tadahiro Ishisaka
Hokuriku.net 2013 01-26 node.js
Hokuriku.net 2013 01-26 node.js
Tadahiro Ishisaka
Web matrix2とvisual studio
Web matrix2とvisual studio
Tadahiro Ishisaka
Sysprep
Sysprep
Tadahiro Ishisaka
開発から見たWindowsの国際化機能
開発から見たWindowsの国際化機能
Tadahiro Ishisaka
Shizudev git hub宿題
Shizudev git hub宿題
Tadahiro Ishisaka
Ossで作成するチーム開発環境
Ossで作成するチーム開発環境
Tadahiro Ishisaka
私はこの本でネットワークを学んだ
私はこの本でネットワークを学んだ
Tadahiro Ishisaka
Netduino
Netduino
Tadahiro Ishisaka
静岡Developers勉強会 第11回 第12章 遅延評価
静岡Developers勉強会 第11回 第12章 遅延評価
Tadahiro Ishisaka
Más de Tadahiro Ishisaka
(20)
Windowsでhaskell
Windowsでhaskell
Windows環境でのgitまとめ(2016.8)
Windows環境でのgitまとめ(2016.8)
Visual studioとそのライバル
Visual studioとそのライバル
Windows環境でのgitまとめ(2016.1)
Windows環境でのgitまとめ(2016.1)
Visual studio 2015 update1 ctpとcsi
Visual studio 2015 update1 ctpとcsi
Git for windows情報アップデート 2014年10月5日
Git for windows情報アップデート 2014年10月5日
クラウド・コンピューティング サバイバルガイド
クラウド・コンピューティング サバイバルガイド
Esentのススメ
Esentのススメ
ビジネス向けアプリケーションにこそ進めるMicro orm
ビジネス向けアプリケーションにこそ進めるMicro orm
Jazug3周年lt deployブランチを追加してみましょう
Jazug3周年lt deployブランチを追加してみましょう
Build insider offline session チームでのgit
Build insider offline session チームでのgit
Hokuriku.net 2013 01-26 node.js
Hokuriku.net 2013 01-26 node.js
Web matrix2とvisual studio
Web matrix2とvisual studio
Sysprep
Sysprep
開発から見たWindowsの国際化機能
開発から見たWindowsの国際化機能
Shizudev git hub宿題
Shizudev git hub宿題
Ossで作成するチーム開発環境
Ossで作成するチーム開発環境
私はこの本でネットワークを学んだ
私はこの本でネットワークを学んだ
Netduino
Netduino
静岡Developers勉強会 第11回 第12章 遅延評価
静岡Developers勉強会 第11回 第12章 遅延評価
関数型・オブジェクト指向宗教戦争に疲れたなたに送るGo言語入門
1.
関数型・オブジェクト指向 宗教戦争に疲れたあなたに送る Go言語のススメ 石坂忠広 http://opcdiary.net
2.
自己紹介 • プロフィールは適当にWindows GitとかVisual
Studio Gitで検索してく ださい。トップに出てきません。 • 富士山の方から来ました。 • オブジェクト指向スキーなSEです。 • 純粋関数型なんてわかりませんと思っていたら、純粋関数型の人も あんまりわかってなかったみたいな感じで何なんだったんだこの一ヶ 月みたいな感じです。ま、傍観者ですが。 • ま、あと、オブジェクト指向も流派が分かれるので一緒にするな。
3.
疲れました。。。 • 総称性の議論とか • クラス、オブジェクト、そもそもJavaScriptのあれはとか •
副作用?副作用? • 圏論?はぁ?それがお前の言う圏論の議論なの? • 別に関数型とオブジェクト指向とか相反しないし • OCamlとF#に謝れとか • まぁ、原理主義者相手にしてると疲れますよね
4.
そんな疲れたアナタに朗報です
5.
Go言語でリフレッシュしましょう!
6.
Go言語には議論を呼ぶ 以下のものがありません • クラス、オブジェクト、継承、オーバーライド • Generics(総称性)構文 •
関数型原理主義者の嫌う、擬似関数型現機能、ラムダ式 • While/Do While/Foreach • モナド?圏論?とか面倒くさいこと言う厨二
7.
争いの起きる余地なし!!
8.
Go言語の特徴 • 手続き型の高級言語 • ロブ・パイク、ケン・トンプソンが開発に関わっている •
ALGOL, Pascal, Cのような構文 • コンパイル言語 • クロスコンパイルが得意(Linux/Darwin(Mac)/BSD/Solaris/Windows/Plan 9) • 実行動作ランタイムなどない! • メモリ管理はGCに一任 • 連想配列を持つ • 型の継承、ジェネリックプログラミング、アサーション、オーバーロードと いった機能は無いが、インターフェイスによるポリモーフィズムはある(そ れなんてVB) • 並行動作の支援機能
9.
Hello World package main import
"fmt“ func main() { fmt.Printf("Hello, World¥n") }
10.
;(セミコロン)がない!!! • 中括弧言語のくせにセミコロンがない! • 無いのではなく、コンパイラが構文解釈して適宜挿入するの で省略できている。(文末解析出れば人が入れること無い じゃん) •
以下のような場合は必要。 • for i := 0; i < 10; i++ {} (for文のイニシャライザ) • 1行に複数の文を記述したい場合
11.
;以外もC/C#/Java違うところが多いよ • 代入演算子が := •
for, if にカッコを付けない • 変数の型指定が変数の後 • var n int • var err os.Error • Asはいらない • while / do whileが無い。ロブ・パイク大先生もforで十分だと。 • ポインタがある。 • C++プログラマ向けGo講座を見よ
12.
ま、ゆるふわな言語です。
13.
実践Go言語 Go言語を勉強したくなったらこのサイトを見よう
14.
はじめかた • http://golang-jp.org/ から始めましょう •
ここのトップページのDownload Goをクリック • Linux/BSD/OS X/WindowsはこれでOK • リンク先ページ書きの注意書きを読みましょう • Solarisの人はパッケージがあるはず • チュートリアル • A Tour of Goでひと通りの構文を学習できます。 • WEBで完結しているので何かをインストールする必要なし • http://go-tour-jp.appspot.com/#1
15.
開発環境 • CLI主義 • コンソールウインドウを黒い画面とか言うゆとりはPHPでも使ってろ!! •
コード整形 • コンパイラがその機能を内蔵 go fmt <ソースコードファイル> • 複数のコーディングスタイルとか許してやんない→議論の余地なし • エディタ • Vim, Emacs, Atom等でGo用に構文のハイライトや、コード整形、コード補完の 機能を提供するプラグインがあるよ • IDE • LiteIDEが優秀 • InteliJ IDEAもがんばっているっぽい
16.
何に向いているか? • Goole App
Engine(GAE)でのアプリケーション展開 • WEBアプリケーション • UNIXwayなコマンドラインツール、且つクロス環境で動作して欲しい場合 • クロスコンパイル機能が非常に優秀で、実行ファイルがあればライブラリのポート とかも必要ない。Linux上でMac用、Windows用のバイナリも作成可 • 個人的におすすめ • GUIはあんまり得意じゃない
17.
何より • Gopherが可愛い(*´∀`) https://golang.org/doc/gopher/
18.
お前じゃない
19.
ご清聴ありがとございました。
Notas del editor
ロブ パイクはUNIX/Plan 9の開発者でプログラミング作法の共著者 もう一人はカーニハン。 ケン・トンプソンはUNIX、C言語の揮発者。 あと、お前らの大好きなUTF-8を作ったのがこの二人だ。
Descargar ahora