Skip to content
This repository has been archived by the owner on Aug 17, 2022. It is now read-only.

Desafio Teste iOS - Felipe Perius #26

Open
wants to merge 27 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
c23d0ab
start project TesteArenaFelipePerius
feliperius Feb 14, 2020
4780a31
create project TesteArenaFelipePerius
feliperius Feb 14, 2020
8f0a9f2
add gitignore swift
feliperius Feb 14, 2020
1fdaa25
add clean architeture struct and setup navigation controller
feliperius Feb 17, 2020
0f4fc1b
implementation auto layout in cell
feliperius Feb 17, 2020
223a5b7
install cocoapods
feliperius Feb 17, 2020
b8b7ac3
implementation homedatascource
feliperius Feb 17, 2020
7f74b6a
implementation homedatascource
feliperius Feb 17, 2020
5a04afd
Parseble models struct
feliperius Feb 17, 2020
3b5481c
integration with homeInteractor,HomePresenter and adjust loader view
feliperius Feb 18, 2020
dd16c1b
integration with homeInteractor,HomePresenter and adjust loader view
feliperius Feb 18, 2020
c80e520
implementation load url images with SDwebImage
feliperius Feb 18, 2020
061bd9a
implenation scenes clean pullRequestViewController
feliperius Feb 19, 2020
44acde2
implementation open url pull request
feliperius Feb 19, 2020
1c58e91
Update Readme
feliperius Feb 19, 2020
effb7dd
Fix url Readme
feliperius Feb 19, 2020
2e3fc00
Update Readme
feliperius Feb 19, 2020
d9be303
fix number open/closed
feliperius Feb 19, 2020
76bd9bf
Merge branch 'master' of https://github.com/feliperius/desafio-ios
feliperius Feb 19, 2020
b98fa1a
fix back button image
feliperius Feb 19, 2020
7510e5d
uptade readme
feliperius Feb 19, 2020
c033020
fix loading view
feliperius Feb 19, 2020
2b3d7ad
Merge branch 'master' of https://github.com/feliperius/desafio-ios
feliperius Feb 19, 2020
efbd57e
adjut Unit Teste
feliperius Feb 19, 2020
e9a0893
fix unit test
feliperius Feb 19, 2020
7400305
update readme
feliperius Feb 19, 2020
ec1f566
fix Readme
feliperius Feb 19, 2020
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
78 changes: 78 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Xcode
#
# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore

## Build generated
build/
DerivedData/

## Various settings
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata/

## Other
*.moved-aside
*.xccheckout
*.xcscmblueprint

## Obj-C/Swift specific
*.hmap
*.ipa
*.dSYM.zip
*.dSYM

## Playgrounds
timeline.xctimeline
playground.xcworkspace

# Swift Package Manager
#
# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies.
# Packages/
# Package.pins
# Package.resolved
.build/

# CocoaPods
#
# We recommend against adding the Pods directory to your .gitignore. However
# you should judge for yourself, the pros and cons are mentioned at:
# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
#
# Pods/
#
# Add this line if you want to avoid checking in source code from the Xcode workspace
# *.xcworkspace

# Carthage
#
# Add this line if you want to avoid checking in source code from Carthage dependencies.
# Carthage/Checkouts

Carthage/Build

# fastlane
#
# It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
# screenshots whenever they are needed.
# For more information about the recommended setup visit:
# https://docs.fastlane.tools/best-practices/source-control/#source-control

fastlane/report.xml
fastlane/Preview.html
fastlane/screenshots/**/*.png
fastlane/test_output

# Code Injection
#
# After new code Injection tools there's a generated folder /iOSInjectionProject
# https://github.com/johnno1962/injectionforxcode

iOSInjectionProject/
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,44 @@
# **DESAFIO iOS ARENA - Felipe Perius**

Objetivo do projeto é testar as habilidades do canditado na criação de aplicativos para plataforma iOS .

## Começando
Estas instruções irão levá-lo a uma cópia do projeto em funcionamento em sua máquina local para fins de desenvolvimento e teste.

### Pré-requisitos
O que você precisa para construir, executar e testar o aplicativo:
Xcode 10.0 ou posterior.

Faça o clone do repositório em sua máquina local.

Depois será necessario a instalação das dependências com o comando:
```bash
$ pod install
```

Em seguida, abra o projeto no Xcode:
open TesteArenaFelipePerius.xcworkspace Agora você está pronto para começar.

### Uso de dependências

Nesse projeto utilizei 4 dependecias utilizando cocoaPods:
* Utilizei o [Alamofire](https://github.com/Alamofire/Alamofire) para facilitar as requisições com API .

* [ObjectMapper](https://github.com/tristanhimmelman/ObjectMapper) para fazer o parse dos models do JSON e comecei usando codable mas resolvi usar ObjectMapper mesmo.

* [RxSwift](https://github.com/ReactiveX/RxSwift) para fazer as requisições na camada de serviço com programção reativa.

* [SDWebImage](https://github.com/SDWebImage/SDWebImage) para download das urls de imagens e cache.

### Arquitetura Utilizada
A Arquitetura utilizada foi a [Clean Architecture VIP](https://clean-swift.com/clean-swift-ios-architecture/) para mais informações segue o link com a documentação.


### Autor
- **Felipe Augusto Pimentel Perius**



# Criar um aplicativo de consulta a API do [GitHub](https://github.com)#

Criar um aplicativo para consultar a [API do GitHub](https://developer.github.com/v3/) e trazer os repositórios mais populares de Java. Basear-se no mockup fornecido:
Expand Down
23 changes: 23 additions & 0 deletions TesteArenaFelipePerius/Podfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'

target 'TesteArenaFelipePerius' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!

# Pods for TesteArenaFelipePerius
pod 'Alamofire', '~> 5.0'
pod 'RxSwift', '~> 4.0'
pod 'ObjectMapper', '~> 3.4'
pod 'SDWebImage', '~> 5.0'

target 'TesteArenaFelipePeriusTests' do
inherit! :search_paths
# Pods for testing
end

target 'TesteArenaFelipePeriusUITests' do
# Pods for testing
end

end
30 changes: 30 additions & 0 deletions TesteArenaFelipePerius/Podfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
PODS:
- Alamofire (5.0.0)
- ObjectMapper (3.5.1)
- RxSwift (4.5.0)
- SDWebImage (5.5.2):
- SDWebImage/Core (= 5.5.2)
- SDWebImage/Core (5.5.2)

DEPENDENCIES:
- Alamofire (~> 5.0)
- ObjectMapper (~> 3.4)
- RxSwift (~> 4.0)
- SDWebImage (~> 5.0)

SPEC REPOS:
trunk:
- Alamofire
- ObjectMapper
- RxSwift
- SDWebImage

SPEC CHECKSUMS:
Alamofire: 58ff2bfb8daaacaa233d5c36e37b10a5248f59b1
ObjectMapper: 70187b8941977c62ccfb423caf6b50be405cabf0
RxSwift: f172070dfd1a93d70a9ab97a5a01166206e1c575
SDWebImage: 4d5c027c935438f341ed33dbac53ff9f479922ca

PODFILE CHECKSUM: 7bf99748eb379a02f08e0726e86dd6ea99074aae

COCOAPODS: 1.8.4
19 changes: 19 additions & 0 deletions TesteArenaFelipePerius/Pods/Alamofire/LICENSE

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading