今回で2回目となる Swift 2 シンポジウムに、今回はパネリストとして参加させて頂きました。 前回で大きな注目点は出尽くしたかと思っていたら、今回はさらに良質なテーマが掘り起こされて、たっぷりと楽しく議論できました。 実りもとっても大きかったです。
![第2回目の Swift 2 シンポジウムも沢山の学びが得られる良い会でした。](https://cdn-ak-scissors.b.st-hatena.com/image/square/baddac29b17824f39028fbaa868dcd58ee4a5443/height=288;version=1;width=512/https%3A%2F%2Fez-net.jp%2Farticle%2F0F%2F43I55KdO%2FQYmgZh-oK5bh%2F0FE37239-E4A7-4E41-89A0-661FA82B96E1.thumbnail.png)
今回で2回目となる Swift 2 シンポジウムに、今回はパネリストとして参加させて頂きました。 前回で大きな注目点は出尽くしたかと思っていたら、今回はさらに良質なテーマが掘り起こされて、たっぷりと楽しく議論できました。 実りもとっても大きかったです。
第21回オープンラボ岡山の発表スライド http://openlab.okaya.ma/wiki.cgi?page=%CA%D9%B6%AF%B2%F1%2F%C2%E8021%B2%F3
本投稿の個別の説明( Optional とは何か、 ?. と map, flatMap の関係、その背後にあるモナドという概念)は 2017 年現在でも通用するものですが、 Swift の Optional の使い方としては、僕の考えとのズレが大きくなってきました。 Swift の Optional をいつ・どのように使うべきかについてもまとめた ので、そちらも併せて御覧下さい。 Optional は Swift の仕様の中でもっとも素晴らしいものの一つだと、僕は考えています。 null参照 (多くの言語で nil や null と呼ばれるもの)を発明したトニー・ホーアは次のように述べています[^1]。 それは10億ドルにも相当する私の誤りだ。null参照を発明したのは1965年のことだった。(中略)これは後に数え切れない過ち、脆弱性、システムクラッシュを引き起こし、過去40年間で10億ド
モナドって何ですか? これをちゃんと説明できる人に会ったことがない。 ↑1に挑戦してみます。 まず、モナドには数学の圏論におけるモナドとプログラミングにおけるモナドがあります。圏論のモナドについては僕もよくわかっていません。圏論のモナドとプログラミングのモナドは同じものだというような説明がされていますが、本当に等価なのか僕には判断できません(どうもプログラミングのモナドは圏論のモナドの条件を満たしていそうですが、逆は成り立たないんじゃないかと思っています)。 ここでは、 プログラミングにおけるモナド について説明します。コードはすべて Swift で書きます。モナドについて調べると、よく モナド則 について書いてあるんですが、肝心の記述が関数型言語で書かれていてわからん!となることが多いんじゃないかと思います。本投稿では、 モナド則についても Swift の構文で記述します。 まず前半でモ
In preparation for an upper level class that I’m teaching this semester, I spent the summer writing my first app entirely in Swift. (It’s 7 Second Diet, a meal-tracking app that’s not a pain in the tuchus to use. Edit: Nevermind, this app is now defunc. Sorry) After spending some quality time with Swift, I realized how much I want to use Swift to teach introduction to computer science. Choosing a
WWDC 2014で発表されたアップルの新言語 Swift 。 今回は環境構築からHello World!までを簡単にまとめてみます。 かなり出遅れましたが^^; 環境構築 Xcode 6 betaのダウンロード https://developer.apple.com/xcode/downloads 上記 URL からXcode 6 betaをダウンロードします。(事前にApple Developer Programsに登録しておく必要があります。) Xcode 6 betaのインストール ダウンロードした dmg ファイルをマウントし Xcode6-Beta6.app を Applications にドラッグすればインストール完了。 Xcode 6 betaはXcode 5と共存できるので安心してインストールしてください。 コマンドラインで実行する準備 swift コマンドを実行できるよ
As a high level summary, I am a well-known leader who is distinguished by a hands-on approach to building systems. I am co-founder and CEO of Modular AI. I built and scaled many open source compiler infrastructures, including LLVM, Clang, MLIR, and CIRCT. These span the gamut of fundamental systems at the HW/SW boundary - powering iOS, Android, CUDA, TensorFlow, and countless other products and te
In the Swift REPL, how to import (a.k.a. load, evaluate, require) a typical text *.swift file? I want to use the code from this file: ~/src/Foo.swift Syntax like this doesn't work: import ~/src/Foo.swift For comparison: An equivalent solution in the Swift REPL for a framework is: import Foundation An equivalent solution in the Ruby REPL for a *.ruby file is: require "~/src/foo" These are similar q
ここでは Swift のクロージャ (closures) について学びます。 Swift でのクロージャは主に三つの形式があります。ひとつはグローバル関数 (global functions)。 これは名前付きで、値をキャプチャしないクロージャといえます。二つ目はネストされた関数 (nested functions)。 これは名前付きで、関数を包含するブロックにおける値をキャプチャするクロージャです。 これらは普通に関数と呼ばれるもので、特別な形式のクロージャといえます。 三つ目はクロージャ式 (closure expressions) です。 これは名前無し、かつ、そのコンテキストにおける値をキャプチャするものです。 このページでは三つ目のクロージャ式について説明します。 クロージャ式 クロージャ式 は次の形式で記述できます。 { (引数1: 型1, 引数2 : 型2, ...) ->
これは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
Swift is now open source. For the latest news, visit the Swift open source blog Xcode 6.1 introduces yet another way to experiment with Swift in the form of an interactive Read Eval Print Loop, or REPL. Developers familiar with interpreted languages will feel comfortable in this command-line environment, and even experienced developers will find a few unique features. To get started, launch Termin
そう言えばコマンドラインとして使える話があったので、今更試してみたメモ。 コマンドラインツール群はコンパイラ等と同様にアプリケーションパッケージ内にある。 通常は xcode-select -print-path で表示されている Xcode 内のツールが使われるが、現状ベータなので xcode-select -switch で変更せずに直接パスを叩く方針にする。 REPL(Read-Eval-Print-Loop)を使ってみる まずは REPL を立ち上げてみる。 % /Applications/Xcode6-Beta5.app/Contents/Developer/usr/bin/xcrun swift Welcome to Swift! Type :help for assistance. 1> または以下でも同じものが立ち上がる。 % /Applications/Xcode6-Be
2014年6月、WWDC2014で発表されたプログラミング言語「Swift」の本格派解説書の登場です。 本書では、アプリケーションを作成するための説明を必要最低限にとどめ、Swiftを深く理解してもらうことに注力しています。Objective-Cとはまったく違うモダンな文法はもちろん、型の宣言を省略することができる型推論、複数の値を1つの変数に格納できるタプル、そして機能豊富な構造体や列挙体、オプショナル型などの最新機能、さらにはジェネリクスやカリー化など、可能な限り細かく言及しています。また、言語仕様から一歩踏み込んで、既存のObjective-CのコードをSwiftに置き換えていく方法や、Objective-CとSwiftを同一プロジェクト内で共存させる方法など、実践的な内容まで、現場の開発者が徹底解説しました。「Chapter1 Swiftの概要」では、Swiftの基本を解説します。
今回はREPL(Read eval print loop)とシェルスクリプトとしてのSwift環境を紹介する。開発環境を整えなくともSwiftの言語と触れ合える2つのモードはテスト環境としてだけでなく実用的なツールとしても活用ができる。もっと気軽に、もっと身近にSwiftを体験できる仕組みを紹介しよう。 (繁田 卓二) ■ iOS開発関連の動向 本題に入る前にここ最近のiOS開発関連の動向を追っておこう。11月中旬にXcode6.2のベータ版がリリースされた。iOS8.2 SDKが同梱されているこのバージョンでは同時にApple Watchアプリ開発のための環境整備「WatchKit」フレームワークが追加されている。もちろんApple WatchアプリはSwiftでも開発可能である。既に公式サンプルなども上がっており、シミュレータでの動作確認が可能だ。興味のある方はダウンロードしてみると良
What is Swift? 概要 Appleが作った不自由言語。ソースコードの公開は無い 主にXcodeで動く。 LLVMを用いており、コンパイルが激速(らしい。それに関しては後述) PHPに関数型言語の要素を追加したようなカオスな言語 人によってはJavaに似てるとかPythonに似てるとかCoffeeScriptに似てるとか言ってる。 (Lispに似ていると言っている人はまだ見たこと無い) 僕(Apple)の考えた最強のプログラミング言語 Xcodeと呼ばれる FUJITSU 不自由なIDEでしか動かない不自由なプログラミング言語です。 言語仕様はiBooksと呼ばれる、これも不自由(主に使い勝手が悪い)なストアからDLして読める。 しかし、これもサンプルコードから理解してね☆(ゝω・)vキャピ的なノリで書かれている感が否めない。 LT大会が行われるようだが、既にネタがあるのだろう
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く