Skip to content

Instantly share code, notes, and snippets.

View shrek-kurata's full-sized avatar
🧏
I wanna study harder

Shrek shrek-kurata

🧏
I wanna study harder
View GitHub Profile
@matope
matope / NoSQLデータモデリング技法.markdown
Created April 16, 2012 03:35
NoSQLデータモデリング技法

#NoSQLデータモデリング技法

原文:NoSQL Data Modeling Techniques « Highly Scalable Blog

I translated this article for study. contact matope[dot]ono[gmail] if any problem.

NoSQLデータベースはスケーラビリティ、パフォーマンス、一貫性といった様々な非機能要件から比較される。NoSQLのこの側面は実践と理論の両面からよく研究されている。ある種の非機能特性はNoSQLを利用する主な動機であり、NoSQLシステムによく適用されるCAP定理がそうであるように分散システムの基本的原則だからだ。一方で、NoSQLデータモデリングはあまり研究されておらず、リレーショナルデータベースに見られるようなシステマティックな理論に欠けている。本稿で、私はデータモデリングの視点からのNoSQLシステムファミリーの短い比較といくつかの共通するモデリングテクニックの要約を解説したい。

本稿をレビューして文法を清書してくれたDaniel Kirkdorfferに感謝したいと思う

@asufana
asufana / 値オブジェクト・コーディングルール.markdown
Last active July 27, 2019 07:13
ValueObjectのコーディングルール

ValueObjectのコーディングルール

クラス定義

/** 顧客メールアドレス */
@Embeddable
public class CustomerMail extends ValueObject<ContractNo> {
 
@gakuzzzz
gakuzzzz / 1_.md
Last active June 19, 2023 12:53
trait と abstract class の使い分け

trait と abstract class の使い分け

  • 基本は迷ったら trait にしておけば良いと思います
    • trait は一つの class に複数 mixin できますが、class は一つしか継承できません
    • つまり、trait であれば mixin される class を気にしなくてよいですが、 abstract class にした場合は、extends される class が他に継承したい物が無いか気にする必要があります
  • trait はコンストラクタを持つ事ができませんが、abstract class はコンストラクタを持つ事ができます
    • 従って、型引数に制約をつけたい時や、共通のフィールドの初期化などがある場合は、abstract class にすると楽な場合があります。
  • 以下に具体例を示します。良くある Java の enum を Scala で定義する場合の例です。
@gakuzzzz
gakuzzzz / 1_.md
Last active August 2, 2023 01:59
Scala の省略ルール早覚え

Scala の省略ルール早覚え

このルールさえ押さえておけば、読んでいるコードが省略記法を使っていてもほぼ読めるようになります。

メソッド定義

def concatAsString(a: Int, b: Int): String = {
  val a_ = a.toString();
  val b_ = b.toString();
@EntilZha
EntilZha / main.rs
Created October 6, 2015 06:35
Rust code trying to implement the EM algorithm for a simple example
fn main() {
let observations = [5, 9, 8, 4, 7];
let (theta_a, theta_b) = em(0.5, 0.5, observations);
println!("ThetaA: {}, ThetaB: {}", theta_a, theta_b);
}
fn em(theta_a_0: f64, theta_b_0: f64, observations: [i32; 5]) -> (f64, f64) {
let mut theta_a = theta_a_0;
let mut theta_b = theta_b_0;
let a_probs = observations.iter().map(|x| binomial(theta_a, *x, 10));
@co-sche
co-sche / aws-eb-play-scala.md
Last active March 31, 2023 05:24
AWS Elastic Beanstalk (Java8)に最小手順でPlay Framework (Scala)のアプリをデプロイする

sbt dist

これだけで${PROJECT_ROOT}/target/universal/に起動スクリプトなどを含んだパッケージ(zip)が生成される。

内部でsbt-native-packagerが呼ばれる。

これは一応プラグインだけど、今のPlayではビルトインなので、addSbtPluginする必要はない。

けど、まだEBでそのままデプロイできるパッケージではない。

Procfile

@bouzuya
bouzuya / rfc6570.md
Last active July 21, 2019 05:37
RFC6570 - URI Template に関する覚書

RFC6570 - URI Template に関する覚書

RFC6570 の情報やそれを JavaScript から利用するための npm package についての覚書。

RFC6570 とは

RFC6570 - URI Template

URI Template は変数展開を通じて URI の範囲を示す文字列。この仕様は URI Template の構文とそのURI Template を URI 参照に展開するための処理を定義する。

@btroncone
btroncone / service.spec.ts
Last active September 4, 2019 08:16
Angular service testing (constructor)
import { inject, TestBed } from '@angular/core/testing';
import { of } from 'rxjs/observable/of';
import { LoggingService, LocalStorageService } from '../';
import { RouterEventService } from '../../routing';
export class MockLocalStorageService {
setItem() {}
getItem() { return []; }
}
export class MockRouterEventService {
@isaacplmann
isaacplmann / table-of-contents.md
Last active September 17, 2024 05:20
Advanced Angular Patterns