by shigemk2

当面は技術的なことしか書かない

プログラミング

停止性問題

停止性問題 - Wikipediaチューリング機械(≒プログラム、アルゴリズム)Aに入力xを入れたら有限時間で停止するか、という問題。 かのチューリングが対角線論法を用いて、停止性問題を解くチューリング機械が存在しないことを証明した。「プログラムAとデータ…

キャメルケース

キャメルケース - Wikipediaアッパーキャメルケース (UCC)、またはパスカルケース(PascalCase) 複合語の先頭を、大文字で書き始める。 つづり例:CamelCaseローワーキャメルケース (LCC)、または単にキャメルケース 複合語の先頭を、小文字で書き始める。 つ…

OOPにおけるクラス名やメソッド名のネーミングの基準

オブジェクト指向の場合、class が人やモノ(名詞)で、メソッドがやること(動詞)になる。class名で動詞がつくのは変だし、メソッド名が名詞で始まるのも変ですね。

オブジェクトとクラス

OOPのおかげで、すっきりとした設計で保守や再利用が出来るようになった。 OOPでは、データ自身とデータを処理するコードをひとまとめにして扱い、開発者はそれを利用して プログラムを作成することになる。手続き型のプログラミング言語では、個々のユーザ…

DBのメモリ消費について

大量のデータファイルを一度に引っぱってくるほうが、 何回もSQL文を発行するよりも重いことに留意しておく。

メーリングリストはサポートセンターではなく互助会です

技術系メーリングリストで質問するときのパターン・ランゲージ「おうちに帰るまでが遠足です」と言わんばかりのタイトルですが、 技術系メーリングリストに投稿するときのポイントについて。 表題 あいさつではなく用件を書きましょう(はじめましては×) 自己…

コードは呼び出し側から書くべし

こちらから ぷっちん日記(2012-03-05)こんな感じのエントリがあり、かつちょくちょく言われているのでメモしてみる。 「どうやってその機能を実現するか」を考え始める代わりに、私はまだ存在しないその機能を「呼び出してみる」。 僕はcakephpでコードを書…

メモリの節約と処理の高速化

プログラミングにおいて、 メモリの節約と処理の高速化は似ているようで全く違うものであることを理解する。基本的にメモリを使ったほうが処理は速くなる(Chromeが良い例) で、メモリの消費量と処理の高速化は結構天秤になるので、注意すること。巨大な配列…

クライアントとプログラミングのズレ

ITプロジェクトの実態とは! | cagylogic「顧客が本当に必要だった物」と「顧客が説明した要件」 顧客が本当に必要なものは、顧客は自分では説明できない。そして、クライアントの要望とプログラマの考えにズレが生じて、 誰も望んでいない成果物が産まれて…

オーバーロード

オーバーロードとは 【 overload 】 - 意味/解説/説明/定義 : IT用語辞典プログラミングにおいて、戻り値や引数の数やデータ型(シグネチャ)が異なる同名の関数やメソッドを多重定義すること。オーバーロードにより、引数の型が異なる関数を複数定義すること…

PL/I

PL/I - WikipediaPL/I(ピーエルワン)は、汎用プログラミング言語の一つ。 名前は英語の「programming language one」に由来する。PL/Iは科学技術用、工業用、商業用などにデザインされた命令型プログラミング言語である。 1964年に生まれ、多くの教育機関…

スナップショット

スナップショットとは 【 snapshot 】 - 意味/解説/説明/定義 : IT用語辞典開発中のプログラムのソースファイルや、稼動中のデータベースファイルなどを、 特定のタイミングで抜き出したもの。 スナップショットは専用のアプリによって収集、管理されること…

doxygen

関数の依存関係をグラフィカルに表示させるためのツール。homebrewでインストール可能(graphviz も任意で必要)詳しくはこちらから Doxygen

snip

もとは「ちょんぎる」みたいな意味だけど、 「省略」という意味です。

mod modular 合同式

余り、剰余を求める 6 % 2 = 0 7 % 2 = 1 みたいな。

コードのpushと、DBの書き替えと、デプロイと

DBの書き替え(テーブル削除やカラム追加など)を伴うデプロイを行う場合 注意すべき点がある。それは、順番である。DBへの追加 まずDBにカラムやテーブルを追加してからコードのpushを行う。 先にコードのpushをやってしまうと、プログラムがDBに情報を 追加…

プログラマがブログを書くにあたっての諸注意

具体的なワードを使わないように注意すること 同業者や他のプログラマの方々が見ているかもしれないので、 具体的に現在のプロジェクトが悟られるようなエントリー内容は避けること。注意すべきは 変数名 関数名 テーブル名 カラム名 プロジェクト名 など。…

クッキーについて

クライアントがログインする際に、クライアントのブラウザに、ログインしたという情報(クッキー)を渡す。 クッキーとは一時的に情報を格納しているもの。 次回以降クライアントがログインする際には、ブラウザに残っているクッキーを見て、ログインする。 ロ…

各ルーチンの性質

for(初期化、条件、インクリメント) インクリメントは、ルーチンの最初に行われるため、ルーチンを抜けたら$iの数は一つ大きい。 foreach 基本的に配列の全要素にアクセスするが、インクリメントをルーチン内に入れる事も可能。必要に応じてインクリメントを…