タグ

programmingに関するgreennoahのブックマーク (34)

  • 非公式PDF版SICPの全訳を公開しました - minghaiの日記

    また1年振りの更新となりかけました。 Andres Raba氏により2011年から開発が続けられている、非公式PDF版SICPを全訳しました。 ファイル 恒例のgithubです。 https://github.com/minghai/sicp-pdf jsicp.pdfが日語版の体です。 ejsicp.pdfはデバッグ用の日語・英語併記となります。 ライセンスはCC BY-NC-SA 3.0です。商業使用は認められないことにご注意下さい。 SICPとは何か? SICPとはMITが作成した何も知らない新入生向けのプログラミングの教科書です。 プログラミングと強調したことには理由があります。このは良くあるプログラミング言語の教科書ではなく、あくまでもプログラミングを勉強するための教科書だからです。このことはこのの中でも、最初の前書き、序文にて何度でも繰り返し強調されています。筆者達が

    非公式PDF版SICPの全訳を公開しました - minghaiの日記
    greennoah
    greennoah 2014/04/03
  • CODEPREP

    CODEPREPはオンラインプログラミング学習サービスです。1日10分プログラムを書くことで「毎日こつこつプログラムを書く習慣」と「作ったものを動かす体験」を提供し、プログラミング学習の「継続」をサポートしていきます。そうして、一人でも多くのユーザにプログラミングの楽しさを感じてもらうことをサポートしてまいります。

    CODEPREP
    greennoah
    greennoah 2014/01/12
  • 米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ

    "米国人からコーディングについての怒りのメールを頂戴した" の補足 - その手の平は尻もつかめるさ ↑の方で補足いたしました。(2012.09.04 追記) 最近、英語のメールでよく怒られます。moznion です。 海を隔てて共同作業しているアメリカ人から、僕のコーディングについてお叱りのメールを頂いたので、 自戒の念を込めて邦訳して記します。 書いてあることは「当然」とも言うべき内容ですが、僕はその「当然」も守れていなかったのかぁ〜と反省。 以下、邦訳(意訳)です。 1. 郷に入っては郷に従え 既にソースコードが存在しているって事は、そこには同時にコーディングスタイルも存在しているってことだ。 その既存のソースコードに手を加える場合、別のコーディングスタイルを導入してはならない。 もし君がバックエンドのソースコードを弄っているなら、バックエンドのコーディングスタイルで記述するんだ。 フ

    米国人からコーディングについての怒りのメールを頂戴した - その手の平は尻もつかめるさ
    greennoah
    greennoah 2012/09/04
  • DRY原則の利用: コードの重複と密結合の間

    原文(投稿日:2012/05/25)へのリンク DRYは重複とそれに伴うメンテナンスの問題を軽減するものだが、誤用すると密結合を生み、可読性を損うおそれがある。教訓:ソフトウェア開発原則は、ほかの原則やパターン、プラクティスを考慮して適用しなくてはならない。 DRYは Don’t Repeat Yourself の略語であり、Andy Hunt氏とDave Thomas氏が書籍「The Pragmatic Programmer: From Journeyman to Master」(邦訳:「達人プログラマー―システム開発の職人から名匠への道」)で最初に言及したソフトウェア開発原則だ。その原則はこう述べている。 知識のあらゆる部分はそのシステムにおいて単一で、曖昧さのない、信頼できる表現でなくてはならない。 ここでHunt氏は重複による負の影響と、それゆえにDRYを利用することの重要性を強調

    DRY原則の利用: コードの重複と密結合の間
    greennoah
    greennoah 2012/05/31
  • 太一のコードの読み方メモ

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    太一のコードの読み方メモ
    greennoah
    greennoah 2012/05/16
  • プロとしての行為 Act as Proffesional

    心底、プログラマとして生きていくのが幸せなんだなと思える人に出会ったことのある@HIROCASTERでございませう。 プログラミングが上達するベストプラクティスってあるんでしょうか? 大学でコンピュータ教えている教授なんかは、そのあたり教えてくれるんでしょうか? あなたの先輩は教えてくれましたか? 昔ながらの職人がいう、見て、まねて、盗め。ですかね? 僕の経験で、いくつか書いてみました。 毎日コードを書く とにかく毎日コードを書いている。 息を吸うように、歯磨きををするように、顔を洗うように、事を取るように毎日コードを書いている。 テストコードも書く 動くソフトウェア側のコードだけでなく、テストコードも書いている。 必然と設計も考える癖が付くわけで…。 ソフトウェア全体を仕上げるまで書く 例えば、小さなメソッドだけでなく、クラス全体を。 ソフトウェアとして動作するまで全体を。 全体を仕上

    プロとしての行為 Act as Proffesional
    greennoah
    greennoah 2012/04/03
  • TDD について

    「深夜のテスト TL - http://togetter.com/li/5878 」 「TDD はテスト手法か否か - http://togetter.com/li/6759 」 の後も続いている議論を、皆でまとめませんか? 誰でも編集可能にしているので、どんどん発言を足したり、問題があったら削除したりしちゃってください。

    TDD について
    greennoah
    greennoah 2011/05/28
  • Review Boardならコードレビューを効率良くできる!

    Review Boardならコードレビューを効率良くできる!:ユカイ、ツーカイ、カイハツ環境!(19)(1/3 ページ) “コードレビュー”やってますか? “コードレビュー”は、ソフトウェア開発の重要なプロセスですが、往々にしておざなりにされがちです。 しかし、きちんとコードをレビューすることで、品質向上や、早期のバグ発見による後工程でのコスト削減につながります。また、病気や事故、他のプロジェクトへの突発的な火消し(!)などによる、開発メンバーの長期離脱時のリスク削減にもつながります。さらには、他の開発者が書いたコードを読んで学習することにより、コーディングスキルの向上にも役に立ちます。 今回は、「そうはいっても、現実的にコードレビューなんて無理……」という方のために、コードレビューを効率化する「Review Board」というツールを紹介します。 Review Boardの主な特徴5つ

    Review Boardならコードレビューを効率良くできる!
    greennoah
    greennoah 2011/03/11
  • Javaプログラマが知るべき9のこと - @katzchang.contexts

    はじめに ソースコードは設計であり、コードの記述は品質に直結するのは言うまでもない。ちなみに、プログラマにとって特に重要なのは保守性だ。コードは書いた直後から保守対象となるからだ。コードは要求文書の範囲で動けばいいと思っている人がいれば今すぐ、ソースコードをコピペして100klに増えるプラグインがいつの間にかインストールされる呪いをかけてあげよう。幸い、ここを読んでいる人にはそんな人はいないだろうと思うけれども。 ということで、コードの品質を下げる要因、すなわちシステム全体の品質を下げる要因となり、かつ使われやすいアンチパターンを挙げ、対策を検討していくことにする。対象は以下: 出力パラメータ 処理状態返却 意味のある配列 無意味な初期化 多すぎるtry-catch 暗黙の順序 コンパイラ警告の無視 過剰なコメント e.printStackTrace() 出力パラメータ メソッドの引数にオ

    Javaプログラマが知るべき9のこと - @katzchang.contexts
    greennoah
    greennoah 2011/02/08
    catch句でprintStackTrace()呼んだりしてる。。
  • codic - デベロッパーのためのネーミング辞書

    codicは、プログラマーのためのネーミング辞書です。新しいcodicでは、翻訳エンジンを搭載しネーミングをジェネレートできるようになりました。

    codic - デベロッパーのためのネーミング辞書
  • 最近興味深いと思ったWeb記事のリンク集 - give IT a try

    社内のメンバーに紹介しようと思ってためてきた各種Web記事へのリンクが大量に溜まっちゃいました。 ついでにここでも紹介しておきます。 一部の記事は会員登録が必要かもしれません。あしからず。。。 プログラミング/プログラム設計 プログラミングについてあまり知られていない7つのこと http://www.tommyjp.com/2010/08/blog-post_1710.html => どれも超重要。知らなかった人はこれを機に覚えておきましょう。 ソースコードの質 http://el.jibun.atmarkit.co.jp/genmaicha/2010/11/post-5c3e.html => 保守性、可読性、拡張性の重要性について。 技術的負債 http://d.hatena.ne.jp/asakichy/20101210/1291936604 => 技術的負債の原因や解決策について(そ

    最近興味深いと思ったWeb記事のリンク集 - give IT a try
    greennoah
    greennoah 2011/01/31
  • 幸せ倉庫

    結婚指輪は、夫婦にとって永遠の愛を象徴する特別なアイテムです。そのため、多くの人が時間をかけて選び、理想の指輪を手に入れたいと考えるものです。最近では、国内だけでなく、海外結婚指輪を購入するカップルも増えています。その理由は、海外ならではのデザインや価格、特別な思い出を求める人が多いからです。 しかし、海外結婚指輪を購入する場合、魅力的な点がある一方で、いくつかの注意点もあります。たとえば、言語の壁やアフターケアの問題、現地での手続きの複雑さなどが挙げられます。結婚指輪は一生使うものだからこそ、購入する場所や方法について慎重に考えることが大切です。 この記事では、海外結婚指輪を買うメリットとデメリット、さらに現地での注意点や手続きについて詳しく解説します。また、国内で手作りする指輪の魅力についても触れながら、特別な指輪を手に入れるためのヒントをお伝えします。 海外結婚指輪を買うのが

  • InfoQ: Domain Driven Design(ドメイン駆動設計) Quickly 日本語版

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    greennoah
    greennoah 2010/10/14
  • Googleエンジニアから学ぶ、ハッカーになるための勉強法 - 久保清隆のブログ

    Debian Project/Google ソフトウェアエンジニア鵜飼文敏さんの講演動画を見たのでまとめ。 内容は、フリーソフトウェア、オープンソフトウェアのハッカーGoogle内のハッカーがどのようにソフトウェアを作っているか。 少し前の講演だけど、ハッカーを目指す上で非常に参考になった。 ハッカーの特徴 ハッカーとは Hacker ethic ハッカーのソフトウェアの作り方 ハッカーの開発スタイル 手順 要求仕様 設計 実装 テスト デバッグ チューニング ハッカーに近づくには 必要な知識 知識の習得の仕方 ハッカー仕事をするときの問題点 その他に紹介されていた書籍 感想 参考 ハッカーの特徴 普通の人をはるかに上回る高い生産性 高品質のソフトウェアを作りだす ハッカーとは ハッカーズ大辞典によると、 プログラム可能なシステムの細かい部分を探ったり、その機能を拡張する方法を探求した

    Googleエンジニアから学ぶ、ハッカーになるための勉強法 - 久保清隆のブログ
    greennoah
    greennoah 2010/10/09
  • Free Programming Books

    Here is an uncategorized list of online programming books available for free download. The books cover all major programming languages: Ada, Assembly, Basic, C, C#, C++, CGI, JavaScript, Perl, Delphi, Pascal, Haskell, Java, Lisp, PHP, Prolog, Python, Ruby, as well as some other languages, game programming, and software engineering. The books are in various formats for online reading or downloading

    greennoah
    greennoah 2010/09/24
    無料のプログラミング本
  • 「レガシーコード改善ガイド」のススメ 第1回:レガシーコードの定義、テストの重要性とは

    「レガシーコード」とは何か 最初に1つ質問です。皆さんは、「レガシーコード」と聞いて何を想像するでしょうか? 多くの方はCOBOLなどで書かれたメインフレームで動くコードを真っ先に思い浮かべるのではないかと思います。しかし、当にそれだけでしょうか? ここでは「レガシーコード」という言葉を『何年も前に誰かが作り、内容が複雑で何をしているのかよく分からず、まともな仕様書もない』というコードを指すものとします。そう考えると、必ずしもメインフレームだけの話ではなくなります。この記事を読んでいる皆さんなら、そのようなコードを少なからず目にしていることでしょう。 現在の業務システムは、Java EEや.NETなどの基盤上に構築される、いわゆるオープンシステムが主流になっています。このようなオープンシステムであっても、構築されてから既に5年以上経過していることが珍しくなく、何度も手が加えられたコードは

    「レガシーコード改善ガイド」のススメ 第1回:レガシーコードの定義、テストの重要性とは
    greennoah
    greennoah 2010/09/16
    レガシーコード改善ガイドのススメ
  • For Sale Domain: codepost.org

    TrustpilotThis domain is available for sale!codepost.orgView UppercaseView Lowercase$999USD Buy Now Pay in installments Accepted payment methods:MoreAbout this domain'codepost.org is the ultimate destination for all things coding - a virtual post office where developers and programmers can send and receive snippets, tutorials, and hilarious coding memes. It's like a secret club where only the nerd

    greennoah
    greennoah 2010/07/23
  • Islamic spells for love inter caste inter religion marriage

    Add AI to your apps Learn AI Programming Publish your AI projects Free, open source, locally hosted, any platform, any language. View on GitHub Discuss Download Docs Turn a code snippet, simple Python module, or a Jupyter notebook into a CodeProject.AI module that can be deployed and used anywhere by everyone. Learn and AI without fighting tools and setup environments.

    Islamic spells for love inter caste inter religion marriage
  • プログラミング言語を作る

    このページの目的は、「独自のプログラミング言語を作る」ことです。 「プログラミング言語を作る」というのは、 やったことのない方からすれば、ずいぶん無謀な目標に見えるのかもしれません。 でも、いくつかの基礎知識さえ修得すれば、技術的には、 実はそんなに難しいものでもありません。 だったら、ひとつぐらい作ってみたいと思いませんか? なにしろプログラミング言語を作るなんて、 いかにもかっこ良さげじゃないですか。 私は作ってみたいと思いました。だから作ります。 プログラミング言語なんてもう山ほどあるのに、 今さら新しい言語なんて付け足して何をしたいんだよ! などというツッコミは入れてはいけません。 「なぜプログラミング言語なんか作るんですか?」 と聞かれたら、その答は そこにyaccがあるからだ。 で充分だろうと私は思います(yaccが何かは後述します)。 というわけで―― ただ私なんぞが新言語を

    greennoah
    greennoah 2009/06/25
  • 書籍「プログラミング言語を作る」が発売されます(amazonアソシエイトリンク追加) - K.Maebashi's はてなブログ

    下記のとおり、書籍「プログラミング言語を作る」が発売されます(宣伝のため、この記事はしばらく一番上に表示します)。 http://kmaebashi.com/programmer/devlang/book/index.html 6/19 22:11 amazonのリンクを追加(関連記事)。 書のテーマは「オリジナルのプログラミング言語を作る」ことです。 世の中には、現在広く使われているものだけでも、C, C++, Java, C#, Perl, Python, Ruby, PHP, Lisp, JavaScript……等々、すでに多くのプログラミング言語が存在します。これほど多くの言語が乱立している中で、なぜわざわざ新しい言語なんか作らなければならないのか、と思う人も多いことでしょう。 しかし、プログラムに関しては何でもそうだと思いますが、何かを深く知りたかったら、一番いいのはそれを自分

    書籍「プログラミング言語を作る」が発売されます(amazonアソシエイトリンク追加) - K.Maebashi's はてなブログ
    greennoah
    greennoah 2009/06/25