プログラミング.NET Framework出版記念座談会

38
プログラミング.NET Framework4版座談会 2013/10/26

description

プログラミング.NET Frameowrk 第四版()出版記念の座談会で使用したスライドです。

Transcript of プログラミング.NET Framework出版記念座談会

Page 1: プログラミング.NET Framework出版記念座談会

プログラミング.NET Framework第4版座談会

2013/10/26

Page 2: プログラミング.NET Framework出版記念座談会

Jeffreyってこんな人

Page 3: プログラミング.NET Framework出版記念座談会

岩永さんのスライド参照

(スレッドこそ人生)

Page 4: プログラミング.NET Framework出版記念座談会

2013/2/17のMVP Global Summitにて(第三版の著者近影と違う…/第四版は近い)

サインももらいました。

Page 5: プログラミング.NET Framework出版記念座談会

自己紹介

Page 6: プログラミング.NET Framework出版記念座談会

書籍での担当

Page 7: プログラミング.NET Framework出版記念座談会

翻訳のやり方について

Page 8: プログラミング.NET Framework出版記念座談会

翻訳のやり方について(1/2)• ツール

– みんな大好きW ordとExcel• 章ごとにサブ文書化• 訳語一覧とかはExcelで管理• レビュ時にはExcel W eb App

– FireFoxで動くからUbuntuの人でも問題ないよね

– 原稿はSubversionでバージョン管理• 複数人でやるなら分散型でもいいかも

Page 9: プログラミング.NET Framework出版記念座談会

翻訳のやり方について(2/2)• プロセス

– 前回と同じ• ベロシティを考えたりはしました• レビュアの方々には頭が上がりません

– スタイルガイドというものがあります• コーディング規約的なやつ

Page 10: プログラミング.NET Framework出版記念座談会

第三版と方法変わった?(進歩した?)

Page 11: プログラミング.NET Framework出版記念座談会

変更点• 差分をとり、改定点をチェック

– 差分といってもあの量なので(ry– 校正や見直しはほぼ全量

• スナップショット環境は仮想化– 楽ですね

(でも障害検知系で苦労されていた…)

Page 12: プログラミング.NET Framework出版記念座談会

翻訳で苦労したところ

Page 13: プログラミング.NET Framework出版記念座談会

翻訳で苦労したところ• 地道な修正作業

– 一度頭に入っているからこそ、間違いに気づきにくい

Page 14: プログラミング.NET Framework出版記念座談会

たとえばこんなの

using System; using System.Reflection; using System.IO;

private static Object Reverse(String s1) {

return new String(s1.Reverse().ToArray()); }

Page 15: プログラミング.NET Framework出版記念座談会

正しくは

using System; using System.Reflection; using System.IO; using System.Linq;

private static Object Reverse(String s1) {

return new String(s1.Reverse().ToArray()); }

Page 16: プログラミング.NET Framework出版記念座談会

第三版との違い

Page 17: プログラミング.NET Framework出版記念座談会

最新のテクノロジ• 天然由来の静電気力テクノロジにより、手の動きにマイクロ秒単位で追随。ページめくりのもたつきは、ありません

• Retina ディスプレイを超える、顕微鏡クラスの超解像度による美しい字体

Page 18: プログラミング.NET Framework出版記念座談会

エターナルバッテリーライフ• 待機電力、動作電力ともに 0.000 W を実現。バッテリー切れの、心配はありません

• もちろん、世界中どこでもお楽しみいただけます

Page 19: プログラミング.NET Framework出版記念座談会

洗練されたデザイン• 従来の伝統を超えた、シックなブラックカバーは、モダンなオフィスとも調和

• 高度な自立性――キックスタンドは必要ありません

Page 20: プログラミング.NET Framework出版記念座談会

薄く、そして厚く• 従来比 -10% の薄型化• 内容量は +1.0%• 全く新しい、

WindowsRT 相互運用、リフレクション、そしてasync/await

• 日本語版のみのスペシャルコンテンツ

Page 21: プログラミング.NET Framework出版記念座談会

端的に言うと• WinRT相互運用の25章を追加

• .NET Framework 4.5.1対応/VS2013対応– リフレクション API– async/await– 日本語版のみのボーナス追加

Page 22: プログラミング.NET Framework出版記念座談会

本の内容について

Page 23: プログラミング.NET Framework出版記念座談会

1~24章(WinRT関係追記)

Page 24: プログラミング.NET Framework出版記念座談会

25章~(第4版の主要な改定)

Page 25: プログラミング.NET Framework出版記念座談会

日本語版独自部分(VS2013/.NET 4.5.1)

Page 26: プログラミング.NET Framework出版記念座談会

本の内容• 各部の構成

– 第1部:ランタイムの基本的事項 [level 400-500]– 第2部:処理系としての基本動作 [level 400]– 第3部:BCLや型システムの詳細解説 [level 300]– 第4部:処理系としての詳細解説 [level 400-500]

• TypeInfo 等• 新たにWinRTとの相互運用が追加

– 第5部:非同期・並列・同期 [level 400-500]• async/await対応

Page 27: プログラミング.NET Framework出版記念座談会

第1部の読み方• CLRの基礎

– 第1章 CLRの実行モデル– 第2章アプリケーションと型のビルド、パッケージング、配置、管理

– 第3章共有アセンブリと厳密名を持つアセンブリ

• あらためて復習したり、配置のときのリファレンスとして

Page 28: プログラミング.NET Framework出版記念座談会

第2部の読み方• 型の設計

• 基礎力強化、ライブラリやフレームワーク作成のお供に

– 第4章型の基礎– 第5章プリミティブ型、参照型、値型

– 第6章型とメンバーの基礎

– 第7章定数とフィールド

– 第8章メソッド– 第9章パラメーター– 第10章プロパティ– 第11章イベント– 第12章ジェネリクス– 第13章インターフェイス

Page 29: プログラミング.NET Framework出版記念座談会

第3部の読み方• 主要な型

– 第14章 Char、String、テキスト操作– 第15章列挙型とビットフラグ– 第16章配列– 第17章デリゲート– 第18章カスタム属性– 第19章 null許容の値型

• BCLの重要ポイントを押さえたいあなたに

Page 30: プログラミング.NET Framework出版記念座談会

第4部の読み方• CLRの中核機能

– 第20章例外とステート管理– 第21章自動的なメモリ管理(ヒープとガベージコレクション)

– 第22章 CLRのホスティングとアプリケーションドメイン

– 第23章アセンブリのロードとリフレクション– 第24章ランタイムシリアル化– 第25章WinRTコンポーネントとの相互運用(新規)

• 一歩踏み込みたいあなたやアーキテクトの教養として

Page 31: プログラミング.NET Framework出版記念座談会

第5部の読み方• スレッド処理

– 第26章スレッドの基礎– 第27章計算量依存の非同期処理– 第28章 I/O依存の非同期処理– 第29章プリミティブなスレッド同期コンストラクト

– 第30章ハイブリッドなスレッド同期コンストラクト

• C# 5.0のasync/awaitをがっつり

Page 32: プログラミング.NET Framework出版記念座談会

読み方の例のご提案• 初級者

– 14章、20章あたりをじっくり読んでみる。• 中級者

– 第3部→第2部で復習、第5部と第4部はさらっと• 上級者

– 第5部→第4部でさらなる高みを• 猛者

– 頭からシーケンシャルに• 中の人

– レビュとダメだししてO’reillyのサイトにエラッタ登録

Page 33: プログラミング.NET Framework出版記念座談会

こうしてみるとコアの中でも結構偏ってる

GC

ASP.NET Runtime RichClient Runtime

Drawing API

Type System

Threading Library

Thread Scheduling

Reflection

AppDomain

Hosting

LINQ

ADO.NET Runtime

Network API

Collection

Serialization

WinRT Runtime

WinRT Interop

Exception

Diagnostics

String

JIT

I18N/L10NSecurity

Page 34: プログラミング.NET Framework出版記念座談会

どんな本、こんな本

GC

ASP.NET Runtime RichClient Runtime

Drawing API

Type System

Threading Library

Thread Scheduling

Reflection

AppDomain

Hosting

LINQ

ADO.NET Runtime

Network API

Collection

Serialization

WinRT Runtime

WinRT Interop

Exception

Diagnostics

String

JIT

I18N/L10NSecurity

ConcurrentProgrammingon Windows

Developer's Guide to Collections in Microsoft .NET

プログラミングMicrosoft LINQ

出るらしい?

Chanel9?

Customizing Common Language Runtime

メタプログラミング.NET

プログラミングASP.NET

プログラミングADO.NET

C#プログラマのための.NETアプリケーション

最適化技法

Page 35: プログラミング.NET Framework出版記念座談会

裏話何かある?この話は基本非公開で

Page 36: プログラミング.NET Framework出版記念座談会

後悔しているところすでにわかっている誤訳など

Page 37: プログラミング.NET Framework出版記念座談会

Jeffrey先生の次回作にご期待ください

Windows Runtime via C#が11月発売予定http://blogs.msdn.com/b/microsoft_press/archive/2013/02/18/mvps-thanks-for-visiting-us-at-the-mvp-summit-showcase.aspx

http://shop.oreilly.com/product/0790145383303.do

Page 38: プログラミング.NET Framework出版記念座談会

Q&A