
意外と知られていない構造化プログラミング、あるいは構造化プログラミングはデータも手続きと一緒に抽象化する、あるいはストロヴストルップのオブジェクト指向プログラミング史観 書いた人: ると 猫型プログラミング言語史観(1) 〜あるいはオブジェクト指向における設計指針のひとつ〜という記事がありました。手続き型からの発展としてのオブジェクト指向という史観を書いた記事です。しかし、そこで次のように述べられている史観は少々単純化しすぎです。 手続き型プログラミングでは手続きを抽象化することで保守性を挙げることに成功したが、データを守ることには失敗してしまった。そこでオブジェクト指向はデータと手続きをひとかたまりにすることでデータを外から守るというコンセプトを打ち出した。 手続き型プログラミングの時代は、少なくとも思想的にはそこまで暗黒的ではありませんでしたし、「データと手続きをひとかたまりにする」の
Refactoring your JavaScript code with Grasp | Grasp - JavaScript structural search, replace, and refactor という記事では、Grasp を使ったJavaScriptコードのリファクタリングについて書かれています。 この記事は Refactoring your JavaScript code with Grasp | Grasp - JavaScript structural search, replace, and refactor の簡単な紹介です Grasp は JavaScript ASTを元にgrepのような検索、sedのような置換などを行えるコマンドラインツールです。 GraspはNodeで(実際にはLiveScriptで)書かれているツールで npm 経由でインストールできま
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? Go言語を始めて38日たったので、これからGo言語を始めるプログラマにちょっとでもヒントになるように、どのようにGo言語を始めて、どのような手順で学んできたかまとめておきます。 筆者のバックグランド PHP歴、JavaScript歴10年~ Python 3ヶ月くらい Ruby 1日 静的言語経験ほぼ皆無(Java 3日くらい、Scala 3日くらい、Objective-C 1週間くらい、Cそもそも挫折、C# 1日) 静的言語というと、「コンパイルの一手間が面倒」だとか「環境を作るのが面倒」だとか先入観があり、ほぼ食わず嫌い状態でした。
あなたがJava開発者なら、2013年はあなたにとってさぞや仕事のチャンスに恵まれた一年だったことだろう。 少なくともStack Overflowの統計によればそうだと推測できる。何千もの会社が毎年特定の開発スキルを持った求職者を見つけるためにこのサイトの「Careers 2.0」検索機能を利用している。そして2013年は、Javaが最も頻繁に検索されたキーワードだったのだ。 関連記事: 2013年に米国で最も需要の高かったジョブスキルとは? Stack Overflowは、14,000件もの全検索履歴から最も多く使われたキーワードを計測し、そこから最も需要のあった開発者スキルを割り出してそのトップ10データを提供してくれた。 Stack OverflowでCareers 2.0のプロダクト・マネージャーを務めるウィル・コールによれば、このJavaの人気は雇用者のモバイルの開発に対する関心
[ 目次, 前節, 次節, 索引 ] 2014-03-06 更新 [ 目次, 前節, 次節, 索引 ]
本連載は、Java言語やその文法は一通り理解しているが、「プログラマー」としては初心者、という方を対象とします。Javaコアパッケージを掘り下げることにより「プログラマーの常識」を身に付けられるように話を進めていきます。今回はアーカイブと圧縮の違いなどの基礎知識とともに、Java APIでJava定番のファイル圧縮形式jarやgzip、zip形式を扱う方法も紹介。 今回はデータの圧縮技術を学んでいきます。データの圧縮技術はさまざまなコンピュータ関連用途において利用されていますが、この記事では「ファイル圧縮」の話題に絞って話を進めていきます。 意外と知らない、「圧縮」って何? 私たちが普通にOSを利用していると、ファイルの拡張子が「.zip」「.lzh」「.cab」などとなっているファイルを扱うことがあります。これらの拡張子を持つファイルは、複数のファイルやディレクトリを1つのファイルにまと
そろそろ軽くRubyをやってみたいけどなんか情報多すぎてどこから手を付けたらいいかわからない、リファレンス的なものとか言語論的なものとかコミュニティー的なものとかの情報は結構あるけど、もっとカジュアルでかと言ってどの言語でも使いまわせる的な説明じゃなくRubyらしさが浮き出てるようなもので、しかもちょっとしたCLIツールとかWebアプリとかを作れる程度に理解の手助けをしてくれるものがほしいけど、今の段階で大枚叩きたくないしという人向けに僕がRubyの道案内を致します。 ステップ1(所要時間:0〜10分、投資額:0円) あなたのコンピュータでRuby2系を使えるようにします。 Macなひと => Mavericksをインストールする。 Windowsなひと => RubyInstaller for WindowsでRuby2系をインストールする。 Linuxなひと => ご自由に。 ターミナ
Merry Christmas! GREE Advent Calendar もいよいよ最終日、25日目はグリー株式会社でCTOをしておりますふじもとがお送りします。 今日まで24人のGREE Engineersなみなさまにエントリを書いていただいたわけですが、思ったよりも多種多様な内容で、あらためていろいろな方面で素敵なエンジニアがいるなー、としみじみしてしまいました。いやしかしgitとchefの記事人気ですね、そして、「当然CTOはすごい記事書くんですよね」とプレッシャーをかけて楽しむ仲間たちに囲まれてぼくは幸せです、あーすごい幸せー。そんなプレッシャーの中、今までのエントリとはちょっと方向性を変えて、CTOの話でも書いてみようかと思います。なお、ぼくの趣味は多分問題解決です。 そんなわたくしふじもとは来年で、CTOっていう肩書きでお仕事をはじめて10年とかになるんですが、なかなか先輩と
ガベージコレクションのアルゴリズムと実装 中村 成洋, 相川 光, 竹内 郁雄(監修) 達人出版会 1,045円 (950円+税) GCについて初めて日本語で書かれた技術書です。前半部分でアルゴリズムをわかりやすく解説し、後半は複数の言語処理系の実装を読み解いていきます。GCの理論と実際の利用方法を学べる書籍です。 内容紹介本書は次の2つのテーマを扱います。 GCのアルゴリズム(アルゴリズム編)GCの実装(実装編)アルゴリズム編では、これまでに考案されてきた数多くのGCアルゴリズムの中から、重要なものを厳選して紹介します。伝統的かつ基本的なものから、やや高度なアルゴリズムを選定しています。GC独特の考え方や各アルゴリズムの特性などを理解していただくのがアルゴリズム編の最大の目的です。 実装編では、筆者らが選定した言語処理系のGCを読み進めていきます。アルゴリズム編では理論をしっかり学び、実
こんにちは、@cutmailです. 365日Xcode触ってますか? はじめに Xcodeはそのまま使ってもいいですが、いくつかの便利なプラグインを入れてみるとより開発がしやすくなるかもしれません。 プラグインは入れ過ぎるとXcodeが重くなったりするかもしれませんので、必要なもののみインストールしたほうがよいかと思われます。 XVim Vimmerのための、XcodeでVimのキーバインドが使えるようになるプラグイン https://github.com/JugglerShu/XVim XTodo TODOや、FIXMEなどのコード内の注釈を抜き出して表示してくれるプラグイン https://github.com/trawor/XToDo XAlign コードを自動的に整列するプラグイン https://github.com/qfish/XAlign ShowInGitHub 選択した行
既存記事のまとめのため新しい要素があるわけではないのですが、Appleから発表されたXcode 5が正式にリリースされる前の復習ということで。 Tipsを適用する前のコード #pragma mark - Private Category @interface Sample () @property (strong) NSNumber* i; @property (strong) NSNumber* c; @property (strong) NSNumber* f; @property (strong) NSArray* array; @property (strong) NSDictionary* dictionary; @property (strong) Sample* child; @property (strong) UIColor* color; @property (assi
CyberAgent: How We Deployed Production Kubernetes Clusters on OpenStack witho...
UなんとかIDみたいなのがいっぱいあって区別がつかないので少し整理してみた。 なんとかIDの種類。 UDID(Unique Device IDentifier) (たぶん)Apple用語。 iOS端末の製造時に割り当てられる固有の識別コードで、値の変更はできない。 端末IDや端末固定IDと呼ばれるものと同じ。 iOS5からアプリからの取得が非推奨になった。 UUID(Universally Unique IDentifier) RFC 4122で定義されている。 生成の度に値が変わり、理論上重複することがない。 実装的にはGUID(Globally Unique IDentifier)が有名。 iOS6からNSUUIDクラスを使って簡単に生成できるようになった。 UIID(Unique Installation IDentifier) インストールごとに変わるという性質を持ったUUID。
増井雄一郎(@masuidrive)さんの「数十時間悩んだあげく1行で直るコード」問題解説記事 #c #mruby 2013.12.12 Category:CodeIQ問題解説・リーダーボード Tag:C ,masuidrive ,mruby ,Ruby 増井雄一郎さんから初の問題!「数十時間悩んだあげく1行で直るコード」の解説記事です。 この問題は、実際に増井雄一郎さんとまつもとゆきひろさんのお二人が数十時間悩んだ結果解決した経験が元になっています。 あなたはこの問題解けましたか? by CodeIQ運営事務局 増井雄一郎です。 初のCodeIQへの出題でかなり緊張しましたが、想定より多くの方に答えていただき、驚きと喜びで一杯です。 出題後、問題文に”1行”と書いたことで混乱させてしまったかもしれないと不安になりましたが、解答を見ているとあまり問題ではなかったようで安心しました。 問題文
イチオシ [[data.opening_days_date_label]] [[data.opening_days_time]]〜 [[data.tertiary_area_name]] ([[data.secondary_area_name]]) 男性 [[ entryStatus(data.application_deadline_date, data.entry_status_male) ]] [[data.condition_male_from]]〜[[data.condition_male_to]]歳 / 女性 [[ entryStatus(data.application_deadline_date, data.entry_status_female) ]] [[data.condition_female_from]]〜[[data.condition_female_to]]歳
全くゲームプログラミング経験が無い初心者(主婦)が30日間の間でUnityを使ってMikuMikuDanceのキャラでゲームを作っていこう!という企画です。 Unityのインストールから完成までを目指します! <<現在リアルタイム進行中>> 続きを読む
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く