/FlickrPartyTDD

A simple iOS (Swift) app, using TDD

Primary LanguageSwift

Flickr Party (TDD)

FlickrParty is a simple iOS app built using Test Driven Development (TDD). in the Swift programming language.

It also tries to implement the following practices:

  • SOLID Object Oriented Design Principles. [Read More...]
  • Object Oriented Design (OOD) in Swift. [View]
  • The Official raywenderlich.com Swift Style Guide. View
  • No Storyboards or Nib files
  • Lean ViewController and proper use of MVC
  • Use as few external dependencies, frameworks and libraries as possible.

Depedencies:

This app uses the following external frameworks:

  • Kingfisher : A lightweight and pure Swift implemented library for downloading and caching image from the web.
  • Reachability : Replacement for Apple's Reachability re-written in Swift

The dependencies have been added using Carthage : A simple, decentralized dependency manager for Cocoa.

How to use:
  1. Clone or Download the repository
  2. Launch the Terminal app and run carthage update from the project's root directory.
  3. Open the project in Xcode (Tested on Xcode 7.3.1)..
  4. Change the applicationKey value in the Config struct in FlickrAPIService (FlickrTDD > Model > Flickr > FlickrAPIService.swift file) to a valid FlickrAPI application key.
  5. Build and Run

Notes:

This project is intended to be part of a learning process for me. I plan to make several changes to this repo based on new findings / learnings. My objective is to write - clean and maintainable code.

I welcome all feedback, criticism, suggestions for improvements.