関連サイト
本書の関連ページが用意されています。
内容紹介
ショートコーディングとは、プログラムのソースコードがどれだけ短く書けるか、「1バイトでも短く」データ構造・アルゴリズム・処理系の観点から探求することです。ショートコーディングを行うことで、プログラミングの思考方法や本質を学ぶことができます。
本書では、与えられた問題の単純化や読み替えを可能な限り行い、データ構造やアルゴリズムを十二分に検討した上でソースコードを最も短くする方法、ときには儀式的・作法的プログラミングに疑問の目を向け、あえて「ダメ!」と言われることをあえてやってみることで、処理系の知識を深める方法なども伝授します。
ショートコーディングにおいて最も大切な要素は、その精神です。誰よりも短くコードを書くと決めたら、最後まで諦めずに頑張る。これがショートコーディング魂なのです。1人だけでショートコーディングを行うことはあまりありません。「ショートコーダー」たちは1バイトでも短いコードを書くため激しく戦い、終わればお互いを称え、最短のコードに至る思考過程や自分が発見したHackについて語り合い、知識を共有します。本書はコーダーたちが闘う場についても紹介していきます。
【注意】
本書は2007年8月に刊行された『ShortCording~職人達の技法』を元にした復刻版です。初版当時と大きく状況が変わった記事については注釈を追加していますが、基本的に書籍中の情報は、原著発行時のものですので、ご了承ください。
書誌情報
- 著者: Ozy, やねうらお(監修)
- 発行日: 2014-03-11 (紙書籍版発行日: 2014-03-11)
- 最終更新日: 2014-03-11
- バージョン: 1.0.0
- ページ数: 400ページ(PDF版換算)
- 対応フォーマット: PDF
- 出版社: マイナビ出版
対象読者
著者について
Ozy
ショートコーディングに魅せられたプログラマ。大阪府出身。
個人ブログ http://d.hatena.ne.jp/Ozy/
目次
監修者より
ショートコーディング復刻版の出版にあたって
復刻版の変更点
本書のコードが動かない?
Chapter1 ショートコーディング入門
- 1-1 ショートコーディングことはじめ
- 1-2 戦いの場所 ~オンラインジャッジシステム~
- 1-3 やってみよう ~ショートコーディングの基本~
- 1-4 ウォーミングアップ
Chapter2 必見! 超絶テクニック
- 2-1 規則性を極める
- 2-2 Quick Sort Hack
- 2-3 ライブラリ関数を使いこなせ
- 2-4 1バイトの頼りになるヤツ
- 2-5 ビット演算超魔術
- 2-6 ポインタを使いこなそう
- 2-7 数学的な問題
- 2-8 アルゴリズムでキメる
- 2-9 数の新常識
- 2-10 1バイトへの情熱
Chapter3 ショートコーディング研究
- 3-1 より高度なテクニックに向けて
- 3-2 ループ凝縮
- 3-3 強力な拡張構文
- 3-4 マクロでコードは短縮できるのか
- 3-5 神業main再帰
- 3-6 Quick Sort HackⅡ
- 3-7 チートコードとセキュリティ
- 3-8 難問に挑む
Chapter4 言語対決
- 4-1 ショートコーダーは言語を選ばず
- 4-2 Java vs C
- 4-3 Pascal vs C
- 4-4 C++ vs C
- 4-5 さらなる挑戦
Chapter5 自分を磨け!
- 5-1 読者の皆さんへ
- 5-2 貴重な参考資料
- 5-3 凄腕ショートコーダーたち
- 5-4 最後に
Appendix 付録
- A-1 掲載問題リスト
- A-2 ASCIIコード表
- A-3 演算子の優先順位と結合規則