タグ

ブックマーク / qiita.com/tadsan (11)

  • PHPで開発が捗るリアルタイムエラーチェック - Qiita

    [Pythonでも型チェックが捗る]と噂をきいたのでPHPの環境構築について書きます。ちょっと眠いので簡潔に… もしわからないことがあったら回答するのでコメントで聞いて1。 得られる利益 関数名を間違ってることに気付いたり 変な型どうしで計算してることに気付いたり うっかり変な値をreturnしようとしたり そんな問題に編集中に気付けるよ。 画面はVimだけど、ほかのエディタでもいいよ。 事前準備 PHP 7.1+ macOSなら brew install php とかでもいいです (システムに最初から入ってる/usr/bin/phpは不可) Composer https://getcomposer.org/download/ とか読んで適当に入れて。 COMPOSER_HOMEにPATHを通す PATH=$HOME/.composer/vendor/bin:$PATH みたいな行をシェル

    PHPで開発が捗るリアルタイムエラーチェック - Qiita
  • Q. PHPは大文字小文字を区別するか? - Qiita

    A. いろいろある PHPにもさまざまな言語要素がありますが、実は大文字小文字についての取り扱いはさまざまです。ここでは2018年1月現在のPHP7.1以下について言及します。 早見表 | 言語要素 | 大文字小文字を区別するか | |------------------+------------------------------------------------| | 文法・言語構造 | 区別しない | | ファイル | OS/ファイルシステム依存 | | 函数 (名前空間) | 区別しない | | 文字列比較 | 区別する | | 名前空間・クラス | 未定義時(ロード前)はクラスローダー実装依存 クラスが一旦ロードされた後は区別しない | | 変数 | 区別する | | 配列 | 区別する | | ArrayAccess | 実装次第 | | 環境変数 | 区別する | | プロ

    Q. PHPは大文字小文字を区別するか? - Qiita
  • PHP: Clean Code (clean-code-php) 蜜柑薬 - Qiita

    もくじ はじめに 変数 関数 オブジェクトとデータ構造 クラス S: 単一責任の原則 (SRP) O: オープン/クローズドの原則 (OCP) L: リスコフの置換原則 (LSP) I: インターフェイス分離の原則 (ISP) D: 依存逆転の法則 (DIP) 同じことを繰り返すな (DRY) はじめに この記事はRobert C. Martinの「Clean Code」のソフトウェアエンジニアリングの法則をPHPに適合させたものです。これはスタイルガイドではありません。読みやすく、再利用しやすく、そしてリファクタリングしやすいPHPコードを書くためのガイドです。 ここで挙げられるすべての原則は厳密に守らなくてはいけないわけではなく、少し守らなかったところで一般には許容されます。あくまでガイドラインですが、Clean Codeの著者たちがみな長年に渡って経験してきたことです。 この記事(

    PHP: Clean Code (clean-code-php) 蜜柑薬 - Qiita
  • いま熱い最新スクリーンエディタmicro ことはじめ - Qiita

    microとは何か 最近注目を集めてるような気がするスクリーンエディタ、つまり文字ベースのターミナル(端末エミュレータ)で動作するテキストエディタです。そのようなエディタとしてはviやEmacs、近年ではnanoが知られてます。 microはそのようなテキストエディタの中でも最後発で、目下のところ活溌に開発されてるところです。この記事ではREADME.mdからいい感じに抜萃しつつ紹介します。 microはviやEmacsのような独特な操作体系ではなく、GUIのテキストエディタに近い操作性(キーバインド)を持ちます。SSHなど端末経由でのテキスト編集の必要に迫られたときに、新たな操作体系を覚え直す手間を最小限にしながら作業に取り掛かることができます。 2016年10月20日 追記 #端末(ターミナル)の設定を追加しました。特に、Shift+[←↓↑→]での範囲選択が機能しない場合に参考にして

    いま熱い最新スクリーンエディタmicro ことはじめ - Qiita
  • 初心者を戒めるPHP - Qiita

    この記事は何か 挑発的な文言になってる箇所はあるものの、内容としてはそれなりにまじめに書いたつもり。むしゃむしゃしてやった。いまでは反芻してゐる。 PHPDocは必ず書け あらゆる再利用可能な手続きは、他人が容易に応用できるように型が明示的でなければいけない。メンバー全員が実装コード全てを把握できるものならそれが理想だけれど、残念ながら時間は有限だ。ヘッダだけを読んでメソッドの仕様が理解でき、またはコードを読む助けになるようなコメントが良い。 有名な事実を紹介すると、多くのコードは数か月(早ければ数日!)も経てば、他人が書いたコードに感じられるほど理解できなくなることがしばしばある。もちろん設計の練度にもよらうが、設計判断について注意を要した点などをコメントに残しておくことで、ひいては未来の自分の役に立てることができる。 お前の先輩は「PHPには型がない」などと知ったかぶって意味不明1なこ

    初心者を戒めるPHP - Qiita
  • モダンPHPアンチパターン - Qiita

    アンチパターンなので、見出しの内容はすべてバッドノウハウです。 前に書いたやつ PHPのモダンな開発環境を紹介する - Qiita PHP - Functoolsを作った - Qiita PHPのlist()はタプル展開のための機能 - Qiita 関係ないけどこれも: シェル、ターミナル、コンソール、コマンドライン 追記: 文中でとりあげた「怖い話」について、ちゃんと説明しました PHP - namespaceとBOMに何の関係があるのさ - Qiita ファイルの最後に?>を書く PHPコードは<?phpで始まり?>で締める。それがPHPの常識(キリッ ……そんなことはもう綺麗さっぱり忘れよう。PHPはテンプレートエンジンではあるが、Webアプリケーションを書く上では、もはやテンプレートエンジンとしての機能は求められなくなりつつある。 不要な?>を書いてはいけない理由は明確で、<?p

    モダンPHPアンチパターン - Qiita
  • 破壊的メソッド名には!をつけなければならない…なんて、誰が言ったの? - Qiita

    そんなものは迷信に過ぎない。 はじめに ここ数週間で何度か「破壊的メソッドなのに!がついてない」「!がついてないのに副作用がある」といった言説を何度か目にする機会があった。 「破壊的」と「非破壊的」 a.hoge(b)のようにメソッド呼び出しをしたとき、aの状態に影響を及ぼすメソッドを、Rubyでは一般的に「破壊的」と呼びます。メソッド呼び出しで前の状態を壊して、別の状態にしてしまふからです。 言葉で説明してもぴんとこないかもしれないので、「ふたつの配列をくっつけたい」といふ要望に対して、破壊的なパターンと、破壊的ではないパターンのコードを紹介します。 破壊ではないパターン # ふたつの配列を用意する a = [0, 2, 4, 6, 8] b = [1, 3, 5, 7, 9] c = a + b # aとbを連結してcに代入 p a #=> [0, 2, 4, 6, 8] p b #=

    破壊的メソッド名には!をつけなければならない…なんて、誰が言ったの? - Qiita
  • そのto_a、必要? - Qiita

    number_strings = (1..10).to_a.map{|n| n.to_s } p number_strings #=> ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] number_strings = [] [*1..10].each{|n| number_strings << n } p number_strings #=> ["1", "2", "3", "4", "5", "6", "7", "8", "9", "10"] とかやってませんか? 配列を作ってすぐにmapとかeachとかselectするような場合、同じメソッドがRangeにもあるので、to_aは要らない。 「ArrayとRangeの両方にあるメソッド」は次のような式を実行することで列挙できる。 p ((1..10).to_a.methods & (

    そのto_a、必要? - Qiita
  • 日本語を書くなら絶対に導入したい! 私が10年で厳選した超おすすめ入力メソッド10選 - Qiita

    こんにちはこんにちは! 日語書いてますか? さて、日は数々の日本語入力ソフトウェアを使ってきた私が、日語を書くなら 絶対に 導入したい超厳選日本語入力メソッドを紹介します ヾ(〃><)ノ゙☆ 今回は無料で使用できるものばかり集めてみましたので、有料ソフトに関しては後日またご紹介したいと思ひます(^^) それでは、ご覧ください!! ↓↓↓ 第10位 はい、定番の SKKIME for Windows' 98 ですね! WindowsユーザにはこのバージョンでSKKを知ったひとも多いはずです。 後継OS用にはいくつものSKKが生まれましたが、Windows 98の世界では未だに他の追随を許さない永遠の王者です! 第9位 9位は SCIM-SKK です! しかしSCIM自体を一瞬しか触らなかったので、僕はあまり使ったことがありません! 第8位 8位にランクインしたのは SKKIME 1.5

    日本語を書くなら絶対に導入したい! 私が10年で厳選した超おすすめ入力メソッド10選 - Qiita
  • ライセンスの選択を恐れる必要はありません - Qiita

    (訳註: この「はじめに」及び末尾の「訳者による補足」の章は原文にはなく、翻訳者(@tadsan)によるものです。記事の著作権表示及び元Webサイトの利用規約、免責事項、そしてこの記事についての訳者の見解について記します) (この記事の一部または全て ——ただしコメント欄は含まれない—— はCC BY-SA 3.0に則る限り、自由に利用することができます。翻訳と「はじめに」「訳註」については独自の著作権は主張しません。 改竄しても二次利用は独自の責任にて行ってください。) Please consult a legal expert before adopting a software license for your project. This site is licensed under the Creative Commons Attribution 3.0 Unported Lice

    ライセンスの選択を恐れる必要はありません - Qiita
  • Rubyのコードを解析する…? - Qiita

    はいこんにちはこんにちは。プログラミング初心者のZonu.EXEです。 今日はRuby Advent Calendar 2012の20日めです…? ちょっと前まで自宅警備員で、一個月ほど前からアルバイトでるびーおんれーるずを書くお仕事に就いたのですが、Ruby基礎力が低すぎて困ることが多々あります。 そんなわけで、Rubyをきちんと学ぶために基礎の基礎から調べてみましょか、みたいなテンションで書いてました。 ほんとは字句解析だけでがっつりと書きたかったんですけれど、ねたを集める時間がなかったので枝葉末節がひどいです。 タイトルと内容が合ってない気もするけど気にするな! 全然毛色が違ってるねたが混ざってても気にするな! オムニバス! はじめに プログラミング言語で書かれたソースコードを読んで何らかの処理を行ふソフトウェアを「処理系」と呼びます。よくわかんないですけど、何らかの処理をしてくれる

    Rubyのコードを解析する…? - Qiita
  • 1