It's simple IOS Study Case - Movie App

Overview

IOS Deployment Info:

IOS 15.0 ve üzeri

Kullanılan Teknolojiler ve Yapılar

  • Kingfisher
  • AVFoundation
  • URLSession
  • Generics
  • CollectionView
  • VIPER
  • Swipe Gesture Recognizer
  • Codable

Uygulamanın yapımında VIPER patterni kullandım. VIPER ile uygulamanın yapım aşamasında belirli roller belirlenir ve kodlar ayrıştırılır. Bu durum kodların birbirinden bağımsız olabilmesini sağlar ve yeni bir özellik eklerken daha rahat eklenir.

İstek atma fonksiyonunu generic type olarak ayarladım. Böylece türden bağımsız işlem yapmamı sağlayacak. Her türlü url tipi için istek atabileceğim.

Uygulamada API'den veri çekme için URLSession kullandım. Uygulamanın çok fazla üçüncü parti kütüphanelere bağlı olmasını istemediğimden URLSession tercih ediyorum.

API'den resimleri alabilmek için Kingfisher kütüphanesinden yararlandım. Kingfisher sayesinde internet üzerinden resimleri oldukça kolay bir şekilde indirebiliyorum.

Uygulamada kategori adını ve o kategorideki filmleri CollectionView sayesinde gösterdim. Swipe ile sayfalar arası geçişler sağlanıyor. Swipe işlemini yapabilmek için Swipe Gesture Recognizer kullandım. Her geçişte sayfa içerindeki içerikler değişiyor. Swipe animasyonu için Transitions animasyonundan yararlandım.

CollectionView içerisindeki herhangi bir içeriğe tıkladığımızda ayrı bir sayfaya yönlendirilir. O sayfa içerisinde verilen videoyu AVPlayer sayesinde oynattım. Video üzerinde tıklanılan içerisin adı mevcut. Video pause/resume, forward/run back( 5 saniye) fonksiyonlarını içermektedir.

Uygulama Ekran Kaydı:

MovieStudyCase.mp4
You might also like...
Here it is my study note for iOS development.

iOS-Projects for beginners HI, this is Kaia and here it is my study note for iOS development. Check the detailed Notes below: Project Name Objective B

sejong UMC 3rd iOS-study
sejong UMC 3rd iOS-study

UMC_3rd-iOS : Team A 세종대학교 UMC 3기 - iOS 스터디 ✅ ⬜ ✨ Member ✏️ Nickname / Name 💻 GitHub 📚 Major 승콩 / 홍승완 https://github.com/hsw1920 세종대학교 지능기전공학부 뚜벅초 /

30 mini Swift Apps for self-study
30 mini Swift Apps for self-study

Swift 30 Projects Contents This repo is updated with Swift 5 and compatible with iPhone X: Simple UIKit components UIScrollView, UITableView, UICollec

Test case project for mackolik

Mackolik - iOS Developer - Test Case Gökhan Mandacı 28 Oct 2021 I developed a two-page app and a general purpose drop down widget for the Mackolik Tes

A common use case is wanting to convert device identifiers such as iPhone10,1 to a user friendly name; iPhone 8.

Devices Swift package that contains all devices from https://www.theiphonewiki.com/wiki/Models. A common use case is wanting to convert device identif

Gallery has a clearer flow based on albums and focuses on the use case of selecting video
Gallery has a clearer flow based on albums and focuses on the use case of selecting video

Description We all love image pickers, don't we? You may already know of ImagePicker, the all in one solution for capturing pictures and selecting ima

Viagens (SwiftUi)  Project developed to study Swift
Viagens (SwiftUi) Project developed to study Swift

Viagens (SwiftUi) Project developed to study Swift Made with 💖 by Igor Sthaynny 📌 Contents 📌 Contents 📷 Screenshots 🚀 Technologies 💻 How to run

A study card application built with SwiftUI and Combine
A study card application built with SwiftUI and Combine

StudyCards Description A study card application. I built this application to get

colorBlendFactor \\ reversed() \\ motionBegans \\ for case let

PN_Fireworks_Night colorBlendFactor: A floating-point value that describes how the color is blended with the sprite’s texture. colorBlendFactor value

Project developed for study purpose.

WhisperChain Project developed for study purpose. This app uses Whisper API to display a scrolling list of whispers from the “Popular” feed. When a wh

Swiftmon - swiftmon restarts your swift application in case of any file changes

swiftmon swiftmon restarts your swift application in case of any file change Requirements Installed in system swift, npm, node Installing You need to

30 mini Swift Apps for self-study
30 mini Swift Apps for self-study

Swift 30 Projects Contents This repo is updated with Swift 5 and compatible with iPhone X: Simple UIKit components UIScrollView, UITableView, UICollec

**`withCheckedContinuation`'s body will run on background thread in case of starting from main-actor.**
**`withCheckedContinuation`'s body will run on background thread in case of starting from main-actor.**

ConcurrencyContinuationReproduce Differences of Concurrency behaviors between Xcode 14.0 and 14.1 Xcode 14.0 iOS 13+: Runs on main (inherited same con

iOS App showing a list of Top Movies from The Movie Database API, with a movies searcher

TMDBTest App para iOS que muestra un listado de películas destacadas haciendo uso de la API de "The Movie Database". Además la app dispone de un busca

Forecast App is an ios application built on top of omdb movie api for batman lovers to see their favorite batman movies
Forecast App is an ios application built on top of omdb movie api for batman lovers to see their favorite batman movies

Catbon-Movie-App Forecast App is an ios application built on top of omdb movie api for batman lovers to see their favorite batman movies, users can al

Movie Database app made with SwiftUI and UIKit
Movie Database app made with SwiftUI and UIKit

HW4_DogukaanKilicarslan Movie Data Base App made with SwiftUI Movie Database app made with SwiftUI Preview Movie Data Base App : Star Wars Characters

Flix is an app that allows users to browse movies from the The Movie Database API.
Flix is an app that allows users to browse movies from the The Movie Database API.

Flix is an app that allows users to browse movies from the The Movie Database API.

An app that allows users to browse movies from the The Movie Database API
An app that allows users to browse movies from the The Movie Database API

Flix Flix is an app that allows users to browse movies from the The Movie Database API. 📝 NOTE - PASTE PART 2 SNIPPET HERE: Paste the README template

Owner
Bilge Çakar
Bilge Çakar
Netflix and App Store like UITableView with UICollectionView, written in pure Swift 4.2

GLTableCollectionView Branch Status master develop What it is GLTableCollectionView is a ready to use UITableViewController with a UICollectionView fo

Giulio 708 Nov 17, 2022
Reusable iOS's behavior drag or swipe to pop ViewController

DLSwipeToPopController Reusable iOS's behavior to pop ViewController base on SwipeRightToPopController: Swipe from Right to Left to pop ViewController

Le Ngoc Duy 1 Sep 17, 2022
An iOS drop-in UITableView, UICollectionView and UIScrollView superclass category for showing a customizable floating button on top of it.

MEVFloatingButton An iOS drop-in UITableView, UICollectionView, UIScrollView superclass category for showing a customizable floating button on top of

Manuel Escrig 298 Jul 17, 2022
Parallax Scroll-Jacking Effects Engine for iOS / tvOS

Parade Introduction Communicating to cells inside of UICollectionViews, UITableViews, or UIScrollViews, has always been a challenge. It almost always

Elephant 768 Dec 17, 2022
Easy and type-safe iOS table and collection views in Swift.

Quick Start TL;DR? SimpleSource is a library that lets you populate and update table views and collection views with ease. It gives you fully typed cl

Squarespace 96 Dec 26, 2022
UIView subclass that bends its edges when its position changes.

AHKBendableView BendableView is a UIView subclass that bends its edges when its position change is animated. Internally, BendableView contains CAShape

Arek Holko 591 Jul 24, 2022
A UISwitch that infects its superview with its tint color.

UISwitch subclass that 'infects' the parent view with the onTintColor when the switch is turned on. Inspired by this Dribble by Ramotion. Screenshot I

Andrea Mazzini 337 Sep 12, 2022
An Integer type that clamps its value to its minimum and maximum instead of over- or underflowing.

ClampedInteger An Integer type that clamps its value to its minimum and maximum instead of over- or underflowing. Examples let big = ClampedIntege

Berik Visschers 0 Jan 17, 2022
We-split - A study app made using SwiftUI

We Split We Split is a study app made using SwiftUI, being part of 100 Days of S

Gabriel Pereira 1 Mar 16, 2022
Use `PreselectedPhotoViewController` to handle limited photo access case in your app.

PreselectedPhotoUI Use PreselectedPhotoViewController to handle limited photo access case in your app. Overview Supports iOS 14.0 or later How to use?

Jaesung 5 Jun 21, 2022