Skip to content

Commit

Permalink
Day 48
Browse files Browse the repository at this point in the history
  • Loading branch information
rajhraval committed Sep 7, 2019
1 parent 056d08f commit ba5ff02
Show file tree
Hide file tree
Showing 26 changed files with 1,646 additions and 1 deletion.
11 changes: 11 additions & 0 deletions Project 12 - UserDefaults/Project12.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## Project 12 - HackingWithSwift - 100DaysOfSwift Challenge

**Project 12 - Day One - Day 48 of 100DaysOfSwift**

> Most of the time spent wrestling with technologies that don't quite work yet is just not worth the effort for end users, however much fun it is for nerds like us. - Douglas Adams
Today I did (User Defaults, NSCoding):

- Setting up the project in Xcode
- Reading and writing basics using User Defaults
- Using NSCoding to save images in Project 10
Original file line number Diff line number Diff line change
@@ -0,0 +1,347 @@
// !$*UTF8*$!
{
archiveVersion = 1;
classes = {
};
objectVersion = 50;
objects = {

/* Begin PBXBuildFile section */
CF1C7BC4231D350800220065 /* Person.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF1C7BC3231D350800220065 /* Person.swift */; };
CF2B2810231B91B900D35EC1 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF2B280F231B91B900D35EC1 /* AppDelegate.swift */; };
CF2B2812231B91B900D35EC1 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF2B2811231B91B900D35EC1 /* ViewController.swift */; };
CF2B2815231B91B900D35EC1 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = CF2B2813231B91B900D35EC1 /* Main.storyboard */; };
CF2B2817231B91BA00D35EC1 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CF2B2816231B91BA00D35EC1 /* Assets.xcassets */; };
CF2B281A231B91BA00D35EC1 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = CF2B2818231B91BA00D35EC1 /* LaunchScreen.storyboard */; };
CF2B2822231B937F00D35EC1 /* PersonCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = CF2B2821231B937F00D35EC1 /* PersonCell.swift */; };
/* End PBXBuildFile section */

/* Begin PBXFileReference section */
CF1C7BC3231D350800220065 /* Person.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Person.swift; sourceTree = "<group>"; };
CF2B280C231B91B900D35EC1 /* Project10.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Project10.app; sourceTree = BUILT_PRODUCTS_DIR; };
CF2B280F231B91B900D35EC1 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
CF2B2811231B91B900D35EC1 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = "<group>"; };
CF2B2814231B91B900D35EC1 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
CF2B2816231B91BA00D35EC1 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
CF2B2819231B91BA00D35EC1 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
CF2B281B231B91BA00D35EC1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
CF2B2821231B937F00D35EC1 /* PersonCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PersonCell.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
CF2B2809231B91B900D35EC1 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */

/* Begin PBXGroup section */
CF2B2803231B91B800D35EC1 = {
isa = PBXGroup;
children = (
CF2B280E231B91B900D35EC1 /* Project10 */,
CF2B280D231B91B900D35EC1 /* Products */,
);
sourceTree = "<group>";
};
CF2B280D231B91B900D35EC1 /* Products */ = {
isa = PBXGroup;
children = (
CF2B280C231B91B900D35EC1 /* Project10.app */,
);
name = Products;
sourceTree = "<group>";
};
CF2B280E231B91B900D35EC1 /* Project10 */ = {
isa = PBXGroup;
children = (
CF2B280F231B91B900D35EC1 /* AppDelegate.swift */,
CF2B2811231B91B900D35EC1 /* ViewController.swift */,
CF1C7BC3231D350800220065 /* Person.swift */,
CF2B2813231B91B900D35EC1 /* Main.storyboard */,
CF2B2821231B937F00D35EC1 /* PersonCell.swift */,
CF2B2816231B91BA00D35EC1 /* Assets.xcassets */,
CF2B2818231B91BA00D35EC1 /* LaunchScreen.storyboard */,
CF2B281B231B91BA00D35EC1 /* Info.plist */,
);
path = Project10;
sourceTree = "<group>";
};
/* End PBXGroup section */

/* Begin PBXNativeTarget section */
CF2B280B231B91B900D35EC1 /* Project10 */ = {
isa = PBXNativeTarget;
buildConfigurationList = CF2B281E231B91BA00D35EC1 /* Build configuration list for PBXNativeTarget "Project10" */;
buildPhases = (
CF2B2808231B91B900D35EC1 /* Sources */,
CF2B2809231B91B900D35EC1 /* Frameworks */,
CF2B280A231B91B900D35EC1 /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = Project10;
productName = Project10;
productReference = CF2B280C231B91B900D35EC1 /* Project10.app */;
productType = "com.apple.product-type.application";
};
/* End PBXNativeTarget section */

/* Begin PBXProject section */
CF2B2804231B91B800D35EC1 /* Project object */ = {
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 1030;
LastUpgradeCheck = 1030;
ORGANIZATIONNAME = Buck;
TargetAttributes = {
CF2B280B231B91B900D35EC1 = {
CreatedOnToolsVersion = 10.3;
};
};
};
buildConfigurationList = CF2B2807231B91B800D35EC1 /* Build configuration list for PBXProject "Project10" */;
compatibilityVersion = "Xcode 9.3";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
en,
Base,
);
mainGroup = CF2B2803231B91B800D35EC1;
productRefGroup = CF2B280D231B91B900D35EC1 /* Products */;
projectDirPath = "";
projectRoot = "";
targets = (
CF2B280B231B91B900D35EC1 /* Project10 */,
);
};
/* End PBXProject section */

/* Begin PBXResourcesBuildPhase section */
CF2B280A231B91B900D35EC1 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
CF2B281A231B91BA00D35EC1 /* LaunchScreen.storyboard in Resources */,
CF2B2817231B91BA00D35EC1 /* Assets.xcassets in Resources */,
CF2B2815231B91B900D35EC1 /* Main.storyboard in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */

/* Begin PBXSourcesBuildPhase section */
CF2B2808231B91B900D35EC1 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
CF2B2822231B937F00D35EC1 /* PersonCell.swift in Sources */,
CF2B2812231B91B900D35EC1 /* ViewController.swift in Sources */,
CF1C7BC4231D350800220065 /* Person.swift in Sources */,
CF2B2810231B91B900D35EC1 /* AppDelegate.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */

/* Begin PBXVariantGroup section */
CF2B2813231B91B900D35EC1 /* Main.storyboard */ = {
isa = PBXVariantGroup;
children = (
CF2B2814231B91B900D35EC1 /* Base */,
);
name = Main.storyboard;
sourceTree = "<group>";
};
CF2B2818231B91BA00D35EC1 /* LaunchScreen.storyboard */ = {
isa = PBXVariantGroup;
children = (
CF2B2819231B91BA00D35EC1 /* Base */,
);
name = LaunchScreen.storyboard;
sourceTree = "<group>";
};
/* End PBXVariantGroup section */

/* Begin XCBuildConfiguration section */
CF2B281C231B91BA00D35EC1 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = dwarf;
ENABLE_STRICT_OBJC_MSGSEND = YES;
ENABLE_TESTABILITY = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_DYNAMIC_NO_PIC = NO;
GCC_NO_COMMON_BLOCKS = YES;
GCC_OPTIMIZATION_LEVEL = 0;
GCC_PREPROCESSOR_DEFINITIONS = (
"DEBUG=1",
"$(inherited)",
);
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
MTL_FAST_MATH = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
};
name = Debug;
};
CF2B281D231B91BA00D35EC1 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ALWAYS_SEARCH_USER_PATHS = NO;
CLANG_ANALYZER_NONNULL = YES;
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
CLANG_ENABLE_OBJC_WEAK = YES;
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
CODE_SIGN_IDENTITY = "iPhone Developer";
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
ENABLE_NS_ASSERTIONS = NO;
ENABLE_STRICT_OBJC_MSGSEND = YES;
GCC_C_LANGUAGE_STANDARD = gnu11;
GCC_NO_COMMON_BLOCKS = YES;
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
GCC_WARN_UNDECLARED_SELECTOR = YES;
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
IPHONEOS_DEPLOYMENT_TARGET = 12.4;
MTL_ENABLE_DEBUG_INFO = NO;
MTL_FAST_MATH = YES;
SDKROOT = iphoneos;
SWIFT_COMPILATION_MODE = wholemodule;
SWIFT_OPTIMIZATION_LEVEL = "-O";
VALIDATE_PRODUCT = YES;
};
name = Release;
};
CF2B281F231B91BA00D35EC1 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
INFOPLIST_FILE = Project10/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.buck.Project10;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Debug;
};
CF2B2820231B91BA00D35EC1 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
CODE_SIGN_STYLE = Automatic;
INFOPLIST_FILE = Project10/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.buck.Project10;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_VERSION = 5.0;
TARGETED_DEVICE_FAMILY = "1,2";
};
name = Release;
};
/* End XCBuildConfiguration section */

/* Begin XCConfigurationList section */
CF2B2807231B91B800D35EC1 /* Build configuration list for PBXProject "Project10" */ = {
isa = XCConfigurationList;
buildConfigurations = (
CF2B281C231B91BA00D35EC1 /* Debug */,
CF2B281D231B91BA00D35EC1 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
CF2B281E231B91BA00D35EC1 /* Build configuration list for PBXNativeTarget "Project10" */ = {
isa = XCConfigurationList;
buildConfigurations = (
CF2B281F231B91BA00D35EC1 /* Debug */,
CF2B2820231B91BA00D35EC1 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = CF2B2804231B91B800D35EC1 /* Project object */;
}

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

Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>
Loading

0 comments on commit ba5ff02

Please sign in to comment.