profile
viewpoint
Taiki Suzuki marty-suzuki CyberAgent, Inc. Tokyo, Japan https://twitter.com/marty_suzuki AbemaTV

cats-oss/Sica 942

:deer: Simple Interface Core Animation. Run type-safe animation sequencially or parallelly

marty-suzuki/iOSDesignPatternSamples 589

This is Github user search demo app which made by many variety of design patterns. You can compare differences in MVC, MVP, MVVM and Flux.

marty-suzuki/GitHubSearchWithSwiftUI 176

SwiftUI and Combine based GitHubSearch example.

marty-suzuki/HoverConversion 168

HoverConversion realized vertical paging with UITableView. UIViewController will be paged when reaching top or bottom of UITableView contentOffset.

cats-oss/Unio 128

🔄 KeyPath based Unidirectional Input / Output framework with RxSwift.

marty-suzuki/DuctTape 125

📦 KeyPath dynamicMemberLookup based syntax sugar for Swift.

marty-suzuki/FluxCapacitor 125

This is what makes the Flux design pattern possible.

marty-suzuki/Continuum 84

NotificationCenter based Lightweight UI / AnyObject binder.

cats-oss/cujira 47

🐳 cujira is a command line tool that makes easy to show issue list from Jira.

marty-suzuki/ArtShredder 35

📱Banksy Shredder for iOS

startedmamori-i-japan/mamori-i-japan-ios

started time in 6 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha e7e2c5dcb89b6089e1b75bcc2fa566b56558cf4e

Update README

view details

push time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 9e3587ed202862df2ab8764aa6b73d88d252688e

Update README

view details

push time in 10 days

delete branch marty-suzuki/reversi-ios

delete branch : dev

delete time in 10 days

created tagmarty-suzuki/reversi-ios

tagmvvm-with-closure

created time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha da32bc8b8b6cd600579440b47d230e4e927f6033

Update README

view details

push time in 10 days

PR opened refactoring-challenge/reversi-ios

READMEにリンクを追加

楽しくチャレンジさせていただきました!

+1 -0

0 comment

1 changed file

pr created time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 42e3b4749877ea788c776899b30224e432fb120a

Add marty-suzuki/reversi-ios URL to README

view details

push time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 8b68dee1f09dd3afe518baebd221fafb8945446a

Add NextTurnManagementTests

view details

marty-suzuki

commit sha e958be91e18cb78c548c01f0a3e686c7a9f6d3bc

Add PlayerTurnManagementTests

view details

push time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha f27206ee80d5e890a706091976301034e5ce64a4

Add marty-suzuki/reversi-ios URL to README

view details

push time in 10 days

create barnchmarty-suzuki/reversi-ios

branch : add-url

created branch time in 10 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha a761413314d2f0257b2c5ef992b2cdfe1a0fd837

Update README

view details

push time in 10 days

starteddtolnay/anyhow

started time in 12 days

startedgoogle/swift-benchmark

started time in 12 days

PublicEvent

push eventmarty-suzuki/ReusableView

marty-suzuki

commit sha 61b919c2e9b1fd9216acbe9fe4518d8919d138ef

Add view handler

view details

push time in 12 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 286cba48ea16060dde7974dac4b623fcd95767ec

Add uml class diagram to README

view details

push time in 13 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 7495d800c33dad93df38820727866c21163aec3f

Add collapsible to README

view details

push time in 14 days

push eventmarty-suzuki/reversi-ios

marty-suzuki

commit sha 71ab8fccaad21735feac9b36e8b349dafa5ecf33

Update gitignore

view details

marty-suzuki

commit sha 6372d8480c063d27bf8be079e36e0aa61b0e8265

Add GameDataIO

view details

marty-suzuki

commit sha c81a13417e7f59747721efb32446600e715f6d26

Exclude save and load logic from ViewController

view details

marty-suzuki

commit sha 4e2a8927c363b3daf77189722881fa40bfb1cc01

Add ReversiLogic.framework

view details

marty-suzuki

commit sha d5dbe38e86189dd6bd4d6981f4bfcf7643a79f6e

Move Reversi/Disk.swift to ReversiLogic/DataTypes/Disk.swift

view details

marty-suzuki

commit sha a454e52e72ebbea2d16e00b92095250e9b54c263

Move index computed property from ViewController to Disk

view details

marty-suzuki

commit sha b71d40375f7488e6eff6d14cf71b863ca54d7041

Move Reversi/Models/GameDataIO to ReversiLogic/Models/GameDataIO

view details

marty-suzuki

commit sha 398c0e00e4bfb85333e704707168607a540c4d30

Update ReversiLogic scheme

view details

marty-suzuki

commit sha 082efd7ed9ffe801a8167eaf760f80855f7cb735

Remove ReversiLogicTests.swift

view details

marty-suzuki

commit sha 32193cbd60b3c4ef82b7f3a172620a1b76a90783

Add GameDataIOTests

view details

marty-suzuki

commit sha 41516e3b2541cb1d85700be8b4bde1a4fe864070

Add GameData

view details

marty-suzuki

commit sha dfd221d471ec0d225ae131d16db97b4283ff2fe6

Fix GameDataIO

view details

marty-suzuki

commit sha 02c0b95205a7ee3330d5cb052be6303cd9086a0b

Fix ViewController with new GameDataIO interface

view details

marty-suzuki

commit sha 809af0239dc4ff14a4267e8bca94b4035565ea0c

Remove ViewController.Player

view details

marty-suzuki

commit sha 468e28e3c5aa1f5bb8ae563f7a497f5772174c20

Add ReversiViewModel

view details

marty-suzuki

commit sha 7ae606010cc9571b1f1f1ee22f45a2cb1948225a

Replace turn to viewModel.trun in ViewController

view details

marty-suzuki

commit sha a82a5aa0194cfeb318aebcbe423b52b50b94fb71

Add Canceller

view details

marty-suzuki

commit sha 2558337a8c7af58e554725419709dfef7d833688

Move animationCanceller and isAnimating to ReversiViewModel from ViewController

view details

marty-suzuki

commit sha c7facf5560c0b6541d90c82729d411e0e4e5d794

Move playerCancellers to ReversiViewModel from ViewController

view details

marty-suzuki

commit sha 98ce2befb7ee7310140e1479ae0a6c663058e5cf

Move viewHasAppeared to ReversiViewModel from ViewController

view details

push time in 14 days

create barnchcats-oss/Unio

branch : feature-state-accessible

created branch time in 15 days

created tagcats-oss/Unio

tag0.10.0

🔄 KeyPath based Unidirectional Input / Output framework with RxSwift.

created time in 17 days

release cats-oss/Unio

0.10.0

released time in 17 days

push eventcats-oss/Unio

marty-suzuki

commit sha 173487bb8eebc25da03d6d8bc0a14b1c518821b4

Update README

view details

push time in 17 days

push eventcats-oss/Unio

marty-suzuki

commit sha b6ced88d9a72a298a9de4cf105d6f06bac39227d

Update README

view details

push time in 17 days

push eventcats-oss/Unio

tomokitakahashi

commit sha 429aa5034324f8eb00ab128ed0eabb5ca978a538

Refactor GitHubSearchLogicStreamTests

view details

tomokitakahashi

commit sha d3d9371997322f7395d1349c04d939fc02403adf

Revert deprecated on specify version

view details

Taiki Suzuki

commit sha 6986ab3b9360ee8dc588ea0f07ea0771093c0c23

Merge pull request #22 from tomokitakahashi/fix-typo Fix Example Test

view details

push time in 17 days

PR merged cats-oss/Unio

Fix Example Test

Hi, ~I found a point to refactor with typo in the example so I fixed :)~ I found typo in the example so I fixed :)

+2 -2

2 comments

1 changed file

tomokitakahashi

pr closed time in 17 days

pull request commentcats-oss/Unio

Fix Example Test

Thank you!!

tomokitakahashi

comment created time in 17 days

startedvislyhq/stretch

started time in 18 days

startedbannzai/Gedatsu

started time in 18 days

startedsusieyy/refactoring-challenge-reversi-ios

started time in 18 days

startedpointfreeco/swift-composable-architecture

started time in 21 days

startedspotify/Mobius.swift

started time in 21 days

starteddavecom/SwiftPriorityQueue

started time in a month

startedrefactoring-challenge/reversi-ios

started time in a month

startedSwiftDocOrg/DocTest

started time in a month

startedabema/abema-ios-tutorial-public

started time in a month

startedkoekeishiya/yabai

started time in 2 months

delete branch cats-oss/Unio

delete branch : feature-computed

delete time in 2 months

push eventcats-oss/Unio

marty-suzuki

commit sha 6acbd29e25b3bb99654104938fecb174d5870577

Add Computed

view details

marty-suzuki

commit sha cd5d73be568f892ae13788fa8d03ae9e44138d6f

Use inlinable

view details

Taiki Suzuki

commit sha 09621bf79305ab0b05984e517515fb01e3d683f9

Merge pull request #20 from cats-oss/feature-computed Add Computed

view details

push time in 2 months

PR merged cats-oss/Unio

Add Computed

We sometimes want to access value without via Observable. Computed supports above cases.

Computed value case

let isHidden = BehaviorRelay<Bool>(value: false)

sturct Output: OutputType {
    let isHidden: Computed<Bool>
}

let output = OutputWrapper(Output(tabs: .init({ isHidden.value }))
output.isHidden // false

isHidden.accept(true)

output.isHidden // true

Constant value case

enum Tab {
    case home
    case notification
    case mypage
}

sturct Output: OutputType {
    let tabs: Computed<[Tab]>
}

let output = OutputWrapper(Output(tabs: .init(caputure: [.home, .notification, .mypage])))
output.tabs // Be able to access `[Tab]`
+67 -6

0 comment

4 changed files

marty-suzuki

pr closed time in 2 months

delete branch cats-oss/Unio

delete branch : make-deprecated

delete time in 2 months

push eventcats-oss/Unio

marty-suzuki

commit sha 8544e0c0d02e4ffdcdd61b15741a8456dd87d992

Deprecate old methods that wrapping subscripts of KeyPathDynamicMemberLookup

view details

marty-suzuki

commit sha 1a36a0bc4bb81b92bc075a85873d7d397dd4788a

Fix attributes

view details

Taiki Suzuki

commit sha b48e8bf705fa8bc45273eb8ecea5b37b75ac117f

Merge pull request #21 from cats-oss/make-deprecated Deprecate some methods

view details

push time in 2 months

PR merged cats-oss/Unio

Deprecate some methods
+10 -0

0 comment

2 changed files

marty-suzuki

pr closed time in 2 months

Pull request review commentcats-oss/Unio

Deprecate some methods

 public final class Dependency<Input: InputType, State: StateType, Extra: ExtraTy     }      /// Makes possible to get Observable from `Input`.+    @available(*, deprecated, message: "Use `inputObservables.xxx` on Swift5.1 or greater. If Swift4.2, use `inputObservables[dynamicMember: \\.xxx]`.")

Fixed with @available(swift, deprecated: 5.1, message: "...") at 1a36a0bc4bb81b92bc075a85873d7d397dd4788a

marty-suzuki

comment created time in 2 months

push eventcats-oss/Unio

marty-suzuki

commit sha 1a36a0bc4bb81b92bc075a85873d7d397dd4788a

Fix attributes

view details

push time in 2 months

Pull request review commentcats-oss/Unio

Add Computed

+//+//  Computed.swift+//  Unio+//+//  Created by marty-suzuki on 2020/2/19.+//  Copyright © 2020 tv.abema. All rights reserved.+//++import Foundation++/// Represents computed property+public final class Computed<Element> {++    public var value: Element {+        return getter()

Fixed at cd5d73be568f892ae13788fa8d03ae9e44138d6f

marty-suzuki

comment created time in 2 months

push eventcats-oss/Unio

marty-suzuki

commit sha cd5d73be568f892ae13788fa8d03ae9e44138d6f

Use inlinable

view details

push time in 2 months

PR opened cats-oss/Unio

Reviewers
Deprecate some methods
+10 -0

0 comment

2 changed files

pr created time in 2 months

create barnchcats-oss/Unio

branch : make-deprecated

created branch time in 2 months

PR opened cats-oss/Unio

Add Computed

We sometimes want to access value without via Observable. Computed supports above cases.

Computed value case

let isHidden = BehaviorRelay<Bool>(value: false)

sturct Output: OutputType {
    let isHidden: Computed<Bool>
}

let output = OutputWrapper(Output(tabs: .init({ isHidden.value }))
output.isHidden // false

isHidden.accept(true)

output.isHidden // true

Constant value case

enum Tab {
    case home
    case notification
    case mypage
}

sturct Output: OutputType {
    let tabs: Computed<[Tab]>
}

let output = OutputWrapper(Output(tabs: .init(caputure: [.home, .notification, .mypage])))
output.tabs // Be able to access `[Tab]`
+65 -6

0 comment

4 changed files

pr created time in 2 months

create barnchcats-oss/Unio

branch : feature-computed

created branch time in 2 months

startedtokyo-metropolitan-gov/covid19

started time in 3 months

startedicanzilb/RxTimelane

started time in 3 months

startedplaybook-ui/playbook-ios

started time in 3 months

startedmicrosoft/DarkModeKit

started time in 3 months

startedkean/Image-Frameworks-Benchmark

started time in 3 months

more