linkto_sitemap  
  menu_top   menu_aboutus   menu_coterie  
    menu_inquiry   menu_link   menu_blog
発行物紹介
 
発行物一覧

  ▼次回イベント情報

  ▼すべての発行物

  ▼ご注文方法

頒布中発行物

  File/Dir Hacks ver.0.2

  コンパチブル・シェルスクリプティング

  初めてのPOSIX原理主義

  平成最後のフレンズかんそくたい

  そんなにあるのか チップスター図鑑

  ポプテピツイ

  フレンズかんそくたい

  ついったーちほーの最大瞬間風速

  Win/Mac/UNIX
すべてで20年動くプログラムはどう書くべきか

  あの紀文(ひと)は今、キッコーマン。(2版)

  鳥と太陽の紋章を受け継ぎし者たち

  すべてのUNIXで20年動くプログラムはどう書くべきか

  キッコーマンの
飛んでる豆乳
飲みたい紀文

  本当は身近な
うつ病のはなし

頒布終了発行物

  あの紀文(ひと)は今、
キッコーマン。

  Shell Script
ライトクックブック
2014-2016

  すべてのUNIXとWindowsで20年動くプログラムはどう書くべきか

  Shell Script
ライトクックブック
2014-2015

  ななか Inside Press vol.5

  リッチな
コンピューター入門

  リッチな
サーバー構築
VOLUME1 DS

  Shell Script
ライトクックブック

  笑顔になりたい

  Googol Mac
Like Racks 第1版

  リッチな
サーバー構築
VOLUME2

  できねPROmini
Chromium OSクラウドコンピューティング

  できねPRO
そろそろIPv6事始め

  できねPRO
快適データ通信

  TeX同人誌用
栄養補助食品
 
  カバー・タイトル
 
表紙:File/Dir Hacks ver.0.2

POSIX原理主義の本 第3弾(予定)

File/Dir Hacks ver. 0.2
基礎+トランザクション処理編

リッチー大佐 (著)

2018/8/10(コミケ94) 0.1版発行
2019/12/31(コミケ97) 0.2版発行
A5版 82ページ

  • 正誤表を追加しました(2020-01-20)
目次を表示,→訂正情報はこちら
①冊子+PDF版 頒布価格500円【税込】

現在、カゴに 冊入っています

②PDF単独 現在無償公開中
今後の改訂でより良い内容にするために、
ご意見をください

▲トップに戻る


  本の内容
 

FileとDirですべて解決、シンプル・超堅牢なアプリ・システム開発術

本文サンプル(1)

「シェルスクリプトでシステム開発」と言われても,「ろくな開発ライブラリーが揃ってないじゃないか!」と不満を口にし,始めから眼中にないという方,多くありませんか?

見くびってはいけません.シェルスクリプトでも十分に開発ができます.でも多くのプログラミング言語が持っているようなライブラリー類に頼るのではありません.少々のUNIXコマンドと,ファイル・ディレクトリーを,頭を使って使いこなし,やりたい処理を実装していくのです.

コンピューター化される前の紙の時代,人々は業務で降りかかる様々な作業をどのようにこなしていたのでしょうか.答えは「書類」です.業務で発生する様々な情報を,まとめ方(フォーマット)を工夫しながらノートや札に記録し,それを机の棚や引き出し,倉庫,掲示板などに整理整頓しつつ保管・参照・更新をしていました.

ということは,突き詰めて考えれば,紙の時代に人々がこなしていた情報管理やタスク管理はみな,書類や札,そして棚,引き出し,倉庫,掲示板等のデータ構造をファイルやディレクトリーに写像すれば実現できるはずなのです.

この理屈に基づき,RDB製品が行っていたデータ管理から,トランザクション処理などのタスク管理をファイル・ディレクトリーでこなすテクニックを解説しようとする本です.もはや移植性や維持管理で足を引っ張る言語やライブラリー類は要りません.どのOSにも始めから入っているファイルシステムとUNIXコマンドだけで,しがらみから解放されたプログラミングを実現しましょう.

ver. 0.2 版の目次

取り扱うテーマが大きいため,まだ完成には至っていません.0.2版では主にタスク管理(トランザクション処理とキューイング)の話題を追加しました.

以下に目次を示します.強調してある項目が0.2版での追加部分です.(4-6章はすべて)

  • 第1章 File/Dir データ管理術事始め
    • HACK 1.1 まず、何を重要視するかを確認する
    • HACK 1.2 見やすさ・分かりやすさを追求する
    • HACK 1.3 無理なく速さを追求する
    • HACK 1.4 強靭さ"robustness"を追求する
    • HACK 1.5 データやディスク容量をケチらない
    • HACK 1.6 システムを擬人化し、手作業時代の構造を写像する
    • HACK 1.5 File/Dirデータ管理術用コマンドセット"ShellShoccar"のインストール
  • 第2章 データ管理のためのファイルの使い方
    • HACK 2.1 「列区切りは、半角空白1個以上」と決める
    • HACK 2.2 文字列中の半角空白は、"_"(アンダースコア)で表す
    • HACK 2.3 改行・タブ等のその他特殊文字はバックスラッシュ記号でエスケープする
    • HACK 2.4 NULL値は、"-" や"*" などの記号1 文字で表す
    • HACK 2.5 ファイルフォーマットの種類を把握する
    • HACK 2.6 SSV形式(広義の eld 形式)
    • HACK 2.7 key-value 形式(name 形式)
    • HACK 2.8 JSONPath-value形式・XPath-value形式
    • HACK 2.9 CSVindex-value 形式
    • HACK 2.10 ファイルは、常にソート済の状態での保存を心がける
  • 第3章 データ管理のためのディレクトリーの使い方
    • HACK 3.1 RDBのテーブル1 つ̸= ファイル1 つ
    • HACK 3.2 1つのディレクトリー直下のファイル数≦10000
    • HACK 3.3 内容更新する1 つのファイルに収める行数≦10000
  • 第4章 実は排他制御不要な排他処理
    • HACK 4.1 単調増加カウンターは追記リダイレクションで作る
    • HACK 4.2 複数プロセスから同一ファイルの内容を更新しない設計にする
    • HACK 4.3 ファイル更新の最後にはmvコマンドを使う
    • HACK 4.4 小さなファイルをディレクトリーに並べる
    • HACK 4.5 加工元データファイルに加工後データを上書かない
    • HACK 4.6 その他、アトミックな処理を活用する
  • 第5章 排他処理(トランザクション処理)
    • HACK 5.1 排他ロックは「lnなどの早い者勝ち」ルールで捌く
    • HACK 5.2 共有ロックは、ディレクトリーでメンバー管理する
    • HACK 5.3 セマフォ制御は、共有ロックに最大共有数を設けて対応する
  • 第6章 非同期キューイング -- 食券方式な食堂の注文管理
    • HACK 6.1 キューイングは、食券方式の食堂を真似する
    • HACK 6.2 規模や複雑さが増したら、大規模な食堂の仕組みを真似る

▲トップに戻る


  訂正情報
 

本誌発行後に見つかった訂正情報を掲載します.

p.29 2つ目のコンソール枠内 1行目 (2020-01-20)

【誤】
catuinfo_nosort.txt |
【正】
cat uinfo_nosort.txt |

▲トップに戻る

  その他情報
 

クレジット

This book is the 19th products of the Rich Laboratory.
Copyright © 2018-2019 Matsura Rich Laboratory, All rights reserved.

▲トップに戻る

 
 
nearly_valid_html401
[Powered by FreeBSD]
Powered by Apache
     
 
Copyright © 2007 Matsura Rich Laboratory, All rights reserverd.