Skip to content

Commit

Permalink
Updated README
Browse files Browse the repository at this point in the history
  • Loading branch information
kharrison committed Jan 19, 2018
1 parent f2b6cbd commit bc4d00d
Show file tree
Hide file tree
Showing 3 changed files with 57 additions and 61 deletions.
108 changes: 53 additions & 55 deletions WorldFacts/README → WorldFacts/README.md
@@ -1,35 +1,25 @@
=======================================================================
WorldFacts

Version 3.2 12 Oct 2015 Add 3D Touch peek and pop preview
Version 3.1 25 May 2015 Increase width of split view master view
Version 3.0 27 Mar 2015 Add OS X application to create core data
Version 2.0 16 Feb 2014 Update for iOS 8 and UISearchController
Version 1.5 20 Feb 2013 Move core data file to App Support dir
Version 1.4 31 Dec 2012 Add default launch images to support retina
4 inch display
Version 1.3 6 Sep 2012 Add a search bar
Version 1.2 1 Aug 2012 Use default synthesis of ivars
Version 1.1 21 June 2012 Add Storyboard segue to country view
Version 1.0 6 June 2012 Initial Version
=======================================================================
## WorldFacts

The WorldFacts App has gone through a number of iterations over the
years as the capabilities of iOS have changed. Originally it started
as an example of how to construct custom table view cells with a
storyboard. For further details see the post:
storyboard. Some of the earlier posts are likely only of historical interest
now but I think it is interesting to show how much iOS apps need to change
over the years.

For further details see the following posts:

useyourloaf.com/blog/2012/06/07/prototype-cells-and-storyboards.html
* [Prototype Table Cells and Storyboards](https://useyourloaf.com/blog/prototype-table-cells-and-storyboards/)

For details on adding a storyboard segue to show the country detailed
view see the following post:

useyourloaf.com/blog/2012/06/21/storyboard-segues.html
* [Storyboard Segues](https://useyourloaf.com/blog/storyboard-segues/)

The steps to add a search bar to the table view controller are covered
in the following post:

useyourloaf.com/blog/2012/09/06/search-bar-table-view-storyboard.html
* [Adding A Search Bar To A Table View With Storyboards](https://useyourloaf.com/blog/search-bar-table-view-storyboard/)

The release of iOS 8 saw a number of changes to update and modernise
the code:
Expand All @@ -49,72 +39,80 @@ An OS X companion app has also been added to create and maintain the core
data stack. Full details on how to use Cocoa Bindings to create a simple
interface to Core Data are covered in the following post:

useyourloaf.com/blog/2015/03/25/creating-an-os-x-core-data-helper-app.html
* [Creating an OS X Core Data Helper App](https://useyourloaf.com/blog/creating-an-os-x-core-data-helper-app/)

To see details on how to increase the width of the master view of the split
view controller see the following post:

useyourloaf.com/blog/2015/05/25/change-the-width-of-master-view-in-split-view-controller.html
* [Change the Width of Master View in Split View Controller](https://useyourloaf.com//blog/change-the-width-of-master-view-in-split-view-controller/)

The geographic data used in this App is from GeoNames and used under
the Creative Commons Attributions License (see www.geonames.org).
the Creative Commons Attributions License. See [www.geonames.org](www.geonames.org).


=======================================================================
Model
=======================================================================
### Model

WorldFacts.xcdatamodeld
* `WorldFacts.xcdatamodeld`

The core data model definition contains a single entity for the Country
The core data model definition contains a single entity for the Country
managed object.

Country.h
Country.m
* `Country.h`
* `Country.m`

The generated NSManagedObject subclass
The generated `NSManagedObject` subclass

Country+Extensions.h
Country+Extensions.m
* `Country+Extensions.h`
* `Country+Extensions.m`

Private class extensions for the Country NSManagedObject subclass to
Private class extensions for the Country NSManagedObject subclass to
generate the section title used by the NSFetchedResultsController and
to import an initial set of geographic data from countries.plist.

=======================================================================
View
=======================================================================
### View

Main.storyboard
The universal storyboard file used to create the table and details view
* `Main.storyboard`

The universal storyboard file used to create the table and details view

=======================================================================
Controllers
=======================================================================
### Controllers

UYLCountryTableViewController.h
UYLCountryTableViewController.m
* `UYLCountryTableViewController.h`
* `UYLCountryTableViewController.m`

The table view controller used to show the list of countries with
The table view controller used to show the list of countries with
details on the capital and population and manage the search interface.
The table view controller implementation is a standard implementation
of an NSFetchResultsController.
of an `NSFetchResultsController`.

UYLCountryViewController.h
UYLCountryViewController.m
* `UYLCountryViewController.h`
* `UYLCountryViewController.m`

The view controller used to show the detailed country view. This view
The view controller used to show the detailed country view. This view
controller does almost nothing other than set up the view from the
Country object it is passed.

=======================================================================
App Delegate
=======================================================================
### App Delegate

UYLAppDelegate.h
UYLAppDelegate.m
* `UYLAppDelegate.h`
* `UYLAppDelegate.m`

The App delegate is largely unmodified from the template code. It creates
The App delegate is largely unmodified from the template code. It creates
the root view controller using a storyboard and initialises the core data
stack.
stack.

### Version History

Version 3.3 19 Jan 2018 Update for Xcode 9, minimum target is iOS 9
Version 3.2 12 Oct 2015 Add 3D Touch peek and pop preview
Version 3.1 25 May 2015 Increase width of split view master view
Version 3.0 27 Mar 2015 Add OS X application to create core data
Version 2.0 16 Feb 2014 Update for iOS 8 and UISearchController
Version 1.5 20 Feb 2013 Move core data file to App Support dir
Version 1.4 31 Dec 2012 Add default launch images to support retina
4 inch display
Version 1.3 6 Sep 2012 Add a search bar
Version 1.2 1 Aug 2012 Use default synthesis of ivars
Version 1.1 21 June 2012 Add Storyboard segue to country view
Version 1.0 6 June 2012 Initial Version

6 changes: 2 additions & 4 deletions WorldFacts/WorldFacts.xcodeproj/project.pbxproj
Expand Up @@ -12,7 +12,6 @@
531D96151AB62FEF00913A78 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 531D96141AB62FEF00913A78 /* main.m */; };
531D961D1AB62FEF00913A78 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 531D961C1AB62FEF00913A78 /* Images.xcassets */; };
531D96201AB62FEF00913A78 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 531D961E1AB62FEF00913A78 /* Main.storyboard */; };
532CADEB158D1286002BEDC8 /* README in Resources */ = {isa = PBXBuildFile; fileRef = 532CADEA158D1286002BEDC8 /* README */; };
532CADF5158D19D1002BEDC8 /* UYLCountryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 532CADF4158D19D1002BEDC8 /* UYLCountryViewController.m */; };
534EBDA01AC4B0F90014AD9D /* WorldFacts.sqlite in Resources */ = {isa = PBXBuildFile; fileRef = 534EBD9F1AC4B0F90014AD9D /* WorldFacts.sqlite */; };
536346AE1AC0BE440087214A /* CountryTableViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 536346AD1AC0BE440087214A /* CountryTableViewController.m */; };
Expand Down Expand Up @@ -43,7 +42,7 @@
531D96141AB62FEF00913A78 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
531D961C1AB62FEF00913A78 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = "<group>"; };
531D961F1AB62FEF00913A78 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
532CADEA158D1286002BEDC8 /* README */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = README; sourceTree = "<group>"; };
532CADEA158D1286002BEDC8 /* README.md */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = "<group>"; };
532CADF3158D19D1002BEDC8 /* UYLCountryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UYLCountryViewController.h; sourceTree = "<group>"; };
532CADF4158D19D1002BEDC8 /* UYLCountryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UYLCountryViewController.m; sourceTree = "<group>"; };
534EBD9F1AC4B0F90014AD9D /* WorldFacts.sqlite */ = {isa = PBXFileReference; lastKnownFileType = file; path = WorldFacts.sqlite; sourceTree = "<group>"; };
Expand Down Expand Up @@ -116,7 +115,7 @@
538A796D157E567E0007B8A5 = {
isa = PBXGroup;
children = (
532CADEA158D1286002BEDC8 /* README */,
532CADEA158D1286002BEDC8 /* README.md */,
538A7984157E567F0007B8A5 /* WorldFacts */,
531D960E1AB62FEF00913A78 /* WorldFactsBuilder */,
538A7979157E567F0007B8A5 /* Products */,
Expand Down Expand Up @@ -285,7 +284,6 @@
53B691731A3A5AE500DDFBE2 /* Localizable.strings in Resources */,
53E782701A365AE60075A619 /* Main.storyboard in Resources */,
53EEC7E71A4B6254000EB901 /* LaunchScreen.storyboard in Resources */,
532CADEB158D1286002BEDC8 /* README in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down
4 changes: 2 additions & 2 deletions WorldFacts/WorldFacts/WorldFacts-Info.plist
Expand Up @@ -17,11 +17,11 @@
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>3.2</string>
<string>3.3</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>10</string>
<string>11</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UILaunchStoryboardName</key>
Expand Down

0 comments on commit bc4d00d

Please sign in to comment.