Tag Archives: Swift

【登壇・協賛情報】try! Swift Tokyo 2018

プログラミング言語 Swift に関するコミュニティ主催のカンファレンス、try! Swift Tokyo 2018にて、LINEはプラチナスポンサーを務めさせていただきます。あわせて、カンファレンス翌日に都内の各所で行われるワークショップともくもく会(ピアラボ)のため、LINEオフィスのカフェを会場提供いたします。

Swift 4.1+

こんにちは、AIプラットフォームClova開発チームのezuraです。この記事はLINE Advent Calendar 2017の14日目の記事です。

みなさん、今年のSwiftマイグレーション祭りは無事に終わりましたか。例年よりも穏やかなエラーを味わえたのではないでしょうか。

さて、マイグレーションといえば、みなさんの行ったマイグレーションは「普通の」マイグレーションですか?それとも「スーパー」マイグレーションですか?

ここでいう「スーパーマイグレーション」とは、エラー・警告部分を修正するだけでなく、Swiftの改善によって効率的に書けるようになった部分の変更を含めたマイグレーションです。

スーパーマイグレーションの対象箇所はエラー等が出ない部分も含むため、いざマイグレーションを始めると見つけにくいですよね。効率良く移行するには、今のうちから、新しいバージョンに移行しやすいような設計や記述にしておくことや、新規または既存のコードに今後実装される機能によって改善できる部分を見つけたらマークをつけておくなど、下準備が重要です。これはSwift Projectでもよく見られる光景です。

しかし、そのためにはこの先に何が変わるのかを早めに知っておく必要があります。

SwiftでElmを作る

この記事は、LINE Advent Calendar 2016の 7日目の記事です

こんにちは、開発1センター・開発2室の 稲見 (@inamiy) です。 普段はiOSエンジニアとしてSwiftを書いていますが、最近はもっぱら関数型プログラミング全般に興味があります。

今日は、「SwiftでElmを作る」というテーマで、お話しさせていただきます。

Elmって何?

Web向けの静的型付け・関数型プログラミング言語です。詳しくは http://elm-lang.org をご参照ください。

簡単に言うと、「Haskell + React.js + Redux」です。コンパイル時に、JavaScriptに変換されます。

さっそく、簡単なボタンカウンターの例を見てみましょう。

import Html exposing (beginnerProgram, div, button, text) 
import Html.Events exposing (onClick)

-- `main`関数 = プログラムの始まり。 
-- 初期状態(model)に`0`をセット + 以下にあるview関数、update関数をセット。 
main = 
  beginnerProgram { model = 0, view = view, update = update }

-- `view`関数 = モデル(状態)からビュー(Virtual DOM)を生成。 
-- プログラムがメッセージを受け取る度に呼ばれる。 
-- ユーザー入力(onClick)等の度に、プログラムにメッセージが送られる。 
view model = 
  div [] 
    [ button [ onClick Decrement ] [ text "-" ] 
    , div [] [ text (toString model) ] 
    , button [ onClick Increment ] [ text "+" ] ]

-- `Msg` = メッセージ型。今回は2つのパターンだけ定義。 
type Msg = Increment | Decrement

-- `update`関数 = 状態遷移関数。 
-- 「メッセージ」と「現在の状態」を引数に、「新しい状態」を返す。 
-- プログラムがメッセージを受け取る度に呼ばれる。 
update msg model = 
  case msg of 
    Increment -> 
      model + 1

    Decrement ->
      model - 1

try! Swift 登壇レポート

try! Swift に参加して

こんにちは、LINEでiOSエンジニアを担当しているInami (@inamiy) です。

先日、2016年3月2日〜4日の3日間にかけて、「try! Swift」というSwiftカンファレンスが東京・渋谷で開催されました。 弊社もゴールドスポンサーとして協賛した同イベントですが、総勢500人を超える参加者のうち実に3割近くの方々が海外からの参加で、女性講演者の比率も高く、 これまでのSwift/iOS勉強会ではなかなか見られなかったようなとても国際色豊かで華やかなイベントとなりました。 私は今回、スピーカーとして登壇する貴重な機会をいただき「パーサーコンビネーター in Swift」という関数型言語のテーマについて話しました。
スライド
GitHub
雰囲気
動画