SSブログ

訳者あとがき『プログラミング言語Go』 [訳者まえがき・あとがき]

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

プログラミング言語Go (ADDISON-WESLEY PROFESSIONAL COMPUTING SERIES)

  • 作者: Alan A.A. Donovan
  • 出版社/メーカー: 丸善出版
  • 発売日: 2016/06/20
  • メディア: 単行本(ソフトカバー)

「日本語版によせて」から「第1章 チュートリアル」までは、こちらでPDFファイルが公開されています。『プログラミング言語Go』では「訳者まえがき」ではなく「訳者あとがき」としたので、公開されたPDFファイルに「訳者あとがき」は含まれていません。

訳者あとがき

私がコンピュータに初めて触れてプログラミングを学び始めてから、すでに38 年の月日が流れました。その間にさまざなプログラミング言語を学び、さまざまな製品開発に従事してきました。

月に一回の勉強会でしたが、会社の若手のエンジニアと一緒に私自身がGo に取り組み始めたのは2010 年8 月でした。2012 年3 月にGo のバージョン1.0 が正式にリリースされ、2012 年10 月には私にとって最初のGo に関する翻訳書である『プログラミング言語Go フレーズブック』(デイビッド・チズナール著、ピアソン桐原)が刊行されました。一緒に学んだ若手のエンジニアの一人に、Tour of Go の日本語サイトの運営を行っている荒木さんがいます。

新たなプログラミング言語を学ぶことは、よく知っているプログラミング言語から類推しながら学ぶことと、新たに学ぶことに分けられます。特に、よく知っているプログラミング言語にはない概念が含まれていると、それを理解するまでに時間を要するかもしれません。C++ での3 年間のプログラミングを経た1996 年の夏に、新たに登場したJava を学んだときにはインタフェースをすぐには理解できませんでした。Go でも、最初は私自身の理解を混乱させた機能もあります。

Go はウェブサービスで使われている事例が多いですが、言語そのものは汎用のプログラミング言語です。1993 年から2009 年まで、一部の期間を除いて私自身は組み込みシステムであるデジタル複合機(コピー、Fax、プリンター)のソフトウェア開発に従事し、C++ で開発しました。C++ での開発では独自のメモリ管理やスレッド安全なライブラリの設計も行い、最後の五年間は完全なテスト駆動開発をC++ で行いました。そのような経験を踏まえ、Go は組み込みシステムの開発にも向いていると思っています。

小さなスタックで動作する軽量なゴルーチン、CSP による通信、ガベージコレクタとメモリ保護、構造体によるコンパクトなメモリ設計、オブジェクト指向プログラミング、および、ウェブのクライアントやサーバの機能を含めたさまざまな機能を提供する標準パッケージと、道具は揃っています。したがって、オペレーティングシステムにLinux を採用している組み込みシステムでは、C やC++で開発するのではなく、Go で開発するのが適切だと思っていますし、将来Go で開発されるのが普通になる日がくるのではないかと期待しています。実際、ある組み込みシステムの制御ソフトウェアをGo を使った完全なテスト駆動開発で行うプロジェクトを2 年間にわたり率いて、Go での組み込みシステムの開発が可能なことを実証できました。

『プログラミング言語Go』の翻訳を通して、私自身も多くの事柄を再確認することができました。さらに、実際に練習問題を解くことで、Go の標準ライブラリの強力さを再認識した次第です。この本は、Go の基本仕様を理解するために必要十分な情報が網羅されており、いわゆるバイブル的な本としての役割を十二分に果たす内容になっています。読者のみなさんも、言語仕様を理解するだけではなく、練習問題を実際に解かれることをお勧めします。

この翻訳書が、日本でのGo の普及に役立ち、日本のソフトウェアエンジニアがGo でのプログラミングを楽しめることに役立てば幸いです。


コメント(0)  トラックバック(0) 

コメント 0

コメントを書く

お名前:[必須]
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0