You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
For men, it can be considered a game of just getting to see sexy chicks, which many men find enjoyable by it self. The UK’s paper circulation was an effective media tool for middleclass readers. Communication with the others takes exercise with help from FuckSites.co.uk for quick sex and may require even extra training whenever you’re delving in to adventures which are beyond the standard. The par
社内の「Scala 勉強会」で Phantom Type (幽霊型) という厨二心をくすぐる感じのデザインパターンを教えてもらったので、同じことを Swift でもやってみました。 インスタンスの状態を変数ではなく 型パラメータ として持つことで、状態チェックを実行時ではなく コンパイル時 に行えるというイカしたテクニックです。 class Status{} class NotReady: Status{} class Ready: Status{} class Something<T: Status> { static func createInstance() -> Something<NotReady> { return Something<NotReady>() } func readify() -> Something<Ready> { return Something<Read
スマホデバイスのスペックも向上し、Swiftのコンパイラのパフォーマンスも上がり続けていますが、ちょっとしたパフォーマンスが気になることはよくあります。 スマホアプリではパフォーマンス次第では使い勝手が極端に悪くなります。 finalやprivateを駆使したパフォーマンス改善はJava等の多言語でもおなじみで応用が効くものです。無闇にfinalやpriavteをつけている場合も多いでしょうが、パフォーマンス改善の理屈が分かると上手に使用できるようになると思います。 全モジュール最適化(Whole Module Optimization)は開発時は不要ですが、リリース時には必ず実行しておきたいですね。 This blog post showcases three ways to improve performance by eliminating such dynamism: final,
iOSアプリ開発でもFluxしたい WebアプリケーションのフロントエンドをReact + Fluxな構成で開発すると、若干コードが増えて面倒にはなりつつも、 ビューの状態やデータの流れが明示的になってとてもわかりやすいなと改めて感じてます。 iOSアプリでもこういうことがやりたいのですが、基本的にFluxは考え方に過ぎないので必要な実装は自分でやらないといけません。 なので作ってみました。 https://github.com/yonekawa/SwiftFlux 使い方 基本的には必要なAction protocolとStore protocolを実装したクラスを作り、DispatcherとEventEmitterを使ってView - Action - Store - View の単方向データフローを作るだけです。詳しくはREADMEをご覧ください。 //: Step 1: Actio
これはstruct(構造体)かclass(クラス)どちらで宣言すべきか。慣れないうちは悩むことがあると思います。どちらにするのが良いかを考える基準について説明したいと思います。 参考: The Swift Programming Language: Classes and Structures structとclassの違い まずはstructとclassの違いを理解しておきましょう。 structは値渡し、classは参照渡し structは継承できない、classは継承できる ただしstructもextensionでメソッド追加はできる structはselfのプロパティを変更するメソッドはmutatingキーワードが必要になる structの方が望ましいもの シンプルなデータ構造である プロパティも値渡しの型である、つまりstructである Int、Double、String、Dic
One of the persistent topics of discussion in the world of Swift has been the question of when to use classes and when to use structs. I thought I'd contribute my own version of things today. Values Versus References The answer is actually really simple: use structs when you need value semantics, and use classes when you need reference semantics. That's it! Come back next week for.... Wait What? T
はじめに この文献はSwiftの基本構文の説明ではなく、僕が使っている構文で便利なものをまとめたものです。 なので、基本的構文の一部は割愛されてます。 ※便利な構文を随時追加していきます。 これ以外にも他にも便利な構文があればコメントで教えていただけると僕が喜びます。 改定履歴 2015/7/16 enum追記、Array,Dictionaryの初期化を追記。 for文でeach_with_index的なものの追記。 Enumでコンパイルエラーが発生するケースを追記。 2015/7/19 Arrayの存在確認を追加 メモ setメソッドのハック、Lazy、filterなどもいずれ書く。 OptionalValue Swiftと言えばOptionalValueと言うほど便利な構文です。 あまりに基本的な構文なので構文の説明は割愛して、僕が使う局面について説明します。 非Optional 型
About the content This talk was delivered live in March 2015 at Swift Summit London. The video was transcribed by Realm and is published here with the permission of the conference organizers. Exactly how Swift is Swift? The language was designed for speed, but looking at comparisons, there are obvious places where code could be further optimized. In this talk, Joseph Lord shares some performance l
Swift has rich value types, which is a new experience for many software developers. This has opened the door for the functionalists to ride in. What I call "functionalism" is really the philosophy of [functional programming](https://en.wikipedia.org/wiki/Functional_programming), which is in fact a very old idea. The idea is that a lot of bugs in programming today are due to having the wrong *state
Swift 2 brings updated support for SIMD (Single Instruction Multiple Data). What exactly does that mean? SIMD Primer Each CPU vendor has their own unique snowflake versionº but the premise is the same: process data in parallel chunks. Each SIMD instruction operates on a group of values organized into what are called "lanes". Let's take a typical 128-bit SIMD register. You can load it with four Flo
「Objective-CがSwiftに置き換わる」っていうのがピンとこないのです。 それは、Swiftそのものがオープンソースになっても、あまり変わらないと思います。 以下はすごーくざっくりした知識で書いています。 Objective-Cの歴史 そもそもObjective-Cが何なのか、あまり知られていない気がします。 超ざっくり説明すると、AppleをやめたジョブズがApple OSの「次」として、当時としては革新的なオブジェクト指向OSだったNeXTSTEPを生み出しました。NeXTSTEPの存在は後の様々なOSに影響を与えました。OSXやiOS自体、NeXTSTEPの系譜です。 NeXTSTEPはオブジェクト指向のOS・開発環境・開発言語を統合し高い生産性を実現していました。その開発言語がObjective-Cでした。NSのプレフィクスの意味が、NeXTSTEPの略称というのは、比較
Swiftでライブラリ(人から使われるコード)を書く際のベストプラクティスを考える
最近はiOSでOpenGLをやるにもGLKitがあるので初期設定などスキップできて非常に便利になりました。反面、OpenGLの基礎を学ぼうにもブラックボックスな部分が多くなってしまいiOS開発を通して汎用的なOpenGLの基礎知識を得るのは難しいかと思いました。そんなOpenGLの基礎をあらためてしっかり理解したかったり、僕のようにOpenGLES1.1が強制される環境で開発している方向けにGLKitを使わずにOpenGLで描画する方法をまとめました。 改めて下記環境での記事です。 iOS Swift OpenGL1.1 GLKitを使用しない 動くコードをGithubに用意してあります。 https://github.com/ykensuke/OpenGLSample 画面に三角形を描画するサンプルです。 本題ですが、GLKitなしでOpenGL1.1をswiftで書くとこんな感じのコー
Combining getters and setters for great glory This is another FP-inspired blogpost, this time about lenses. There’s a lot of literaturearound lenses, but I wanted to show some simple examples. Sometimes, you have a set of data (this could be anything, from a struct to a Core Data database, or a webservice), and you want to create a view on that data. For example, suppose you have a value of type P
About the content This content has been published here with the express permission of the author. People tell you that you’re supposed to avoid mutable state, but how can anything happen if you never call a setter? People tell you that you’re supposed to write unit tests, but how can you test a user interaction? People tell you that you’re supposed to make your code reusable, but how can you facto
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く