タグ

プログラミングとbookに関するslay-tのブックマーク (37)

  • ソフトウェアアーキテクチャの基礎

    ソフトウェアアーキテクチャとは、ソフトウェアシステムの成功に欠かせない重要な土台です。そのためソフトウェア開発者には、効果的なアーキテクチャを実現するスキルが求められます。書は、そうした効果的なアーキテクチャを設計、構築、維持するアーキテクトになるために必要なスキルや知識を、現代的な視点から整理して包括的に解説する書籍です。 ソフトウェアアーキテクチャの定義から、アーキテクトの役割、モジュールや結合、アーキテクチャスタイルといったアーキテクチャ設計の基礎、チームやステークホルダーと効果的にコラボレーションしていくために必要なソフトスキルまで、さまざまなトピックについて実践的な例とともに説明します。 正誤表 ここで紹介する正誤表には、書籍発行後に気づいた誤植や更新された情報を掲載しています。以下のリストに記載の年月は、正誤表を作成し、増刷書籍を印刷した月です。お手持ちの書籍では、すでに修正

    ソフトウェアアーキテクチャの基礎
  • 『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を読みました - Don't Repeat Yourself

    先日発売になった『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を、一通り目を通していました。感想を記しておきます。なお感想は、例のごとく全体に軽く目を通して、いくつかサンプルプログラムを写経してみた程度の上でのものです。あらかじめご了承ください。 手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた 作者:クジラ飛行机ソシムAmazon Python から Rust に入門するという切り口 最近はRustが多く出版され始めており、読むよりも買うほうがだんだん多くなってきてしまっています。とくに単なる言語の入門にとどまらず、さまざまな切り口から解説するが増え始めているように思います。書もそのひとつで、Python から Rust に入門しようという非常に特異な切り口の一冊です。 Python から Rust という切り口は、多少なりと

    『手を動かして考えればよくわかる 高効率言語 Rust 書きかた・作りかた』を読みました - Don't Repeat Yourself
  • 「Visual Studio Code」で執筆するSF作家 藤井太洋氏が作る物書きのための拡張機能

    「VS Code Meetup」は、強力かつ軽量なオープンソースのコードエディター「Visual Studio Code」のミートアップです。今年もVS Code Meetup 主催の年次カンファレンス、「VS Code Conference Japan 2021」が開催されました。招待講演では、SF作家の藤井太洋氏が登壇。VS Codeで執筆を支援する機能拡張「novel-writer」の制作について発表しました。 『Hello, World!』で吉川英治文学新人賞を受賞したSF作家 藤井:お時間いただきまして、ありがとうございます。日、「Visual Studio Codeで小説を書く」というセッションを持たせていただく、SF作家の藤井太洋です。それでは、プレゼンテーションを進めます。 まず簡単な自己紹介から。私は、2012年に『Gene Mapper』というサイバーパンク小説をセル

    「Visual Studio Code」で執筆するSF作家 藤井太洋氏が作る物書きのための拡張機能
  • Python で Unicode 正規化 NFC/NFD の文字列を扱う - forest book

    先日、ビジネスパーソン向けの Python を執筆したことを書きました。 t2y.hatenablog.jp 稿では書のことを「できるPy」と呼びます。 Amazon でいくつかカスタマーレビューもいただいて次のコメントをみつけました。 python3.7 対応ということで、pathlib を使ってる点が(古いpython は切り捨てる!的なところは)潔いと言えば潔いし、日語のファイル名にも気を配っている記述はオライリーに期待するのは酷なところもある。でもこのでもNFD問題は全くの記述無し。だめだろ、それじゃ。 Amazon CAPTCHA まさに仰る通りです。執筆時にそのことに気づかずご指摘いただいてありがとうございます。 ここでご指摘されている NFD 問題というのは、ファイル名のみに限った問題ではなく、Unicode の文字集合を扱ってエンコード/デコードするときに発生する

    Python で Unicode 正規化 NFC/NFD の文字列を扱う - forest book
  • コンパイル技法: パターンマッチ

    書では関数型言語をはじめとして多くの言語にあるパターンマッチをコンパイルする方法を紹介します。パターンマッチはシンプルに条件分岐の連鎖にコンパイルすることもできますが、よく研究された手法を使えば驚くほど効率的なコードを生成できるようになります。そのような手法を2種類紹介します。 パターンマッチはデータ型に照合しそのデータを取り出すものです。例えばRustであれば match opt { Some(x) => f(x), None => g()} のように Option 型への照合などに使えます。書の前半ではパターンマッチの挙動や使い方などを学びます。挙動の確認にはプログラミング言語Standard MLを使い、一部Cのコードも使います。その後Common LispやJavaなどの他の言語でのパターンマッチの状況を確認します。後半ではパターンマッチのコンパイル技法について紹介します。パタ

    コンパイル技法: パターンマッチ
  • Reactハンズオンラーニングを読んだので感想

    はじめに この記事はこれからReactJavaScriptを0から学びたいと思う人に向けての記事です。 こちらのを紹介したいなという、ただの布教記事です。 自分もそれなりにJavaScriptを書いて、Reactを勉強してきたと思っていましたが こちらのを読んで、まだまだ序の口だったのだなと感じました。 もちろん、何年もJavaScriptを書いてきて、ここに書いてある事は常識だぜ!っていう人もいるかと思います。 ただ、最初にも書いたように、0から学ぼうとしている人に向けてなので そういった人にはとても有益なになるのではないかと思います。 こちらのスクラップに自分で理解するためにコードのメモなどもとってあるので、参考にしてみてください。 の構成について ツールの紹介 から始まります。 Github React Dev Tools Node などの説明があります。 JavaScri

    Reactハンズオンラーニングを読んだので感想
  • 並行プログラミング入門

    複数のプログラムを同時に実行する「並行プログラミング」は、処理速度を飛躍的に向上させる手法で、タスク管理、プロセス管理、スレッド管理をはじめ、複雑な仕組みについての幅広い知識とテクニックが必要となります。書はRustとアセンブリ、そして一部Cを用い、CPUのアトミック命令、グリーンスレッド、アクターモデル、π計算、ソフトウェア・トランザクショナルメモリ、async/awaitなど、並行プログラミングに関する理論的な背景から実装までをカバー。さらに、アセンブリ実装の理解を深めるため、AArch64とx86-64アーキテクチャの説明も付録として収録。一歩一歩、着実に理解できるように、その仕組みから順を追って詳しく説明します。GitHub上で公開されているソースコードを実際に動かしながら、並行プログラミングの知識と理解を深めることができます。 関連ファイル サンプルコード 正誤表 ここで紹介す

    並行プログラミング入門
  • Deep JavaScript

    Homepage Please support this book: buy it or donate (Ad, please don’t block.) Deep JavaScript Table of contents

  • 計算できるもの、計算できないもの

    計算機による計算とは何か、計算できるものとできないものの境界はどこにあるのか―それを明らかにする計算理論は、計算機科学においてもっとも基的、かつ重要なものです。書では、概念の説明や、結果の証明にPythonプログラムを利用する実践的なアプローチにより、計算可能問題と計算不能問題、扱いやすい問題と扱いにくい問題があること、文章では簡単に表現できても計算機には解けない重要な問題が数多くあること、効率よく解ける問題と解けない問題があることなどを、計算理論の礎を築いたアラン・チューリングとリチャード・カープの論文の抜粋とともに解明します。チューリングマシン、有限オートマトン、万能計算、非決定性、チューリング還元、計算量クラス、NP完全性などのトピックをカバーしています。 謝辞 まえがき:教科書として使う方へ 全体像 1章 はじめに:計算できるもの, できないものとは 1.1 扱いやすい問題 1

    計算できるもの、計算できないもの
  • 『プログラミング作法』新人エンジニアにオススメする技術書 | IIJ Engineers Blog

    『プログラミング作法』 著者:Brian W. Kernighan / Rob Pike 福崎俊博 訳 アスキードワンゴ ちなみにこの、私が入手した頃とは装丁がガラッと変わっていて、いまの表紙はこんな感じになっています。 犬がカワイイですね。これから購入する方はご注意ください。 普段プログラミングをしていると、大なり小なりさまざまな判断を行うべき局面が出てきます。 変数やメソッドにはどんな名前を付けるべきか?ロジックは明快になっているか?ここにコメントは必要か?必要としたらどう書くか?ライブラリのインターフェイスは適切にデザインされているか?ライブラリ関数の粒度は適当か?与えられた問題に対してデータ構造やアルゴリズムは適切なものを選択しているか?もっと良いものがあるのではないか?計算量は妥当な範囲に収まるか?処理が複雑になっても性能が良くなる方を取るか?あるいは多少性能を犠牲にしてもわか

    『プログラミング作法』新人エンジニアにオススメする技術書 | IIJ Engineers Blog
  • t_wada さんの講演メモ ー 技術書の読み方を中心に - 冷めたコーヒー

    はじめに 和田さん(@t_wada)の講演が素晴らしく良かったのでメモを残しておきたいと思います。和田さんと言えば... t_wada ですね!講演では、「技術の学び方を学ぶ」ことを目的として二部構成で論が展開されました。「技術の学び方の学び」とは、メタレベルの学びのことを指しています。すなわち、効率的に新しい技術を学ぶためにはどのように学べば良いのかという話です。内容は以下の通りです。 第一部 四半期ごとに技術書を読む 手を動かしながら学ぶ 毎年少なくとも一つの言語を学ぶ 身の回りをプログラミング対象にする アウトプットを行う 第二部 毎日コードを書く 年下から学ぶ 過去から未来を見る 人のつくる渦を見る 大事なことに集中する いずれも非常に興味深い内容だったのですが、細かい事項については2017年の講演メモのエントリーがありましたので、ぜひそちらをご覧いただければと思います。(記事へ

    t_wada さんの講演メモ ー 技術書の読み方を中心に - 冷めたコーヒー
  • 『プログラミング英語教本』を書きました : IT翻訳者Blog

    『プログラミング英語』というを書きました。日5/1にその電子版が発売されています。 プログラミング時に触れる英語のドキュメント4種類(ソースコードのコメント、APIリファレンスなど)について解説しています。「プログラミング必須英単語600+」についても詳しく紹介しています。 また、書はプログラミング英語検定の学習用書籍にもなっています。 書籍ページ: https://globalization.co.jp/publication/programming-english-textbook/ (試し読みがこちらから可能) 現在、電子版を購入できるのは、達人出版会とGoogle Play書籍です(後日Kindleも予定)。 なお紙版は7月中旬の発売を予定しています。アマゾンや楽天ブックスではすでに予約を受け付けているようです。 お読みいただけると幸いです。

    『プログラミング英語教本』を書きました : IT翻訳者Blog
  • 実践Rust入門を読んだ - 逆さまにした

    実践Rust入門 言語仕様から開発手法まで, κeen, 河野達也, 小松礼人を読みました。書の特徴は以下の3つでしょう。 2018 Editionに対応している FFIについて日語で書かれた書籍 実践 を意識した内容になっている 記事では、特に3つ目の実践的という観点で感想を述べようと思います。 Rustの言語仕様という観点で言えば、プログラミングRustのほうが網羅性は高いでしょう。 しかし、Rustは入門のハードルがとても高い言語です。1 個人的な経験でいえば、mapやfilterでさえHaskellを勉強していなかったら、とっつきにくかったんじゃないかと思います。他言語の経験が豊富であればまだしも、いきなりRustを始めると挫折してしまうでしょう。 だからこそ、書のような実践的な入門書は重要だと思います。「あれもこれもやらなきゃいけない」とならずに、実際に利用されるトピック

    実践Rust入門を読んだ - 逆さまにした
  • O'Reilly Japan - ベタープログラマ――優れたプログラマになるための38の考え方とテクニック

    プログラマとしてのキャリアをスタートすると、構文や設計を理解するだけでなく、その他の様々な事柄を理解し習得する必要があると気づきます。書は、優れたコードを作りだし、人々と効率的に働く生産性の高いプログラマになるための考え方とテクニックを38のテーマで紹介します。はじめに、コード1行1行の書き方、デバッグやエラー処理、コードの改善方法など開発現場でのコーディングを取り上げます。次にコードを単純に保つこと、コード変更やテスト、リリースなどソフトウェアを開発する際の考え方や心構えを扱います。個人的な活動として、継続的な学習方法と停滞を避けるための課題の見つけ方など、自らを成長させる方法も紹介。さらに組織の中で他の人とコミュニケーションを取りながら、効果的に働くための習慣を解説します。『Code Craft』の著者Pete Goodliffeが、自らの経験を元に「優れたプログラマ」になるための考

    O'Reilly Japan - ベタープログラマ――優れたプログラマになるための38の考え方とテクニック
  • シェルスクリプトの入門書 「新しいシェルプログラミングの教科書」を執筆した - mollifier delta blog

    「新しいシェルプログラミングの教科書」というシェルスクリプトの入門書を執筆しました。 2017年11月21日発売です。 新しいシェルプログラミングの教科書 作者: 三宅英明出版社/メーカー: SBクリエイティブ発売日: 2017/11/21メディア: 単行この商品を含むブログを見る 目次 シェルってなんだろう シェルスクリプトとは何か シェルスクリプトの基 変数 クォーティング 制御構造 リダイレクトとパイプ 関数 組み込みコマンド 正規表現と文字列 シェルスクリプトの実行方法 シェルスクリプトのサンプルで学ぼう シェルスクリプトの実用例 テストとデバッグ 読みやすいシェルスクリプト 内容 bashのシェルスクリプトを書く方法について解説したです。 変数、制御構造(if文など)、関数などbashの基的な文法から始まって、実際に役に立つシェルスクリプトを作成して、そのテストとデバッグ

    シェルスクリプトの入門書 「新しいシェルプログラミングの教科書」を執筆した - mollifier delta blog
  • 「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;

    最近golangでCLIツールを作っていたのだけど、Linuxのお作法とかいまいち分かっていなかった。そこでそのあたりのことが学べそうな「ふつうのLinuxプログラミング」を読んだ。 ふつうのLinuxプログラミング 第2版 Linuxの仕組みから学べるgccプログラミングの王道 作者:青木 峰郎SBクリエイティブAmazon このLinuxにおいてC言語でプログラミングする方法を、Linuxでの重要な概念も含めて教えてくれる。このを読めばとりあえずC言語を使ってLinux用のプログラムを書き始めることが出来るようになりそうだった。 それでC言語を使わない場合でも役に立つの?ということだけど、非常に役立ちそうで面白かった。なぜなら、単なるプログラミングの方法を教えてくれるだけではなくて、 Linuxの重要な考え方をファイルシステム・プロセス・ストリームという概念にまとめて教えてくれ

    「ふつうのLinuxプログラミング」でLinuxの基本概念やシェルの仕組みについて学んだ - $shibayu36->blog;
  • 現役エンジニアが「4月入社の新人エンジニア」におすすめする書籍17冊 - paiza times

    Photo by Germán Poo-Caamaño こんにちは。谷口です。 4月からITエンジニアになられた皆さん、ご入社おめでとうございます。 今回は、新人ITエンジニアの皆さんにおすすめしたい書籍を、弊社の現役エンジニアたちに聞いてきました。 分野ごとにわけてご紹介していきますので、片っ端から全部読むというよりは、自分に必要な分野・不足していると思う分野からチェックしてみるのがよいかと思います。 ■仕事全体の進め方について Clean Coder 達人プログラマー 職人から名匠への道 プログラマが知るべき97のこと ■コードの書き方について リーダブルコード ―より良いコードを書くためのシンプルで実践的なテクニック リファクタリング―既存のコードを安全に改善する― プログラミング作法 ■Web開発について Webエンジニアの教科書 Webを支える技術GitHubについて Git

    現役エンジニアが「4月入社の新人エンジニア」におすすめする書籍17冊 - paiza times
  • 「やさしいコンピュータ科学」読んだ - $shibayu36->blog;

    やさしいコンピュータ科学 (Ascii books) 作者:アラン・W. ビアマンASCIIAmazon 最近、流行りのものを勉強するより、技術の賞味期限が長いコンピュータサイエンスの基の理論を再勉強しようという気持ちが強い。そこで、とりあえず概論でも見るかという気持ちになって、「やさしいコンピュータ科学」を読んだ。 このはコンピュータ科学の概論を出来るだけやさしく書いた。カバーする範囲もある程度広範囲で、プログラミングとは何か、プログラミングの最小構成要素、アルゴリズム、電子回路、計算困難などを取り扱っている。やさしい、というワードを関しているだけあって、たしかに変に専門用語は使っていない。 ざっと眺めただけなのだけど、個人的には大学で習ったことをぼんやりと思い出した。ぼんやりと思い出して、そういえばこういうのもあったなあという気持ちにはなれたので、まあ全体の概論はもう理解できてい

    「やさしいコンピュータ科学」読んだ - $shibayu36->blog;
  • プログラマ歴13年の僕が10年後まで感謝し続けていると思う本13冊

    挨拶 お久しぶりです。ORASもうすぐ発売ですね。僕はとりあえずメガタブンネを軸にしたパーティーを組んでみるつもりです。ポケモントレーナー兼プログラマの石田です。様々な没稿を経て、こんな内容になりました。振り返ってみれば、職業プログラマとしては、もう13年になり限界説の35歳に差しかかったタイミングです。技術そのものに貪欲なタイプのエンジニアからすると読んできた技術文書の数は少いんじゃないかなと思うのですが、棚卸しの意味も込めて13冊を短評付けて選定してみようと思います。中には絶版になっていて、マーケットプレイスでないと手に入らないような古いも有ります。また、ひょっとすると現代的な環境に似わないものも有るかも知れません。その場合、おっさんの棚卸しが目的だということで、大目に見てください。 プログラミング言語Perl VOLUME1, 2 と実質2冊なのですが1冊としてカウントしています。

  • 『Rubyによるクローラー開発技法』を書きました - プログラマでありたい

    勉強会やスライドで紹介していましたが、Ruby×クローラーという題材で、『Rubyによるクローラー開発技法』というを書かせて頂きました。RubyEmacsの鬼であるるびきちさんとの共著です。 Rubyによるクローラー開発技法 巡回・解析機能の実装と21の運用例 作者: るびきち,佐々木拓郎出版社/メーカー: SBクリエイティブ発売日: 2014/08/25メディア: 大型この商品を含むブログ (1件) を見る このを書いた理由 そもそものキッカケは、るびきちさんのエントリーにある通り、SBクリエイティブの編集者さんが、クローラーの作成経験のある人を探していて、私の書いた「オープンソースのRubyのWebクローラー"Anemone"を使ってみる」を読んで打診してくださったというのが始まりです。 私自身も、Webからデータを収集して分析するということは、趣味として長年やってきました。一

    『Rubyによるクローラー開発技法』を書きました - プログラマでありたい