まべ☆てっく Vol.1にて発表したスライドです。リレーショナルデータベースをどのように使うべきか、あるいはそもそも何故データベースを使うべきなのかといったことについて解説しています。

APIを一つひとつ探すのが大変……。こんなAPIを使いたいけど、どうやって探せばいいのか分からない。そんなあなたにオススメしたいのがAPIのインデックスサービスです。 膨大なAPIが登録されたいわばAPIのデータベースのようなもので、きっと目的のAPIを見つけることができるはず。 そんなインデックスサービスを国内外から8つまとめてみましたので、是非ご活用ください! APIとは API(アプリケーションプログラムインターフェイス)とは、プログラムのパーツのようなもので、APIを利用することで新たに作らずとも、同様の機能を組み込むことが可能。最近では、サービスの普及目的や課金ビジネスとしてWebサービスを提供する企業がAPIの公開を行っています。 そのため、開発者は公開されているAPIを連携することでWebサービスの開発がより効率的かつ拡張性を高められるとして積極的に利用するケースが増えていま
はじめにこんにちは。星です。 弊社では、お客様の基幹システム構築をする際、Java言語を採用することが多いのですが、2015年4月末にJava 7のサポート切れになったことを受けて、昨年よりJava 8で開発をしています。 弊社でもそれなりの規模の案件になると、社員やパートナーの皆様を合わせて、数百人が同時に開発することも珍しくありませんので、私の所属する技術部隊でコーディング規約をはじめとして、開発をするにあたってのガイドラインの整備やEclipse等の開発環境の整備などのタスクを実施して、標準化とクオリティの担保を推進しています。 さて、Java 8においては、Java 7において実装見送りとなったStream APIやラムダ式といった大きな機能追加がありました。とはいえ、これらの機能を使ったとして、性能的に大丈夫なのかとか、どういったコーディングスタイルが良いのか? など、エンタープ
(【追記】コメントにあるようにgc373さんのご協力で、問題のデータはJSONとして修正されています。) データは大切です。優れたデータは社会によい価値を提供するでしょう。優れたデータというのは、価値の高い情報を持っているだけでなく、それが扱いやすいということも大切でしょう。扱いやすいというのは、データに簡単にアクセスでき、そのデータを容易に読み込めるということでしょう。特別なソフトウェア用の形式であったり、余計なものが書かれていて読む前に人間が読まないといけないというのは扱いづらいと言えるでしょう。SHIFT_JISなのも困りものです。 とはいえ、まずはデータがあって初めて何かができるわけで、オープンデータとして、政府がデータを公開し始めているのは評価すべきことのはずです。しかし、どのような状態のデータを公開すると良いのかについてはノウハウが不十分におもわれます。 さて、http://w
Unixの世界には readdir_r()というAPIがある。readdir()のthread safe バージョンとしばしば紹介されている。 それぞれの関数宣言は以下 http://man7.org/linux/man-pages/man3/readdir_r.3.html struct dirent *readdir(DIR *dirp); int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result); struct dirent { ino_t d_ino; /* inode number */ off_t d_off; /* not an offset; see NOTES */ unsigned short d_reclen; /* length of this record */ unsigned
JSの学習コスト高いかという問題、言語のコア自体はシンプルだが細かい == とかのハマりどころが多いのと、言語機能自体がシンプルすぎてエコシステムを理解してモジュールを扱うところに辿り着くのが大変、という問題に分類できる— 現場の声 (@mizchi) 2016年8月15日 jQueryの学習コストは、DOMはツリーなんだよという概念の獲得と DOM API の抽象サブセットを覚えるというだけで、2016年現在は jQueryによるUI設計論(ここが高まるとBackboneとかその辺)みたいなものに手を出す必要がないなら、そんなでもないんだろうな— 現場の声 (@mizchi) 2016年8月15日 Reactが難しいと言われる場合、仮想DOMという概念がやや難しい、というか非常にCS的なアルゴリズムとデータ構造が背景にあって、その上で単純なトップレベルAPIとアルゴリズムを理解してないと
GitBucketはプラグインシステムを備えており、プラグインで様々な機能を拡張することができます。このエントリではプラグイン開発の最初の一歩について説明します。内容的には以前GitBucket Newsで書いた以下の英語のエントリと同じものです。 gitbucket.github.io プロジェクトの作成 まず初めに以下の内容のbuild.sbtでScalaプロジェクトを作成します(gitbucketの依存関係は最新のバージョンにあわせて変更してください)。 name := "gitbucket-helloworld-plugin" organization := "io.github.gitbucket" version := "1.0.0" scalaVersion := "2.11.8" libraryDependencies ++= Seq( "io.github.gitbuck
今回、「みんなのGo言語」の執筆に参加しました! みんなのGo言語【現場で使える実践テクニック】 : 松木雅幸, mattn, 藤原俊一郎, 中島大一, 牧 大輔, 鈴木健太 : 本 : Amazon Big Sky :: 「みんなのGo言語」の執筆に参加させて頂きました。 「みんなのGo言語」執筆参加しました! : D-7 私がGoでプログラムを書き始めたのは2015年の明けごろからです。mattnさんのブログ を読みながら、面白い言語があるのだなーと思って書き始めました。 A Tour of Go を触ってみて、ちょっと冗長そうだけど案外いい感じかもな?と思いつつ少しずつGoで実装するようになっていました。そこから標準ライブラリ読み漁り、小さなツールを書きつつ、気がついたらプロダクションでも使うようになっていました。今では毎日Goで何かを書いています。 これまでにつかった言語のなかで、
ゴールドマン・サックス発のJavaコレクションフレームワーク、その7つの特徴と歴史とは:コレクション処理の万能道具箱Eclipse Collections入門(1)(1/3 ページ) 本連載では、ゴールドマン・サックス発のオープンソースJavaコレクションフレームワークであるEclipse Collectionsについて、その概要と歴史、機能を中心に紹介します。これまでのJavaやJava 8のStream APIと比較して何が違うのか。Eclipse Collectionsを例に、読者の皆さんがコレクション処理をより深く理解するための一助になればと思います。 ゴールドマン・サックスが開発し、オープンソースソフトウェア(OSS)として公開したJavaコレクションフレームワーク「GS Collections」が、Eclipse Foundationに移行し、「Eclipse Collecti
マイクロソフト、「Excel REST API for Office 365」正式リリース。保存されたExcelのワークシートにAPIでアクセス可能 多くの企業で活用されているExcel。営業部門が各営業担当の進捗状況から売上げを予測するExcelシートを作成していたり、経理部門が経費の配賦をExcelのワークシートで管理してる、などという例も少なくないでしょう。 一般的にこうしたExcelで作り込まれた社内のアプリケーションを既存の業務アプリケーションに組み込むためには、いちどExcelで作り込まれたアプリケーションを解析し、あらためてプログラミング言語で組み立て直す必要がありました。 マイクロソフトが正式にリリースした「Excel REST API for Office 365」を用いると、OneDrive(補足:使えるのはOneDrive for Business)に保存したExce
イントロ 例外処理を書くことはよくやっているのだけれど、その時の主軸となる考え方について、今までなんとなくで行っていた部分が多かった。 毎回考えるポイントは例えば以下のような疑問。 どこのレイヤーで、どこまで例外処理を行えばよいのだろうか? どの例外をキャッチし、どの例外を伝搬させればよいだろうか? 前提条件をチェックし、失敗した場合、例外を出したほうがよいか、nil, false を返すほうがよいか? 例外をどういう単位でラップさせるのが良いだろうか? 例外をチェインし過ぎると却って煩雑になる気がする。どうすれば良いのだろうか。 しかし、この辺りの話って、API の設計だったり、仕様の影響もあるので、都度対応が異なってしまうもの。 したがって抽象化して理解することが難しく感じた。 とてもよく使ってるし、とても大事な事なことなのに。 そんな今更な事で悩んでいた時に、Effective Ja
数ヶ月前、私はなぜここにたどり着き、何が可能かを理解する旅に出ました。この旅は、私にアプリケーションアーキテクチャ、MVCという強烈な宗教に対する疑いをもたらしました。そして、リアクティブ、関数型プログラミングの真の実力に触れたのです。また、シンプルさに集中する旅でもあり、私たちの産業はうまくやっているという考えを捨てる旅でもありました。どんなことを見つけたか興味がある方もいるでしょう。 私たちの見ている画面の背後にあるパターンはMVC –Model-View-Controllerです。まだウェブがなくソフトウエアアーキテクチャも分厚いクライアントが単一のデータベースに原始的なネットワークでアクセスするのがせいぜい、という時代にMVCは生まれました。そして数十年後、MVCはまだ現役であり、衰え知らずでオムニチャネルアプリケーションの開発に使われています。 Angular2のリリースの前にM
こんにちは、吉岡(@yoshiokatsuneo)です。 Dockerはシンプルで軽量な仮想環境という特徴から急速に広まっており、paizaでも利用しています。ただし、発展が早いことから、断片的な情報や古い情報などもあります。そこで、ここでは今のDocker(Ver1.13: 2017/1/20更新)について、5分でわかるように簡単にまとめてみます。 目次 Dockerの特徴 コンテナと仮想マシンの違い Dockerの発展 Dockerの構成(5つの要素) Dockerの基本コマンド Dockerコマンド一覧 Dockerの仕組み 考え方 まとめ Dockerの特徴 Dockerは、Linux上のシンプルで軽量な仮想環境(コンテナ)で以下の特徴があります。 早い・軽い OSレベルの仮想化なので、起動は一瞬です。コンテナ間でイメージを共有できるので、コンテナの起動自体ではディスクは消費しませ
Googleは、Java APIを使用してモバイルOS「Android」を構築していることをめぐるOracleとの法的な争いにおいて、優勢に立った。 Oracleは、著作権ライセンス料を支払わずに37件のAPIパッケージを使用しているとしてインターネット大手Googleを提訴し、数十億ドルのライセンス料支払いを求めていた。しかしGoogleは、自社による同APIの使用が「フェアユース」に相当すると米連邦裁判所の陪審員団に認めさせることに成功した。 この評決はGoogleにとって大きな勝利である。陪審員団がOracleの主張を支持していたとすれば、この訴訟における次の段階では、Googleが支払うべき対価の査定が始まるところだった。Oracleは、90億ドル以上の賠償金を求めていた。その額は、米国における著作権関連の評決でこれまでに認められた賠償額をはるかに超えている。 しかし、何年にもわた
AndroidにおけるJavaコードの使用は特許と著作権を侵害しているとしてOracleがGoogle(現Alphabet)を訴えてから早6年。米カリフォルニア州北部地区連邦地方裁判所で開かれていた陪審で5月26日、Googleの使用は著作権のフェアユースに該当するという評決が下った。だがOracleはこれを不服としており、まだ終止符とはいえない様相だ。 発端はOracleが2010年に起こした特許訴訟による。当時Oracleは、GoogleがAndroidで1万1500行にもわたるJavaコードを無断使用しているとして90億ドルの賠償を求めた。 Oracleは7件の特許、37件のJava APIの著作権侵害を主張したが、主張は認められなかった。不服としたOracleは2012年にJava APIに絞って上訴。その結果2014年にJava APIは著作権の対象になるとする判断が下った。なお
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 経緯 casyというインターネットを使って手軽に家事代行を頼むことができるサービスのプログラマをしています。 Webだけでなく、スマホアプリも出すことにあたり、Webアプリサーバ(Rails)から機能を切り出し、APIサーバ(Rails)を別途作成し、Webアプリの場合はWebアプリサーバからAPIサーバを呼び出し、アプリからは直接APIサーバを呼び出すような仕組みにしました。 ただ、全部の機能をAPIサーバに移すのは容易なことではなかったため、いくつかの機能はまだWebアプリサーバに残っていて、アプリよりもWebのほうが機能が多い状態
ここは、Martin Fowler's Blikiの日本語翻訳サイトです。Martin Fowler氏本人の許可を得て公開しています。データはGitHubで管理していますので、どなたでも翻訳に参加することが可能です。 ※現在、移行中につき、Markdown形式になっていないものが多々あります……。PRいただけると大変ありがたいです。 API design / agile / agile adoption / agile history / application architecture / application integration / bad things / build scripting / certification / clean code / collaboration / computer history / conferences / continuous deliv
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く