---
title: "Leonardo Maia Pugliese (@leoDev) | Hashnode"
description: "iOS Developer. Read the latest articles by Leonardo Maia Pugliese on Hashnode."
url: "https://hashnode.com/@leoDev"
---

@leoDev

# Leonardo Maia Pugliese

@leoDev · Joined March 2020

iOS Developer

## Comments

[Hi Erich, nice extension! I really love how Swift enables us to extend features of the standard library for whatever we want. Have a nice week!](https://hashnode.com/posts/how-to-write-unit-tests-for-uibutton-with-xctest-in-swift--deleted/62318b00febabbf75388e922/comment/6236f7e9bef4c71aa6f115fa#reply-623820d1bef4c71aa6f1360b)

Reply · Article · Mar 21, 2022 · [How to Write Unit Tests for UIButton with XCTest in Swift](https://hashnode.com/posts/how-to-write-unit-tests-for-uibutton-with-xctest-in-swift--deleted/62318b00febabbf75388e922)

[Thanks Eleftheria :)](https://hashnode.com/posts/check-find-navigator-search-history-in-xcode--deleted/621f1c19aa0b9716581f9dc6/comment/6228902c67104e8316e4087d#reply-622a1f0de552e99d82e58d2d)

Reply · Article · Mar 10, 2022 · [Check Find Navigator Search History in Xcode](https://hashnode.com/posts/check-find-navigator-search-history-in-xcode--deleted/621f1c19aa0b9716581f9dc6)

[Hey, Pavel thanks for your question. And like all other architectural questions, it depends. For this case, if I understand right all the stated behavior is not connected to any business rules (or logic rules). It is a pure app's flow behavior. So, this way I would add this analytics step between who generates the tap ( for example the UIViewController) and who is responsible for the app's flow management ( for example a Coordinator, or a Router). Ex: On an N layer architecture as UI Generate tap (UIViewController) -> ViewModel/Presenter -> Coordinator(flow controller), your analytics should be between the ViewModel and the flow controller. Why? Because you are delegating all the responses from the UI to the ViewModel. Imagine that you want to change the exact same screen from storyboards to SwiftUI, you don't want the side effect of losing your analytics in the process. In the same way, if your architecture is: UI Generate tap -> Coordinator(flow controller), you should add the analytics between the UI and the Coordinator because like in the example above, even if you change the UI you still have the analytics working. The principle is to think about separating the maximum you can the concerns of your app. Don't let one functionality/behavior leak to other places. Have a nice weekend bro! And thanks for the reading!](https://hashnode.com/posts/using-decorator-pattern-to-add-architectural-non-intrusive-analytics-in-swift--deleted/61e6756abe5d7633af87cecc/comment/61e9b7326b944f677207ed6f#reply-61ea57686b944f677207fbb1)

Reply · Article · Jan 21, 2022 · [Using decorator pattern to add architectural non-intrusive analytics in Swift](https://hashnode.com/posts/using-decorator-pattern-to-add-architectural-non-intrusive-analytics-in-swift--deleted/61e6756abe5d7633af87cecc)

[You are right, in the final project on Github it's added. Sorry my mistake, I'll add to it in the post. Thanks for you comment bro, have a wonderful week!](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195/comment/61e7c1486f4d6f431978c83e#reply-61e7e57a6f4d6f431978ce4d)

Reply · Article · Jan 19, 2022 · [Introduction to App Modularisation with Swift Package Manager: A tale to be told](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195)

[Ops sorry bro, now I think everything is there. :) Thanks for the shoutout. Have a nice day!](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195/comment/61c962515fc5da1847326f8c#reply-61c96a0f1de80a7fb227fd9e)

Reply · Article · Dec 27, 2021 · [Introduction to App Modularisation with Swift Package Manager: A tale to be told](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195)

[Hi my friend, thanks for commenting and for the reading. You are absolutely right, I'll update the example with your suggestion! Also add your name to the article as a collaborator. Hope you are well! Best wishes bro.](https://hashnode.com/posts/animating-view-transitions-in-swift--deleted/61672e1b53401f641ba159da/comment/61b35c723e16b66b1b1e5212#reply-61b36ba0b055806a4b00cebb)

Reply · Article · Dec 10, 2021 · [Animating View Transitions in Swift](https://hashnode.com/posts/animating-view-transitions-in-swift--deleted/61672e1b53401f641ba159da)

[Thanks bro!](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195/comment/61a8a0f91e28ee7efba8c4e3#reply-61a8a665be456923c52bcfbe)

Reply · Article · Dec 2, 2021 · [Introduction to App Modularisation with Swift Package Manager: A tale to be told](https://hashnode.com/posts/introduction-to-app-modularisation-with-swift-package-manager-a-tale-to-be-told--deleted/61a87bf31e28ee7efba8c195)

[Hey man, thanks for the comment. I updated the code with a more "protocol approach". And now we can use the protocol inside our ViewModels instead of the concrete implementation. If you don't mind, I also mentioned thanking you in the summary of the post. You are awesome and hope you have a great day bro! :)](https://hashnode.com/posts/dependency-injection-using-property-wrappers-in-swift--deleted/6154af099c8bfd08f5ba9ba4/comment/617403100f452c1cd94fa03f#reply-61766e200f452c1cd94fc7bd)

Reply · Article · Oct 25, 2021 · [Dependency Injection using Property Wrappers in Swift](https://hashnode.com/posts/dependency-injection-using-property-wrappers-in-swift--deleted/6154af099c8bfd08f5ba9ba4)

[Thanks Eleftheria Batsou! We have a great community here, that's all your work.](https://hashnode.com/posts/curious-ways-to-solve-tests-equality-problems-in-swift--deleted/615e9a718e8734462af5bfa7/comment/6164320618374f257327472d#reply-61643f7d53401f641ba12083)

Reply · Article · Oct 11, 2021 · [Curious Ways To Solve Tests Equality Problems in Swift](https://hashnode.com/posts/curious-ways-to-solve-tests-equality-problems-in-swift--deleted/615e9a718e8734462af5bfa7)

[Wow, great point! Thanks for the comment Laksh.](https://hashnode.com/posts/dependency-injection-using-property-wrappers-in-swift--deleted/6154af099c8bfd08f5ba9ba4/comment/615eaf498e8734462af5c2b6#reply-615eb3318e8734462af5c323)

Reply · Article · Oct 7, 2021 · [Dependency Injection using Property Wrappers in Swift](https://hashnode.com/posts/dependency-injection-using-property-wrappers-in-swift--deleted/6154af099c8bfd08f5ba9ba4)
