タグ

Qiitaに関するsyan0のブックマーク (12)

  • JavaScriptのモジュールは変数をエクスポートする - Qiita

    今時のJavaScript開発において、JavaScriptが持つモジュールの機能は欠かすことができません。我々はプログラムをいくつものファイル(モジュール)に分割し、import文とexport文を使ってそれらを繋げています。各モジュールはexport文を用いてそのモジュール内で定義した変数・関数などをエクスポートすることができ、別のモジュールがimport文でそれらの値を取得することができるのです。 皆さんは、このimport・export文がどのように働いているのか正確に説明できるでしょうか。実は、import文やexport文というのは値をインポート・エクスポートしているのではなく、言わば変数そのものをインポート・エクスポートしているのです。これを理解するのがこの記事のゴールです。 ※ 当は変数ではなく「バインディング」といったほうが用語としてより正確なのですが、この記事では分か

    JavaScriptのモジュールは変数をエクスポートする - Qiita
  • 使うと手放せなくなるSwift Extension集 (Swift 5版) - Qiita

    こんにちは、たなたつです 汎用性高めのExtension集です。Protocolやstructなども一部含まれています。 使うと手放せなくなるSwift Extension集 (Swift 4版)のSwift 5版です。 (2年ぶりの更新) Swift 5.1の新機能や記法の最適化によって段々と良くなっています。 今回紹介したExtensionは全て下記のリポジトリに入っています。他にも便利な機能がたくさん入っているので、利用したい方はコピペやSwift PM/Carthageで導入してみてください。 https://github.com/tattn/SwiftExtensions ※ Swift 5.1, Xcode 11.2.1 で動作確認をしています。 ※ コード片ごとに紹介していますが、別のコード片のExtensionに依存している場合がありますので、ご注意ください。 ※ これらの

    使うと手放せなくなるSwift Extension集 (Swift 5版) - Qiita
  • セピア調フィルタのうんちく - Qiita

    セピア調について 18世紀中頃〜19世紀初頭にかけて様々な感光剤による写真が発明され、多くのモノクロ写真が作られました。 それらは経年劣化で白が黄ばみ黒はくすみ、全体として色材のセピア(イカ墨)を思わせる茶色味がかった色になる傾向があった故に、古い写真の色調を表す代名詞としてセピア調(sepia-tone)の言葉が生まれました。 セピア調に退色した写真 セピアインクを使った図面 セピア色について セピア色という単語は、主に以下の3つの意味で使われているようです。 顔料としてのイカ墨のセピア セピアで書かれた古い絵の退色した様子 (セピア調の元ネタ) 古ぼけた写真の色調としてのセピア (記事がターゲットとするセピア調) 顔料としてのセピアはイカ墨を乾燥させてインクとするもので歴史は古く、紀元前のまだギリシア文化の残る(Greco-Roman)古代ローマの頃には筆記用に使われていました。それ

    セピア調フィルタのうんちく - Qiita
  • ビルド時に俳句を読めるプラグイン - Qiita

    こんにちは、クソアプリ Advent Calendar 2019の 19 日目は、@sandessOjisanがやっていきます。この記事では 俳句力を鍛えるための babel-plugin 開発 について記事を書きます。早速使いたい方はこちらからどうぞ。なお、季語はありませんが、無季俳句として俳句としてカウントされるようです。 背景 なんでこんなものを作ったかというと、それは自身の俳句を読む力を鍛えたかったからです。 俳句とプログラミング みなさんの周りにも、ダジャレ・韻、そして 俳句 を言うのがやたら上手い人っていませんか。私の周りにはそういう人がたくさんいます。そして、そういう人に限ってプログラミング能力も非常に高いと感じています。もちろん、「俳句ができるからプログラミングもできる」なのか「プログラミングができるから俳句ができる」のどちらなのかはわかりませんし、そもそも因果関係があるこ

    ビルド時に俳句を読めるプラグイン - Qiita
  • Qiitaっぽいメモアプリをつくってる話 - 鳥小屋.txt

    Potmum(ぽっとまむ) ソースコード: https://github.com/rutan/potmum デモページ: https://potmum-demo.herokuapp.com 身も蓋もない言い方をすればQiitaクローンです。と言っても、用途がQiitaとは違うのでフォロー機能が無かったり、ちょこちょこ機能が違います。 Potmumは菊の鉢植えです。きーく。 なぜ作ったのか? 僕のSimplenoteが整理不能になったためです(´・ω・`) livedoor Wiki→EvernoteSimplenoteとメモ置き場を住み替えていき、SimplenoteMarkdown最高!!という結論に至ったのですが、いまいちタグ機能とかが使いづらかったので、タグが付いてない記事だらけになってしまったのでアクセス性がとても悪くなってしまいました…… 当はQiitaTeamを使おうと思

    Qiitaっぽいメモアプリをつくってる話 - 鳥小屋.txt
  • ぼくがかんがえたさいきょうのGruntfileを晒してみる - Qiita

    開発中とリリースビルドをわけて考える。 開発中はとにかく速度重視。テスト重視。 リリースビルドのほうに、自動化できる便利なタスクを出来るだけ突っ込んでおく。 開発中に使用するソースファイルから、リリースビルドに余計なファイルを混ぜない。 こんな考え方でGruntfileを書いてみました。 プロジェクトごとに最適化したGruntfileを作るということも魅力的な挑戦なのですが、私は開発者一人で短納期な案件をいくつもこなさないといけないので、そのために導入したタスクランナーのはずなのにGruntfileの開発やメンテに時間を取られるのは末転倒になってしまうので、出来る限り汎用的に使えるように気をつけて書きました。 さらに何か特定の開発スタイルやフレームワークに依存しないように、特殊なディレクトリ構成などを必要としない点も気を付けました。 普段は開発は私一人ですが、デザイナーやコーダーや開発者

    ぼくがかんがえたさいきょうのGruntfileを晒してみる - Qiita
  • grunt-contrib-watchでlivereload - Qiita

    最近 grunt-contrib-watchにlivereload機能が追加されたっぽいのでそちらに切り替えてみた。 今までlivereloadするにはgrunt-regardeを使わなきゃいけないっぽかったけど grunt-regardeはcoffee scriptとかjshintとかでエラー起こすと監視自体がストップして しまっていたので微妙だと思っていたので非常にちょうど良かった。 (コマンド叩くときにオプションで--forceつければ解決できるけどね。。。) コード var path = require('path'); var lrSnippet = require('grunt-contrib-livereload/lib/utils').livereloadSnippet; var folderMount = function folderMount(connect, poi

    grunt-contrib-watchでlivereload - Qiita
  • インスタンスプロパティを作るときの注意 - Qiita

    参照型(※)は初期値にしない JavaScriptでクラス(ライクなオブジェクト)を作る時、インスタンスプロパティに配列やハッシュ(のようなオブジェクト)を設計することはよくやると思います。 そんな時注意しなければならないのが、参照型(※)の値は初期値として設定しないということ。 CoffeeScriptの場合 # ダメなパターン class Foo array: [] object: {} foo = new Foo foo2 = new Foo foo.array.push 'オラァ' foo.object.a = '無駄ァ' # foo に設定したはずが foo2 にも影響する console.log foo2.array[0] # => 'オラァ' console.log foo2.object.a # => '無駄ァ' # 大丈夫なパターン class Bar array: nu

    インスタンスプロパティを作るときの注意 - Qiita
  • ライセンスの選択を恐れる必要はありません - Qiita

    この記事はCC BY 3.0に基いて公開されてゐるWebサイトChoosing an OSS license doesn’t need to be scary - ChooseALicense.comのコンテンツ各ページを翻訳し、単一記事として再構成、訳者による補足を追加したものです。 2017年5月9日に開示されたコミュニティガイドラインに伴って、記事の翻訳部分につきましては削除いたしました。 (この記事が削除または非公開化されない限り、編集履歴からお読みいただくことは可能です。) (訳註: この「はじめに」及び末尾の「訳者による補足」の章は原文にはなく、翻訳者(@tadsan)によるものです。記事の著作権表示及び元Webサイトの利用規約、免責事項、そしてこの記事についての訳者の見解について記します) (この記事の一部または全て ——ただしコメント欄は含まれない—— はCC BY-SA

    ライセンスの選択を恐れる必要はありません - Qiita
  • Titanium で CoffeeScript を使う - Qiita

    Titanium でも CoffeeScript を使いたい! → .coffee ファイルを作成・変更したら自動で .js にコンパイルして Resources フォルダ内に入るようにしたい。 → Jitter っていう便利なものがあるよ! 前提 Mac npm (入ってない人はコチラを参考に) Jitter のインストール Jitter を使うと、ファイルの変更を検知して自動で JavaScript を CoffeeScript に変換してくれます。 まだ CoffeeScript をインストールしてない場合は

    Titanium で CoffeeScript を使う - Qiita
  • Objective-C のプロパティ属性のガイドライン - Qiita

    Objective-C のプロパティの属性を指定するとき従うべきガイドラインをまとめた。 できる限り nonatomic を指定する atomic にしてもパフォーマンスが悪化するだけでほとんどメリットがない(参考:StackOverflow - Atomic vs nonatomic properties)。 nonatomic と atomic の使い分けの指針は次のとおり: 参照型: メモリアドレスのみの書き込みなので、常にnonatomicでよい プリミティブ型: int, BOOL等ワンステップでの書き込みが可能: 常にnonatomicでよい 単一のスレッドからしかアクセスされない: 設計に気をつけつつnonatomic推奨 複数のスレッドからのアクセスがあり、long,構造体などサイズの大きい値: atomic推奨 (thx to @takasek) 複数のスレッドから同時に

    Objective-C のプロパティ属性のガイドライン - Qiita
  • "Cannot run on the selected destination"と出てiOS Simulatorが起動しない - Qiita

    "Cannot run on the selected destination"と出てiOS Simulatorが起動しないXcodeiOS Cannot run on the selected destination The selected destination does not support the architecture for which the selected software is built. Switch to a destination that supports that architecture in order to run the selected software. いろいろ原因はあるっぽいんだけどハマりやすいパターンとして"Info.plist"ファイルがプロジェクト内に存在するっていうのがあるみたい。 "Info.plist"は今でいうXcodeに

    "Cannot run on the selected destination"と出てiOS Simulatorが起動しない - Qiita
  • 1