Java 女子部 講義資料 https://javajo.doorkeeper.jp/events/21337 This presentation is used to lecture about the introduction of Java Virtual Machine at Java Japan User Group (Girls).
最近、私たちは Swiftベースの新しいアプリ を発表しました。Appleによって派手に取り上げられ、非常に多くのユーザを獲得しています。この記事では、私たちの経験を共有し、この新しいプログラミング言語について一般的な考えを述べ、私たちのアプリをより強固なものにしてくれる、Swiftの長所をいくつか紹介したいと思います。 これはSwiftのチュートリアルではありません。この記事は、まだSwiftの経験が浅く、実際はどのように使われているのか興味を持っている開発者のために書かれています。技術的なコンセプトにも言及します。また、必要に応じて既存のチュートリアルやドキュメントへのリンクも含まれます。 まず、この新しいアプリの機能や、主な目的について簡単に説明します。 新しいアプリ 当社の主力アプリ Duolingo のことは既にご存じかもしれませんね。6,000万人以上のユーザ(2014年12月
はじめに 本記事は複雑な構成をとるrailsアプリケーションをdockerで動作させる場合についてまとめています。 これまでにrailsを動作させるコンテナのDockerfileをどう記述するのが良いかという観点と、railsアプリケーションのプレビュー環境をdockerで構築出来るかという検証の二つの記事を公開していました。 railsをdockerで動かしたい場合の構成はどうするべきか - Qiita Docker(pool)を用いたプレビュー環境を検証する(railsアプリ開発チームの活用例) - Qiita 先に公開した二つの記事では、railsアプリケーションを単独のコンテナで動作させる場合について言及しています。 しかしアプリケーションの規模が大きくなるとrails単体だけでは無く、キャッシュにmemcachedやredis, 検索にsolrにelasticsearch, フロ
アプリケーション層プロトコルへの適用[編集] TLSは特定のアプリケーション層プロトコルに依存しないため、HTTP以外にも多くのプロトコルにおいて採用され、クレジットカード情報や個人情報、その他の機密情報を通信する際の手段として活用されている。 既存のアプリケーション層プロトコルでTLSを利用する場合、大きく2つの適用方式が考えられる。まずひとつは、下位層(通常はTCP)の接続を確立したらすぐにTLSのネゴシエーションを開始し、TLS接続が確立してからアプリケーション層プロトコルの通信を開始する方式である。もうひとつは、まず既存のアプリケーション層プロトコルで通信を開始し、その中でTLSへの切り替えを指示する方式である。切り替えコマンドとしてSTARTTLSが広まっているため、この方式自体をSTARTTLSと呼ぶこともある。 前者はアプリケーション層のプロトコルをまったく変更しなくてすむこ
これは、関数型プログラミングの特徴を Python で説明した長編ポエムです。 IQ145 の美少女は出てきませんので、過度な期待はしないでください。 【対象読者】 関数型言語は知らないけど関数型プログラミングの初歩を勉強したい人 (Python を知らなくてもなんとなく分かるように書いたので、PHP や Java や JavaScript の人も読んでみてください) 【連載記事】 第1回 関数を受け取る関数は便利だよ編 (←今ココ) 第2回 関数を生成する関数はすごいよ編 はじめに 「なぜ関数プログラミングは重要か」という文章があります。タイトルの通り、関数型言語がいかに役に立つかを紹介している文章です。長いですが、3 行でまとめるとこんな感じ: ソフトウェアがどんどん複雑になるので、モジュール化が重要 関数型言語は、強力なモジュール化機能を提供している 特に「高階関数」と「遅延評価」が
ブロックなしRubyをやることでRubyを関数型言語、というかLispっぽくやっていくことについて考えてみます。なお筆者はLispあんまり詳しく無く、「リストに対する操作の適用をネストさせてなんかいい感じにするやつ」くらいの認識で言いました、ごめん。 ブロックなしRuby初級 xs = %w`akechi kokoro itoh chika ayase ena koshimizu sachiko` xs.map{|it|it.capitalize} #=> ["Akechi", "Kokoro", "Itoh", "Chika", "Ayase", "Ena", "Koshimizu", "Sachiko"]
by @mixiappwchr アプリ向けのAPIの開発時に気をつけてもらえるとうれしい&メンテナンスや実装コストが下がる点をつらつら書きます。 データ構造について データを返すとき、一定のルールを守って返す。例えば当然ですが同じデータ構造はもちろん、似たような構造もルールを作ってproperty名などそろえておく。relationやlistで返すときもどのデータ構造なのかがpropertyで明確にわかるようなっているようにする listを返す場合の形式やpagingが必要な場合の形式はそろえる。配列のデータがない場合も考慮しておく。例えば、データがない場合にNULLにするか or 空配列にする or property自体がないなどきめる pagingの場合とか複数のパターンが存在することを覚えておくと幅が広がる。単純なページング or twitterみたいなsince_idなど起点id以
普段 Scala でトレイトを使いまくってるけれども PHP にも 5.4 からトレイトが入った。 trait の良いところは多重継承のできない言語で多重継承っぽいことができることだ。 use, use とつけていけば、いくらでも追加できる。DRY に書けてよいことだ。 対して悪いところはいとも簡単に複雑で暗黙的な依存関係が生まれることだ。 例えばこんなの <?php trait Greeting { public function say() { if ($this->location == 'ja') { echo 'こんにちは' . PHP_EOL; } else { echo 'Hello' . PHP_EOL; } } } class Location { } class US extends Location { use Greeting; private $location
いまさらながら、C++の正規表現ライブラリを調べている。 C++の正規表現ライブラリ、std::regexは、boost::regexを土台に設計されている。boost::regexの正規表現の文法は、perlなのに対し、std::regexは、ECMAScriptである。この理由は、しっかりと正規表現の文法が定義されていて、外部規格として参照できる品質のものが、perlには存在しないためだ。std::regexはposixと拡張posixとawkとgrepとegrepの正規表現にも対応している。 本記事では、ECMAScriptの正規表現を使う。また、参考のためのECMAScriptのコードも使う。 全体一致 文字列全体が正規表現に一致するかどうかを調べたいとする var re = /1234/ ; var text = "1234" ; var result = re.test( te
About About BusyBox BusyBox in VM Screenshot Announcements Documentation FAQ Command Help Get BusyBox Download Source Download Binaries License Products Development Browse Source Source Control Mailing Lists Bug Tracking Use less RAM Contributing Links Related Sites Tiny Utilities Sponsors Developer Pages Rob Bernhard Denys - resume - kernel inlines - kernel size - mboot - linld - init must die -
Rafal Tomalの書いた『The Essential Web Design Handbook』という本を読んだ。初心者のためにWebデザインの基本となる知識を広く紹介している。構成としては、筆者がWebデザインを行うときのプロセスをまず最初に紹介し、その各段階を追っていきながら、「この作業は無視されがちだけどこういう点で効率的だからやった方がいい」「これを考えるときにはこういう知識を使う。今回の例ではこうやって考えた」という具合に進んでいく。 プロセス 筆者が推奨するWebサイトのデザインプロセスは次の通り: 調査して計画をつくる 発想を膨らませる スタイルガイドをつくる ワイヤーフレームを組む モックアップをつくる コードを書く 調査と計画 調査するというのは、明確なクライアントがいる場合は要求を聞くことであったり、競合サイトの様子を調べてくることであったり、使えそうな資料を広範に
ScalaとJava 8に関する プレゼンテーション が、他の似た内容のものよりも多くリツイートされ、大変うれしく思います。だから、こうして皆さんにブログでも書いてお伝えすることにしました。ScalaとJavaとの違いと、それぞれの重要性についてお話しします。両者は相互にイノベーションしています。言語間でお互いに取り入れています。では、Javaが使える場合であっても、Scalaを学ぶ必要があるのでしょうか? もちろんです。より多くの言語を知れば知るほど、あなたはさらにプロフェッショナルになっていきます。 もし、ScalaエンジニアにScalaとJavaとの基本的な違いについて尋ねたとしても、おそらくその人はラムダ関数とトレイトに関する違いを全て言うことはないでしょう。代わりに次のような例を出すはずです。 public class Person { private String firstN
タイトルに書かれていることで全てなのですが、DDDとCQRSの併用について強調している日本語の情報が少ないので、軽くまとめておきます。 CQRS+DDD CQRS(コマンドクエリ責務分離)とは、サーバの機能を「コマンド」(副作用あり)と「クエリ」(副作用なし)で完全に分けちゃおう、という考え方です。そもそも「コマンド」と「クエリ」ではあらゆる要件が異なります。 一貫性: 「コマンド」は整合性のある処理が必要、「クエリ」はあまり気にする必要なし ストレージ: 「コマンド」側は正規化してデータを保存したい、「クエリ」側は非正規な方が効率的 スケーラビリティ: 「コマンド」は全体の負荷の中で占める割合が少ない、「クエリ」は負荷が大きい なので分けちゃうわけですが、 コマンド側 複雑なビジネスロジックが絡むので、ドメイン駆動が活躍 クエリ側 複雑なビジネスロジックがないので、ドメイン層はスキップ
【mkdirからデプロイまで3分】Sinatra+Haml+Sass+Coffee でサクッとHerokuに公開して捨てるwebアプリRubyCoffeeScriptSinatraSassGem あいさつ Rubyでゴニョゴニョして、Haml+Sass+Coffeeでサクッとviews作って Herokuにサクッとpushして公開して吐いて捨てるようなアプリの作り方です. チャチャッと動いたモノを見せたい時とかに便利 3分というのはビジネスロジックの構築を除くプロジェクトのひな形作ってデプロイに至るまでの時間. 適当なひな形を持ってきた方が早いかもしれませんが、一回は手を動かさないとなんか気持ち悪い人向け. 今回使ったのはここに置いときました、jqueryとか定番ライブラリ入れとくと便利そう 以下説明 手順1: フォルダを作ってgemを揃える 今回はyour_appというアプリを作る事とし
もう触ってみた? Appleの新プログラミング言語「Swift」 今年6月の「WWDC 2014」で発表されたSwift。CodeZineでは、いち早くSwiftの言語機能について紹介しました。 『アップル、iOS 8 SDKをリリース。新プログラミング言語「Swift」も登場』 『新プログラミング言語「Swift」の型と制御構文』 『Objective-Cより柔軟な新プログラミング言語「Swift」をはじめよう!~開発環境の構築とプロジェクトの作成』 .NET Coreのオープンソース化とVisual Studio無償化 マイクロソフトのこの発表に胸を熱くした開発者の方も多いのではないでしょうか。オープンソース化つながりで、「Open棟梁」もその秀逸なネーミングセンスで話題となりました。 『米MS、開発・実行環境をOSS化し、IDEの無償版を提供――あらゆる開発者・アプリケーション向けの
背景 iPhone も年々デバイスサイズが大きくなっていき、左上のナビゲーションバー上のボタンを片手で押すことが困難になってきました。そのような時代においてはスワイプジェスチャーによるナビゲーション操作が今まで以上に重要になってきます。また、最近では情報の階層を分かりやすく表現するためにトランジションもどんどん工夫されています。トランジションが複雑になればなるほどその操作も複雑になるため、分かりやすさと使いやすさを両立するためにインタラクションを工夫する必要があります。 そんな2014年の終わりとして現時点での情報閲覧系 iOS アプリでの戻る(閉じる)操作の種類をまとめてみました。 遷移(Push)時のトランジションがデフォルト(新しい画面が右から左に出てくる) Screen Edge Swipe(デフォルトの Pop トランジション) デフォルトの Push トランジションで遷移した画
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く